Feed Icon  


  • Bryant Likes
  • Send mail to the author(s) E-mail
  • twitter
  • View Bryant Likes's profile on LinkedIn
  • del.icio.us
Get Microsoft Silverlight
by clicking "Install Microsoft Silverlight" you accept the
Silverlight license agreement

Hosting By

Hot Topics


Open Source Projects



Hilarious Workflow

Posted in WF at Friday, April 28, 2006 7:10 AM Pacific Daylight Time

I came across Matt Milner's blog today via his trackback on Paul Andrew's post which I referenced below. I subscribed to Matt's blog and came across this golden nugget:

I'm very excited about our new addition, but boy does it bring to mind all sorts of questions about time management. ;)

[Visit his blog to see his daily "workflow"]

I think I'll show this to my wife to help her understand workflows. :)

Image Resizing in .Net 2.0

Posted in at Thursday, April 27, 2006 6:49 AM Pacific Daylight Time

One of the things it seems like I do a lot is resize images. I have seen many posts/articles/etc on doing this and which options to use. I have played around with this quite a bit and so I decided to write a simple windows application to view what the differences really are.


I've posted the source to this application here. The application resizes the image to fit to the window and then allows you to increase the zoom so that you can see what the effects of the resize are really like. You can then switch between different interpolation modes, pixel offset modes, etc. I also allowed the turning on and off of the TileFlipXY attribute which gets rid of the top/left line that occurs when you resize with the HighQualityBicubic interpolation. I only discovered this feature yesterday while reading this article on code project.

If I left out some of the options let me know and I'll try to add them in.

Microsoft Certified Technology Specialist for SQL Server 2005

Posted in Sql and Xml | General | Certifications at Thursday, April 27, 2006 2:50 AM Pacific Daylight Time

Last weekend I took exam 70-431 and passed so now I'm a MCTS: SQL Server 2005. That is a long title. Don't worry Scott, I won't be adding that to my signature. :)

If you're wondering about the exam, it wasn't too much different than the SQL Server 2000 exam (70-229), but included all the new SQL Server 2005 goodies like the xml data type and service broker.

ASP.Net Background Workflows

Posted in BizTalk | ASP.Net/Web Services | WF at Tuesday, April 25, 2006 2:41 AM Pacific Daylight Time

I really like what the on10 guys did with the on10 website. The login UI is the best I've seen and I really like the mashup they do on the profile page. I like it all so much that I've been working hard to duplicate a lot of it for use on some of my hobby sites.

I've emailed back and forth with the on10 team about how they did certain things and they have been very generous with their answers. One of the things I was curious about was how they handled the background tasks for the user profiles. Obviously, when you update your profile they don't make you wait while they lookup your location, blog, blog posts, and other details for that page. There is no point in snappy AJAX if you make the user wait for a process like that to happen. So how do they handle it?

Duncan suggested that a windows service would work pretty well or a console application that you schedule (which is something I've used in the past). However, for on10 they use a form of background processing tasks based on some of Rob Howard's work (see these slides and demo code for some examples of background threads in ASP.Net). This works well for them and the setup they have with the on10 web servers.

However, what if you didn't want to deal with spawning off threads and putting timers into your ASP.Net application? Is there some other way to do background processing with ASP.Net? What about Windows Workflow Foundation (WF)?

First off, why would you want to use a workflow for something like this? Well, I think workflows are nice because when you come back to the code six months later and want to do one more thing when the user signs up, it is very easy to look at the process and add something more. So the workflow is a nice addition for things like this.

So what are the options with a workflow? Well if you read this article by Dino you will get a good idea about how to use workflows in ASP.Net. However, there is one problem with the code in the article: it is being executed while the user waits for the response to come back. This is fine in a lot of cases, but what if you're looking at the case I'm talking about?

In this case you need to use the DefaultWorkflowSchedulerService instead of the ManualWorkflowSchedulerService. The Default service will allow WF to manage the execution of your workflow and it will spin up threads as needed to process it (and the user won't wait). However, ASP.Net doesn't like other processes spinning up a bunch of threads. I posted a question about using this method to the Advanced Workflow blog and as I was working on this post my question was answered. :)

So while I was able to get this working (and I fell in love with workflows in the process), it is not the recommended solution. In fact, the recommended solution is to put the workflow in a windows service and map to it with Indigo (Windows Communication Foundation).

I guess this means I'm going to learn Indigo, because I definately like workflows...

Update: From Moustafa Khalil Ahmed I found another article on ASP.Net workflows from Paul Andrews. Apparently the WF team has made some changes to the ManualWorkflowSchedulerService so that it can run as a background process (meaning it will work much like the default scheduler) in ASP.Net. This is great news! I have actually already coded my solution as a Windows Service that is called via Indigo. However, I'm definately going to change it back because the whole windows service thing really complicates my project when it comes to testing and deployment. Thanks guys, it worked out perfectly, I was forced to learn more about Indigo and then I get to go back to my simple solution!

I-mate SP5 A2DP

Posted in Gadgets | Windows Mobile at Monday, April 24, 2006 5:19 AM Pacific Daylight Time

Lately I've enjoyed listening to DotNetRocks and HanselMinutes during my commutes to/from the client. I was using the cheap headphones that come with the SP5 which work pretty well in that taking a call while listening to a show is pretty seamless. However, being a gadget guy I thought I would like to upgrade to some better headphones.

Round One - My wife bought me a the HS850 handsfree device from Best Buy. I set it up and start my drive to work. I put the headset on and hit play on the phone. Strangely the audio comes out of the phone's speaker instead of the headset. With a little google research I figure out that I will need stereo headphones to play windows media to the hands-free headphones. The HS850 goes back and I order the HT820 stereo headphones.

Round Two - The new headphones come in and while the hands free part of the headphones work just fine with my SP5, the stereo part does not. A little more google research and I figure out that the phone would need to support A2DP which is part of the AKU2 update. I already have applied that update from i-mate so I put in some support requests and post questions to their support forums: no response. I give i-mate a 1 of 10 for their support on this. As far as I can tell, the A2DP support was pulled from the SP5 AKU2 update, maybe in the next update.

Round Three - Ok fine, my perfect scenario won't work, maybe I can salvage the situation a little by using the headphones with my Toshiba M2 laptop since it has bluetooth. Well I'll skip all the work it took to get a Toshiba bluetooth stack with A2DP, but eventually I found the download (hint: it is the one for the m5 (v4)). Everything seems to be great until I try to connect to the headphones and get the screenshot above. WTF is SCMS-T?!?! Thankfully I was able to google up a solution from here to here to finally here which contains a link to this file. Run the file and it turns off the SCMS-T requirement. Sweeet! Now I'm listening to music and when a call comes in on my phone I can answer it while the music pauses. Fast forward, skip tracks, etc. It all works great, as long as I run that program everytime I reboot my laptop. :(


Why is this so difficult? At this point I'm ready to buy an MP3 player to use as my music source and just deal with having multiple devices. But I can't seem to find a player that supports A2DP over bluetooth. Imate: update your software! Toshiba: WTF is SCMS-T? Motorola: I love the headsets!

Update: [via SmartPhoneThoughts]:

"The guys over at xda-developers.com did it again and found a way to enable A2DP on Windows Mobile AKU 2 updated devices, even if your operator left out the A2DP and AVRC Bluetooth stereo profile out!"

Amazing! Downloading now....

Update2: It works! I can now use my HT820 headphones with my sp5. The interface has a few bugs (like windows media doesn't automatically restart when I'm done with a call), but hey it works. If you're looking to get this working go here and/or here. I had to turn off bluetooth, then power down and back up to get it working on my phone.

Squeaky Mice

Posted in Gadgets at Monday, April 24, 2006 3:51 AM Pacific Daylight Time

A few months ago I purchased a Microsoft Notebook Laser Mouse 6000. A few days ago it started squeaking whenever you click the left mouse button. After a quick google search I see I'm not the only one noticing this. The squeak is starting to really irritate me. Any ideas?


Mobile Data Access Speeds

Posted in Gadgets | Windows Mobile at Monday, April 24, 2006 2:58 AM Pacific Daylight Time

Just read t-mobile vs. verizon and I have to agree with the conclusion (vzw beats tmo every day of the week). I'm a tmo customer since I get the plan as part of my compensation package. So I ran the same tests on my phone and the best I could do was 190 kbit/sec with the 1MB test (I couldn't figure out how to do a screen capture).

I really like the sp5 (despite the lack of a2dp support, more on that later) and the new push email support rocks. Whenever my phone buzzes at work I know that I need to hit send/receive in Outlook. But I'm definately tempted to make a switch to vzw because of the faster data access (Sprint is just as fast, but do you really want to deal with that company?).