Matt Hackmann

MattHackmann

The thoughts and goings-on of some programmer dad.

My God, I am a creepy person

I have this personal website, which essentially means I am my own little mini NSA. If I wanted to, for example, find out if a person I have very few details on were to visit here, I'd be able to find that out. Let's say, for example, I know what probable day they'd view this blog, what page they'd be coming from, and approximately where they live.

Well, I have enough data to know (probably) if that person hit my site and what they did when they got here.

As a hypothetical example, let's say I know they're somewhere in Northern California, probably came to the homepage via a Google search, and did so on February 13th. Alright, first thing's first, grep the logs for that day, that page, and exclude crawlers...

Sweet, now I have a list of IPs. Let's plug those into MaxMind geoip lookup and see what comes of it.

Hmm, no exact match, but ISPs are fuzzy about location and this one is certainly within the area! Alright, now grep the logs for that IP address...

Okay, the person was on the homepage for about three seconds before going to the art page. Once there, they clicked on three pieces of art before leaving the site. All in all, about a minute of time elapsed between the first and final requests.

Other fun things you can find out while grepping logs is that your mother and former boss are the most frequent visitors to your site. The latter - going under a pseudonym - even listened to the Inception soundtrack on your music page sometime back in November while at work.

This is, of course, all hypothetical.

Systems Architecture in the Unknown

Just over a year ago, I launched redditbooru to the world, rolling together a bunch of ideas spawned by the awwnime repost checker into a single place. In addition to that, I added the ability for users to host content in addition to being able to index multiple subreddits. To say that it became a wild success would almost be selling it short. At launch, it was indexing maybe 5 subs, now it's 16, my server went from averaging ~23/Kbps per month to over 10/Mbps, and am nearing 100k pageviews for a rolling 30 day period. Despite exponential growth in traffic, the site has experienced almost no traffic related issues proving that my code is able to handle scale. What started off as a fun little afternoon of experimenting has become quite a success.

However, things are not without their flaws. On the technical side, the cron that does the indexing has some issues; items hosted through redditbooru can't be posted to more than one sub and indexed in both places and sometimes, in an attempt to pick up on items removed by mods, posts will be incorrectly marked as hidden. On the front end, the user experience is a bit of a mess as I kept bolting on features. In typical Matt Hackmann fashion, I decided that I would rework the entire thing mostly from the ground up with all of my learnings in mind while adding in some user requests. But, I was going to eschew the tried and true PHP/MySQL setup for nodejs/MySQL/mongodb in an attempt to learn something new and bring myself up to speed with the current development fad.

Two weeks into development, I am questioning that decision.

Continue Reading

Anime Reviews 2013 - It Builds Character

We're leisurely sauntering towards the finish line this year. Will we make it to the end? Maybe. But, as for today, here are the best/worst characters of 2013.

Best Characters

Chris - Yutaka Hasebe (Servant x Service) When I first started watching Servant x Service, I honestly expected the characters to be set in stone in the first episode, staying as largely unchanged archetypes as the show progressed. This largely holds true for most of the characters, but there is an exception - Yutaka Hasebe.

His character starts out relatively one-dimensional, seemingly just a persistently happy, lazy bum with a penchant for collecting girls phone numbers. A pleasant enough bloke, as it stands. However, during the show's progression, you see that there is more to him than meets the eye, especially as you see him attempt to open up to Lucy about his feelings for her.

This blew my mind, as here we had a really fun, likable character with believable development, something that's almost unheard of in these sorts of slice of life shows. It really makes me want a second season just so I can see how he continues to develop as a character.

Continue Reading

That Which is Done Annually

As is per normal for me, it's time again to reexamine myself and birth a new Matt Hackmann with the new year. It's funny how this has become a thing because I used to be vehemently against "New Year's Resolutions", taking that stance that a person should be able enact change at any time of the year. But, moreso than that, it's a barometer to measure how well those changes actually went. Anybody who knows a little bit about statistics knows that you need to monitor trends over time to get the most accurate data. All that said, let's see how I did against last year's list.

Health - To be fair, I actually started out the year pretty well. I all but ceased fast food and was even getting in my daily walking. However, the move to California but a big fat wrench into all that. I write this have just downed half of a Papa John's pizza. There were some upsides, though, such as the fact that work is within a bikeable distance. Negating anything gained from that, though, was the big uptick in alcohol consumption. It's amazing how easy it is to drink when there are other people to drink with.

Finances - Again, the job change had a unique impact on this category. The hard goals I had set out for myself were to reduce superfluous spending and eliminate my LASIK, credit card, and car debts. The middle two I actually accomplished and the car is within reach. However, if anything, the amount of money I dropped on a whim definitely increased, but because of the salary adjustment, I wasn't hurting as much for it.

Learn Japanese - I bought the stuff and made absolutely no progress on this at all.

Japan Trip - Mission accomplished with a repeat trip tentatively planned for 2015.

Drawing - Pfffffft!

The 2014 Version

I'm going to shoot for simplicity this year, so here's the plan (that I will not follow):

Eat Better - Again, fast food moratorium (as soon as my Taco Bell gift card is gone and the aforementioned pizza). It's easy enough to eat healthy at work (portion control being the most difficult part), but this needs to be carried over when I'm not there. Going to have to compile a list of not-terrible-for-me-but-good-for-my-tastebuds recipes.

Bike 150 miles every month - Once over the initial "three week to develop a habit" hump, this will actually be easy. My round trip work commute is twelve miles, so if I did that five days a week, that'd actually be 200+ miles per month. I'm giving a little bit of slack though. Start slow and all that.

The Girlfriend Factor - I've been single long enough. Time to push past my shyness and make that shit happen.

All in all, I'd say two of those three things is attainable. We'll see what things are looking like when I write this post again next year.

Anime Reviews 2013 - The Stages of Depression

Back again with a mishmash of categories.

Biggest Surprise

Chris - Flowers of Evil

This was a weird one. Initially, I made an attempt to watch the first episode because I wanted to see what was up with the art style. I was pretty revolted and didn’t get much farther than a few minutes in, determining then that I would never pick the series back up. However, as the season progressed, and good reviews for the series - at least from American outlets - began rolling in, I gave the show a second shot. And so it was that I marathoned the show over the course of two days. Fuck me, man.

What I didn't realize on my first attempt was how good the story was, as I hadn't seen enough due to the art style turning me off. But as I progressed through the series, even the visuals began to grow on me, and not because I found them attractive, per se, but because they work so goddamn well for the story being told. They provide a perfect, unsettling feel that works with the story, music, and direction to make you uncomfortable, and that’s how the show ended up being so effective.

Unfortunately, chances of a second season are pretty much non-existent, which saddens me given the open ending and the tease in the last episode showing moments from farther along in the manga. But in any case, I’m glad I gave this show a chance.

Continue Reading