Wednesday, May 06, 2009

Hurray for Microsoft

Today I tried installing Service Pack 3 for Windows XP on my parent's computer. The computer no longer boots. Three cheers for Microsoft!

Edit: Booting into safe mode and uninstalling various hotfixes seems to have remedied the issue. I swear I will never install Windows ever again, so if this goes kaput, then my parents and brother will be forced into learning Ubuntu.

Saturday, January 03, 2009

HP Fail

I tried helping a neighbour install his new Hewlett Packard print/fax/scan/copy machine today, but it did not go well. The person who set up Windows for this neighbour (not me, I swear) decided to letter the root drive as E: instead of the regular standard of C:. The HP drivers didn't quite like this, and refused to install on drive E:, meaning my neighbour has now gone out to return the HP and buy a Canon machine. It's surprising that HP can't write software that allows one to install their software on any old drive. It's not like it came up with a box saying "where is Windows? Perhaps we can recover from this...", instead it plain old failed, and decided to uninstall everything it had done up to that point. Quite unfortunate, seeing as how I've had pretty good support for HP on my Linux box. Of course, changing the drive lettering is out of the question, since that will just mess up every other program on the system.

Lesson 1: Use the industry standard of installing Windows to drive C:, and don't invent your own standard.

Lesson 2: Don't assume that the customer's computer will be exactly like your own. Allow your software to be installed to any place possible. It's okay to have C:/Program Files/... as a default, but forcing that on users is a bad idea.

Update (2009/01/07): HP responded, with the following excerpt:
"I would like to inform you that the HP Software is designed to install in C: drive by default. It will look for the C: drive automatically during the installation and we will not be able to install the software to any other drive. So in order to resolve the issue I request you to change drive letter on your computer to C: drive."
Thank you HP. Thanks a lot.

Monday, December 22, 2008

Threading is Fun?

Not at the moment...

Monday, September 01, 2008

Dual Screens with Nvidia 5200

According to the official specs, my video card cannot output video to two monitors at the same time. There have been many times where I would have liked to set up this feature, but could not. Over the summer I have had one monitor hooked up to my computer, while another monitor was hooked up to my brothers computer. Today is the day that I move into Vancouver, so I was messing around with the monitors to get my X.org settings ready for some monitor switching, and what do I discover? I can output to both monitors at the same time. This must have been a new feature of a recent Nvidia driver, or maybe it's doing it in error, and my video card is going to overheat and burnout. I now have about one hour to play around with Twinview, et cetera, before I have to pack up the computer and leave. Why couldn't I have discovered this at the *start* of the summer?

Sunday, August 03, 2008

Sardis OSM Complete

Well, I've completed adding all the public streets in Sardis to Open Street Map. It may take around a week for the mapnik renderer to catch up to my changes, but you can view the map at http://openstreetmap.org/?lat=49.1245&lon=-121.9701&zoom=13&layers=B00FTF. The precise completion area can be seen in the following image, in highlighted red:



Last summer I managed to take my bike down every single road inside that red area. I'm not sure what the total distance covered is, but it's quite a bit. This summer I went around with my camera collecting road names from street signs (and finding several errors in road names on Google Maps!)

You'll notice (if you know the area) that I haven't gone up Promontory, or into Yarrow or Cultus yet.

Also not included in the map are private roads. While I could've easily gone to collect information on these roads, that would require trespassing, so I decided to leave those roads out. If someone gets invited onto the property, or actually lives on the private roads, then they can do the survey and really complete the map. Private roads that I didn't survey include: trailer parks, gated communities, and native reserve roads.

Also included in the map so far are many of the fast food restaurants in the area, gas stations, rail lines, schools, and high voltage power lines/sub stations.

I'm going to take a break from mapping for a bit to do other things, but I might be able to do some of Yarrow or Chilliwack before the summer is out. I notice that Vancouver down near UBC is almost completed (by other people), so I will have nothing to do over the school year!

Monday, June 16, 2008

GPS Track Collection Will Not Resume

Well, after about six months of waiting my dad finally got his broken gps (Magellan eXplorist) replaced with a new model (Magellan Triton). The company was kind enough to send out this updated model for free. You can read previous posts over the past month to see how my experience with it has been. After further experimentation I have found that the unit will shut down for no apparent reason. It's not a power saving mode (since it has to do a cold re-acquire and the track it's saving has a jump in it), nor is it a timed option for an automatic shutoff (the length of time for it to shut off has been random as far as I can tell {could be moon phases?}). Because the unit turns itself off at random times on its own, it's useless to me. My dad could still use it for his fishing stuff (since he doesn't need the unit on for any more than a couple minutes at a time anyways), but he dislikes the unit for his own reasons.

Friday, June 13, 2008

Stupid Magellan

Magellan can bite my shiny metal ass.

My dad's older Magellan eXplorist broke down, so my dad sent it in to Magellan to have it repaired. They said it couldn't be done, and wanted my dad to pay money for them to ship out a new one to him. After about five months of email and phone calls, they finally broke down and sent my dad a new gps unit for free. The thing is, they aren't making eXplorists anymore, so they sent my dad a new Triton 500. I'm fairly confident in saying that this product, though newer, is worse than the eXplorist. And the eXplorist was already a pretty bad unit. There are just so many terrible things with this unit, I'm surprised Magellan is still in business. When you hook it up to your computer you have to use Magellan's software to manage the files on your gps unit. The eXplorist would show up as a mass storage device, so you could transfer tracks, waypoints and other files quite easily just by using the file manager in your preferred operating system. With the Triton, they have decided to take out USB mass storage support, and force you to use their own shitty software, and believe me, it's terrible. The proprietary software that you have to use to manage your gps unit doesn't even come in the box, you have to download it from their website, and before you can download it, you have to sign up. You forget all hope of using the Triton in Linux. I've tried for several hours to get this thing to work in Linux, with no hope in sight. Hell, Magellan doesn't even have a USB vendor id listed in the Linux USB ID page, nor do they have one listed in the official USB-IF Company List. Naturally, the USB-IF wants me to pay $2000 to view the Integrators List. Seeing as how they're not on the first two lists, I'm beginning to wonder if they are certified to use USB at all. When you hook the Triton up to your computer (Linux or Windows) it can randomly crash. Yes, this product is that good. There are so many little braindead things about this unit, it makes me wonder if they did any testing on it. There are features listed on the main menu in the device that won't work, because Magellan is planning on enabling those features in a future firmware upgrade. Basically, this means they wanted to have a bullet point on the box, but didn't have the time to implement it.

I would encourage everyone I know to never purchase a Magellan product. I've used two of their products so far, and both turned out to be crap.

Thursday, June 12, 2008

More testing of Ubuntu

Yesterday I forgot to mention one critical test; connecting an external monitor through the VGA cable. This is particularly important because laptops are often used for giving presentations, and the ability to hook up a laptop to a projector with ease is very important. In Vista, when I plug the laptop into the television, the screen automatically gets initialized and the tv gets the last setting that I had used (which is clone). Unfortunately, things were not as smooth in Ubuntu. There was no automagic stuff, and no popups or notifications that anything had been plugged in. Using the gnome-display-properties utility also did not turn up anything. I had to install nvidia-settings in order to detect and manage the television screen. This is something that Gnome could work on, seeing as how the nvidia-settings utility is supposed to be open source, so code could be taken from there and put into gnome-display-properties.

I also said yesterday that I will have to test my firewire vid cam, but upon inspection I see that the laptop has a four pin 1394 plug, but the cable I have is six pin. I will have to wait and see what I can use for testing firewire on this.

Anyways, the UPS guy just dropped off my Dad's new gps unit, and my brother wants the laptop for midi recording, so I have to go. Out.

Wednesday, June 11, 2008

Laptop vs. Ubuntu

Today I decided to install Ubuntu Hardy on my Dad's laptop. I set aside 12 GiB of space on the hard drive to make the necessary Linux partitions, and went to work at it. I decided to use the 64-bit version instead of the 32-bit, seeing as how I use 64 on my main desktop all the time, and Adobe Flash/Nvidia are better with 64 bit these days. I must say that I am really pleasantly surprised with how well Ubuntu works on this thing. First, a rundown of the hardware:
MSI Mega Book M670, model number MS-1632
AMD Turion64x2
nVidia Corporation MCP51 PCI-X GeForce Go 6100
nVidia Corporation MCP51 USB Controller
nVidia Corporation MCP51 High Definition Audio
nVidia Corporation MCP51 Ethernet Controller
O2 Micro, Inc. Firewire (IEEE 1394)
O2 Micro, Inc. Integrated MMC/SD Controller
O2 Micro, Inc. Integrated MS/xD Controller
RaLink RT2561/RT61 rev B 802.11g

This laptop was purchased for cheap ($600) at the NCIX grand reopening sale they had last summer, so I'm not expecting much for a low-cost laptop like this. Surprisingly everything has worked so far. Right out of the box I got a pretty good experience. The laptop booted fine, straight into the correct resolution, with the bongo drum sounds right on the first startup. Ethernet and wireless network connections both worked right out of the box. Network Manager found my home network, and let me connect to it. Using the CPU Frequency Scaling Applet and Powertop, I can see that cpu scaling is working properly. Plugging headphones in the front jack works, disabling the main speakers as it should. Extra function buttons (volume up/down, open email, open web browser) all work, with the volume buttons coming up with fancy overlay graphics to show the volume. The "Email Button" opens Evolution, and the "Internet Button" opens Firefox. Plugging in an SD card from my digital camera automatically mounts the card on the desktop, and opens F-Spot, asking me if I want to import photos. Rhythmbox can see the DAAP share that I've got set up on my desktop computer, so I can listen to music by streaming between the two computers (Apple changed their iTunes protocol, which means not even the official iTunes can stream from Rhythmbox, see my current MSN alias name.) The built in microphone captures audio using the Sound Recorder application, though the microphone is crappy and picks up a lot of background noise. Plugging in my brother's new electronic drum kit (midi through usb) worked out of the box, and a standard install of Rosegarden was recording midi input quite easily. Vista's driver finder utility couldn't even tell who the manufacturer was, and I had to spend half an hour trying to get drivers set up in Vista. Really, quite a bit on this laptop works.

What doesn't work out of the box? It's important to know where things don't work out of the box, so we can see where improvements need to be made.

Ubuntu does not ship with mp3 decoding capabilities, and these have to be installed by the end user. This is the fault of MPEG-LA, and Linux distros can't do anything about this. When trying to play an mp3 over daap in Rhythmbox, it prompted me to install codecs, and opened a simple version of synaptic with two options: gstreamer0.10-ffmpeg and gstreamer0.10-plugins-ugly. I decided to first try the ffmpeg package, seeing as how that is a well supported package, and ffmpeg is a very good project. Unfortunately, this did not allow Rhythmbox to play mp3 files. Why it gave me an option that wouldn't work, I don't know, and this is one area where Ubuntu needs to improve. Installing plugins-ugly got mp3 working just fine.

Suspend and hibernate did not work out of the box. Upon trying to revive the system, the video did nothing (black screen, backlight stayed off). Using the restricted drivers manager built into Ubuntu (jockey-gtk) to install the proprietary nvidia drivers fixed all hibernate/suspend issues for me. These now work marvelously, even coming up a bit faster than Vista does. Not having proper drivers to do power management for the graphics card is definitely Nvidia's fault, but hopefully they will follow AMD's lead and start releasing specs documents and the situation will improve.

The last thing that doesn't work: the little red led light behind the headphone jack doesn't light up when you plug/unplug headphones. It lights up in Vista, but not in Ubuntu. Oh well.

Things not tested: ieee1394 - the only device I have for testing firewire is a video camera. I don't have any firewire hard drives or anything like that, so the old digital 8mm camera is all I've got for testing. I'm not holding out much hope for it, though, as the 1394 stack in the Linux kernel is currently going through a major overhaul. There have actually been many regressions in 1394 for Linux. Add on to this the fact that video editing software is difficult to use in Linux, and testing the firewire probably won't go that well.

Overall, I would say that Linux certainly has come a long way. In some respects it is more difficult to use than Vista (having to install mp3 support myself), but in other ways it is better than Vista (Vista gave me weeks of trouble and forcing me to email RaLink and Linksys support to get my wireless working properly). Of course, other things like Adobe Flash and dvd playback won't work out of the box in Ubuntu, but neither do they work out of the box in Vista. Overall the experience has been excellent. Due to Vistas crap that it gave me for wireless networking, I'd have to say that Ubuntu Hardy was actually easier to get installed and running than Vista was (and Vista came preinstalled from the factory with the laptop). Hurrah for Linux, perhaps we are closer to 10x10.

Monday, December 31, 2007

Guitar Hero III Buttons

A quick followup to my last post: My brother also got Guitar Hero III: Legends of Rock for Christmas (the Wii was his own money about a month ago), and I suspected that the guitar would be recognized as a classic controller, but didn't confirm it until this morning. So, here is the key setup for the Guitar Hero III controller (all under the Classic Controller extension) (I'm doing this right-handed, although it will remain the same for left-handed players, just that the reversible buttons get switched in software):
Green = A
Red = B
Yellow = X
Blue = Y
Orange = ZLeft (which is on top of the classic controller)
Whammy = Pressure Sensitive Left (which is on top of the classic controller), where neutral position = 0x10 (half way), and full whammy = 0x1A (at least on this controller, the game requires whammy calibration, so it may be that other controllers have slightly different values)
Strum Down = Digital Pad Down (software would have to reverse this for left-handed players)
Strum Up = D-Pad Up (again, reverse in software for lefties)
- Button = - Button on Classic Controller
+ Button = + Button
Analog Stick = Left Analog Stick, where moving right for right-handed players (away from guitar neck, towards inset WiiMote) = right, and moving down for right-handed players (towards guitar heel/neckjoint, away from players body) = down. This would be reversed in software for lefties.

Now I have to set up Frets on Fire to support this...

How To Get WiiMotes Working With Linux

So my brother recently got himself a Wii, and I decided it would be fun if I started trying to get the Wii Remote working with Linux. Apparently I'm not the first to do this, and the work of other people has made it quite easy to get working. So, here are my steps to getting the WiiMote working in Ubuntu Gutsy:
1 - Purchase an ASUS WL-BTD201M adapter from NCIX
2 - Get all the required packages from the repository by running
sudo apt-get install wmgui wminput
this will pull in all dependencies including bluez (the bluetooth api, and various libraries)
3 - Run wmgui (should be in Applications->Accessories menu, or run from command line)
4 - Go to File->Connect in wmgui
5 - Click the 1 and 2 buttons at the same time on your WiiMote to put it into discovery mode
6 - Click OK on the prompt that came up in wmgui
7 - watch as your WiiMote now works in Linux!

Getting your WiiMote to control your mouse in Linux and do other fun things requires some more steps:
3 - Do steps 1 and 2 above
4 - Run the command
sudo modprobe uinput
5 - Put your WiiMote into discovery mode by pressing 1+2
6 - Run the command
sudo wminput
7 - Observe as the tilt of your WiiMote controls the mouse position, and the buttons control mouse clicks!

There are different config files for wminput, each can be viewed/modified at /etc/cwiid/wminput/ and you can run different config files by either changing the "default" symbolic link, or passing the -c option to wminput, eg:
sudo wminput -c ir_ptr

See how easy that was! Have fun!

Saturday, January 06, 2007

Last Open Street Map

This is probably going to be my last contribution to OpenStreetMap, at least for a while. Dad and I went for a walk (him for the exercise, me for the mapping), and have now surpassed the up-to-datedness of Google Maps. You see, back when the military base was open the PMQs (there's no Wikipedia page for PMQs that I want, so you get gc.ca instead) had a main street running through it called "Boulevard", and the latest Google Maps reflects this. Now that Garrison Crossing has moved in and rebuilt the area, the street has been renamed to "Garrison Boulevard". Thanks to me Open Street Map has the new name, and Google Maps still has the old name.

For this update, Canterbury Drive has been completed, Keith Wilson runs from Boundary to Vedder (before it was Boundary-Kathleen), added and completed Peach Road, added the Vedder Trail from Peach to Vedder Road, added Vedder road from the trail parking lot to Keith Wilson, added Garrison Boulevard, and added and completed Birmingham. If someone could do Vedder at the bridge area and Vedder from Keith Wilson to Watson, then Vedder will be finished (it becomes Vedder Mountain Road on the north side of the bridge). With Vedder and Evans being done, the major arteries of Sardis will be completed, and it will be down to mostly residential streets. Now we just have to wait for the OpenStreetMap tile renderer to get around to doing the Chilliwack area.

Thursday, January 04, 2007

Pacific Storm in London Drugs

My brother's band came over today for a jam session, so my Dad and I went out to the malls to do some chores. Whilst in the London Drugs I noticed two boxed copies of Pacific Storm available in the computer section. The cool thing about this is that Pacific Storm was made using the LGPL 3D engine Ogre3D. This is probably the first time that I personally have seen open source software on the shelves of a major retailer (Mandriva at the UBC Bookstore is the only other case). A big congradulations go out to Lesta Studios on getting their work into major retailers, a big congradulations to Sinbad and the rest of the Ogre3D team for making Ogre3D a top notch open source graphics engine. Pacific Storm can be purchased from your local London Drugs for $40. You can check out more screenshots of Pacific Storm on the Ogre3D website. Now if we could convince them to port to Linux (Ogre3D (OpenGL) runs on Linux already)

This isn't an isolated case of quality coming from open source games. I am constantly keeping my eye on Battle for Wesnoth, which recently released version 1.2. This version introduces some new music, multiplayer features, and graphics, including new character portraits. I know that the character portraits were the main complaint of Byron, and with these new ones (and hopefully even better ones in the future), he's got far less to complain about. I think I prefer the mountain graphics from the previous releases, but these kind of artistic things are still getting ironed out.

Another game having a new release recently is Danger from the Deep, a WWII German submarine simulator. This game used to have the standard ugly programmer graphics, but in the past year the models and other graphics have gotten much better. This is a game that looks like it is really picking up speed (it's at about Klein Fahrt right now, but it's getting closer and closer to Grosse Fahrt), and you might want to give it a download and try it. The game desperately needs a manual (as much of the gameplay is difficult to figure out), but I think it could be a submarine simulator's dream.

Another game using Ogre3D is Ankh, made by Deck13 (Ogre3D site screenshots). Ankh is an adventure game, much like the LucasArts games that many of us grew up on. I don't know how much it retails for, but the game looks like it kicks ass. The primary language of the game is German, and they even got some professional voice actors to do the voices (apparently the main character is voiced by the guy who does German dubbing for Tom Cruise). The developers did a preorder campaign to see if there was enough demand for a Linux port. About a week later they announced that there was plenty of demand for Linux, and the Linux port is now underway.

If anybody thinks that Linux/open source gaming is dead, I'm sure they will be beat down to a bloody pulp this coming year. Just check out the Featured Projects page for Ogre3D.

Another Street Map

Last night my brother and father went out to see the Canucks/Stars game. Of course, I asked them to take out the GPS. I have now uploaded an almost complete Keith Wilson Road, some of Boundary Road, No 3 Road from Boundary to the Highway, Highway 1 from No 3 to 176th, 176th down to 88th ave, then over to King George Highway, then up to the King George skytrain station. They even had the thing turned on both ways so I got information for both directions for Trans-Can and King George (which have medians). I still have to get the section of Trans-Canada between No 3 Road and Vedder.
Free Image Hosting at www.ImageShack.us
In the screenshot you can see the NASA imagery being underlayed behind the map. This image is very low resolution (is this due to my zoom level when requesting the image, or due to poor resolution in the image database?), maybe around 30m/pix

Wednesday, January 03, 2007

Width of Blogger

I was doing some minor Blogger maintenance today, things like updating my template, as Google is updating a bunch of the Blogger stuff (like servers, how the backend works, etc). When I switched to the new template I noticed that it was rather narrow (who wants to scroll five pages to read a simple blog post?), so I decided to widen it a bit. The outer wrapper is now 760 pixels wide, while the text area is 510 pixels wide. This means that the whole page should still fit within a 1024x768 screen. It looks to me like the Google template won't resize if it comes across a smaller screen, and I don't know gml (Google's markup language for their templating system) enough to make variable width templates. Are there any other complaints?

Tuesday, January 02, 2007

Contributing to Open Street Map

This post will have two purposes, one being an introduction to contributing to OSM, the other to give an update on my contributions.

Open Street Map (wiki) is an effort to generate street maps of the world with an open license, similar to Wikipedia is doing for knowledge. I don't think I really need to introduce it, so I will leave it at that. To follow this tutorial, you will need an account at OSM (accounts for contributing to the map and contributing to the wiki are different accounts. This tutorial will use the map account). For editing OSM data I like using Java Open Street Map (JOSM is what most people call it), as it runs locally (and therefore a bit faster) than the other applet/ajax programs available. I'll assume that you can manage to get JOSM downloaded and running on your own (of the ones I have tried, "latest/snapshot" is generally stable). Now there are two ways that GPS units will record logs, and this seems to affect how editing happens ever so slightly. The way that most people on the OSM wiki seem to track their routes is through a timer-based recording, ie. the GPS unit will record current position every x seconds. Another method is distance displaced, ie. record position if further than x meters from last recorded position. My fathers GPS (and I can't seem to get it out of this mode) will record position if you start deviating from a straight line, ie. the unit checks your trajectory from the last position and if you are traveling in a straight line, it will not record positions. This has the effect of minimizing the number of nodes recorded, but I am uncertain about the algorithm's accuracy (and if there is "latency" in detecting turns/curves). The mode will affect how we work in JOSM, so keep this in mind. If you can save your track logs onto your computer somewhere, that is good, because they need to be converted. Go download GPSBabel to convert your tracks from the format of your gps unit to the GPX format. GPSBabel comes with a GUI frontend for Win32, but this only crashed for me. In the command line, because my GPS unit is a Magellan eXplorist, I type in
gpsbabel.exe -i magellanx -f "c:\Documents and Settings\The Dunns\Desktop\TKLG005.log" -o gpx -F "c:\....\TKLG005.gpx"
the -i is for the input format, the -o for the output format, the -f for the input filename, and the -F for the output filename. You now have a GPX file ready to import into JOSM. In JOSM, Files->Open will open the GPX file, and the view window will automatically zoom to the bounds of the log. Then you go to Connection->Download from OSM, check the OpenStreetMap data checkbox and hit OK. It will ask for your account info, which you should already have registered. If you don't want to enter your info every time, there is a place in the settings where you can enter your account info once (note that it is stored/transmitted in plaintext). When downloading from the OSM server, JOSM will request a bounding box equal to the currently viewable area. This is why you should import your trace log before downloading from OSM. JOSM is very powerful, and I will only cover the basic topics. There are tutorials and video tutorials that you can check out if you want to learn more. Hover over the buttons on the top and side, as most of them are self-explanatory.

In JOSM a node is a point on a map, a segment connects two nodes, and a way combines multiple segments to create one object. Most streets are ways with name/other labels. Everything in JOSM is stored in layers, with raw GPS data going into GPS layers, and OSM data going into the "Data Layer". You can only edit things that are in the "Data Layer", and there is only one "Data Layer" at a time! This is where GPS logging mode is important. If you are using time-based or displacement-based logging, you will want to leave your GPS logs in a GPS layer and add nodes/segments from scratch in the Data Layer. This will reduce the number of nodes that are used, and make things a lot "cleaner". In my case, because the GPS unit is already reducing the number of nodes recorded, I just right-click on the imported GPS layer in the layers dialog and "Convert to Data Layer". Now the Data Layer will contain the downloaded OSM data along with the new information that we want to add. The new data will be imported as one long way, so the first thing I do is make sure nothing is selected (by selecting some blank space), then I select the "delete" tool and click on the imported line once. This will delete the way from all those segments. Then I look over the trace and start eliminating redundancies. Sometimes I travel down a street more than once, so I have overlapping segments. I eliminate these segments by using the delete tool and clicking on segments and nodes that I want to get rid of. Note that a segment requires both of its nodes to exist, so you must delete a segment before deleting a node if it is the last node in a set of connected segments. I will also get rid of unnecessary nodes in this step (like if I know the road is straight, but the GPS added extra nodes for some reason). In the process of removing redundancies I will tweak some positions (like if you walk down the sidewalk the actual center of the road might be four meters south). Once I have eliminated redundancies then I go about connecting all connected roads (see Junctions for an example of what I'm talking about). This will generally involve adding a node to one of the roads where the intersection occurs (ie. "into segment", click the little arrow in the "Add Node" tool for a dropdown of add node modes), then deleting (ie. breaking if it's two through roads or deleting the last segment and node if it's a T-Junction, and finally connecting the node of the intersection to the broken road. Direction is important in OSM and JOSM, so mind which way the arrows point. Now that all my redundancies are eliminated and all the roads are properly connected I will start assigning "ways". As I stated earlier, a way is a grouping of segments, and are what we assign road names/types to. I will use the box selection to select the segments I want, then shift-click to refine my selection and finally click on the "Add a New Way to the Data". Now we have a way. In the properties dialog I will then set key/value pairs for the road type (most OSM users seem to be British, and they seem to call all roads "highways" so don't be confused when the proper key for a residential street is "highway"), and for the name, plus other information such as oneway or pedestrian only. When I am JOSM-ing, I usually have three pages open: Map Features, Editing Standards and Conventions, and Key:highway. They come in quite handy and I use them to determine how things should be labeled. Also helpful are Wikipedia and an online mapping site (Yahoo Maps, MapSend, Google Maps, MS Live Local, etc). Be careful when using online map sites to verify things, as they will have easter egg errors to catch copyright infringement. Once you have imported, converted, eliminated, tweaked, wayed, tagged, and keyed everything you should download once more (make sure your view window covers all your changes) to make sure there will be no conflicts when you upload, in case someone else is editing the same area. Then upload, and be content that you are contributing to the open sourcing of the world.

For New Years Eve, my dad went up to some friends house in the Okanagan. You would be correct in guessing that I got him to take the GPS with him. As a result, I have now contributed the Trans-Canada Highway from Vedder Road to Hope, the Crowsnest Highway from Hope to Keremeos, the 3A from Keremeos to Kaleden, the 97 from Kaleden to Okanagan Falls, and some of Eastside Drive (near Okanagan Falls). Expanded roads are Vedder, and Watson.

In the first screenshot you can see HW1 in blue (what is that, powder blue?), with 3, 3A, and 97 in green. You will also notice a small bit of road in Penticton (somebody did a poor job of mapping out Lakeshore Drive, and then gave up. Guess I'm not the first person in BC to contribute to OSM). The second screenshot has got Chilliwack in more detail, with Vedder in red and the walking paths in Watson Glen Park in green, plus some of the roads on the south side of Cumberland in shades of grey. One interesting thing about doing the highway system was trying to figure out what names to give different sections of pavement. The section of road from Kaleden to Okanagan Falls has the names "British Columbia Provincial Highway 97", "British Columbia Provincial Highway 3A" and "Okanagan Highway". This is where Wikipedia's BC Highways page came in handy. Well, that about wraps it up for today. Perhaps I'll get some more of the Cumberland area done tomorrow. I won't have a GPS unit in residence, but if people want to send me GPX files with a general description of where they went, I'd be happy to help out.

Friday, December 29, 2006

The Cost of Windows Vista

For the holidays I decided to leave my personal computer, Hopper, in residence, and just use the machine that is at my parents' house. One result of this is my not reading RSS feeds (basically my sole source of news) over the holidays. I know I will hear lectures of how I should use web-based RSS syndicators, but I like Liferea too much to just say goodbye to it.

As a result of not having read any of my favourite electronic haunts over the past week, I am a couple days behind on reading a particularly interesting news article. If you haven't already, I suggest reading A Cost Analysis of Windows Vista Content Protection. It's quite long, but I made it through the whole thing, and it's quite an interesting read, with many good points sprinkled throughout. Even the footnotes are good reading. Even though most people who read this blog have probably already found the article through Slashdot, I figured if more people blogged it, then more people will know about it. More specifically, I haven't found a response from a Microsoftie yet. There are the standard responses on Slashdot (Linux fanboyism), but hopefully other places like Channel 9 or other Microsoft community sites, and hopefully Microsoft bloggers will start to comment on it. I'll be keeping my eyes on the Google search for "vista_cost".

Thursday, December 28, 2006

No Rockbox On 80GB iPod Video

Well, I was doing more investigating to see how easily Rockbox would go onto my new iPod, and if iPod + Rockbox would be better than iAudio. As it turns out, from the iPod FAQ wiki page, and from the forum, last updated December 19, it looks like Rockbox is not currently running on the 80GB iPod Video (also known as the 5.5 Generation iPods). Apparently, the project has just recently gotten it working with the 30GB 5.5G, but not the 80. At this point, I figure it's time to just return the iPod. Oh well.

Wednesday, December 27, 2006

Open Street Mapping

As I mentioned in a previous blog post, my father received a Magellan GPS. Being the open source kind of guy, I have always had very strong feelings about the should-be openness of maps. I believe that the great land of Canada, especially the public land, belongs to the people and the maps of those lands should be completely open and public domain. After all, public land is called "Crown Land" in Canada, to denote that it is owned by the government and the people. I own a small portion of Vedder Road, so why should I have to pay and agree to copyright restrictions just to find out where it is? Thus, we have OpenStreetMap. Using GPS traces, and applying various properties to different location nodes, volunteers can map out street/ground level information. Personally, I think that topographical information should also be stored, but the openness of OpenStreetMap will allow export in the future, so I'm not too concerned (plus the extra dimension of information would be a huge burden on the already slow server).

I have already created an account, and have uploaded my first gpx trace. My mom had to drop my brother off at his work (Prospera Center), so I turned on the GPS unit, threw it in the back seat, and waited for her to return. You can see the resultant trace of my mom doing some errands around town. I have also downloaded the Java Open Street Map software, and am trying that out. Here's a screenshot of the same trace, after some cleaning up around my house area (the gps unit's accuracy went down from +-6m to +-30m once it came indoors and lost some satellites, so I had to clean that up).


Hopefully I'll get this stuff all figured out and do a couple traces of the Vedder Crossing area before I go back to residence (I don't get to take the GPS unit with me, so no mapping fun over the semester).

iPod or iAudio?

The major gift that I received this Christmas was an iPod Video 80GiB. 30 hours after removing the gift wrapping, the iPod remains in its shrink wrap packaging. Why haven't I opened it?

MP3 is a terrible audio format. In most listening tests it fails miserably, it only supports stereo, and most importantly, it's not open. Obviously the best audio codec (for lossy) is Vorbis, but most portable audio players don't support Vorbis right out of the box. The iPod is no exception. There are firmware alternatives such as RockBox, but I'm not a fan of potentially bricking a $400 piece of hardware. I have heard of the iRiver, and its support for Vorbis, so I thought maybe that would be a good alternative. I decided to take a look at Xiph's list of portable players. Unfortunately, the latest iRiver product, the H10, is not capable of playing Vorbis, so it looks like iRiver is dropping official support for the superior codec. Another potential candidate would have been the Neuros, whose firmware decoder was actually coded by the good people at Xiph (Tremor was written under contract and paid for by Neuros). Unfortunately, the Neuros II has been discontinued, and the Neuros III is still in the planning stages. Yet another potential candidate, was the Rio Karma (Rio is a relatively old company, having some history in the graphics card industry), but the Rio company went under and sold out to SigmaTel. So far this is looking very hopeless.

The one device that catches my eye from the list of compatible players is the Cowon iAudio X5. It can play Vorbis and FLAC, as well as other features that I would be less likely to use, such as MPEG4 video, FM radio tuning, built-in microphone recording, line-in recording, etc. The other nice thing is that it uses a simple mass storage device style communication with the computer, which means it will work with Linux (the official website even says it will work with Linux kernels 2.2 or later). I did some Googling and reading, and judging by the reviews for the 20GiB on Amazon, the jury is split, with some loving it, and others having problems with the battery after about a year, or having problems with the positioning/construction of the headphone jack. I don't know if these problems were solved with the 60GiB X5, as the reviews didn't discuss it. Another problem would be the X5's limit of 10,000 files, compared to the iPod 80GiB's limit of 20,000. I would estimate I have around 7,000 audio files right now (Rhythmbox can give me an exact number, but I'm not in front of Hopper right now), so I could hit the file limit before I hit the space limit. The final problem that I can find is the possibility that the 60GiB X5 is discontinued. The official North American Cowon distributor, Jetmall, has the 60GiB listed, but NCIX does not (though it does have the 20GiB and 30GiB available for ordering). If you are interested in learning more about Cowon products, I would suggest checking out iAudiophile.net, the fansite for Cowon products.

So after all that research, I am going to go back to looking at RockBox, and seeing what kind of features it provides, and if it is safer to use than when I had last heard about it. Oh, and in case you are wondering, converting my vorbis and flac files to mp3 is most certainly not an option.