How to Quickly Warm Up Your MacBook
Article URL: https://z3ugma.github.io/2019/11/18/warm-up-your-macbook/
Comments URL: https://news.ycombinator.com/item?id=48300342
Points: 8
# Comments: 2 â Read more
YouTube to automatically label AI-generated videos
Article URL: https://variety.com/2026/digital/news/youtube-ai-video-labels-automatic-detection-1236758865/
Comments URL: https://news.ycombinator.com/item?id=48299753
Points: 11
# Comments: 2 â Read more
@bender@twtxt.net Oh, no. Thatâs my baby. đ It was built in 1989 and I probably had it since the early 1990ies (it came with an IBM PS/2 Model 30 that they handed out to employees, IIRC).
Last.fm is now independent
Article URL: https://support.last.fm/t/last-fm-is-now-independent/118591
Comments URL: https://news.ycombinator.com/item?id=48295892
Points: 39
# Comments: 2 â Read more
Stripe is friendly to âfriendly fraudâ
Article URL: https://www.gingerlime.com/2026/stripe-seem-friendly-to-friendly-fraud/
Comments URL: https://news.ycombinator.com/item?id=48287982
Points: 15
# Comments: 2 â Read more
Cloudflare Flagship
Article URL: https://developers.cloudflare.com/flagship/
Comments URL: https://news.ycombinator.com/item?id=48287468
Points: 9
# Comments: 2 â Read more
Stop Advertising in Your Commits
Article URL: https://akselmo.dev/posts/stop-advertising-in-your-commits/
Comments URL: https://news.ycombinator.com/item?id=48283914
Points: 27
# Comments: 2 â Read more
Launch HN: Minicor (YC P26) â Windows desktop automations at scale
Hey weâre Faiz and Saheed and we built Minicor so AI companies who need to integrate to desktop systems with no API can quickly build scalable desktop RPAs. Demo: https://www.youtube.com/watch?v=MD0GHZIJ1cw
We were working on non-RPA integrations when a customer promised to sign a deal in 2 days if we could unblock a sale of theirs that involved integrating with a clinicâs Windows based medical record system. We didnât know it at ⊠â Read more
Nearly half (44%) of every T-shirt goes to waste before you even buy it
Article URL: https://norwegianscitechnews.com/2026/05/nearly-half-of-every-t-shirt-goes-to-waste-before-you-even-buy-it/
Comments URL: https://news.ycombinator.com/item?id=48278832
Points: 7
# Comments: 2 â Read more
Browser-based file encryption tool using WebCrypto
Article URL: https://secvant.com/
Comments URL: https://news.ycombinator.com/item?id=48274018
Points: 5
# Comments: 2 â Read more
Japanâs New Hypersonic Engine Could Make 2-Hour Flights to the US a Reality
Article URL: https://www.bgr.com/2178211/japan-hypersonic-engine-ramjet-2-hour-flights-to-us/
Comments URL: https://news.ycombinator.com/item?id=48270812
Points: 9
# Comments: 1 â Read more
Memorial Day Tech Deals: Sony, Apple, Anker, and More
Lots of our most-recommended headphones, power banks, and other gadgets are on sale for Memorial Day. â Read more
Best Memorial Day Mattress Deals: Helix, Saatva (2026)
Itâs one of the best times of the year to buy a mattress, and deals on our favorite models end tonight. â Read more
Netherlands Seizes 800 Servers, Arrests 2 for Aiding Cyberattacks
Article URL: https://krebsonsecurity.com/2026/05/netherlands-seizes-800-servers-arrests-2-for-aiding-cyberattacks/
Comments URL: https://news.ycombinator.com/item?id=48266906
Points: 4
# Comments: 0 â Read more
Best Memorial Day Deals: Garmin, Birdfy, Branch (2026)
Memorial Day isnât until Monday, but sales on our favorite gear are going on all weekend. â Read more
FreeBSD Foundation Executive Director Tries Daily Driving FreeBSD on Laptop
Article URL: https://www.phoronix.com/news/FreeBSD-On-Laptop-Driver
Comments URL: https://news.ycombinator.com/item?id=48258736
Points: 6
# Comments: 2 â Read more
âAI washingâ: firms are scrambling to rebrand themselves as tech-focused
Article URL: https://www.theguardian.com/technology/2026/may/24/ai-washing-pr-firms-scrambling-rebrand
Comments URL: https://news.ycombinator.com/item?id=48257980
Points: 15
# Comments: 2 â Read more
Microsoft open-sources âthe earliest DOS source code discovered to dateâ
https://opensource.microsoft.com/blog/2026/04/28/continuing-âŠ
Comments URL: https://news.ycombinator.com/item?id=48253386
Points: 4
# Comments: 2 â Read more
JWT is a scam and your app doesnât need it
Article URL: https://www.dusanmalusev.dev/blog/jwt-is-a-scam-and-your-app-doesnt-need-it
Comments URL: https://news.ycombinator.com/item?id=48249553
Points: 33
# Comments: 2 â Read more
Oura says it gets government demands for user data. Will it share how many?
Article URL: https://this.weekinsecurity.com/oura-says-it-gets-government-demands-for-user-data-will-it-share-how-many/
Comments URL: https://news.ycombinator.com/item?id=48247876
Points: 16
# Comments: 2 â Read more
Samsung chip workers will get an average $340k bonus as AI profits soar
Article URL: https://qz.com/samsung-chip-workers-bonus-ai-profits-052126
Comments URL: https://news.ycombinator.com/item?id=48230892
Points: 18
# Comments: 2 â Read more
Get your passwords out of Bitwarden while you still can
Article URL: https://www.osnews.com/story/145029/get-your-passwords-out-of-bitwarden-while-you-still-can/
Comments URL: https://news.ycombinator.com/item?id=48223258
Points: 13
# Comments: 2 â Read more
SpaceX Is Spending $2.8 Billion to Buy Gas Turbines for Its AI Data Centers
The investment comes as Muskâs AI unit faces complaints about the carbon-emitting units and looks to become a big player in cloud computing. â Read more
NordVPN Coupons and Deals: 77% Off in May 2026
Save up to 77% on 2-year plans and get 3 free months with our NordVPN discount codes. â Read more
Best Buy Discount Codes: Up to 60% Off
Find the latest Best Buy promo codes and offers, including 10% back in rewards for new cardmembers and free 2-day shipping with My Best Buy Plus, here at WIRED. â Read more
Centris 2 Folding Ebike Review: Compact, Sturdy, Budget-Friendly
The budget-friendly Centris 2 ebike can fit the back seat of a car and has narrow handlebars for miles of easy ridingâuntil it needs a recharge, that is. â Read more
Loop Earplugs Discount Codes: 40% Off
Save on Loop Earplugs, including Quiet 2 and popular gift sets for improved sleep, focus, and comfort. â Read more
xAI Adds 19 New Gas Turbines Despite Ongoing Lawsuit
Emails show that Elon Muskâs company is expanding its use of portable gas-fired power at its Colossus 2 site as a fight over air quality continues. â Read more
In todayâs episode of âeverything goes to shit because we want it toâ: https://about.gitlab.com/blog/gitlab-act-2/
The supply of deep technical problems is multiplying, and the engineers who can solve them will be among the scarcest and most valuable talent in the market.
And yet:
Weâre reevaluating our operational footprint, and are planning to reduce the number of countries by up to 30% where we have small teams.
50% Off Blue Apron Promo Codes | May 2026
Browse chef-curated meal plans, plus get $25 off with an exclusive Blue Apron coupon code, plus 50% off your first 2 orders, and more top coupons on WIRED. â Read more
Mexico City Is Sinking. A Powerful NASA Satellite Just Exposed How Fast
A new NASA map shows how the sinking of Mexico City is uneven, with areas registering up to 2 centimeters per month. â Read more
ReMarkable Paper Pure Tablet Review: Back to Basics
After six years, the ReMarkable 2 gets a replacement in the form of the ReMarkable Paper Pure. â Read more
The Italian Dubbing of âThe Devil Wears Prada 2â Has Stirred Up a Surprising Controversy
The voice actors from the original film have returned for the sequelâand not everyone is happy about it. â Read more
Loop Earplugs Discount Codes: 40% Off
Save on Loop Earplugs, including Quiet 2 and popular gift sets for improved sleep, focus, and comfort. â Read more
Asus Zenbook A16 (2026) Review: Savor the Power, Ignore the Beige
This $2,000 Asus laptop delivers breathtaking performance thanks to Qualcommâs Snapdragon X2 Elite Extreme, but at the cost of nearly everything else. â Read more
Skullcandy Discount Code: 30% Off | May 2026
Save on todayâs top Skullcandy Promo Codes for Crusher Evo headphones, 36% off Crusher ANC 2 noise-canceling headphones, and more with amazing deals. â Read more
NordVPN Coupons and Deals: 77% Off in May 2026
Save up to 77% on 2-year plans and get 3 free months with our NordVPN discount codes. â Read more
7.0.3: stable
Version:7.0.3 (stable)Released:2026-04-30Source:linux-7.0.3.tar.xzPGP Signature:linux-7.0.3.tar.signPatch:full ( incremental)ChangeLog:ChangeLog-7.0.3 â Read more
Adidasâ Lightest Shoes Ever Were Behind the First Sub-2-Hour Marathon
Weighing 97 grams with a stiff carbon-fiber plate in the sole, Adidasâ new shoes helped Sabastian Sawe beat the two-hour mark in the London Marathon, a time barrier once considered insurmountable. â Read more
Best Buy Discount Codes: Up to 60% Off
Find the latest Best Buy promo codes and offers, including 10% back in rewards for new cardmembers and free 2-day shipping with My Best Buy Plus, here at WIRED. â Read more
495 turns and about ~4hrs alter I won! đ Small map, 2-players, myself and an AI player. đ
â It took forever to beach the island the AI player was on and get enough Galleyâs and Swordsmen just to push back and eventually slowly destroy all enemy units and capture all cities! đ€Ł
Give Mom Warm Coffee Year-Long With This Ember Smart Mug Deal
If an Ember mug is at the top of Momâs wish list, this sale is worth checking out. â Read more
Just saw the video. Canât believe that ladder is that expensive. Even in AUD, it is almost $100. It is also 2.5 stars, with 13 reviews. Gulp. Engineering aside (and you are right, it is pretty interesting, and some, if not most of it went over my head), the ladder is rubbish. This is the one I have. Not super, but have been with me for a while, and used quite a bit, still as good as new.
When I fixed a coworkerâs code but lost 2 hours helping them â Read more
As an enjoyer of delightfully bad graphic design, found on most Czech village center cork boards, Iâm sad to see the stolen clipart and badly cropped watermarked stock images, gradually replaced with AI slop.
This is far from a serious rant, but generating images of my kind being telepathically hit with sharp rocks, surely gives me a right to complain.

So far these seem the most prominent slop categories, seem to beâŠ
Architecture slop:
- find a sketch of what an old building looked like

- generate an AI version, without correcting any of the perspective errors - this one is diagonally levitating

- generate a recreation of the buildings demise - after going through the AI, for the second time, it is now a completely different building

Moralizing slop:


History slop:

Disclaimer: Canât guarantee that Iâm fully awake and Iâm being trained at work not to use my brain anymore, so maybe this is complete bullshit. đȘđ§ââïž
It says here that SQLite uses signed integers:
https://sqlite.org/datatype3.html
In pure bits, 1 << 63 would be 0x8000000000000000, but as a signed value, it gets interpreted as -9223372036854775808. Subtracting 1 yields -9223372036854775809 â but that doesnât fit in 64 bits anymore. Itâs possible that SQLite doesnât want to wrap around but instead saturates? Havenât checked. đ€
With 62 bits, there is enough room.
With 1 << 64, I have no idea how SQLite wants to handle this, because this should immediately trigger a warning, because it doesnât fit right away. Maybe it gets truncated to 0?
sqlite> select printf('0x%x', 2 * (1 << 64));
ââââââââââââââââââââââââź
â printf('0x%x', 2 ... â
ââââââââââââââââââââââââĄ
â 0x0 â
â°âââââââââââââââââââââââŻ
sqlite> select printf('0x%x', 0 - 1);
ââââââââââââââââââââââââź
â printf('0x%x', 0 ... â
ââââââââââââââââââââââââĄ
â 0xffffffffffffffff â
â°âââââââââââââââââââââââŻ
sqlite> select printf('0x%x', 0 - 2);
ââââââââââââââââââââââââź
â printf('0x%x', 0 ... â
ââââââââââââââââââââââââĄ
â 0xfffffffffffffffe â
â°âââââââââââââââââââââââŻ
Major fire destroys huge toilet paper supply warehouse in California
An unexpected disaster has managed to destroy a 1.2 million-square-foot toilet roll storage facility. Eyebrows were raised along the West Coast this w⊠â Read more
ăç„ăăïŒJPCERT/CC EyesăäžçăźCSIRTăă ïœăąăŒă«ăă€ăžăŁăłïœă â Read more
When I have to write âjust in caseâ documentation for a project that will be abandoned in 2 months â Read more
When a script saves me 2 hours of work per week and I never told anyone â Read more
ăç„ăăïŒJPCERT/CC EyesăJSAC2026 éćŹăŹăăŒăïœDAY 2ïœă â Read more
When the designer uses a font with a âŹ300 web license â Read more
v2 branch and @doesnm.p.psf.lt has been incredibly helpful so far. Be great ot have a few more folks to join us, some of the v2 highlights include:
@bender@twtxt.net Here is a properly formatted version of your message:
Not yet â but thatâs probably a good idea.
Instructions:
- Clone the repository
git clone https://git.mills.io/saltyim/saltyim.git
cd saltyim
- Check out the
v2branch
git checkout v2
- Build and install the CLI/TUI
make DESTDIR=$HOME/bin install
After installation, run:
salty-chat
When the small script I started working on 2 weeks ago becomes a full-blown project â Read more
6.19.2: stable
Version:6.19.2 (stable)Released:2026-02-16Source:linux-6.19.2.tar.xzPGP Signature:linux-6.19.2.tar.signPatch:full ( incremental)ChangeLog:ChangeLog-6.19.2 â Read more
When the quick 5-minute meeting lasts 2 hours â Read more
Would you drink wine from a bottle made from seaweed instead of glass?
The federal government provides $2 million towards developing low-emissions alternatives to glass wine bottles using materials like seaweed and plant sugar. â Read more
# AteliĂȘ aberto de desenho com programação
Quintas-feiras 14:30 às 17:00 no #SescAvPaulista - 12 participantes, a partir de 16 anos. Distribuição gratuita de senhas 30 minutos antes.
Nesta atividade aberta, o pĂșblico pode interagir com cĂłdigo de maneira lĂșdica e criativa, gerando desenhos a partir da modificação de programas em Python.
A cada encontro vamos explorar diferentes temas da chamada â#programaçãoCriativaâ, estudando obras, exemplos visuais, e ideias da computação que inspiraram inĂșmeros artistas e programadores ao longo das dĂ©cadas.
Fevereiro
5 de fevereiro - Módulos geométricos
12 de fevereiro - AnimaçÔes em loop
19 de fevereiro - Imagens reticuladas
26 de fevereiro - Texturas algorĂtmicas
Março
5 de março - Recortes e colagens digitais
12 de março - ExploraçÔes combinatórias
19 de março - Malhas tridimensionais
26 de março - Tipografia experimental
Abril
2 de abril - SimulaçÔes fĂsicas
9 de abril - Plantas e fractais
16 de abril - AutĂŽmatos celulares
23 de abril - Desenhos interativos
# AteliĂȘ aberto de desenho com programação
Quintas-feiras 14:30 às 16:30 no #SescAvPaulista - 12 participantes, a partir de 16 anos. Distribuição gratuita de senhas 30 minutos antes.
Nesta atividade aberta, o pĂșblico pode interagir com cĂłdigo de maneira lĂșdica e criativa, gerando desenhos a partir da modificação de programas em Python.
A cada encontro vamos explorar diferentes temas da chamada â#programaçãoCriativaâ, estudando obras, exemplos visuais, e ideias da computação que inspiraram inĂșmeros artistas e programadores ao longo das dĂ©cadas.
Fevereiro
5 de fevereiro - Módulos geométricos
12 de fevereiro - AnimaçÔes em loop
19 de fevereiro - Imagens reticuladas
26 de fevereiro - Texturas algorĂtmicas
Março
5 de março - Recortes e colagens digitais
12 de março - ExploraçÔes combinatórias
19 de março - Malhas tridimensionais
26 de março - Tipografia experimental
Abril
2 de abril - SimulaçÔes fĂsicas
9 de abril - Plantas e fractais
16 de abril - AutĂŽmatos celulares
23 de abril - Desenhos interativos
When I restart a service and everything goes back to normal â Read more
Iâve got sore muscles. The sticky snow couldnât be pushed, it had to be laborously cleared shovel by shovel. :-D
In my lunch break, I went on a short stroll. Oh boy, walking through deep damp snow is exhausting! There were sections with easily 30 centimeters and more. Some big wind drifts had piled up. Despite melting off quickly in the 4°C, especially turning the trees brown again, the white landscape still looks so nice. Iâm glad these road marking sticks finally came in handy for the snow plow guys. :-) The black and orange stripes are 30 cm high.
https://lyse.isobeef.org/waldspaziergang-2026-01-26/
Thatâs probably it. Thereâs no significant snowfall announced for the rest of the week and temperatures are supposed to stay in the 2-4°C range by day.
@movq@www.uninformativ.de I was also extremely surprised and couldnât believe it myself. But around the hair were definitely two, three millimeters of ice with a bunch of snow on top. I couldnât simply brush it off, the hair were all frozen together. Back in the house, it took maybe three minutes to melt the solidified white stuff and free up and disconnect the individual hair. Crazy.
Yeah, 0°C in town, maybe -2°C on the summit. It definitely didnât feel all the cold, but I came prepared with a few layers of cloth.
When the client sends me their list of âjust 2 or 3 small things to fixâ â Read more
Wow, as I anticipated, this is waaay out of my capabilities to really understand it. But Iâm quite happy to just have spotted a mistake in an explanatory comment in section 4.5.2 âThe icode Arrayâ. Of course, it should be /e + tc + /i + ni + t\0. Letâs hope that my e-mail with the patch actually makes it into Briamâs inbox. I fear GMail just hides it in the spam folder.
Iâm trying to implement configurable key bindings in tt. Boy, is parsing the key names into tcell.EventKeys a horrible thing. This type consists of three information:
- maybe a predefined compound key sequence, like Ctrl+A
- maybe some modifiers, such as Shift, Ctrl, etc.
- maybe a rune if neither modifiers are present nor a predefined compound key exists
Itâs hardcoded usage results in code like this:
func (t *TreeView[T]) InputHandler() func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
return t.WrapInputHandler(func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
switch event.Key() {
case tcell.KeyUp:
t.moveUp()
case tcell.KeyDown:
t.moveDown()
case tcell.KeyHome:
t.moveTop()
case tcell.KeyEnd:
t.moveBottom()
case tcell.KeyCtrlE:
t.moveScrollOffsetDown()
case tcell.KeyCtrlY:
t.moveScrollOffsetUp()
case tcell.KeyTab, tcell.KeyBacktab:
if t.finished != nil {
t.finished(event.Key())
}
case tcell.KeyRune:
if event.Modifiers() == tcell.ModNone {
switch event.Rune() {
case 'k':
t.moveUp()
case 'j':
t.moveDown()
case 'g':
t.moveTop()
case 'G':
t.moveBottom()
}
}
}
})
}
This data structure is just awful to handle and especially initialize in my opinion. Some compound tcell.Keys are mapped to human-readable names in tcell.KeyNames. However, these names always use - to join modifiers, e.g. resulting in Ctrl-A, whereas tcell.EventKey.Name() produces +-delimited strings, e.g. Ctrl+A. Gnaarf, why this asymmetry!? O_o
I just checked k9s and theyâre extending tcell.KeyNames with their own tcell.Key definitions like crazy: https://github.com/derailed/k9s/blob/master/internal/ui/key.go Then, they convert an original tcell.EventKey to tcell.Key: https://github.com/derailed/k9s/blob/b53f3091ca2d9ab963913b0d5e59376aea3f3e51/internal/ui/app.go#L287 This must be used when actually handling keyboard input: https://github.com/derailed/k9s/blob/e55083ba271eed6fc4014674890f70c5ed6c70e0/internal/ui/tree.go#L101
This seems to be much nicer to use. However, I fear this will break eventually. And itâs more fragile in general, because itâs rather easy to forget the conversion or one can get confused whether a certain key at hand is now an original tcell.Key coming from the library or an âextendedâ one.
I will see if I can find some other programs that provide configurable tcell key bindings.
@eldersnake@we.loveprivacy.club
Steps to world domination:
- âInventâ âAIâ (by using other peopleâs data).
- Get people hyped about it and ideally hooked on it.
- Only provide it as a cloud service. But hey, if you want to, you can run it locally!
- Buy all hardware available on the market, so that nobody but you can build more systems.
- All PCs of consumers and competitors are too weak now and canât be upgraded anymore.
- Everybody depends on your cloud service! Win!
All of that is possible because corporations donât have a âconscienceâ in capitalism. Nobody forces the RAM manufacturers to sell all their stuff to just one or two buyers, but since the only goal of that manufacturer is to make money, they do it.
6.18.3: stable
Version:6.18.3 (stable)Released:2026-01-02Source:linux-6.18.3.tar.xzPGP Signature:linux-6.18.3.tar.signPatch:full ( incremental)ChangeLog:ChangeLog-6.18.3 â Read more
** December Adventure, 2025 **
At the end of my #DecemberAdventure, I re-learned what I learned last year:
that 20 minutes a day can be surprisingly productive,
that I am happiest in writing code when itâs just for me or for a small group of people I know personally.
I find stats and data tracking antithetical to the experience of feeling joy, so Iâve got no bona fide numbers about this, but this yearâs [December Adventure ⊠â Read more
@movq@www.uninformativ.de Well, just a very limited subset thereof:
- inline and multiline code blocks using single/double/triple backticks (but no code blocks with just indentation)
- markdown links using using
[text](url)
- markdown media links using

And thatâs it. No bold, italics, lists, quotes, headlines, etc.
Just like mentions, plain URLs, markdown links and markdown media URLs are highlighted and available in the URLs View. Theyâre also colored differently, similarly to code segments.
I definitely should write some documentation and provide screenshots.
@movq@www.uninformativ.de Yeah, I see. Just crudely checked on my computer, with around 0.013 seconds, Python 2.7 seems a tad faster than Python 3.14âs 0.023 seconds in this little program.
The lazy imports sound not too bad, but I just skimmed over them. There are surprisingly many exceptions, but yeah, no way around them. :-)
The tt URLs View now automatically selects the first URL that I probably are going to open. In decreasing order, the URL types are:
- markdown media URLs (images, videos, etc.)
- markdown or plaintext URLs
- subjects
- mentions
I might differentiate between mentions of subscribed and unsubscribed feeds in the future. The odds of opening a new feed over an already existing one are higher.
Whoo! I fixed one of the hardest bugs in mu (”) I think Iâve had to figure out. Took me several days in fact to figure it out. The basic problem was, println(1, 2) was bring printed as 1 2 in the bytecode VM and 1 nil when natively compiled to machine code on macOS. In the end it turned out the machine code being generated / emitted meant that the list pointers for the rest... of the variadic arguments was being slot into a register that was being clobbered by the mu_retain and mu_release calls and effectively getting freed up on first use by the RC (reference counting) garbage collector đ€Šââïž
Espanha proĂbe concursos de design especulativos sem remuneração: a externalização do risco criativo em troca da promessa de visibilidade, prestĂgio ou âoportunidades futurasâ passa a implicar atĂ© 2 anos de prisĂŁo
My little toy operating system from last year runs in 16-bit Real Mode (like DOS). Since Iâve recently figured out how to switch to 64-bit Long Mode right after BIOS boot, I now have a little program that performs this switch on my toy OS. It will load and run any x86-64 program, assuming itâs freestanding, a flat binary, and small enough (< 128 KiB code, only uses the first 2 MiB of memory).
Here Iâm running a little C program (compiled using normal GCC, no Watcom trickery):
https://movq.de/v/b27ced6dcb/los86%2D64.mp4
Next steps could include:
- Use Rust instead of C for that 64-bit program?
- Provide interrupt service routines. (At the moment, it just keeps interrupts disabled.)
@movq@www.uninformativ.de From 2:50 PM to 3:23 PM AEST (+10 UTC) there was an outage. Everything went âupâ on Down Detector, my EU region went offline, numerous sites were unavailable, and so on. Basically everything to/from the EU appeared to basically go kaput.
6.18.2: stable
Version:6.18.2 (stable)Released:2025-12-18Source:linux-6.18.2.tar.xzPGP Signature:linux-6.18.2.tar.signPatch:full ( incremental)ChangeLog:ChangeLog-6.18.2 â Read more
I rewrote all my solutions in Rust (except for day 10 part 2) and these are the runtimes on my i7-3770 from 2013 (this measures CLOCK_PROCESS_CPUTIME_ID, not wallclock):
day01/1 [ 00.000501311] Result: 1066
day01/2 [ 00.000400298] Result: 6223
day02/1 [ 00.000358848] Result: 12586854255
day02/2 [ 00.000750711] Result: 17298174201
day03/1 [ 00.000106537] Result: 17405
day03/2 [ 00.000404632] Result: 171990312704598
day04/1 [ 00.000257517] Result: 1626
day04/2 [ 00.007495342] Result: 9173
day05/1 [ 00.000237212] Result: 505
day05/2 [ 00.000142731] Result: 344423158480189
day06/1 [ 00.000229629] Result: 4076006202939
day06/2 [ 00.000279552] Result: 7903168391557
day07/1 [ 00.000204422] Result: 1622
day07/2 [ 00.000283816] Result: 10357305916520
day08/1 [ 00.029427421] Result: 84968
day08/2 [ 00.028089859] Result: 8663467782
day09/1 [ 00.000310304] Result: 4764078684
day09/2 [ 00.015512554] Result: 1652344888
day10/1 [ 00.000796663] Result: 375
day10/2 [ --.---------] Result: 15377 (Z3)
day11/1 [ 00.000416804] Result: 753
day11/2 [ 00.000660528] Result: 450854305019580
day12/1 [ 00.000336081] Result: 577
day12/2 [ 00.000000695] Result: no part 2
A little under 90 ms total.
On my Samsung NC10 netbook from 2011 with its Intel Atom N455 at 1.6 GHz:
day01/1 [ 00.003771326] Result: 1066
day01/2 [ 00.003267317] Result: 6223
day02/1 [ 00.003902698] Result: 12586854255
day02/2 [ 00.006659479] Result: 17298174201
day03/1 [ 00.000747544] Result: 17405
day03/2 [ 00.002737587] Result: 171990312704598
day04/1 [ 00.001263892] Result: 1626
day04/2 [ 00.044985301] Result: 9173
day05/1 [ 00.001696761] Result: 505
day05/2 [ 00.000978962] Result: 344423158480189
day06/1 [ 00.001387660] Result: 4076006202939
day06/2 [ 00.001734248] Result: 7903168391557
day07/1 [ 00.001295528] Result: 1622
day07/2 [ 00.001809659] Result: 10357305916520
day08/1 [ 00.277251443] Result: 84968
day08/2 [ 00.284359332] Result: 8663467782
day09/1 [ 00.003152407] Result: 4764078684
day09/2 [ 00.071123459] Result: 1652344888
day10/1 [ 00.005279527] Result: 375
day10/2 [ --.---------] Result: 15377 (Z3)
day11/1 [ 00.003273342] Result: 753
day11/2 [ 00.005139719] Result: 450854305019580
day12/1 [ 00.002857552] Result: 577
day12/2 [ 00.000004421] Result: no part 2
A little over 700 ms total.
I like this. You get performance thatâs more or less in the ballpark of C, but without the footguns.
#Processing & #py5 tip:
Remember the shapes you put on draw() will be redrawn over and over, and if they donât move (leaving a trail) you might want to either clean each frame with background(...), or stop the draw loop (noLoop() in Processing or no_loop() in py5), otherwise you kill the anti-aliasing of the lines :D
â`python
import py5
def setup():
py5.size(200, 200)
py5.stroke_weight(2)
# a line that will drawn once only
py5.line(10, 10, 190, 90)
def draw():
# you could clean the frame here with background(200)
# this other line will be redrawn many times
py5.line(10, 110, 190, 190)
def key_pressed():
py5.save('out.png')
py5.run_sketch()
â`
#Processing & #py5 tip:
Remember the shapes you put on draw() will be redrawn over and over, and if they donât move (leaving a trail) you might want to either clean each frame with background(...), or stop the draw loop (noLoop() in Processing or no_loop() in py5), otherwise you kill the anti-aliasing of the lines/strokes/edges!
Iâm posting this tip because even using these tools for years and knowing this, today I briefly thought something was odd/broken because my lines were ugly with no âsmoothingâ :D
â`python
import py5
def setup():
py5.size(200, 200)
py5.stroke_weight(2)
# a line that will drawn once only
py5.line(10, 10, 190, 90)
def draw():
# you could clean the frame here with background(200)
# this other line will be redrawn many times
py5.line(10, 110, 190, 190)
def key_pressed():
py5.save('out.png')
py5.run_sketch()
â`
@movq@www.uninformativ.de I shrank Day 9 Part 2 from âcover the whole mapâ to âonly track the interesting lines.â By compressing coordinates to just the unique x/y breakpoints, the grid got tiny. I still flood-fill and do the corner-pair checks, but now on that compact grid with weighted prefix sums for instant rectangle checks. Result: far less RAM, way less CPU, same correct answer.
Day 7 was pretty tough, I initially ended up implementing an exponential in both time and memory solution that I killed because it was eating all the resources on my Mac Studio, and this poor little machine only has 32GB of memory (I stopped it at 118GB of memory, swapping badly!), This is what I ended up doing before/after:
- Before: Time O(2^k · L), memory O(2^k), where k is the number of splitters along a reachable path and L is path length. Exponential in k.
- After: Time O(R·C) (or O(R·C + s) with s split events), memory O©, where R = rows, C = columns. Polynomial/linear in grid size.
I just completed âGift Shopâ - Day 2 - Advent of Code 2025 #AdventOfCode https://adventofcode.com/2025/day/2 â But again, Iâm solving this in my own language mu that I had to build first đ€Ł
Alright, Advent of Code is over:
https://www.uninformativ.de/blog/postings/2025-12-12/0/POSTING-en.html
Itâs been quite the time sink, especially with the DOS games on top, but it was fun. đ„ł
In case youâre wondering: All puzzles (except for part 2 of day 10) were doable in Python 1 on SuSE Linux 6.4 and ran in a finite time on the Pentium 133. Puzzle 10/2 might have been doable as well if I had better education. đ€Ł
Roman officers kept a surprising pet as a symbol of their status
2,000 years ago, if you were a high-flying Roman officer, you may have kept a rather unusual animal as a pet. Archaeologists excavating an ancient ani⊠â Read more
Day 2 was pretty tough on my old hardware. Part 1 originally took 16 minutes, then I got it down to 9 seconds â only to realize later that my solution abused some properties of my particular input. A correct solution will probably take about 30 seconds. đ«€
Part 2 took 29 minutes this morning. I wrote an optimized version but havenât tested it yet. I hope itâll be under a minute.
Python 1 feels really slow, even compared to Java 1. And these first puzzles werenât even computationally intensive. Weâll see how far Iâll make it âŠ
Prof. Bigode mandou na outra rede:
âLamento informar o falecimento do matemĂĄtico catalĂŁo Claudi Alsina (1952-2025), foi dos maiores popularizadores da MatemĂĄtica da España e do mundo. Alsina conhecido por seu humor refinado tinha uma vasta cultura, doutorou-se em MatemĂĄtica pela Universidade de Barcelona e ao longo de sua vida acadĂȘmica aproximou a MatemĂĄtica de outras ĂĄreas do conhecimento, em especial a Arquitetura e o Design, fez parte da equipe que estudou os projetos de GaudĂ para a reconstrução da Sagrada FamĂlia de Barcelona. Alsina era professor catedrĂĄtico Universidade PolitĂ©cnica da Catalunha, onde se aposentou, autor de mais de 50 livros sobre MatemĂĄtica Recreativa, Cultura MatemĂĄtica, MatemĂĄtica para o Ensino Superior e para a Formação de Professores.
Sou âbi-neto acadĂȘmicoâ de Alsina que foi orientador de meus orientadores (de doutorado) e desde que o conheci hĂĄ cerca de 30 anos tenho me inspirado em seu trabalho.
Para quem sabe do que estou falando, Alsina tinha nĂșmero de ErdĆs = 2.â
Thinking about doing Advent of Code in my own tiny language mu this year.
mu is:
- Dynamically typed
- Lexically scoped with closures
- Has a Go-like curly-brace syntax
- Built around lists, maps, and first-class functions
Key syntax:
- Functions use
fnand braces:
fn add(a, b) {
return a + b
}
- Variables use
:=for declaration and=for assignment:
x := 10
x = x + 1
- Control flow includes
if/elseandwhile:
if x > 5 {
println("big")
} else {
println("small")
}
while x < 10 {
x = x + 1
}
- Lists and maps:
nums := [1, 2, 3]
nums[1] = 42
ages := {"alice": 30, "bob": 25}
ages["bob"] = ages["bob"] + 1
Supported types:
int
bool
string
list
map
fn
nil
mu feels like a tiny little Go-ish, Python-ish language â curious to see how far I can get with it for Advent of Code this year. đ
@lyse@lyse.isobeef.org Damn. That was stupid of me. I should have posted examples using 2026-03-01 as cutoff date. đ
In my actual test suite, everything uses 2027-01-01 and then I have this, hoping that thatâs good enough. đ„Ž
def test_rollover():
d = jenny.HASHV2_CUTOFF_DATE
assert len(jenny.make_twt_hash(URL, d - timedelta(days=7), TEXT)) == 7
assert len(jenny.make_twt_hash(URL, d - timedelta(seconds=3), TEXT)) == 7
assert len(jenny.make_twt_hash(URL, d - timedelta(seconds=2), TEXT)) == 7
assert len(jenny.make_twt_hash(URL, d - timedelta(seconds=1), TEXT)) == 7
assert len(jenny.make_twt_hash(URL, d, TEXT)) == 12
assert len(jenny.make_twt_hash(URL, d + timedelta(seconds=1), TEXT)) == 12
assert len(jenny.make_twt_hash(URL, d + timedelta(seconds=2), TEXT)) == 12
assert len(jenny.make_twt_hash(URL, d + timedelta(seconds=3), TEXT)) == 12
assert len(jenny.make_twt_hash(URL, d + timedelta(days=7), TEXT)) == 12
(In other words, I donât care as long as itâs before 2027-01-01. đđ )
@aelaraji@aelaraji.com Thanks for the account! I figured out one thing at least so far, my WAF was blocking some of the AP requests. Fixed that. Anyway, holiday time đ€Ł Back in ~2 weeks.
@lyse@lyse.isobeef.org Probably wouldnât help, since almost every request comes from a different IP address. These are the hits on those weird /projects URLs since Sunday:
1 IP has 5 hits
1 IP has 4 hits
13 IPs have 3 hits
280 IPs have 2 hits
25543 IPs have 1 hit
The total number of hits has decreased now. Maybe the botnet has moved on âŠ
When I try to code something personal over the weekend and lose 2 hours configuring the environment â Read more
@lyse@lyse.isobeef.org @bender@twtxt.net Pfft, they want folks to relocate to Sydney. Fuck that đ€Ł Sydney is a bit like San Francisco, Iâm not actually sure which is worse. Fuckân expensive as hell, the only palce youâd be able to afford to buy or rent is at least ~2hrs out of the city by public transport (i.e: train) and by that time youâve just pissed your life down the toilet, because youâd be expected ot work a 9-10hr day + 2-3hrs of travel each way, buy the time you factor in having to wake up super early to get ready to travel in to work, you basically have zero time for anything else, let alone your ufamily,
Fuck that.
When I click to open a log file and then realize itâs over 2 GB â Read more
What do you do, when a recruiter throws you a PD or two and says the total compensation is ~2-3x what youâre on now?! đ€
Testing 1 2 3
Testing 1 2 3
FTR, I see one (two) issues with PyQt6, sadly:
- The PyQt6 docs appear to be mostly auto-generated from the C++ docs. And they contain many errors or broken examples (due to the auto-conversion). I found this relatively unpleasent to work with.
- (Until Python finally gets rid of the Global Interpreter Lock properly, itâs not really suited for GUI programs anyway â in my opinion. You canât offload anything to a second thread, because the whole program is still single-threaded. This would have made my fractal rendering program impossible, for example.)
Hello World! Testing 1 2 3
Testing 1 2 3 @manton@twtxt.net
For those curious, the new Twtxt <-> ActivityPub bridge Iâm building (bidirectional) simply requires three things:
- You register your Twtxt feed to the bridge: https://bridge.twtxt.net
- You verify that you in fact own/control the feed by putting the verification code somewhere on/in your feed (doesnât matter where or how)
- You proxy/forward requests for
/.well-known/webfingerto the Bridgebridge.twtxt.net.
Iâm still testing through and ironing out bugs đ Please be patient! đ