I'm impressed with Chrono - I fell into the pit of success, and now my parsed dates magically know whether they should have summer time on them or not!

Writing Rust is such a trap - I start out intending to not over-golf everything, but I always get too tempted to turn all my Option and Result wrangling into one-liners :( My latest sin is

`` `
let naive = NaiveDate::parse_from_str(date, "%Y-%m-%d");
naive
.ok()
.map(|date| TimeZone::from_local_date(&Local, &date).latest())
.expect("Override date should be valid YYYY-MM-DD")
```

An underestimated advantage of automating a slightly laborious task (eg cleaning up a small amount of data) is that if you later realise something should've been a little different (e.g. data needed a bit of processing on the original), it'll be much easier to apply again, which can be the difference between living with the error or instantly being able to fix it

pretty sure this isn't how you're "supposed to" do it

i have learnt just enough svg to curse myself with wanting to golf all my svgs from now on

Great read about one guy's journey in circumventing DRM for innocent purposes lars.ingebrigtsen.no/2019/02/1

pretty neat: Scroll is a funding model for websites where users pay a monthly subscription fee to remove ads and directly support content
And they're doing a thing with firefox
blog.mozilla.org/blog/2020/03/

Tanuj boosted
Tanuj boosted

first experiment on the axidraw: glove vectors from words in _Alice in Wonderland_, plotted radially (basically the same code as this static.decontextualize.com/vec)

Tanuj boosted

Lad reverse engineers a newfangled web game (krunker) and finds wasm and rust:
jakob.space/blog/browser-games

Show more
Mastodon

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!