May 30, 2008

eBooks and eReaders

For a few months now I've been thinking about getting an eReader. The Sony Reader seems nice, and it has been around for a while, but Amazon Kindle has been getting a lot of press since it came out. Seems like it has a few too many features for my tastes (I just want a basic device that I can load books onto.)

Take a look as these two and let me know if any of you have any preference, or any other good ideas.

May 29, 2008

Technorati

Signed up for Technorati to see what I can do to increase visibility to the blog.

Technorati Profile

Developer Efficiency (C# vs. C++)

Ever have one of those nights where you can't sleep. Sometimes me brain will not stop thinking so I can fall asleep.

Lately at work I have been working on adding new features to our companies web site. We recently rewrote the site in C# and ASP .NET which has been wonderful. I've been able to use C# for the past 6 years or so, and overall find it better than Java, C/C++, and any other language I know for general purpose programming. Other languages may have some better features than C#, but overall I prefer C#.

Unfortunately most of our code base is in C++. Every time I have to go back and work in our old code base I feel like I hit a brick wall. I just feel so much more productive and effective when I use C#. Before everyone starts yelling about the merits of C++ let me clarify.
  1. Our C++ code base is not very well organized or designed
  2. I have much more experience with C# (Though I'm not a C++ novice either)
  3. The added features/power of C++ are not worth the extra complexity most of the time
C# has most of the important features from C++ and many that C++ doesn't have. There are very few cases where I wish I had something extra in C# that is in C++, but the opposite happens quite frequently. With modern computers today, what little performance hit you get from using a memory managed language that complies to byte code, is far outweighed by the many benefits (such as programmer efficiency) gained.

Also I find it much easier to move from one project to another and one company to another when using the .NET framework. The .NET framework includes most of the standard features/classes/functions I need on a daily basis. It doesn't have everything, but close enough for most things. With C++ there is the STL, but beyond that different companies use different libraries for everything else, and often write some of their own libraries. If we hire a developer familiar with C# I know that they should be right at home in our new C# code base, because most of what we use is already in the .NET framework. If we need someone for C++ then we either make sure that already know all of the different 3rd party libraries we use, or we assume it will take them a while to get up to speed. Regardless they will have to get up to speed on our in house C++ libraries.

From both a technical and managerial standpoint I am glad we are moving more and more towards C# and away from C++.

May 20, 2008

Changing Passwords for local windows accounts

At work today some of the IT guys were talking about needing to change the local Administrator accounts on a bunch of the computers. They were planning on updating each password manually by going to each computer and logging in. The computers are all part of a domain, but apparently Microsoft hasn't made an easy way to update local machine information like this.

I remembered seeing an article in Microsoft TechNet magazine about how to automate this. I thought it had been windows powershell script, but it wasn't. Once I found the article, it ended up being a visual basic script for Excel. All you need to do is provide a list of computer names, and give it a new password to set. It's not as simple or easy to use as a standalone application, but all of the apps I found didn't look very good, or cost more than they should. If someone knows of a good free application or even better an open source application (maybe C#), let me know.

May 19, 2008

The Beginning

I finally decided to break down and start a blog. I've been thinking about it for a while, I was just trying to decide what platform to use. Since I am a software engineer I had considered writing some sort of basic blog/CMS system, but decided against it for now. Coding is fun, but it just seems like I don't ever have enough time to do what I need to, let alone everything else. Who knows what will really end up here (assuming I keep posting).