Towards a socket API with builtin stream muxing
Multiplexing (sometimes called muxing) has a long history of innovation in telecommunications. In 1875, Edison figured out how to transmit four separate telegraph lines over a single wire. In 1910, multiplexing technology was brought to telephony. Within 30 years the Bell System could multiplex 2,400 channels over a single cable. Then in the 1960s we got packet switching, a kind of unlimited multiplexing, which led to computer networking and Internet protocols.
I think of layered protocols and packet switching as “virtualized” multiplexing. Every layer provides a new medium or virtual transport for…
Schemas are pretty dope. My appreciation for API schemas as a toolmaker comes from a desire to build tools that can integrate with many systems, and open new avenues for people to use APIs.
For most, the use case that comes to mind for API schemas is generating documentation. Translating a machine-readable schema into a human friendly representation is a scalable, automated way to maintain solid reference documentation. Although many systems exist to generate documentation directly from code, having an intermediary representation is useful for other use cases.
Code generation is the other big one. It’s common for companies like…
It started as a demo for macdriver, but over the last week or so I’ve been making a standalone version. 90% of that time was playing around with it while trying to make demos.
If you work with Apple devices and you’re a Go programmer, or are thinking about learning Go, we just got some new powers that are pretty cool. Today I’m releasing an alpha of macdriver, an Objective-C bridge for Go with bindings to common Mac APIs.
Those that were paying attention to my last post about Large Type in 80 lines of Go might have already found macdriver. The largetype program is one of the example projects for macdriver.
There is a little known feature in the MacOS Contacts app where if you right-click a phone number, you get a Large Type option. Large Type fills your screen with the phone number in the largest font size possible, allowing you or anybody else to easily see the number from far away. Nifty!
As far as I know, this feature has been in every version of OS X since its release back in 2000. Contacts was known as Address Book back then. The builtin calculator also had a Large Type view, but it seems it has since been removed. …
I’m starting this devlog up again to talk about some of the work I’ve been doing quietly for the past few years. It will mostly be project reveals, which should be exciting.
To kick things off I wanted to set the tone a little. I haven’t given any serious talks in a while, and this is one of the last ones I put together. It’s actually a rehearsal recording that’s been private for 5 years UNTIL NOW of me framing my work around this mission: making the world more programmable.
This was one attempt at a clear narrative…
Press release available here.
We reached a big milestone last Friday and released a public alpha demo for the game I’ve been working on since January. You can now download and play an early version of the first third of The Indie Game Legend 3D here on itch.io.
This is my first feature length game so it’s been great to start getting public feedback and even some publisher interest. Alpha Beta Gamer did a nice writeup on the demo and highly recommends it:
Even in the Alpha stage of development The Indie Game Legend 3D is a very polished experience…
Press release available here.
Today, I’m proud to announce a project I’ve been working on since the beginning of the year: a game titled The Indie Game Legend 3D.
This is a fun project for me because it’s a remake and expansion of a friend’s 2D top-down game called The Indie Game Legend. The original game, which is finally online again, was basically made and released as a joke for the TIGSource forums in 2011. It was more than just a joke, though. Paul’s creative and retro inspired style of game-making made for a great little game. …
A few weeks ago I finished my first original game, thanks to the GitHub Game Off jam. It’s a short freeware game called Dark Forest. In it you’re armed with a bow and arrow fighting off an infestation of evil spirits. The source of that evil is a giant spirit from another dimension that cannot be harmed unless you travel to the Dark Realm. You collect keys to the Dark Realm while surviving kamikaze-ing spirits and then face off against the giant spirit in a final boss battle.
The Dark Realm itself is a sort of spirit realm, and…
Today I’m excited to release my first game! It’s called Visitor Center, a short freeware love letter to the 1993 Jurassic Park game for the Super Nintendo. It recreates the first-person interiors of the Visitor Center from the original game. Your goal is to reboot the park computer and get out of the building while surviving dinosaurs. Take a look:
Jurassic Park was a hugely inspiring and influential franchise for me as a child, and is still one of my favorite movies and books. The same year the movie came out, around 8 Jurassic Park video games were released…
Pragmatic idealist. Builder. Thought explorer.