Tuesday, April 30, 2013

Why software development?


I can write scripts, SQL and configure Salesforce.com apps but I didn't code. I wanted to learn but found I had created a mental block about it from taking a C class years ago.   You probably know that the C  programming language is a lower level language that gives the programmer great control over the computer hardware.  Things like the Windows  were written in C (and C++).  But if you could give a rat's ass about how the hardware works then learning C is really challenging.

Here was my brain trying to read C code:
  Hey, I get this part but what does this symbol mean?
  What the hell is this code doing?
  Why the hell do I need this line of code?
  Is there any example code I can repurpose?
 
I would understand a few concepts then there would be this one little detail that didn't make sense. Pretty soon, there was a big backlog of stuff that didn't make sense and I was lost.  I was missing too much knowledge to grasp the concepts.  And being one of the few women in the class,  I thought I'd be made fun of if I asked for help. (silly me.. I should tested that theory and asked for help anyway).  I thought I was too dumb to code.

Then I attended a python class taught by a colleague. He was really good at  teaching programming concepts using python.  Python is a higher level language; less like machine code and more just logic statements.  I started to understand things that had baffled me before;  like arrays and objects.  An array didn't seem like some unknowable thing that you stuff variables into to.  I could create an array and read from it.  Arrays were actually useful.

I started to wonder if maybe programming wasn't so hard to learn.  I started to have hope.  But knowing Python was not enough. Users need a GUI to use a program.  How do I build a GUI?  Then there's the software program, where do you build it?  How do users access your code?  There are many parts and pieces that come together to make an app useful.  I didn't have the energy to figure it all out on my own.

Then along came Codeacademy.com. and the Web basics track.  More on this next post.





No comments:

Post a Comment