@lstrojny@phpc.social Short-term pessimist, long-term optimist.

Munich, Bavaria
Joined March 2007
Broken window for software engineering: notices become warnings, warnings become errors, errors become outages, outages become bankruptcies. – at Munich, Germany
6
16
Lars Strojny retweeted
LLMs are a great amplifier of the developer using them if you have taste, they let you scale your taste across your codebase faster if you're clueless, they let you scale your cluelessness across your codebase faster too
28
13
5
129
7,480
Lars Strojny retweeted
Hey #PHP, Casual Saturday morning ... 0.03 seconds on bare metal with avx2, 0.05 (if the timer can be believed) in your browser with wasm simd ... krakjoe.github.io/ort/ "The Solution" tab is where you run code ... #php #ai
7
14
1,340
Lars Strojny retweeted
> our implementation was not developed by Mozilla employees, but was contributed entirely by a single volunteer, André Bargull. Temporal is an absolutely massive spec and complicated implementation - it's been YEARS in the making. André out here just beating out billion dollar corps
ITS HAPPENING Firefox 127 shipped today making it the first browser to support Temporal - the new API for working with Dates, times, timezones + durations
23
147
10
2,142
201,311
Lars Strojny retweeted
I was talking with my friend @nealriley about how much fun I’m having with LLMs lately, including the project I've written about before to interpret screenshots of podcasts and YouTube videos. I made the observation that working with LLMs seems to boil down to a pattern of creating ETL pipelines, over and over again. He quickly corrected me, suggesting, "Don't you mean ELT pipelines?" I laughed at his curious and unexpected comment, which seemed unusually pedantic. However, I found myself thinking about his comment for days afterward. It reminded me of a quip from Rich Hickey, inventor of the Clojure programming language: "Information is simple. The only thing you can do with information is ruin it." In my experience, what Rich said is so true, and shows that Neal was absolutely correct. What I meant to say is "ELT," not "ETL." In other words, you should Extract, Load/Store, and then Transform data, in that order (ELT). Unless you love misery, you should not Transform before you Load/Store (ETL). Over the last many decades, I've ruined data in so many many ways, for me, the “T” in “ETL” stands for tarnish, trash, taint, etc. I’ve accidentally converted date-time strings incorrectly (turning them all into nils), I’ve discarded data fields that I thought were irrelevant, but years later, I wish I had kept them because it is priceless information, impossible to reconstruct. I’ve accidentally overwritten data, deleted data, and so many more terrible things, Thankfully, I've wiped those episodes from my memory, lest I start kicking myself again. This is because I was Transforming the data (or Trashing it) before storing it. One of the things I've learned from the Clojure and cloud community is the value of just storing data in its original form, often in storage buckets, deferring any transformation of the data to afterward, often at runtime (i.e., Extract, Load/Store, then Transform). I almost made this mistake last week: I mentioned how I use @revai and @deepgram and to create podcast audio transcripts. At first, I converted the audio transcripts to match the format used by the python-transcript-api program. That way, I could use the same code to render the transcript, regardless of what the transcript source was. This is when I once again learned that the only thing I could do to the data is to ruin it. So instead, I saved the entirety of the transcript in its original format, including the full API return payload. That way, I’m preserving optionality, enabling myself to use that data in new ways in the future. By discarding the data, I destroy that optionality. Today, I saw one such potential option: I realized that transcript diarization could be helpful (this is when transcripts detect when there are multiple speakers talking, and ideally labels them). The YouTube-transcription-api doesn’t support speaker labels, and I would have discarded that data to match it. My lessons: - Store your data in as close to its original form - Defer data transformation to after you load/store it
3
10
1
41
10,167
Last January, I noticed something peculiar in my 2yo’s bedroom that - after a year of obsessive reporting - led me to a profound cosmic revelation about what’s even possible in our universe. A 🧵.
1,314
24,937
6,796
134,368
17,551,700
ssh has secrets. Too many to share in one tweet. One of which is how it acts as a serial-line processor for secret keyboard functionality you probably never knew about. For example, why, when you press ENTER and then ~ immediately after, does the ~ not appear right away? Thread…
45
657
77
3,913
561,421
If you are handling unicode user input you are likely doing it half wrong without realizing it until it’s pretty costly to fix. Congrats, you earned yourself a data migration project. This is what uffff solves, a PHP library to filter unicode user input uffff.readthedocs.io/en/late…
1
208
So there's a great Thai restaurant in my neighborhood called Kiin. Yesterday, I searched for their website to order some takeout. Here's the Google result.
827
7,159
2,146
57,448
12,348,387
It's wintertime, which means Scotland's beautifully named salt trucks are out and about
44
1,203
186
3,448
Just because you can doesn’t mean you should
.@nabijaczleweli’s tzpfms to unlock ZFS from TPM(2) (git.sr.ht/~nabijaczleweli/tz…) provides a really lovely user experience. Well integrated with both initramfs-tools and dracut, integrates well with zfs-mount-generator for systemd. So happy I stumbled upon it.
1
After a good long break I am ready to get back into the saddle and I am looking for my next role. While I have a few ongoing conversations, hints are very welcome. I am looking for either high impact people management roles or deeply technical IC roles. Remote is a requirement.
1
7
1
16
Twitter’s new moderation policy: you may not harass other people on the basis of class
2
You are not strengthening your criticism of Musk with reference to it being bad business. If basic human decency turns out to be less profitable, that’s not an argument against decency.
2
3
Vox populi, vox Rindvieh
2
Unter dem Vorwand der „Terrorabwehr“ greift der Nato-Partner Türkei direkt nach dem G20-Gipfel kurdische Gebiete an, mit Kobane – einer Stadt, die wie keine andere für den Kampf gegen den islamischen Staat steht – als einem der Hauptziele. Wo bleibt der Aufschrei?
1
58
1
262
Lars Strojny retweeted
Wrote a blog on why AWS never dove seriously into blockchain. Features groovy pix from a trip to New York, which is part of the story: tbray.org/ongoing/When/202x/…
14
66
16
171
Margaret Hamilton preparing for her code review by the incoming POTUS
1
11