Amazon is building a smart hone ecosystem that's easy to integrate and has a much simpler out-of-the-box experience:

It's funny how competing tools get created around similar times. Both git and mercurial were created in 2005!

Bayou is a tool that can automatically generate Java code from a 'sketch' of the desired types and methods to use!

This uses a neural net trained on a corpus of existing Java code.

The article also includes this interesting graph of file format popularity.

Looks like CSV is growing, even though it's hardly a new format! I'd speculate that the growth of machine learning has driven this.

It's striking how the 'yellow screen of death' is sometimes cited as a fatal flaw in XML (particularly XHTML) but JSON parsers are often strict in what they accept too.

Good read on the early history of JSON, and how it became the ubiquitous format it is today:

Today I learnt that Emacs has a notion of 'permanent' variables!

These are variables that persist even when you change major mode (which generally resets buffer-local variables).

If you download an Emacs source tarball, it comes with .elc files so you don't need to byte compile anything.

This enables you to compile the remaining (much smaller) C parts quickly: I've seen installs take under a minute!

Fascinating discussion of whether it's safe to read past the end of a buffer if you stay on the same page:

(A technique used in some high performance assembly code!)

Chronological is hard though. If Alice retweets something on Monday and Bob retweets the same thing on Tuesday, should I see it in my feed twice?

It still feels rather weird when my Twitter feed shows me things that others have liked. We've come a long way from chronological: likes and retweets are probably just inputs into some machine learning algorithm.

Great interview with the Twitter CEO on goals, tradeoffs, and some interesting discussion of emergent behaviour after allowing users to make long display names.

Command line tools offer increasingly complex query languages as CLI arguments (e.g. git, hg, journalctl). These help, but they're not orthogonal.

Other tools let you override the output format (e.g. docker) or just use structured text (verbose, but allows use of e.g. jq).

Pipes were simple enough that they won:

It's a pretty limited API though, and I wonder what an incremental improvement in power would look like.

The latest version of Rust can automatically fix lockfiles that have merge conflicts in them:

This is often possible with machine generated files, but it's rare to see in practice. Super convenient though.

Interesting article on attracting millennials to working with mainframes:

(Has some links to OSS mainframe projects that I had no ideas existed!)

Show more

Follow friends and discover new ones. Publish anything you want: links, pictures, text, video. This server is run by the main developers of the Mastodon project. Everyone is welcome as long as you follow our code of conduct!