Download MP3 File
Download Ogg Vorbis File
Hosts: Shamus, Josh, Chris, Rutskarn, Mumbles.
Show notes: Continue reading 〉〉 “Diecast #95: Final Fantasy XIV, NOLF, Spore”
The annotation continues…
Link (YouTube) |
Exceptions are where you run a bit of code, but you sort of leave a note for the program, “If anything goes wrong, jump to this bit of code and spit out such-and-such message.” Here is the video Blow mentioned, which talks about why exceptions are such a mess.
My experience with exceptions is pretty limited. In my professional work, we used a large codebase that began life in 1994 as vanilla C. Somewhere around 2000-ish we migrated (in fits and starts) to C++. So I didn’t even have a chance to use exceptions until 2000, and we didn’t really have a lot of need for them. Our software was pretty mature and we already had all the error handling we needed.
Continue reading 〉〉 “A new programming language for games, Annotated: Part 3”
The annotation continues…
Link (YouTube) |
In C++, you have manual memory management. You need to request enough memory to hold all your space marines. If you need more marinesWho doesn’t? you have to allocate more memory. When you’re done with a marine, you have to tell the system you don’t need that chunk of memory anymore. You can’t ever make a mistake, because using memory you’ve freed causes a crash. Using memory you haven’t yet obtained causes a crash. Trying to free the same bit of memory more than once causes a crash. And forgetting to free memory causes a memory leak where your program will consume more and more until it crashes.
And by “crash” I mean, “It might crash or it might malfunction badly somewhere later and you’ll have NO IDEA where it all went wrong.”
Continue reading 〉〉 “A new programming language for games, Annotated: Part 2”
I think this is the last track of this project. It’s nothing special. It’s just more fun with audio samples. We recently wrapped up our play-through of Half-Life 2: Episode One, and it got me thinking about good old Dr. Breen.
I think I met my goal. I’ve sat down and re-listened to the entire Button Masher collection…
…and I find myself thinking, “Yeah, I see what I did wrong there” and “I could do this so much better now”. Of course, finding out you were recently incompetent and you’re slightly less incompetent now isn’t a massive boost to the ol’ ego. But it’s something.
I’m moving onto other projects now. I’ll probably get back to music making eventually, but now is the time to write code. Thanks for listening.
Jon Blow is the designer of Braid and one of the first of the new-wave indie auteurs. Back in September of 2014 he made a video talking about his ideas for a new computer language focused on game development.
I wanted to write about this when the video came out, but I was in the middle of a move. Then there was Christmas. Then other projects. But now almost half a year later, I’m finally coming back to this. His project has moved on and I don’t know where it is now, but it’s this first video I want to talk about.
Link (YouTube) |
That’s an hour and a half talk about why he thinks game development needs a new language, why the existing languages don’t quite cut it, and a few things he thinks the new language ought to do. It’s pretty heavy-duty in terms of technical jargon, so if you’re not a coder I don’t know if you’ll get much out of it.
I’ve seen people criticizing his suggestions saying that other languages already do what he wants, or that he’s not qualified to design a language. I’m not really qualified to comment on that and not really interested in that debate. I’m more interested in his talk as a sort of “Everything annoying, frustrating, inefficient, or scary about the C languages”.
So I want to comment on what he’s said, and I’m going to do my best to say it in language that should be comprehensible for non-programmers. We’re not so much discussing his language ideas as using them as a launching point for talking about things that make programming less fun.
Consider this a consolation that we didn’t get an annotated version Carmack QuakeCon address last year like we have in years past. Sadface.
Timestamps are approximate:
Continue reading 〉〉 “A new programming language for games, Annotated: Part 1”
So I did a column encouraging more user paranoia, like I promised last week. I’m not happy with how this turned out. It’s one of the longest pieces I’ve done in the history of the column, and I feel like I barely scratched the surface. It was too big a topic to ram into a single column but I didn’t feel like it was wise to make it two or three parts long. (I didn’t want to embark on an epic three-part series and then after part 1 realize that nobody cared. I’d end up with the Too Human of articles.
I should have just replaced the whole column with a link to the comments section last week. That was a pretty cool discussion. I find the social engineering side of security so much more interesting than the technical side.
How did this niche racing game make a gameworld so massive, and why is that a big deal?
There's a wonderful way to balance difficulty in RPGs, and designers try to prevent it. For some reason.
Sometimes in-game secrets are fun and sometimes they're lame. Here's why.
His problem isn't that he's dumb, the problem is that he bends the world he inhabits.
An attempt to make a good looking cityscape with nothing but simple tricks and a few rectangles of light.
This is a massive step down in story, gameplay, and art design when compared to the 2014 soft reboot. Yet critics rated this one much higher. What's going on here?
Here is a long look at a game that tries to live up to a big legacy and fails hilariously.
Everyone hates Black Friday sales. Even retailers! So why does it exist?
A stream-of-gameplay review of Dead Island. This game is a cavalcade of bugs and bad design choices.
My picks for what was important, awesome, or worth talking about in 2017.