Posts

My Tensorflow Project Isn't Saving the World

Among all the hype around the latest and greatest technologies, there is so much publicity devoted toward how they are being used in grand schemes to cure cancer, reduce energy waste, conserve water, solve poverty, and so forth.  While all these things are wonderful to humanity, there has to be someone left in the background who helps all the do-gooders unwind when it's time to take a break! The TL/DR Version: Get To the Point! Use clever arguments when loading up your Docker container so you don't have to shut it down and restart it when you want to mount external directories from the host filesystem or expose the port for the Tensorboard server.  There is also nvidia-docker available if you want to use your CUDA cores. sudo nvidia-docker run -it -p 6006:6006 -v ~/Pictures/video-game-training/:/video-game-training gcr.io/tensorflow/tensorflow:latest-devel-gpu bash Use the  --output_user_root  option in your Bazel builds so you can save it to that external ...

Pre-Google I/O Entertainment: Old Electronics Stores and Computer Resellers!

Image
The opportunity Google gave me to attend Google I/O, their annual conference, two weeks ago required me to travel to the Bay Area in California in order to attend in person.  Also known as Silicon Valley, it is an area steeped in computer history, featuring (of course) the Computer History Museum, not to mention large offices or global headquarters for many current and long-gone tech behemoths, plus all the tiny startups making millions off various Internet and mobile technologies.  As someone who has been using computers their entire life (well over 25 years now), I am enthusiastic about the way forward but do not want to forget about the winding, bumpy way that has gotten us to this point. As I seek to bolster my collection of retro-tech, it is fascinating to pontificate on what all these devices would have cost brand new.  There's no way my family could have afforded but one or two these things back in the day, but as technology marches on and leaves so much of itsel...

Moments Inside Google I/O 2017

Google I/O 2017 is the highly-anticipated and much-improved follow-on edition of Google I/O 2016.  It's evident throughout all aspects of the conference that they took feedback and lessons learned from last year's maiden foray into the Shoreline Amphitheater to make for a much more awesome experience.  Now, I sit here writing this to you from inside the Amphitheatre itself, comfortable in just a thin long-sleeve shirt and jeans, no wind at all (unlike last year), awash in sound from the LCD Soundsystem.  However, I almost didn't write you this story. A Nearly Missed Opportunity The registration window for I/O 17 came upon us.  Stacy reminded me it was time for this, but I balked at the price -- up $150 from last year!  Nevertheless, I still planned to register... until I didn't.  I hadn't realized I forgot until a day after registration closed.  My heart fell through the floor, and Stacy rolled her eyes... Oh Stevo... Oh well... I thought all hop...

Journey to a Fully Custom Pinball Machine - Part 1

Image
The"maker bone" has bit me pretty hard since 2011 when I began working on LEDgoes/BriteBlox and won 3rd place the Apps for Metro Chicago hackathon with Owtsee/headonout.  And while I've worked on a mixture of side projects for profit and fun since, I can't help but note the urge to do more ridiculous things for myself just to say I did them -- not necessarily to make any sort of profit (in fact, most of my projects sink an enormous amount of time spent over several years before true completion), but for the notoriety. The Actual Beginning Of This Post There... Now that the part Google Plus will post as the headline is out of the way, it seems to me that my coworkers generally love me, and I love them too.  I am seen as quite the maker type inside my area, and have been invited to participate in events even in various groups I don't necessarily belong to because they like to "claim" me.  Often, these are external recruiting events, and I love exuding...

My Journey With Implementing JPA

There comes a time in pretty much every programming project when you need to communicate with a database of some sort.  When doing this in Java, one choice is to manipulate DriverManagers or DataSources directly.  However, if you want to take advantage of POJOs to represent your data from the database, manipulating data as objects, you might be staring down the task of writing all sorts of ugly reflection code or a really long constructor to make this happen.  There is an alternative: the Java Persistence API. Old news, buddy! JPA is old-school, clocking in at over 10 years old!  (Jeez, I might as well bust out my IBM 5150 .)  However, I did not feel like writing reflection like what was done on the last project, so I searched for an alternative.  JPA provides you a mechanism to add in details pertaining to object/relational metadata (ORM), and thus run all sorts of CRUD operations with minimal code, by offering convenience functions for these oper...