software engineering 👩‍💻 💯
Spending time sharpening the axe is almost always worth it
You’re going to be renaming things, going to type definitions, finding references, etc a lot ; you should be fast at this. You should know all the major shortcuts in your editor. You should be a confident and fast typist. You should know your OS well. You should be proficient in the shell.... See more
You’re going to be renaming things, going to type definitions, finding references, etc a lot ; you should be fast at this. You should know all the major shortcuts in your editor. You should be a confident and fast typist. You should know your OS well. You should be proficient in the shell.... See more
Marcus • Marcus' Blog
I conclude that there are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult. It demands the same skill, devotion, insight, and even inspiration as the... See more
- People don't listen to me because I'm a good programmer, they listen to me because I'm a good writer. The same is true of pretty much everybody you'll read. This doesn't mean you should automatically reject everything, but it means you should carefully think about it and evaluate how it applies to your situation. And take any argument about
Dec. 19 • Advice for new software devs who've read all those other advice essays
Anyone who’s spent a few months at a sizable tech company can tell you that a lot of software seems to exist primarily because companies have hired people to write and maintain them. In some ways, the software serves not the business, but the people who have written it, and then those who need to maintain it. This is stupid, but also very, very... See more
Can Duruk • Software will eat software in a remote-first world
Software engineers never escape the skill-change vortex, even many years into their careers. Experienced engineers must learn and adopt technologies that didn't even exist when they started out. Developers must constantly retool themselves, even well after their formal education ends.
Nnamdi Iregbulem • Why We Will Never Have Enough Software Developers
Dec. 19 • Advice for new software devs who've read all those other advice essays
Make debugging easier
There’s so many little tricks I’ve acquired over the years on making software easier to debug. If you don’t make any effort to make debugging easy, you’re going to spend unacceptable amounts of time debugging each issue, as your software gets more and more complex. You’ll be terrified to make changes because even a couple new... See more
There’s so many little tricks I’ve acquired over the years on making software easier to debug. If you don’t make any effort to make debugging easy, you’re going to spend unacceptable amounts of time debugging each issue, as your software gets more and more complex. You’ll be terrified to make changes because even a couple new... See more
Marcus • Marcus' Blog
If you can’t easily explain why something is difficult, then it’s incidental complexity, which is probably worth addressing
My favorite manager in my career had a habit of pressing me when I would claim something was difficult to implement. Often his response was something along the lines of “isn’t this just a matter of sending up X when we Y”, or... See more
My favorite manager in my career had a habit of pressing me when I would claim something was difficult to implement. Often his response was something along the lines of “isn’t this just a matter of sending up X when we Y”, or... See more
Marcus • Marcus' Blog
Remembering that the tech industry is being built by people just figuring things out on the fly isn’t just a way to avoid stress; it’s become one of the most empowering bits of advice I can imagine. Because if all those people out there have changed the world while not knowing what they were doing…so can I.