About Me

My photo
My name is Vadim Hudolozhkin.

I enjoy studying science and the philosophy behind it. Here I'll be discussing my ideas on programming, mathematics, philosophy, trading, staying fit, dieting, computers, and just about anything else I find interesting. Ideally this blog will serve as a repository of wisdom for myself and others. Enjoy and share some ideas!

Friday, December 21, 2012

My Dvorak Keyboard Experience

At the age of 16 I typed at about 65 wpm(words per minute) using Qwerty. I felt limited, so I decided to give the Dvorak keyboard layout a try. The supposed benefits are a doubling of typing speed, and less finger 'walking', so less stress on your hands and fingers. It's part of an ergonomic environment! Here's an illustration of the typical Dvorak keyboard layout:



This is the layout I use, and I absolutely love it. Using this layout I can feel just how much less my hands have to move to type, and it's made a significant impact on my hand stress levels. The layout comes conveniently included in all operating systems. On a windows machine all I have to do is bring up the run dialogue(Windows key + R) and type in intl.cpl like so:

 < I hit enter and the Region and Language settings come up. From the Region and Language window click on a tab that says something along the lines of 'keyboards and languages'. There you can 'change keyboards', and add whichever layout you prefer. Even on a machine I've never touched before, I'll be able to switch the keyboard within 30 seconds, and hotkey it to switch between Dvorak and Qwerty(In case someone has to jump in and type something on it). When I'm done I need another 30 seconds to disable it so no one hits the keyboard switch hotkey by mistake and freaks out. Or if I'm coming back to the machine later I'll set a custom hotkey that is nearly impossible to hit by mistake. Since I've memorized the layout to memory, I don't need to pop out keys or carry around my own keyboard.

A little Dvorak history:

Qwerty(the layout that comes printed on the keyboard you're using) was developed in the 1870s, and was made for a typewriter. You had to hit the keys hard, and one at a time, otherwise you'd end up with a jam as shown to the left here.

The interesting thing to note here is that the Qwerty layout is designed to make sure you don't type too fast, because if you do type too fast your typewriter jams! Qwerty is made to have your fingers 'walk' or move more to reach the desired key, to help prevent jams.

Silly fact: You can type the word 'typewriter' by using just the top line of the Qwerty keyboard layout. This made it easier for salesmen to pitch their products since they didn't have to learn how to type, and they could show off the speed and efficiency.

We've moved beyond the limitations of a typewriter, but unfortunately the Qwerty layout has stuck around, and most people don't think twice about a more efficient layout. 

August Dvorak developed the Dvorak layout in the 1930s, studying specifically which letters were used more frequently, and placing them closer to the home row. In the 40s he also developed a left hand layout and a right hand layout, for the one armed typist, or I guess for someone that wanted to type on two keyboards at once.

My experience with Dvorak:
I thought it'd be silly to buy a keyboard with the Dvorak layout. There's also keyboard covers that you can slip over your current keys to see the layout. I felt like I didn't have to spend the money since I could just pop the keys out of my keyboard, switch the layout on the computer, and place the keys back in according to Dvorak. So I did! I was a decent Qwerty typist at this time, probably about 65 wpm.

The first couple days were dreadful. Sometimes I would search for a letter on the keyboard for MINUTES at a time, getting frustrated. I didn't switch back to Qwerty unless it was absolutely a matter of life or death. I was at 1 wpm on a good day.

After about a week I started remembering some of the letter's positions, but still had to look down to find most of them. I probably had 5 or so key positions memorized. My wpm was still terribly slow, below 20.

After a month I would still look down for about 50% of the keys, but the positioning came to me the second I looked, whether I saw the letter or not. That split second of focus on the layout was all I needed to remember. I was probably at 35 wpm.

I finally surpassed my Qwerty typing speed by month three, and by the end of month four I had memorized the layout. Typing speed was about 80 wpm during month four.

After six months I switched the physical keys back to Qwerty style on my keyboard, for the sake of my friends. They'd come over and trip out trying to type, 'whoa...' was the usual reaction. So now my keyboard looked like Qwerty, but I could switch the layout with a hotkey, and type happily in Dvorak since I didn't need to look down at the keys anymore. Just for fun I would do typing exercises to see how fast I could be, and here I got to 105 wpm, almost double my initial Qwerty speed. I'm sure I could get it faster, but I didn't have a job that demanded it, so I figured why do the exercises so religiously.

Conclusion:

Funny enough it felt like my Qwerty speed had gotten worse, but it didn't, still at 65 wpm. It was just slower relative to Dvorak. It's been at least 5 years since I learned Dvorak and I still use it as my default, and change to it any chance I get. The difference between the two layouts is hard to describe, just imagine every key being in a more ideal spot. Your fingers leave the keys less often; when you see me typing with the Dvorak layout, it almost looks like I'm not typing at all. Look at the home row on Dvorak, AOEU HTNS. Not having to move my fingers at all for these common letters is such a nice feeling. Since I haven't been doing essay after essay, my speed has slumped to a casual 80-85 wpm. With a little practice or just a typist occupation I'm sure that would go back up. Who knows maybe this blog does it. Either way it's made typing more enjoyable. My thoughts shoot onto the paper, and all the while my fingers are strained much much less, it's extremely noticeable. I used to feel as though I was limited by Qwerty, I felt frustrated, wondering why I couldn't type any faster. Turns out that's all by design!

For anyone interested in learning the Dvorak layout I say DO IT TO IT! It's an awesome learning experience, a fun trick, easier on your fingers/hands, and it increases your typing speed! The slip on covers are a good idea. That or taping little pieces of paper to your keys, next to the letters printed on the keys. Or you could take the barbaric approach I did and just pop them all out. (Funny, I just realized Mac keyboards have the printed letter centered on the key, where as other manufacturers have pushed the letter to the top left of the key, to give room for additions such as foreign language letters like so:
 
)

Anyway overall I'm glad I learned Dvorak, it's saved me tons of stress. If you choose to take the journey, enjoy your new typing super power and party trick!

Tuesday, December 18, 2012

Cygwin

I downloaded the cygwin terminal to get a bash unix shell experience on my windows laptop.

There's also tcsh(C shell), an upgrade of the csh, which was started a couple years before bash, but they're both Unix shells. bash is supposed to be sh, csh, and ksh 'bashed' together. I'm sure they differ in functionality and I want to find which one I like best. An environment that emphasizes the terminal would be fun to learn, and a useful tool!

I'll try a couple different ones on VMs (VMware) before I reformat. I want to find nice dynamic, well supported coding environment. I'm open to any suggestions!

Cryptography with Paint

A friend once asked me how cryptography works. That is, how can 2 parties communicate something secretly with a 3rd party always listening? Well here's an awesome primer on how cryptography works in the modern world that answers this very question.


Some notes while researching computational complexity theory(one way functions and the like):

  • There's also a 'trapdoor one-way function' or just trapdoor function:

  • 1. If a function |code: x(1, 2, 3)| is passing elements like the figure above, it's called an injective surjective function. It's a bijection, which means the pairing of elements is exact. There are no unpaired elements.

  • If the same function |code: x(1, 2, 3)| performs the change shown above it's called an injective non-surjective function. This is obviously not a bijection.

  • And this would be considered a non-injective surjective function. It's a surjection, which means some elements will be turned into the same element.

Just some handy terminology for reference. It's also nice to match the terminology with a process we can understand through a visual representation. So there's some hip coder lingo.

nice video describing the above from khan academy here

Finally

Hello World!

The start of a personal works blog at the age of 22, what could go wrong?!