Friday, August 24, 2007

5 video tutorials on AJAX

I was looking around for video tutorials for AJAX and Javascript and I came across Stian Solberg's blog.  The videos include one about debugging AJAX with Firebug and an introduction to jQuery.

Technorati Tags: , , ,

Friday, June 15, 2007

JRuby 1.0 released

If you have been using Java for some time, but have dabbled in Ruby as of late, you might be interested in knowing that JRuby 1.0 has been released. It provides a 100% pure-Java implementation of the Ruby programming language based on version 1.8.5 of the Ruby interpreter.

Monday, June 11, 2007

.NET Garbage Collector

How much do you really know about the garbage collector in .NET?  Take the .NET GC PopQuiz and then read the followup to find out the real answers.

Thursday, December 14, 2006

Borland BDS 2005 Problem

I have been struggling with an issue when launching Borland BDS 2005 lately. I kept seeing an error during launch that an EPackageRegistrationException in coreide90.bpl. I tried searching for everything that I could find to fix the issue, but there was just no information beyond they fix for the same error involving HTMLHelp.IDERegister.

I am running Vista, by the way. I had missed on the error dialog
earlier that there was an access denied error. So, I thought about a
possible permissions issue which did not really seem to make sense.
Nonetheless, I went through the process of changing the permissions on
my login user account for the "C:\Program Files\Borland" directory from
Read+Execute to Full Control.

Upon launching the BDS environment, I had no more errors. Finally! Success!

Saturday, September 02, 2006

SQL Server

I have used SQL Server a lot in the past and I have written simple SELECT, INSERT, and DELETE statements, but I have been diving into it a lot more lately. I have messed around lately with triggers and stored procedures.

I am currently working on complex stored procedures making use of data output from another stored procedure. Getting the SELECT statements just right when joining tables is what is currently throwing me for a loop.

Wednesday, August 23, 2006

Obscure T-SQL Annoyance

We are moving toward the use of SQL Server 2005 at work, so I have been getting my head wrapped around things like stored procedures and triggers. I have been using SQL Server Management Studio to create my stored procedures on my test database.

I created a stored procedure tonight that would insert a new record in the database and return the new identity in an output parameter. My stored procedure looked like this...
Use testing

@firstname varchar(20) = NULL,
@lastname varchar(30) = NULL,
@NameID int OUTPUT
SET @NameID = 0 -- return zero if the insert fails

IF @firstname IS NOT NULL AND @lastname IS NOT NULL
FROM names
WHERE firstname = @firstname
and lastname = @lastname

INSERT INTO names (firstname, lastname)
VALUES (@firstname, @lastname)


Everything that I did just would not work. I kept getting a NULL back for the output parameter value. My test went something like this....

EXEC AddName 'John', 'Smith', @NameID

I used the Template Explorer and setup a new stored procedure on the test database using the template. It worked like a charm with the output parameter being properly populated when the stored procedure returned.

I finally figured it out a little while ago. That little light blue word called OUTPUT over on the right after the last parameter in the EXEC statement for the stored procedure. I completely missed that on the template code example. I did not realize that you had to include the direction declaration there since the procedure itself already designated the last parameter as an output parameter.

My EXEC statement should have looked like this to work properly...

EXEC AddName 'John', 'Smith', @NameID OUTPUT

Oh well... I still have my hair. :)

Technorati Tags: , , ,

Saturday, August 19, 2006

Nerd Factor

I came across the Nerd Quiz on another blog this afternoon and just had to find out my nerd factor after 20 years of using computers.

I am nerdier than 65% of all people. Are you nerdier? Click here to find out!

Sunday, August 06, 2006

MCPD - Microsoft Certified Professional Developer

Because of the way that we are headed at work, I have decided to go the Microsoft Certified Professional Developer route. To do this, I have to get the Microsoft Certified Technology Specialist (MCTS) certification first. I am going to do this on the .NET 2.0 Windows Applications path first and then the Web Applications path.

I ordered the MCTS Self-Paced Training Kit (Exam 70-536) late last week. I want to try and do this in the next six months to a year.

Thursday, July 27, 2006

Four Days on Rails: Day 1 complete

I finished working through the Day 1 section of Four Days on Rails this evening. It was a struggle at first trying to get everything setup, especially on Windows (still not fixed there), but that is behind me now. The deeper I get into it, the more interesting it gets.

Issues with RoR, Apache, and Windows

I have had some issues getting started, especially on my Dell laptop. I have been trying to get the tutorial application working on Apache 2 on the laptop, but I am unable to get it going that way.

On my Power Mac, everything went very smoothly.

Wednesday, July 12, 2006

Finally started with RoR

I finally got started on this yesterday. I pulled down the InstantRails setup and got it all unzipped, but I could not get my first small application (from a tutorial) working. I kept getting an error message when trying to launch the server.

I pulled down Locomotive and set it up on my Power Mac at home and got the same tutorial working in just a matter of minutes.

I need to try again on the Windows laptop today and see if I can get it working there.

Technorati Tags: , , , , ,

Sunday, July 09, 2006

Chapter 1 of "Agile Web Development with Rails"

I finally picked up the book and started reading today. I had to do something other than all of the moving of boxes that I have been doing as of late.

I am eager to get into later chapters now and start producing something with Rails.

Technorati Tags: , , ,

Tuesday, May 09, 2006 - Scott Hanselman - Scott Hanselman's 2005 Ultimate Developer and Power Users Tool List

Scott Hanselman's 2005 Ultimate Developer and Power Users Tool List is just awesome if you are a software developer. Scott tells you about all the tools that he uses that might be helpful in your day-to-day activities.

Technorati Tags: , ,

Friday, April 28, 2006

Sample source for Visual Studio 2005

What better than having sample source from the very company who brought us Visual Studio 2005 and the .NET 2.0 Framework? Check out the 101 Samples for Visual Studio 2005.

Technorati Tags: , , , ,

Take web apps offline for maintenance

I found a very interesting entry at ScottGu's Blog regarding maintenance on ASP.NET 2.0 web applications. It basically consists of adding a file named asp_offline.htm to the root directory of your web application and ASP.NET 2.0 will shut down the app.

read more

Technorati Tags:

SQL Server 2005 Express

I was playing around with SQL Server Express 2005 at work today. We are thinking about using it for the next release of one of our products. I moved my database over and attached it to the server and started working in Visual Studio 2005.

When I finished creating a CLR based stored procedure, on deployment, I got an error about “Incorrect syntax near 'EXTERNAL'”. I did some searching and finally found that you have to update the compatibility index on your database when moving from SQL Server 2000 to SQL Server 2005. The command to do this is ...

Exec sp_dbcmptlevel 'DatabaseName', '90'

Even after setting the compatibility index, I was still unable to execute my stored procedure, because CLR Integration was not enabled for SQL Server 2005 Express. I had to use the SQL Server Surface Area Configuration tool to enable the CLR Integration. Once that was done, all worked fine.

I hope this helps someone to avoid headaches in the future.

Technorati Tags: , , ,

Thursday, April 27, 2006

AJAX and Atlas

I just started looking into AJAX. I am a .NET developer by trade, so naturally, I am looking at the Atlas framework which plugs into ASP.NET and lets you take advantage of AJAX techniques in web apps.
I worked with a tutorial last night and I was not impressed, but I watched a tutorial video earlier today and I now understand it a lot more. It is some very interesting technology.

Technorati Tags: , , ,

Wednesday, April 26, 2006

SQL weakness

One of my big weaknesses at work is SQL. I have been at the same job for almost 17 years. Unfortunately, my skills have been retarded due to the things that we do with our client software.

I was doing some things for a new piece of software today that uses a MSSQL for data persistence. I was doing a join on two tables, but I was not getting the results back that I expected. I finally figured out that I needed a “left join”, because not all of the records for one table had matching records in the joined table.

Friday, December 16, 2005

Geek Heaven

I came across the Dictionary of Algorithms and Data Structures tonight on Digg. This site has everything you would ever want to know on an exhaustive list of algorithms, algorithmic techniques, data structures, archetypical problems, and related definitions.

Dictionary of Algorithms and Data Structures

Technorati Tags: ,

Sunday, December 11, 2005

Ten Commandments of Egoless Programming

I came across this list tonight. These are some very interesting principles to live by in regards to one's programming career.

Ten Commandments of Egoless Programming - (Lamont Adams, | Sunday, July 14 2002)

  1. Understand and accept that you will make mistakes. The point is to find them early, before they make it into production. Fortunately, except for the few of us developing rocket guidance software at JPL, mistakes are rarely fatal in our industry, so we can, and should, learn, laugh, and move on.
  2. You are not your code. Remember that the entire point of a review is to find problems, and problems will be found. Don't take it personally when one is uncovered.
  3. No matter how much "karate" you know, someone else will always know more. Such an individual can teach you some new moves if you ask. Seek and accept input from others, especially when you think it's not needed.
  4. Don't rewrite code without consultation. There's a fine line between "fixing code" and "rewriting code." Know the difference, and pursue stylistic changes within the framework of a code review, not as a lone enforcer.
  5. Treat people who know less than you with respect, deference, and patience. Nontechnical people who deal with developers on a regular basis almost universally hold the opinion that we are prima donnas at best and crybabies at worst. Don't reinforce this stereotype with anger and impatience.
  6. The only constant in the world is change. Be open to it and accept it with a smile. Look at each change to your requirements, platform, or tool as a new challenge, not as some serious inconvenience to be fought.
  7. The only true authority stems from knowledge, not from position. Knowledge engenders authority, and authority engenders respect—so if you want respect in an egoless environment, cultivate knowledge.
  8. Fight for what you believe, but gracefully accept defeat. Understand that sometimes your ideas will be overruled. Even if you do turn out to be right, don't take revenge or say, "I told you so" more than a few times at most, and don't make your dearly departed idea a martyr or rallying cry.
  9. Don't be "the guy in the room." Don't be the guy coding in the dark office emerging only to buy cola. The guy in the room is out of touch, out of sight, and out of control and has no place in an open, collaborative environment.
  10. Critique code instead of people—be kind to the coder, not to the code. As much as possible, make all of your comments positive and oriented to improving the code. Relate comments to local standards, program specs, increased performance, etc

Thursday, December 08, 2005

SQL Server

Currently installing SQL Server 2005. I get to do some work with the latest SQL Server version starting today. Time to go visit the local bookstore.


Tuesday, December 06, 2005

Ten essential add-ins for Visual Studio

James Avery has posted an article on MSDN where he focuses on 10 essential add-ins that every Visual Studio developer must have now.

I have used TestDriven.Net in the past myself, but I have not used any of the other tools. I need to download the tools that Mr. Avery talks about in the article and try them out.

read more | tags: , ,

Thursday, November 24, 2005


I started working on my MCSD a while back, but we started doing more Java at work. Recently, we have been doing a lot more C#, so I am interested in picking it up again. I want to complete it this time, though.

Wednesday, November 09, 2005


I used to use Delphi in my job all the time. I got moved to a different project since that time and I have not really used Delphi in over two years. I had to start using it a bit this past week at work. It is so funny to feel like a newbie when you sit down to something after programming for 16+ years. :)

I finally started remembering things and got back up to speed.

tags: , ,

Tuesday, September 13, 2005

Eclipse Wiki

I just came across the Eclipse Wiki today. According to the site, it was created to provide the development community with a place to share information about Eclipse and its sub-projects.

read more | tags: , ,

Thursday, August 18, 2005

Using JUnit Test Groups

I came across an interesting article on DogBiscuit today that talks about how to setup test groups in JUnit if you have expensive setup code that would normally be run before each test.

read more | tags:

Saturday, July 16, 2005

Does Intel's compiler cripple AMD performance?

One of the claims in AMD's sensational antitrust complaint against Intel has been getting some play around the web lately. Specifically, folks are focusing on what AMD says about Intel compilers and how they react to the presence of AMD processors. Here's the meat of the claim, taken directly from the AMD complaint:

read more | digg story

Sunday, July 10, 2005

Regular Expression Library

A library of pre-written regular expressions that you can plug into your code. Also, features a regular expression online testing engine against inputted text or a website text. Very handy resource!

read more | digg story

Thursday, July 07, 2005

Excited about programming again

For the past year or so, I have had a situation at work where I have been limited in what I could due to some issues between my current company and my previous company. It seemed like everything that I got put on, a couple of weeks later, someone came along and said that I could not work on that particular project. My job seemed to be going no place.

I got word this week that things have finally been cleared up and I can go back to working on some of the projects that I had been attempting to work on in tthe past. This was like someone lifting a huge elephant right off my back or something. I had been quite down as of late due to all of this.

After getting this news this week, I have actually been interested in programming again. Hopefully everything will start picking up and works gets fun again.

Friday, July 01, 2005

Programming doldrums

Have you ever been in a state where there was so much that you wanted to do in programming, yet you didn't really want to do anything? I am at that point right now in my programming life. I have been jerked, pulled, and tossed around so much lately that I do not know which way is up.

In the past 3 months, I have been on and off projects that used Java, C++, C#, Delphi, and VB. It is like someone threw it all in a blender, turned it up on high, and out comes a lot of mush.

I have a personal project that I was really getting into when I was working with Java, but lately, I have been on a C++ kick. I got the Power Mac back in May and I want to do some programming in Objective-C and Cocoa for it, but that is just another ingredient to add to the mix.

I am not really sure what I want to do at this point. I just sit here at night now playing around in iTunes listening to various technical podcasts and I do not do any programming. I need a plan for something that I can stick to and finish. I guess I should just pick up the personal project again.

I just hope that I have not gotten into such a rut that I cannot get myself out of it.

Tuesday, June 28, 2005

AMD files suit against Intel

Wow! This one caught me off guard. I can certainly expect something like this from a software company that is fighting against the big fish in the pond, but I did not expect something like this in the computer chip market. I wonder if this has anything to do with Apple's decision to use Intel for their product line going forward?

Read the CNET article for more information.

Eclipse 3.1 released at JavaOne released the latest version of the Eclipse development environment at JavaOne yesterday. Much of the excitement regarding Eclipse 3.1 centered on the Rich Client Platform upon which you can build very professional looking applications.

The Rich Client Platform has been greatly enhanced in this version of Eclipse. The system has improved performance, expanded tool support, bettery support for Java Web Start (JNLP), and Visual Editor support.

For more information and a podcast on the launch, check out this story on Between the Lines.

Sunday, June 26, 2005

Blog puke

I am not sure what exactly happened today at Blogger, but my mother emailed me asking about my blog and why the Blogroll was gone. I took a look and the template had reverted to the default and lost my changes at some point in the past 36 hours. It is fixed now.

Thursday, June 23, 2005

Eclipse CDT project 3.0 RC0 has also released the first release candidate for the CDT (C/C++ Development Tools) Project. This is an excellent plugin development environment for Eclipse that gives full C/C++ development and debugging capabilities. CDT 3.0 RC0 runs under Eclipse 3.1 M7 and later.

Eclipse 3.1 RC3 has released the Eclipse 3.1 RC3 development environment for all platforms. The environment seems to be getting quicker and more stable with each RC release at this point.