An actual debugger. I started as a PHP/WP dev and spent many hours running results through echo or var_dump. IMO the debugger is the absolute first thing you need to learn about the platform you're writing for. Without it, you're taking shots in the dark and you truly don't know how your code is executing. It seriously pains me to see people not using one. I have a friend who is taking an online PHP backend class. Th…
+1 VisualStudio w/ C#/.NET was very eye opening to the power of live debugging code, ability to evaluate expressions and introspect vars EDIT: I originally said VSCode, but i meant the OG Visual Studio
Ask HN: Which tools have made you a much better programmer?
281–290 of 519 posts
Re: Ask HN: Which tools have made you a much better programmer?
#282The Jetbrains suite. Lightens the cognitive load, makes it easier to refactor and keep code tidy. All of which allow me build better software. For almost everything else e.g. git, learning how to use the command line instead of a UI is the best way for me to learn how the tooling works.
Yes, I would agree with that. If you make websites there is just nothing better than PHPStorm. It is one of the program that just works and makes your life a hell easier. Also a huge shoutout to 'lazyone' on SO for always answering my questions. It's one of the rare companies that actually understand what you're saying instead of just pasting canned replies. BTW I'm not affiliated with them but they're having a 50% d…
Re: Ask HN: Which tools have made you a much better programmer?
#283Re: Ask HN: Which tools have made you a much better programmer?
#284- GNU/Linux + i3wm; complete control over my programming environment. - bash + GNU coreutils; seriously, take the time to be able to write helpful bash scripts which can run basically anywhere. - git; use it even when you're not pushing to a remote. Add helpful aliases for everyday commands. Build a good mental model of commits and branches to help you through tough merges. ( my ~/.gitconfig: https://gist.github.com/…
Re: i3wm I installed it a couple years ago, went whole hog, down the rabbit hole, but realized a couple of things. 1. I rarely ever use anything more than a simple L/R split. 2. When I do use something more complex, it's almost always in the terminal, in which case why not use tmux? These days I'm back to using gnome because ubuntu switched to it over unity (which had a weird multitouch bug that drove me crazy). What…
1. Workspaces. Not at all unique to i3 but I’ve kept mine themed and automatically load certain apps into the same workspaces—all things i3 makes easy to do.
2. Floating scratchpad for media player. Nice to have my music controls always accessible but only visible when I unhide them.
3. Vertical split beneath my editor with a terminal. Just my personal preference, but I typically have L/R with code/browser and then split the code half vertically.
Being able to move windows across displays and workspaces quickly are other pluses, but again, not at all i3 exclusive.
Re: Ask HN: Which tools have made you a much better programmer?
#285Earlier quoted context omitted.
Re: i3wm I installed it a couple years ago, went whole hog, down the rabbit hole, but realized a couple of things. 1. I rarely ever use anything more than a simple L/R split. 2. When I do use something more complex, it's almost always in the terminal, in which case why not use tmux? These days I'm back to using gnome because ubuntu switched to it over unity (which had a weird multitouch bug that drove me crazy). What…
While I do use i3 for more than L/R splits with stacking etc. the largest benefit I get from it is workspace management. I use i3 with polybar and have dedicated workspace icons (web browser, terminal, editor, to-do, email, music, etc) for quick navigation between different applications. Over time I’ve built up muscle memory (i.e $Mod+3 will bring me to my editor) that has significantly sped up my development process…
Re: Ask HN: Which tools have made you a much better programmer?
#286Keeping a developer journal, digitally, so it can easily be searched. (I'm using a simple extension called `vscode-journal` in my text editor, it writes daily markdown files stored on my Dropbox.)
Re: Ask HN: Which tools have made you a much better programmer?
#287A couple of tools so far not mentioned, that have been hugely beneficial to me: 1. Copernic Desktop Search pre version 3 . The version I use is over ten years old and still looks and works better than any other desktop search product I've ever used. Instant results when searching your file and network system, presented in a format appropriate view. Please note that the version is important here, it went from being a…
Re: Ask HN: Which tools have made you a much better programmer?
#288IntelliJ IDEA has taken refactoring from being a chore to being trivial, consequently making me much more likely to clean up ugly code when I encounter it. Black, the Python code formatter, means I don't have to spend a single brain cycle on styling the code. mypy (with a strict configuration) has forced me to think about types, making for code which is much easier to follow and integrate with. No more `if isinstance…
Do you have an example of the configuration you use with mypy? (If you could post it in a gist I should would appreciate it! I've done a couple mypy tutorials but I haven't pulled the trigger on adding it to my projects.)
Beware that if you're not yet using mypy I would not recommend starting with this - it's a lot of work to get to the stage where this succeeds. I'd recommend starting with no configuration at all and adding one setting at a time so you give yourself time to learn what they all do and how they help.
Re: Ask HN: Which tools have made you a much better programmer?
#289Earlier quoted context omitted.
> I recommend starting with a gentle approach that doesn't require picking up a new language Disagree. This is likely to 'dilute' the lessons of functional programming, as it were. If you learn to program in idiomatic Clojure/OCaml/Haskell/Scheme, you can be relatively sure you really have picked up the principles of functional programming. If you merely attempt to apply new principles in an environment you're alread…
Some people say learning Latin makes you a better writer, smarter, etc. even if you're unlikely to directly use it. Dubious claims but it feels like FP can be like that.