Organizing internet pages and research (get rid of bookmarks)

I thought I would mention one tool that I discovered that I can’t live without now, Onfolio. About a month ago, I was trying to find a web page that I looked at a few days ago - which I seem to do often. Well, I guess at the time that I found the web page I didn’t think it was valuable enough to bookmark, so I figured it was time to look into my browser history. But, if you’re like me, I set my history to expire after about a day or two and I don’t bookmark sites unless I frequent them often. My thoughts were: I wish I had some toolbar clipboard that I could save links and text-clips to and be able to refer to it when needed. After thinking I might write the toolbar myself, I came across Onfolio (which was acquired by Microsoft). So, now you can find this amazing tool in the live search toolbar.

You can read about it here: Onfolio

And download it here: Live Search with Onfolio

No Comments

Generate a class file from an xml file - Visual Studio 2005 Add-in

I wrote an add-in for Visual Studio 2005 that generates a class file from an xml file.

Follow this link to download

No Comments

MMW at the Moore Theatre

MMW at the Moore


So, I haven’t posted in the music category in a while…too much programming lately. But, I went to one show recently that I thought was worth blogging about. I went to go see Medeski, Martin and Wood (MMW) and it was amazing. They were great as always. Their most recent album, End of the World Party (Just in Case), is a great album. Its funky, soulful, jazzy and just an overall a great CD.

Just to mention other shows I’ve seen lately:

Mark Farina
Lang Lang with the Seattle Symphony
Trey with Mike Gordon
Barry Douglas with the Seattle Symphony (play Rachmaninov no.3 - it was incredible)

No Comments

Using MSBuild for automated builds

So, what if you want to do automated builds that will be doing a lot of custom stuff? Well, you use the MSBuild namespace and tasks, targets, etc to create a solution. Below is an example of some code for performing a build. What the code below does is build a solution file (.sln) in a local directory that you specify in the <SolutionFile> element. I used the AssemblyInfoTask target to change version numbers during a build. This way you can dynamically change the build number for each build. The CreateItem task coupled with the copy task will drop the output files in the bin directories from the build to a different directory on your build server specified in the <OutputDirectory> element. There is more code controlling the build than what is posted but you can do a simple build using the following lines of code and the following xml file.

Engine engine = new Engine(ConfigurationManager.AppSettings["MSBuildPath"]);

Microsoft.Build.BuildEngine.Project project = engine.CreateNewProject();

project.Load(FileSystemPath + ConfigurationManager.AppSettings["BuildProjectFile"]);

project.Build();

Build.proj

<Project xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns:xsd=http://www.w3.org/2001/XMLSchema

        DefaultTargets=UpdateAssemblyInfoFiles;BuildAll;CopyFiles xmlns=http://schemas.microsoft.com/developer/msbuild/2003>

  <Import Project=$(MSBuildExtensionsPath)\Microsoft\AssemblyInfoTask\Microsoft.VersionNumber.Targets />

  <PropertyGroup>

    <AssemblyTitle>My Assembly Title</AssemblyTitle>

    <AssemblyBuildNumberType>NoIncrement</AssemblyBuildNumberType>

    <AssemblyRevisionType>NoIncrement</AssemblyRevisionType>

    <AssemblyMajorVersion>0</AssemblyMajorVersion>

    <AssemblyMinorVersion>0</AssemblyMinorVersion>

    <AssemblyBuildNumber>0</AssemblyBuildNumber>

    <AssemblyRevision>0</AssemblyRevision>

    <AssemblyFileBuildNumberType>NoIncrement</AssemblyFileBuildNumberType>

    <AssemblyFileRevisionType>NoIncrement</AssemblyFileRevisionType>

    <AssemblyFileMajorVersion>0</AssemblyFileMajorVersion>

    <AssemblyFileMinorVersion>0</AssemblyFileMinorVersion>

    <AssemblyFileBuildNumber>0</AssemblyFileBuildNumber>

    <AssemblyFileRevision>0</AssemblyFileRevision>

    <OutputDirectory>c:\temp\</OutputDirectory>

  </PropertyGroup>

  <ItemGroup>

    <SolutionFile Include=“” />

  </ItemGroup>

  <ItemGroup>

    <BuildFiles Include=**\bin\**\*.* />

  </ItemGroup>

  <Target Name=BuildAll>

    <MSBuild Projects=@(SolutionFile) Properties=Configuration=Debug;Platform=Any CPU />

    <MSBuild Projects=@(SolutionFile) Properties=Configuration=Release;Platform=Any CPU />

    <CreateItem Include=@(BuildFiles)>

      <Output TaskParameter=Include ItemName=OutputFiles/>

    </CreateItem>

  </Target>

  <Target Name=CopyFiles DependsOnTargets=BuildAll>

    <Copy SourceFiles=@(OutputFiles) SkipUnchangedFiles=false DestinationFiles=@(OutputFiles->’$(OutputDirectory)%(Identity)’) />

  </Target>

</Project>

No Comments

Its time to Zune in


Video: Microsoft Zune

Yesterday there was a public release about Microsoft’s new Zune. This thing is pretty cool…it might be the replacement for my archos. There is an official Zune site: Coming Zune, but I can’t figure what is going on with the bird catching on fire and the giant and tiny man petting and hugging a rabbit.

Here’s a quick run down of the features (from the Zune press pass site)

• Wireless Zune-to-Zune sharing. Zune lets you spontaneously share selected full-length sample tracks of your favorite songs, homemade recordings, playlists or pictures with friends wirelessly, device to device. You can listen to any song you receive up to three times in three days. And if you like a song you hear and want to buy it, you can flag it right on your device to easily find it later.
• Your own personalized Zune. Zune is easy to use and easy to love. You can choose one of three base colors, each combined with a distinctive double-shot finish created by the overlay of one color on another. The player also can easily be customized with your favorite pictures.
• Large color screen. Zune comes with a bright 3-inch LCD video screen that works in portrait or landscape mode. Your music, video and pictures never looked better.
• 30GB player. Zune stores up to 7,500 songs, 25,000 pictures or 100 hours of video. You can make playlists on the go and watch a slide show while you’re listening. Watching video in landscape mode gets the most out of the vivid display.
• Zune Pass. Downloads or a subscription? It’s your choice. A Zune Pass subscription gives you “all you can eat” access to discover and explore the Zune Marketplace.
• Built-in FM tuner. With the built-in FM tuner you can listen to local FM radio stations or tune in to programming while you’re at your local health club, for example. Advanced tuning capabilities allow you to see the name of the song currently playing on selected frequencies.

The DJ mode sounds amazing! The Zune looks like a great piece of technology. Watch out iPod.

Looks like they will be out in stores around November.

No Comments

Driving across the country or Brew tour?

I was recently telling my family about my trip from Chicago to Seattle and some of the events that we did along the way. A comment I received was, “Were you on a brewery tour?”. Only because we did stop at breweries for two days of the four. So, I thought I would list off some of the breweries that I have been to and tell what I thought…

Miller (Milwaukee, WI)
-Took the beer tour. Huge facility where they show you all the inner workings on producing beer in such large quantities. Really intimate tour for being such a large brewery. You get 3 free samples at the end.

Samuel Adams (Boston, MA)
-Took the beer tour and it was just ok. The brewery in Boston is not their main brewery anymore, so its more of a sampling center. They have a few brew kettles that they mix up seasonal brews in, but none of the main production goes on here. Not as impressive as I thought it would be. You get 3 free samples at the end also.

Redhook (Seattle, WA)
-There is a brew tour here, but I haven’t taken it yet. But, the beer is good there and it has a nice restaurant/pub that you can sit outside and enjoy a beer. I will try to take the brew tour soon - they offer one every other hour.
-Update: I did take this tour and it was well worth it. For $1 you get to keep a little sampling glass, and during the tour you fill that glass up 5 times. I would recommend it if you’re in Woodinville, WA.

Pyramid (Seattle, WA)
-Didn’t do the beer tour here. Its more or less a restaurant where you can have their beer. Its a pretty decent beer though. I don’t even know if they offer a brew tour. No free samples - paying customers only.

Hale’s Brewery (Seattle, WA)
-Brew tour…well - not really. They have the brew kettles and equipment in a large room next to the bar so when you walk in you go by it. There is a self-guided tour where you can read plaques about each part of the brewing process. Wouldn’t really call it a brew tour. But a great brewery to go have a beer.

Big Sky Brewery (Missoula, MT)
-They do offer a brew tour, but it depends on if there is someone to show you around. There ’s a glass window where you can look through pass the bar and see the brewers stirring the beer and slipping (not sipping) on suds. We didn’t get the tour, but we did have over the “4″ free samples they offered. They had all their beers on tap and you could have up to 4, but they wouldn’t stop you if you asked for the 5th or maybe the 7th! A lot of locals come in around 5 pm for a quick beer before heading home.

Goose Island (Chicago, IL)
-Great beer. Never did the beer tour, but I did do a beer school there with all of their beers. They have some great seasonal beers. Go to the one off of Clybourn and not the one in Wrigleyville (tourist trap).

Snake River Brewery (Jackson Hole, WY)
-Great happy hour specials. We had an organic beer there that was really great. Also a barleywine which was like taking a shot (guys, the idea is to hide the alcohol). But, they had great beers and would love to go back to this place.

That’s all that I can think of for now - and that are worth mentioning! Feel free to comment if you have a brewery recommendation for me.

No Comments

Off to Seattle!

Well, I might not update my blog for a week or two because I’m moving to Seattle. I leave towards the end of July and start work in early August in Redmond! To see where I’ll be working go here: http://blogs.msdn.com/BrettRobinson/

No Comments

AudioDizer Beta Released!

AudioDizer Beta

Well, we finally pulled down the curtain that was hiding AudioDizer from the general public. Although there are a few things that we are still improving, we think the user experience will be a good one. Keep checking back as we are constantly improving the audio files that come back. AudioDizer enables you to either upload your blog (rss) or a different blog that you read, and get an mp3 that you can play on either your portable media player or computer. Some of the coolest stuff is in the member section - so sign up…it’s free!!

Check it out here: AudioDizer

2 Comments

Phone contacts from Outlook contact to SIM card

When I purchased my smartphone I placed all of my contacts from my previous phone on my SIM card, then I just moved the SIM card to my new smartphone and all my contacts were there. But, they were all there on my SIM card under a SIM contact. This is not ideal for the smartphone. With the smartphone you would like to be able to sync up the contacts with Outlook on your PC, or to have additional functionality that goes with the Outlook contact in the phone (images, custom rings, etc). One feature that you can not use with SIM contacts is if you have a huge phone list the phone provides a “quick search” where it shows you the letter and then hops to that letter in your phone book without going through all your contacts. But, with the SIM contact it does not do any of that. So, the obvious thing is to move your SIM contacts to your Outlook contacts in bulk. There is a program out there that I used, M2SIMCopy, that does a good job in moving over the contact to the phone, but it puts them in a category “SIM” and is only one way directional. By this I mean it can only go from SIM to the phone and not the phone to the SIM. So, I decided to take a stab at it. I decided to use the Compact Framework 2.0 with Windows Mobile 5.0 and Visual Studio 2005. I found one library somewhat useful to start with the SIM functions. The SIM method I needed was SimWritePhonebookEntry in the cellcore.dll. This method is not wrapped in the .NET CF 2.o, so you would have to use PInvoke to try to get at it. The method returns a reference to a structure and you would have to try to mimic that structure in .NET, which is not a straight conversion. I looked a while for something on the internet, and found the OpenNETCF library does a pretty good job on encapsulating the SIM calls into .NET methods.

If you need the .NET Compact Framework 2.0 you can download it here.

I finally had time to dig around in the OpennetCF and get it to work with adding my Outlook contacts in bulk to my SIM card, and then back from my SIM card to my Outlook Contacts in bulk. I had to tweak one method in the Opennetcf to get it to work.

The first screen is a little slow when loading the contacts, so when you click one of the menu items to bring up the contacts it will take about 3 seconds to bring up the screen with the contacts on it.

When installing it will prompt you with a screen that asks you to Confirm the installation. Something along the lines of “The program is from an unknown publisher, Do you want to continue?” Select “Yes”. Then the program will install.

I put a shortcut under the start menu called “BRobinson Contact Manager” and you can launch the application from there. Or you can navigate in your smartphone to Program Files -> ContactManager and then click on the executable to launch the program. Now you can copy all your Outlook contacts to your SIM card!

Here are some screen shots:

Version 1.0
          

UPDATE: The program now has a new version (1.1) that can export your SIM or Outlook contacts to a pipe “|” delimited text file. You can also import this file to either your SIM or Outlook contacts. Also, when exporting from Outlook it will put an “H” for home number, “B” for business number and “M” for mobile. See new pictures:

Version 1.1 (in addition to 1.0 features)
new home screen     new outlook screen     new import screen

Download the installation cab file here (version 1.1): Installation File [ 3086 Downloads ]

old version here (version 1.0): Contact Manager 1.0

24 Comments

T-Mobile SDA review, positives vs. negatives

So, I purchased the T-Mobile SDA that I wrote about last week and I have had it for about 5 days. Here are my thoughts on the phone…Overall its great. I have enabled the wi-fi and have been able to connect to a network and browse the internet, etc. Its pretty neat. When riding on the train I enable the wi-fi and watch the networks pop in and out. The camera and video have great quality. I have not had time to hook up the email yet to our exchange server, but from what I have read it is a pretty simple thing to do. Here are the negatives, the first is response time. When you try to navigate sometimes the phone is unresponsive for a few seconds and then it catches up with the clicks by doing 10 things in 1 second. The little knob that you’re supposed to navigate with is kind of hard to push in the right direction and click things. For example, you’ll select an item and click the button thinking it will open the application…but it doesn’t and maybe navigates to the item next to it. The last negative thing is memory. There isn’t much so a mini-SD is almost necessary to hold songs, application, etc. Overall a good purchase and I’m just getting started (wrote the first sample phone application yesterday and deployed it to the windows mobile 5.0 emulator in VS 2005).

No Comments