Pages

December 29, 2007

Next Project??

So, I'm done with grad school (for now anyway... a whole story in itself) and I'm thinking that I need a new project. I have a bit of development work I'm doing for my mother's business and that should be finished soon, but I need something I can use as my hobby.

Here are my ideas so far:
  • Lego Mindstorms NXT Robots
    • I got one of these for X-mas 2006 and I got a couple new books for it this X-mas. I know how to use Java to program the NXT block now so I need to come up with some bots I want to build.


  • Start an open source project
    • I have no idea what I would want to create, but it would be a big step towards owning my own business.


  • Develop a business application
    • Mrs. Black Dilbert has a lot of things she has to keep track of in her profession. I think that I could make her a few apps that would help ease some of the things she has to do each day.


  • Develop an application to monitor a monthly financial budget
    • I promised Mrs. Black Dilbert this one a few months ago. We came up with a budget to help cut down on my spending on nerdy things, but I've somehow managed to dodge the budget so far. :-)

Hmmm...that's quite a list. I think I may not have a lot of trouble finding things to do. That is, until all of these people can talk me into going for a PhD. Actually, Dr. Dilbert doesn't sound too bad...

December 21, 2007

C# Gangsta

Watch out... I am completing the end of my initial C# training course and to my surprise I am not having any trouble with it. I'm having more trouble trying to work in the XP pairs on the labs. People work at different speeds and when it comes to my nerdy software development I pick things up quickly and like to move quickly, but that is another issue for another time (ha ha). So far in the course we have done everything from accessing databases (which is VERY easy to do in .NET 2005 and up) and working with XML to tying applications into Microsoft Excel. The course has been very enjoyable and I am looking forward to going back to the advanced course early next year. This short week of training is probably going to really push me forward at work and I can't wait for the chance to show off what I have learned.

Embedded SQL vs. Stored Procedures

I've been working on a small pet project lately that involves storing and retrieving data from a database. I have about 10 - 12 different queries that have been written to handle all of the data. Initially I began embedding all of the queries into my code and using the normal JDBC PreparedStatements to make all of the calls. Then I needed to make a few changes to data model and corresponding DB schema. I had to go back into each piece of code that contained an embedded SQL statement and make updates to account for my data changes. This was a serious pain in the @$$ as I spent a couple hours updating code due to an external change. It was then I realized that my application had become too coupled with the database schema with the embedded SQL. I decided it would be better to move my SQL queries into stored procedures and simply call the stored procedures from my code.

I learned the following lessons from this:
  • If an application needs to execute more than a few queries it is better to have the app call a stored procedure rather than embed SQL. This way the application does not need to know any information about the database tables and can interact with a group of stored procedures that create a pseudo-interface to the database.
  • By calling the stored procedures in the code, I was able to switch to different types of databases as long as I loaded the stored procedures. I was able to quickly test my application against SQL Server Express and MySQL with no problems.
  • To make things even simpler in the code, I created constants for the stored procedures names. This allowed me to not have to keep track of the exact names of the stored procedures and gave me a central place to update stored procedure names to be used by my code.
By no means do I consider myself an expert, but I just thought I would share what I found as it made things much easier for me in the development of my app.

December 15, 2007

The Walk!!



So it is done!! I have now graduated and am deciding on my next move. There was much talk today by professors and my family about going for a Doctorate degree. I am considering it, but it will not be something I undertake in the immediate future. I need at least at least a year long break from all the school work. If I was to go back to the alma mater for the Doctorate I would have to take another 18 hours before I did two long semesters of full time study, in which I wouldn't really be able to work. Not to mention I would need to decide in what area I plan to specialize. The thesis for this time around was in Networks and I think I want to go more the software engineering route from this point forward. Oh well, it's a thought at this point at least.

For now I am in training next week for C# .NET programming. It is the first of two training courses I am taking. I need to add some more tricks to my bag and throwing a little .NET into the mix won't hurt. I'm already planning on taking the Java programmer's certification exam in the next couple of months so I can make my way to the higher Java developer certifications.

Anyway, I have done a lot of learning in the past few years and I have plans for a lot of learning in the future. I think everyone should learn as it will only expand the mind and bring about new solutions to problems.