On Hacker News

One thing that really distinguishes software from my previous career in the law is the strength of the online community. Hacker News has something of a reputation for attracting a certain "Valley Bro" stereotype, but my experience has been that that's wide of the mark.

Now, certainly reasonable minds may differ as to whether Hacker News is generally reprentative of the broader industry but, for me, it's been the one and only proxy for community that I've known - partly on account of living away from home as an expatriate, but also on account of the pandemic. It's by no means perfect, but it would be hard to overstate just how essential it's been for my development to have access to the expertise embodied there.

Part of the appeal is that there's something for everyone, no matter where you are in your journey. If you're just starting out, the linked articles and videos are often excellent but it's also the quality of the discussion around that content that brings the greatest benefit. If you're more senior, there's plenty of content aimed at your level too, and plenty of experts willing to bring their expertise to beat on any number of advanced topics in the comments.

It's essential reading not only because it does a great job of surfacing canonical content on the craft of software engineering itself, but also because it does a great job of showing the pros and cons of peoples' personal experience is with the tooling they use. Tooling is so, so important - way more important than I realised when I started on this journey at the beginning of 2019. It can, in fact, be make or break, and having people that are willing to have reasonable debates about the qualities of different toolchains has been absolutely essential to me personally.

How else would I have known to settle on VS Code and Pycharm, but to also have a decent grasp of Vim keybindings? To use Git for version control? To stick with the Python standard library wherever possible, but also to use requests? To learn Docker, Ansible and PostgreSQL. To use Django and Heroku, Hugo and Netlify. To buy my domains from Porkbun. To use managed services wherever possible. To use Pandas but also not to underestimate the power of SQL and RDBMS. To use Altair for plotting but also to understand matplotlib for its ubiquity. To stick to GNU tools where possible. But also to use ripgrep.

I could go on. And of course, everyone's story is different. And baked into the above is the assumption that I've made good choices - choices that won't come back to bite me at a later date. Perhaps some of them are good, perhaps others not so much. I wouldn't have even known where to start, if not for the community at Hacker News.