Friday, September 29, 2006

Two very busy weeks

The last two week were rather busy. I arrived Jo'burg airport at about 5pm which was perfect timing for the infamous rush hour commute to Pretoria. I was prepared for it though, having kept the sandwich from the plane and a bottle of water. I noticed several people in the stop and occasionally go traffic on the freeway pull over to use a handy roadside bush, it was that long. A few pulled a U-ey to go back the other way. I wonder if they were low on gas. Sorry, "petrol."

Arrived at the guest house shortly after dark. Followed Fourie's directions with only a few mishaps. Hadn't remember the name but it's the only one here. Got shown the room, unpacked, etc. and did a bit of work. Still working on Martel2. I had stayed up late the previous night and crashed early.

Pieter picked me up at 8am for the braai (sorry, "BBQ") at a not-so-nearby reservoir. It was a group event and most of Fourie's students and staffed showed up. I left the guest house too early and the shop at the lake served only junk food, which tied me over until the meat was ready at 1ish.

Fourie has a small catamaran stored at the lake. We helped him get it ready. I volunteered to go on the first run. It had been many years - since 1987? - since I was last on a sailboat, and '86 since I was last on a cat. My uncle Larry and cousin Rob took me out on Biscayne Bay. This was Fourie's 2nd or 3rd time out and we ended up in irons a few times, pushed into the reeds at the edge of the lake. Reminded me of "African Queen" as Pieter jumped out to turn us around. It felt like the cat doesn't have enough momentum to tack about so Fourie switched to jibing.

The water was chilly. It is spring here and the lake water still has the winter in it. Wait a month or two and it'll be great, like Lake Vermillion for Dylan's wedding. Then again it would be full of powerboats and other craft, with people all along the water's edge.

After lunch we had a pickup game of volleyball. Hard ball too. Painful. It was fun though. Talked with Hamilton for a while. He's a YEC. I don't know how you can be in bioinformatics and believe the world is <10K years old. There's simply not enough time to explain the Messian event, ice sheets in Greenland, or the formation of Carlsbad Caverns. All of which I mentioned to him.

Took a walk about on Sunday, but this neighborhood is pretty boring. Many would say that Pretoria is pretty boring. This area is dense with embassies. The Italian one is down the street and the Mexican one effectively in what we called "campus town" at UIUC.

I finished of Jerod Diamond's "Collapse." Good book. Well told history. I should follow up on some of the recommended readings. If only my own back list weren't so backed up.

Walked in to the Universiteit van Pretoria on Monday morning. Though this area is in the process of migrating to the name "Tshwane" and the local paper is titled "Pretoria News" with the slogan "The paper for the people of Tshwane." Read the wikipedia for details.

The university is 1.5 blocks away. More like 1.1 as the guest house is on the corner. Like other schools it has guards checking people coming in and security gets with key cards to get it. I didn't have a key card so I followed the lead of about 10% of the students and stepped over the gate. Real safe there. With a hint from Pieter I remembered how to get there from my visit in January. Stopped at a small tuck shop (snack shop) to grab a cooldrink (soda) and bumped into Ayton, who let me in.

The group there has an ambitious project to develop a LIMS system for about 200 users in this area. It's mostly data management, with a lot of different data types. Sequence, genomic, genomic annotations, structure, small-molecules, assays, user comments -- the works. Very ambitious. They planned to do it in Java but that's proved too complex for them. When I visited last summer I showed them the TurboGears 20 minute wiki video, and with the help of Laura in Sweden managed to get Fourie to EuroPython to give a talk and see more about the state of Python web development.

I taught Python at the NBN a couple of times and in July spent two weeks training people on using Python, specifically TurboGears, to develop bioinformatics web applications. Fourie asked that I come up here and work with them for a couple of weeks to get them up to speed and along the right path. They've seen the Pythonic light. It slithers so luminously.

Most of the people here were my students last winter, so I knew a bit about them already, and they of me. They had even been in my usability course, which helped a bit. I could remind them of things like paper prototypes and scenarios. My frequent comment was "so when would someone actually use this" and "have you talked with a user?"

I came across Guy Kawasaki's blog, or perhaps recame across it. He mentioned the feeling of what I'll translate as booyah-ism in answering questions on the fly. You know, you're asked an esoteric question and answer it, correctly and quickly, showing just how smart you are. Make you want to exclaim "booyah". According to the UrbanDictionary.com that's an early 1990s slang. So sue me.

The consulting I sometimes do is like that. I have to figure out what's going on, why it got there, how to help out (if I can) and be outgoing, helpful, friendly, etc. I never got formal training in this, though I've read some on it and had some practice now. What training is there? It's very exhausting.

I spent the first couple of days working with each student, asking questions about the projects, suggesting various approaches. I then started working with Ayton and Charles on implementation, and stayed with them the rest of that week and all the next week. We got a prototype system going with two external databases (one using MySQL, the other Sleepcat's DbXml) connected via XML-RPC, a central system which knows how to search and fetch from the other databases, and a schema for handling per-record annotations, including links between records. We used a wikipedia-style [[link notation]] to refer to other records.

We then rewrote it using the dispatch module, for more generic functions, and various bits of cleanup. Oh, and AJAX. Of course. The last feature we added was a trashcan, from which deleted elements could be restored. It was a *lot* of work in under two weeks. Charles and Ayton are good. They have a lot to learn, but they are quite capable.

The biggest problem is the sheer number of languages you need to know to do database-backed web applications development. Python, HTML, the kid templating language on top of HTML, Javascript, CSS, and SQL - for starters!

Last weekend I went with Hamilton to his home turf of Durban. That's "the Miami of South Africa." Coastal city, warm beaches, holiday place. It was a long trip. We left at 5:30 Saturday morning. He sped and we got there at about 11. On the return we left at 3:30pm Monday and we got in at 10:30. Which means we really sped. Though night-time driving was slower. If I get a ticket he's paying! I told him that about 1 minute before we saw the cop on the road with the radar gun.

We stayed with his parents. They were very good hosts and made me feel like I was at home. It was very much like visiting my Mom's family in Michigan. The only thing really missing was a piano in the living room. They are an Indian home, and it's the first time I've been to one here. A major plus side to that was the food. I've been complaining about how South African foods aren't that spicy. Meaning neither flavorful nor hot. People responded saying "for spicy foods you need to go to Durban." They were right.

Hamilton quizzed me on what I meant by hot. He asks his Mom to make the food extra hot when he comes home. I said it wouldn't be a problem, and mentioned the whole "red or green?" New Mexico State Question, and its context. But to prove it to him we went to Nando's the Friday before heading down. I ordered the hot/spicy chicken. The South African hot chile is peri-peri. I've tried things before with that spice and (again) complained that it was tingly and that's it. It's a single note of hotness, without texture, without diversity. Well, Nando's chicken was indeed tingly, but it really needed green chile sauce.

Hamilton was surprised. So it seems was his family. Hot Indian food was wonderful. 8 years living in New Mexico does wonders for one's chile tolerance, and the extra Indian spices rounded out the flavors nicely. Excepting the first meal I used my fingers like everyone else. The first was hard because it's rice and getting the texture of the rice just right to eat without bits falling off takes more practice than my 1/2 dozen time in Indian and Ethiopian restaurants. (I've been in more Indian places than that, but only once tried utensil-free.)

My 9th-grade world history teacher was quite good. So were my 11th grade American history and my 12th grade European teachers. She taught us about only eating with our right hands, and the caste system in India, and well, a whole bunch of things. Turns out that "Indian" in South African is it's own universe of complications. Hindu Indian? Muslim Indian? Christian? And a few others. Hamilton's family is Christian Indian, ethnically Tamil. The caste system didn't make it over. Neither did the right-hand-only thing. (The left is for cleaning.)

In passing Diamond mentioned the caste system, and suggested it evolved out of an environmental stability system. If you know you will only do X and your children will also do X ad infinitum then you'll do your best to make sure X stays around. One example of X was "in-shore fishing." That's makes for a very conservative culture. And stable, if the balance starts off close enough to the attractor in phase space.

Hamilton was happy to visit in part to see his girlfriend. We went shopping on Saturday looking for clothes for me. My jeans and slacks were on their last legs and I wanted a couple of new shirts. I didn't find any of the former in the mall we went, though I did pick up underwear and socks.

I am a small-town hick. I admit it. Santa Fe only has 65K people. The mall we went to has one of the highest climbing walls in the world, a mega-theater-plex *and* an IMAX theater, and a surfing ride. The last uses pumps to generate standing waves along a pre-formed tube. I had the same feeling when I visited Hamburg last December. "Look at how much shopping there is here!" At least I'm a well-traveled hick and don't think that the customs of my tribe and land are the laws of nature.

On Sunday we went to downtown Durban so I could have bunny chow. Mmmm, tasty. I was the only white guy in the restaurant and was given silverware. Used my fingers though. Looking it up now, only 4.4% of the city is white. Took a walk in the flea market outside the restaurant. Towards the end was the used books. The smell of incense and the sight of used books will always remind me of the bookseller at the student center at FSU. I picked up a lot of great books there. The seller had a good feel for what students would buy. While the books at this flea market - not so good. Then again, different target audience.

We headed off to Venture Golf at another mall. That's fancy putt-putt course, and all of the courses had split levels, slopes, and various nasties to them. It was the hardest putt-putt course I think I've ever played. Hamilton was about 2x better than we were, score-wise, and Sharon and I quickly switched over to play-for-fun mode, and finally convinced him too.

On the way there I finally found a store selling shirt and slacks I liked. Happy-happy-joy-joy (also early 1990s slang).

On Monday we went to the beach for a bit. More specifically Umhlanga Rocks. Which is *also* in the wikipedia. It knows all. Though it doesn't have a pronunciation guide. It's not a swimming beach as the waves mostly break on rocks. It is a nice beach, and I went waist deep into the water. That makes 3 oceans I've been in. North and South Atlantic. North and South Pacific. Indian. Need to visit Longyearbyen for the Arctic. And the Mediterranian for historical significance.

After that Hamilton and I joined his family at a park were people from their church were having a braai. I chatted with people there for a while, ate, etc. and most definitely stayed away from the soccer ball. I don't have anywhere near the training or practice of anyone from a country outside the US. Now if it had been a Frisbee-like object. From there we headed back to Pretoria.

There were still many things left undone in Durban. Guess I'll need to go back there. Fourie and the others would like me to visit, but I've much to do on other projects. Perhaps May or June of next year. I have got to improve my timing. I'm supposed to follow summer from hemisphere to hemisphere and not winter.

No comments: