Sign in

Ryan Alban

@dreamofpsy.bsky.social
92 followers 548 following 539 posts

gamedev, tabletop/video games, sailing, miniatures, long walks on the beach

PostsRepliesMedia
Ryan Alban @dreamofpsy.bsky.social · 21m
(But what if the language user wants to write their own abstract algorithms, though...)
000
Ryan Alban @dreamofpsy.bsky.social · 24m
Presumably making map/transform a built-in/special function would also mean the debugger could deal with it sensibly somehow, which is another potential problem and one reason I often hear for avoiding the use of lambdas with the standard algorithms (or in general) in C++
100
Ryan Alban @dreamofpsy.bsky.social · 8h
Link-time code generation could maybe do it, too, but not everyone uses that (probably because in larger codebases the added link time cost is atrocious) and I wouldn't depend on it being a thing.
110
Ryan Alban @dreamofpsy.bsky.social · 8h
This isn't the greatest example. The compiler can only inline square() like that because it's is in the same translation unit as map(), which would not be the case the majority of the time. This is one reason why std::transform needs to be a function template, and one way C++ can be faster than C.
110
Ryan Alban @dreamofpsy.bsky.social · 19h
I (somewhat facetiously) thought the "vision" of Go was that you could take a fresh CS grad and get them writing web services with lots of concurrency, and they would actually be fairly productive with it
000
Ryan Alban @dreamofpsy.bsky.social · 03/10/2026
Sometimes I also get into local maxima where I'm partway to a particular goal, but I polished the incomplete intermediate thing too much and now actual progress would make it worse, so I don't want to change it anymore
001
Ryan Alban @dreamofpsy.bsky.social · 03/10/2026
In order to make it exist first, I have to hold not just both the current draft and final draft in my head at the same time, but an imagined and possibly very long roadmap that gets from current to final, which is hard
100
Ryan Alban @dreamofpsy.bsky.social · 03/10/2026
realizing that my problem with the "make it exist first, then good later" advice has always been that I don't see the first, shitty version of a thing as being the same "thing" as the final, polished version, so it feels like I'm not actually making any progress and I'm getting distracted
100
Ryan Alban @dreamofpsy.bsky.social · 30/09/2026
I feel like I almost never see graphics programmers here. There were loads of them on Twitter; did they stay there? Where did they all go?
000
Reposted by Ryan Alban
Cat Manning @catacalypto.bsky.social · 24/03/2026
Ellis @ellis_ellis_ell
ipads have no soul but desktop computer is like a nervous horse and has the capacity for love

ozempic gandolfini @IdahoBones 
I don't think you should give kids phones or iPads but you should give them free access to a desktop computer
3776602151
Ryan Alban @dreamofpsy.bsky.social · 29/09/2026
I typically start with "I work in video games," then if they ask for more detail I say what franchises I've worked on that they might have heard of, THEN move on to "I do the programming part" or "I write the code that deals with <stuff>"
011
Ryan Alban @dreamofpsy.bsky.social · 26/09/2026
How am I supposed to appreciate the environmental storytelling if I have to focus on pressing the right button combination every 800ms to continue existing in that environment?
000
Ryan Alban @dreamofpsy.bsky.social · 26/09/2026
At least give me a proper warmup in the form of increasingly harder enemies and atmosphere as I get closer, and a chance of defeating the thing without dying repeatedly just to memorize different attack patterns through multiple phases on each life, that never even come up again in the game!
100
Ryan Alban @dreamofpsy.bsky.social · 26/09/2026
I have this problem with Dark Souls, too. I like the walking through creepy broken environments with hollows everywhere that I can defeat with caution and cleverness. I don't want to suddenly go from that to "kick a giant thing in the balls repeatedly until it falls over while obnoxious music plays"
100
Ryan Alban @dreamofpsy.bsky.social · 26/09/2026
but... I'm on Waterblight Ganon and I just spent a bunch of time solving a giant cool spatial puzzle in some neat atmosphere that I was enjoying. The ramp up in intensity and sudden need to perform combat skills that were nowhere near top of mind is too jarring for me to be anything but frustrating
100
Ryan Alban @dreamofpsy.bsky.social · 26/09/2026
Playing through Breath of the Wild for the first time is reminding me of how annoying and frustrating and IMO unnecessary most boss fights are. It'd be one thing if (like in earlier Zelda games) the boss fight was the last climactic fight after a sequence of fights that teach me how to beat it,
100
Ryan Alban @dreamofpsy.bsky.social · 24/09/2026
Depending on what you mean by "indexing through memory", and whether uint8_t is a typedef of unsigned char, that person may not even be correct due to type accessibility rules en.cppreference.com/cpp/language...
en.cppreference.com
reinterpret_cast conversion - cppreference.com
100
Ryan Alban @dreamofpsy.bsky.social · 23/09/2026
I just thought it was interesting and worth noting that the meaning of that phrase has shifted away from the original, to the point where going against today's meaning can result in alignment with that original meaning
020
Ryan Alban @dreamofpsy.bsky.social · 23/09/2026
I am aware bsky.app/profile/drea...
100
Ryan Alban @dreamofpsy.bsky.social · 23/09/2026
(and how much less money a AAA studio needs to spend on graphics programmers to make something visually competitive with Nanite...)
030
Ryan Alban @dreamofpsy.bsky.social · 23/09/2026
That does not contradict what I am saying
120
Ryan Alban @dreamofpsy.bsky.social · 23/09/2026
I'm not surprised it would get conflated nowadays with "default to using somebody else's engine" given how hard the industry pivoted to that (even AAA devs are all going to Unreal now), and how much time and effort has gone into the big engines and is saved by using them in many cases
140
Ryan Alban @dreamofpsy.bsky.social · 23/09/2026
It was, I was on GDNet when it was coined and "I have to make my own engine first" was a common belief among new hobbyist developers. That mindset produces engine and graphics programmers, and I don't think many of the ones who went that path actually shipped anything. "Just use Unity" came later
170
Ryan Alban @dreamofpsy.bsky.social · 23/09/2026
If people are taking it to mean "just use somebody else's engine that already exists" then they misunderstood what Josh Petrie wrote, or maybe never even read the article where that phrase came from (which was written in 2007! BEFORE everyone used middleware as reflex)
geometrian.com
Write Games, Not Engines
Blog of Agatha Mallett: This is a mirroring of "Write Games, Not Engines" by Josh Petrie.
040
Ryan Alban @dreamofpsy.bsky.social · 23/09/2026
It actually sounds to me like you're following the original intent of "build games not engines." The point wasn't "don't write your own tools", it was "don't think you have to write a generic Unity clone with every possible feature before you can actually work on your game."
390
Ryan Alban @dreamofpsy.bsky.social · 21/09/2026
what is C? baby it's UB it's UB all day...
000
Ryan Alban @dreamofpsy.bsky.social · 19/09/2026
Did they see the FlyBrainGPT joke and decide to turn it into a real, physical product
011
Reposted by Ryan Alban
✪ Beware the Gray Ghost ✪ @jongraywb.blacksky.app · 13/09/2026
I hate how i gotta check shit with a fine toothed comb to make sure that seemingly harmless shit isnt AI
16536101
Reposted by Ryan Alban
Helen Czerski @helenczerski.bsky.social · 10/09/2026
As both an academic and a writer, I am repelled by the "this looks like a long document. Would you like me to summarize it for you?" that seems to appear at the top of every pdf viewer now. NO. The *entire point* of good writing (either books or journal papers) is that every sentence has a purpose.
1354044792
Ryan Alban @dreamofpsy.bsky.social · 08/09/2026
They might be "most games" if we count mobile games
000
Reposted by Ryan Alban
Chet Faliszek @chetsucks.com · 03/09/2026
Reading gaming news on my phone My phone heats up I accidentally click two ads, one making me restart reading the article Once I open an ad clicking on X The article itself reloads two times I think there is a middle part I missed because of an ad that moved as I scrolled I gave up Good job!
1518911
Reposted by Ryan Alban
Victoria De Capua @victoriadecapua.com · 30/08/2026
I think what pisses me off most about the artificial force to update devices is that it's locking off apps and software I've used for twenty years and claiming I now require better hardware for them.
44757107
Reposted by Ryan Alban
Freya Holmér @freya.bsky.social · 28/08/2026
this wave of AI has legitimately killed a huge part of what I loved about seeing stuff online, what I loved about being an educator, and what I loved about sharing my own work I just don't feel like doing it anymore
431995278
Ryan Alban @dreamofpsy.bsky.social · 26/08/2026
It'll have to explain to everyone what a monad is first
000
Reposted by Ryan Alban
𝙃𝙤𝙢𝙞𝙠𝙖 💫 @vanitys-emptiness.bsky.social · 23/08/2026
On another note, I’ve grown pretty annoyed when folks think since modders can fix bugs that means developers are incompetent. There’s a pretty huge difference between being able to dedicate time to fixing one thing versus being mandated for tasks and fixing things without breaking the entire game.
1224817
Ryan Alban @dreamofpsy.bsky.social · 15/08/2026
It's the fries going into it rather than it going on top of them, but - soft-serve ice cream
000
Ryan Alban @dreamofpsy.bsky.social · 10/08/2026
But I think Dave's point was, none of those things have to do with memory saving, unless you're working in an interpreted language? Is that the case?
130
Ryan Alban @dreamofpsy.bsky.social · 09/08/2026
Genuine question, what makes writing commit documentation painful for you?
020
Reposted by Ryan Alban
Oops! All Paperclips @all-paperclips.bsky.social · 27/07/2026
Coding will always be hard because you have to know what you want the computer to do.
414818
Ryan Alban @dreamofpsy.bsky.social · 19/07/2026
This reminds me of the crosswalks I encountered in Redmond years ago, which sounded like oddly quiet machine guns. At the time I thought it was hilariously on-brand for a city in the US
010
Ryan Alban @dreamofpsy.bsky.social · 18/07/2026
I've seen two BSKY posts in the last *five minutes* that thought the imagery coming in from the actual people living there who were evacuating were AI-generated or not real in some other way
010
Ryan Alban @dreamofpsy.bsky.social · 18/07/2026
It pisses me off how many people seem to think this is fake. Like it's one thing to not understand how huge swathes of Canada are forest and how when you have ONE heat dome (never mind several), it dries everything out and the whole place becomes super flammable, but to DENY it as it's happening?
110
Reposted by Ryan Alban
Jack Saint @lackingsaint.bsky.social · 17/07/2026
No fuck off we're not calling this "Millennial grey" this shit was dictated completely by boomer retiree house flippers we absolutely had NO say in this
Millennial grey

From Wikipedia, the free encyclopedia
A kitchen with beige grey floors, drab walls, brushed steel appliances, and grey granite countertops.
Grey floors and furnishings are said to appeal to Millennial tastes.
Millennial grey refers to a desaturated colour scheme that is said to appeal to the interior design sensibilities of the Millennial Generation in the early 21st century.[1] Cultural historian Kassia St. Clair attributed its widespread adoption to a desire among Millennials for "a flexible, sensible choice that will last years, hide any stains, and can be adapted to different schemes."[1] Some have diagnosed Millennial grey as a reaction to the warm hues of the late 20th century.[2]

Millennial grey is polarising, particularly when used with imitation-wood-texture sheet vinyl flooring, which many describe as depressing, soulless, or corporate.[3][4] Although attributed to Millennials, the grey colour scheme is often chosen by house flippers, vacation rental owners, or other people who do not actually live in the greyed properties.[3] Thus, the occupant of the property—Millennial or not—has little say in its colour scheme, particularly when deployed for fixtures such as flooring.[4] The greying may have been driven, in part, by a desire to prepare properties for sale in a manner thought to be least offensive to the average buyer.[5] Given the housing crises gripping many countries in the early to mid-21st century, buyers and renters may feel they have no choice but to accept a property decked in Millennial grey.[4]

To the extent that Millennial grey is said to be enjoyed by Millennials, it is also said to be loathed by Generation Z.[1][2]
36594552070
Reposted by Ryan Alban
Max! @littlepolygon.bsky.social · 11/07/2026
Difference between 'writing code for my game' vs. 'writing code for a library' is cutting-corners with assert(). E.g. my state machine plumbing doesn't need to handle pathological inputs designed to break it; I just assert() those thorny edge-cases don't exist, because they don't.
1102
Ryan Alban @dreamofpsy.bsky.social · 10/07/2026
The visualization tools help you get to a place where you have a mental model of the problem and what the solution should be, which *sometimes* is adding a null check in a very specific place
000
Ryan Alban @dreamofpsy.bsky.social · 10/07/2026
You cannot actually be sure that you fixed a bug unless you understand what was causing it. No, "this pointer was null" is NOT the cause; that is a symptom, please stop adding random null checks everywhere and actually think about what you are doing
120
Ryan Alban @dreamofpsy.bsky.social · 09/07/2026
Only if they changed the whole timeline, since in the books she's dead before the worm man becomes the worm man. Which may actually be likely since she's kind of a different character in the books too...
020
Ryan Alban @dreamofpsy.bsky.social · 08/07/2026
If code can't be copyrighted, then why do proprietary game coding style guides tend to insist that we put "Copyright <company name>, All Rights Reserved" at the top of every source file?
210
Ryan Alban @dreamofpsy.bsky.social · 08/07/2026
How do you remember where you left off when you finish some yak shaving? I don't use JIRA or anything at home (the kind of thing which genuinely IS a real help), so I'm literally thinking of having a "yak_shaving.txt" on my desktop with a tree of subtasks that I'm currently working on 😅
000
Ryan Alban @dreamofpsy.bsky.social · 08/07/2026
I don't think that game could have gotten away with blitting the game state to disk to save. IIRC AOE2's saves were binary, though, and it took some attention to detail not to break them. Nothing insurmountable for someone with discipline, though.
000