Category Archives: miscellaneous

iTunes and the phantom iPhone

One day, iTunes unexpectedly decided to stop recognizing my iPhone.  Strange thing was that Windows still recognized the device as a camera and I could access and extract my photos.  What to do but go to Apple’s product help pages.

After going through the basic troubleshooting steps (“is your phone actually plugged into your computer”, “reinstall iTunes”), I was able to determine that indeed, it was indeed a software problem.  I was then directed to this page where they recommended messing with MSCONFIG to discover the offending, interacting program by activating/rebooting one program at a time. Fortunately, I failed early.  Disabling all non-Microsoft services at start up accomplished nothing.  Failing that, they suggested examining your security software – in my case Zone Alarm.  Normally, I would try updating software first, but Zone Alarm had been giving me trouble for a while now.  So it should have come as no surprise that when I uninstalled Zone Alarm, iTunes rediscovered my iPhone.  Huzzah!  Time for mass updates!

Looking forard – goals for 2012

During the last 3 months of 2011, I was learning and enhancing my knowledge of Javascript, CSS, and HTLM(5).  I have also been looking forward, thinking about what I want to accomplish this year.  Up until now, a large percentage of my efforts have been put into gaining awareness.  For me, 2012 is about taking the next step, branching out, and getting significant hands on experience in a bunch of new stuff.  These are my personal-professional goals for 2012:

  • Learn the following databases: MongoDB, Neo4j, Casandra
  • branch into iOS development (iPhone and/or iPad). Create and publish at least 3 apps.
  • build my own Django app and get it running on a home web server.  (I have an idea for this, just needs implementing.  It may be the subject of future posts.)
  • Use HTML5/CSS3 as much as possible.
  • Get better with Python and learn some new python packages: NumPy, SciPy.
  • Go to one tech related conference.
  • Get better at networking.  (I’ve found this somewhat difficult here in Champaign, IL)
  • Increase my monthly blog post rate to at least 3 blog posts per month.

Here we go 2012!

MIME debugging

Recently for work, I had to deal with converting PDF’s into MIME Base64 encoding to transmit them to a partner vendor.  I had already done 2 successful implementations but the third was proving more challenging than the others.  Our utility built off of library functions did the necessary encoding, but it returned lines of uneven length whereas the vendor we were interfacing with required lines of fixed length.  Normally, this would be a straight forward operation, but what made it difficult was not being able to tell if the output I was generating was correct or not.  Would you know at a glance if you had off-by-one indexing errors just by looking at this:

jO2Kyxjbgr0AkqREL92HWlNwKjyp0UpKgI
jaVOIV0Jw4hyba5CgYHGHFrWsSqwgIl02J
LA2SBFIMSjKegY+R576hCk1acwTEFLNsc2
pmkhAsY32wa73Bc0CVTNfgu3kTZa19s0j7

What really helped is when someone pointed me to this online tool that generates Base64 encoding into lines of specified lengths.   Now, I had a target I could compare my intermediate (reformatted) output against, and then make my way to the final embedded content.

HelloWorld()

Hello World!

For the past 5 and a half years, I’ve been a programmer in the Health Care industry.  If you were to ask me as I was leaving college where I would be at this point in my life, I would hardly have guessed I would have taken not one, but two cross country moves to expand my professional horizons, but would also be engaged to a wonderful fiance.

I love to program.  I love the creativity and complexity it offers.  I love the philosophical parallels.   I love the structure.  I love the challenge.  Above all, I love the ever changing world and the non-stop learning adventure.

As such, I have been reflecting lately on many of my past career experiences as well as the need to explore and expand on what I already know.  This blog is my venue to reflecting on the world of software development, and to my pursuits of new and interesting technologies.  Here, it is not so much about the destination as it is about the journey.  I hope to see you along the way.