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”

Self Destructing Wolves (My Favorite Bug Ever)

I said I’d talk about the most difficult bug I’ve ever encountered, but I want to talk about my favorite bug instead. The most difficult issues I’ve faced in programming have been working with bad legacy code, but those stories are just me bashing my head against the keyboard because someone used !important on every other line of a stylesheet.

Instead I want to talk about my favorite bug ever, which took about 30 seconds to fix, but which I’m still thinking about five years later. Here’s the story of the self destructing wolves.

Continue reading “Self Destructing Wolves (My Favorite Bug Ever)”

Fun In Horrible API Land

There’s plenty of API horror stories out there, I figured I’d share mine. This is a story of a certain API of a certain piece of software and the trials and tribulations I went through to avoid making users upload a CSV file.

Background: There’s not a lot of software in the space of the company I was working for at the time. The quality ranges from poor to less poor and my company opted for one of the less flexible more stable bad options–I will call it Athletic. This was customer facing software that had a very decent user experience if you were a customer and a very bad experience if you were actually paying for it.

So I’m building a web app to be used internally at my company which needs data from the software in Athletic. The options are: 1. Download an excel spreadsheet that you can export from Athletic, convert it into a CSV, and upload it. This works, but is a painful process for users and this will need to be repeated weekly, sometimes more often. Option 2 is to use Athletic’s API. I opt for option two. So the odyssey begins.

Continue reading “Fun In Horrible API Land”