Worth reading – for software devs

My recommendations, in no particular order.

Books

Peopleware: Productive projects and teams
The hard part of software engineering is largely the people, not the software.

Remote: Office not required
Working remote can be great but there’s some clear differences to office work it’s best to be on top.

Shape Up: Stop Running in Circles and Ship Work that Matters
Every company says they’re agile but what that looks like varies wildly. Shape Up is Basecamp/37 Signal’s process that made me reflect on how I work.

Clean Code: A Handbook of Agile Software Craftsmanship
If you want your code to be easy to write, make it easy to read. You don’t have to agree with everything in here to get a lot of value from it.


Blogs with concepts I often reference

Write code for humans not computers.
https://blog.codinghorror.com/coding-its-just-writing/
https://thoughtspile.github.io/2018/09/19/Programming-is-like-writing/

No one is smart enough to write software.
https://blog.codinghorror.com/why-im-the-best-programmer-in-the-world/

Don’t break windows. Boy scout rule: leave the camp site code tidier than you found it.
https://blog.codinghorror.com/pragmatic-programming/
https://testing.googleblog.com/2023/11/clean-up-code-cruft.html

Salary Negotiation. Always negotiate.
https://www.kalzumeus.com/2012/01/23/salary-negotiation/
> When asked about the salary of your previous work, personally, I never give exact amount. I would politely say “I can’t tell you because I respect the privacy of the previous workplace but however I can tell it’s around X amount”.

Don’t rewrite. Or at least consider carefully if it is the right approach.
https://www.joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i/
actually read all of Joel Spolskys greatest articles listed at the bottom of his home page

Force multiply others.
https://swizec.com/blog/why-senior-engineers-get-nothing-done/

Manage your energy, not your time.
https://everythingchanges.us/blog/energy-makes-time/
https://hbr.org/2007/10/manage-your-energy-not-your-time

Slack.
https://martinfowler.com/bliki/Slack.html
https://www.jamesshore.com/v2/books/aoad2/slack
also the shape up book talks about slack.

Internal public updates.
https://koolaidfactory.com/writing-in-public-inside-your-company/
https://stripe.com/blog/email-transparency

Development Abstraction Layer.
https://www.joelonsoftware.com/2006/04/11/the-development-abstraction-layer-2/

Death Spiral.
https://substack.piszek.com/p/three-day-priest-and-the-death-spiral

Hiring.
https://www.karllhughes.com/posts/hiring-process
https://blog.codinghorror.com/a-programmers-portfolio

Don’t react. Consider.
https://world.hey.com/jason/don-t-be-a-knee-jerk-ac7440f4

My beef with open offices.
Study saying open office means less collaboration: https://royalsocietypublishing.org/doi/pdf/10.1098/rstb.2017.0239
https://www.newyorker.com/business/currency/the-open-office-trap
Dhh says open office bad: https://medium.com/signal-v-noise/the-open-plan-office-is-a-terrible-horrible-no-good-very-bad-idea-42bd9cd294e3
But also just read the peopleware book. Note the private spaces with windows for every office.

Cross platform is not just cost vs quality.
https://allenpike.com/2021/gravity-of-cross-platform-apps

Code health suggestions.
https://testing.googleblog.com/search/label/Code%20Health

Do something so you can change it.
https://allenpike.com/2023/do-something-so-we-can-change-it