New to the site? Welcome!

You might be interested to know that there's two different kind of posts on this blog: "Thought of the Day" and "Normal". The "Thought of the Day" category is a once-a-day random tidbit, usually a funny video or picture, and the "Normal" is just what you'd expect from a blog like this:

Unicorn-Butterfly Soup.

--Kyle

p.s. the subscription options to the left (psst! <---- that way) reflect the same content options

Putting Rollerskates on a Cow… Not Always a Great Idea

What’s the old adage?  “You can put rollerskates on a cow, and it’s still just a cow.  With rollerskates.  But it’s not always a great idea.”  Never heard of it?  Probably because I just made it up.


She wants those rollerskates.  You can tell.

What am I talking about?  Some people seem to think they can just randomly decide to be in the computer programming world because it’s a “safer bet” than, say, going into business school at the moment.

And they’re wrong.

It’s a Lifestyle

Being a programmer, coder, hacker, or any other variant of the idea of creating computer software (on any level) is not something you just wake up one day and decide to do.  You can’t, even if you wanted to.  This isn’t the same as studying for 4 years at your favorite college to get a degree in Economics and go pretend you know what all those giant spreadsheets mean.

Programming is typically borne from a love of computers, an obsession with them, and a need to know more.  You start tinkering with your Operating System (probably Windows of some sort), modifying things you don’t like and figuring out workarounds for those “people are dumb, treat them that way” software design idea.


Einstein seems to get what I’m saying.

And then you realize that you can create software.  Maybe you start with HTML and websites.  Maybe it’s PHP in the form of a mashup from your favorite websites.  Or maybe you even start playing with C++ or Java.

All while in middle school, or maybe even high school.  Because you definitely know you have a love affair with computers before you go to college, and have a high level of proficiency at any number of things computer-related.

Trust Me

I’m not making this up.  Us programmers are the same people you called geeks, nerds, and whatever else when we were younger, and now we happen to be the cool kids.  It doesn’t matter if you’re 40 or 20, people put you on a higher pedestal when they know you design software, because they simply don’t understand it.

Ask “that guy” that you know about how he got into it.  He’ll tell you.

It’s Important

Why is it important?  Because programming is not just about learning how to program, the syntax, structure, and quirks of a language.  It’s not even about being qualified to cry about pointer management or laugh at people who think Internet Explorer is “the Internet”.

It’s important because programming has alot to do with how you think.  How you approach situations, analyze them, and segment them into solution-oriented tasks.  How you continually test your code, trying to account for every possible outcome, and include contingencies for any and all failures.


Former MBA students:  this is you.

There’s a reason why people are called “Software Engineers” and not “Software Artists”.

Read More

If you come across a scientific analysis of programming or how programmers work, take the time to read it.  Because current findings are that programmers are not just Engineers, but they’re also artists, despite what I said three sentences ago.

Programming requires the massive analytical processes of an Engineer, but it also requires a high level of finesse, creativity, and “out of the box” thinking typically associated with artists.

This means you need both sides of your brain when you are writing your Pizza Hut Ordering System hack.


This is what happens when you only code for the money.

My Point

So here’s my point:  these kids may go to school thinking they can just graduate with a Computer Science degree, be programmers, and make lots of money in a secure job.  They may even accomplish that.

But they’ll never be true programmers.  They’ll probably hate their jobs.  And they’ll definitely never do anything great or revolutionary.

True programmers, the ones that change the world, do it not for the money, even though it’s nice to have.  They do it because they love it.  These are the people who have full-time jobs and multiple side projects, always hoping one day to run their own company or get a research grant to do what they want, on their own time.

Some of the best programmers of today and of yore don’t even have degrees.

How is having a degree, when you’re the wrong type of person, going to make things better?

School != Education

The people/person over here like to argue that, taking a page from ‘Heroes’ on NBC, “change the schools, change the world”… somehow that’s not as catchy as the real version. While I tend to agree that if you change the schools, as far as teaching methods and the like, you directly affect the future… what about those of us that learn better outside of school? Oh, you didn’t know we exist? Sorry, my fault, let me explain:

School != Education

Just because you go to school doesn’t mean you’re intelligent, or will come out of school intelligent. This is most true for college. Think about all those frat guys you know that get a degree in “accounting” or “communications”… the only thing that changes after 4 years is that they’re fatter and start to wear suits during the day. There are exceptions, of course, but something tells me being drunk 5 nights a week, while “bro’ing up”, is not really conducive to increasing your intelligence, awareness, or knowledge base.

Self-learners

And then there are those who learn better on their own (I’ll call them “self-learners”). I am one of these people. For some reason, self-learners find the typical classroom setting very boring and slow, and would rather do the work on their own. This is not a cop out, or an excuse to be lazy, but reality. Speaking from personal experience, self-learners have a hard time absorbing information from the typical classroom setting, but when they are given the chance to learn on their own, especially for a purpose, they exceed all potential of any classroom ever.

Multiple Choice
When has multiple choice really appeared in the real world?

Methodology

I don’t know why this is true, but it is, and I know that my situation is not unique. When you can devour a book in one sitting, quickly learn a programming language by reading a manual, see the end results of an equation or proof before it’s even begun… you find yourself wondering why you bother sitting in a classroom. Then comes the frustration when you don’t do well on a test, because you learned the subject rather than learning for the test. Is not better to understand the overall breadth of the topic, and it’s minutiae, than to learn a few small very specific pieces?

Drops
It’d be a calculus joke if you could read it.

Examples

There are very obvious examples of the school system not being “form fitting” for many: Bill Gates, Steve Jobs, Michael Dell, Einstein… the list goes on. Doesn’t this say something? If some of the most successful, innovative, and intelligent people (in many industries) of this age dropped out of college… that seems to mean that college is not the answer for these types of people. The question then becomes: is it the school system? Or is these pockets of individuals? Where is a solution?

My Solution

I have a very simple solution, although I doubt it would ever be accepted by the college system. Allow full, complete, unmitigated independent study of any size or scope, and assign value to this. For example, someone who knows 4 programming languages, reads many ‘high brain’ books, and tinkers with electronics would be alloted the majority of a Computer Science degree, requiring only a few minor adjustments to an already full plate.

The problem with the modern collegiate system is that it’s too rigid, too structured, too hierarchical. If someone wants a degree in Computer Engineering, it makes sense to take Physics, Chemistry, math, programming classes, and hardware classes… but English? History? Religion? All of these classes have been covered in depth since elementary school, how is one semester of U.S. History going to augment your knowledge from your years of history classes?

The other problem is that the college administrators assume that learning is a ‘track’, traveling from Point A to Point B to Point C. In some senses, yes… you can’t design a computer processor without basic hardware knowledge. However, requiring 10 high level math classes in order to graduate as a Computer Science major? When most of your future will be involved with code? When has anyone used advanced Calculus in their lives, unless you’re involved in the math or advanced science fields?

Broken
Broken: A Story of Wasted Money and Years

Schools are broken, and I want out. I’ve known this from Day 1 of college, and that’s why I’m transferring to attempt to graduate faster… college classes cannot replace real world experience, and they will never be as beneficial as a subject learned by oneself for one’s own purposes.