Best setup to conveniently type English Dvorak, Vietnamese, and Korean (or any other East Asian language)

At first I thought I have to define three languages, because Unikey automatically made Windows switch to Vietnamese when I type, the default keyboard switching shortcut also conflict with Unikey’s (Ctrl + Shift); so every time I want to switch between QWERTY and DVORAK, I have to check whether I had accidentally turned Unikey off, and I have to press the language switching shortcut two times to switch between the two most used language (English and Korean). Believe me, that’s a lot of hassle right there.

So, after a lot of fiddling, I figured out I could just have it like this

My setup

(To add Dvorak to Korean, select “show more…”)

This way, I just need to switch between korean mode and English mode by pressing Ctrl + Shift (Microsoft IME still uses the QWERTY layout, which I don’t want to use, so I left it in 영어 mode). Conveniently, when I switch to Korean, Unikey is also turned off so I won’t accidentally put accent on Korean characters.

So, to summary:

  • To Type English, I can just type in Dvorak
  • I can also type Vietnamese, since VNI typing does fit really nice with English
  • Press Ctrl + Shift to switch to Korean, which also turns Vietnamese off



Shrink a partition on Windows – the right way

Problem: I have just received a computer, pre-installed with Windows. It is equipped with a 1TB disk, partitioned as a whole 😐 (Yes, that’s how HP partition their disk for you). I don’t have time to reinstall the whole thing; and I need to split the disk in two: The operating system, and the rest is for storage.

When I tried to shrink the disk in Windows Disk Management, I can only shrink it for about 500GB, when I used Pirisoft’s Defraggler to view disk content, it’s the files from winsxs directory that were placed at the end of the disk.

This may be some form of “optimization” Microsoft randomized into Windows. Be it or not, my first reaction was to run Windows’s Defrag utility, it reported my disk is 0% fragmented and won’t proceed, the files are still there (I guess they are just too small to be fragmented). Defraggler did worse, it started moving other small files into the area, while what I wanted is moving things OUT of there.

Searching the web proved futile, everyone says there’s no other way than using some obscure utility on a boot disk (my operating system is 64 bit, mind you, and a 32 bit defragger doesn’t sound fine to me) or reinstall the whole thing.

Well, after one day of searching, I finally found MyDefrag , it is sure not pretty, but it really do what it is supposed to do: move your files where you want them to be, and it ran fine on my system. Basically what I did was download MyDefrag, select “cosolidate free space” and click run. Voilà! Things started moving and in 10 minutes, my disk is ready to shrink (this time, Windows allowed me to shrink an additional 450GB). One thing to note though: My Defrag display the disk map upside down, so the end of you disk is at the top of the screen and vice versa.

A quick review of Microsoft SQL Server object types

  • Tables are the source of your data
  • Views are transformations of data. They are usually used to combine information from multiple tables, but they can’t have parameters in them, so they are not what to use if you want to filter your data
  • User defined function or Stored procedure is the Swiss knife of SQL server. They can do anything from automated transformation of data to data retrieval. Code generation tools usually support calling them