Înapoi la articole →

Cel mai recent articol

Ultima verificare

Urmăritori 0 urmăritori
Articole: 113
  1. Depth-first development 📋

    When programming, I always keep a document open to capture any ideas, related tasks, or test suggestions that pop into my head.

  2. Leave it out 🚫

    One of my favorite pieces of advice on API design comes from Joshua Bloch.

  3. No straight line 🍝

    Perhaps you’ve seen a picture similar to this, comparing one’s expectations versus reality?

  4. My thoughts on Go 🐹

    Last week, I started a small hobby programming project.

  5. Chekhov's method 🔫

    Young story writers are taught about about Chekhov’s gun, a narrative principle described by Russian playwright Anton Chekhov.

  6. French pilot and author De Saint-Exupéry wrote in his biography: Perfection is finally attained not when there is no longer anything to add, but when there is no longer anything to take away.

  7. In software development, we often have to deal with untrusted data – data that comes from a user or an external system.

  8. As little as possible 🪶

    When it comes to software development, I have a personal motto that I try to live by.1 Do as little as possible, as well as possible.

  9. Algebraic data types 🧩

    So you’ve mastered functional foundations and use immutable data structures every day?

  10. Intrinsic motivation 🔥

    I’ve often felt like a bit of an outsider when it comes to discussions about what quality is, which features to build, or what a successful product is.

  11. My pre-commit routine ✅

    I have a set of loose rules that I always1 follow when I commit code to version control.

  12. Developers are emotional 😭

    Today’s post is from the not-really-scientific-but-too-good-to-not-be-true department.

  13. A powerful rule of thumb to make something easy to understand is that all of its parts should be at the same level of abstraction.

  14. Focused commits 🔍

    What was the last message you provided when committing changes into version control?

  15. Just close all issues 🗑️

    Take a good look at your issue tracker.

  16. Legacy means successful 🏆

    In software development, “legacy” is seen as a curse.

  17. Don't forget to play 🏀

    I love it when people put a lot of effort into something just for the joy and satisfaction of creating it!

  18. Writing is thinking ✍️

    Don’t be lazy and use ChatGPT or other LLMs to write things for you.

  19. Many people associate abstraction and generalization with reuse; that the whole point of generalizing or creating an abstraction is to be able to reuse it.

  20. Put uncertainty in a box 📦

    I have my own version of the expression “thinking outside the box”.

  21. It’s easy to think that large results require large changes.

  22. Not at all, really.

  23. Plan for tomorrow 📆

    In preparing for battle I have always found that plans are useless, but planning is indispensable.

  24. Design for today 🧑‍🎨

    “You should build software that is extensible and future-proof.”

  25. There is no loop 🥄

    This post is really a shameless adaption of a great Mastodon post by Akshar Varma.

  26. I added tags #️⃣

    All blog posts on this blog are now marked with one or more tags.

  27. Most object-oriented programming languages have the concept of a constructor – a special function which creates a new instance of a class, often using a new keyword.

  28. Inspired by fellow blogger Lars-Christian, I decided to import posts from an old blog of mine.1 The posts are mostly from 2012 and deal with software design and testing.

  29. Why write unit tests? 🧪

    Today’s post is a bit longer and discusses unit testing and why you would want do it.

  30. There is a link between pure functions, testability and reusability that I have been thinking about for a while.1 In Functional foundations, I argued for the value of pure functions – functions which always return the same result for the same arguments, a…

  31. I want to talk about temporal dependencies.

  32. AI is great for research 📖

    Generative AI assistants like ChatGPT or Claude are so hyped right now that it is hard to have a sensible discussion about them.

  33. Does this scale down? 📉

    The tech giants often publish the tools and processes they build for the world to see.

  34. I’ve always liked strong typing in programming.

  35. Functional foundations ⚙️

    The needs of today’s software strains architectures designed for a simpler world.

  36. A personal website 🏡

    I’ve recently spent some time building this personal website and blog.

  37. Feeds

    Here are some RSS feeds1 you can use to keep up with what I write.

  38. Contact

    To get in touch with me, feel free to: Write me an email Message me on Mastodon Message me on LinkedIn You can also see what I am currently up to, or follow my writing through my RSS feed.

  39. About me

    Hello, I’m Henrik Jernevad. # I live with my wife and two kids in Varberg, Sweden.

  40. I can be wrong 🤷

    A few years ago, I attended a talk by Swedish Buddhist monk Björn Natthiko Lindeblad, and he told a story which stuck with me.

  41. Books that shaped me 📚

    After reading Glyn Normington’s Top ten technical books I started thinking about what books have had the greatest impact on my thinking.

  42. There always seems to be more things to do than there is time available.

  43. Constraints are good 🔗

    It is easy to think that creativity requires great freedom, but the opposite is often true.

  44. Risk-driven development 🧨

    Software development processes in the 1990s have gotten a pretty bad reputation.

  45. I have a love-hate relationship with teaching and explaining things.

  46. Artificial Intelligence has taken the world by storm.

  47. You know that feeling of accomplishment gained from understanding a large or complex piece of technology?

  48. Time to prove it 🏆

    Maybe it is a sign of me getting old gaining seniority as a software developer, but I’ve come to reflect a lot more on my professional contribution.

  49. I think consistency is one of the most important design guidelines.

  50. Use boring technology 🥱

    In technology choices, sometimes “boring” can be better than “interesting”.