Showing posts from 2014


So, I recently tweeted about my personality type. I'm not exactly sure what lead me down this "personality test" road again.  I think it was linked in some article from LinkedIn.  What I found more interesting this time is the result: 'INT J'.  Huh?

I had never heard of this 'INT J' before.  What was this?  Well, I read the whole description..and I keep reading it.  I cannot believe how this fits me...perfectly.

Just check out some of the quotes:

"INTJs need and want to know why things are the way the are."

"Although quietness pervades, INTs are capable of being real chatterboxes, but not in general or small talk—only on issues which are important to them or which stimulate them."

"INTJs love the intellectual challenge and will come to the fore when there are difficult problems to solve"

"INTJs will overturn established practice by being forward-thinking and truly radical."

"They excel at deep diving and working on …

Will you be my friend?

I received this email yesterday:

I am Hanna Yapo,I saw your email address when i was searching Google today, I am interested to know more about you and also willing to have you as my friend. Let me know your interest on me.
Hanna Yapo

I really do not know how to take this.

Is this the weirdest spam I've every received?

Is this some sort of phishing attempt?

Is it sincere?

Currently, I'm choosing to not reply.

Casting Doubt

So, I'm going about my day when I see this come across Twitter.  So I go and read it.

Wow.  Let's go through it.

It opens with:
Are you trying to bring modern development practices to a… less-than-modern software development environment? Uh, yeah, I have been for over 2 years.

Then he lists the warning signs:

SilosYup, this kind of "bigger picture" stuff is rarely shared, and only after there's been an issue.VisibilitySurprisingly no.  Most everything we have is at least in SVN."We're too busy for maintenance"That's a definite "yes".
Does my current employer have a problem?  Yup.
I've been trying to just get simple things accomplished for over two years now.  We're talking little things, like upgrading Perl to something in the last decade and writing unit tests.
Of those two, only the Perl upgrade has any traction (also strangely with a move from Windows to Linux).  However, we are on year two of the upgrade and are in exactly th…

...and it begins

Ok, let's let the cat out of the bag, today I ran the following in my Cloud 9 workspace:

rails new name-that-book

Exciting isn't it?

One idea I had was to recreate something like the old "Name That Tune" show.  In the show, contestants had to name the tune in as few of notes as possible.

I intend to recreate that with music, but let's start with something that might be a bit easier.

So, I still need to start fleshing out all the ideas, features, and details, but at least I've got a repo to hold some of my original thoughts and code on this.

The first step, I think, is to ignore the front end and get a backend RESTful thingy working with tests.

May this be my first baby step into a new job.

Wish me luck.


So, I said earlier that I was out to become a "Rubyist".  This is still true, and I'm finally ready to get back on that wagon.  What have I been doing?  Well, I've been spending time on CodeSchool.  I found a Groupon a while back and just went for it.

I'm pretty happy with CodeSchool so far.  According to them I am now a master in HTML/CSS and Javascript.  Since most future work is probably going to be for the web, I thought this was a good investment.  I like the modern HTML elements, I learned a bit about SASS which I knew nothing about before.

The other "win" is with Javascript.  I could get simple things done in JS, but I feel much more equipped to do something "real" with it.  They even had courses on Bootstrap and Ember (with an Angular course coming).  Although I probably couldn't write an Ember app from scratch without a lot of help, I did learn quite a bit and it solidified some concepts.

So, with those two tracks accomplished, I…

Another diversion

I was working through the Koans and got distracted.  I'm still learning Ruby, I promise!

Somewhere, I stumbled across Ruby Warrior, and it looked fun.  Plus it looked like something I could do without need to concentrate quite so hard, which helps if you're stuck on the couch watching "kid shows", for instance.

This is a turn based game where you can only do one action on your turn.  It is a two dimensional board, where you, as the warrior, have only a small set of abilities:

walkfeelattackhealthrestrescue Before you decide what to do, you can also "feel" a square.  This tells you what is there.  The result can be one of five states: emptystairsenemycaptivewall Currently, I am stuck on level 6, but I'll still give you a taste for the code:

class Player
  @last_known_health = nil
  RUNAWAY = 20 * 0.40
  BANZAI  = 20 * 0.75
  @found_wall = false

  def play_turn(warrior)
    @last_known_health = unless @last_known_health
    took_damage = @last_known_…

Your company might be making mistakes if...

I recently found this article about mistakes that companies make with development.  In it, they list out these mistakes:

Paying poorlyProviding inadequate equipmentGoing into technical debtRolling your own when good alternatives existNot providing dedicated project managementUsing developers for non-developer tasksNo learning for learning's sakeOffshoring Development I have worked at firms that have committed all of these, except #1.
So, should you leave to get improvements in any of these?  That, of course, is up to you.  I only really see two options:

Be an agent of changeLeave Being an agent of change is very difficult in my experience.  I wish I had some success stories to share with you, but I don't.
Here's one example:  I have thus far unsuccessfully, argued for a group of developers to write unit tests.
You'd think that this would be easy, because isn't unit testing at this stage a given best practice?  You'd think so, yet, I see many oftheexcuses used.  I…

Ruby's Data::Dumper

I was poking around a bit trying to find the Ruby equivalent of Perls Data::Dumper or Data::Printer.  At first, I didn't think anything like those existed.

Upon further research, it seems that the "normal" way of doing this is to use Marshal or YAML.

These are ok, and I'll probably play with them, but I got more excited when I subsequently discovered Awesome Print.

After installing...

gem install awesome_print

First run:

ctreptow@vm-0:~$ cat 1.rb                                                                                                                                                  #!/usr/bin/env ruby require "awesome_print" data = [ false, 42, %w(forty two), { :now =>,  :class =>, :distance => 42e42 } ] ap data

ctreptow@vm-0:~$ ./1.rb                                                                                                                                                    [ [0] false, [1] 42, [2] [ [0] "forty&…

Ruby Koans: current status

Just finished strings:

your path thus far [............X_____________________________________] 70/280

Knowing When

I was a Computer Science major in college.  This, of course, meant lots of programming.  In my case, the majority was in Pascal, plus I dabbled in others: Modula-2 and C primarily.

So, when it was time to graduate, I needed a job.  I interviewed at a couple of local places (one insurance, one PC software).  Well, neither one worked out, plus I felt I needed to farther away from home.  I eventually took one in Des Moines.

Was I programming?  Nope.  The choice was either program COBOL, or do something in their "Research & Development" department.  So, I became a "Research Analyst".  It was fun, but we didn't do much more than review software and hardware, write up the report and tell people in the company what to buy.

One of those projects was to compare UNIX systems.  That was actually pretty cool, I got to meet employee #33 at Sun (whatever his name was) and got me going on UNIX.

So that led me around to a path of doing DBA work and sysadmin work.  Eventu…

Ruby Koans: Fun With Hashes

So, I was working through getting Enlightened about hashes, when I came across this:

 79 deftest_default_value  80     hash1 =  81     hash1[:one] = 1  82   83     assert_equal 1, hash1[:one]  84     assert_equal nil, hash1[:two]  85   86     hash2 ="dos")  87     hash2[:one] = 1  88   89     assert_equal 1, hash2[:one]  90     assert_equal "dos", hash2[

Ruby Koans

I was sitting with my wife last night and she wanted to watch the rest of the Golden Globes.  I had stopped with my new game for the day and I don't particularly care for awards shows.

What to do?

I know!  Ruby Koans!

So, I've taken a slight diversion before eventually getting back on the path to Ruby on Rails.  I've only completed 12 steps on my path to Enlightenment, and already, I can see that the Codecademy Ruby track leaves just a bit out. :)

Setting up the Ruby environment

So, I want to take a stab at building an app with Ruby on Rails.  Before I start, I want to make sure I can reproduce it on a different machine.  The first step to doing that is to control the version of Ruby I'm using.

I found this guide to get started.  Luckily, I was already familiar with Perl's plenv setup, so this all looked very similar.

Although plenv wants you to run your shell as a login shell and modify .profile, rbenv doesn't seem to work that way.  I needed to follow the instructions exactly, and only modify the .bashrc, and then change my shell to NOT be a login shell.

Install rbenv I used this guide: rbenv

Install ruby-build This is used to provide rbenv the ability to install new versions of Ruby.  I used this guide: ruby-build
Install Ruby I chose to install the latest: rbenv install 2.1.0
However, this produce an error:
The Ruby openssl extension was not compiled. Missing the OpenSSL lib?
So, first you need to install libssl-dev
sudo apt-get install libssl-d…

Healthy Eating

A long time ago, I read Gary Taube's book Bad Calories, Good Calories.  I found it a bit difficult to get through and totally understand, but there were a couple of very basic takeaways for me:

The "healthy eating" ideas most people grew up with is wrong and based on bad or no science.Carbohydrates (refined) and other are bad, as proven by what our bodies actually do with them. Well, since then, I've also watched a few documentaries, such as Food Matters, Fat Head, Forks Over Knives, Hungry for Change.  I found them to be either inspiring, informative, or both.
So, this got me going to make some changes.  Luckily, my wife is also on board.  She must have mentioned something on Facebook about it, because she suddenly had an old friend start telling us about the 21 Day Sugar Detox.
I'm not sure about the "detox" portion, but I am convinced that most of the food I've been eating is actually bad for me.  I'm also not eating enough vegetables, that…

Becoming a Rubyist

So, I've decided to finally "officially" learn Ruby.  A couple of times, I remember having a terminal up and spitting out something like:

puts "Hello, world!

..and then I walked away.  Well this time it will be different...I promise!

So far, I have completed the Ruby track on Codecademy and now Smarterer says I'm proficient.  Time to spit out a couple of answers in Ruby on Code Eval as well.

What next, though?  I think that answer is Ruby on Rails.  Everybody around this area seems to use it, so I may as well put some effort into one of my ideas and see if I can get a site built with it.