software engineering 👩‍💻 💯
Learn to deal with pressure
When you're in a real interview the world changes: You're locked in a cage with a lion. Every heartbeat is a gorilla bashing against the walls. Your mental gears gunk up as your body goes into fight or flight mode. Your clammy hands struggle to write half legible code on the white board. A threat hides behind every shado... See more
When you're in a real interview the world changes: You're locked in a cage with a lion. Every heartbeat is a gorilla bashing against the walls. Your mental gears gunk up as your body goes into fight or flight mode. Your clammy hands struggle to write half legible code on the white board. A threat hides behind every shado... See more
Zain Rizvi • Interview advice that got me offers from Google, Microsoft, and Stripe
By putting the database changes inside of a transaction, we can ensure that we either get all of the records or none of the records. We call that an atomic transaction: it happens completely or not at all.
Execute Program
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
Julia Evans once said "behind every best practice is a horror story." If you don't understand a Best Practice, look for the horror story that inspired it. It might make the best practice make sense. It might turn out to be something that's completely irrelevant to you, and then you can feel comfortable doing a different practice instead.
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
- 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 "object
Dec. 19 • Advice for new software devs who've read all those other advice essays
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.
Execute Program
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
Bad code gives you feedback, perfect code doesn’t. Err on the side of writing bad code
It’s really easy to write terrible code. But it’s also really easy to write code that follows absolutely every best practice, which has been unit, integration, fuzz, and mutation-tested for good measure – your startup will just run out of money before you finish.... See more
It’s really easy to write terrible code. But it’s also really easy to write code that follows absolutely every best practice, which has been unit, integration, fuzz, and mutation-tested for good measure – your startup will just run out of money before you finish.... See more