Masters At Genius Engineering

“If you choose to sail upon the seas of [ecommerce], build your [ecommerce website] as you would your boat, with the strength to sail safely through any storm.”

– J. Safra Sarasin (sort of)

Once upon a time, some shipwrights came together and said, “we’ve had enough of these old ships. Let’s make the best ship ever– it’ll be really sturdy, and really fast, and it’ll carry an unlimited number of passengers–and let’s make the ship standardized and configurable, so if someone wants to change out boards on the ship or put in new parts, they don’t need to muck around in the bowels of the ship.” Because these guys have seen lots of other ship designs that have different issues and inefficiencies and they have the solution to all the problems other ships have.

Continue reading “Masters At Genius Engineering”

Snippet of the Day: Pure CSS Animated Play, Pause, and Buffer Button

The title says it all: A pure CSS animated play, pause, and buffer button. The way I have it implemented, it uses JS to switch between play, pause, and buffer states, but it’s the CSS dataset/class selectors that actually control the appearance/animations. If you really wanted to do this in pure CSS, you could make the button a label for a checkbox and control the states that way. I’m not sure why you’d want to do it that way, but if you did, that’s a way you could do it. Anyway… Continue reading “Snippet of the Day: Pure CSS Animated Play, Pause, and Buffer Button”

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”

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”

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”

Oh Settings, Where Art Thou

The removal of the headphone jack was a failure. We all know it. There is no one in the world who says “I’m so glad we got rid of the headphone jack so this phone could be .1mm thinner.” There are a lot of people who say, “I don’t want to spend $100+ on headphones that will be unrepairable in a few years,” or “I can’t charge my phone and listen to music at the same time.” Apologists say, “just buy a $x adapter, you can leave it in all the time,” but I’d rather not pay extra money to make a new phone have the basic functionality that my previous phone had.

To the same note: It’s been 7 years since Windows 8 released. We’re still dealing with the UI decisions and the fragmentation it caused in the Windows user experience. We know it was bad, and we continue to suffer with it.

Rewind to 2012. Exciting things are happening. Computers are getting touch screens, we’re looking at Intel processors in phones. It’s seriously looking like there might be a complete convergence of technologies—a momentary dream: run the same software across all ecosystems. Oh how naive we were.

Continue reading “Oh Settings, Where Art Thou”