Best of LobstersFebruary 2024

  1. 1
    Article
    Avatar of lobstersLobsters·2y

    Online CSS Code Quality Analyzer

    Use the CSS Code Quality analyzer to analyze your CSS and get recommendations for performance, maintainability, and complexity.

  2. 2
    Article
    Avatar of lobstersLobsters·2y

    Introducing Glow

    Introducing Glow, a new take on syntax highlighting that focuses solely on aesthetics and how your code looks. Glow is microscale, making it significantly smaller than other alternatives. It allows easy brand coloring and offers unlimited possibilities for styling. Glow also integrates with Nue, a content-first web development framework.

  3. 3
    Article
    Avatar of lobstersLobsters·2y

    One Billion Rows Challenge in Golang

    The post describes the One Billion Rows Challenge and how the author solved it using Golang with a focus on optimizing performance and concurrency. The challenge involves processing a text file with a billion rows of temperature data and finding the minimum, average, and maximum temperature for each unique station.

  4. 4
    Article
    Avatar of lobstersLobsters·2y

    From 1s to 4ms

    The code for searching all occurrences of a word in a buffer was optimized in Zed, resulting in a runtime improvement from 1 second to 4 milliseconds. The optimized code is high-level and does not rely on complex optimizations or data structures.

  5. 5
    Article
    Avatar of lobstersLobsters·2y

    In praise of Nushell

    Nushell is a non-POSIX shell implemented in Rust that handles structured data and provides a powerful, incremental way of working with pipelines in the terminal. It redefines common shell commands to output structured data and offers a range of basic types and commands for transforming data.

  6. 6
    Article
    Avatar of lobstersLobsters·2y

    Git Tips 3: Really Large Repositories

    This post discusses the ability of Git to handle very large repositories and monorepos. It highlights the thankfulness towards Microsoft for their contributions to this area and provides an overview of the improvements made in Git to manage large repositories. The post covers topics like prefetching, commit graph, filesystem monitor, partial cloning, and sparse checkouts.

  7. 7
    Article
    Avatar of lobstersLobsters·2y

    electric-sql/pglite: Lightweight Postgres packaged as WASM into a TypeScript library for the browser, Node.js, Bun and Deno

    PGlite is a lightweight Postgres packaged as WASM into a TypeScript library. It allows you to run Postgres in the browser, Node.js, and Bun without any additional dependencies. It can be used as an ephemeral in-memory database or with persistence to the file system or indexedDB. Parameterized queries are not supported yet. It is being developed at ElectricSQL in collaboration with Neon.

  8. 8
    Article
    Avatar of lobstersLobsters·2y

    Why my code isn't in TypeScript

    The post discusses why the author doesn't use TypeScript in their code, including difficulties with parsing, lack of documentation, and challenges in appeasing TypeScript. These issues are specific to the author's experience and may not apply to all developers.

  9. 9
    Article
    Avatar of lobstersLobsters·2y

    1.5+ million PDFs in 25 minutes

    Zerodha shares their journey of rethinking the architecture and building an architecture from scratch to process, generate, digitally sign, and email 1.5+ million PDF contract notes in about 25 minutes.

  10. 10
    Article
    Avatar of lobstersLobsters·2y

    Strategy pattern in Go

    The post discusses the strategy pattern and its application in Go. It explores how type composition can replace inheritance in Go and provides code examples to demonstrate the implementation.

  11. 11
    Article
    Avatar of lobstersLobsters·2y

    Modular: Mojo vs. Rust: is Mojo 🔥 faster than Rust 🦀 ?

    Mojo is a programming language that aims to provide better performance than Rust and other languages. It is built on state-of-the-art compiler technology, has great SIMD ergonomics, supports eager destruction, and offers tail recursion and tail call optimization. Mojo's goal is to provide Python developers with a language that has incredible performance, hardware portability, and programmability for AI programming.

  12. 12
    Article
    Avatar of lobstersLobsters·2y

    Making Tables Responsive With Minimal CSS

    Learn how to make tables responsive with minimal CSS, including two demos: one that allows scrolling and another that uses flexbox.

  13. 13
    Article
    Avatar of lobstersLobsters·2y

    mbnuqw/sidebery: Firefox extension for managing tabs and bookmarks in sidebar.

    Sidebery is a highly configurable sidebar Firefox extension for managing tabs and bookmarks. It allows vertical tabs panels, bookmarks panels, history panel, search in panels, customizable context menu, customizable styles, and more.

  14. 14
    Article
    Avatar of lobstersLobsters·2y

    Rust wont save us, but it's ideas will

    Rust's ideas and qualities make it safer to use than the average programming language. It emphasizes memory safety and helps reduce vulnerabilities related to Insecure Exposed Functions and web path and routing abuse.

  15. 15
    Article
    Avatar of lobstersLobsters·2y

    Go 2019-2022: Becoming a Cloud team

    The Go team aligned with Google Cloud while preserving the core values that make Go great. They worked with product teams to improve Go's support on Google Cloud and made Go the best language for building cloud workloads.

  16. 16
    Article
    Avatar of lobstersLobsters·2y

    No, Utility Classes Aren't the Same As Inline Styles

    Utility classes and inline styles are not the same. Inline styles have limitations, can't be processed easily, and don't cache well. Utility classes have access to more CSS features, can be processed effectively, and offer better caching. They also belong to a CSS architecture and provide more structure compared to inline styles.

  17. 17
    Article
    Avatar of lobstersLobsters·2y

    A Guide to Interfaces in Go

    Interfaces in Go are implicit and structurally typed, making them flexible and powerful. They can be converted into specific types or other interfaces. Embedded interfaces allow for composition of types, while method receivers enable handling of varying method parameters. Unexported methods can be used in partially exported interfaces, ensuring their usage within the package.