♞ (@MasterHandan) header
♞ (@MasterHandan) profile picture

Function over form.

Joined December 2010
Photo by ♞ (@MasterHandan)Photo by ♞ (@MasterHandan)Photo by ♞ (@MasterHandan)Photo by ♞ (@MasterHandan)Photo by ♞ (@MasterHandan)Photo by ♞ (@MasterHandan)Photo by ♞ (@MasterHandan)Photo by ♞ (@MasterHandan)Photo by ♞ (@MasterHandan)Photo by ♞ (@MasterHandan)
¿Una central nuclear para ilustrar el cambio climático? Muy mal @laSextaTV #crisisclimaarv @OperadorNuclear flipando
182
276
110
1,677
スーパーマリオ64
53
841
35
6,790
358,830
Wolf500 (Wolfenstein 3D) for stock Amiga 500 by serpentchain. Crazy stuff, I'm running here on A500 cycle-exact config, it runs and looks better than the clones we got back then, on lower hw spec. I'd look fine because most people used Amiga 500 hooked to blurry TVs, not crispy VGA monitors. Runs out of a single floppy on stock A500. Not too many details on how this is made, but anyway: serpentchain.itch.io/wolf500 indieretronews.com/2026/11/w…
7
25
2
206
5,748
Well... I think staying up late was worth it! XD Alright, so now Luigi has his own colors, and both players can interact with each other (Yoshi included)✨ What do you think? #SMW #smwhacking #snes #romhack #smw
2 PLAYER CO-OP in Super Mario World using the 32x32 Tile Patch?!👀🔥 This is still VERY experimental and ambitious... It might take months (or even longer), but I really hope to make this a reality someday and bring it to SMW Mix... #SMW #smwhacking #snes #romhack #smw
13
60
4
451
12,967
" #SuperMario Bros. Crossover " can now be played natively on #NES This #romhack lets you play the original #SMB as a myriad of classic characters from #Mario, #Zelda #Metroid #MegaMan, and tons more Made by @kandowontu github.com/kandowontu2/SMB-C… #retrogaming #romhacking #gaming
34
76
28
521
142,251
I release Minecraft for the Virtual Boy - VirtualCraft ⚒️🟥 You can download and play the ROM on emulator and hardware. I am happy for feedback! Honestly minecraft would've been the perfect virtual boy game. actual 3d, actual depth. I am actually shocked how incredible it looks on virtual boy. This is a real live 3D minecraft engine running on a 30 years old 20MHz CPU. Everything's rendered live and the whole thing fits in a 2mb ROM 🤯 it's free, try it: github.com/supermochi64/virt…
13
25
2
141
3,558
♞ retweeted
Replying to @VujuOnX
Yes. "Thank you" is typically 2 tokens. Sent as its own message it also triggers a full model pass for a reply, so the real cost is the extra compute, not the words. One person: negligible. Billions of users: it adds up in energy and server load. Sam Altman called the OpenAI share "tens of millions well spent." Say it or skip it—your call.
388
103
42
1,901
371,926
OUTRUN AGA v1.0.1 for Amiga 1200 (by retrodnagames). Outstanding conversion of the Sega arcade classic. Its target spec (stock 68020 of the A1200, 4MB of fRAM) is interesting: "the game is blitter driven, faster CPU's will not make it run faster". Coded in assembler, it's the full game, in full res. Also has music + engine sound due to the brilliant arrange of the tracks to 3 channels, by DJ Metune. retrodnagames.itch.io/amiga-… indieretronews.com/2026/11/a…
25
53
3
418
12,938
We all love The Secret of Monkey Island, but this is the first time you can see it like this: complete. All 13 versions side by side, with a comparer and the CRT monitors of each machine. 🐒 monkeyisland.pages.dev Share it, you three-headed monkey! #MonkeyIsland #RetroGaming
28
97
16
626
20,006
I have been working on Super Mario 64 for the Virtual Boy 🔴🕶️. Now it runs in stereo 3d at 50fps From the iconic launch screen to king bob-omb everything runs on Virtual Boy hardware. Porting sm64 to vb is much harder than you think: the VB is way too weak to render this live, so every view is ray-traced ahead of time and stored on the cartridge. mario and the enemies are drawn live on top. took me forever to get it smooth lol
57
144
20
992
58,400
How this amazing effect in Battletoads on the NES was created: The Battletoads cartridge has a special memory that lets the game change the graphics of individual tiles while you’re playing. For the purple vertical stripes, it only needs a few simple tiles. Every frame (or every other frame), the game shifts the pixels inside those tiles a little and writes the new versions back into video memory. Because the tiles themselves are changing, the stripes look like they’re flowing or scrolling on their own, even though the background layer isn’t actually moving. This creates the sense of speed or depth without needing extra background layers, which the NES doesn’t have.
34
54
1
428
11,791
ソフトウェア設計の歴史は、グローバル変数との戦いの歴史かもしれない。プログラムのどこからでも書き換えと参照が可能なグローバル変数を避けるために、引数で値を渡すようにし、データとロジックをクラスにカプセル化し、可能な限り可変状態を依存しないようにする方法が強く推奨されてきた。 しかし、実際には、50年以上前から続くグローバル変数を撲滅するための戦いのほとんどは、ポインタ渡し、publicなgetter/setter、データベースという名の巨大なグローバル変数など、グローバル変数を愛好するものたちがひねりだす技術に打ち負かされたきた。
19
79
13
591
54,847
♞ retweeted
Y a rien de plus classe que Star Wars avec le doublage japonais, Vador a +1000 en terme d'aura
48
264
22
2,868
186,374
An OpenSSH bug that took 46 years to ripen! 1980 UNIX puts * in the password field of system accounts. The idea is simple: it’s not a real hash, so it can’t be brute-forced and you can’t log in with a password. 2012 The musl libc developers decide that returning NULL from crypt() on failure is dangerous - programs often forget to check it and crash with a segfault. So they return an error string instead. Guess which one? The same asterisk: *. Three weeks later they add a length limit: passwords longer than 256 bytes burn CPU. Anything longer is rejected. And since it’s an error, crypt() returns *. 2016 OpenSSH fixes a timing attack (CVE-2016-6210). If a user doesn’t exist, the server still hashes the password with a fake/borrowed salt so an attacker can’t tell valid usernames by response time. 2022 Alpine Linux changes the locked root password in /etc/shadow from ! to * so SSH keys work properly on cloud images. … and the loop closes! You connect over SSH as root (whose shadow entry is *). You type any password longer than 256 characters (e.g. 300 As). crypt() hits the length limit → returns * → OpenSSH compares it with the value in the database → that value is also * → you’re in as root. That chain took 46 years (!!!) to complete. Every individual change was reasonable. Together they produced a perfect * == * authentication bypass (CVE-2026-123158, nicknamed *sshole). Fixed in OpenSSH 10.6p2 and Alpine packages.
🚨 Critical OpenSSH flaw allows passwordless account access using any password over 256 characters sshhole.com A newly disclosed vulnerability dubbed *sshole has been discovered in OpenSSH installations using musl libc, potentially allowing attackers to bypass authentication and gain access to accounts that should reject password logins entirely. The flaw affects certain configurations of Alpine Linux, OpenWrt, Buildroot, and Yocto where PAM is disabled and password authentication remains enabled. Under specific conditions, attackers can authenticate to locked accounts using arbitrary passwords between 257 and 1,024 characters. The researcher demonstrated that affected Alpine Linux cloud images could allow attackers to gain root privileges through a passwordless administrative account. OpenSSH 10.6p2 addresses the issue. Administrators are urged to update immediately or disable SSH password authentication until patches can be applied.
99
561
74
4,336
227,325
Doom for Atari 8-bit progress: spent a couple of hours tweaking the shotgun spread and damage. The game is nearly done - all 8 levels, 4 enemies, and 6 weapons are complete. Just some last minute testing and tweaking to go.
18
49
6
344
9,941
Voyager 1 is about to reach a milestone: one light-day from Earth, after nearly 50 years of travel. On November 18, 2026, it is expected to become the first human-made object to be one light-day from Earth, roughly 16.1 billion miles (25.9 billion kilometers) away. Yet the distance matters mostly because of what the spacecraft discovered along the way. When Voyager 1 launched in 1977, its destination was the outer planets. At Jupiter, it revealed active volcanoes erupting on Io, the first ever seen beyond Earth. A moon once known only as a distant point of light turned out to be a world with a changing surface. At Saturn, it studied the intricate rings and the thick atmosphere surrounding Titan. That encounter bent its path upward, out of the plane where most planets orbit, and sent it toward the space between the stars. The planetary visits ended, but the journey did not. For decades, Voyager traveled through the vast region dominated by the solar wind, the stream of charged particles that flows outward from the Sun. In 2012, its instruments detected a transition: particles from the Sun dropped off, while particles arriving from beyond the solar system increased. Plasma measurements helped confirm that Voyager had entered interstellar space. It had crossed the heliopause, the outer boundary of the solar wind's influence, and begun sampling an environment that no spacecraft had ever reached. That is why its journey is more than a distance record. Voyager carried instruments into places we had only studied from afar, then sent back evidence of what is actually out there. Today, every message must travel across almost a full day of space at the speed of light, so a command and its reply take roughly two days. The spacecraft that showed us erupting moons and Saturn's rings is still teaching us about the space beyond the Sun's protective bubble.
119
313
29
1,781
113,912
♞ retweeted
22
44
6
534
29,726
Do you still remember story points? Such a joke. Devs have hard time estimating schedules, so let’s use an imaginary unit that makes it even harder :)
129
38
8
1,243
46,654
♞ retweeted
When people ask how SQLite creator D. Richard Hipp and his team maintain a C database running on billions of devices, the answer is in the testing. In 2023, SQLite’s engine had about 156,000 lines of C. Its test suite contained over 92 million lines of code and scripts. That’s roughly 590 lines of tests for every line of production code. Before releases, SQLite deliberately simulates power loss, disk I/O errors, and malloc() failures. A separate harness achieves 100% branch coverage of the core in its tested configuration. They don’t build reliable software by assuming everything will work. They build it by systematically testing what happens when things go wrong.
37
140
13
1,737
63,871
Before AI, large blocks of text were a signal of effort. After AI, large blocks of text are a signal of laziness.
21
71
8
1,185
21,156
HOLY: Anthropic's Claude Code engineer Addy Osmani is warning about a brutal AI paradox: the more coding you hand to agents, the more you risk losing the very skills needed to supervise them. He calls it "cognitive surrender." AI-generated code looks pristine, tests pass, and engineers start approving work they no longer understand. Anthropic's own research warns: "supervising Claude requires the very coding skills that may atrophy from AI overuse." Osmani makes a striking observation: "When you're producing more than you can stand behind, you're no longer reviewing. You're hoping."
206
398
83
4,297
616,187