We have 2 guests and no members online
Programming Preface
Computer Programming is a rather diverse subject matter these days, and it would be very difficult to make in-depth subject matter for this page without having a lot of time available to do so. This page has a couple links that might prove helpful to the right person, but is also my soap box to say what products I personally am fond of.
To the Beginner
Programming is very rewarding if you like puzzles, and like getting that feeling of accomplishment when you can either conquer a problem or just see something you dream up realized. With the digital computer canvas, as I like to think of all this, it is often frustrating and confusing, and I don't have any sage advice to make that go away.
One of the areas of programming and computer science in general, that is generally confusing to the new comer, is the various numbering systems that are commonly in use. Now, I wrote a document to help a girl I was dating who was taking a crash college course in the programming language Perl and how it can be applied to DNA research - namely molecular biology.
Well, anyway, this document gave her the the insight she needed to really begin to understand what it was her professor was (from what I gathered: poorly) trying to teach the class. So, here it is if you're so inclined to read it: (Word document) ComputerScience 101 Numbering and Terminology.doc
Favorite Programming Language
My favorite programming language is FreePascal found at www.freepascal.org. Many people cringe when they hear PASCAL, let alone "FREE" PASCAL. But, they did the same thing when I first started getting heavily into Linux and MySQL which are now being used by well known companies such as Yahoo, Google, and Walt Disney to name a few. Pound for Pound, FreePascal is the best programming language I have found. It is far from mainstream, but that's only because the industry is slow to switch technologies due to investments already made in what they are currently using. If they only knew how platform independent this language is currently, the number of users it has worldwide, and all the technical reasons why it is simply superior, they'd consider it more than viable.
Favorite Database Management System (DBMS)
MySQL hands down - its free - its fast - it has different data storage engines to choose from depending on your needs, and its mostly ANSI SQL compliant. you can check it out at www.mysql.org.
Now, there are definitely other DBMS' to choose from out there, like Oracle, Microsoft's SQL Server, Informix, dBase, FoxPro, Dibol ISAM, PostGresSQL, to name just a few. All DBMS' (and software packages in general for that matter) have their pro's and con's and trying to justify why one is better than another can be a lengthy and dicey objective. So I won't bother - I'll just say - I've done my own research - I like MySQL best of all for cost, scalability and its ability to run on so many different platforms... oh yeah, if you ever do a benchmark comparison against other DBMS', you'll see it does a very fine job when the tire meets the pavement!
I wish I had more time to share...
Regrettably, I don't have more time at present to get into other topics of programming, such as how to actually go about it, or how to make a program in C, or how to use Microsoft's Visual Basic for Applications to automate your daily chores but there are many web sites that cover this information already on the internet. I would recommend that before you start writing any elaborate programs that you at least know why the following are important:
Naming conventions,
Platform Independence,
The Object Oriented Programming Model (OOP),
Data Normalization,
The difference between SCRIPTED and COMPILED, and why programs compiled to executable binary format will always out perform scripted languages.
I know that's a lot of information to ask someone to digest before doing any major endeavors, but I make the above recommendation with just cause. If you take the time to learn just a little bit of each of the topics I mentioned above, you will be positioning yourself in a much more desirably place than if you neglect to heed this advice - I PROMISE you will never regret it! I wish someone warned me about the importance of these things when I was just getting started. The real benefit is that the more you know about good software design, the more you'll tend to design less error prone software and you'll find your software is easier to maintain not to mention porting it to run on other platforms - for instance from Windows XP to Macintosh.
BTW - I used to play a lot of video games - but I found that its a much bigger challenge writing them, and I personally find that making programs, video games, and business systems, more challenging and rewarding than any video game I ever played. Additionally, if you progress enough, your high score may actually be recorded in dollars versus "points".
Good Luck!