Mar 1 2009

Program Design

So in school, we are learning some fundamentals on object oriented design in Java such as inheritance and polymorphism. The thing that we haven’t done is the actual concept of object oriented design. So things like how to structure classes and methods for optimal code efficiency and use. This is such a fundamental concept to teach in school to allow programmers just coming out of school to produce optimized and efficient code.

It’s no matter in today’s society we deal with so many programs that crash and don’t work properly. If fundamental programming techniques such as design are not being taught, then when students graduate it is to be expected that they continue the programming practices that they picked up in college/university.

This being said, when you come out of college/university, you’re most likely to have a “code monkey” position, where you’re actually coding the enterprise applications. So it’s almost expected, knowing this that programs you use everyday crash on such a regular basis.

Cheers


Feb 19 2009

School Projects Impairing Creativity

This is an interesting question… Currently we have been given a project in which the back end of the database is provided along with screenshots of all the screens we are allowed to “use”. I find this method extremely limiting to students when it comes to developing abilities “outside the box”. Should students not be allowed to develop their own ideas and thought processes when it comes to programming? Potentially focusing on design and development, and work side by side with technical aspects of the language?

In my opinion concentrating on both design aspects and technical programming concepts will lead to a greater IT work force. How in industry today can you expect perfection in programs from students who are not taught that in school? When they come out then it is left to the employers to teach design, and good technical programming concepts and let’s be honest, they just do not have the time or the resources to do that. So in fact good design principles and practices need to be forced at the school level to ensure a better IT work force when students get into industry and are ready to jump right in!

On a side note, as a proposal, what is there was time set aside during school, for credits, for project work on your own? Google is a great example of this allowing a single day a week for their employees to work on projects of their own or even to go and help the community. And again, they write some of the best code in the world. This is something that could be potentially adopted at the school level to promote creativity and a passion for coding!

Cheers


Dec 10 2008

Software at a young age

I came across an article on the very popular slashdot.com tonight that was very interesting in my opinion. The article is a user based question asking which language is best to teach 11-14 year olds with varying computer knowledge. The article found here, surprised me very much when I looked at it the first time.

Now this may be because of changing times and school’s are getting more computer literate now, but, wow, 11-14 year olds now have computer programming as part of their curriculum? This is extremely great to hear! I just wish that we would have had something like that back when I was in school and that age. Even if just basic concepts are taught like loops, variables, etc, it opens up the possibility of programming to be taught at a very young age.

This being said, I think we will see a major jump in programming skills in the next 10-20 years as more kids are now being taught these things earlier. This leads to maybe the posibility of an even easy language than maybe Basic or QBasic to be able to teach the fundamentals at a younger age.

I think that there is a dark side to this as well. Computer programming will take away from fundamental subjects such as math, science, and social studies that all kids must learn to be successful. This could be good or bad, up for you to decide…

Cheers