Friday, December 28, 2007

Mint | Refreshing Money Management

Borat_Two_thumbs_up_yours

I recently was introduced to Mint.com. It is a money management website where you can track all your credit card, savings and checking accounts, etc.

And I have got to say - I recommend it with 2 thumbs up. 

Mint | Refreshing Money Management

 

Mint.com supports all my credit cards and my big bank accounts. The only one that it doesn't yet support is a small one from Missoula. Mint.com is secure as nobody but you can access the account data. The visualization options are great too and you get alerts about when bills are due.

screenshots

The service is currently still in beta (which web service is not - almost seems like an extended beta as mandatory in these days of web2.o). As it matures I am sure it is only going to get better.

I have tried Microsoft Money (too complicated) and Wesabe (liked it - just didn't support all my accounts). Wesabe has one cool feature - it uses social information to label transactions as well as you can ask other users to answer questions you might have about managing money.

On the other hand, Mint.com continuously looks through your accounts and interest rates and gives you suggestions of accounts to which you can move to, to save money. The budgeting options are simple - which makes it nice to use and you get to compare your expenditure to average US numbers.

Tuesday, December 25, 2007

FileMenu Tools

Ever needed to customize the Windows context menu?

I constantly keep adding tools such as Register, Unregister, Register using VS2005, etc. One way to get the job done is to edit the registry directly, but that requires to remember to many registry paths, variables and settings.

Enter FileMenu Tools.

FileMenu Tools allows you to customize and edit your File Menu Context menu in many different ways. It has extremely convenient features that even allow you to add commands and specify on what types of objects they should be available (folders or files - as well as file types, such as dlls, exes, etc).

You can also edit the Send To option.

FileMenu Tools (FMT) comes with quite a few built in customizations that out of the box extend your context menu almost off the screen. But as the tool allows for complete customization of the context menu - you can pick and choose the ones you like the most.

Awesome tool!

Also works flawlessly in Windows Vista (32).

FileMenu Tools

Building GDAL Source using Visual Studio

 

Here is a quick post on how to build the GDAL source.

  1. Download the latest source code.
    http://trac.osgeo.org/gdal/wiki/DownloadSource
  2. Unzip the contents of the folder onto your hard drive.
  3. If you are going to use the GDAL bindings (such as the bindings for C#) then download SWIG.
    http://www.swig.org/download.html
    Build the swig binaries if required and copy the swig executable (SWIG.exe) to the GDAL source root folder.
  4. In the root directory of the GDAL source that you just unzipped find the file nmake.opt and open it in a text editor and perform the following edits:
    1. Set the version of VISUAL STUDIO that you are going to use to build the GDAL binaries.
      For Visual Studio 2008 - set MSVC_VER = 1500
    2. Set the GDAL_HOME variable to the GDAL source root folder. This is where all the binaries, includes, library files and html files will be copied upon successful build of GDAL.
      I prefer adding Build to the source path - as all the built files will reside under one single folder.
      eg: GDAL_HOME = "C:\Development\GDAL\gdal-1.5.0\Build"
    3. In case you are going to be building the bindings then set the location for SWIG (also see step 3).
      eg: SWIG = C:\Development\GDAL\gdal-1.5.0\swig.exe
  5. To begin building
    1. Open a Visual Studio command prompt and navigate to the folder containing the GDAL source.
    2. Run each of the following commands
      nmake /f makefile.vc
      nmake /f makefile.vc install
      nmake /f makefile.vc devinstall

      At the end of running all 3 of the above commands you will find that the GDAL dlls will reside in the GDAL source root folder. Under the Build folder you will find additional folders containing the include files, library files, html files as well as GDAL utility executables.
  6. To build the SWIG bindings for GDAL
    1. Navigate to the folder containing the bindings for the language that you need it for.
      For example for C# navigate to the following folder:
      C:\Development\GDAL\gdal-1.5.0\swig\csharp
    2. Run the following commands
      nmake /f makefile.vc interface
      nmake /f makefile.vc
    3. Once the bindings have been successfully built - the dlls and executables will be found in the root folder of the language. In this case the folder will be:
      C:\Development\GDAL\gdal-1.5.0\swig\csharp

For the official guide to building the GDAL sources see:
http://trac.osgeo.org/gdal/wiki/BuildingOnWindows
The page also lists all the different options available in the nmake.opt file.

Friday, December 21, 2007

Merry X'mas

Here is wishing all of you a merry x'mas and happy holidays.

Don't send a lame Holiday eCard. Try JibJab Sendables!

Building GDAL 1.4.4 using Visual Studio 2008

Or this post could also be called - fixing C3136 error during GDAL build.

I have the release to market (RTM) edition of Visual Studio 2008 on my machine and decided to try building GDAL 1.4.4 binaries under Visual Studio 2008 (Professional Edition). Unfortunately when I first tried it, I got the following error:

error C3163: '_vsnprintf': attributes inconsistent with previous declaration

So how do you fix it?

I think the issue is that _vsnprintf is now being declared in some native header of Visual Studio. This results in a clash with any product that might be defining the function in its code. (And I think there might be a ton of projects that might be defining the function and hence will definitely cause a head-ache for many developers out there).

To fix it: Look for _vsnprintf in your code. If you see a line similar to

#define vsnprintf _vsnprintf

Then comment it out and you should be back in business. (For the GDAL source - that offending piece of code was found in port\cpl_config.h)

note: (update 12.25.2007) GDAL version 1.5.0 builds fine with Visual Studio 2008. All you need to do is set the correct MSVC_VER number in the nmake.opt file

Wireless Home Theatre System

The one reason that I don’t have a home theatre system right now is that my wife forbade me from having wires hanging or snaking across our living room. There are some solutions out there - but most of them are wireless only for the rear speakers and are typically analog solutions.

Finally NeoSonik has come up with a solution that is completely wireless and in addition is digital. (This means less interference - the hissy crackly noises that can make you feel like you are sitting in a dollar theatre).

system_diagram

The system is scheduled to be released in 2008 at the CES show. But at a cost that could range from $6k to $15k - I don’t think I will be getting a home-theatre system any time soon. (My biggest problem with the projected price is that I most probably will be able to get a Bose or Onkyo system and pay for a professional to hook the wires through the walls or do it myself, and still be left with a good deal of change)

But nevertheless - its a cool new product - that is more that overdue in the market.

Come to think of it - I wonder how hard it would be to leverage the home WiFi connection to create your own wireless digital solution?

http://neosonik.com/

Bug Labs: Electronic Lego blocks

 Bug Labs

ph_BUG_group_sm

Ever wanted a set of electronic components that you could plug together just like LEGO blocks to build a final device? One can do it with computers and plug n play peripherals, but why not with your camera or GPS system.

For example: If you had a digital camera and a little later you decide that you are sick and tired of finding the USB cable every time you need to download the images. Instead of going out and buying a new digital camera which is WiFi compatible, why not be able to plug-in a module that gives your camera that capability. In the same way - if you are going on a world tour and you would like to have your images auto geo-tagged as and when you take your pictures - it would be cool if you could attach a component that gives your camera GPS capability.

The list is endless - you could remove the digital camera module and attach a touch screen module and voila you would have a PDA. Or you could attach a GPRS module and instead of using WiFi hotspots you could be constantly connected via cellphone towers. (The company doesn't seem to have plans of a GPRS module just yet - but I am sure they will release one as soon as the product takes off).

According to the company:

BUG is an open source, web-enabled, modular software + hardware platform.

Bug on the Maker blog

The main module of the Bug is a Linux embedded computer. The first modules that are going to be available are a digital camera, GPS, motion sensor and a touch screen. Going forward - they are actually going to add a teleporter module (hopefully it will teleport you around the universe without leaving your clothes behind).

The company bills its product as an open source device. Not sure if this means that others will have the schematics to build and connect their own devices, or is it only as far as creating software that can talk to the company's devices. The device has a SDK called DragonFly which can be leveraged to write software to work with the BUG. The SDK is in JAVA and the company may possibly provide tools to allow for easy software creation using the Eclipse IDE. The SDK is available right now and one can create applications (not sure how much you can do without the actual device to play with)

SDK_1_thm

A list of open source software that the company uses is available at:http://www.buglabs.net/oss_list

Being an open source project - what this means is that by the time the product hits market shelves, there should be a considerable list of plugins that one could download to their BUG device. This is important because usually when a device ships it comes with a bare minimum set of applications. But once users are given the ability to create apps for the device - it normally means that you will get apps that are actually useful to you. As an example, say you pickup the touch screen, which makes your BUG into a PDA. With the touch screen you may get a simple ToDo list app. Now you might need a GPS navigation device - so you add the GPS module. Some user out there might have looked at the 2 modules and say - hey why not make the ToDo list location aware?! He could write the software and then your ToDo list could automatically pop up items based on your location.

The fact that they have made their platform open to other developers is definitely a very cool thing.

As the store is not yet open - I am not sure what the cost of the device is going to be or its add on modules. One model that the company could use to supplement its income is to have a store front on its site where developers could sell their creations to other BUG users and the company could make a percentage of the sales (a la BugBay). In addition if they add a GPRS module - they could provide the cellular data service and charge a subscription fee for it (constant revenue stream - which company doesn't like that!)

I can't wait to take this product and its accompanying SDK for a spin.

BugLabs

Thursday, December 20, 2007

In depth look at the Dash Express GPS

In a previous post I had written about the totally awesome new GPS device called "Dash Express". The device has me tickled silly with all its cool and innovative features. I have been reading more about the company and the technology that they are using.

head_logo_main

So one of the things that I do know is that the Dash Express runs on LINUX. The company site lists numerous open source packages that they use on and for developing the device's software (http://www.dash.net/OpenSource/downloads.php?release=2.0.0 - you can even download the packages with all the changes that they may have made to them from this webpage.)

graphic-product-promo

I have listed the packages here with more information about what each package does:

Dash Express - Finally a connected, crowd-sourced GPS

graphic-product-santa-teresa 2113067755_d4bb5a944e_m

 

I have had a GPS system for a little over a year. It is a MIP c310x and for $150 it does more than adequate a job of guiding me to my destinations. I have looked at the more expensive systems - like the ones from Garmin (Nuvi 360) and TomTom (Go 920) which retail for close to $600. I just found them an overkill. For the extra price you get spoken street names, maybe traffic information (you have to pay a monthly subscription) and maybe a wide screen display. But $450 just for those features - no thank you! I can do with out them.

From the first day I have had my GPS unit, I have wanted some features that I just did not find on any of the GPS units out there.

  1. Ability to download route information from the computer.
    Setting up a route to just one destination is fine using the touch-screen of a PND (Personal Navigation Device). But if you have to travel cross country, or if you wish to have multiple destinations - then the touch screen interface can become a pain. I have always wanted a way to define my route on my computer, where I have access to the Internet and I can perform research on the stops, etc and then have that route uploaded to the PND. There doesn't seem to be even one such PND out there that can accomplish this simple task.
  2. An Internet connected PND
    Many a times, I have found my self in a new neighborhood and I would want to find a certain establishment to visit. For example if I wanted to find a restaurant (maybe an Italian restaurant), current PNDs will show you a list of such locations based on the distance. But without a rating or review - how do you choose which one to go to. With WiFi becoming prevalent and ubiquitous, wouldn't it be nice if you could take your device to a hotspot and look up information about a point of interest (POI)? The PND could give you recommendations that are based not only on the distance but also on reviews. To take it a step further - the device could act like the iPhone - use a WiFi connection when available - otherwise connect via the cellular network to download that information.
  3. Share information about maps, roads and POIs
    Granted TomTom's MapShare can do some of that, but with so much social networking going on - their solution is pretty crippled. An ideal solution wouldn't just allow you to share road closure information, but also POIs, new roads, events, etc. Just about any information that could leverage location should be shareable. (TomTom can download road-closures, but you cannot directly share new road information - it is uploaded to TomTom and probably provided to you as a map update - for a price of course).

Enter Dash Express.

Dash Express seems to be the first PND that seems to have all of the capability that I always dreamed of wanting in my PND. I always wanted to build such a system - now I guess I don't have to smile_sad.

  1. Computer to PND Connectivity:
    screenshot-send2car
    The feature is called "Send2Car". Currently Dash Express does not seem to have the capability of defining your route on a mapping application like Google Maps or Virtual Earth, but you can use Send2Car to send addresses from your computer to the device. Even cooler, you can have someone else send you an address while you are on the road - Woof! Woof!
    The Dash - supports GeoRSS and KML (Getting your web content in the car!). So I don't see why it wont be possible to export your route from Google Maps as KML or use another tool to export it as GeoRSS and load the content on the Dash. Even if not possible in the first release - I am sure that the capability will be added very soon to the Dash.
  2. Traffic information:
    graphic-screen-santa-teresa
    The traffic information that Dash provides you isn't the same information that you see in your other PNDs. The traffic information is not just from the traditional sources, Dash also uses information from other Dash users - called the Dash Driver Network. (More on this technology in a later post). And because Dash uses other Dash users to detect traffic changes - it can provide information about local streets in addition to high-ways. This technology is just not available via any of the other PNDs.

  3. An Internet connected device:
    wifi_behind_the_bus
    The Dash supports both connecting to the Internet via WiFi and GPRS (cell phone) networks. Which means that while you are at home or near a HotSpot you could take advantage of the higher speed and band-width of WiFi and while you are on the road you could exchange information using the cellphone networks.
    It is this Internet connectivity that allows the Dash to break out of the mold of older PNDs. Which include:
    * Crowd-sourced traffic information from traditional sources as well as the Dash Driver Network.
    * Yahoo local search - and possibly ability to search using other services. (This makes the amount of POIs available to the device unlimited).
    * Send2Car - which allows you to send information from other Internet connected devices (traditional computers, cell-phones, etc) to the Dash.
    * MyDash - a portal for owners of the Dash. I am not clear about what this site provides - but you can possibly customize your Dash with specialized search buttons and maybe other customizations such as skins in the future.
    * AutoUpdate - which allows your Dash to always have the latest software and maps running on it.
    Because the Dash needs to use GPRS, there is a subscription component to owning the Dash. This varies from $9.99 to $12.99 depending on the plan you sign up for. (Compare that to TomTom's Plus Traffic service, which costs € 39.95 for 1 year subscription + costs for use of your mobile phone. http://www.tomtom.com/page.php?Page=rds-tmc - and gives you information only about the traffic as opposed to Dash - which gives you access to all the above features - value, value, value if I may say so)
  4. Open Content Platform:
    Though not touted as a feature on the product page itself - there is a lot of talk of the "open content platform" on the company's blog. This feature might be huge if it allows 3rd parties to either develop plug-ins that can be installed on the device and can then download location based data to the device or if the 3rd parties can publish data in a specific way, so that the Dash can take advantage of it (though one would be able to do that with the GeoRSS or KML formats).

graphic-product-promo

And just like the expensive Garmins and TomToms, the Dash Express sports a wide screen. At a price of $599 (http://shop.dash.net/Dash-Express-Pre-order), I think there is almost no reason that one would still want to but one of the other PNDs that are available at the same price point.

What does all this mean: Since the early 1980s when the first PNDs debuted the devices have hardly changed (current position showed on built-in maps and routing). In my opinion the Dash Express is the biggest innovation seen in almost 20 years. Every one of its new features will definitely strike a chord with current and new PND customers. This, I am sure, in the near term will translate to many of the other PND manufactures dropping their prices so as to compete with the better feature set that Dash provides. In the long term many of these features (especially true Internet connectivity) will start appearing on the other PNDs. And as the currently unique features to the Dash start appearing on the other devices - the Dash will start becoming cheaper. I would also think that the subscription costs might get cheaper as more people purchase the device. Another price driver might be the fact that by dropping prices, more people will sign on to the Dash service. And as more people get tied into Dash's network - the more information the Dash will have for it's users, which will possibly keep Dash as one of the best services to stay with. (So the faster that Dash can get more people tied to its service, the harder its competitors will find to steal away those users).

So for all my gushing for the product - are there features I don't like: Yes.

  • The Dash uses Linux: I wish it were a Windows device - because those are typically easier to hack. The device I have runs on Windows PocketPc and the GPS software is called iGO. The device is highly hackable and hence highly customizable. I can turn my Mio into PDA, I can customize the skin to show exactly what information I want on the map. (None of these are easy to do as there are no tools that allow easy access to the settings - never the less it is possible). On the other hand the TomTom that I have - has Linux running - and even though you can get an OpenSource TomTom app on to it, it mediadoesn't seem to be as customizable as my Mio running iGO. Though this is not a huge issue - where there is software - hack-ability will followsmile_wink.
  • The form factor: The Dash is not flat and thin and so wont fit in your pocket. So in it's current avatar - you probably will find it a pain to take it out of your car and walk with it. (It would be nice if the wing section in the back would fold down for storage - v2.o maybe).
     
  • The price: at almost $600 - is still pretty expensive. It makes the WAF (wife acceptance factor) that much lower.
  • 3D View of map:  The one feature I cannot find anything about and which I think is extremely important in today's GPS navigation systems is a 3D view into the map. None of the screen shots, nor the specifications on the company's website talks about 3D maps. I think that 3D maps make it a lot more easier to follow a route and if it isn't there in this version - then I would most probably wait for a version on which it will be offered.

So will I be pre-ordering the device? Even though I would love to have one to test, my Xmas gifts for this year have already been bought and I typically wait for v2.0 of any device before I go out I buy them. So probably not yet.... but if the device has 3D maps and given that the cool factor is so high for me on this device - I just might.

Finally, here is a video of a presentation the company did at Web2.0 Summit:

And Gizmodo has a video where the device was taken for a spin in a car: http://gizmodo.com/gadgets/gps/video-dash-gps-%252B-zillow--real-estate-stalk-fest-319732.php

The videos shows you all the cool features I have written about: Send2Car, Search using Yahoo! and mashups using Zillow and CraigsList.

A very cool device indeed!

Tuesday, December 18, 2007

Virtual Cable™ Car Navigation - Why Didn't I Think of That?

Here is an invention that makes me go "Now, why didn't I think of that?". A heads up GPS navigation system for cars.

1 

It is called the Virtual Cable. The driver sees the Virtual Cable - a line representing his path - projected on to the windshield. It looks like its a suspended cable - hence the name "Virtual Cable".

According to the inventor's website "The image is in true 3D and appears to be a natural part of the landscape. The driver uses only peripheral vision to follow the Virtual Cable™."

Virtual Cable™ Car Navigation - Safe, Simple and Intuitive

More about the technology: http://www.mvs.net/technology.html

The device is only a prototype right now and from the looks of the site - the inventor is trying to line up funding for taking this device to production.

Will be cool to see how the finished product looks and how much more information is displayed on the wind-shield.