Hacker News new | ask | show | jobs
Ask HN: Which tools/services have your favorite UI/UX?
53 points by Bridgeburner4 1855 days ago
e.g.: * Linux with its pipes * i3 with its window management * vim * emacs * fzf * pgsql * google.com * wikipedia.com

I can't help but think that we could do so much more with some tools.

38 comments

Heroku. It abstracts SO much work away and just lets you get on with writing software. It's probably the most underrated platform online. Following that, I think the UI/UX are learned appreciation. Vim and Emacs are amazing once you "get it", same with tiling window managers, etc. Good UX is supposed to be discoverable in a sense and most power tools for developers aren't exactly known for being approachable.
It's a small detail, but after moving to iOS from Android recently I discovered Universal Clipboard: https://support.apple.com/en-gb/HT209460.

You copy text on one device and paste it on the other. A great piece of UX, and an example of the best interface being no interface at all.

Don’t forget Airdropping a URL from your phone browser to your desktop is nice as well.
KDE Connect has a shared clipboard plugin.

https://userbase.kde.org/KDEConnect#Clipboard

Too bad Google blocked it in Android 10
Thanks for the info. Well, F-Droid is still an option, if anyone is interested.
Does it still work with the F-Droid version?
I'm not using it any more because Syncthing does what I want to do much better. I had it working on Android 10, although I'm not using a stock ROM.
I’m a big fan of how GitLab approaches things. Their design library is a tremendous resource: https://design.gitlab.com/
I've found GitLab as a product to be more difficult to use than GitHub. The pages seem more dense with lots of color, many more actions: they just feel busy. Basic features, like getting a permalink to a line of code, take 3-4 clicks in GitLab, when it's just 1 in GitHub.
> Basic features, like getting a permalink to a line of code, take 3-4 clicks in GitLab, when it's just 1 in GitHub

That doesn't seem right.

In Gitlab: Right click the line number, choose Copy Link in the context menu. Two clicks.

In Github: Click the line, click the three dots, then click "Copy permalink". Three clicks. Alternatively, click the line, click the URL bar (or press F6 or ^L) copy the link. Still Three clicks.

What's the one-click method in GitHub I'm missing?

What's different is you get functionally different links. GitLab aliases to the branch name, not the commit hash. So it isn't really a "permanent" link to a line of code. It's whatever happens to be on line N in file X on branch Y at time T, whenever you open the link. This is inconvenient when I might find an old link in an engineering Slack thread, referencing something now much different since the file was amended over time. In fact, the file may not even exist anymore.

GitHub, by default, includes the commit hash. So the line of code will be the same at any point in the future: the file, at that line number, with that commit hash, is immutable (unless developers force push history rewrites, but you get my broader point).

To do this in GitLab, click the permalink button before copying the line.
I'm going to share the feedback on page density, colors, and actions with our team.

To copy a link to a line of code, you can hover over the number next to the line of code and then copy a link to that line.

I created a gif to show what I mean: https://gitlab.com/johncoghlan/blog/-/raw/master/images/perm...

Coming from bitbucket I find gitlab design too busy as well and missing some basic obvious functionality which could be there but it's not intuitive. For example, when viewing a merge request I can't find a way to copy the target branch name.
Hi! You can copy the branch name at the bottom of the right sidebar with one click: https://i.imgur.com/O3StMBA.png

Or in the merge request widget, below the description: https://i.imgur.com/V72v9jj.png

that's the source branch. I am looking for a way to copy the target/destination branch name.
The Stripe API docs are the most beautiful and useful API documentation I've ever seen.

https://stripe.com/docs/api

There is a project called Slate that is inspired by this and is able to generate similar API docs from Markdown. It’s written in Ruby.

https://github.com/slatedocs/slate

Vim (recent versions) + the `term` command. All shells and REPLs as Vim buffers, also run any command asynchronously. Paired with the `sendtowindow` plugin, can have two-way communication between any REPL and any other buffer.
If you have good resources on this, please share.
There’s not much to say about it, as it does basically one thing, but that thing is powerful. It was added to Vim in v.8. Just type `:term bash` to get a buffer with a bash shell running in it. Or type `:term <command>` to run a command async and see the output in another buffer. Once you have bash, or another interactive prompt with a command like `:term julia`, then, if you have the sendtowindow plugin installed, you can select any text in visual mode and send it to the REPL with the shortcut that you define. You can send in any direction, so you can arrange your buffers as you like. You can switch to the REPL and send output back into your editing buffer. There are many other plugins with similar functionality, but I like sendtowindow because of its simplicity and generality.
Gerrit, the code review tool.

It's a perfect example of a tool that looks terrible if you've never seen it before, but after learning its core concepts you will never want to use any other code review system. It's fast, it's optimized for daily use, and it doesn't attempt to woo you with flashy features up front.

It has a tradeoff that most developer tools these days are too scared to pull off, the one where you can't onboard someone within a minute, but you will win them over once they start using it for a while.

I absolutely hated Gerrit when I was first introduced to it. And I absolutely agree with what you've said.
Please provide a link.
Here's Go's Gerrit instance and an arbitrary change request: https://go-review.googlesource.com/c/tools/+/313749

Prepare to be disappointed and confused. It really doesn't click until you use it, and you discover features like: attention sets, a working dashboard, commit==CR==multiple patchets, stacked changes, push-to-update/rebase/stack, zero friction comments, comment porting, customizable checks and labels, lightning fast keyboard shortcuts, ...

Used (an older version) of it in Amazon in 2016 - it was pain in the ass I've not seen in dev tools before.

GitHub's PRs and even Microsoft's internal tool for reviews (in 2012 only working with Source Depot) are about 5x more pleasant to use subjectively.

The Julia REPL. Unicode, colored stacktraces, special modes for documentation and package management, accepts LaTeX commands to enter special characters, has paste mode:

“In Julia mode, the REPL supports something called prompt pasting. This activates when pasting text that starts with julia> into the REPL. In that case, only expressions starting with julia> are parsed, others are removed. This makes it possible to paste a chunk of code that has been copied from a REPL session without having to scrub away prompts and outputs.” → https://docs.julialang.org/en/v1/stdlib/REPL/

I like the Stripe Dashboard at https://dashboard.stripe.com/ and also the Kraken.io free web interface (for image optimization) at https://kraken.io/web-interface
On a big screen it's nice, but I find the mobile experience of the Stripe dashboard website terrible.
+1 to that, both are quite good
big +1 for Stripe Dashboard. I use it a lot.

their docs are amazing as well

- Letterboxd, as a movie fanatic, this app is great, and its community seems very welcoming.

- Feedly, it almost makes me forget I'm really missing Greader.

- Stripe, docs, dashboard, landing pages--everything they do ends up being top notch.

- Github (this is a weird one), didn't really appreciate the care for the UI until I had to use Gitlab extensively, the worst offenders are the PR UI--everything looks so cluttered, and it doesn't happen on Github.

Letterboxd is a shining pinnacle of a website for me. It's more or less unchanged in the 7+ years I've used it as their product is so good that they don't feel the need to change it up to much. This is so counter to most other websites and social networks where there's a disastrous rebrand every 3-5 years.

All they've added is solid features that add value to the product without ever touching the branding or core platform that has been working for them for so long

Step Two (https://steptwo.app) brings a smile on my face every time I copy a 2FA token from it.

Especially when coming from Authy, which has by far the most horrible UI ever created.

I'm using authy on mobile. Can you say more?
I like DigitalOcean's site for deploying servers - simple, clean and fast. A few missing advanced features in certain cases, but much more user friendly than AWS.
https://linear.app/ has beautiful UI with super smooth animations. In general, I think "command+K" command-line interfaces for user-facing tools is a huge step up (Superhuman, Linear, etc..).
Mac's Window manager. I love how each separate screen had its own "space" that can be cycled through with control and arrow
Interesting, can you expand on your workflow a bit more? I'm of the exact opposite opinion - I think Mac's window management is the absolute worst thing about using a Mac - so I'd love to know what I'm doing wrong.
I use one external monitor and MacBook screen. I full screen all applications and switch between them using control and the arrow key.

So my external monitor has email, IDE, and misc stuff.

Screen has browser, terminal, chat application.

Pressing control + up allows you to easily reorder and move elements. It's helpful to turn off the default option of automatically sorting your screens

Ah, interesting. I think we've arrived at a very similar setup, albeit implemented in different ways. I too use a MacBook and external monitor, and fullscreen my apps, but I just let them take up the whole screen minus the bar at the top, rather than explicitly use the fullscreen new workspace feature. I then swap between apps by binding all my most common apps to F1-F6 using Thor, which I find is easier to navigate than remembering workspace positions.

How do you handle split screen? Do you never have two programs side-by-side on the same screen? I've tried doing that in the official fullscreen mode but found the whole experience a pain, so I use rectangle to shift windows left and right.

I use full screen apps on my Mac and switch between them using ALT-Tab. But there is a bug whereby you don’t always get the window of the app showing if you ALT-Tab too quickly, even though it is selected. I might try something like your setup, or the one above instead.
I'd definitely recommend giving dedicated hotkeys (one per app) a try - it's very hard to go back to alt-tabbing after being able to switch so effortlessly. As I say, I use Thor, but I'm sure there's a bunch of alternatives out there.
Whenever I want to look at two things at once I display each item on a different screen.

If I really want to do split screen (very rarely), I press control + up and then drag one screen over.

I'm using it with https://github.com/ianyh/Amethyst . It's ok and I couldn't manage without.
Thanks!

I run Ubuntu on my personal machine and haven't found a suitable alternative yet. The more time I spend on my Mac work machine the more I'm thinking about switching my personal one due to this

I went from using i3 on my personal Linux machine, to my macOS machine for work. I've had the same thoughts about switching back, but it wasn't an option. Amethyst pulled me through the worst. It can't compare to i3.

There's also this: https://github.com/koekeishiya/yabai, but I haven't tried it out because of the disclaimer: "You acknowledge that you understand the potential risk that may come from disabling arrow_upper_right System Integrity Protection on your system"

The caveats section notes that

> If you are running on macOS High Sierra 10.13.6, you can reenable SIP after the scripting addition has been installed.

I'm not sure if that applies to only that version and no later versions.

Amethyst is a poor man's reimplementation of xmonad. Just use it on your Ubuntu machine.
Harvest: https://www.getharvest.com/

Simple, discoverable, does not abuse the SPA paradigm, and lets you turn off features you don't need so it doesn't clutter the UI.

Terrible UX: If you cancel you lose all the time you paid upfront. Very shady.
I’m glad they’re still going strong - I used them to track time as a freelancer a decade ago!
Really? I find using harvest a real chore.
Netlify is consistently held up as an example of how to do developer focused UX. I'm def biased as an ex employee but I can attest that i've seen from the inside how closely design and accessibility are integrated in the dev process.

as far as up and comers, i'd recommend checking out https://supabase.io/ - love the minimal black/green aesthetic. they recently released a Tailwind/React design system too https://ui.supabase.com/

Supabase is really such a dream. It’s obviously early days yet for them, but I love working with the little subset that I picked — it really goes a long way to making Postgres easy. I wonder how accessible it is to newcomers though - feels more useful for the “I’ve used postgres before and am doing a side project” crowd (eg me) versus the Firebase audience of “hello I want something called back end plz”
I always wonder where the “hello I want something called back end plz” crowd come from (is it coding bootcamps?). Backend is so much easier than frontend, an so many problems and complexities can be avoided by putting things in the backend.

When I joined my company, there were a couple of junior devs on my who had barely touched the backend, and never used SQL (because we used to be on firebase). They were up, running ans productive with both in under 2 weeks.

The Swype button in the Swype keyboard for Android. Press it and the word where the cursor is will be selected (like control+w in some desktop editors). Swipe from that key to c/v/x and you will copy/paste/cut directly. Swipe to the space bar and you will change input language. And swipe to other keys to access different keyboards modes.

No other keyboard I know has it (if you do know please tell me!) and I feel extremely slow without it.

Magit, an emacs package to control git. It's not pretty, and certainly not conventional, but very efficient and discoverable.
I know I'm not in the majority but I deeply enjoy using GNOME. I barely have to tweak the defaults to feel right at home.
Hacker News is pretty good.
Sublime Text just oozes productivity.
As much as I like Sublime Text, there’s plenty of solid text editors out there and I’d be happy enough with an alternative.

I spent an eternity looking for a good Git client, and found nothing even remotely pleasant to use until Sublime Merge came along.

As a video/movie/tv show lover, I love http://www.reelgood.com The mobile app is as good if not better than the browser version.
I find Excalidraw to be really cool with respect to UI/UX
Please provide a link.
ipython + jupyter-notebook are such killer applications. I use both daily for everything from trying out code, calculations & notes.
They really hit a sweet spot of ease/accessibility, flexibility, and efficiency (Jupyter lab for me specifically)
Fluxbox Tabs.

http://fluxbox.sourceforge.net/docbook/en/html/chap-tabs.htm...

Allows grouping of windows based off a variety of things, and helps keeps things more organized and consistent, like size and position.

IntelliJ Idea + Ideavim plug-in and my heavily customised keybindings and F1-F12 keys. The same UI and keybindings for all my programming languages. I live in this program for 80% of my computer time.

Tmux+Zsh+fzf+bat+exa for terminals and splits. Same or similar keybindings to my InteliJ setup.

command line with flags and manpages
Org Mode (with my heavily customized labburn-based theme).
Apple Pay. It just works every time, even with dodgy internet.

It was seamless to set up and has a layer of security over just using a contactless credit card for payments.

Things 3 the macOS app and iPhone app has some amazing UI/UX, yeah it's a glorified todo app but one that is a joy to use.
gcloud and kubectl with completion bindings
Azure Data Studio. It’s a bit buggy still but this kind of visual/textual hybrid is very clean and powerful.
Best: Original iTunes. Worst: Apple Music.
MS Excel 2010
ReGet Deluxe. Sony Vegas 6.0-7.0
ulysses.app, I only wish they added tables.
GCP
Monday.com

Avaza

Fogbugz

Anything JetBrains

Was monday.com a UX you instantly enjoyed or did it take some time? I am not finding it a breeze myself.
Not OP - it took me a bit of time, and I was often frustrated by the things you can't quite do with the product. This was a few months ago though, so things might have changed.
https://github.com/nsz32/docklike-plugin

simple and yet so effective