Many years ago I learned how to write VBA code for Excel and other Microsoft programs. I can't begin to tell you how valuable this knowledge has been over the years. Almost every project I work on as a designer involves some sort of mind numbing data entry that can take anywhere from a few hours to a few days... or even weeks. Now, I just pull out Excel, write a bit of code and voila! I push a button and the work is done. It's like inventing a robot to do my work for me! And not only is it faster, it's more accurate, as well... because computers don't make typos.
I used to get pretty frustrated when I was learning how to program. I'd change something in one part of my code and something would break in a completely unrelated part. I once told my wife that programming a computer is like changing the windshield wiper in the car... and suddenly the engine won't start.
I have to say, though, that while I'm a pretty awful coder I absolutely LOVE it. Programming is like solving little puzzles, and I love being able to play and tweak the stuff I write.
When I got started in the business over 30 years ago, I taught myself how to program a Commodore 64 in 6502 assembly language. At first, I only learned a few basic commands, but my limited vocabulary really put a damper on what I could do -- then I started to learn other commands and each one was like discovering I had a new superpower.
I remember how excited I was to show off my first assembly language game to an actual programmer. (An "Asteroids" style shooter, as I recall.) He said, "Not bad for a first effort. What Assembler did you use?"
I said, "Sorry... Assembler? What's that?"
With a strange look on his face he replied, "It's a utility program that allows you to write machine language code with labels, line numbers, etc. If you didn't use an Assembler how on earth did you write this?"
Feeling kind of stupid now I said, "I, um, used a machine language monitor". (This is a tool programmers use to change memory locations in the computer to either code or graphics.)
I used to get pretty frustrated when I was learning how to program. I'd change something in one part of my code and something would break in a completely unrelated part. I once told my wife that programming a computer is like changing the windshield wiper in the car... and suddenly the engine won't start.
I have to say, though, that while I'm a pretty awful coder I absolutely LOVE it. Programming is like solving little puzzles, and I love being able to play and tweak the stuff I write.
When I got started in the business over 30 years ago, I taught myself how to program a Commodore 64 in 6502 assembly language. At first, I only learned a few basic commands, but my limited vocabulary really put a damper on what I could do -- then I started to learn other commands and each one was like discovering I had a new superpower.
I remember how excited I was to show off my first assembly language game to an actual programmer. (An "Asteroids" style shooter, as I recall.) He said, "Not bad for a first effort. What Assembler did you use?"
I said, "Sorry... Assembler? What's that?"
With a strange look on his face he replied, "It's a utility program that allows you to write machine language code with labels, line numbers, etc. If you didn't use an Assembler how on earth did you write this?"
Feeling kind of stupid now I said, "I, um, used a machine language monitor". (This is a tool programmers use to change memory locations in the computer to either code or graphics.)