Chinh Do

Finds of the Week – December 30, 2007

First time here? Check out my greatest hits or look around in the archives, and consider subscribing to the latest posts via RSS or email. I am also on Twitter and Google Plus. Thanks for visiting.
30th December 2007

Finds of the Week – December 30, 2007

I have been a little bit busy this past week enjoying the holidays and playing some of my old favorite games like Rome Total War and The Elders Scrolls IV: Oblivion.

No big news in .NET world this week. We are still waiting for the .NET framework source code to be released.

Here is a screenshot from the game Rome Total War:

Rome Total War

And this is from Oblivion:

The Elder Scrolls IV: Oblivion

Happy New Year!

posted in Dotnet/.NET - C# | 0 Comments

23rd December 2007

Finds of the Week – December 23, 2008

.NET, C#, Programming

Software and Tools

  • DAEMON Tools is one of the best CD/DVD emulator. Use it to mount those CD/DVD images you download from MSDN. Cost: $0.

And Now, Something Different

Researchers found that young chimpanzees have an extraordinary ability to remember numerals that is superior to that of human adults. Skeptical? Just take a look at the video.

posted in Dotnet/.NET - C#, Programming, Software/tools | 0 Comments

18th December 2007

Type Ahead in Microsoft Outlook

Did you know Microsoft Outlook has supported type-ahead since Outlook 2003?

I didn’t. I upgrade my home PC to Outlook 2007 a few days ago and was pleasantly surprised to find type-ahead working. I fired up the old copy of Outlook 2003 and type-ahead worked in that version too. I am pretty sure it didn’t work in versions prior to 2003.

Type-ahead is great for using with the Move to Folder or Copy to Folder features. If you use Outlook to get your Gmail via IMAP, you’ll appreciate the type-ahead feature since you need to move messages a lot.

To see type-ahead working, in the Move Items dialog box (with a message selected, press CTRL+SHIFT+V), type the first few letters of any folder name. The current folder selection will move to the folder that matches what you type.

outlook-type-ahead-move-items

posted in Software/tools, Technology, Tips | 1 Comment

16th December 2007

5 Tips for Getting the Most Out of Gmail IMAP

Technorati Tags: ,

Gmail IMAP has been available for more than a month now. It’s been working great for me. I have read that some users are having trouble reading HTML messages on their Windows Mobile devices, but for some odd reason, I can see HTML messages (in HTML, not rendered) just fine on my i730 Windows Mobile phone.

Here are some tips to help you make the most out of Gmail IMAP. If you have not used Gmail IMAP, you can set it up by following the instructions from Google here. I personally use Gmail IMAP on my Windows Mobile 2003 phone, Outlook 2007, and Windows Mail in Windows Vista. However, these tips should work on any standard IMAP client.

1 – Be Familiar with Gmail IMAP Folders

Gmail IMAP has the following special folders:

  • Inbox
  • [Gmail]/All Mail – This folder contains all of your Gmail messages.
  • [Gmail]/Drafts – Your drafts.
  • [Gmail]/Sent Mail – Messages you sent to other people.
  • [Gmail]/Spam – Messages marked as spam.
  • [Gmail]/Starred – Starred messages.
  • [Gmail]/Trash – Messages deleted from Gmail.

Each of your custom labels also becomes an IMAP folder. Messages that have more than one labels will be in multiple IMAP folders.

Your email client may create its own special folders such as "Drafts", "Sent Items", "Deleted Items". These folders only have special meaning to your email client and not Gmail. These special folders can be seen in the web Gmail client as "[Imap]/Drafts", "[Imap]/Deleted Items". To Gmail, these are just additional labels with no special meaning.

If you use Outlook 2007, you can configure it to use Gmail’s Sent Mail folder instead of its own "Sent Items" folder:

outlook-imap-sent-items-folder 

Note that you can create more than 1 level of folders. You can have folders within folders:

Gmail IMAP hierarchical folders 

2- To Archive, Move the Message Out of the Inbox Folder

To archive a message, you can do one of the following:

  • Move the message to the [Gmail]/All Mail folder.
  • Move the message to one of your label folders.
  • Use your email client’s Delete Message feature. This won’t actually delete your message, but move it to a folder named [Imap]/Deleted Items. You just have to know messages in that folder are not really meant to be deleted.

    Since I sometimes use the Delete button for its intended purpose (see section 3 below), I do not use it to archive.

    Archive Gmail IMAP message in Outlook

Applying Multiple Labels (Updated Jan 23, 2008)

To apply more than one label to a message, copy the message to the respective folders. "Copy" does not actually create a new copy of the message. There’s still one message stored in Gmail. It just gets a new label.

To remove the message from a folder, move it to the special folder [Gmail]/All Mail. Don’t move the message to [Gmail]/Trash, as that will actually delete the message from all folders (it will be gone forever when you empty the trash), unless deleting is really what you want to do.

(I originally wrote incorrectly that copying will create multiple physical copies. Thanks to Hans Ref for correcting me on this).

3 – To Delete, Move to [Gmail]/Trash Folder

To delete a message, move it to the [Gmail]/Trash folder. If the message is in more than one folder, Gmail will delete those copies as well.

Deleting Gmail IMAP message with Outlook

Using the email client’s Delete feature will likely not really delete the message, but instead move it to the [Imap]/Deleted Items folder.

Sometimes I use the email client’s Delete command anyway, because it’s faster to press the Delete key. Once in a while, I then go into the Deleted Items folder and move messages from there to [Gmail]/Trash. Same result in the end.

4 – To Report a Message as Spam, Move to [Gmail]/Spam Folder

See a pattern now? Most of what you need to do with Gmail IMAP involves moving messages around.

To report a message as spam, what else… move it to the [Gmail]/Spam folder. This is just like clicking ‘Report Spam’ in the Gmail web interface. Don’t believe me, it comes straight from Google.

Likewise, to mark that was marked as spam by Google incorrectly, move it out of the [Imap]/Spam folder.

5 – Import Old Mail

If you are like me, you have archived a ton of old email messages from years past. With Gmail IMAP, it’s easy to import them into Gmail so you can have all of your email messages from all time in one place, all searchable.

Just use the copy feature of your email client to copy those old messages into one of the Gmail IMAP folders. Google advices that you should copy the messages in small group because "uploading an excessive number of messages to your Gmail account via IMAP may lead to being temporarily locked out of your account." Anyone knows what the limit is?

-

There you have it, my 5 tips to get the most out of Gmail IMAP. For more information on how to use Gmail IMAP, see Google Help Center for IMAP.

Updated 2008-01-17

posted in Gmail IMAP, Software/tools | 22 Comments

15th December 2007

Finds of the Week – December 15, 2007

Here are this week’s finds:

.NET, C#, Programming

Software and Tools

And Now, Something Different

Here’s a Christmas tree made out of Heineken beer bottles. I took this picture last December at the Imperial Hotel in Hue, Vietnam, while vacationing there. Click on the picture for a larger version.

hue-imperial-heineken-christmas-tree

posted in Dotnet/.NET - C#, PowerShell, Programming, Software/tools | 0 Comments

8th December 2007

Finds of the Week – December 8, 2007

It’s been a busy week. Here are my finds for this week:

.NET, Programming

  • PackageThis is a new CodePlex tool from the MSDN team that allows you to package your own MSDN Library content. Useful to get the latest MSDN content to use locally (fast).
  • Joe Shirey, a board member of the Microsoft Certified Architects program, has written a nice series about the Microsoft Certified Architects program.
  • Alik Levin advised that we should avoid populating passwords in memory, because it’s relatively easy to reveal. A walkthrough of how to use WinDbg to obtain passwords in memory is provided.
  • The Programmer Dress Code by Justin Etheredge is a fun read on what about programming that makes programmers generally dress like a slob. Pictures of famous programmers included.
  • GavinBenda (gavinbenda.com.au) posted a comprehensive guide to web charts and graphs.
  • Unit testing; how far do you push the envelope? (odecee blogs) is a interesting read on the issue of how much unit test code is enough.
  • SQL Server 2008 will have IntelliSense, by Ciz. I have not worked with SQL Server in a while but when I get back to it, this should help make it more fun.
  • Dan Wahlin wrote about the new C# 3.0 feature Automatic Properties. Dan also wrote a nice article on Visual Studio magazine on how to create rich web apps with AJAX.
  • Jeff Putz gave his impressions on Visual Studio 2008 after a couple of weeks of use.
  • One of the most annoying application behavior is stealing current focus. Jeff Atwood (Coding Horror) wrote on why stealing focus is never acceptable.
  • What’s Ailing ASP.NET Web Forms, by Rick Strahl, is a good article about some of the major problems/issues with ASP.NET web forms. Good read.

Software and Tools

  • XPathMania, by Don Demsak is a nice Visual Studio add-in to check XPath statements against the current XML document. Matches are listed in the XPathMania tool window as well as highlighted in the actual XML document. Double click on a match to move to it.

    xpathmania1

  • Picasa (from Google) is my current photo album/manager tool. It’s fast and fun to use. With Picasa Web Albums, it’s a very nice combination.

    google-picasa-1

And Now, Something Different

  • For Richmonders, if you feel like driving around one night in December to look at all the nice Christmas lighting sites in town, check out InRich.com’s Richmond’s Tacky Christmas Lights map. I have done a company sponsored Richmond Christmas lights bus tour in the past and I found it to be entertaining. With the InRich.com map, you can do your own personal tour.

    richmond-tacky-christmas-lights

  • Here’s my apprentice programmer Dat Do at 14 months old. I try to teach him C# but his code doesn’t quite compile yet. Maybe I should start him on QBASIC instead?

    dat-do-14-months

posted in Dotnet/.NET - C#, Programming, Software/tools | 3 Comments

3rd December 2007

Light-weight System.Transactions in ODP.NET

Starting in ODP.NET version 10.2.0.3.3, support for light-weight transactions has been added. Here’s an excerpt from readme.txt:

This feature enables applications to use local transactions with System.Transactions where previous versions of ODP.NET supported only distributed transactions with System.Transactions. If the PromotableTransaction registry does not exist, the default value of “promotable” is used. If “promotable” is specified, first and subsequent connections opened in the same TransactionScope will enlist in the same distributed transaction. If “local” is specified, the first connection opened in the TransactionScope will use a local transaction. If any subsequent connections are opened within the same TransactionScope, an exception will be thrown. If there are connections opened already in the TransactionScope and an OracleConnection with “Promotable Transaction=local” is attempted to be opened within the same TransactionScope, an exception will also be thrown.

This is great for those of us who use ODP.NET with System.Transactions, especially if you use global temporary tables. I found out the hard way that global temporary tables are not supported with distributed transactions.

Version 10.2.0.3.3 is not yet available for download via Oracle.com. You have to request it through Metalink. Search for patch number 5916667. I have not tested this patch yet but I will soon.

posted in Dotnet/.NET - C#, Programming | 4 Comments

30th November 2007

Finds of the Week – Nov 28, 2007

I took a break from blogging last week for the U.S. Thanksgiving holiday. Here are the Finds for this week.

.NET

  • Just in case you have not heard, Visual Studio 2008 has been released (ScottGu). I installed the released version earlier this week and everything looks good so far. The first thing I noticed was the very quick load time compared to 2005.
  • Silverlight 1.1 is now 2.0. By Tim Sneath.
  • Dan Fernandez listed the top 15 things to love about Visual Studio 2008 Express.
  • Service Pack 1 for .NET Framework 2.0 is available. By Guy Barrette.
  • Aaronontheweb shared 5 Hot ASP.NET Tips and Tricks for the week of 11/20/2007. By Aaronontheweb.
  • bloggingdeveloper wrote a nice article on how to compress ViewState.

Software and Tools

  • Odiogo can make your blog talk. By Mads Kristensen.
  • I have been a long-time user of MSN Money Porfolio and stock charts but lately I really liked the stuff Yahoo! has been adding to their Finance section. Their new Flash-based stock chart is the best in its class. My favorite feature is the ability to drag left/right to go back/forward in time. Also their quotes are now streaming (AJAX)… meaning anywhere you see a price quote, it will be automatically refreshed. Real time quotes are available for as an optional service as well.

    Yahoo! Finance Stock Chart

  • To track disk space usage, my tool of choice is Windirstats. Windirstats is Open Source.

    Windirstats

Tech, Windows Mobile, Gadgets

  • Google has just released the beta version of My Location, a service that allows GPS like functionality with Google Maps on your mobile device without a GPS. It doesn’t work for me on my Samsung i760 though. I always get this error message: “Your current location is temporarily unavailable”.

    Google Maps My Location

    Looks like many others are getting the same error as well.

And Now, Something Different

Be careful where you put your cellphone.

posted in Dotnet/.NET - C#, Links, Programming, Silverlight | 1 Comment

16th November 2007

Finds of the Week – Nov 16, 2007

.NET

Software and Tools

Tech and Gadgets

  • Dish Network enables ethernet ports on ViP622 HD DVRs. The main feature that the broadband connection brings is video on demand. The ethernet connection also allows the box to call home via the Internet instead of using the phone line.

Miscellaneous

  • View popular “sightings” on Google Maps, Windows Live Maps, and Yahoo Maps at Virtual Globetrotting

And Now, Something Different

I cut a kiwi fruit in halves the other day and this was what I saw:

Kiki Fruit Heart

posted in Dotnet/.NET - C#, Gadgets, Technology, Windows Mobile / Pocket PC | 3 Comments

14th November 2007

EPoX EP-9NPA+Ultra 939 Motherboard and 4GB of RAM

If you have an EPoX EP-9NPA+Ultra 939 NVIDIA nForce4 Ultra ATX AMD Motherboard, and you installed 4GB of RAM, the BIOS may only see 3407872K Total Memory:

Epox EP-9NPA+Ultra 4GB Vista

To enable the BIOS to see the full 4GB of RAM, do the following:

  • Enter the BIOS Setup Utility (reboot and press Del key).
  • Choose Advanced Chipset Feature, then DRAM Configuration
  • Change “S/W memory hole Remapping” to Enabled
  • Change “H/W memory hole Remapping” to Enabled

Epox EP-9NPA+Ultra 4GB Vista

If you have Windows XP or Windows Vista 32-bit, the operation system will not see the full 4 GB anyway. The “fix” is to upgrade to Vista 64-bit or just live with whatever amount of RAM the OS can use. My Vista 32-bit installation reports 3327 MB of total memory.

Epox EP-9NPA+Ultra 4GB Vista

posted in Technology | 17 Comments