Archive for category programming

Tech Tips from Appdev to Virtual PC

Quick Tips on Virtual PC development, LDAP, Training, Security, and eBay


Just an assortment of hopefully useful miscellaneous items from things I’ve been working on lately along with resources for further review.

  • Virtual PCs (VPC): If you’re in consulting you will find it necessary to develop programs on various platforms- Windows 2003, 2008, XP, Vista.  The client doesn’t always have these available for testing purposes…that’s where the invaluable virtual PC comes into play.  By purchasing a Microsoft Technet subscription for $200/year you’ll get access to download all versions of Windows OS’s and tools.  This in conjunction with Microsoft Virtual PC software will allow you to run any OS inside the virtual environment along with necessary tools.  These virtual PC’s can take up quite a bit of disk space, so it’s a good idea to also buy a small USB external drive to store these images.  This has the advantage of providing multiple virtual images on a small portable drive you can use on almost any PC.  I literally couldn’t do my job without these tools and rely on them every day.
  • Getting VPC 2007 running on Windows 7: I found there are a few quirks when installing and running Microsoft Virtual PC 2007.  Firstly, if you’ve already installed the newer Windows Virtual PC on Windows 7, you’ll have to UNINSTALL it via the control panel applet (clicking on the Windows components will show this option, it’s not in the normal list of programs).  If you do not do this, you will get errors when running VPC 2007.  Next, when running make sure you always run VPC as an administrator (right click on the program icon and choose “Run as Administrator”), otherwise you’ll get an error that the virtual hard drive is read only and other cryptic errors.  Once I did those two things, the program runs flawlessly!
  • Server 2008 and Active Directory/LDAP lookups: I’m currently working on a prototype webapp which takes the current logged in Windows user, looks up that user in active directory, and pre-fills fields with user info such as full name, email, and phone number.  To do this, first create a VPC (see above) for Windows Server 2008 and Visual Studio.  You’ll also have to set up active directory and a domain controller on that test image.  Then, refer to the following article I found which covers this topic in great and useful detail: .  The code is remarkably simple in .NET 3.5…a definite improvement over 2.0.
  • Online video training:  I’m constantly studying various Visual Studio features for certifications.  I find that reading books or on-line articles extremely boring and recently purchased a 1 year subscription to AppDev online training. You can occasionally find deals to get full access to all classes for $1000, otherwise you can purchase just what you’re interested in. I find the video training really engaging and a nice complement to traditional book studying.  This in conjunction with transcender practice tests gives excellent coverage for the Microsoft certification exams.  Note- I’m not affiliated with these companies, just a happy customer.
  • Windows Phone 7 Development:  Microsoft’s new mobile platform is shipping soon and it looks to be very competitive.  Here’s some more info from Paul Thurrott’s site: Hands On With Windows Phone 7.  There’s free tools available now to develop applications, I haven’t tried them out yet but will do so eventually:
  • eBay, PayPal, and the USPS: I recently sold something on eBay…it’s been a while and was really happy with the transaction. The whole process is now seamless and user-friendly from listing through payment and even to shipping via USPS.  I was pleased to learn that after you’re paid in PayPal, you can print (and pay for) a shipping label right from PayPal including insurance.  Both you and the buyer gets an email receipt with confirmation number. The USPS flat rate priority mail boxes (provided for free from the post office) are the way to go…you can stuff them with any amount of stuff for about $10, apply your shipping label, and even have your mail carrier pick it up for you.  Nice!
  • Security Updates:  The hacker conference Black Hat is going on now, and so the annual parade of security flaws uncovered is flowing fast. This is just a friendly reminder to keep everything up to date as there’s been serious flaws found in FireFox, Windows (a really bad one involving .lnk shortcuts), Flash, and Itunes/Quicktime.  Don’t waste a moment downloading and installing the latest updates for these programs.  And why you’re at it, have you updated your backups lately?  I thought so….

How to Develop iPhone Apps For Free

There’s an interesting (and free) resource if you’re interested in learning how to program the iPhone- how about a class from Stanford University including video lectures, pdf’s of lecture materials, and other reference materials? The class web page can be found here: Stanford iPhone Class

iphone appsStanford actually offers many free classes via Apple’s iTunes U program and a summary of these classes can be found here: Stanford iTunes classesAll you have to do is subscribe via iTunes and you get access to a wealth of materials.

The iPhone development class has been offered for a while and is very popular (millions of downloads).  I’ve downloaded the first couple lectures and found them very interesting and a great way to expand your knowledge with only your time investment.  One catch- in order to actually work the assignments you need access to a system running MacOS 10 and the iPhone SDK (free from Apple’s developer site).  You’ll also have to learn a new programming language (Objective-C).   A summary of the steps can be found in this article: 8 Steps to iPhone Development.

There is a .NET development environment called MonoTouch by Novell, but this does cost $399, a convenient (albeit expensive) alternative for Microsoft developers which still requires a Macintosh to do the actual development.

Give it a try and maybe you’ll develop new skills or create the next great iPhone and iPad application.


The Simple Things

While working on some enhancements for a client’s application I was reminded how sometimes simple changes can be powerful, useful, and appreciated by end users.

I was giving a demo of new functionality, some of which was pretty slick, but the changes which got the most positive reaction and comments from users were three simple and seemingly boring ones: sorting a list in descending order so newest items were at top, defaulting some date fields to the current date, and filtering out old records (but giving a way to show all of them).  These ideas came from the users themselves but I never realized how useful they could be.

Not having these simple changes were really annoying on a daily basis to users because it forced extra steps to complete very common functions.  Nobody wants to click through an extra long list because the default sort order in database is ascending rather than descending…and constantly entering today’s date for a field when no other date makes sense is irritating.

It’s so easy for programmers to get stuck in the rut of just getting things done when some time should be spent in the user’s head..imagine how your application is perceived and used doing real work throughout the work day.  You might discover something simple which can make a huge difference to many people.

Computer Programming for Kids

kids computerDo you have a kid in your life who has an interest in computers and programming?  If so, please encourage this passion and let them try it out!  Not only could this be a lucrative career, but will definitely teach important logic and patience skills critical for all ages.  Today’s kid could be tomorrows world-changer…most of the popular web 2.0 companies were founded by people in their 20’s who grew up as kid programmers.  Anyone above about 10 years old who has some computer experience should be old enough to tackle simple programming tasks and learn these skills.

There aren’t too many resources out there for this area, but I recently came across a great book geared for all beginners:  Hello World!: Computer Programming for Kids and Other Beginners.  This book was written by a father and his son and uses the Python environment to each programming tasks appropriate for kids. This is a great idea and something to consider working with your children on.  There’s also a fun interview with both father and son on Hanselminutes (by the way, Scott’s BlogDeveloper Tools list is incredibly useful). and podcasts are fantastic for all Microsoft .NET techies. His

Microsoft also recently released a visual programming environment for children called Kodu which runs on the Xbox 360 and PC.  It’s geared for game development and uses a colorful icon-based interface.

As a kid I sharpened my skills on the legendary Commodore 64 (remember peeks, pokes, and sprites?).  I wrote a game where your cannon tried to shoot a ship, and an accounting program which helped my Dad balance his business ledger (saving countless hours of calculations).  I also ported a tutor program The Math Teacher (somehow the ad for this is on an internet archive) with my Uncle Ralph from the NEC to Commodore 64 and even sold a few copies.  The time spent wasn’t only fun and productive but laid the groundwork for a career working in the computer field.  So, give it a try and learn together with your kid and maybe something wonderful will happen.