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

Why GitHub Won’t Help You With Hiring

Ben Frederickson:

There are already a bunch of great posts arguing against requiring GitHub contributions as part of the hiring process. I particularly recommend The Ethics of Unpaid Labor and the OSS Community and Why GitHub is Not Your CV. While both of those posts give excellent reasons to reconsider asking for open source contributions when hiring, my take here isn’t about why it is ethically dubious to require open source contributions or why GitHub isn’t great for showcasing your projects.

Instead, this post is about why GitHub profiles just aren’t all that useful when looking to hire developers.

In 20 years of working and hundreds of interviews and phone screens, I’ve rarely, if ever, looked at a candidate’s GitHub.

September 2, 2018

How to teach yourself hard things

Julia Evans:

Even though I think I’m pretty good at it now, I still find breaking down “I’m confused about X” into specific questions about X takes work. For example, I only came up with those questions about Rust references 3 years after I’d first used Rust. The reason it took so long is that I had to decide to actually sit down, notice what I found confusing, and focus on figuring out what I was confused about. That takes time!

But I do think that this is something that you can get better at over time. I’m much better at breaking down what’s confusing to me about a programming thing than I was and much more able to unstick myself.

September 1, 2018

Hello, augmented world!

Google ARCore and Unity demo

Yep, I’m teaching myself of bit of VR/AR tech. This is the Hello AR sample application for Android, built and deployed with Unity, running on a first-gen Pixel, which I picked up specifically for AR experiments. VR is cool, but I think AR is cooler and has more interesting applications.

Just starting to tinker and see if this is something I’d enjoy doing more of.

August 30, 2018


For decades I’ve used that word to describe both my career and hobbies, and it’s always had a sort of negative connotation. Dilettante. Jack of all trades; master of none. Rank amateur. Tourist. Unstudied noob, unworthy of serious consideration.

In other words, the path to impostor syndrome. Ha ha! Ha.

Apropos of nothing I recently found the dictionary definition:


n. (pl. dillentanti) – a person who cultivates an area of interest, such as the arts, without real commitment or knowledge. (mod.) “a dilettante approach to science.”

Sounds a lot like beginner’s mind to me. But then I latched onto this:


Mid 18th century Italian, from dilettare (“to delight”); from Latin delectare (“to be delighted; to enjoy being/doing”)

To enjoy being. I like that very much.

« Older Entries