University Programming 1

Another semester at our local university is coming to a close. This semester I have been tutoring a buddy in Programming I. Reflecting on my tutoring sessions with him has reminded me about my first college programming class way back in 2003 at Arkansas State, Jonesboro. Not a lot seems to have changed.

The ugly

What I am getting from him is that they are using this class as a weed course. A course where they intentionally let you squirm, and suffer, to see if you got what it takes to attend the university.  I hate these kinds of courses. This type of programming course reinforces that myth that your either a programmer or your not, you got it or ya don't. This type of programming course is the type of thing that makes people erroneously think they hate programming. I promise you don't hate programming. It is just the way computer science presents it. Also, if you just started I want you to be aware a CS degree is designed to make you a computer scientist, not a programmer. There is a difference.

OK back on track, What kids of problems did I have with his class? I'm glad you asked, there was only one or two. :)
  • 1 professor, and a couple of over worked TA's wrangled 180 students.
  • They were given their homework and told to start on it before they had learned the material it tested them on.
  • To submit their homework they had to ssh into a UNIX box. The majority of CS 101 students didn't know what UNIX was.
  • Their TA's gave told them to use vim.
  • 4 Weeks later their TA's told them about notepad++
  • They were not taught how to understand their errors.
  • They were not taught how to format their code.
  • Their homework instructions had 2 - 10 errors on each assignment.
I don't mean to be too hard on the Professor, or his TAs. It is possible the department sets up these class sizes, and the format he has to follow. I'm sure the TAs are just following orders. Also I love vim, I use it at work, but it isn't the right tool for someone just starting out. Do you think Jugglers start with 5 items? Gradually building on what we learn is the key to not overwhelming someone. 

An unintended side effect of throwing them into a Linux like environment with a list of steps is that they didn't understand what they were doing, and it was slow and painful. To compile you had to :wq then type gcc hw1.c then wait for the errors. If none then, you could type ./a.out to see if it ran with the right output. These were steps to him, and they were cumbersome. He didn't see the connections between them. He didn't understand we could stay inside of vim and just type :w to save and :!gcc hw1.c && ./a.out. Then use the up arrow to repeat instead of retyping. If their intention was to teach them something about another OS, I think they only taught these beginners that this black text box is slow, disconnects a lot, and the steps for it to make programs are a pain in the butt.


If I had to sum up my tutoring with him into a few statements they would be.
  1. Practice, and practice some more.
  2. What you think is super hard now, will look normal in 2 weeks, and easy after 4 weeks.
  3. Don't just read, understand. 
  4. Keep things organized. 
When he first came to me with his first homework assignment he was struggling with if statements and case statements. We talked it out and visualized it with some white board drawings and after about 4 hours he had done his homework, and he had a basic understanding of these control structures. I can't fathom not understanding if statements. I assure you just like I assured him, at some point I also struggled learning the same material. About eight weeks later, I am helping him with multidimensional arrays, and for loops. As we are reviewing his code we come across an if statement and he says "I can't believe how hard I thought those were!?" I immediately asked him, "How many if statements have you written in the last 8 weeks do ya think? 50? 100?"  Practice.

Another basic problem he had was the same as something I did when I first started. I would read the errors see a line number and hunt for something wrong on that line back in my text editor. Honestly, you can do that and find a large portion of your errors, but to find them faster you should read the actual error, and understand it. This is where I think that the programming teachers fail. They teach how to use the language, but not how to debug it, or really understand what is happening. Spending some time on "unknown identifier", "missing matching )", or "expected , or ;" would lower the amount of frustration the students endure by a hundred fold.

Following on the debugging complaint from above; my advice to you is compile every line as you write it. Until you get a good handle on what your doing this is the fastest way to catch problems. My buddy shows up with his second assignment and tells me I got about 80% of it wrote, but I have some questions about the last 20% before I can write it. I was impressed, but I was also a bit suspicious. When I inquired about whether that 80% actually compiled he informed me he hasn't tried yet. He was waiting until he wrote the whole thing. I face palmed. I made him compile his 80%. GCC told him he had about 200 errors, and looked like it had barfed all over his screen. I had him take it 1 error at a time from the top, and 30 minutes later he had found and fixed the real 15 errors. 

Being a programmer

If you want to be a programmer, getting a CS degree is one path. But, please be aware that there are other paths now, and having a CS degree won't make you a better or worse programmer trather than just signing up for a class or shadowing a programmer, han people who have taken these other paths. Other paths include boot camps, and intensive onsite programs that will teach you to code, and many even place you with a company afterward. MOOC's have a lot of the same material as actual universities for free, you are just doing it on your own at your own pace. You could get a degree in something else and learn programming on your own time. I know several people who started out with photography, and ended up in web design and programming. I know others that started in IT and ended up programming. There is no rule that says you can't do cross discipline. 

Programming, to me, is taking a big problem, breaking it down into smaller workable problems, and then working on them. I solve puzzles. Personally, I like getting paid to solve puzzles. I think programming is a wonderful profession with lots of neat jobs. If you think you might be interested take a few programmers out to lunch, ask them about programming, how they got into it, and what they recommend. 


Well Rounded Traveling

TL;DR; Every place you visit has it's pro's and con's. Don't get caught up in either extreme.

Have you ever heard of the 4 stages of living abroad? I look at those stages a bit more broadly than just living in a foreign country. I think they can be applied to people who visit, and study abroad also. I think most people get stuck in one of the first two stages.

This country is so cool!

Raw seafood that came with our hotpot!
I think that lots of people who go vacation, or do the tour group thing in a foreign country get this honeymoon mentality. They see all the good, and chalk up all the bad they notice as some cute quirky issue/story they can tell at dinner parties.

My personal experience in this stage is with Taiwan. I went over for the first time in December 2002 at age 19. It was my first out of country experience and I had 3 weeks of fun. I was shown around all the touristy spots, treated to more than I deserved and everyone was extremely kind to me. When I got back I was telling everyone about this cool thing, and that thing "we" could do over there that couldn't be done back home.

I have seen, on forums, and heard in person stories of people who want to learn Chinese because,  they went on a tour of China and everyone was so nice, and everything was so pretty, and they have so much history. They just gotta learn Chinese! If your one of those people. Cool, go for it. Just realize that initial motivation isn't gonna sustain you. Find more reasons to learn in case that one isn't enough.

Why don't they do things the right way?

That home sick stage is what I think a lot of foreign students get stuck in. Speaking just from personal experience I see the majority of foreign students from non English speaking countries get to this point and not pass it. They end up forming tightly nit communities of people from their home country, they cook their local cuisines and only go out to a few safety restaurants. They are here to get their degree and then get outta dodge.

Part of a burned out castle in Missouri, USA
For me this stage manifested in a few ways. At the end of the first trip we landed in Memphis and the first thing I wanted to do was eat a hamburger. Later on my then girlfriend's mother came to visit and stay and I noticed all her foreign habits. They were no longer cute or weird, they were annoying and I complained about em. Did you know Taiwan women will fart in public without a care for who hears. Over here that's rude, over there, it's just business as usual.

Blind spots...

At this point in my life I don't really consider myself an Asiaphile, or in love with Taiwan. I do feel comfortable in Taiwan. But I also have a strong desire to visit other countries and and learn other languages. After I get to a certain point in my Chinese speaking, I plan to learn both Spanish, and Japanese. Like I mentioned earlier I have had my moments where I was a total Taiwan fan boy.

When I first started going to international club and meeting Chinese people, the majority were from China, and I just had to tell them how much better Taiwan was from what the news, and my imagination had decided China was like. I thought I was helping them, or maybe I thought they were being down on my adopted second home.

I had a Chinese teacher that had done part of his degree in China. He married a Chinese woman and took student groups most every summer on trips to China. When the class would occasionally digress into politics, or cultural topics he would unconsciously say "we," and "us." He would also argue from China's perspective giving the impression that China was what he considered his homeland, or the best position.

I have another friend who is an expat in Korea. Her second or third year there we were having an IM conversation and I was talking to her about Japan. She did not like them. Unconsciously used that some "we", and "us" terminology, and she was repeating negative views and opinions about Japan that a portion of Koreans have.  I'm happy to report she has since since moved past that phase and even visited Japan a few times. As far as I know she now, has zero animosity towards Japanese people.

Keep it real.

Those first two stages seem to me where the majority of people get stuck. I feel like for now I am in the third stage. When I am in Taiwan I don't really have trouble orienting myself or getting from A to B, but I still have issues. With this post I'm not saying don't travel. I am also not saying you have to look for the bad. I am just asking you to do your best to be aware of your bias. Maybe ask your friends to help keep you in check and vice versa, or maybe your tour guide is only able to tell you the highlights. That's OK, now your in the know. It is important to go out there experience stuff.

I think keeping your biases in check will help you enjoy your experiences more than just blindly seeing only the good, or bad in a place. It will also help those you share these experiences with to better understand the world we live in. It is natural to want to draw comparisons to what we know. But do your best to not make it sound like a comparison chart. Do your best to not make it sound like a division of us and them.


Learning Characters to Build a Strong Foundation

When I am being nosy on various Chinese forums, iTalki, and other language learning sites I often come across people typing out pinyin Chinese. Ni hao, wo ai ni! Xie xie lao shi!

I usually wonder something like "Isn't using the character version just as easy?" IMHO characters looks way cooler. 你好,我爱你!谢谢老师!I have asked a few people, and a few teachers why pinyinese is even a thing. From what I gather, most of these students just want to focus on conversation, or they feel reading and writing requires too much effort. They don't wanna be bothered with all that stroke count, radicals, and character composition mumbo jumbo. Fair enough, if you are one of these people and that is what you want to do, then that is what you want to do. Keep on learning, and don't be discouraged. You can always choose to learn them at a later date.

A bold statement

I don't know anyone who started learning Chinese as an adult, who is a fluent* speaker, and cannot also read characters. -Me
Even if there are some, I doubt they make up even 1% of the total. Most adults I know that can speak but not write are ones who moved away from a Chinese speaking country as children. I think that it would be extremely difficult to reach a higher level of spoken Chinese without learning to read characters. Not impossible, but difficult. With that in mind I am not saying you have to learn characters from the get go, but I think if you to want to reach a fluent level you should learn.

If your still reading, please allow me to throw out a few reasons why it might not be such a bad idea to learn the characters along with all these cool new words your learning.

They are not that scary

A lot of people see all those squiggly lines and just think it is gonna be too hard. It is not. Each character is made up of a finite number of radicals. Radicals are basic characters that are the building blocks for all Chinese characters. It is just like any other activity. When I see 妈 I don't think 6 strokes, I think woman ( the meaning hint ) and horse ( the sound hint ). I only had to remember 2 things. Those two radicals are in so many other characters after you get used to writing them you will have trouble forgetting them. 

What about that crazy stroke order? That must be terrible to keep track of for every character! Actually there are just a few simple rules to get your stroke order right. In my opinion the stroke order is more about making the character look right. Don't tell your Chinese teacher I said this, but if you occasionally get your strokes wrong, no one will notice it while reading your short story. 

It can help in so many ways

From the distance this looks like a crappy building. If you can
read the white sign. You know there is a Sichuan style
restaurant there.
The written word can clarify. When I was first starting out with conversations. I got my tones wrong a lot, my accent was much thicker, and my listening skills were weaker. As I was practicing talking with my language exchange partner we always kept a notebook on the table between us. If he had trouble understanding what I was trying to say I could scribble out a character or two to clarify. There was no need for a switch to English. Afterward he would coach me on how to say it better. More recently I have been doing Skype conversations and when I say something that gets misinterpreted more than once I type in the Chinese character to clarify. 

Characters themselves have built in hints. Characters are formed in several different ways, but the largest portion are formed by what is called Phono-semantic compounds. That's a fancy way of saying part of the character refers to the sound and part refers to the meaning. Realizing and understanding this gives you a great advantage when it comes time to remember the sound and meaning of one of these random pictures! 

Using Chinese input can clarify a misinterpreted sound. The initial sounds "ch“ and ”q“ sound very similar to me. If I am typing out one of these in my computer and I type "qumen" instead of "chumen". I get immediate feedback in the form of characters. You don't get this if you just type out the pinyin.  This is especially useful with the southern Chinese accent where sounds like shi and si sound much more similar than in the north.

Two other ways of forming characters attempt to directly translate objects or idea's into a picture form. You might have seen something like this on Chineasy. Sadly this is only a small portion of characters, but even so these characters become extremely easy to recall how to write and what they mean. Not only that, but like most things in life these basic components are used as building blocks for compound versions. An example Wikipedia gives is 好. This is a woman and a child side by side to represent good. So again there is some useful logic to this madness.

Chinese refer to characters in conversation to clarify things. Often times when a Chinese person meets someone with an ambiguous, or unfamiliar last name they will ask them to spell it out using radicals. If you got a cool Chinese name, but you can't explain how to write it people are gonna write it wrong.

Some old people tell me that doing more work upfront makes things easier down the road. They are right. Giving yourself the written form, and understanding it's radicals, and how they make up the character helps you better remember that term later down the road. Learning more upfront gives you more ways to remember that piece of information later. An example: 说, 话, 谈, and 讲, are all about speaking. That left radical makes them easy to identify.

This last time I went back to Taiwan I was amazed at how much I could read. A good 85-90% of the big signs were readable, and for the most part I understand what they were trying to convey. I didn't understand the fine print of their political or real estate advertisements, but honestly I didn't care, I knew they were talking about mayors and renting apartments and that was enough.

As far as computers go, if you already know pinyin then there is no excuse why you shouldn't be trying to type Chinese. You can type in some pinyin and then pick the right character from a list. If you are worried you picked the wrong character, throw your sentence into Pleco or google translate. I get a thrill out of sending FB updates in Chinese, and enjoy language exchange chats via things like We Chat. 

Where to start

First, I would suggest you learn the characters for words you have already learned to speak. You could write out a few sentences, to practice these words. Start small, and work your way up. If your using a flash card system like Anki, just add them to your current cards. Don't write the word over and over 100 times. Write it out a few times to get the feel for it, move on, and then come back later.

One thing I did when I first found out about radicals was to try to find a comprehensive list of every radical, and memorize them all as fast as possible! HE-MAN! I failed hard. So rather than doing that, how about as you are learning new characters, if you see a radical used in three or four of the characters you are learning, pick it out and look it up. Another thought is to look up a list of most common radicals. I know in the Integrated Chinese books they have a list in their character writing book, and I think also somewhere before lesson one in the text book. You could also check out the list that Olle compiled on Hacking Chinese.

If you don't know how to add Chinese character support to your phone or computer Pinyin Joe has howtos for a ton of different setups. Follow his instructions and you will be set up in no time.

Before Pleco figuring out the breakdown of a character could be tricky. Now, you can look up a character, and then click on the CHARS tab and it gives you a break down of the characters composition. You can see what the radicals are, and what each part means. These two screen shots give you a visual of what I am talking about. 

Also, in the beginning, don't worry about grammar. Don't fret too much on which punctuation mark is the right one. Just write the same way you have been talking. The rest will follow in time.

Stroke order is pretty simple, with not too many rules. I am going to link to an Oxford Language Dictionary PDF. It has the rules laid out well and examples of how to implement them. Sometimes your still not sure and that's OK. When in doubt google it! Typing "龍 stroke order" allowed me to find a picture that writes out dragon for you.

Happy hunting

Don't worry if you get things wrong or forget a character or two. Try again, and move on. Notice that I haven't said you have to memorize all characters. We all forget how to write characters. I have several friends from China who every once in a while use their phone's Chinese input to remember what some rarely used character looks like. If a native speaker isn't perfect, there is no reason to put yourself to a higher standard than them.

* Fluent can mean so many different things. When I say fluent I am not talking about sounding just like a native speaker. I am talking about having full conversations with a native speaker at a normal conversation speed with the ability to convey your thoughts clearly, and understand their responses. 


My Typical Study Schedule

What is your typical study schedule like? 

Traditional Chinese Food
I feel like us learners don't have enough examples of different study schedules. Either we sign up for a class and let them tell us what is best, or we buy some program, or book series and follow along with it's recommendations. I did a google search for "Chinese study schedule" and I was hoping to find a bunch of tabular schedules, but I didn't find much of that. I also, was hoping to find some sort of hard goals with these tables, but even less luck there. Being the nice guy that I am, I decided to share some of my previous schedules. I have ordered them by date. At first I started throwing them up there as I remembered them, but after I put up a few I started to notice some patterns. I'll talk more about my observations after the schedules. Also don't be scared away by the length of this article. It is mostly the lists.

Mizzou Beginner August 2012 - May 2013

Main Goal: Learn Chinese!
Hours Per Week: 15 - 20
  • Monday - Friday
    • Morning Coffee & Anki Deck
    • Instead of Lunch I spent an hour in Chinese Class.
    • 5-10 hours a week of Chinese Homework.
  • Tuesday & Thursday
    • Lab, practice listening and speaking.
  • Wednesday
  • Weekend
    • Usually 2 hours of homework.
This was an intense learning period. This is where I transitioned from that learner who starts and stops and starts again, never getting past a beginners level, to someone who made real measurable progress. We were doing a lesson every week, and if I remember right after every 2-3 lessons we would have a review week and big test. This period was intense since we were learning everything at once( read, write, speak, and listen), learning some grammar and devouring around 50 new terms per week. My goal was vague and open. I hadn't yet learned enough to really know what kind of goal was reasonable.

Taiwan Mandarin Institute July 2013 (Intense 4 week session)

Main Goal: Learn traditional characters, and practice understanding a southern accent.
Hours Per Week: 18 on the class, + ?? random daily interaction...
  • Monday, Tuesday, Thursday
    • 4 hours of class
  • Wednesday, Friday
    • 2 hours of class
    • 2 hours of homework
  • Weekend
    • Lots of time with my wife's family and no wife to interpret. :)
This was a lot of fun. I had reached a lower intermediate level before arriving. I could talk and be understood but didn't always understand the replies I got back. Everyday I made it a point to go out and buy something as well as try and go somewhere new or try something new. The lessons were interesting, and I think I gained a ton of passive vocabulary, and grammar, but since we were moving at break neck speeds It was entirely up to me to go back and review the grammar I had learned.

Mizzou Intermediate August 2013 - December 2013

Main Goal: Keep up with a normal speed conversation.
Hours Per Week: 8.5 - 14 + ?? passive listening...
  • Monday, Wednesday, & Friday
    • Morning Coffee & Anki Deck.
    • Listen to Chinese music while working.
    • Instead of Lunch I spent an hour in Chinese Class.
    • On my way to downtown I would stop at the Bubble Tea place and chat with the owners for 5 - 20 minutes about all kinds of things. 
    • 2 - 5 hours a week of Chinese Homework.
    • 1 - 3 hours a week on other Chinese learning resources.
  • Wednesday Night
    • Chinese Corner
  • Weekend
    • Usually an hour of homework.
After having the one lesson a week every week for two semesters in a row switching over to one lesson for every three weeks felt extremely slow. Our teacher use some of the extra time to explore some Chinese that wasn't covered in our textbook. We got some basic exposure to cheng yu. We also got to practice breaking down characters into their radicals and understanding some of the sound and meaning cues that can have. Because we were learning slow I felt like I should supplement my learning. One way I did this was by getting a second opinion on my Chinese level. I used the HSK for this. I prepared for, took, and passed the HSK 3 in November of 2013. Another way I did it was to review my old ChinesePod lessons and work through the Rosetta Stone software I had never bothered to finish. While working on that main goal it helped me realize I was usually getting tripped up understanding the conversation due to new vocabulary.

January 2014 - October 2014 ( Self designed and implemented) 

Main Goal: Understand >85% of a normal Conversation.
Hours Per Week: 13 - 16 + ?? passive listening...
  • Monday, Tuesday, & Thursday
    • 6:30 - Anki review.
    • 7:00 - Preview today's lesson or review the previous lesson.
    • 7:30 - iTalki lesson for an hour.
    • Work - Listen to Chinese music or news while working.
    • 17:00 - Casual conversation in Chinese with roommate/wife for 5ish minutes.
    • 18:00 - Dinner and a Chinese TV show. 非诚勿扰, 爸爸去哪儿, 中国好声音, and so on.
    • 21:30 - Reading some Chinese. Usually comics and don't look up new vocabulary.
  • Wednesday
    • 6:30 - Anki Review.
    • Work - Listen to Chinese music or news while working.
    • 7:00 - Casual conversation in Chinese with roommate/wife for 5-10 minutes.
    • 18:00 - Dinner and a Chinese TV show.
    • 21:30 - Reading some Chinese.
  • Saturday, & Sunday
    • Wake - Anki Review
    • Lunch, shopping, or some physical activity with Chinese speaking friends. 
In my iTalki lessons we went over the rest of the intermediate Integrated Chinese lessons. Then we started going over the PAVC books. So each lesson we cover is topic based. Between each lesson we go over a few Chinese short stories that are level appropriate. My Anki decks are a mix of the current words I am learning, and past words I am reviewing. It took me two tries to pass the HSK 4, but I managed it in August. This 85% in the main goal is based on my perception of what I understood.

November 2014 - January 2015 ( Planned)

Main Goal: Understand >85% of a normal Conversation.
Hours Per Week: 17ish
  • Monday, Tuesday, & Thursday
    • 6:30 - Anki review.
    • 7:00 - Preview lesson.
    • 7:30 - iTalki Lesson.
    • Work - Listen to more natural talk ( conversations, talk shows, drama's)
    • 18:00 - Dinner and a Chinese TV show.
    • 21:00 - Write something in Chinese.
    • 21:30 - Reading something.
  • Wednesday, Friday
    • 6:30 - Anki review.
    • 7:00 - Accent reduction.
    • Work - Listen to more natural talk ( conversations, talk shows, drama's).
    • Lunch - Go to a Chinese restaurant and order and maybe chat in Chinese.
    • 18:00 - Dinner and a Chinese TV show.
    • 19:00 - Work on Cousera courses in Chinese.
    • 21:00 - Write something in Chinese.2
    • 21:30 - Reading Ender's Game.
  • Saturday, Sunday
    • Wake - Anki Review.
    • Do a 50/50 language exchange over Skype.
    • Lunch, shopping, or some physical activity with Chinese speaking friends. 
In the coming months I am going to attempt to reduce my accent some, as well as try and keep in practice with my writing. The Coursera courses are presented by Chinese Universities and taught in Chinese. Since they are video's and text, I can spend as much time as I need learning the new words as they relate to the material. To do this I picked subjects I already know in English and enjoy working with. Yay! Free work related vocabulary.


Some thing I noticed while doing this is that with each new schedule I have added some new or specialized independent study portion. I had other schedules that predate August 2012. They cover between 2004 and 2012. I intentionally left them out partially because I don't remember the details, but mostly because they were unsuccessful. If you fail, examine what went wrong and try again. 

Most of my learning has been topic based. Most of the topics have come from books aimed at college students. Due to this while I have a large vocabulary for a student it doesn't necessarily match up with an average Chinese person. This caused me issues when I took the HSK. I know a ton more words than required for each level I tested on, but the words required didn't match up with what I did know. Also a few months back I bought a frequency dictionary and I started thumbing through it. I made it to the 400's before hitting the first term I wasn't familiar with. I felt good about that, but as I got a bit farther out there were more and more terms, and sadly a lot of them weren't easily to learn nouns, or verbs. So while the topic based approach is nice, I am trying to figure out a way to create topics around these missing, high frequency words.

My hours seem to average between 10 - 20 a week. Usually on Holidays, and vacation I slack, but otherwise this is pretty accurate. I think iTalki is the website that I read 3 hours a week is considered the bare minimum you need to progress in a language. I dunno if that is true or not, but I try to put in at least 3 hours a week of learning from a professional teacher. With that three hours and my preview of the chapter we can usually knock out a chapter of the PAVC book every 4 lessons.

I could keep going but ya get the point. If your reading my blog and are learning a language I would love to know what your learning schedule looks like. Feel free to post it in the comments or if your too shy please e-mail me. developer /at/ peelle [dot] org without the spaces or the fancy stuff.


Web Framework Size

The other week a coworker asked me "Why does our catalyst instance start at 150M of RAM per process? What is a catalyst Hello World's start size in memory?" 

I had just finished finding and fixing some memory issues we were having, so I was able to answer those two questions for him. That talk prompted me to wonder "What does an average web framework memory foot print look like? Is 10's of Megs or 100's of megs unreasonable?" I googled a bit but Google didn't like me that day and I couldn't find an answer that satisfied me. I did some totally scientific tests and I thought I should share my results in case someone else was wondering.

The Setup

Below are the results I got testing it on my Intel Core i5 2.8ghz 4 core with 8G of RAM running Ubuntu 14.04. If there was a quick start guide for the framework I followed it's directions. So whatever development server or command was recommended in the quick start guide to get a running server, is what I used. Below is an example.
>catalyst.pl hello_catalyst
>perl hello_catalyst/script/hello_catalyst_server.pl
>ps aux | grep hello
I copied down the RSS column. Then I load up http://localhost:### into my web browser and call the last command again. Then I copied down the RSS column again.


ApplicationVersion Start SizeSize After Requesting / Note
Catalyst5.900734943249800Most popular Perl MVC
Dancer22835631868A rewrite of Dancer 1.
Dancer12308824352Inspired by Sinatra
Mojolicious5.484672446792Modern replacement of CGI??
Sizes are in kilobytes.
Yellow Dancer is Dancer v1, and Orange is Dancer v2.


I picked these Perl frameworks because they are popular and my company might want to use them. I picked the Ruby ones because I was curious what a non Perl framework would weigh in at.  I didn't choose Ruby to pick on it, or exclude Python to hate on Python. This is a place of peace and love. If you happen to have done this kind of comparison for other frameworks, please post in the comments!

I did the size after request column because I noticed that some things were not getting loaded until first use. So while Catalyst had the largest start up size, after first use Rails was the largest, and Mojolicious had the smallest change in size.

These numbers might change some with a different configuration. My Perl version was compiled using Perl Brew, but my Ruby was from apt-get. Dancer 2 mentioned replacing defaults with XS versions to get more speed. I didn't do this, but I figure that could also change the memory foot print.


Seeing this reminded me of the olden days when I used to put .pl or .cgi scripts into the cgi-bin directory. Those individual pages that started, ran and stopped were so small compared to these applications we have now days.

In our case we have a fastcgi manager running X number of processes. Just by shaving a bit of start up size gives us a lot of memory back.


Chinese Status Update Fall 2014

Welcome back. Glad everyone could make it. October is here, and I have gotten a lot done over the last couple of months. I figured it was time to update the blog. Lets see where I am at.

Goals Completed since my last status post:

Pass the HSK IV.
Visit Taiwan.
Beat the iTalki World Cup Challenge.
Learn more 成語.
Get some conversation partners.

I passed the HSK IV!! I posted my results on a Chinese learning forum I have started visiting. I did alright. I could have done better, and I will do better at some point in the future. One of my biggest faults is I try to do too much at once. I decided we could squeeze in a trip to Texas to visit my brother the days before, and that we could get up at 5 am and drive to Oklahoma from the Dallas area and I would be rested enough, and prepared.. Sometimes I do dumb things. 

We got to visit Taiwan the first half of September. I had a great time and some great experiences. The wife and I went back together this time. This time I wanted to be more involved in communication, which caused some friction. In all our previous trips together she would buy stuff I wanted for me, or translate for me. She was helping me out of love. This time, I wanted to use what I had learned, and learn from any mistakes I made on my own. We talked about it before the trip but, it was a hard habit for her to break. I also found I had a bad habit. Our usual method of communicating at home is English. When she would switch to English, I would switch with her instead of reminding her I wanted to communicate in Chinese. We both worked on breaking our habits, and are getting better at it. 

Some cool using my Chinese experiences I had while in Taiwan included:

  • Talking with an uncle about the religious, and emotional motivations behind the middle east terrorist groups. 
  • Seeing my wife friends that I have had infrequent encounters with over the last 12 years and who don't speak English, light up when they realized I understood them, and could respond. 
  • The hotel clerk and I lightly, teased my wife when she left me out of something. IMHO sharing a spontaneous joke with a stranger is pretty cool.
The other goals I have all talked about in the past. My iTalki teacher and I are steadily working through a book with 成语 and simplified versions of the stories that they originated from. I have marked this one off partly because I have learned about 20 now, and partly because this task will probably be one without a clear finish goal. As for the conversation partners, I have gotten a few online, but with my local friends talking with me more and more in Chinese this is getting easier.

Goals for the rest of the year:

iTalki October Challenge
Reduce my accent.
Read Ender's Game in Chinese.
Start writing regularly.
Work through PAVC 3.
Work through PAVC 4.

iTalki is having an October challenge. This one is smaller than the last but, otherwise similar. It is a 1 month challenge. I have already signed up and got my first 6 classes of October scheduled. While taking that I will continue to work through the PAVC books. 

Speaking of the PAVC books I only have 5 chapters left in book 3. I should have it done by the first week of November at the latest. I don't know if I will finish PAVC 4 by the end of the year. It is possible but I am not in a rush. These books have been interesting. What I learned and practiced in PAVC 3 before my trip directly helped my on that trip. 

I haven't posted much about my Ender's Game reading since the initial post. That project has taken a back burner most of the year, and seen little progress. Starting now, that changes. This also goes hand in hand with my writing project. I plan to start writing in some form to keep myself in practice. I am not sure if i am going to do private or public writings yet, but I am going to try and write a little something everyday.

Accent reduction is going to get some more attention. While I have been generally praised on my accent, there are some problem points I need to work on, as well as review the basics. I am going to practice Idahosa's flow stuff, pair testing like Wyner suggests for hard to hear sounds, and some tone drills. 


Some of the things I am doing to learn are changing. In the next 6 months I plan try some different study methods, and focus on different aspects of Chinese. I read a book by Gabriel Wyner in September called Fluent Forever and it had some interesting idea's. Some of the things he said seem a little too good to be true. Rather than dismissing them, I am going to try them out and see how it goes. 

While I like the PAVC books and think they have their strong points. I also think their presentation of Grammar points can be bad. Specifically how they will go over the 12 minutely different ways of using X all at once. This is one place where I think the Integrated Chinese books excel. For this specific issue they have spread out the different uses over different chapters, with a quick recall note if it is needed. Since I already have the PAVC books I am going to finish them, but I am trying to attack the grammar in different ways.

Well there ya have it. More than you probably wanted to know. Wish me luck. I'll probably wait until January to post the next status update. In the mean time, I will review the book I mentioned, and keep you updated on everything else that is happening.


One really weird trick to get your Chinese friends to speak Chinese with you!

Sorry, I just couldn't resist this spammy title. ^_^

I didn't notice it right away. I didn't mean to do it in the first place. I let my accent slip out of Midwestern English. It happened once, then twice, and now I'm only using Midwestern English when I need to be clearly understood.

So way back in the stone age, I was born and raised in Southeast Missouri. I lived less than 30 minutes from the Arkansas border. I also, for a time, went to college in Arkansas, and did weekend trips to Memphis. You could say my unaltered accent has some natural country thickness to it. Growing up, I chose to learn how to control it. I did this in part because I worked at a call center, where answering the phone in different accents helped alleviate the boredom. Also, because I wanted one of the only 3 Chinese exchange students in town to understand me.

Over the last few months, more and more people have been willing to talk to me in Chinese. I have been really stoked about this. I am finally reaching a level where it isn't frustrating for them to talk to me in Chinese for more than 5 minutes, and I am starting to understand the majority of what they are talking about. But it's not only that, I have over time stopped trying to talk to them in a Midwestern colloquial free accent.

Incident 1

So, there I was last month, tired, just got off work, doing a couple of things at once while talking to my Chinese roommate. I toss out a couple of sentences at him without cleaning up my accent. He looks at me like I just spoke Turkish. This happens a couple more times over the next 5 minutes. At that point I stopped and said something like, "我应该用中文呢?" He immediately agreed.

Incident 2

We were doing a big dinner at a friends house. The wife, me, and about 7 other Chinese friends.  We were talking about about someone's shenanigans and I guess I was speaking too fast, or using too many colloquials in my English, because one of our friends stopped me with a "I don't understand?". Rather than repeating myself in English I switched over to Chinese, and this caused the whole conversation to continue in Chinese. 

Incident 3

My wife's brother has a pretty good command of English. Since I knew him before I knew any Chinese, we usually speak in English. We arrived in Taiwan after 30+ hours of flying, transfers, and minimal sleep. He asked me a few questions and my reply came out full on southern with words drawn out and mashed together. He asked again in Chinese and was happy to get a reply he could understand.

Using this to your advantage...

For the most part my friends just want to be understood. They don't really care what language we use to communicate as long as it isn't frustrating. I bet a lot of people are this way. I'm not suggesting you intentionally obfuscate your speech. I'm suggesting you talk more normal. If they care about their English they will work hard to understand you, and be better for it. Otherwise, if using Chinese is less painful, they will switch to it and you will be better for it.


Italki 2014 Wold Cup is over!

I beat the italki 2014 World Cup! 

Ok, alright, you can stop cheering now. The challenge wrapped up over the weekend and I was notified today that I was successful. So now that I'm filthy rich, I plan to keep learning Chinese, instead of retiring to the Bahamas. I know, I am a wild one.

What is italki 2014 World Cup?

In short I put up 200 ITC ($20) pledging to spend 25 hours language learning through their site, within a 60 day period. If I win I get 400 ITC ($40) and my bet returned. This should be an easily attainable goal of about three lessons a week during the 2 month duration of the challenge. Surprisingly only 53% completed the challenge. They have some cool stats on most hours completed by country, and most hours completed by  language, if you're interested.

Thanks italki for being awesome!

I want to thank italki for putting on the challenge and being so encouraging. I think they did several helpful things for us participants. They encouraged people to make a video pledge and post it onto their FB, G+, or the like. Their data showed that people who did this were more likely to complete the pledge. Another thing was they put up a big FAQ page full of useful info. I checked it a few times. They also reminded you via the website message system weekly about the challenge. This reminder would let you know roughly how many hours you should have completed, and what the current leaderboard looked like. Another thing that was nice was the countdown clock on the main site. You knew exactly how much time you had left. What I hope they do for next time is add a "hours scored", or "#/25 completed" section up there also. Currently you have to go to sessions and do  a manual count if you wanted to know how far along you are.

How did I do?

My work towards completion was not linear. With holiday's, and business trips in the middle, I had to be mindful of my schedule. To compensate for my traveling I did roughly 4 sessions a week during the first 2 weeks and the last 2 weeks. Even with one trip to Colorado, and another to Florida I ended up clocking in 31 hours. That's just over 3.5 hours a week. Not too shabby in my opinion.

What's Next?

With this challenge completed I look forward to the next italki challenge. In the mean time my next big Chinese goal is the HSK IV. I take it this month on the 17th. I'm not yet ready for it, but I am working towards that as fast as possible. Wish me luck!


Pimsleur Book Review

I have been reading quite a few books on foreign language learning lately. One of the most recent was "How to Learn a Foreign Language" by Paul Pimsleur, Ph. D. This book is interesting in that it was originally published back in 1980. I have the 50th anniversary book that came out in 2013. By 50th anniversary they mean that it has been 50 years since the first Pimsleur Audio tapes were made. To be honest I didn't expect to find anything interesting in this book. I was wrong, there's some interesting idea's on how to study, how to reduce your accent, what makes a good teacher, and more.

In chapter 2 he states any language has three distinct parts, pronunciation, grammar, and vocabulary. Surprisingly, to me he said vocabulary was what he considered the hardest. As I read on later I realized he considers vocabulary so hard because of the sheer number you need to learn and retain. I think that the doctor may have reconsidered this if he had lived long enough to see something like Anki. The reason I say this is because he promotes the idea of SRS when he talks about flash cards, and he says on page 76 "Suppose, however that instead of depending on chance, you could "program" the cards so that each word came up at just the right moment to ensure the longest retention with the fewest exposures? Such a program would be worth a lot, for it would reduce your study time to a minimum while virtually guaranteeing maximum retention."

Based on some of the stories he tells I think the doctor agrees with Benny Lewis about Speaking as early as possible. My reasoning behind this is he tells about his experiences observing 2 different teachers teaching from two different styles, and he favors the style where the teacher is talking from class day one in the target language.

Another interesting bit was his approach to grammar. He preferred the presentation of a lot of good input with some timed responses instead of the teach one rule, and practice, then teach another. He did an experiment that showed his method worked better in his experiment.

In the section on picking a good teacher, something he said was kinda an epiphany moment for me. On page 34 he said "... a good language teacher keeps the clock constantly in mind." He goes on to to say that a good teacher will heavily favor student talk time. He also suggest teaching as much in the target language as possible. From my personal experiences, I think learning via the language is great. In the past I head read on other peoples blog where they say get a good teacher, but they rarely lay out any good concise guidelines on how to do that.

He fills the books with some good advice about pronunciation, denouncing myths, and even some charts. Also he explains some more effective ways to study with flash cards and how to use his repetition method. He also has a fun section on cultural differences and stories of people he knew and how they got results in their target language.

This isn't a large book. There's about 100 pages of "book" and another 40 pages of reference material. This book was encouraging for me. It also has some idea's I would like to try out. Overall, I liked this book a lot and thought it had some good advice and a nice flow.


Chinese Status Update July 2014

Welcome back! Long time no see. Glad you could make it. How's the family? OK enough chit chat, on to the article!


Back in January I answered this once. I wanted to expand/modify my answer some. I am learning Chinese to connect with more people. Nelson Mandela once said "If you talk to a man in a language he understands, that goes to his head. If you talk to him in his language, that goes to his heart." 

2014 Goals Completed So Far ....

  • Found a teacher, and started knocking out lessons again.
  • Finished Rosetta Stone ( all that I had bought ).
  • Took and failed the HSK 4.
  • Finish Integrated Chinese Level 2 Part 1 book.
  • Finish the Integrated Chinese Level 2, Part 2 book.
  • Complete Olle's Challenge.
So the first three were done at the 3 month mark, the last three are new. The integrated Chinese Book series was very enjoyable. I wish they had 2 more advanced ones. I feel like they did a lot of things right. I worked through these Textbooks with the help of my iTalki teacher. This was an interesting experience. Olle's Challenge was also a fun goal and motivator. I picked my Character set from the Integrated Chinese stuff so that they could reinforce each other. 

Goal for the rest of the year ....

  • Pass the HSK IV.
  • Visit China  Visit Taiwan.
  • Reduce my accent.
  • Beat the iTalki World Cup Challenge.
  • Read Ender's Game in Chinese.
  • Complete extra homework from the Integrated Chinese Books.
  • Learn more 成語.
  • Work through PAVC 3.
  • Work through PAVC 4.
  • Get some conversation partners.
These are me big goals. I took the HSK IV in March as I mentioned in my last Chinese update. I didn't pass at that time. Since then I have learned quite a lot and I feel I am at the point where I can pass it. I'll keep ya posted on how I do. You may also noticed I have abandoned taking the HSK V for this year. I did this in part because I previously underestimated how hard HSK IV would be, and in part because I'm in too much of a hurry. Three months ago when I was writing the last update my brain was saying "I want to be conversationally fluent now!" In the last 3 months I have progressed a lot, and like in other trades going from one place of ignorance to a place of less ignorance just shows you that you were even more ignorant than you previously thought you were. ^_^

We were hoping to visit the mainland, but it looks like we don't have enough time. Instead we are going to go back to my wife's home in Taipei for 2 weeks and I will get to practice my Chinese while I'm there. ^_^ I was there last year and I already could do and talk about a lot in "tarzan talk", but I still had a long way to go. This year I feel like I'm miles better than I was last time, but as several recent conversations I had have demonstrated I still have miles to go before I'll be content.

The next couple items on my list are things I feel are important, and should help me overall but probably won't give me the deep learning that the last 3 items will. These last three, I am working on with my iTalki teacher. PAVC 3's topic list mirrors a lot of what was in IC 2.1 and IC 2.2. I skimmed the book and found only a few terms per chapter were new. Even the grammar looked familiar at first glance. I was seriously tempted to skip right to 4. Now that I have completed the first 2 chapters in  this book I can tell you some of it is really hard! Doing the grammar exercises are somewhat hard, but rewarding in the end. I'm walking away from these lessons feeling mentally beat up. This is good. :-) But I don't want to be beaten up too much so I am sticking short 成語 stories in  between each chapter. I am starting with extremely simple stories and working my way up. Usually the story comes with a vocabulary list of 10 - 20 words. On that list I usually know all but a few. After we tackle the story and it's related materiel we spend a little time talking about it. These conversations are great. Positive conversation is a huge motivator. Because of this I will start looking for some conversation partners. Not teachers, but just people I can talk with. iTalki is also a place where I can do that, I just need to force myself to stop being so shy.

How I'm Getting There

The short answer is a little bit at a time most every day. Habit is stronger than will power. I try to set up a lifestyle that makes reaching my goals as easy as possible. It's not dieting if your lifestyle is to eat healthy. It's not a chore or burden to me to spend 10 minutes reviewing an anki deck while I sip my first cup of coffee. Now for my circular reference. I set up mini goals to help me build these habits. :-) Olle's Character Challenge has helped me stop missing days on the weekends, and now I feel wrong if I don't do my Anki decks. For June through July I am doing the iTalki world cup challenge. This is keeping me in the habit of doing at least three iTalki sessions a week. Also I am logging all of this on The Daily Practice to help show myself how I am doing and keep myself accountable. I have also joined a forum that is for people who are learning Chinese. I have posted some of my goals there, and gotten great feedback. Now on to the long answer. 

One thing I suggest for any term you have learned is to put it into an anki deck. For me, I'm maintaining 5 anki decks. I just finished all the new cards in one, and it has been a 10 minutes a day deck for the last few months. That will taper off to just 2 - 3 minutes a day after this next month. My decks generally have less than 50 cards a day total, and I'm averaging about 5 new cards a day total. This comes in spurts as I start a new chapter or short story. One of the great things about me following Textbooks is that nice people have already made great decks for my text books. So in total this activity only takes up 30 minutes of my day.

I listen to several hours of music, and radio a day. This isn't some form of focused studying, but more of an immersion thing for me. Since I can listen to music while running, working, or driving there is really no excuse not to get the extra exposure. While I'm working I make sure what I am listening to is not something I have to pay attention to. This type of listening is something I can do while doing other things so I don't count it as exclusive time, but I probably average 2 - 4 hours a day of basic to passive listening.

I am also trying to watch 4-5 hours of Chinese video a week. This has turned out to be pretty easy. Partly because my wife has plenty of shows she has watched in the past and partly because I can type "mandarin" or "Chinese" into Amazon Prime and get stuff speaking Chinese and subbed in English. YouTube also has a lot of Chinese TV shows. Again making it part of my routine is important. For me I have taken to watching something in Chinese during my lunch or dinner period where I usually watch something in English.

I'm reviewing old lessons and doing the supplemental homework. This is actually really hard for me to keep up with. While the homework is OK, and even a little enjoyable, it is still homework and I want to procrastinate outta habit. Breaking this old habit and building a new one is the hard part. I have set myself a fairly low goal for it. Do 1-2 reviews/homework a week. 

Reading isn't something I plan for anymore. I have enough Chinese in my twitter, FB, weibo, wechat, counter-strike:source, etc that everyday I see several people say something in Chinese. Also every iTalki lesson I spent a portion of that lesson reading paragraphs and sentences out loud. While I still can't pick up a newspaper or novel and just read it, the gaps in grammar, and words are getting smaller. I'm probably spending 5 hours reading, but since some of it is just "so and so had a birthday", or "today in soccer", or "you were kicked from this server" and so on I rarely feel like it's work.

Writing helps with my reading and really helps me lock in new information. I mostly do this as a little list of things here, or a note there. I plan this month to restart keeping a journal in Chinese. I would also like to start doing short stories again like I did in my college class. That was a lot of fun. Right this moment this is probably the area I am worst at practicing. I'm going to change that.

Speaking is the most important for me. I care about connecting with people, and speaking is how I want to do it. I try to speak a little every day, and most days I am attempting to converse at least an hour. On days I have sessions with my iTalki teacher this is easy. On other days this can be hard. Usually during the weekend I do ok since I spend 4 or more hours with Chinese friends I can work in an hour of conversation.. Going forward I am going to seek out some 50/50 partners. This should help expose me to different accents, outlooks, and maybe I'll make some new friends in the process. My eventual goal is at least an hour a day, currently I'm probably doing 5 hours a week.

It's Not A Lot Of Time!

Ok, now I'm gonna hop up on the soap box for a few minutes. If you agree with me feel free to wander off. ^_^

5.0 hours/week talk
5.0 hours/week high quality listening ( wife, friends, and italki teacher )
3.5 hours/week anki
5.0 hours/week reading 
18.5 hours/week || 2.64~ hours/day spend on Chinese.23

All that stuff above sounds like a LOT. But it's not really. Especially when I spread it out the way I do. I'm taking a coffee before I work, and taking at least one 15 minute break throughout my work day. While on those breaks I do my anki decks. When I eat alone, or with just my wife I can watch some Chinese video. So again no additional time has been specially allotted from my day. Putting on a radio china, or YouTube playlist in the background while I work takes all of 2 minutes. Again no real time loss for me. Listening to my friends talk about things while we are hiking, biking, or having a meal again doesn't take any special time set aside, and nor does trying to talk to them in Chinese. So really that only leaves my iTalki sessions and homework as something I have to set aside time specifically for. iTalki is taking up 3-4 hours a week, with 30 minutes of prep per lesson. And like I said earlier I'm probably only spending 1-2 hours a week on my homework. So the amount of time I have to take outside of my usual routine of everyday stuff is now down to about an hour a day. That's a ridiculously easy commitment to make.

Until Next Time

Well if you made it this far, thanks for reading! I'll try to post another update around October. Wish me luck!


Sensible Chinese Character Challenge 2014 Milestone 4!

Sensible Chinese Character Challenge 2014

Yesterday marked the end of the Sensible Chinese Character Challenge put on by Hacking Chinese. I'm happy to report I made my final milestone. This last milestone completes my learning all the new cards from my Integrated Chinese Level 2 deck. From here on out I will continue to review this deck, and periodically study the material related to it.

This challenge had a good amount of participants. The challenge is not strict on the rules, rather it gives some basic guidelines, examples, and goals Because of this setup, I got to read about how different people tackled character learning in several different ways. This was interesting and gave me some new idea's. 

Again I want to thank Olle for putting it on, and I look forward to next year's Challenge. I also want to give a big congrats to everyone else who participated. At milestone 3 I won one of the randomly allotted prizes. I want to thank Hanzi WallChart for supplying that.

That's all for now. I'll have a Chinese Status Update this weekend detailing where I am at and where I plan to go. 


YAPC was a blast!

I'm back from YAPC, and I feel like I should write a follow up to my getting ready post. That post got a huge response from some of the community. Some of what I said resonated with people. I was honestly surprised and humbled by the response. Thank you.

I'm happy to report the conference helped me get my groove back. ^_^ Not only do I not feel burnt out, but I plan to start being more active in the Perl community. At the conference, I had a great conversation with Robert Blackwell about how I can help him with some Perl/Hardware tasks. At the conference, I learned about many cool new features and modules. I came home with a million idea's and the drive to execute some of them. Now, I just gotta pace myself.

In my previous post I talked about going to YAPC alone, and several people on twitter said something like "Hey, come talk to me!" That really made me feel welcome. While at the conference I met new people, and had some great conversations with some great people. I hope to continue to get to know the people in this community better. I also hope to give more back, so I feel more apart of the community.

Thank you organizers for all your hard work and putting on a great conference! Thank you speakers for all the awesome talks! Especially, mdk, and Sawyer X who quoted me. Thank you everyone! I will for sure be at next year's YAPC.


Taiwan Mandarin Institute Review

Roddy over at Chinese Forums asked me to do a write up on my experience at Taiwan Mandarin Institute. I went there last summer for a 4 week period. I hope this write up will be useful. I am cross posting this on their forum.


I did a 4 week intensive course. The cost was $35,000NT(~$1,166.66USD). The PAVC 2 book and workbook came with the course.


The registration process was fairly simple. I used the online form to register ahead of time. We e-mailed back and forth with a couple of other questions to narrow down my level and schedule. While I could specify I wanted the 2pm afternoon classes, I was informed I wouldn't get an exact schedule until a week before classes started. The schedule came on time, and all but Monday classes started at 2pm. Monday started at 1:30pm. Once I had arrived in Taipei I showed up about 30 minutes before my first class and we handled some administrative stuff like emergency contact, introducing me to my teacher, giving me the books, and showing me the facility. This is a smaller language school and I wasn't over crowded by a bunch of other people also needing to register at the same time.

Courses info

They have a couple of different course types. They have your regular group course which consists of two hours of instruction per weekday. Then there is the intensive course which is 4 hours per weekday. They also offer Private one on one, and custom classes. Checking their website today it looks like they have added an online class as well.

The courses are further broken down by level. I was in a lower intermediate class. Unless you form a special class all the classes use the PAVC books. I had completed the first two Integrated Chinese books before that summer. Based on me telling them roughly how many words/characters I had learned up to that point, and a link to the IC table of contents they guessed I was around PAVC book 2 Chapter 6. This turned out to be a good starting point for me. While these two books don't directly match up, there was plenty of new vocabulary, and grammar.


Class sizes are small. While I was there doing afternoon classes in the summer I observed in passing one beginner class and an intermediate class. Both classes had about 5 – 7 students. My class was interesting, while it was originally scheduled to have 5 students, 3 students rescheduled for different dates leaving just an Irish student and I.

The classrooms themselves are big enough to hold 8 – 12 comfortably. They all have a white board, some conference type tables with chairs around them, and some decent side windows. Each room has it's own window AC unit. If a teacher was going to use a PPT to aid them they would bring in a laptop, and a plain old CRT monitor.

My intensive classes was broken down into about an hour of study, and then a 15 minute break, followed by another hour. Then we would have a 30 minute to one hour break before repeating.


All the teachers are native speakers with prior teaching experience. Teaching style varied from teacher to teacher, and you could tell administration if you didn't click with a specific teacher. While I was taking the intensive course they explained to me they wanted me to be exposed to different speaking styles, and teaching styles to help me learn better. While I think this was helpful to me, I also think they were having scheduling issues and needed three teachers to cover all my hours.

One of the cool things about two of my teachers was that during class time we almost completely spoke in Chinese. This was new to me. This was not how we had done it at university. It was a lot of fun, and a lot of work. They encouraged me to talk at length to make my point, and not to just pop out one or two word answers. They were also big on the homework thing. I had 1 – 2 hours of homework most days. The homework was comprised of the workbook, and also handouts the teachers provided.


They offer this service but I did not need to take advantage of it. I lived about 20 minutes away by bus. One of their dorms is in the same building as the school, and the other is nearby according to the website. Pricing on the website at $1000NT/day & $1500NT/day. It looks like you are paying extra for the convenience. If you have the money, I don't think that this is a bad thing, but I also believe if you plan ahead you can find cheaper living arrangements on your own.


The school is in a good location. I wasn't familiar with this area before I started school. It is in the Daan District, on Roosevelt Rd Section 3. There is a bus stop at the street corner next to the building, and subway access not to far away. While I was there I scouted around the area and found all kinds of things. For example, I found a Mexican place, a movie theater, some good coffee shops and pubs, plenty of good food places, and several used book stores.


This is the first language school I have attended.While I was at TMI there were a few holiday's and the administration had a bit of confusion on whether they were going to be off on those days or not, but it got sorted out without causing me any inconvenience, I just happen to hear them talking about it on a break.

I mentioned before we got in detail about what level I should start at via e-mail, and I don't know if there is a best way to evaluate one's Chinese level, but I found their website was a little bit vague in this regard. I think adding that they use the PAVC books could have helped me figure out my level quicker, but maybe not.

Also this is a small business, and like most small businesses ( including the one I work for ) in some respects they attempt to sound bigger than they are. On the flip side because they were so small I felt like I got a lot more personal attention than I would have otherwise.


I had a great experience while I was there. If I get the chance I will go back. I second what another posted said in his post. Make friends with your classmates. My other classmate had been living in Taiwan for several years and he was kind enough to show me me around our school's area, as well as share some interesting stories.  


Getting Ready For YAPC::NA 2014

For those of you that don't know my day job is programming. I work for a loads boards company in the trucking industry. I do all kinds of programming projects for them in a variety of languages, but the majority of my programming time is spent using Perl. Perl is a great programming language and you should check it out.

One of the cool perks my company has is that they send me to YAPC::NA the largest Perl conference in North America about every other year. This year it is being held in Orlando, FL, two weeks from now. I'm really excited about this year. Not only do I get to meet some amazing people, but there looks to be some great talks that will benefit my growth as a programmer in general, and benefit my work immediately.

While I am a different person than I was when I attended YAPC in Madison, WI, my Perl learning has taken a back seat to finishing my degree, and my language learning projects. Also, I have been feeling somewhat burnt out since March. Even though I finished classes at the beginning of May, I don't yet feel fully recovered. This conference will be a major step to help me correct these two issues. One of the great things about going to a conference where everyone is excited about the same thing is that, excitement is contagious. Everytime I go to YAPC it renews my will to learn more, to delve deeper, and to try harder. It helps me make myself a better programmer.

This year is a bit scarier than last time tho. The previous two times I have went to YAPC I have had coworkers with me. They have given me someone to talk to when everyone else has been grouped off, help when I had questions, and kept me company during meals, and been friends. I fear this YAPC may be a bit more lonely than the previous ones if I don't adapt and make some new acquaintances, and friends. I am figuring out some ways to do that. I'm planning on attending game night, a BoF or two, and some of the other social activities. I am also going to try and strike up conversations with new people.

That's all for now, wish me luck!


Sensible Chinese Character Challenge 2014 Milestone 3!

Hello all! Welcome back. It's been a quiet month for this blog. Offline I have been quite busy. I got my B.S. in Computer Science, and had a celebration for that. According to some 12 years to get your B.S. is a long time. With the completion of my degree the wife and I have started preparations to move away from COMO. This isn't a rushed thing, we have been planning it for a long time, and we are taking our time with the move, estimating to be moved by next spring. I have also picked and started learning my second foreign language, Esperanto. I'm doing as this part of another challenge. I'll try and give it it's own post later. 

On to the challenge! I'm tired of recapping each round so, Here's a link to my post on milestone 2 you can see all the bits there if you care. For Milestone 3 I pledged to learn 471 terms total for the challenge. I'm happy to report I made the mark. I am currently at 514 terms. I am extremely confident I will hit my last milestone with time to spare.

This challenge has been, and still is both fun and useful. I am grateful that Olle takes the time to make these challenges and his website. His website is full of helpful info that has both taught me a lot over the last 2+ years and helped keep me motivated. I'm sure it will continue to teach me new things for a long time to come.

Since I only have one more month left in this language challenge I have started to look for other motivators to keep me going. This month I am taking the italki world cup challenge. The challenge is a bet with italki that I can complete 25 hours of study with a language teacher. This will help keep me on track with this challenge and help me to continue to level up with my speaking and listening. Also, the wife and I have planned another trip to Taiwan for this fall. I am excited to show off to the in laws how much I have progressed.

That's all for now. I'll probably have another post or two later this month.. 


Sensible Chinese Character Challenge 2014 Milestone 2!

It's that time again! Yep, when I update you on how I am doing in this Chinese challenge. Just as a refresher, you can click here to see my initial post, and click here to see my second post. Also you can check out the Hacking Chinese post if you want to join the challenge.

Like in the last two posts I showed these initial milestones.

  1. April 8th: 157 new words
  2. April 30th: 314 new words
  3. May 31st: 471 new words
  4. June 30th: 628 new words
I also reported that I had hit my first 2 milestones by the first milestone, but I didn't expect to keep that pace. I have learned 405 new words. Part of what slowed me down was that I am finishing up my senior project, and could not devote as much time to this as I wanted. Another part was that I unexpectedly got a staph infection that sent me to urgent care three times. :-( Good news is that I am all healed up and School ends next week. I still think I will be able to hit my May 31st goal. I will still be taking a slower pace this next month. 

Between the last milestone and this one I have been doing some research on characters. The point in this challenge for me, is not to learn as many characters as possible, but rather to learn characters smarter. One way that I am doing that is by learning to better categorize the characters themselves. I read Ollie's two part series on Phonetic compounds. Which then lead me to read the wikipedia article describing all the different ways a character can be made. Using this information as a guide, I am attempting to guess the category of each new character I learn as a part of my routine. For example, when they fall into that 80% I take apart the character and identify the sound part and the meaning part. I don't have any evidence, but I feel like this is helping me learn the characters better, and quicker. 

As for Anki, I am still doing my best to use it every day, but I have tuned down the new words from 20 a day to 5 a day. Over the last 30 days I used it 23 days. I'm hoping to get that up to a higher number this month.

Until next time wish me luck!


Helping Google Pinyin, Windows 7, and Dvorak play nice together

In March I posted about getting Google's Pinyin IME to use the Dvorak keyboard layout as it's default instead of the standard Qwerty. I made that post in part because I had to figure that problem out on my own and didn't want others to have to go through it, and in part so I could find my hack again if I ever needed it. Funnily enough I ended up needing it again less than a month later for another install I did.

Anyhow, I decided to install Google's Pinyin IME onto my Windows 7 computer, and I had the same issue of it wanting to use the standard Qwerty layout. I did some googling and found how someone fixed the issue for the standard Simplified Chinese Pinyin layout, and from that I was able to apply my own fix.

Below are my steps for installing it. With anything you find off the internet, your trying this AT YOUR OWN RISK. Don't blame me if something goes wrong. These steps work for me, and they should work for you, but I am not responsible for you, or your things, your a grown up, don't pout.

  1. Go to the Google page and download the installer.
  2. Install the program. I mostly hit the next button. I did check the box for collecting anonymous stats, and signed in with my Google account, but you can choose not to do those things.
  3. After it was installed, I opened a notepad and verified it worked, and was using the Qwerty layout instead of Dvorak.
  4. Next I opened regedit 
    1. Click the Start button.
    2. Click in the search box to start a new search. 
    3. Type "regedit" without the quotes.
    4. Above it an icon of a blue Rubik cube and the word Regedit will appear.
    5. Click on that.to open the regedit program.
    6. Click, yes when it asks if your sure you want to continue. 
  5. Inside of the regedit program I navigated to the appropriate place by clicking the + symbols next to each of the following words.
    1. Computer
    3. SYSTEM
    4. CurrentControlSet
    5. Control
    6. Keyboard Layouts ( There is also a Keyboard Layout directory. This is the wrong directory.)
    7. E0200804 ( Your layout may be in a differently named folder. The best way to tell is by looking at the right side. "Layout text" should say "谷歌拼音输入法 2" or "Google Pinyin" or something similar.)
  6. Once you have found the right spot Double click the "Layout File" words.
  7. In the popup box change the value from "KBDUS.DLL" to "KBDDV.DLL" Upper or lower case should not matter.
  8. Click OK.
  9. Close regedit.
  10. Log Out of windows( not hibernate, or suspend, or lock ).
  11. Log back in and try it out.
  12. Profit. ^_^

I hope this helps. I'm sure it will help me on my next re-install or update. Now for my obligatory inflammatory statement, which is a reminder that Dvorak is a better keyboard layout than Qwerty, not only for English but also for Pinyin. Even if you don't like Dvorak, at least look at what is out there. There are quite a few different layouts available and tailored for different purposes. It is surprising how fast someone can pick a new one up, and start benefiting from it.


Sensible Chinese Character Challenge 2014 Milestone 1!

Click here and check the bottom of the article to see where I first mentioned this Challenge. You can also go straight to the Hacking Chinese article if your interested.

So in the above mentioned article I showed the following milestones.

  1. April 8th: 157 new words
  2. April 30th: 314 new words
  3. May 31st: 471 new words
  4. June 30th: 628 new words
I am happy to report that I have learned 366 new terms already. This was kinda expected since right now I am moving at a faster pace. Sadly the last half of this month, and the first half of the next month I will be moving at a much slower pace. I still think my June goal is obtainable, but hitting that third milestone is going to take some dedication. 

That's pretty much all I had on the actual challenge, so... I guess I can tell ya how I am going about completing it. 

I am using a spaced repetition program called Anki. There are a ton of free decks available to study your topic of choice. For me I am going over the Integrated Chinese vocabulary. It should be this deck. With it I get 3 different cards for each new term. One with the English, one with the characters, and one with the pinyin. I am still debating with myself how useful the pinyin is. 

Right now, I have it set at 20 new cards a day, which boils down to a little under 7 new terms a day. Because Anki is smart and doesn't want to show you three cards in a row of the same term, they will hold back the second and third version. So what really happens is I get introduced to 20 new terms one day, and then on the next day I get to practice them some more from a different direction. Then on the last day I get to practice them one more time from another direction. For me, this seems to work well. I am averaging about six days a week.

 But wait, that's not all! Besides the spaced repetition I also take lessons over the related material. So I then get to use these new words in a correct dialogue, make up sentences, and do homework over them. I do the speaking stuff about 4 times a week, one hour each time with my Chinese teacher. We communicate through italki.

Another trick I have been using is every day or two while I am going over these words I use my finger to write them on the table as an added way of memorizing them. 

I guess that's enough for now. Wish me luck on the next parts of the Challenge!