Help! None of my projects want to be SPAs

There’s a lot of wisdom in this post alongside some opinions that I find myself nodding along with: My strategy for dealing with the absurd pace of change in web development has been as follows: ignore 99% of it and see if it goes away. While we cover (and talk about) new technologies on a daily basis here at Changelog, that doesn’t mean we adopt everything that hits our radar. Given the hype cycle, it works pretty well. Mongo isn’t exciting anymore, Angular 1 is dead, CoffeeScript is obsolete, I haven’t heard a word about Meteor since it launched… These are all specific technologies. But what about the Single Page App pattern in general? Back in the early days of SPAs, some people argued that it would be faster to only pass the data you need as JSON than to render whole pages. Nearly a decade later, this is almost never true. He goes on to explain how he’s building a side project SPA-style and all the repercussions of that decision. Really insightful stuff here, please do click through and read for yourself.

read more

Craig Kerstiens

SQL: one of the most valuable skills

Craig Kerstiens: I’ve learned a lot of skills over the course of my career, but no technical skill more useful than SQL. SQL stands out to me as the most valuable skill for a few reasons: It is valuable across different roles and disciplines Learning it once doesn’t really require re-learning You seem like a superhero. You seem extra powerful when you know it because of the amount of people that aren’t fluent I tend to agree. I still use (and sometimes love) ORMs and database libraries while building apps, but the more I’ve learned SQL over the years, the more I appreciate it for what it is. Craig drills into each of his 3 points above in this excellent post.

read more

Drew Devault

Generics aren’t ready for Go

Have you ever seen someone write something to the effect of “I would use Go, but I need generics”? Perhaps we can infer from this that many of the people who are pining after generics in Go are not, in fact, Go users. The inertia of “what I’m used to” comes to a violent stop when they try to use Go. People affected by this frustration interpret it as a problem with Go, that Go is missing some crucial feature - such as generics. But this lack of features is itself a feature, not a bug.

read more

Max Stoiber

Why I write CSS in JavaScript

You might be on the fence with CSS-in-JS — especially after hearing from Rich Harris about Svelte on The Changelog #332. Max Stoiber writing on his personal blog with his take on the matter: Primarily, CSS-in-JS boosts my confidence. I can add, change and delete CSS without any unexpected consequences. My changes to the styling of a component will not affect anything else. If I delete a component, I delete its CSS too. No more append-only stylesheets!

read more


Inlets – expose your local endpoints to the internet

inlets combines a reverse proxy and websocket tunnels to expose your internal and development endpoints to the public Internet via an exit-node. An exit-node may be a 5-10 USD VPS or any other computer with an IPv4 IP address. You may be wondering why this project needs to exist, since many like it have come before. The author addresses that right up front: Similar tools such as ngrok or Argo Tunnel from Cloudflare are closed-source, have limits built-in, can work out expensive and have limited support for arm/arm64. Ngrok is also often banned by corporate firewall policies meaning it can be unusable. Other open-source tunnel tools are designed to only set up a static tunnel. inlets aims to dynamically bind and discover your local services to DNS entries with automated TLS certificates to a public IP address over its websocket tunnel.

read more

GitPrime Icon GitPrime – Sponsored

Scaling engineering teams from 5 to 500 and beyond

Every high-growth engineering organization eventually needs to tackle the challenges around restructuring teams, maintaining a productive culture, building resilient systems, and adjusting engineering processes. This free webinar from our friends at GitPrime will include discussions around: How to organize engineering teams for innovation and velocity at scale Lessons learned and best practices for developing effective engineering processes Strategies for building and maintaining a healthy culture that drives focus and motivation Attend on February 28th to hear from panelists at WeWork, Box, and Pivotal on critical lessons learned and best practices for keeping teams aligned and productive at scale. Panelists: Randy Shoup (VPE at WeWork), Cornelia Davis (Sr. Director of Technology at Pivotal), Saminda Wijegunawardena (VPE at Box)

read more

logged by @logbot permalink


Raster – a minimal and straight-forward CSS grid system

This is notable/different because it uses descriptive HTML rather than semantic CSS classes: <grid columns=8> <c></c> <c span=3>3</c> <c></c> <c span=7-8>7-8</c> <c span=2+2>2+2</c> <c span=5-8>5-8</c> <c span=1-4>1-4</c> <c span=6..>6..</c> <c span=2..>2..</c> <c span=4..>4..</c> <c span=1-2>1-2</c> <c span=4-5>4-5</c> </grid>

read more

Daniel Oberhaus

The complicated economy of open source software

Daniel Oberhaus, writing for Vice Motherboard: Heartbleed wasn’t an isolated example of developer burnout and lack of funding, but an outgrowth of a systemic disease that had been festering in the open source software community for years. Identifying the symptoms and causes of this disease was the easy part; finding a cure is more difficult. It’s not enough to just throw more money at the open source community, however. Increased funding creates its own problems in terms of how that money is distributed and what the organizations supplying the funding demand in return. If you’re wondering how we got here in open source, this report is an excellent read on the subject.

read more

Jason Etcovitch

Probot app or GitHub Action?

Well, it depends. But the good news is Jason Etcovitch (Engineer at GitHub) examines the pros and cons of each and where they fit. He even shared a comparison table to help determine which to choose. Should your next automation tool be built in GitHub Actions or as a separate service with Probot? Since GitHub announced the beta release of GitHub Actions in October 2018, there’s been a new excitement around building automation - and that’s awesome! But I wanted to take a look at the various pros and cons of GitHub Actions and Probot, where each excels and where each might not be the best tool for the job. Click through and scroll to the bottom of the post if all you care about is the comparison.

read more

AI (Artificial Intelligence)

A response to OpenAI's new dangerous text generator

Those of you following AI related things on Twitter have probably been overwhelmed with commentary about OpenAI’s new GPT-2 language model, which is “Too Dangerous to Make Public” (according to Wired’s interpretation of OpenAI’s statements). Is this discussion frustrating or confusing for you? Well, Ryan Lowe from McGill University has published a nice response article. He discusses the model and results in general, but also gives some perspective on the ethical implication and where the AI community should go from here. According to Lowe: “The machine learning community really, really needs to start talking openly about our standards for ethical research release”

read more


A Linux distro built specifically for Kubernetes

Talos touts: Security: reduce your attack surface by practicing the Principle of Least Privilege (PoLP) and enforcing mutual TLS (mTLS). Predictability: remove needless variables and reduce unknown factors from your environment using immutable infrastructure. Evolvability: simplify and increase your ability to easily accommodate future changes to your architecture. Hit up the README if you’re curious about the name, why there’s no shell/ssh access, or how it’s different than CoreOS/RancherOS/Linuxkit

read more

Sam Soffes

Sam Soffes and his static Jekyll blog

Sam Soffes Jekyll’s a little differently. This iteration is built on top of Jekyll, a static site generator written in Ruby. Since I write my posts differently than Jekyll expects, I had to write several plugins to make things work correctly. You might wonder why I don’t just write my posts the way Jekyll wants instead of doing all of this work. I want to keep the details of my blogging engine separate from my content. I’d love to hear from you about your blogging stack in the discussion below. Like Sam, I’m also using Jekyll hosted on Netlify, but I’m new to his plugins.

read more

Chris Garret

Coming soon in Ember Octane

If you’ve been paying attention in Ember lately you may have heard the term “Octane” floating around here and there recently, and wondered what all the excitement was about. It may seem like a bit of a big deal - and that’s because it kind of is! Part 1 in a 5-part series covering: native classes, angle bracket syntax & named arguments, tracked properties, modifiers, and Glimmer components. Part 2 is out as well.

read more

0:00 / 0:00