Wednesday, June 22, 2011

What's in an education?

I can ignore this topic no further.  So far, I haven't been the timeliest at getting my thoughts out, but I'm working on it.  Anyhow...

A month or so ago, my cousin sent me the following link to a slashdot article:

[slashdot article]
http://idle.slashdot.org/story/11/04/28/1449250/University-Proposes-Tuition-Based-On-Major

I like to read the comments on slashdot to see what people (hopefully educated people) think.  You don't need to read too long to see that the general consensus is that the proposal is a bad idea.  Not only that, but you start to get the idea that we need more people to pursue the science, technology, engineering, and math (STEM) disciplines.  There is a high demand, but unfortunately a dearth of qualified people graduating with said skills.

Following on that, and what finally prompted me to write this, was a TV snippet I saw.  As I was passing through the break room at work, I caught a glimpse of President Barack Obama giving a speech on --- you guessed it --- STEM!  Clearly, this must be an important thing.

[Obama's speech]
http://www.realclearpolitics.com/articles/2011/06/13/obamas_speech_in_durham_north_carolina_110207.html

But I saved, for last, the punch line that ties all this together.  Between the two aforementioned events, I was watching an old video with Alan Kay.  It's called "Doing with Images Makes Symbols."  If you haven't seen it, I highly recommend watching it.  And if you don't know who Alan Kay is, well, start reading!  He just so happens to be one of the fathers of object oriented programming.

[Doing with Images Makes Symbols]
http://video.google.com/videoplay?docid=-533537336174204822#

Near the end of the video - if you actually take the time to listen to the Q & A, you'll find a most interesting question asked.  That is, in a nutshell, "What should aspiring students do in this career?"

Alan Kay responds saying:


"any students who are interested in going into science and engineering [...] they have to realize that both of those are art forms"

Well, this makes sense.  It aligns nicely with the software craftsmanship movement where we think of software development not as something formulaic, but instead as a trade or art.  However, he goes on to say:

"I am pretty much even against having strong concentrations in engineering, computer science and those things at the undergradutate level.  I think people should try to get a really solid liberal arts background."

But that's because he previously tied the two statements together by saying:

"liberal arts are the best place to develop you aesthetic feeling."

So, that second half threw me for a loop.  Advocating instead that one should pursue a liberal arts background seems to be the opposite premise of the first two articles.  After all, aren't we saying that we need more math and science students?

Now I'm certainly not one to argue against Alan Kay.  In fact, if there is anyone's opinion I'm going to trust, it's going to be his.  Suffice it to say, I find this quite interesting and I don't have an answer...yet.

So, what do you think?  What was your education in?  Was it valuable to you as a software craftsman?  Respond and let me know what you think.

Friday, December 10, 2010

Vim - telling it like it is

So, I've been working on the Bank Kata OCR lately.  Part of it requires you to read input from a file.  I've been doing my development in Eclipse, including creating some files that have test data in them.

One requirement is that your record will span three lines, followed by a "blank" line.  There can be many records in a single file.  Thus, a record technically consists of 4 lines, of which you only care about three.

My tests were failing and I was having trouble figuring out what the problem was.  After all, I had typed in my file correctly:



After some consternation, it finally dawned on me to open my file in Vim.  When what to my wondering eyes should appear:



But a file with only three lines in it!

Yeah, it's a small thing, a minor inconvenience, and it's not like I wasted days on this.  But still, the point remains:  Keep a trusted tool and old friend in your toolbox.


Thursday, November 11, 2010

Rating Oneself

So, I recently came across the Dunning-Kruger effect which lately seems to have particular relevance to my life.  In a nutshell, it deals with how people of different skill levels perceive themselves.  That is to say, people who are imbeciles might not be aware of their own imbecility.  On the other side of the spectrum are the folks who actually are proficient, but for whatever reason (esteem, etc), think of themselves as being as not being good enough.

The tie in for me then, is the software craftsmanship movement.  It has become of high interest and I'm intrigued by the concepts and the ideas behind it all.  I want to become better instead of just stagnating.  There is a whole community out there with all sorts of neat things happening.  Who wants to sit and watch his or her life go by when they can be a part of something awesome?  And yet, I often don't feel as if I'm good enough to be a part of it.  That is, good enough to pursue those jobs, those teams, and those people.  This seems to place me closer to the latter category from above.

This furthermore reminds me of a quote I once heard.  After accused of being a showoff, the response was the following, "Is a bird bragging when it flies?"  I think it might be from one of the Superman movies.  In any case, the point is that is okay to be smart, talk smart, and so forth.  We just seem to have that stigma against it in this country.  And that, I'm sure, is part of the reason why many may find themselves feeling inferior.

What am I doing about this?  I've been at my current position for closing in on 3 years.  While it hasn't been terrible, it just feels like it's time to move on.  I don't foresee much growth in the future.  So, now I'm starting to see what else is out there.  I'm inquiring, exploring, and probing opportunities.  I've been talking to other people and considering what might be within the organization. 

The other thing I've done is consciously try to drop the ego.  I noticed that was chiding another developer (whom is probably better than me) when he would make mistakes.  I'd fallen into that old trap of:  "When people criticize others, it's often their own flaws they are criticizing."  I thought I was just giving him a hard time, but there was more to it.  I felt bad enough to bring it up and have been trying to be more positive.  The other downside is that it made me less willing to ask for help or clarification, lest I seem weak.  I'd created my own demise.  By dropping the ego and need for approval, we can get so much more out of each other.  That said, all other jokes (baldness, your mom, etc) are still fair game.

So, I'm curious as to who else out there might feel as if they are in the same boat.  Do you ever feel stuck in some middle ground - in limbo somewhere?  Have you found yourself critical of others when in reality it's a way to bolster yourself? 

I do know I'm smart, but am I smart enough?