Live data from Hacker News

Ask HN: Programs that saved you 100 hours?

news.ycombinator.com

171–180 of 531 posts

Re: Ask HN: Programs that saved you 100 hours?

#171

1) Any terminal that you can summon/dismiss with a global hotkey. Examples are Guake for Linux and iTerm2 for OSX. I consider this a must-have for all developers. 2) Anything that lets you resize/place windows with hotkeys. For example, Divvy for OSX. Divvy is also nice because if you press the hotkey multiple times, it cycles the application through each of your monitors. No need to ever use your mouse to move/resiz…

> 3) Fuzzy file search in your editor

I’ve been using “fzf” [1] for file and directory search and I can’t recommend it enough.

It integrates nicely with vim [2] as well.

1. https://github.com/junegunn/fzf

2. https://youtu.be/qgG5Jhi_Els

Re: Ask HN: Programs that saved you 100 hours?

#172
post #145

1) Any terminal that you can summon/dismiss with a global hotkey. Examples are Guake for Linux and iTerm2 for OSX. I consider this a must-have for all developers. 2) Anything that lets you resize/place windows with hotkeys. For example, Divvy for OSX. Divvy is also nice because if you press the hotkey multiple times, it cycles the application through each of your monitors. No need to ever use your mouse to move/resiz…

> 1) Any terminal that you can summon/dismiss with a global hotkey. Examples are Guake for Linux and iTerm2 for OSX. I consider this a must-have for all developers. Years ago I saw someone using this (I think it was actually Yakuake) and ran it for a bit. I really didn't like that it was a single session. However, I later messed around with tiling window managers (which relates to your #2!) and having a shortcut to p…

I'm not a fan of global/slideout terminals either. I typically have multiple tabs and multiple panes within each tab tiled on the right hand side of my monitor.

CMD+Tab is enough of a global hotkey for my needs, and it's usually only one or two tabs anyway.

Re: Ask HN: Programs that saved you 100 hours?

#175

For better or worse, I find GUI git clients to be less useful than the CLI. But like any CLI tool, it's productivity is limited by your ability to type without errors. Git has an Autocorrect[1] that will help you out. > git config --global help.autocorrect 1 Based on bash history data, I've also added a simple alias to my bash config: > alias gti="git" [1]: https://git-scm.com/book/en/v2/Customizing-Git-Git-Configura…

Better still

> alias g="git"

Re: Ask HN: Programs that saved you 100 hours?

#177

Docker for local dev environments. Easily 100s of hours saved from needless tinkering to get n services × packages working in harmony, all to have to do it again 3 months later after an OS update.

I wonder what OS and stack you are programming that an OS update can break your dev env?

Re: Ask HN: Programs that saved you 100 hours?

#178
post #158

Black, flake8, isort and mypy (with several type strengthening flags) have together ensured that Python editing and code reviews are an absolute breeze. The structure basically disappears, and all that I ever need to concentrate on is the actual change. Sure, you can use your IDE to achieve some of this, but this is where the 80/20 rule really breaks down: since each IDE differs in the details, at some point auto-for…

Python beginner here. Can you please elaborate on how you use Black, flake8, isort and mypy for code editing and code reviews?

For me, it's being able to have a consistent code-style that is completely unambiguous for all collaborators. You configure the tools to run in your editor (or as make targets, or as pre-commit scripts) and you run the same checkers on your CI which prevents non-conforming changes from being merged to master.

Here's a config file for running some of these checks with https://pre-commit.com/ both locally, and then again on CI:

https://github.com/kogan/django-subscriptions/blob/master/.p...

https://github.com/kogan/django-subscriptions/blob/master/.c...

Re: Ask HN: Programs that saved you 100 hours?

#179

For better or worse, I find GUI git clients to be less useful than the CLI. But like any CLI tool, it's productivity is limited by your ability to type without errors. Git has an Autocorrect[1] that will help you out. > git config --global help.autocorrect 1 Based on bash history data, I've also added a simple alias to my bash config: > alias gti="git" [1]: https://git-scm.com/book/en/v2/Customizing-Git-Git-Configura…

"Based on bash history data" is an interesting point, because it highlights that you can use your history to periodically check what you do inefficiently in the terminal, and which aliases you still need to add to your config: compute some statistics on the number of 1-word and 2-word commands you use the most, and see if they are more than e.g. 4 letters.

With zsh: "history 1 | awk '{print $2}' | sort | uniq -c | sort -n"

With bash I think this should be "history" instead of "history 1".

Re: Ask HN: Programs that saved you 100 hours?

#180

For better or worse, I find GUI git clients to be less useful than the CLI. But like any CLI tool, it's productivity is limited by your ability to type without errors. Git has an Autocorrect[1] that will help you out. > git config --global help.autocorrect 1 Based on bash history data, I've also added a simple alias to my bash config: > alias gti="git" [1]: https://git-scm.com/book/en/v2/Customizing-Git-Git-Configura…

> For better or worse, I find GUI git clients to be less useful than the CLI.

Genuinely interested, why?

I'm a huge fan of the CLI in general, but for some things it just slows me down, git usage is one of those.

Random example: reverting a commit is 2-3 clicks, or a whole lot of typing.

Post reply on HN