Înapoi la articole →

Cel mai recent articol

Ultima verificare

Urmăritori 0 urmăritori
Articole: 117
  1. I’ve been having a week off from working with my book, mainly to celebrate the initial completion of parts I and II (out of IV).

  2. I’m not that addicted.

  3. I’m writing a book about Elm for React developers.

  4. Why TypeScript Won't Save You

    TypeScript won’t save you from yourself.

  5. I’m rewriting Chapter 2 of my upcoming book, An Elm Primer for React Developers.

  6. As my newsletter subscribers suspect and my Ensō colleagues already know by now, I’ve recently started writing a book.

  7. A Pragmatic Fork Link to heading In my previous post, I explored the challenge of reacting to Shared model changes in Elm Land.

  8. Update: Since publishing this post, I’ve taken a more direct approach to this problem.

  9. Dear subscriber Link to heading I haven’t forgotten about you.

  10. My phone is not dumb enough Link to heading I’ve been touching on the general topic of digital minimalism from time to time on this blog, not least in the post about dumbing down my iPhone and disabling its built-in browser.

  11. The Accidental Teacher Link to heading I’ve been thinking about discipline lately.

  12. Back in May, I introduced a tiny Elm package of HTML utilities focused on reducing boilerplate and improving readability.

  13. I originally wanted to write a post about Server-Sent Events in general, and how delightfully cool they are.

  14. Sometimes the best solutions emerge from the ashes of failed approaches.

  15. Most applications don’t fail because algorithms are hard—they fail because our models allow states that make no sense in the domain.

  16. At KotlinConf 2025, the Kotlin team showcased progress toward Rich Errors with union types.

  17. On the Value of Abstractions

    Most of my day-to-day work is in Elm.

  18. I just returned from four weeks of vacation—no laptop, no programming books, and a phone that could barely do more than call and text.

  19. If you’re using Elm with Tailwind CSS in NeoVim, you’ve probably noticed that IntelliSense doesn’t work out of the box.

  20. Update: I’ve written a follow-up exploring how AI degrades the institutions where theory-building happens: Part II: When Institutions Crumble In 1985, computer scientist Peter Naur wrote a prescient essay called “Programming as Theory Building” that feels…

  21. Sometimes the best solution isn’t the most elegant one.

  22. Last week, I watched two very different developers encounter Claude Code for the first time.

  23. It’s awesome to learn Elm by building a side project, you absolutely should.

  24. Passion

    It’s Friday, and I’m up at 4am, wide awake, head filled with thoughts on recursive data structures and how to efficiently deal with them in our client’s Elm application.

  25. In the Elm ecosystem, the browser is treated like an I/O device.

  26. In the world of React development, we often find ourselves writing components that are tightly coupled to their dependencies.

  27. We all know we should write clean code.

  28. As I continue to build more Elm applications, I find myself creating small utility functions to overcome common pain points.

  29. Recently, Shopify’s CEO Tobi Lütke shared his thoughts on AI’s role in coding, stating that “reflexive AI usage is now a baseline expectation at Shopify.”

  30. Update: While simplifying a complex code example shortly before publishing, I messed up some details.

  31. The Promise of Memoization Link to heading When React applications start to slow down, React.memo, useMemo, and useCallback are often the first tools developers reach for.

  32. Introduction Link to heading When dealing with large lists or complex DOM structures, performance optimization often feels like a complex puzzle.

  33. One of the most common questions I get about Elm is: “How do I integrate it with existing JavaScript ecosystems?”

  34. I recently added a new feedback widget to this site – Feedback.one – and I’m impressed enough with it that I thought it deserved its own post.

  35. Introduction Link to heading When it comes to React performance optimization, React.memo is often the first tool developers reach for.

  36. In a world dominated by React, Vue, and Svelte, it might seem strange to highlight Elm – a niche language that has existed since 2012 but has had fewer releases since then than React has in a year.

  37. In part 1, we laid out our Clean Architecture vision.

  38. From Hugo to Kotlin: The Journey Continues Link to heading In my previous post, embarked on a bold and ambitious journey to replace Hugo with a custom Kotlin-based blog engine built using Clean Architecture principles (to the letter!).

  39. Let’s make a blog engine, ey?

  40. Introduction Link to heading We’ve covered Dependency Inversion, Interface Segregation, Liskov Substitution, and Open-Closed.

  41. My First Encounter with a Kotlin UseCase Link to heading One of my responsibilities as an Android Developer in Vipps (Mobilepay) was to do tech interviews.

  42. Resume

    Staff Engineer & Senior Consultant Phone: +47 45 80 65 89 | Email: christian.ekrem@gmail.com Summary Link to heading Christian Ekrem is a software developer with over 12 years of experience in backend, frontend, and mobile development.

  43. Introduction Link to heading After exploring Dependency Inversion, Interface Segregation, and Liskov Substitution, let’s tackle the Open-Closed Principle (OCP) in the context of modern React applications.

  44. Introduction Link to heading After exploring Dependency Inversion and Interface Segregation, let’s tackle perhaps the most misunderstood principle of SOLID: The Liskov Substitution Principle (LSP).

  45. Following up on my previous post about books software engineers should read, I want to highlight one particular book that I believe could revolutionize how we approach work in software development: Cal Newport’s “Slow Productivity: The Lost Art of Accompl…

  46. Introduction Link to heading In our previous post, we explored the Dependency Inversion Principle and how it enables clean, modular architectures.

  47. Introduction Link to heading Update: this has become a series, the next entry can be found here: Interface Segregation: Why Your Interfaces Should Be Small and Focused I’ve lately enjoyed revisiting the SOLID Design Principles.

  48. What follows is a non-ordered & non-exhaustive list of great programming books that I’d recommend every ambitious software engineer.

  49. I'm joining Ensō!

    My favorite consultancy Link to heading I’m thrilled to share that I’ll be joining my favorite consultancy this coming February!

  50. The problem Link to heading TL;DR: I need a phone, for a couple of obvious reasons.