I love goals, they have helped me to learn many new skills and accomplish tasks I may have never tried before. Usually I set a goal because of a deadline (music that has to be completed by a certain day), but usually it’s because of a skill I needed to learn in order to accomplish some task.
The following is long, and will probably bore most of you, so don’t feel guilty not reading, but it may be of interest to some.
I learned website design because I wanted to create a website for my music. I didn’t have any knowledge in computer programming, but my husband let me borrow some basic html books so I could create a simple website. It was fun to create a website for each of the songs that I wrote, but I frequently wanted to change the look of it, and it was a real pain to change it for every song that I had on the site. I learned that if I used a language called PHP, I could create a single song page that could pull the information from a database, and that if I wanted to change the look of the site, I could just change the header at the beginning of the page. It was worth it. I learned PHP, mysql (for the database), and CSS (styling sheets).
Several years later, I was trying to plan my food storage. I don’t like buying large amounts of wheat and powdered milk without knowing how I’m going to use them. I thought if I could just write down some recipes that I would actually use for the month, and then calculate each of those ingredients by 12 (months) I could figure out EXACTLY how much I would need for my year supply of food, and I wouldn’t mind buying the needed amounts of those ingredients. I sat down and tried to calculate some of them out on paper. It wasn’t long before I realized that it was going to take me forever to calculate an ingredient like salt, and also, if I wanted to change any of my recipes it would mess up my whole list!
I then started thinking, Someone should just make a program that does this all for you! Immediately I thought of all my programming skills that I had learned. I realized I had the tools to do some of that already. Over the next 3 years, I worked on it. I used PHP, mysql, html, and css to write it. I actually got it to work (mostly). It wasn’t anything I could share really, or market, but I let a few family members try it. It wasn’t very intuitive. I knew a lot of things would work better if you could drag and drop, also, if it didn’t take so long to load the pages.
I started experimenting a little with a language called Flash and Actionscript. It did a lot of what I wanted, but it was still Internet based. I wanted to create some kind of Windows program, that didn’t have to be connected to the Internet. This required learning a new language, Visual Basic. I started playing with the free Express Editions of Visual Basic that Microsoft offers. It was fun. I enjoyed programming. Then I had a miracle happen. My oldest daughter was out of school and could babysit, and I was able to take a Visual Basic class at the Community College. Not only did I learn quickly how to program in Visual Basic, but I also learned good practices for designing, implementing, and working in groups.
When my husband lost his job last year. I realized that I had enough skills to possibly be able to support my family. Of course we probably would have to move, and I wouldn’t be able to be a stay at home mom, but having the skills necessary is extremely comforting to me. Thankfully, I haven’t had to do this. I like the freedom to create on my own time.
I have almost finished my recipe program. It’s been hard since I had my baby to spend the time to complete it. Right now I’m learning how to create programs that work on my iPod. I think if I could make my program work on my iPod as well, that would make it even better. Of course there are programs that probably already do all that, but they are skills that I’ve learned no one can take away.
So anyway, you learned something new about me that you may not have known before. I’m also a computer programmer.