An update..or maybe several updates

Wow, its been a long time since Ive posted anything.  To be perfectly honest, I havent had much to post about.  Mostly, Ive been swamped since my last post, as if I wasnt before.  Here’s a quick rundown of what Ive been working on since my last post.

Windows Vista Testing
It seems to be a recurring reaction toward anything new from Microsoft, but I absolutely loathe Windows Vista.  I felt the same way about XP when it was released back in 2001.  I hated the change from 2000.  I felt Windows 2000 accomplished everything I needed.  I was forced into using Windows XP back in 2004 when I started with the company I am with currently.  It seems as now I am pretty happy with where Microsoft has taken Windows XP and like many other saavy computer users, I am not willing to give up on it just yet.  Perhaps its just because Im not comfortable with Vista or maybe its because Microsoft is notorious for putting something out in the field that doesnt work, only to come back and patch the hell out of it.  I have to tell you that I am completely unimpressed with the latest incarnation of the Windows product, as it seems to have NOTHING new to offer that is of any consequence.  Sure, there are some security enhancements, the User Account Control being the most obvious.  However, I think Microsoft really didnt think through this process, as it offers no configuration beyond a few group policy entries and is pretty annoying to its users.  Linux/Unix/Mac OS users would say that this really isnt too much of a problem to prompt the user for admin credentials when attempting to do something administrative.  While I dont disagree, it seems to me that you should not be prompted EVERY single time you attempt to do something administrative, especially if you have already provided credentials for a task.

My biggest complaint with Vista is that it is just a drain on computing resources.  Just booting up the system uses up about 512 MB of RAM.  That is after a default installation of the product, with the sidebar turned off, Aero and Flip3D disabled.  During a normal days work, I usually have IM open, Firefox, email, several (5-10) Windows Explorer windows open, several development environment instances, several instances of our application, SQL Query Analyzer, and other windows open.  After investigation, Ive found that my memory climbs to close to 1 GB, which forced a memory upgrade on me (not that Im complaining.  1 GB to 2 GB….NICE!!!).  It just seems to me that Vista chews up resources it doesnt need to and is forcing an unnecessary upgrade on its users.  While I agree that upgrades to the latest OS may be a good idea from a support standpoint, I dont believe it should come at an extra cost of newer hardware.

 Python and VB
I recently was asked to teach a couple of courses at the University I attended several years ago.  I had been asking the director of CS to allow me to teach for some time, since I had done some tutoring in college and found some enjoyment in the tasks given to me during that time.  Anyone who thinks professors dont work hard is out of their mind.  For every class, I was putting in about 3 hours of prep time, not to mention grading and writing exams.  The first class I taught was a basic course in programming, using the Python programming language.  I had little exposure to the language, and was only given a week to prep, as I was coming in during a school year.  The current professor had come down with an illness, and I was to fill in.  Not exactly how I wanted to start teaching.  I have to tell you that it was not my best work, as I was sometimes unprepared for the questions asked.  I felt like I had shortchanged my students a bit because I wasnt as prepared as I should have been.  I wont ever let that happen again.

The second course I taught was in VB.  I was asked to teach this course several months prior to the semester starting, so I had plenty of time to prepare.  The course was an advanced course in VB, teaching client/server technology and integration to database.  Having been a student at this university, I knew that one thing missing from the ciriculum was a real world approach to development.  No courses at this university prepared you for what actually happens in the real world.  So I decided that I was going to add this portion to my course ciriculum.  I have to tell you, its a risk Im glad I took, because it worked out really well, in my opinion.  In addition to teaching about integrating to databases, I had my students work on a project during the entire semester, from design to deployment.  They designed their own project, developed it throughout the semester, turned it in for some testing, then deployed and demonstrated their application to the rest of the class.  During the semester, I saw a lot of the same reactions that I have felt during my time as a software developer.  I saw frustration and joy, sometimes within 5 minutes.  The students also began to think creatively, learning how to solve problems they had never encountered before, and came up with design ideas that others did not.  My goal for the course was to get them to think like developers, and by the end of the semester, I believe they accomplished that goal.  There are several things  I would have done differently, but they are smaller things that would only solidify the skills the students should have as they begin to find development positions.

MightorCMS
As you can see, Mightor Technologies is a subsidiary of Mightor Industries.  Long ago, one of the things that always frustrated me about being a web developer was the inability to be able to create an update without modifying the HTML page.  Databases and web servers have allowed that to become a reality.  There are several solutions out there for entering content without changing the presentation of the pages.  As a hobby project, I began writing my own content management solution, which is still under development, as I only get to work on it when I have free time.  Hopefully, I will be able to have something releasable within the next several months, as my teaching obligations have been fulfilled.

Other Happenings
Other than the above mentioned, there is still work.  I have taken on some additional responsibilities, which is quickly filling any available free time I have.  However, I am enjoying those responsibilities, as it allows me to be more integrated into our processes of developing the software, deploying the software to the end user, and then supporting them when they have issues.  I find it very interesting to see what our users actually do with what we send to them.  I believe it helps me as a developer as it gives me additional items to look for and prevent or allow as necessary.

There’s plenty on the horizon, Im sure.  Im trying to come up with new things for both MT and the Mightor Industries pages.  A lot of the material that I would publish here I am going to begin publishing on the Mightor Industries site, then link the material between the two sites.  If you have requests for information, feel free to send it to mightortech AT gmail DOT com (haha, take that SPAMMERS).

More to come….

April 26th, 2008, posted by tcolvinMI

Why I enjoy Software Development

Recently, Ive found myself enjoying what I do. Besides all the stress that deadlines and whatnot, its really a lot of fun. Yesterday, a friend of mine asked me if there was such a program that would allow you to enter a set of numbers and output them in a random order. I said, probably, but its pretty easy to write. So, in an exercise of my PHP skills, I wrote up a small little program that asks for how many numbers to sequence. From there, a page is generated that allows you to enter the numbers you want. Clicking Submit will then output the numbers you entered in a random sequence. Test it here if you like, http://midev.mightorindustries.net/random/random.html

Here’s how it works:

The first page simply passes one variable, the number of numbers to sequence. We then build a form using a for loop in PHP to start from 1 to the number entered and create an input box for each number up to the number entered. You can enter any number here. Here’s the tricky part. When creating the input boxes, I set them up so they would all have a similar name, with a different suffix. In this case, it was the counter being used by the loop. So each number box had a name of ‘nbr$i’ where $i is some number from 1 to the entered number of numbers to sequence. The final screen pulls each number from $_POST by using $_POST[’nbr’.$i]. Performing this operation, I stuck each value into a standard array. Then passed the array to the shuffle function, which shuffles values in an array. Then, using another loop, I printed the output.

Nothing overly complex, and probably a better way to do it, but it seemed to work for what I needed. Its these sorts of things that I enjoy doing.

By the way, the source code for this project is available here .

May 16th, 2007, posted by tcolvinMI

Moderator Approval on Comments

I just realized today exactly why I wait to approve comments on this site. I just checked my email and had 66 comments to be approved and all 66 of them were spam, mostly pharmacutically related. It is because of this that I will continue to leave moderation of comments turned on, until I can a good reason not to.

Crawlers are out though, thats for sure.

May 7th, 2007, posted by tcolvinMI

An hour with Windows Vista

Awhile ago, I mentioned that I installed Windows Vista Business Edition. However, I havent really had the time, with everything else going on to really give a fair evaluation of the software. Keep in mind that I use Windows XP on a daily basis. Vista has its good points and its bad points. I would say that the bad points are worse than the good points are better. See if you can figure out what my last sentence means.

Point 1: User Account Control
Holy Hell is this thing annoying. Every time I try to do something, it either asks me if its ok to run something or I get the Cancel or Allow screen because Windows doesnt recognize the publisher. Let me clarify. If Vista recognizes who the publisher is, it asks do you want to run or not. If it doesnt, it says Unknown publisher, such and such executable is trying to run on your system, Cancel or Allow. Here are a couple of examples. I downloaded two applications, Winamp, which I use exclusively for playing music. Ive been using it for years. I downloaded it and as soon as I went to run it, I got a message asking if I was sure I wanted to run it. So I clicked Run. Ive seen these sorts of messages in XP since SP2, so its not a big deal. I got the same result when I downloaded Firefox. However, when I went to install Symantec Antivirus 10, I got unrecognized publisher, Cancel or Allow. I got the same message when I went to remove Symantec Antivirus 10, which brings me to a separate point, which I’ll address in a minute. Now I understand that Microsoft is trying to prevent users from running programs that they’re unsure about, but this is a bit ridiculous. Microsoft should be able to differentiate between software from major software vendors and spyware/malware. The alternative to the User Account Control is to turn it off completely, which gives you zero protection. As a software developer, error messages in some cases are good, but you can really go overboard with it in a hurry. For example, consider a simple data entry screen with a couple of fields on it, a string field, a numeric field and a command button. Validation on those fields should occur when the command button is pressed to check for invalid entries into those fields. Only in certain circumstances should you provide an error upon entry in each field validating it. I think Microsoft has gone overboard with the User Account Control. If I ever remember where the article is I read where someone provided a good overview of the User Account Control and its issues, I’ll link it here. Security is one thing. Annoying your users is a completely separate issue and should be AVOIDED.

Point 2: Program Compatability
I mentioned earlier some issues with Symantec Antivirus 10. Turns out that older versions of Symantec Antivirus arent compatable with Windows Vista. Thats no surprise as they’ve overhauled the OS a lot. As part of your evaluation for Vista, I highly recommend looking into the software you use on a daily basis, such as antivirus software, and make sure that its either compatable or that you have an alternative solution prior to upgrading. Once you’ve updated your computer to Vista, many programs may not work. I found out that since Symantec 10 isnt compatable, the installation process gave me several compatability errors and then flat out refused to work once installed. I also found out that trying to remove the software required a reboot, which it does not do in XP. Stupid in my opinion.

Point 3: Reorganization isnt always good.
Perfect example…Display Properties. In XP, you could right click anywhere in your desktop and select Properties, which brings up your Display Properties with six different tabs. This is completely different in Vista and my initial thought is that its not a “good” different. Now, when you right click on the desktop, you get an option called “Personalize” which brings up a screen with several listings that would have been part of the Display Properties in XP. The good thing about it is they do go into more detail about what each option does. However, the design sucks bad. When you click on one of these options, it pops up the display properties screen with a single tab with settings. They didnt even take the time to remove the tabs from the screen. In my opinion, they should have cleaned up the screens so that the tabs no longer exist. I suppose this is more of a design preference than anything else, but I dont like the organization.

Point 4: The good things about Vista.
I did find a few things that I thought were cool. One is the way the start menu is organized. Rather than clicking on Start, All Programs and seeing a plethora of crap thats in your start menu, they’ve now given you a replaced view. So you click start, you see a view with some items. When you click on programs, the list is replaced with a view of all programs, and if you click on a folder with your start menu, such as Accessories, you get a hierarchical view of whats in Accessories. This is much better than branching out into another list view, in my opinion as you can now see better whats in the Accessories menu. I also noticed several things while looking in Accessories. There’s a screen capturing tool, which is handy. Its nothing like Snagit, for those of you familiar with that tool, but its definitely a step in the right direction, and definitely beats Alt + PrintScreen. I also found that the annoying reminders given by Automatic Updates to reboot has improved as they now allow you to set a reminder to reboot of up to 4 hours. This is much better than getting a reminder every five minutes to reboot your system after an update. I noticed that when you click on an open item in your taskbar that it gives you a thumbnail of the program thats open. Not very useful in my opinion, just another fancy part of Vista.

A few other notes.
The Open File dialog screen is different than it is in XP. Im not sure if its a good different or a bad different yet, but it will definitely take some getting used to. It does give you the breadcrumbs view, which is cool. Also, Add/Remove Programs in the Control Panel is now known as “Programs and Features” for those of you trying to figure out where the hell Add/Remove Programs is.

Final Thoughts:
Still not there yet, in my opinion. Some good stuff, but the good stuff doesnt make up for the bad. Microsoft has definitely got some work to do in convincing Windows users that Vista is better than XP.

More to come….

Edit: Turns out that the latest version of Symantec Antivirus (10.2) is compatable with Vista and runs just fine. I wouldnt recommend any other version prior to this one though.

March 31st, 2007, posted by tcolvinMI

Knoppix v5.1.1

So its been awhile but today’s been fairly productive, other than work related items, which have prevented me from tinkering. Ive been itching to get into Linux and expressed in a previous post how I wanted to get into Ubuntu. Well, as kind of a change of pace, I decided to take another approach. It would be extremely handy to have a Linux distribution that you could run free of installation but still be able to configure it however you want. I started researching and came across a configuration for one of my favorite distributions of Linux..Knoppix.

Anyone not familiar with Knoppix should really go out and Google it. Its an incredibly handy thing to have around. Knoppix is a version of Linux that comes as a Live CD, which means you dont need to install it. It comes in two forms, CD and DVD. And both versions have a plethora of applications as part of the Live CD. Live CD’s are handy if you’re thinking of running Linux but dont want to install it yet, or if you need to use it as a support tool. I dont know how many times having a Knoppix CD around has gotten me out of a bind. Ive used it to obtain files off of hard drives that Windows was unable to read. Ive also used it to play music in a computer that didnt have a hard drive in it right after I first moved into my first apartment. If you’re interested in looking into Linux, I highly recommend going this route first. You can go to http://www.knoppix.org to download the latest version.

I did a search on Google for “Knoppix + USB” and came across what is known as the “poor man’s install” of Knoppix. Basically, what you do is partition a hard drive or USB stick to hold the image in which knoppix boots, and a partition to hold your config files and program files. This is handy as it gives you that which you want. No trace of Linux on your computer, but a configurable environment. Ive been able to change desktop wallpaper settings so far with no problems. Granted thats not a major feat, but still a step in the right direction.

Anyone who’s interested in the poor mans installation can go to http://www.knoppix.net/wiki/Basic_Poor_Mans for more instructions.

By the way, on my cable modem, downloading the Knoppix CD this morning using Bit Torrent took less than an hour, with download speeds nearing 600 kbps.

More to come on this for sure.

March 31st, 2007, posted by tcolvinMI

SQL Temporary Tables - #temp_table VS @temp_table

Ive come across something interesting in Microsoft SQL Server 2000 (Ive not tested this anywhere else to see if the same thing is true). When using temp tables in SQL, since they are placed in the tempdb database, Ive found that they can also be locked and prevented from being used. The way I found this was by using temporary tables in a SQL Procedure. Each time the procedure was called, we re-created the temp tables, inserted data into them, and then dropped the tables when finished. However, according to Microsoft’s documentation, it isnt a good idea to do this within a SQL procedure, as the procedure could be called multiple times, causing possible locking situations, depending on how many times its being called. The solution we’ve found was to use a local variable with the “table” datatype. This functions much the same way as CREATE TABLE except there are no locks placed on the table. The other good thing about it is that you dont have to drop the table once you’re finished. The nature of the SQL proc is to drop from memory any variables declared at the end of proc execution. If you’re using temporary tables in a procedure, I would highly recommend this path, as it wont prevent you from executing the procedure just because a temp table is locked. I’ll try to post an example later.

March 5th, 2007, posted by tcolvinMI

Another go at Linux

Its been a little quiet lately on this front, mostly because of overwork. However, I had some time, so I decided to take another go at Linux. Linux is an open source, free (we’ll get to that discussion later) operating system written by many different software developers around the world. It is based off of the Unix OS and is said to be incredibly stable. Many web servers are configured using Linux, as well as other applications that have gone to Linux because of its stability. Ive played with it a few times, but never had the hardware to run it full time and didnt want to dual boot in case something would happen to my PC. Now, since I have plenty of extra hardware, I figured I’d take my old laptop and install Ubuntu on it. Currently, the installer is just about finished. From there I’ll be tackling the one thing that always seems to screw me up, Wireless access. I’ll have more on that as soon as I get it working, including a HOWTO for my particular system.

February 24th, 2007, posted by tcolvinMI

Vista Experience - Part I: Installation

I finally got around to installing Vista. I read an article on Digg the other day that contradicted what I had read previously about upgrading Vista. It said that you could perform a clean installation by installing Vista twice, essentially mimicking the XP or 2000 installation. However, I tried this and it DOES NOT WORK. Unless I did something wrong, which is entirely possible, it doesnt work. It will not accept a upgrade product key.

Now onto the installation. The actual installation process is really easy and is much more graphical than the XP install. Anyone familiar with the XP installation process starts off with a text based set of install screens that allow you to format partitions, and perform repairs, among other things. Vista on the other hand gives you a complete graphical view of the installation, mostly because of its image based install. Now, there is one one piece to this that I didnt appreciate. During the installation process, the computer reboots twice, once after updates are installed and again when the process is completed.

Upon completion of the second reboot, the installation asks to create a username and password. Then to name the computer. Instead of the cryptic naming convention that the installer used to come up with in XP and prior, the installer assumes the username entered, and appends a “-PC” to the computer name. This is a lot better than COLVIN573vis24h.

Once this was done, Vista then evaluated my systems performance, which it seems to do only once after the installation. Once this is complete, Vista boots up. The entire install took less than 30 minutes. It did seem to update all of my drivers, but I never made it far enough to check whether or not they updated. The system did perform some updates automatically, for drivers.

Upon booting into Vista, I was able to get on the net fairly easily. However, the first thing I started looking for was product activation. Once I found where that was at (I dont remember off the top of my head) I tried changing my product key, which I found didnt work because my copy of Vista is an upgrade copy.

So where am I now? I have a 30 gig partition formatting for an install of XP. Im going to use the Microsoft suggestion and upgrade from XP to Vista. I have a simple formula for this process…..Upgrade Version of Vista != Clean installation. This cannot be done, as far as I can tell.

More details and screenshots (taken w/ the digital camera) to come.

February 2nd, 2007, posted by tcolvinMI

Windows Vista Released Today

Vista is finally out. I havent read anything on figures as of yet, to see how many consumers are actually buying it. Interesting thing, the other day I mentioned about what a pain it was going to be to upgrade to Vista, and some of the details involved in that. Well, today, we got our latest set of CD/DVD’s from Microsoft at work. We got a copy of Vista, but its an upgrade copy. So my plan is to step through the upgrade process. Over the next several weeks, I’ll post my findings of the upgrade process and about Vista in general. I’ll do my best to post screen shots of the installation process. This process will assume that you’ve already installed and fully patched XP prior to running the upgrade, although Im going to see what happens when you try to boot from the upgrade CD, just for informational purposes.

Check back this evening for more details. May be a slow night though, I have some server hardware replacement to do this evening, so I may not get much done.

Edit: So I was just looking at documentation on Microsoft’s technet site. Seems to me like they’re providing documentation on how to use Vista for IT Professionals. Im just curious as to how much of their documentation applies to the GR (General Release to those not in the software business) since it says Beta 2 in the documentation. An interesting thing to check.

January 30th, 2007, posted by tcolvinMI

Why I hate MySpace

As Ive mentioned in the About page, I do have a MySpace. My first impression was that I hated it. I had read so many articles and stories about how badly it sucked with HTML, and how difficult it was to use. After using it for the last several months, I have come to the conclusion that I really hate MySpace for two very important reasons.

The first reason why I hate MySpace is how much managing a profile sucks. If you wish to customize your page, you have to place any style sheets and HTML code in the About Me section. This is dumb. It seems to me, even if you’re a super n00b, that there should be a customization tab/option that allows you better control over customization. Also, they give you no guide on how to customize, other than giving you the option to use HTML. And perhaps the non-geek users of MySpace dont want to use HTML. My answer to that is to give them some kind of simple editor that is supported by MySpace. After doing a Google Search for MySpace profile editors, there are hundreds out there. Why couldnt MySpace come up with a standard one that makes the entire process easier to do. While I feel comfortable with editing HTML and CSS, a normal user may not. Seems to me that any piece of software that allows customization should have a feature that takes care of this and that it is laid out properly and easy to use.

The other major thing that irritates me about MySpace is how insecure it is, and how easy it is for someone to obtain your password. This is commonly called phishing. Ive seen where someone has created a screen that looks identical to the MySpace login page, if you mistype your password or username. Thats how phishers get your info. You see the page that you expect to see, but you dont see where it came from. MySpace users have seen this before and have been encouraged to change their passwords, but are not warned about what they’ve actually done. Once this has been done, basically, it becomes more of an annoyance than anything else. But this is a more serious issue as MySpace becomes more popular. I believe if they continue to gain popularity, this problem will become more of an issue. It is my opinion that MySpace developers need to start taking security seriously before phishing causes people to stop using the site. I posted on the MI forums the other day about a list of myspace usernames and passwords becoming available on the net, which caused the site to be shutdown. I think its high time MySpace became more aware of security and started cracking down on the procedures they have in place, before it costs them.

January 28th, 2007, posted by tcolvinMI