Welcome

Welcome

Welcome to opgenorth.net.  This is where I post things related to software development, specifically using Microsoft .NET.  By day, I'm a software developer in Edmonton, Alberta, Canada.  By night, I do more of the same, but for my own personal interest.  I've been known to play World of Warcraft for longer than is healthy.

If you find yourself needing a contract .NET developer, feel free to look me up.

Blog

The Experiment, +11 days.  

Wednesday, July 02, 2008 7:47:41 PM

Today I'm about 11 days into my experiment with openSUSE as my primary OS.  So far, so good.  I've been using my client's Windows XP VMware image for a few days now, and really the only major problem is, as mentioned, that VMware doesn't seem to want to share the sound card with the VM.  Not a big deal.

Keith Elder has an excellent post on build a Windows 2008 server VMware image, I highly recommend it.  I would like to expand on his post just one teeny tiny bit. 

Offically, Windows 2008 Server and Windows Vista are not supported on VMWare Workstation 5.0 or on VMWare Server 1.0.x.  This doesn't mean much, but if you're setting up a VMware image that you'd like to share between Workstation and Server, make sure that when you are creating the image you specify VMware Workstation 5.0 (see images below).  If you try to "Upgrade or Change Version..." from VMware 6 to VMware 5, you will clobber your NIC real good and lose and not be able to recover it short of some act of God. Not even tech support at VMware can help you.  Ask me how I know.

Also, just after you create your VM image, you might want to edit your .VMX file, and add these three lines:

mainMem.useNamedFile=FALSE
sched.mem.pshare.enable = "FALSE"
MemTrimRate = 0

The first line is pretty important if you're going to be using VMware under Linux.  If you're running under Windows, this isn't as much of an issue.  Under Linux, a temporary file for the RAM will be created which then gets deleted when the VM shuts down.  If you're running your VM's off a USB disk, this file is typically in /tmp, which is probably a local disk, and so will therefore have faster disk access (being that you don't have to go over the USB2 cable).  If you don't have this line, it seems that VMware will spit up a nasty, obscure message to you about not being able to open the VM because it is corrupt and/or VMware doesn't have access to it.

The second and third lines Keith explains in his post one Step 14.  Go read there.

 

Rod Paddock At EDMUG 

Friday, June 27, 2008 12:01:00 PM

Last night (Thursday, June 26th) Rod Paddock gave a talk on using Silverlight 2.0 to the Edmonton .NET User Group.  I'd say that Rod did a pretty good job, despite the fact that the beta of both Silverlight and Expression Blend didn't exactly want to play nice all the time.  It's definitely perked my interest in the technology, and I can see a lot of business potential for it. 

The rich user experience that Silverlight brings to the web-browser, will, I think raise the bar for what web applications will do for businesses.  Forget all the buzz about ASP.NET MVC or MonoRail or ASP.NET 3.5.  This is just another layer of makeup on the tired, old, hooker that is application development in .NET.  Silverlight is what will make business users oh and ah and get excited about web apps again.

Those who were at last night's talk will remember that Rod was using a fairly large database that he got from freedb.  It's fairly large, not quite 7GB of data.  I did get a copy of it, in MS-SQL Server format.  When I compressed it (tar.gz), I got it down to 2GB in size.  If you're interested in a copy of the database for your own purposes, leave me a comment here and we'll work something out. 

Note:  I would like to state that Don is usually drunk, and as such you shouldn't believe some of the wild things he said last night, especially about me.

The Experiment, Day 3 & 4 

Wednesday, June 25, 2008 4:58:34 PM

Just a quick recap of days 3 & 4 of running with openSUSE 11 as my primary OS.  By far and large, not a lot of complaints.  As I do most of my work on a laptop, I tend to keep my VM's on external HDD's connected via USB2.  I've been doing this for a while now, under Windows.

I'm not to sure I'm a big fan of how openSUSE mounts (or tries to mount) my external HDD.  It just doesn't seem as...seamless...as how Windows XP does it.  I'm use to just plugging in my external HDD, and not worrying about it until it's time to disconnect.  openSUSE seems to get a big confused with automounting, and I always seem to have to help it along.  It's something I can live with for now. 

The other thing I notice is that openSUSE doesn't seem to want to share the sound card with VMware.  I'm getting more than a few alerts from VMware that the sound card is not available and can't be used.  Again, nothing to critical - for now.

The third thing I'm noticing is that some HDD enclosures seem to work better than others.  I'm noticing that at least one HDD enclosure (a SmartDisk FireLite with a 250GB HDD inside) doesn't seem to want to consistently and reliably work.  I did have VMware (and openSUSE) complain that they could not write that particular HDD as it could no longer be found.

So far, I am pleased with how Linux is handling NTFS as well.  I remember back five or six years ago that NTFS support for Linux was pretty much read-only.  Read-write was for people who were delusionally insane or who go to the same hair stylist as Justice Grey.

A couple of lessons learned:

  • Get lots of disk space.  I'm thinking it may be time to get a 320GB HD for my laptop, and keeping my "working" VM's there.  I'd have something like a 100 GB partition for Windows XP, and then 220GB for openSUSE.
  • Backups - I'm very happy that I made copies of my VM's and worked off those. 
  • Fear not the command line.  But if you're a *nix guys, you're probably there already.

The Experiment Day 2. 

Monday, June 23, 2008 9:40:29 PM

As I indicated yesterday, I'm doing a little experiment to try and see if I can reduce my dependency on Window.  Yesterday I installed OpenSUSE 11, today I was going to install some extra stuff into OpenSUSE, and see if I can get VMware Workstation up and running.

First thing that that I did wrong was install the wrong version of OpenSUSE.  Silly old me wasn't paying attention when I downloaded the ISO, and I grabbed the 32-bit ISO.  I wanted the x64_86 edition.  So, I downloaded that DVD, and then re-installed from scratch.

With that out of the way, I preceeded to install the following:

  • VMWare Workstation 6.04.
  • FireFox 3
  • Opera 9.5
  • Git
  • Subversion
  • Mono 1.9
  • MySQL Query Browser
  • Adobe Air for Linux, beta 1.  Twitter
  • Pidgin
  • NTFS-3G (for read/write access to NTFS partitions)
  • ntfs-config (to help config this read/write access to NTFS partitions).

Now VMware Workstation 6.04 is kind of what I'm after, so that was the recent focus.  Installing VMware on OpenSUSE 11 isn't that hard.  Basically, I did the following:

  1. Download VMware Workstation for Linux.  I used the RPM.  I installed via YAST2.
  2. Went and got kernel-sources, gcc, gcc-c++, and make.
  3. Dropped to a bash shell, su to root.
  4. Type vmware-install.pl to get VMware workstation.  I just went with all the defaults at the prompts.
  5. Run VMware

One thing you might find when you try to open up your VM's.  You might get a wacky error message like: VMware Workstation unrecoverable error: (vcpu-0)
Failed to allocate page for guest RAM!  Best to just follow the advice in this blog post.

Next on the TODO list is to try, on some test VM's, developing on Linux.  If no problems after some undisclosed amount of time, then I guess maybe I'll trying working full-time under Linux.

And, if that works, then the true test/question:  can I get World of Warcraft  working on Linux?

The Experiment Begins 

Sunday, June 22, 2008 9:59:26 PM

I've decided to try a little experiment, and see how things will go, computing-wise, if I minimize my dependence on Windows.  Now, I don't want to run out and buy a Mac (not yet, anyway), so I'm taking a middle ground.

I first repartitioned my hard drive (thanks gparted), and set aside a 15GB partition.  On this partition, I installed OpenSUSE 11.

My plan is to run OpenSUSE 11 as the host OS, and then use VMware to run VM's for my work and such.

I'm curious as to how it will work out.  I know the one hurdle I would like to come is the stupid DRM that Apple iTunes uses.  Anybody have some suggestions, so I can do this while it's still legal to format-shift in Canada (or perhaps I should spell it Kanada if bill C-61 passes).

FAIL: Windows Vista 64 As An O/S For the Home 

Thursday, June 19, 2008 4:02:58 PM

Recently I upgraded the family computer.  Well, I upgraded the hardware and changed the operating system to Windows Vista 64bit.  This is the computer that my kids play their games on, my wife does her work and her post-graduate work on.  I use it to play the odd bit of World of Warcraft and surf the web.  To me, it's not that important.  To my family, not being able to play Freddie Fish or using bloated crap-ware to keep in touch with colleagues and friends is pretty close to catastrophic.

Today, I've decided to repave the family PC with good old Windows XP, and turn my back on Vista 64bit.  The straw that broke the camel's back was when I went to setup the kids U.B. Funkeys, and much to my dismay the driver that this toy needs aren't supported under Vista 64.  Simply put, to much of my kid's software and gizmos just don't work under Windows 64 bit.  Now, some of you might say, "Wait - it's the responsibility of the vendor to ensure compatibility".  Yes, it is.  However, for the here and now, my kids and wife don't care who should be supporting what.  Stuff doesn't work, they yell/whine/cry at me.

I'm sure Windows 64 bit is fine for other roles, but as an O/S for a home PC that need to run older games and such, it FAILS.

Pragmatism wins, Windows 64 bit loses.  Windows XP gets reinstalled.

CSA - Martian Weather Report 

Tuesday, June 17, 2008 7:41:43 AM

CSA - Martian Weather Report

Now this is kind of neat:  weather reports from Mars.  Now, some of you might think, BORING.  Think about this first:  This isn't a "stick your head out the window" kind of thing.  This involved placing a man-made object tens of millions of kilometres away on another planet, and then transmitting that data back to Earth where big, wrinkly, brains can interpret that data and where you and I can see this with a simple click of our mouse.  Smooth, little, brains like mine boggle at the thought of this.

Anyway, I guess the latest weather report kind of makes our Canadian winters seem not so bad.   At least the Martian cold is a dry cold.

Time For New a new Blog Engine? 

Monday, June 16, 2008 9:50:16 PM

For the longest time, almost three years now, I've been running mojoPortal for my website.  My basic criteria at the time was pretty simple:  open-source, Mono compatible, and supports either MySQL or PostgreSQL for a database, and something that seem to be supported/actively developed.  I settled on mojoPortal.  Joe Audette, the author of mojoPortal, has been spending the past 4+ years working on mojoPortal, and as done a pretty good job getting it to work with a variety of databases, and on both Linux and Windows. 

Lately, I've been thinking that perhaps mojoPortal is getting a bit to big/bloated for what I need.  Don't get me wrong, I still like mojoPortal.  However, after the past three years, I've learned that all I really need is a simple blogging engine, with Windows Live Writer support (as an aside, I'm working on WLW support for mojoPortal.  Hoping to merge the code into trunk soon - really).  mojoPortal seems to have all that, and then more.  It's a lot of stuff I don't really need, and I'm sure that most security types will tell you that you just don't install stuff you don't need on your PC's - the less there is to hack, the better.

Now, what criteria would I have for a new blog engine?  Well, in no particular order:

  1. Windows Live Writer support
  2. Can run on Linux.  Either Mono (C#) compatible, or something like Ruby or boo
  3. If it does use a database, then MySQL
  4. Open Source
  5. Relatively light weight, compared to mojoPortal.  My definition of "light-weight" is rather abitrary, based on what I see when I dig through through the code of this new uber-blog engine.
  6. Modular design

Ideally, I think it would be nice if there was a blog engine that uses MonoRail, or perhaps ASP.NET MVC.  However, I really haven't found anything yet that fits the bill. I suppose if I was independently wealthy, I'd take the time and just write my own, but, honestly, I just don't see the point to that.

If you have any suggestions, I'd like to hear about them.  Feel free to speak up.

Another Annoying Test Post On The Blog. 

Monday, June 16, 2008 9:19:32 PM

This is just a test post, please feel free to ignore.  In fact, you are encouraged to ignore this blog post.  Just checking to see if the error that pops up when users post a comment is fixed.

Update:  Well, it looks like the problem is fixed.  And, to boot, it looks like I have the editing of posts with Windows Live Writer working too.

Ubuntu 8.04 and Me 

Wednesday, June 11, 2008 7:41:05 PM

Installing Hardy Heron

I'm in the process of setting up a new box to run some virtual machines for me, it's nothing to fancy, but it is adequate for my needs.  It's a humble little PC with scads of RAM (8GB) and a big hard drive (750GB).  I figured that setting this up would be a snap, as I had done it several times before - well for Ubuntu 7.10 Gutsy Gibbon.  Installing Linux these days is pretty simple and quick, compared to say, install Windows.

Turns out that things were quite as straight forward as I thought it would be.  The first glitch happened when I booted from the CD. I went through the first bit of the Ubuntu install, at which point I was informed that the CDROM could not be mounted.  Somewhat confusing, as I had just booted from the CD no problem.

Seems that there is a bug in the installer, and when you try to install on a PC with more than 8GB of RAM, the CD ROM gets "lost".  The work around is that when you're booting, you modify the startup so that only 4GB of RAM is used.  You do this by appending mem=4G at the end of the boot parameters.  Of course, when you're done installing, you have to edit the boot parameters and remove the mem=4G so that you get all your RAM back.  Of course, be aware that when you do this, you loose your CD-ROM drive.

Installing VMware Server

This had to have been one of the most painless installations of anything I have ever done - truly.  Installing VMware on Ubuntu isn't a big deal, you just have to make sure that you have all your dependencies up to date.  And, when you're on x86_64 there are a couple extras that you don't normally need on i386.  However, on the Ubuntu Forurms, someone (a Canadian it seems) went to the effort of putting together a nice little bash script that does everything for you.  Well, not everything, you still have to get the serial number for VMware server.  Grab the script, make sure you read the directions posted, and away you go.  It's nice when things are that simple.

Now the next great adventure is to move my VM's onto the new server.  Shouldn't be a big problem, as I do have some external HDD's for just this type of thing.

NHAML View Engine for MonoRail 

Friday, June 06, 2008 6:15:38 AM

This seems interesting:  an NHaml view engine has been implemented for MonoRail.  One thing about this that I find neat is that the NHaml view engine for the ASP.NET MVC was ported back to MonoRail.

Great to see such cross-pollination of ideas and code between the two projects.

D-Day 

Friday, June 06, 2008 5:22:51 AM

Today is the 64th anniversary of D-Day.  If you are a Canadian, take a moment today and read up about 3rd Canadian Infantry Division and the 14, 000 Canadians which went ashore at Juno Beach (the 2nd most heavily defended beach of the invasion). 

Likewise, if you're British, I would suggest taking a moment today and reading up on Sword and Gold beach. 

And, if you are American, then perhaps read up on Utah and Omaha beach (the most heavily defended beach of the whole invasion).  And no, watching Saving Private Ryan doesn't count.

Granted military history (which I read a lot of) can be kind of boring and slow sometimes, but D-Day was a very important day in the 20th century, and some of the troops involved had been training for almost a year for just this one day.

Testing (Ignore) 

Tuesday, June 03, 2008 3:49:52 PM

Okay, this is just a test of the new build of mojoPortal that I just threw up on my web server.

This should now allow for editing of blog posts via Windows Live Writer.  Hopefully, I can merge with the trunk and then Joe can do an offical release.

PDF Abuse 

Friday, May 30, 2008 9:02:36 PM

<rant>
It might just be cranky old me whining and complaining, but I'm finding it harder and harder to understand, why, in this day of Web 2.0 and all things wonderful on the internet, companies still serve up PDF's as their primary form of communication.  I mean really, it's not that hard to serve up an HTML page that I can read in my browser.  Why force me to download and look at a PDF?

Provide me with a link that I can download the PDF from, but if I'm taking my time to visit your corporate website to find out about some product or to look at a schedule or an item in your inventory, don't waste my time or my bandwidth with some bulky, bloated PDF.  Show me what I want to see.

</rant>

IronRuby Is Now Running Rails 

Friday, May 30, 2008 6:42:43 AM

John Lam just blogged about how they now have IronRuby running Rails (unmodified).  It sounds like there is still work to be done, but still noteworthy in my books.

Copyright 2007, 2008 Tom Opgenorth

del.icio.us


MVP Logo

Twitter