• 7 Posts
  • 39 Comments
Joined 2 years ago
cake
Cake day: January 28th, 2023

help-circle


  • If you don’t already, use version control (git or otherwise) and try to write useful messages for yourself. 99% of the time, you won’t need them, but you’ll be thankful that 1% of the time. I’ve seen database engineers hack something together without version control and, honestly, they’d have looked far more professional if we could see recent changes when something goes wrong. It’s also great to be able to revert back to a known good state.

    Also, consider writing unit tests to prove your code does what you think it does. This is sometimes more useful for code you’ll use over and over, but you might find it helpful in complicated sections where your understanding isn’t great. Does the function output what it should or not? Start from some trivial cases and go from there.

    Lastly, what’s the nature of the code? As a developer, I have to live with my decisions for years (unless I switch jobs.) I need it to be maintainable and reusable. I also need to demonstrate this consideration to colleagues. That makes classes and modules extremely useful. If you’re frequently writing throwaway code for one-off analyses, those concepts might not be useful for you at all. I’d then focus more on correctness (tests) and efficiency. You might find your analyses can be performed far quicker if you have good knowledge about data structures and algorithms and apply them well. I’ve personally reworked code written by coworkers to be 10x more efficient with clever usage of data structures. It might be a better use of your time than learning abstractions we use for large, long-term applications.






  • I’ve worked in two open offices and, yeah, I largely hated it. One was just to enable micromanagement and prevent you from taking any breaks. The other was the opposite, in a very small company, having far too many distractions from music to complete nonsense conversations.

    I’ve now moved to a fully remote role and we get far more done. No distractions and a tidy environment (my home) to think. The “random interactions” occur in group chats and the odd meet-up. Mixing the right people is sufficient and the setting is largely irrelevant.