software engineering 👩‍💻 💯
When working on a team, you should usually ask the question
There’s a spectrum of “trying to figure out everything for yourself” to “bugging your coworkers with every little question”, and I think most people starting their careers are too far on the former side. There’s always someone around that has been in the codebase longer, or knows technolog... See more
There’s a spectrum of “trying to figure out everything for yourself” to “bugging your coworkers with every little question”, and I think most people starting their careers are too far on the former side. There’s always someone around that has been in the codebase longer, or knows technolog... 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 disco... See more
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
Dec. 19 • Advice for new software devs who've read all those other advice essays
Dec. 19 • Advice for new software devs who've read all those other advice essays
Try to solve bugs one layer deeper
Imagine you have a React component in a dashboard, that deals with a User object retrieved from state, of the currently logged in user. You see a bug report in Sentry, where user was null during render. You could add a quick if (!user) return null . Or you could investigate a bit more, and find that your logout fu... See more
Imagine you have a React component in a dashboard, that deals with a User object retrieved from state, of the currently logged in user. You see a bug report in Sentry, where user was null during render. You could add a quick if (!user) return null . Or you could investigate a bit more, and find that your logout fu... See more
Marcus • Marcus' Blog
If you’re lucky, you will have many challenging moments in your career. Moments when you only understand a portion of the problem in front of you, when you know you’ll have to try a few things to see what works, when you aren’t fully confident that you can do the job. We’re lucky to have these moments because that’s how we grow. By pushing outside ... See more
Makinde Adeagbo • Nobody Knows What They’re Doing
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.
Makinde Adeagbo • Nobody Knows What They’re Doing
This pattern (set up, do work, clean up) is common across many different problem domains, so Python has a language feature to help with it. Context managers, defined using the with keyword, manage the setup and cleanup processes. Python's file objects support them, as do most database libraries.