My Halloween comic THE LAST REUNION SHOW

My Halloween horror story is now up. THE LAST REUNION SHOW is about three friends dealing with the consequences of getting everything they ever wanted. I first conceived the idea behind this story back in 2016, but didn’t really start working on it in earnest until early 2019. I’ve spent most of the summer drawing and working on the visual effects, which I programmed myself. I plan to eventually release all the code behind the SFX, which… might make this the first one-shot horror comic to be accompanied by a Github repository?

THE LAST REUNION SHOW is a horror story for adults. You’ve been warned!

October 1, 2019

Protean clouds

Procedurally-created 3D animated clouds using OpenGL and GLSL. Make sure to click and drag on the demo for added coolness. Breathtaking!

July 14, 2019

Why Did I Have Difficulty Learning React? –

Relatable. I’ve been using React at the day job for about 9 months and have gone through a lot of similar growing pains. But despite the added friction, adding a build step to frontend work has been fantastic.

A well-defined UX pattern library combined with a component system like React is a formidable tool for solving problems that front-end devs have complained about for decades: consistency, testability, encapsulation of best practices, and generally keeping your front-end from degenerating into a hellscape of cut-and-paste code. I’ve found that devs that don’t do front-end work can easily understand component systems and are a lot happier when they can build UIs out of Lego-like pieces.

Unfortunately, React is also great for throwing progressive enhancement out the window. Client-side rendering via JavaScript will never be as bulletproof as server-side and it irks me to no end when critical features of a site simply don’t work at all if the JS engine fails. Please, forget the “people who surf with JS disabled” strawman and think about ad blockers, aggressive CDN caching and poorly-written 3rd party ad code full of bugs. Yes, React can be rendered server-side but that doesn’t matter if you haven’t done the work to make sure what’s rendered is actually usable. /rant

July 6, 2019

The next thing

I don’t know what it is. But here’s what’s happening:

Neat Hobby! is currently on extended hiatus while I illustrate a 20+ page one-shot horror comic I wrote a few years back. It’s been slow going, but the art has improved with every panel and I’ll probably have to go back and redraw some earlier panels (I started this up in March) just so the art is consistent.

This project is my current obsession and I’m using it to improve my drawing skills overall. I’ll probably return to Neat Hobby! sometime after summer as I still love it but I’ve found that it’s really hard to keep a gag comic running, even just weekly.

I’m also still dabbling with music! I’ve been working on a proper Car Trouble full-length release with Don Gunn, who’s engineered nearly all of the Kirby Krackle records. It’s currently stalled (heh) because I’m kind of in a stuck place with lyrics. In the meantime I’ve been noodling around on silly things like this:

…which is fun! But also kind of vanishes into the cyber-ether.

There are a zillion things I want to be doing. I’d like to return to learning VR/AR stuff and maybe even do some legit VFX work. I’d like to illustrate someone else’s comic. I’ve got the itch to do video again. I’ve been playing around with the Canvas API which I’d like to apply to motion comics for the web.

All of which is to say: I have a lot of ideas and things I want to try, finite time, limited energy, and — and this is really the missing piece, if I’m being 100% honest — no plan.

So, I don’t know what the next thing is. ???????????

June 30, 2019

Getting better at math

Bennett Garner:

I’m going to make a bold claim: every developer (and aspiring developer) should solve the first 50 Project Euler problems.

From the Project Euler site:

Project Euler is a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve. Although mathematics will help you arrive at elegant and efficient methods, the use of a computer and programming skills will be required to solve most problems.

I have struggled mightily with math in the past. A highly distracted kid, I had trouble memorizing multiplication tables and making sense of equations. I completed my math courses with the lowest of passing grades and celebrated when I completed my first-year prerequisite math modules at college. At last, I was finally free of math!

Now I write software for a living. Ha ha?

Thing is, decades later I now know that math is mysterious and truly awe-inspiring, but that was never how math was taught to me.

Did you know that there are prime numbers we haven’t discovered yet?

Isn’t it weird that prime numbers exist in the first place?

Did you know we can use basic geometry to predict the future by simulating it?

Isn’t it absolutely bonkers that the human species can even conceive of things like Pythagorean triplets? Or counting in something other than base 10? Or pi?

All this stuff sitting out there like an alien language encoded into everyday reality and it’s like NO YOU GET TO DO LONG DIVISION AND MEMORIZE “TIMES TABLES” TRUST US ALL THIS WILL BE VERY IMPORTANT IN THE REAL WORLD SOMEDAY okay I guess I still have some issues over this.

Anyway what I was going to say is that to this day I’m still a late bloomer and looking at the first few Euler Project challenges actually made me hungry to try and learn something new. Maybe I’m not so bad at math after all, just uninspiring, boringly taught math.

December 28, 2018

Stop Learning Frameworks

Eduards Sizovs

Time is the most precious resource we have. Time is limited, nonrenewable and you cannot buy more of it.

Technology, like fashion, is changing at the speed of light. To catch up, we need to run very fast. This race has no winners because it has no end.

I prefer to “lazy-load my learning” these days.

December 20, 2018

Modern D&D tools – onfocus

In the 80s people were worried that D&D would lead to drugs. I think D&D leads to crafting.”

A day in the park, AR-style

Took my friend out to the park to escape the hellish news cycle for a bit.

View this post on Instagram

A post shared by Scott Andrew (@neathobby) on

This was done by hacking an ARCore demo via the Unity3D game engine, viewed through a first-gen Google Pixel. The little bits of animation were drawn in Clip Studio Paint, exported into a Unity sprite animation.

I feel like I understand the basic concepts behind AR, but there was so much to learn in order to get this far: finding my way around the Unity environment; a bit of the C# language; the scripting engine; how to actually create an animated sprite; a bit of Android development kit, et al. I still don’t understand how everything works, but just like fixing an old watch, you can learn a great deal from tearing stuff apart and reassembling it.

September 29, 2018

Spotify to allow artists to upload music directly

Spotify is testing a US-only beta program that allows musicians (or their teams/labels) to upload music directly. It’s an add-on to the existing Spotify for Artists service. The requirements are here. Allegedly this will be “free to all artists, and Spotify doesn’t charge you any fees or commissions no matter how frequently you release music.”

You’ll need a Spotify subscription, and it’s unclear to me whether or not it needs to be a premium (paid) version. If so, it’s a nice perk to add to an already $120 USD annual subscription.

I can’t imagine it’d be completely free. It still costs Spotify money to store, stream and otherwise manage all that digital music.

No idea yet on what happens to your music if you cancel your subscription, though! When I was learning to write iOS apps, I had to pay Apple $99 USD per year for the privilege of keeping my apps in the App Store. Suffice to say, you can no longer find my Metafilter Radio app there. Does something similar happen to your music if you let your Spotify subscription lapse?

Who knows? I doubt most indie artists (read: no promotional budget (or desire)) will make enough from teeny-tiny streaming royalties to cover a paid annual Spotify subscription. That said, streaming royalties aren’t the real indie game — it’s access to the music-listening world that counts.

September 27, 2018

Fire and Motion

A classic 2002 post from Joel Spolsky:

When I was an Israeli paratrooper a general stopped by to give us a little speech about strategy. In infantry battles, he told us, there is only one strategy: Fire and Motion. You move towards the enemy while firing your weapon. The firing forces him to keep his head down so he can’t fire at you. (That’s what the soldiers mean when they shout “cover me.” It means, “fire at our enemy so he has to duck and can’t fire at me while I run across this street, here.” It works.) The motion allows you to conquer territory and get closer to your enemy, where your shots are much more likely to hit their target. If you’re not moving, the enemy gets to decide what happens, which is not a good thing. If you’re not firing, the enemy will fire at you, pinning you down.

It took me another fifteen years to realize that the principle of Fire and Motion is how you get things done in life. You have to move forward a little bit, every day. It doesn’t matter if your code is lame and buggy and nobody wants it. If you are moving forward, writing code and fixing bugs constantly, time is on your side.

One day, you work on the lyrics. The next day, you work on the guitar parts. The next day, you work on drawing feet…

September 3, 2018
« Older Entries