Blog

Ben Ehrlich provides his terrible opinions about all things technical.




Script Packaging Tool

This is a really short post to let my readers know about a thing I made to package scripts. I used this to combine all the files for my JS game engine, and figured I’d share it. I’m not a Python dev, so the code is a little stinky (hence why this is just a Gist and why this isn’t on my Software page), but it works really nicely.

Continue reading “Script Packaging Tool”


Pizza Recipe

This is a bit out of place, but it’s my blog, so here it is: Me and Isabel’s Pizza Recipe!

We’ve been making pizzas for about six months now, and are by no means experts, but have gotten to a pie that’s decidedly better than 90% of the pizza in Boston (which is admittedly not the highest bar in the world, but still). This recipe takes an hour from start to finish (that includes dough rising and yeast proofing), though, the longer you let the dough rise, the more yeasty and flavorful the dough will be. This recipe yields one very delicious, medium sized, thin crust, New York style pizza. It’s so good we never order pizza anymore.

Without further ado, here’s the recipe!

Continue reading “Pizza Recipe”


The Good, the Bad, and the Licensed

The following is an essay I wrote for a university course in 2017. I just re-discovered it while going through some old files and thought I’d post it for kicks and giggles. I know the MLA format is weird in a blog post–I’ll probably reformat and properly edit it at some point.

Since video game systems became capable of crudely representing characters on screen, companies have been putting their products and characters into them. It seemed like a logical extension of product placement in television—a practice almost as old as the medium itself. Some games based on characters from movies have been wildly successful, and indeed, Goldeneye 64 proved that first person shooters could be seriously successful on home video game consoles. For every successful adaptation of a licensed property however, there are a multitude of failures. In general, the games are shoddy, rushed jobs, that virtually no care was put into.

In general, equally as little attention is put into their release as is put into development. These titles slip away into obscurity, but they are worth digging up (sometimes literally) because there are lessons to be learned from the idiotic mistakes of the past. A licensed property won’t necessarily be bad because it is licensed, but they are often characterized by low budgets and low effort, and there is a limit to how tolerant a customer will be, even if the property is well known and well loved. Which they aren’t even always.

Though many licensed games largely slip under the radar (see every Shrek game ever made), there a few that have reached the status of legend in the gaming community. Games like Superman 64, frequently called one of the worst titles for the Nintendo 64, and occasionally the worst of all time (Totilo). Superman 64 is so poor in quality and so hard to play that the Attract Screen features a demo video of someone—no doubt someone who worked on the creation of the game—trying and failing to complete the first level. This game has been talked about enough though. So too has E.T., a game for the Atari 2600 which Atari so regretted making that they dug a hole in a desert in New Mexico, and buried all remaining copies in existence (Schreier).

What will be discussed in this investigation are games which have fallen into obscurity, and a few which are well known, but have more history behind them than a glance would reveal.

Continue reading “The Good, the Bad, and the Licensed”


Some People Hate it Oldschool

If you follow me on twitter, you saw that I launched a telnet version of Underground Dungeon. UGD is written in JS, so a port to Node + telnet module was pretty simple. My expectations were, as they are for most of my games, that my mom would play it, and that would be about all the attention it would get. In this case I was incorrect, and a large amount of bots seemed to have joined my mother in my fan club. Continue reading “Some People Hate it Oldschool”


The Quest for Non-Icy Frozen Yogurt

My girlfriend, Isabel, and I are big fans of frozen yogurt, in part because of the great experience of serving yourself and all the fun toppings, and in part because of the delicious tangy stuff itself. Because of the quarantine (and because there’s only one frozen yogurt place in Boston), we’ve been trying to make our own frozen yogurt–with mixed, but mostly positive results.
Continue reading “The Quest for Non-Icy Frozen Yogurt”


Snippet of the Day 2020-03-27

I want to get in the habit of posting little bits of code that have been useful in my day to day. Here’s a little snippet for material design labels. This creates the little rising effect using pure CSS. I built this to play nice with bootstrap.


<div class = 'mat-group'>	 
    <input type = 'text' class = 'form-control' placeholder = 'anything, but must be something.'>
    <label>The placeholder text.</label>
</div>

<style>
    .mat-group label { position:absolute;margin-top:-1.25rem; pointer-events:none; transition: all .3s ease; color: rgba(0,0,0,.26);}
    .mat-group input:focus + label,.mat-group input:not(:placeholder-shown) + label { position:absolute; margin-top:-2.7rem; font-size: .75rem; color:#009688; }
    input::placeholder {color:transparent !important;}
</style>

In action:


I Love PHP

I love PHP because it comes with a santa’s bag size feature set, and I am charmed by PHP because these features often make no sense and are wildly inconsistent across the language. My friend says he won’t do web development because it requires ‘tribal knowledge’ and I think this is what he’s talking about. Let’s talk about string functions.

Continue reading “I Love PHP”