Best of LobstersJuly 2025

  1. 1
    Article
    Avatar of lobstersLobsters·45w

    The JavaScript Date Quiz

    An interactive quiz testing knowledge of JavaScript's Date class behavior, including edge cases and unexpected behaviors when parsing date strings. The quiz covers various scenarios to help developers understand the quirks and pitfalls of JavaScript date handling.

  2. 2
    Article
    Avatar of lobstersLobsters·45w

    The hunt for a perfect laptop continues

    A detailed critique of the current laptop market highlighting the overwhelming number of confusing product lines offered by major manufacturers like Lenovo, HP, and ASUS. The author argues that most companies offer hundreds of nearly identical models that fail to get basic features right, while praising simpler approaches from Apple, Framework, and smaller Linux-focused companies. The piece advocates for fewer, better-designed models that consistently improve year over year rather than the current approach of minor variations and feature regressions.

  3. 3
    Article
    Avatar of lobstersLobsters·44w

    Two Simple Rules to Fix Code Reviews

    Two fundamental rules can dramatically improve code review effectiveness: minimize response time to prevent context loss and momentum disruption for authors, and always include explicit 'because' clauses in comments to clearly communicate the reasoning behind feedback. Quick response doesn't mean quick approval, but rather prompt engagement with the change. Senior engineers play a crucial role in establishing positive code review culture through their behavior, as others will follow their example.

  4. 4
    Article
    Avatar of lobstersLobsters·44w

    How I keep up with AI progress (and why you must too)

    A comprehensive guide to staying informed about AI developments through curated sources and trusted experts. The author provides a structured approach to consuming AI information, starting with foundational sources like Simon Willison's blog and Andrej Karpathy's content, then expanding to official announcements from AI labs, high-signal practitioners in AI engineering, and specialized communities. The guide emphasizes staying close to primary sources, following trustworthy individuals, and building a balanced information diet to avoid both AI hype and dismissal.

  5. 5
    Article
    Avatar of lobstersLobsters·45w

    Don't animate height!

    A CSS height animation was causing 60% CPU and 25% GPU usage in an Electron app. The issue stems from height being a layout property that triggers expensive layout recalculation, painting, and compositing on every frame. The solution involves replacing height animations with transform-based animations using translate and multiple elements to create the same visual effect, reducing CPU usage from 15% to 6% and GPU usage to less than 1%.

  6. 6
    Article
    Avatar of lobstersLobsters·44w

    The current technology is not ready for proper blending

    Color blending in graphics programming faces significant challenges when choosing between sRGB, linear RGB, and perceptually uniform color spaces like OkLab. While OkLab provides the most visually accurate results for color gradients and blending, linear RGB is physically correct but can produce undesirable visual artifacts, especially in monochrome gradients. The article demonstrates these differences through GLSL code examples and explains why current graphics pipelines struggle to implement proper perceptually uniform blending consistently across all rendering operations.

  7. 7
    Article
    Avatar of lobstersLobsters·45w

    How I build software quickly

    A developer shares practical strategies for building software efficiently while maintaining quality. Key approaches include understanding quality requirements for each project context, creating rough drafts before polishing code, negotiating requirements when possible, staying focused to avoid code wandering, making small incremental changes, and developing specific skills like code reading, debugging, and scripting. The author emphasizes aiming for "8 out of 10" quality delivered on time rather than perfection, and advocates for the rough draft approach to uncover unknowns early and avoid premature optimization.

  8. 8
    Article
    Avatar of lobstersLobsters·43w

    wren-lang/wren: The Wren Programming Language. Wren is a small, fast, class-based concurrent scripting language.

    Wren is a small, fast, class-based concurrent scripting language designed for embedding in applications. It features a compact VM implementation under 4,000 lines of code, single-pass compilation to bytecode, object-oriented design with classes, and lightweight fibers for concurrency. The language combines elements from Smalltalk, Lua, and Erlang with modern syntax, offering a C99-compatible API for easy integration into existing applications.

  9. 9
    Article
    Avatar of lobstersLobsters·45w

    systemd has been a complete, utter, unmitigated success

    A defense of systemd as a successful replacement for traditional init systems, arguing that despite initial resistance, systemd has proven to be a significant improvement. The author highlights systemd's backward compatibility, simple configuration format, and powerful new features like journald logging, timer system, socket activation, and security hardening options. The piece addresses common criticisms and demonstrates how systemd's comprehensive approach to system management has made Linux systems more robust and easier to administer.

  10. 10
    Article
    Avatar of lobstersLobsters·43w

    Three HTTP versions later, forms are still a mess

    HTTP form handling remains problematic despite three HTTP protocol versions. The two main form encoding formats (application/x-www-form-urlencoded and multipart/form-data) are poorly specified, inefficient, and difficult to parse. URL-encoded forms can't handle large files efficiently due to encoding overhead, while multipart forms use arbitrary boundary separators that may conflict with data and lack proper length headers. Despite decades of web evolution and newer HTTP versions, form submission still relies on these legacy formats from the 1980s-90s, with limited modern alternatives available.

  11. 11
    Article
    Avatar of lobstersLobsters·44w

    Why you should choose HTMX for your next web-based side project - and ditch the crufty MPA and complex SPA

    HTMX offers a middle ground between traditional Multi-Page Apps (MPAs) and complex Single-Page Apps (SPAs) by extending HTML to support partial page reloads. This approach allows developers to create modern web experiences with the simplicity of MPAs while avoiding the complexity and overhead of SPAs. For side projects where time and budget constraints are critical, HTMX provides an efficient way to build interactive web applications without the steep learning curve and infrastructure requirements of modern JavaScript frameworks.

  12. 12
    Article
    Avatar of lobstersLobsters·42w

    ethersync/ethersync: Editor-agnostic, real-time collaborative editing of local text files.

    Ethersync is an open-source tool that enables real-time collaborative editing of local text files across different editors. It features encrypted peer-to-peer connections without requiring a server, supports multiple editors including VS Code and Neovim through plugins, and allows developers to see each other's cursors and selections while working on shared projects. The tool works on Linux, macOS, Android, and Windows Subsystem for Linux, with a simple installation process and JSON-RPC protocol for creating new editor plugins.

  13. 13
    Article
    Avatar of lobstersLobsters·46w

    20 years of programming

    A developer reflects on 20 years of programming experience, starting from game scripting at age 11 to professional software development. The post explores the challenges of naming in programming, arguing that changing names is artificially difficult due to siloed tools and plain text limitations. The author proposes structured text with linking capabilities as a potential solution, demonstrating how cross-reference renaming could work across code and documentation. The reflection includes insights on reading more code, diving deep into technologies, and maintaining work-life balance.

  14. 14
    Article
    Avatar of lobstersLobsters·45w

    Monitoring my Homelab, Simply

    A developer shares their custom-built lightweight monitoring solution for homelab infrastructure. The system uses Go to implement simple probers that check HTTP, DNS, TLS, and TCP connectivity at regular intervals. It sends notifications via ntfy.sh when services fail and includes dead man's switch functionality through healthchecks.io to ensure the monitoring system itself stays operational. The approach prioritizes simplicity over feature-rich solutions like Prometheus, focusing on basic service availability rather than complex metrics.

  15. 15
    Article
    Avatar of lobstersLobsters·46w

    Our Fullstack Architecture: Eta, HTMX, and Lit

    A fullstack architecture combining Eta templating for server-side rendering, HTMX for dynamic interactions, and Lit Web Components for complex client-side logic. This approach delivers fast initial page loads with minimal JavaScript bundles (151KB vs 635KB-2.6MB for React apps) while maintaining rich interactivity. The stack uses server-rendered HTML as the foundation, HTMX for 90% of user interactions, and Lit components as 'islands of interactivity' for stateful client-side features like pagination. View Transitions API provides smooth animations between content updates.