1,951 tweets, and 4,020 including replies.
- Red Dead Redemption 2 is breathtaking. Acting, writing, and polish all A++.But is there a point where a game pulls in too much real life? This one was a few design calls from having me brush Arthur’s teeth before bed, trim toenails weekly, and do 45 min/day on the elliptical.
- Getting a patch reviewed on the Postgres hackers mailing list floors me every time — just at the next level in terms of attention to detail, effort invested, and thoughtfulness. I'm 10+ years into working in software professionally and I've never seen anything else like it.
- RT @PostgreSQL: Sorting is an essential feature of databases, but can also be a bottleneck. How does @PostgreSQL help to make sorts fast? @…
- Finally published something in 2019 —SortSupport is a really neat optimization in Postgres that makes sorting fast even for data types that are large or arbitrarily-sized. Here we take a look at the details.
- And alternatively, from the journal of C horrors:Wasted literally 45 minutes debugging because unlike any sane language, the bitwise `&` operator has lower precedence than comparisons like `==` (so guess what happens when you evaluate `a & b == 1`). Fuuuu.
- Working on my first Postgres patch since 2017.With more dangerous pointer casts than lines of code, C is terrifying, but there's also satisfaction working so close to the metal. Before this, I hadn't had to think about how values look in binary or endianness since university.
- “World of Tomorrow” (short film) is the craziest, weirdest, most original thing I've seen in a long time.Also comes with uncomfortable levels of insight: “That is the thing about the present, Emily Prime. You only appreciate it when it is the past.”https://en.wikipedia.org/wiki/World_of_Tomorrow_(f… https://t.co/hr4OVEJbQe
- Unfortunately, I ran into a problem yesterday that required reinstalling Rust —Fortunately, ripping out and reinstalling the entire toolchain including nightly, rustfmt, and clippy took < 5 min (there's even `rustup self uninstall`). If only all software were so well behaved!
- “All Along the Watchtower” is one of the best songs ever written, and Bear McCreary's composition for Battlestar Galactica is the best variant of it.Pause for a moment. Turn up the volume (not generally, but for some temporary extra detail). Listen.https://www.youtube.com/watch?v=BigolJfoANw
- I love the faded look and character of these old fitness installations around the track in Golden Gate Park (remember how cool wooden playgrounds were when they still existed?).Did the vault bar and push ups. https://t.co/rKSIeUcgRg
- Even having read about them a hundred times before, I still need to refresh my memory on the different SQL JOINs once a year or so (doing application development, `INNER JOIN` isn’t just the common case — it rules supreme).Here’s a novel take on them:https://blog.jooq.org/2016/07/05/say-no-to-venn-di…
- This is a great micro-demonstration as to why the idea of iOS becoming a general purpose OS for productivity is such beautiful dark comedy.iOS is designed to be inflexible, unconfigurable, and unyielding. Over time it will be corrected minutely, but can't fundamentally change.
- How to add a home screen link in iOS with an arbitrary URL, involving activating airplane mode to trick iOS into giving you the link you want.(Normally, Safari chooses a URL for you even if you're at the exact location you want.)
- The only accomplishments I can claim for the last couple weeks are inhaling ~45,000 Calories worth of excessively rich food and reading 300+ chapters of Naruto.I can't think of a better time to set some more ambitious goals for 2019.
- To this day, one of my favorite pieces of independent software is still Plex —Built by a small shop, but more refined, flexible, reliable, and beautiful than competing products from ~trillion dollar companies, despite having a much broader problem to solve.
- Lovely writing on the beauty of rain (and why some of us like it so much).“Rain is the natural element for romanticism. A dripping fir is a thousand times more sexy than a sunburnt palm, and more primal and contemplative, too.”https://twitter.com/starsandrobots/status/10739683…
- Hah, genius :)We most often talk about what features a programming language has, but just as important are what features it *doesn't* have. It is possible to write good C++, but the odds are way against you.https://twitter.com/timur_audio/status/10040173623…
- Just checked, and I'm a few months away from having owned Air Pods for two years.Given the nature of the hardware (wireless, tiny batteries), I'm **astonished** at how reliable and durable they've been over that lifespan. Quite possibly the best product Apple's ever shipped.
- A few shots from SF's botanical garden in Golden Gate Park.Contains, amongst other things, the most peaceful redwood grove within city limits. (And it's always free with proof of a local address). https://t.co/ybZK5Dqw5g
- This account from an ex-Oracle engineer on what it's like to work on Oracle is tooth-gnashingly painful.Fast unit tests and a suite that runs in minutes locally (or less!) is productivity manifest. Making CI the dev feedback loop embraces the opposite.https://news.ycombinator.com/item?id=18442941
- Context: http://blog.flickr.net/en/2018/11/01/changing-flic…And to be clear, this is a smart move — their Yahoo-era free tier was too generous and unsustainable.The weakness of the new system (for them, maybe good for the web) is that there's now no price disadvantage to self-host and stay independent.
- I retooled sorg to decouple from Flickr yesterday. I like the service, but not enough to justify a pro account.The new implementation is a YAML file + Dropbox. Good for fewer moving parts, but still a little sad — Flickr must have been my oldest still-in-use internet service.
- RT @simonw: As @brandur points out in this excellent article, a big benefit of Redis Streams is it lets you use Kafka-style primitives with…
- A nice update in where Rust is at today with async/await in nightly, including how to get backwards compatibility with “old” futures.My favourite part is how new futures return just a single type so you can use `Result` and all its furnishings like `?`.
- The coming decades will show that trusting the free market to do the right thing with respect to housing is one of our civilization's greatest errors.The wealthy maximize ROI (and housing is a great asset). Land owners maximize rent (and that's AirBnB).https://www.theguardian.com/cities/2018/nov/29/emp…
- (Self Edge is the snootiest of snooty denim shops, and one of a handful of best-in-the-world boutiques that happen to be in San Francisco. Worth stopping by for interest's sake, and also by far the best place in town to hem jeans.)
- At a sale from Self Edge bought Pure Blue Japan, known for their raw denim's "slubby" texture (thick, uneven weave).Unsanforized (sanforized = treated to minimize shrinking) and not prewashed, they're expected to shrink on 1st soak. These shrunk ~2 sizes and from baggy to slim. https://t.co/I0XC28v2Ft
- Rewatched Oblivion (2013): Amazing narrative structure that reveals little pieces throughout, and you don't have the whole picture until the final few minutes. Epic soundtrack too.Its only mistake in not being considered a sci-fi classic was that it wasn't made in the 80s. https://t.co/PWO2hacwXm
- Great notes on HTTP/3 aka QUIC: I'd feel tepid on the idea of throwing away such a well-proven protocol as TCP, but am comforted that QUIC is probably what TCP would've looked like if its inventors had the benefit of seeing 30+ years of practical use.https://blog.erratasec.com/2018/11/some-notes-abou…
- Perspective out of loss: If one good thing comes out of weeks of living under a hellish cloud of smoke and ask — when (if?) it clears, it'll be a long time before any of us in California take clean air for granted again.Surreal how much of 2018 has been defined by forest fires.
- Jaw dropped reading this piece on Ruby fibers — EventMachine and its "fork the ecosystem" model all over again, 10 years later.https://news.ycombinator.com/item?id=18484087For a more pragmatic solution, consider using a language that cares enough about concurrency/performance to make it standard.
- Something nice to say about Hugo though: live reload is *amazing*.By the time I've ⌘-Tab'ed back to my browser, the page is already re-rendered there without even a ⌘-R necessary. It's beautiful.
- A better compromise might be an API that provides low and high-level primitives for building a static site, and it's up to the user to tie them together into a mini-program.Like compiled over interpreted, it'd be harder to learn, but more reliable once you finish learning.
- Trying to leave my realm of custom software by moving content to Hugo —It's been surprisingly painful. Hugo's core is Go, but all user-space coding is done via markup/tags, so that nice compile-time checking vanishes. When you do something wrong, it's rarely obvious what it is.
- Regardless of the complexity/cost added by an abstraction to guarantee distributed consistency, it will still be strictly less than that of the messy (and wrong) alternative to compensate for its absence at the application layer.(Or, duct tape is more expensive than you think.)
- Dropbox on scaling transactions between shards using a two-phase commit. Like Google, they've concluded correctly that the answer to scaling consistency isn't to throw it out, but rather to build a substrate to make it possible, even if it's difficult.https://blogs.dropbox.com/tech/2018/11/cross-shard…
- Maybe I'm romanticizing the past, but I swear to remember a time when A/V was easy.These days (since 4k?) buying new technology is step 0. The next week is guessing at problems by reading underinformed arcana online, non-deterministically troubleshooting, and upgrading cables.
- Of minor interest: implementing a stateless form of CSRF protection to allow a cross-site submission using the `Origin` header.(Maybe noteworthy if you've never heard of a forbidden header before.)https://brandur.org/fragments/origin
- Cautiously optimistic for this tiny book format.I like paper better, but read ~entirely digitally these days for usability: size, portability, one-handed use. For 10+ years now, US paperbacks have been optimizing shape for the most exotic/awkward.
- Porto, which as it turns out, as the city on the outlet of the Duro River, legitimately exports as much port as the name suggests.The number in the upper right on the sign on the huge barrel in the last photo is the holding capacity. 32,275 litres (with the largest being ~50k). https://t.co/VOUEVEsvOz
- I wish I had some photos of my own that were even half this cool, but those are hard to beat.Relatedly though, I’ve been charmed by Portugal’s population of feral cats. Here’s one sunning himself in the alleys of Coimbra. https://t.co/SrdWPActtX
- Some photos of a pair of bobcats shot by my dad in the neighborhood where I grew up. Just incredible.Naturally, in the first shot he slowly walked up to the bobcat until he was at ~3m distance. As you do, (in Canada). https://t.co/LEkwVn7rSJ
- Lisbon, (dark mode). https://t.co/9LbtMLVNvy
- And a bloat-related insight:With Postgres' current MVCC design, the cost of old data is borne by ALL transactions, while a Zheap UNDO model pushes expense to old snapshots, having the effect of optimizing for current data. Very exciting for production.https://github.com/EnterpriseDB/zheap
- Great talk. TIL the Postgres B-tree will try to avoid a page split by opportunistically vacuuming an index page of dead tuples. Normally visibility lives only in the heap, but an exception is made for tuples unreachable from *any* possible transaction.https://twitter.com/petervgeoghegan/status/1038502…
- On the incompleteness of C:Postgres is a database, but also a runtime (fully custom memory management infrastructure), a standard library (custom string builder, linked list, hash map, sorting, ...), and even language (custom longjmp-based try/catch/raise mechanisms).
- Happy to report that Lisbon looks and feels exactly like you’d expect Lisbon to look and feel. Fascinating architecture, lots of colour, and steep hills. https://t.co/0JN287VxGm
- (Pun intended.)
- In 2018, Make's error if you accidentally prefixed a command with four spaces instead of a tab is `*** missing separator. Stop.`, presumably because user hostility is a core design tenet.Stop romanticizing Make/old Unix commands/shell scripts, and help make them die.
- RT @postgresql: Why is it important to manage client connections to your @PostgreSQL database? @brandur explains the effects of many connec…
- Hitting connection limits in Postgres is a common problem to have (and a surprising one when you first run into it).This piece covers a few ways to make efficient use of available connections through techniques like pools and minimum viable checkouts.https://brandur.org/postgres-connections
- RT @sdw: One of the best photo collections I've seen in years of an overland trip traversing the old Silk Road. Suddenly very eager to visi…
- In case you missed it: modern coupon sites are mostly fake deals. They do it because when you click a link, they redirect you to your target in a background tab and install a referral cookie.Never even consider using one outside of an incognito window.https://blog.usejournal.com/how-one-affiliate-used…
- After the Banksy news last week I rewatched "Exit Through the Gift Shop".Today, it's still not clear if it was a documentary or mockumentary, or who Banksy is.In 2018, especially with the ubiquity of the WWW, this rare under-information is weirdly frustrating and tantalizing.
- Upgraded to Mojave.Apple knocked it out of the park with dark mode — just beautiful, and being integrated into all the default apps makes it real this time (as opposed to the idea's long history of hacks). The double night and day default wallpapers are such a nice touch too.
- Between SB 827, CA net neutrality, public transport and street safety funding, extended parental leave, and even 4AM last call, there's rarely been a politician in history with Scott Wiener's track record for good taste.(And he's right on this one too.)https://twitter.com/Scott_Wiener/status/1048279837…
- Great take on the excellence of Go's concurrency model (and my sentiments exactly).Green threads might not be as fast as a perfectly implemented async model, and they need a runtime, but they're still the right compromise between speed and usability.https://eli.thegreenplace.net/2018/go-hits-the-con…
- I have never been so afraid for GitHub in my life.More integrations is generally good, but Jira is the exception. When software is this irredeemably bad, don't integrate with it, replace it. Remember GitHub Projects? Good idea. Now finish the other 50%.https://blog.github.com/2018-10-04-announcing-the-…
- An interesting post on using LLVM-based JIT compilation coming in Postgres 11.Editorial: In practice Postgres w/ JIT + partitioning may outperform traditional data warehouses for those willing to keep data size in check. Hope to one day ditch Redshift.https://pganalyze.com/blog/postgres11-jit-compilat…
- A profile on the creator of Stardew Valley, who built the game solo — gameplay, art, story, music.Staggering dedication, and a reminder of what's possible without organizational overhead. This guy ships more than entire departments of some companies.
- A little Canadian colour. (And snow in September?!) https://t.co/ethNRbrtSC
- `dbg!`, a tiny upcoming shortcut in Rust to print a value to stderr and through the power of macros, the line and expression that emitted it.I love this kind of language nicety. It'll save ten seconds at a time, and thousands of hours in aggregate.https://github.com/rust-lang/rfcs/blob/master/text…
- Every thread like this one it reminds me how much pent up demand for pedestrian-friendly urban environments there is out there. And yet, we've failed to produce even one in all of North America.Our urban planners should be replaced. We need new blood.https://news.ycombinator.com/item?id=18014283
- A correction from my piece on fast column defaults in Postgres is that `now()` is *not* volatile. When used with `DEFAULT` existing rows pick up that tx's `now()`, new rows get a current `now()` as they're added, and it's all fast. I'm even more amazed.https://brandur.org/postgres-default
- Mongo satirizes Mongo better than its critics ever could!There are two paths in data architecture: use a relational database, or build a pale shadow of one in your app layer as you desperately try to shore up data integrity on your non-relational store.https://twitter.com/MongoDB/status/103919165427467…
- My grandmother didn't want an internet connection because she was afraid that with textual communication possible, people wouldn't call anymore.It seems silly on the surface, but she was absolutely right. In the age of text we speak with more people, but at lower fidelity.
- “What kept me from doing that was a calm voice in my head telling me that I’m here to write a book, not a preprocessor. ... Now I have written two books and zero tools, which I consider a success.”Amen. The Achilles heel of the developer/author.https://twitter.com/thorstenball/status/1037010592…
- I'm following Mojave and trying out a dark mode landing page.Light text on black rendered poorly on screens for decades, which was frustrating because it looks *incredible* in print. Retina has since improved things a lot, even if I still wouldn't push it for long text pieces. https://t.co/BSfpNIVzwo
- One data pack and a few days of experimentation later, I blew it away and moved the files to S3. It may add an extra build step, but it's cheaper and much less opaque.
- Had an interesting couple of days with Git LFS (Large File Storage).GitHub's integration with it is impressive, but the subtleties around its magic ended up causing a lot of trouble by the end. I also burnt through GitHub's meager/not-well-advertised data quota in < 1h of use.
- (Anyway, I incorporated these new techniques into a very light rebuild of my photos page, which still isn't amazing, but now provides a slightly more cineramic perspective.)https://brandur.org/photos
- Another example: the "srcset" attribute for responsive images. Back in my day, you needed Retina.js to do this, and you were damn happy to have it.
- Every thread like this one it reminds me how much pent up demand for pedestrian-friendly urban environments there is out there. And yet, we've failed to produce even one in all of North America.
- I wish I had some photos of my own that were even half this cool, but those are hard to beat.
- To this day, one of my favorite pieces of independent software is still Plex —
- Working on my first Postgres patch since 2017.