Welcome

You have reached the blog of Keith Elder. Thank you for visiting! Feel free to click the twitter icon to the right and follow me on twitter.

Using RoboCopy for Backups

Posted by Keith Elder | Posted in Windows | Posted on 11-04-2008

3

For some reason, and I can’t explain it, creating a backup of my laptop has been weighing on my mind.  I haven’t gotten my Windows Home Server up and running yet thus I’m having to do it by hand right now.  Since I am about to take a cross country flight I decided to take a snapshot of things before heading out.  My tool of choice is RoboCopy which is included with Vista. 

So I don’t have to stare at the robocopy help screen again here’s how I backuped up my files to my external Western Digital 400GB My Book drive using RoboCopy.  Mainly I’m posting this for me so I won’t have to stare at the command switches again.

robocopy c:\ f:\DellD820Backup /e /efsraw /copyall /dcopy:t /r:0

 

DreamSpark – Fantastic Idea But Only The First Step

Posted by Keith Elder | Posted in .Net, Smart Clients, SQL Server, Windows, XBOX 360 | Posted on 27-02-2008

5

When I was in high school one of my math teachers took it upon himself to teach a few students about computer programming.  It wasn’t a real class it was just something he put together during our free period.  Instead of attending study hall we’d go to this computer programming class.  Basically other students in the school called the few of us taking the class the “Star Trek” club.  Honestly I didn’t watch Star Trek and never have.  It just never interested me.  I know that I just lost thousands of geek points by stating I am not a Star Trek fan publicly but when you grow up on a small farm in Mississippi things need fed, watered, and slopped.  Coming home from school and sitting down to vegetate to watch TV wasn’t in the cards of our household.  Anyway, I digress.  Even though Mr. Foley didn’t have a lot of support from the school in putting together this class, it was the one thing that really got me hooked on computers.  Mr. Foley was only one man though.  It takes a much larger effort to get students interested in technology.  To hook the next generation of students on programming Bill Gates recently announced DreamSpark.  It is a new project that will provide thousands of dollars of free software to students.  Students like me who didn’t have access to the tools companies were using while they learned can now install and leverage the same products for free.   As an educator I’m really excited to see this announcement.   Here are some thoughts as to why I think this is important and what should spark within the community.

What is DreamSpark?

DreamSpark is simple, it’s all about giving students Microsoft professional-level developer and design tools at no charge so you can chase your dreams and create the next big breakthrough in technology – or just get a head start on your career.

DreamSpark makes the following software available to students who register on the site.   The program is available in 11 countries giving millions of students access to professional developer tools.

image

All a student needs is a computer to get started.  They can load Windows Server 2003 onto the machine along with Visual Studio 2008, SQL Server 2005 and Expression Studio and have the same tools we are using today in enterprises across America.  If the student wants to build games for Windows or the XBox then they can install XNA Game Studio.  The amount of things that can be built with these technologies is amazing, especially when you think about WPF Windows Applications and Silverlight.

Ok students, Bill has done his part to give you the software.  What are you going to do with it now?  Someone has to replace a lot of the Elder generation as we age.  Even right now there is a huge demand for developers that know these technologies.  Here are some numbers from the popular online job engines.

Searching for .Net

  • Dice.Com – 11,131 jobs available
  • Monster.Com – Over 5,000 (max return value)
  • CareerBuilder.Com – 3,376

Searching for SQL Server

  • Dice.Com – 14,588
  • Monster.Com – Over 5,000 (max return value)
  • CareerBuilder.Com – 8357

Searching for Windows

  • Dice.Com – 15,480
  • Monster.Com – Over 5,000 (max return value)
  • CareerBuilder.Com – 16,933

Positives About DreamSpark

I Couldn’t Even Buy A Vowel

As I said earlier, the DreamSpark program is a great idea I just wish it was around when I was younger.  When I was in college I was still doing off to the side programming while pursuing my music degree.  I knew there were tools, IDEs, databases and other things that people in large companies used but I was broke.  I was financially embarrassed as my father used to say.  I was so broke I couldn’t even afford to buy a vowel on Wheel of Fortune.  The only option I really had was to learn open source tools.  Back then the open source tools were, well, hard.  There weren’t web pages full of documentation, books, and fancy editors.  You basically first had to learn the VI editor and then try to dig through the man pages and the source code.  To say the experience was painful would honestly be an understatement.  It was slow going.  The sad fact today is that a lot of students are in the same boat I was back then.  DreamSpark fills this gap and puts the latest technology in the student’s reach.  This is wonderful, I can’t express that enough. 

Challenges DreamSpark Faces

It is important that students be offered the opportunity to learn the tools we are using today but the sad fact is only a few will take advantage of it without the community getting in behind this effort.  If 1% of the students downloaded these tools, I would consider that a success.  A perfect benchmark to go against is every student enrolled in a Computer Science program and every student in high school taking computer programing.  If 100% of those students download and use the software then that is a perfect world. 

In order to achieve this goal, it is going to take a lot of effort from those of us in the community.  The following is an open letter to Microsoft, the community and educators who can effect change and help create the next generation of programmers.

Give It Away And They’ll Come

The first thing we must overcome is thinking free equals a lot of use.  Some have heard the line before “Build it, and they will come.”.  The reality is just because something is free doesn’t mean anyone will use it.  If this were the case, we wouldn’t need ads, marketing departments, or ad agencies.  This is the first thing we need to do, spread the word.

Ask yourself this question.  How many students will seriously go download this software?  How many of them will actually learn about it?  There are numbers in the industry I’ve heard repeated of the 5% geek rule.  The premise is take 100 computer science students and only 5% of them are truly dedicated to their profession.   This top 5% are the ones that will more than likely take advantage of DreamSpark, the rest will never know.

We (Microsoft, the community, and educators) need to make a concerted effort to spread the word about DreamSpark.   We need to establish DreamSpark Day events at schools and Universities in our local areas and get this information out.  By information I am not just talking about the bits, that isn’t enough. 

How Long Will It Take?

Here is a pondering question.  How long will it take the education institutions to realize they have thousands of dollars of software available they can build an entire curriculum around?  Unless a concerted effort is made the answer is years.  Why?  Well for starters very few of the professors know the technology.  Sad but true.  When I say “few”, I mean a very small percent. 

There are a few professors out there that are teaching .Net.  Those educators should have no problem, but the majority of professors I’ve encountered love to tell you how their first computer was the size of a house and how they punched cards to program it.  What really saddens me is the “dinosaur” professors as I like to call them are still doing things the way they have for years.  Thankfully this isn’t every professor out there, but there are professors at colleges that still rest on their laurels and just learn enough to teach out of a book.  The majority of these professors have no real world experience in technology except in academia because they have spent their entire lives in academia.  I know these types of professors exist because I had several of these “dinosaur” teachers in college.  I used to call them the “Punchcardasaurus”. 

“Punchcardasaurus – A professor who loves to tell you about the stone age of computers but doesn’t know anything about today’s current technology.”

I can’t begin to tell you how much of a waste of time it is for someone like myself to have to sit through a lecture from a Punchcardasaurus only to correct him or her about how the Internet really works and the Mosaic browser is not really the Internet (true story).  I’m starting to digress but hopefully the point is driven home.  A concerted effort needs to be made at the institutions of learning.

Educational Institutions Already Have Free Software – Open Source

I firmly believe that higher educational institutions should focus more of their efforts putting students in a position to get a job and succeed.  Sadly the curriculum of colleges don’t.  Someone graduating from college today should have experience with all sorts of technologies and languages.  Colleges that just teach C++ are doing their students a grave injustice.  Students should learn C, C++, C#, Obj-C, Java, and a variety of other languages including dynamic languages.  Each of these should expose students to the various types of platforms such as Windows, Unix and OS X. 

The majority of colleges use a lot of open source software to teach their students today because, well, the software doesn’t cost the college nor the students anything.  If a college is just focusing on open source software, they are really doing their students a major disservice.  Students should be educated on both sides of the fence and taught multiple platforms.  In the end it is the students who should decide which platform they feel will be the most valuable to their career or interest, not the educational institution.  The more this is done, the more the students  know and the better chance they have at getting a job.  DreamSpark of course helps to fight the cost factor argument with open source software but it is going to take time for the value to sink in.  Especially in institutions where open source software has a very strong hold with a lot of zealots to play devils advocate.  Yes, these zealots exist, to ignore this fact would not prove wise.

Train The Trainer

The Punchcardasaurus and other professors need help.  It has to start with those teaching others.  Here is another sad but true fact.  Even if a school wanted to build a curriculum around DreamSpark who’d teach it?  If it was offered the odds of it being taught with real world business experience on the platform is very small.  We need to do something to train the current educators how to use these new tools.  There are a variety of ways this could be done.

  1. Use the current Microsoft training curriculum and certification courses to offer classes to faculty and staff.  Schools are off in the summer and it would be a great time for re-educating.
  2. Help the teachers by putting together a standardized curriculum around the DreamSpark project so there is consistency to how the platform is taught.

I personally would be more than willing to spend my time during the summer to put together a train the trainer workshop for those educators willing to participate.  This could be run at night so not to interfere with work duties. 

Already Lagging Behind

Another sad but true fact is educational institutions are years behind in terms of the technology being taught.  I know when I was in college this was true.  For example the language called Java was started in 1991 and released in 1994/1995.   While this was a newly released technology it wouldn’t be taught in the classroom until many years later.  Back then they were teaching us Pascal.  The progression worked something like this.  Once you mastered Pascal, which at the time was already considered a dead language, you could learn C, and then after that C++ and if you stayed around to get your PhD they’d eventually mention Java as an experimental language.  Basic skills are an absolute must have but what chance does a student have at actually getting a job today in a company that uses a technology like .Net where the student has never used it?  Very few companies have a need for engineers that are highly skilled in assembly and compilers.  However, a company would be willing to hire someone who knows how to write applications using Windows Presentation Foundation, Silverlight, Windows Communication Foundation and Workflow Foundation.  All of which have been released in the last year.  I truly feel sorry for students graduating today because the industry changes so quickly.  They need our help.

What Can We Do To Help

There are a lot of challenges that need to be overcome no doubt.  All of them are challenges, not road blocks though.  They can be fixed.  To restate some of the ideas above here are the things we (Microsoft, the community, educators) need to start with.

  1. The Community / Microsoft – Organize some type of event at educational institutions to help spread the word.
  2. The Community / Microsoft – Help train the current educators.
  3. Microsoft – Help the educators standardize a curriculum using existing training information, labs, etc.
  4. Microsoft – Put together a program whereby students build something using the tools and award them with free trips to TechEd or Mix or other conferences.

 

How To Add Holidays to Outlook 2007 Calendar

Posted by Keith Elder | Posted in Howtos, Windows | Posted on 23-01-2008

20

After installing Outlook I have found the default installation does not automatically add holidays to the calendar.  When scheduling appointments and tasks it is important to know the holidays.  For example, a husband can find himself in a lot of trouble if he schedules a dinner with a client on Valentine’s Day.  I have also found instances where users entered the holidays by hand into their calendars.  In either case holidays can be added to Outlook with just a few clicks of the mouse.  Here are the steps you need to take to enable holidays in your Outlook calendar.

Step 1: Tools->Options

In the top menu of Outlook select Tools then Options in the menu.

image

Step 2:  Select Calendar Options

image

Step 3:  Select Add Holidays

In the middle of the next screen select “Add Holidays”.

image

Step 4:  Select Country

image

Press OK.

Step 5: Option Screen

You may or may not get the following screen.

image

If this screen appears just press “Yes”.

Step 6:  Wait for Holidays to Be Added

image

Step 7:  Done

image

Press OK to close the other screens that are open.

Step 8:  Check Calendar

After this you should be able to visit a date that is known to be a holiday like Valentine’s Day for example.  The holiday will be displayed at the top of the calendar in Outlook as shown below.

image

Upgrading AT&T 8525 to Windows Mobile 6

Posted by Keith Elder | Posted in Mobile Devices, Windows | Posted on 05-11-2007

6

AT&T finally released their official ROM to upgrade the 8525 to Windows Mobile 6.  Living on the cutting edge I downloaded the ROM during lunch on Friday and started the update.  The download is currently available from the HTC web site although it is stated the ROM will no longer be available after February 2008.   Why the upgrade will disappear I’m not sure I haven’t investigated it yet.  It is worthy to mention that Good Mobile Messaging users are instructed to not to upgrade to this version.  Below you will find out how the upgrade went along with what features are enabled by default by this ROM.  Although I did the update on Friday I wanted to run it phone for a few days before posting this article.  Let me say that so far it has been really stable and I haven’t found any problems as of yet.

Performing The Upgrade

Once you get the download onto your machine double click the executable.  After a long series of checking your download you will be presented with this screen.

image

What follows next is a series of screens that for some reason scare the crap out of you and make you press next, next, next, OK, Yes I understand, Ok, next, you get the idea.  Basically these screens are telling you to not be an idiot.  Before you start make sure your phone is charged.  Also shut down other applications on your computer and just do the ROM update.  You never know when something could blow up leaving you holding a $400 door stop.  I’m scared but I’ll press next anyway 🙂

image

After this step the update queries the phone for a version.

image

I’m not sure why it didn’t find an existing version.  I didn’t care and just said to update the software anyway. 

image

And once again we get another screen as seen below.  I think the programmer that wrote this program should be fired and HTC should do a better job making users feel warm and fuzzy about doing an update like this. There is no reason why we have to go through all these screens.  I will bet a $1,000,000.00 updating Apple’s iPhone will not be this ridiculous with this many steps.  Ignore stupid screen and press next (again).

image

Finally we are brought to a screen that tells us how long it will take.  Can we just get on with the update!?  Click next again.

 

image

Finally we start updating the phone.  From this point forward it is about a 10 minute wait until the update stops.  Be sure there are no lightening storms in your area and it is a clear sunny day.  Or, use a laptop in case the power may go out.  If this point is interrupted, you officially have a bricked phone.   

image

We are done. 

image

Now we are officially done.   

image

After this step finishes the phone will restart and will run the default setup just like it did when you first bought it.  It will then install the AT&T software and configure it for AT&T’s network. So how does it look?  Well, the AT&T setup is really dreary.  Not pretty at all.  The first thing I suggest it going into settings and removing the AT&T theme and applying the windows mobile 6 theme.  This them is green and looks updated.  Much nicer. 

Screen Shots

Here are some screen shots to show you what is installed and how the phone looks after setup.

This is what the Today screen looks like after the install.  Compared to what it *could* look like it is sad.

TodayScreen

A new feature that I noticed is the airplane mode in the Comm  Manager screen.  The previous version of Mobile 6 I was running didn’t have it.  A nice touch.  It has been so long since I used Mobile 5 I can’t remember if it had this or not.  I don’t think it did but you could turn on flight mode easily in Mobile 5 without it.

AirPlaneMode

 If you are curious which office applications are included you’ll find them under Office Mobile.   Having the ability to read native documents is great and we’ve had this since Mobile 5.

OfficeMobile

AT&T puts a lot of useless crap into your programs folder.  Mainly things they want you to spend money on.  I mean after all, why should they include any applications of real value.  That would just be too cool.  Personally I don’t use any of their bundled apps just the standard built-in ones. 

DefaultPrograms1

More programs below.  FYI RSA and Screen Capture aren’t included by default I added those.

DefaultPrograms2

I mentioned the default theme is pretty bland so I changed it to the Mobile 6 theme.  Here is a screen shot of how that looks.

CalendarMobile6Theme

You’ll notice that nowhere on the phone via these screens shots is there any resemblance of Live search or messenger.  Those applications are not on this ROM update at all.  What the hell AT&T?!  I use Live Search all the time to lookup things and I can’t believe they didn’t include it.   I am also shocked by this because I’ve seen Mobile 6 demo after demo and this is a standard *feature* of Mobile 6.

Things that are bad about this update are 1) the install is still overly complicated and 2) lack of bundled applications.  While we can fix the bundled application problem by installing our own but the install process is still way to complicated.  The install process should be two clicks at the most and leave users feeling warm and fuzzy not scare the hell out of them.  I seriously can’t imagine my Mom doing this update and not having to call me. 

I will say that the phone up to this point has been really stable after the upgrade.  It has gone through hundreds and hundreds of emails and text messages without a problem.  As far as speed wise it is about the same as Mobile 5 if not just a tad faster. 

Should You Upgrade?

Really it is up to you.  I feel that AT&T has stripped this ROM of all of its joy and pleasure by not keeping in the Live stuff.  It just feels very lacking to me and I may seriously consider going back to the XDA ROM release.  If you read Jason Landgridge’s blog post about what’s new in Mobile 6 he outlines a lot of great features but the one missing is live search.  There are some nice features like Internet Sharing and although I get email in HTML format I have yet to have mine look like Jason’s example.  The features in Mobile 6 are good but it isn’t an earth shattering upgrade but it is an improvement.  If you are a geek like myself you would not be caught dead not having the latest ROM, keep your geek points intact and upgrade.  For the rest of the population it is potato potata.  Let me know how your mileage varies.

 

Technorati tags: , , , ,

Internet Explorer Visual C++ Runtime Error

Posted by Keith Elder | Posted in Windows | Posted on 01-11-2007

30

This just started happening to me yesterday after I rebooted this week. 

image

No matter what I tried I kept getting “This application has requested the Runtime to terminate it in an unusual way.  Please contact the application’s support team for more information”.

I did some searches and it was mentioned to uninstall the Google Toolbar.  I never installed it so I looked around for additional add on applications I may have installed and decided to uninstall Google Gears but that didn’t do any good as I suspected.

Later in the evening I happened to close Live Messenger and Live Communicator and all the applications running in my system tray (AIM, etc) so I could create a recording.  After I shut those applications down the problem went away.  I *think* it may have been Live Messenger Beta or AIM that caused the problem.  Regardless which one cause the problem I thought I would post about it in case someone else ran into the same problem. 

By the way, even though I restarted those applications and have not rebooted, the problem hasn’t come back.  Very weird.

UPDATE:  Feb 18th

I ran into this problem again and my latest fix to solve this problem was go to Tools->Options->Advanced and click the “Reset” button at the bottom of the form.  So far so good.