software engineering 👩‍💻 💯
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
Never be afraid to say that you don’t know something
Don’t be afraid to ask for help
We all suffer(ed) impostor syndrome
Don’t be afraid to ask for help
We all suffer(ed) impostor syndrome
Ólafur Waage • Advice to new Programmers
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
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
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
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... 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... See more
Marcus • Marcus' Blog
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
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.