Coding tools news 2022

Here is a post where I post information on new and interesting coding tools on the comments.

1,036 Comments

  1. Tomi Engdahl says:

    SQLite vs PostgreSQL Performance
    https://www.youtube.com/watch?v=VzQgr-TgBzc

    PostgreSQL vs SQLite Performance Comparison.

    0:00 Intro
    0:37 SQLite vs PostgreSQL Comparison
    3:49 Test Design
    6:30 Implementation Overview
    7:13 1st Test (INSERT – UPDATE – DELETE)
    11:59 2nd Test (SELECT)

    Reply
  2. Tomi Engdahl says:

    API Pagination: Making Billions of Products Scrolling Possible
    https://www.youtube.com/watch?v=14K_a2kKTxU

    Reply
  3. Tomi Engdahl says:

    7 Must-know Strategies to Scale Your Database
    https://www.youtube.com/watch?v=_1IKwnbscQU&t=13s

    SQL indexing best practices | How to make your database FASTER!
    https://www.youtube.com/watch?v=BIlFTFrEFOI

    Learn about best practices for using indexes in SQL, and how they can be used to speed up your queries, make your database faster, and improve your application’s performance.

    0:00 Intro
    0:05 Example database table
    0:15 Example query
    0:21 The problem with a full table scan
    0:50 Using EXPLAIN ANALYZE
    1:04 What is a SQL index?
    1:17 How to create a single-column index
    1:37 How to create a multi-column index
    2:08 Optimizing our SQL query
    2:31 Caveats of sql indexes

    Reply
  4. Tomi Engdahl says:

    What is an API Gateway?
    https://www.youtube.com/watch?v=RbMxB_Cyx6A

    What’s an API gateway? It is a server that exposes internal service APIs to external client devices, using a protocol like HTTP.

    The gateway also uses design patterns like REST and GraphQL to expose APIs, which allow clients to get and update data through servers with databases.

    In this video, we will talk about API gateways, their use cases, and how they work with CDNs and DNSes to ensure fast and reliable user request handling.

    Some of their most common use cases are:

    1. Authentication and Authorization
    2. Request Transformation
    3. Request Validation
    4. Rate Limiting
    5. Routing
    6. Load Balancing

    Reply
  5. Tomi Engdahl says:

    Uber System Design | Websockets and Event Driven Architecture
    https://www.youtube.com/watch?v=2WYjtfRyHzQ

    How does Uber handle real-time ride-sharing for millions of users? In this video, we design an Uber-like system, focusing on core components like APIs, database structure, real-time communication with WebSockets applying the principles of Event Driven Architecture. Learn how ride requests are processed, drivers are matched, and real-time updates are sent—all using an event-driven architecture and technologies like Kafka. Perfect for system design interviews or understanding scalable application architecture.

    Timestamps:
    0:00 – Introduction
    0:43 – Clarifying Requirements and Scope
    1:35 – API Design and Key Endpoints
    3:47 – Real-Time Communication with WebSockets
    4:08 – Database Design: Relational vs. NoSQL
    10:31 – Event-Driven Architecture
    13:10 – Detailed Workflow Example
    13:58 – Real-Time Updates During a Ride
    14:10 – WebSocket Session Management
    15:46 – High-Level System Overview
    18:30 – Future Enhancements

    Reply
  6. Tomi Engdahl says:

    Unlock the Power of Event-Driven Architecture: How Netflix & Uber Handle Billions of Events
    https://www.youtube.com/watch?v=hrvx8Nv9eQA

    n this video, we’ll break down Event Driven Architecture (EDA) pattern and dive into real-world case studies from Netflix and Uber, who leverage EDA to handle billions of events daily.

    Learn how EDA decouples services, enabling scalable, flexible, and efficient systems. We’ll also cover key components like Event Producers and Event Consumers, along with advanced concepts such as Complex Event Processing. Discover the advantages of using EDA alongside other patterns like Service Mesh and Sidecar Pattern.

    If you’re looking to build scalable, real-time systems, this is the perfect video for you! Don’t forget to subscribe for more in-depth software architecture insights.

    Timestamps
    00:00 – Introduction to Event-Driven Architecture
    00:30 – The need for EDA in modern systems
    01:48 – EDA components: Producers and Consumers
    02:29 – Netflix and Uber: Real-world EDA use cases
    04:21 – EDA, Service Mesh and Sidecar pattern
    05:53 – Event Processing: Simple and Complex
    07:30 – EDA Challenges
    07:55 – EDA Tooling: Kafka, SQS and RabbitMQ

    Reply
  7. Tomi Engdahl says:

    CICD Pipeline | System Design
    https://www.youtube.com/watch?v=su3-fAEePs0&list=PLJq-63ZRPdBssWTtcUlbngD_O5HaxXu6k

    In this video we will understand and design a CICD (Continuous Integration and Continuous Delivery) Pipeline. This is taken from Ex-Googler interview,

    Reply
  8. Tomi Engdahl says:

    RISC CPU Lives In Excel
    https://hackaday.com/2024/11/24/risc-cpu-lives-in-excel/

    Last time we checked in on [Inkbox], he had made a 16-bit CPU in Excel. Impressive, but not really practical. Presumably, his latest project isn’t any more practical, but we suspect an 8-bit RISC CPU was easier to implement in Excel and probably runs faster, too. The new machine uses a stack architecture with a simplified instruction set of ten instructions. You can follow along with his Excel adventure in the video below.

    If you think about it, you may decide that doing something like this in Excel is easy because you could just script it and use Excel as the user interface. That’s true, but that’s not how [Inkbox] does it. He won’t use scripts or IF statements in a cell. That makes things much harder.

    If you are curious about what goes on in a CPU, this is worth watching, even if you don’t expect you’ll use it. If you really want to become a CPU designer, we’d suggest skipping Excel and go straight into Verilog, VHDL, or something similar that you could actually use.

    Don’t get us wrong. Seeing it done in Excel can be very educational, but no one designs CPUs like this in practice.

    I Built a BETTER CPU in Excel
    https://www.youtube.com/watch?v=MNRKi7Rum_c

    I built an 8-bit RISC CPU inside of Excel. The Processor uses a custom RISC ISA that has only 10 instructions (making this a Super-RISC computer). The machine has only a single register, but is equipped with a stack to help in executing instructions. The greater computer system features 1KB of RAM and ROM each, and a 16x16px 64-color screen.

    The Excel SRISC CPU:

    Excel 8-Bit RISC CPU
    https://github.com/InkboxSoftware/excelRISC-CPU

    The RISC-CPU.xlsx file features an 8-bit RISC CPU running a 10 instruction ISA. The system has 1 register, a stack, 1KB RAM, 1KB ROM, and a 16×16 64-color display.

    Reply
  9. Tomi Engdahl says:

    System Design Explained | Why It’s Crucial for Tech Interviews & Real-World Success
    https://www.youtube.com/watch?v=ABwZfwisPXo

    How to Crack Any System Design Interview
    https://www.youtube.com/watch?v=o-k7h2G3Gco

    Translate an ambiguous problem statement into CONCRETE one.
    Articulate design decisions THROUGHOUT the discussions.
    Know the pros and cons of different approaches.
    Get comfortable with white drawing tools.
    Give mocks.
    Hyper Aware of time management.
    Think out loud.
    Focus on broader tradeoffs rather than low level designs.

    Reply
  10. Tomi Engdahl says:

    Building an open source control plane for data
    https://www.youtube.com/watch?v=gTwho9ijc-8

    Today’s data landscape, spanning operational, streaming, lakehouse, and warehouse systems, grapples with the complexities of decentralization. Do you seek new approaches, tools, and solutions to address challenges in data discovery, management, governance, quality, and observability?

    How about a visibility layer, or control plane, for the data distributed across your stack?
    In this session, Shirshanka Das, founder of the open source DataHub Project, will describe how a control plane for data, powered by metadata, can simplify data discovery, foster team collaboration, and offer real-time observability into data assets.
    This talk will cover:
    The control plane for data and its role in the decentralized data stack
    Using the open-source DataHub Project to implement the control plane for data
    How data contracts help you define and enforce decentralized governance
    How this helps reduce operational overhead and keep cloud costs down
    Why the industry is gravitating towards these ideas—and why the DataHub Project is key

    Reply
  11. Tomi Engdahl says:

    Mastering Kafka with Node.js: Build a Seamless Order Creation System
    https://www.youtube.com/watch?v=hsERcsA8WPY

    Dive into the world of e-commerce and uncover the cutting-edge technology that powers your online shopping experience! In this video, we explore the secret tech that ensures your orders are processed smoothly and efficiently. From advanced algorithms to innovative software solutions, discover how these technologies scale to meet the demands of millions of users worldwide. Whether you’re a tech enthusiast or an e-commerce professional, this video will provide you with valuable insights into the backbone of online retail. Don’t forget to subscribe to Code with Jay for more tech-savvy content!

    Reply
  12. Tomi Engdahl says:

    API Pagination: Making Billions of Products Scrolling Possible
    https://www.youtube.com/watch?v=14K_a2kKTxU&t=103s

    The team I joined about a month ago is using cursor based pagination and it makes sense why after seeing this explanation. I appreciate the video!

    About cursor based pagination, this video mentioned “it stays consistent even when records are added or deleted”, however this is wrong.

    Let me give an example, imagine page size is 10, and you have 100 entries with id range from 1 to 100.
    First page returns first 10 records (from 1 to 10) and return cursor on <=10, in the meantime rows with id 2 and 12 are deleted (2 is deleted first).
    The user asks for the next page, in this case the database will return 11 and 13..21.
    So note that you didn't include 12, but you included 2 which means the total result is inconsistent (at no point in time the database contained id 21 and 2 without id 12)

    Reply
  13. Tomi Engdahl says:

    Is Python really that slow? (hint: no)
    https://blog.adafruit.com/2024/11/27/is-python-really-that-slow-hint-no/

    Miguel Grinberg’s response when someone asks how to deal with Python being such a slow language is that Python is by far the fastest to write, cleanest, more maintainable programming language known, and that a bit of a runtime performance penalty is a small price to pay when rewarded with significant productivity gains.

    Based on my analysis I’m pleasantly surprised with the performance improvements Python has received in the last couple of years starting with Python 3.11, and I’m also frankly blown away by PyPy, which I expected to be only marginally faster than CPython and is instead running at or close to Node.js speeds. I’m definitely going to play more with PyPy going forward!

    https://blog.miguelgrinberg.com/post/is-python-really-that-slow

    Reply
  14. Tomi Engdahl says:

    Python to C: What’s new in Cython 3.1
    https://www.infoworld.com/article/3609676/python-to-c-whats-new-in-cython-3-1.html

    The next version of the Python-to-C translator will be a major release, with more tools than ever to speed up your code. Here’s how to try it now.

    Cython is the most convenient way to bridge C and Python languages and tools in Python programs. Developers use it to write C extensions or wrap C libraries for use in Python. Now, a major new release is on the way. While it’s in early stages, Cython 3.1 adds powerful new type annotation features, and it includes compatibility with the free-threaded or “no-GIL” build of Python. It’s worth a spin, especially for developers who like to stay ahead of the curve.

    Support for free-threaded Python
    Python 3.13 introduced the first public, if experimental, “free-threaded” or “no-GIL” builds of the language, which we’ll call “3.13t.”

    3.13t allows CPU-bound Python threads to run with true parallelism. As a project, it’s still in the early stages of development, so it’s only offered as an opt-in option. You have to specifically install the free-threaded build in order to use it.

    Reply
  15. Tomi Engdahl says:

    USPTO petitioned to cancel Oracle’s JavaScript trademark
    https://www.infoworld.com/article/3612364/uspto-petitioned-to-cancel-oracles-javascript-trademark.html

    Deno Land has petitioned the US Patent and Trademark Office to strip Oracle of its ownership of the JavaScript trademark, accusing Oracle of trademark abandonment and fraud.

    Reply
  16. Tomi Engdahl says:

    Abstract, theoretical computing qualifications are turning teens off
    BCS calls for digital literacy GCSE alongside Computer Science
    https://www.theregister.com/2024/11/28/bcs_computer_science_gcse/

    Reply
  17. Tomi Engdahl says:

    Rust haters, unite! Fil-C aims to Make C Great Again
    It’s memory-safe, with a few caveats
    https://www.theregister.com/2024/11/16/rusthaters_unite_filc/

    Developers looking to continue working in the C and C++ programming languages amid the global push to promote memory-safe programming now have another option that doesn’t involve learning Rust.

    Filip Pizlo, senior director of language engineering at Epic Games, has created his own memory-safe flavor of C and – because why not? – named it after himself.

    Pizlo got in touch after seeing our report on TrapC – a memory-safe C-fork due for release next year.

    Reply
  18. Tomi Engdahl says:

    How to Build a Flexible API with Feature Flags Using Open Source Tools
    https://www.freecodecamp.org/news/build-a-flexible-api-with-feature-flags-using-open-source-tools/

    Feature flagging has changed the paradigm of how backend developers can test and modify the things they build. With feature flags, we can enable and disable a feature or change the functionality of something on the fly with a single click (no need to redeploy).

    In this tutorial, we will see how feature flags help us to enable and disable a feature/a part of code whenever we want from the UI, without the need to redeploy the whole code

    Reply
  19. Tomi Engdahl says:

    Diagram-as-Code: Creating Dynamic and Interactive Documentation for Visual Content
    #
    python
    #
    programming
    #
    aws
    #
    documentation
    In this article, I will guide you step by step to create dynamic and interactive visual documentation using Diagram-as-Code tools. Instead of static images, we will generate diagrams programmatically, ensuring they are always up-to-date and easy to maintain.
    https://dev.to/r0mymendez/diagram-as-code-creating-dynamic-and-interactive-documentation-for-visual-content-2p93

    Reply
  20. Tomi Engdahl says:

    Linux 6.13 Hits A “Tipping Point” With More Rust Drivers Expected Soon
    https://www.phoronix.com/news/Linux-6.13-char-misc-More-Rust

    In addition to the USB updates and big staging flush merged yesterday for the Linux 6.13 kernel merge window, the “char/misc” pull was also honored for that catch-all of various kernel changes. With the char/misc pull there are some notable additions for those wanting to write kernel drivers within the Rust programming language.

    Greg Kroah-Hartman noted that with these changes for Linux 6.13, it’s now possible to make more Rust-based kernel drivers possible.

    Reply
  21. Tomi Engdahl says:

    A Shiny New Programming Language
    Mirror is an entirely new concept in programming — just supply function signatures and some input-output examples, and AI does the rest.
    https://www.hackster.io/news/a-shiny-new-programming-language-e41357506c46

    Anyone with even a passing interest in machine learning understands how these algorithms learn to perform their intended function by example. This has proven to be a very powerful technique. It has made it possible to build algorithms that can reliably recognize complex objects in images, for example, which would be virtually impossible with standard rules-based programming techniques.

    Austin Z. Henley of Carnegie Mellon University has been exploring the idea of using a set of examples when running inferences against a trained model as well. Specifically, Henley has been designing a proof of concept programming-by-example programming language that is powered by a large language model (LLM). The basic idea of this unique language, called Mirror, is that the programmer should just provide a few input-output examples for a function, then the LLM should write and execute the actual code behind the scenes.

    To use Mirror, a user first defines the signature (name, input and output parameter data types) of a function. This is followed by one or more example calls of the function, with appropriate input and output parameters supplied. Functions are then called and chained together as needed to accomplish the programmer’s goal.

    On the backend, a traditional recursive descent parser makes a pass before the result is sent to an OpenAI LLM along with a prompt instructing it to generate JavaScript code to complete the functions with code that satisfies the constraints of the examples. The code is shown to the programmer, giving them the opportunity to provide more examples if things do not look quite right.

    If you would like to take a crack at programming with Mirror for yourself, a browser-based playground has been made available in the GitHub repository. Just supply your own OpenAI API key, and you are good to go.

    https://github.com/AZHenley/Mirror

    Reply
  22. Tomi Engdahl says:

    Cloudflare reports Go as top language for API clients, AWS dominant for public web
    https://devclass.com/2024/12/11/cloudflare-reports-go-as-top-language-for-api-clients-aws-dominant-for-public-web/

    A Cloudflare report, based on usage of its services, shows that Go is now the most used language for API clients – overtaking Node.js – and that AWS is the public cloud of choice for public-facing websites among the top 5000 domains.

    The Cloudflare Radar Year in Review uses data from a variety of sources. The business is best known for network services including a global content delivery network. The data in the Radar is drawn from use of its services, but needs careful interpretation.

    According to Cloudflare, more than half of the internet traffic it sees is API related, and its analysis shows that Go has become the most popular language for developing API clients – accounting for 11.8 percent, ahead of Node.js at 10 percent and Python at 9.6 percent. Go was developed by Google as a compiled language with static typing, strong concurrency, memory safety, and ease of programming thanks to garbage collection, making it well suited for API clients.

    Reply
  23. Tomi Engdahl says:

    How to Scrape Data from a Page with Infinite Scroll
    #
    javascript
    #
    webdev
    #
    beginners
    #
    tutorial
    Have you ever encountered a web page requiring actions like “clicking a button” to reveal more content? Such pages are called “dynamic webpages,” as they load more content based on user interaction. In contrast, static webpages display all their content at once without requiring user actions.

    Scraping content from dynamic pages can be daunting as it requires simulating user interactions, such as clicking a button to access additional hidden content. In this tutorial, you’ll learn how to scrape data from a webpage with infinite scrolling via a “Load more” button.

    https://dev.to/shegz/how-to-scrape-data-from-a-page-with-infinite-scroll-4o14

    Reply
  24. Tomi Engdahl says:

    Mutlithreading in JavaScript
    https://www.geeksforgeeks.org/mutlithreading-in-javascript/

    Multithreading is the ability of any program to execute multiple threads simultaneously. As we know JavaScript is a single-threaded programming language, which means it has a single thread that handles all the execution sequentially. Single-threaded means one line of code run at once. Originally, Javascript is single-threaded because it was just used in web browser scripting language for a single user but nowadays it evolve into something bigger and make the computation very huge.

    There are various techniques to stimulate multithreading in JavaScript

    Reply
  25. Tomi Engdahl says:

    Java Applet API heads for the exit
    https://www.infoworld.com/article/3623579/java-applet-api-heads-for-the-exit.html

    OpenJDK proposal would finally remove the ‘terminally deprecated’ API that neither the JDK nor web browsers support.

    Reply
  26. Tomi Engdahl says:

    Pilvipalveluiden palvelumallit: PaaS, IaaS, BaaS ja Saas
    https://www.hurja.fi/blogi/pilvipalveluiden-palvelumallit-paas-iaas-baas-ja-saas/

    PaaS vs. IaaS vs. SaaS vs. CaaS: How are they different?
    https://cloud.google.com/learn/paas-vs-iaas-vs-saas

    Reply
  27. Tomi Engdahl says:

    How AMD Is Taking Standard C/C++ Code To Run Directly On GPUs
    https://www.phoronix.com/news/AMD-Standard-C-Code-GPUs

    Reply
  28. Tomi Engdahl says:

    WASM-4: Retro Game Dev Right In Your Browser
    https://hackaday.com/2024/12/08/wasm-4-retro-game-dev-right-in-your-browser/

    Have you ever dreamt of developing games that run on practically anything, from a modern browser to a microcontroller? Enter WASM-4, a minimalist fantasy console where constraints spark creativity. Unlike intimidating behemoths like Unity, WASM-4’s stripped-back specs challenge you to craft games within its 160×160 pixel display, four color palette, and 64 KB memory. Yes, you’ll curse at times, but as every tinkerer knows, limitations are the ultimate muse.

    Born from the WebAssembly ecosystem, this console accepts “cartridges” in .wasm format. Any language that compiles to WebAssembly—be it Rust, Go, or AssemblyScript—can build games for it. The console’s emphasis on portability, with plans for microcontroller support, positions it as a playground for minimalist game developers. Multiplayer support? Check. Retro vibes? Double-check.

    Reply
  29. Tomi Engdahl says:

    5 JavaScript Libraries You Should Say Goodbye to in 2025
    We highlight five JavaScript libraries that are likely to become obsolete in 2025 and why it’s time to move on. Also: we list alternatives!
    https://thenewstack.io/5-javascript-libraries-you-should-say-goodbye-to-in-2025/

    Reply
  30. Tomi Engdahl says:

    Are Software Developers Facing an Age Barrier?
    Here’s the Shocking Truth and What It Means for the Future
    https://blog.stackademic.com/are-software-developers-aging-out-heres-the-shocking-truth-and-what-it-means-for-the-future-db5c8ad79c31

    It’s 2034, and the tech world is in full swing. AI is building cities, automation is transforming industries, and apps run just about everything.

    But there’s a glaring problem — the people who keep this digital empire running are disappearing.

    Developers are aging out of the workforce, and companies are scrambling to keep their systems alive.

    This isn’t a sci-fi movie plot; it’s a ticking time bomb.

    Reply

Leave a Comment

Your email address will not be published. Required fields are marked *

*

*