26 April 2013

Introduction

Here it goes...

What is this and why is it here?

I'm going to start a blog about programming. Not about how to use library 'X' or tutorials on some language, I'm going to blog about developing software. Let me tell you a little about how I got here.

I'm currently a student studying computer science and am half way done with my degree. This spring I took a first level software engineering class which rocked my brain. The class' students were divided into groups and sent out into the world to plan a software project. My group set out to make a recipe website. We quickly realized that, while we all knew how to program, none of us had a clue about how to plan to program. What was news to us, or at least largely ignored, was that coding is only one small piece of the software life cycle. I think there's a problem with this. There are tons of resources on the Internet and in books about how to write code or about some specific language but there seams to be a large void where planning is concerned.

That's why I'm starting this blog. I had no clue how to plan software before January. I still am very unsure as to how and when things should be done (don't get me wrong I did well in the class but as I've learned, just because you get a good grade doesn't mean you understand what just happened). This blog is my way of practicing what I've learned and to improve as much as I can before round two of software engineering comes at me.

Important!

Lets clarify something right now, I'm not an expert at any of this (read the last paragraph again if you didn't catch this concept). I'm not currently working in industry writing code. The closest that I get to software engineering right now is configuring home automation systems. This blog is an experiment (hence the name). As such any advice from more experienced people is much appreciated. I hope things get better as I go along and feedback is definitely welcome (As long as it's constructive, there is such a thing as stupid feedback).

How this is going to work.

I'm going to post, hopefully, every week or every other week since I am going into a summer break. Each post won't be a complete project in and of its self. Instead each step will cover the next stage of the development process. I don't plan on giving a working program at the end of each project but I probably will code one just to see how easy the documents are to follow. I encourage anyone else to implement the projects in whatever language will work (we'll talk more about this in the next post). If you do implement a project post the code on code.google.com or sourceforge.net or something and I'll link to it so other people can see working results. Also let me know how well the documentation was when you used it to write code.

No comments:

Post a Comment