1,970 tweets, and 4,075 including replies.
- Having walked by it for years, I’ve always wondered about this tiny dive shop in the center of SOMA a stone’s throw from HQ of half the major tech startups of the last decade.Finally did a course there last night, and although compact and aged in very SF ways, it’s a delight. https://t.co/CPeWitJZBC
- As a user, I can't overstate how much of a game changer Sorbet by @darkdimius and co. is — you get totally, wonderfully, can't-ever-go-back captivated by it after just a few hours of use. The extra type annotations cost a little, and return *a lot*.https://sorbet.org/
- Some exciting progress for Stripe client libraries: stripe-java v9 now has typed parameter classes for API inputs, and they're code-generated for accuracy.This is something the team's been wanting to do this for *years*. More info and migration guide: https://github.com/stripe/stripe-java/wiki/Migrati… https://t.co/TgtVdTu2Za
- This map of Berlin's transit is beautiful pragmatism: https://berlintransitmap.de/Speaking as a somewhat colour-impaired person, the old/current map (2nd image) has always been borderline unintelligible because of heavy reliance on adjacent colours. https://t.co/etECeq6CAR
- Some of the first crocuses starting to flower in the foothills of Alberta.So soon after the end of winter the province is a monochrome landscape of lifeless brown, and these little splashes of colour are a delight. https://t.co/xapPkgtxfH
- Maintaining good status pages is an important discipline.The update to http://isairpoweroutyet.com was expedient, accurate, and definitive. https://t.co/lYzcuimOwU
- It'll be really interesting to find out how their concurrency/sandboxing model works out.It's *so* good to see innovation on that front. The traditional serverless model of "1 request = 1 container" is grossly inefficient. Memory use and startup times are important.
- Fastly's recent open sourcing of Lucet prompted me to go back and read about Terrarium, WASM-based computing on the edge.So much positive signal even from just the initial list of supported languages: Rust, C, TypeScript. Someone there has good taste :)https://www.fastly.com/blog/edge-programming-rust-… https://t.co/PODU9QXhmn
- RT @pganalyze: "Atomicity states that for a series of operations performed against a database, either every one of them commits together, o…
- China is destroying the west in terms of made up tech/startup lingo. You need to get to book three of the trilogy to even understand this reference.https://logicmag.io/07-the-chinese-burner/ https://t.co/gV16e85jqW
- The National Geographic article about Tokyo that's been heavily featured in the screenshots of the launch of Apple News+. Includes an amazing map that gives you a feel for the proportions and relative density of the city and its metropolitan area.https://www.nationalgeographic.com/magazine/2019/0… https://t.co/Du7mraoPCF
- For more complex aggregate operators like `$lookup` (a lackluster left outer join), Mongo's official docs actually use SQL examples to illustrate what they do because it's so much more clear than their own pseudo-query language.Why are we supposed to be using this thing again? https://t.co/AyeaaugxMa
- Reading Wiki's “Difficulties of plot summary” on Finnegan's Wake is great:It's one of the best known classics and Joyce gave interviews after publication, but still, not even the most pre-eminent literary critics have a clue what happened in this book.https://en.wikipedia.org/wiki/Finnegans_Wake#Diffi…
- At Stripe we switched to a GUI-driven deploy process for services.I'm a die-hard terminal person for life, but it's so much better. Especially during the duress of an incident, there's nothing like being able to click boxes to resolution instead of looking up obscure CLI flags.
- Sending away to China to get new hardware modded into an old ThinkPad is the most practical part of old hacker culture that we have left.(And looking forward to experiencing this myself when the 2022 MacBook refresh brings in an all-Touch Bar keyboard.)https://geoff.greer.fm/2019/03/04/thinkpad-x210/
- Tried out the ACME/Let's Encrypt `autocert` package for Go, and it's astonishing.One line of code in your app and CA valid HTTPS just works. No magic load balancers, no Nginx. We should hope that the future of all server-side programming is this simple.https://godoc.org/golang.org/x/crypto/acme/autocer…
- Finished “Bad Blood” on Theranos/Holmes. Knew the story was extraordinary from the few WSJ articles I'd seen, but the details are even more crazy/grisly/disgusting.Excellent writing, and better than fiction. Worth hoisting to the top of your read list.https://en.wikipedia.org/wiki/Bad_Blood:_Secrets_a…
- Kakoune is probably the Dvorak of Vim-like text editors, but it's inspiring to see people trying to make human/computer interactions more efficient instead of less. (i.e. Through more slow JS, more apps based on web browsers, inefficient touch UIs, etc.)
- Haven't been a huge fan of the term "fearless concurrency", but I'm warming up to it. It's been a while since I included "pthread.h", but it's worth remembering that the crudity of its primitives mean that programs fail by default, rather than vice versa.https://sites.google.com/a/athaydes.com/renato-ath…
- 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.
- 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.
- Red Dead Redemption 2 is breathtaking. Acting, writing, and polish all A++.
- It'll be really interesting to find out how their concurrency/sandboxing model works out.
- As a user, I can't overstate how much of a game changer Sorbet by @darkdimius and co. is — you get totally, wonderfully, can't-ever-go-back captivated by it after just a few hours of use. The extra type annotations cost a little, and return *a lot*.