ElectricSQL, HyperDX, idempotency explained, XML over YAML, the myth of the myth of learning styles & more

You are viewing issue #63 of the Changelog News(letter). Pop in your in your inbox every Monday.

Changelog News

Loop worthy developer news

Jerod here! 👋

It was amazing meeting so many old/new listeners at Strange Loop last week! Next up we’ll be at All Things Open in October followed by KubeCon in early November. Let’s connect!

Ok, let’s get into the news. (Audio Edition)

⚡️ElectricSQL is a local-first software platform

ElectricSQL is a project that offers a local-first sync layer for web and mobile apps. If local-first is new to you, here’s a primer:

Local-first is a new development paradigm where your app code talks directly to an embedded local database and data syncs in the background via active-active database replication.

Built with Elixir, ElectricSQL is drop-in compatible with your existing data model, migrations tooling, web framework and component library… the only requirement is Postgres.

Check it out if your app needs instant reactivity, realtime multi-user interactions, and/or conflict-free offline sync.

🐉 The myth of the myth of learning styles

Ned Batchelder was chastised (my word not his) for advising folks to “learn how you learn” on his blog. That’s because the long-believed theory of “learning styles” has been scientifically debunked for awhile now, but it’s still common to believe there are visual learners, auditory learners & kinesthetic learners. But Ned wasn’t talking about that at all!

When I said “learn how you learn,” I meant for learners to take an active role in choosing what their path should be… There are many effective ways to learn how to program, and you have to choose your way.

In the linked post, Ned goes on to ask a bunch of great questions you should ask yourself to help decide “how you learn.” This is important, because we are spoiled for choice when it comes to software development learning resources and the paradox of choice is very real

🔝 XML is better than YAML. Hear me out…

A fancified excerpt of Carl M. Johnson’s unpopular opinion on Go Time #289.

XML is better than YAML: the video

💪 Tailscale for VS Code just got a major upgrade

Thanks to Tailscale for sponsoring Changelog News 💰

“Machine Explorer” unlocks the ability to explore, edit, and transfer the files on any of the nodes in your tailnet (that you can reach through SSH) directly in VS Code!

For the millions of developers who use VS Code regularly, this new extension brings all of your remote files into a familiar and powerful editing environment. That helps you get stuff done with your code without worrying about using an ancient version of nano on some remote server or getting the syntax of scp commands just right.

Check out their blog post introducing this awesome feature to learn how to install it and watch a video showing how the new extension works.

👨‍🏫 Every programmer should know: Idempotency

Berkan Sasmaz:

In the world of programming, there are many concepts that every developer should understand in order to build efficient and reliable systems. One such vital concept is idempotency, which refers to the property of an operation or function that produces the same result when applied multiple times as it does when applied only once

Berkan does a great job breaking down why this concept is important for us all to understand and why it has significant implications for building distributed systems.

He uses four of the most common HTTP methods (GET, PUT, POST, DELETE) and explains which ones are idempotent and which ones are not. Do you know?

🔎 HyperDX is an open source observability platform

HyperDX is like Datadog or New Relic, only open source and developer friendly.

HyperDX helps engineers figure out why production is broken faster by centralizing and correlating logs, metrics, traces, exceptions and session replays in one place.

The HyperDX stack ingests, stores, and searches/graphs your telemetry data. After standing up the Docker Compose stack, you’ll want to instrument your app to send data over to HyperDX.

It speaks OpenTelemetry, which means it probably works with whatever you’re working with. This project is open core, so most features are self-hostable and available under an MIT license. They offer a cloud hosted version and a few additional features that are not open source. Comparison here.

🏃 Quick updates about ongoing stories

🤗 The KDL Document Language

Daniel Buckmaster, after reading Carl Johnson’s XML over YAML opinion, pointed us to KDL, which is a document language with xml-like semantics that looks like you’re invoking a bunch of CLI commands.

It’s meant to be used both as a serialization format and a configuration language, much like JSON, YAML, or XML.

Looks pretty nice! And if you’re looking for comparisons of KDL to all of the usual suspects, each one is addressed in the FAQ.

🐘 Postgres can manage your queueing needs

Many people avoid Postgres for background jobs and queue systems because it doesn’t scale, but…

As an industry, we’ve become absolutely obsessed with “scale”. Seemingly at the expense of all else, like simplicity, ease of maintenance, and reducing developer cognitive load. We all want to believe that we’re building the next thing that will demand Google, Facebook, or Uber scale, but the fact is, we’re almost always – not. Our technology decisions should reflect that fact.

Let’s face it: you are (probably) not Google/Amazon/LinkedIn and if you’re already using Postgres as your datastore… Adriano Caloiaro makes a pretty solid case for using it as “queue tech” too.

🗺️ OpenStreetMap learns a new map style

The “Tracestrack Topo map” has many improvements: more tag support (busway, embankment, cuisine, solar plants, aquaculture, pitch, sea, tree etc.), CJK fonts, etc.

The new OSM map style

Related: Valhalla is an open source routing engine + libraries for use with OSM

🎧 ICYMI: Recent good pods from us

Open source is at a crossroads – Adam and I are joined by Steve O’Grady, Principal Analyst & Co-founder at RedMonk. Our topic: the definition of open source, the constant pressure on the true definition of the term, and the seemingly small but vocal minority that aim to protect that definition.

Web dev security school – Amal and Chris are joined by Ron Perris, a Security Engineer at Reddit and software security enthusiast. Together, they dive into best practices and common pitfalls, covering topics from dangerous URLs to JSON injection attacks. Tune in for an educational conversation, and don’t forget to bring your notebooks!

Automate all the UIs! – Dominik Klotz from askui joins Daniel and Chris to discuss the automation of UI, and how AI empowers them to automate any use case on any operating system. Along the way, the trio explore various approaches and the integration of generative AI, large language models, and computer vision.

That’s the news for now, but our epic Strange Loop episode will drop on Wednesday and we’re experimenting with our very first game show for Changelog & Friends on Friday!

Have a great week, tell your friends about Changelog News if you dig it, and I’ll talk to you again real soon. 💚