In a season of highs and lows for F1, thankfully the latest scandal was resolved quickly. I'm still dumbstruck that someone could actually instruct a driver to crash on purpose, and that any driver would agree to that level of insanity. That is just way beyond being told to let your team mate pass.
Given that Renault is contemplating leaving F1 anyway, suspending Renault's disqualification until the end of the 2011 season, is not that harsh given the severity of what occurred. I suspect that this guarantees that Renault will leave F1 at end of the 2009 season. There just isn't any compelling reason for them to stay any more.
And you know what? If Nelson Piguet Jr hadn't been fired, none of this might ever have come to light. Which makes me wonder, has anything this severe ever happened before? We may never know. Until now, I never thought anyone in F1 could stoop this low.
Monday, September 21, 2009
Sunday, September 20, 2009
Hand Writing On The Wall
Does cursive hand writing matter any more? I just wrote a few words in cursive and, while it was still legible, it is definitely not as good as it once was. It would never get past the strict teachers that I had back in primary school!
But in these days of electronic communication, hand writing is being used less and less as an everyday skill. As a consequence some school districts are putting less emphasis on hand writing skills. There are similar stories here and here. Is this a good thing?
I really don't know. And I doubt anyone will have an answer until a few generations have gone without hand writing skills.
But in these days of electronic communication, hand writing is being used less and less as an everyday skill. As a consequence some school districts are putting less emphasis on hand writing skills. There are similar stories here and here. Is this a good thing?
I really don't know. And I doubt anyone will have an answer until a few generations have gone without hand writing skills.
Saturday, September 19, 2009
Twidge
I was using Ping.fm to post to Twitter and Identica simultaneously. Ping.fm worked most of the time but occasionally it would suddenly became very unreliable for a few days. I decided that it was time to try a command line utility call Twidge, which has been on my play-with-this-cool-toy list for a while.
Twidge can post to both Twitter and Identica but can't do it with a single invocation. That's easily solved with a simple three line shell script taken from the Twidge web site. Or you can use the slightly more fancy script which gives a text length marker so you don't exceed the 140 character limit.
Of course, it was hard to resist "improving" things. ^_^ Here is my current script:
Hah, I hear you say! Why did my script become so complicated? But it is not really complicated once you realize these scripts are able to duplicate the basic functionality of Ping.fm, a complex web service, in a few lines of shell code. And so far, the script has proven to be more reliable that Ping.fm. The script is only as complicated as it needs to be, but no more.
Long live the command line!
Twidge can post to both Twitter and Identica but can't do it with a single invocation. That's easily solved with a simple three line shell script taken from the Twidge web site. Or you can use the slightly more fancy script which gives a text length marker so you don't exceed the 140 character limit.
Of course, it was hard to resist "improving" things. ^_^ Here is my current script:
#!/bin/bashThere basically two additions over the original script. First, the text for the post is created in the vim editor, which is a more comfortable writing enviroment and, more importantly, has a spell checker! The second addition is to convert Identica groups, which are specified as "!tag", into a Twitter "#tag", since Twitter doesn't have groups.
tmpfile=$(mktemp)
trap "rm ${tmpfile}" EXIT
vim ${tmpfile}
if [ ! -s "${tmpfile}" ]; then
echo "No text, aborting update."
exit 1
fi
text=$(cat "${tmpfile}")
twidge -c "$HOME/.twidge/identica" update "${text}"
text=$(echo "${text}"|sed 's/\(^\| \)!\([[:alnum:]]\)/\1#\2/g')
twidge -c "$HOME/.twidge/twitter" update "${text}"
Hah, I hear you say! Why did my script become so complicated? But it is not really complicated once you realize these scripts are able to duplicate the basic functionality of Ping.fm, a complex web service, in a few lines of shell code. And so far, the script has proven to be more reliable that Ping.fm. The script is only as complicated as it needs to be, but no more.
Long live the command line!
Friday, September 18, 2009
Kemono no Souja Erin - 29
The anime series Kemono no Souja Erin keeps getting better. The mature story telling in this series continues to impress as Erin faced a number of crises since I last mention the series.
Her foster father, Jone, died and she had a difficult time dealing with it. Erin never knew her real father so Jone easily filled that role after her mother died. But it was only after Jone passed away that Erin realized she actually thought of him has her father. The regret that she had never told him this, made his passing all the more difficult.
Erin was also forced to question her beliefs about the relationship between animals and humans. She has become unbelievably close to Lilan, the Beastlord that she looks after. While brushing Lilan, Erin accidentally brushes the wrong way and causes Lilan to react and attack her. It was an extremely painful reminder of the risk she is taking in getting so close a powerful animal, and it was not easy for Erin to continue the work she has started with Lilan.
When Erin learned that Lilan was a gift to the Queen and would never be returned to the wild, Erin became very depressed. It was a surprising change for her normally upbeat character. Erin works through problems by drawing upon the wisdom of her mother, Soyon, and Jone, the two most significant influences in her life. However, this means she is dealing with problems alone, when she could ask others for help.
The series has been licensed and can be streamed from crunchyroll.com. The SD video doesn't require a sign up as far as I can tell but I don't know if is available outside the US and Canada, and you have to put up with advertisements.
Her foster father, Jone, died and she had a difficult time dealing with it. Erin never knew her real father so Jone easily filled that role after her mother died. But it was only after Jone passed away that Erin realized she actually thought of him has her father. The regret that she had never told him this, made his passing all the more difficult.
Erin was also forced to question her beliefs about the relationship between animals and humans. She has become unbelievably close to Lilan, the Beastlord that she looks after. While brushing Lilan, Erin accidentally brushes the wrong way and causes Lilan to react and attack her. It was an extremely painful reminder of the risk she is taking in getting so close a powerful animal, and it was not easy for Erin to continue the work she has started with Lilan.
When Erin learned that Lilan was a gift to the Queen and would never be returned to the wild, Erin became very depressed. It was a surprising change for her normally upbeat character. Erin works through problems by drawing upon the wisdom of her mother, Soyon, and Jone, the two most significant influences in her life. However, this means she is dealing with problems alone, when she could ask others for help.
The series has been licensed and can be streamed from crunchyroll.com. The SD video doesn't require a sign up as far as I can tell but I don't know if is available outside the US and Canada, and you have to put up with advertisements.
Thursday, September 17, 2009
Generation Gyrations
Baby Boomers, Generation X, Generation Y: these terms are so wonderfully vague that nobody can actually pin down who belongs in each group. It allows a sort of shell game to shuffle age groups around for convenience, especially for the Gen-X and -Y groups.
I started thinking about this after reading this press release which gives different age ranges for the three groups than I am familiar with, and even states that Generation X are the parents of Generation Y. I always assumed the following ranges: Boomers - 1947 to 1967, Generation X - 1967 to 1977, and Generation Y - 1977 to 1987. I also assumed that the Boomers are the parents of both Gen X and Gen Y.
But what do I know? After reading the Wikipedia pages for Baby Boomer, Generation X, and Generation Y, it is far more confusing than I ever thought possible. And now, I notice that there is even a Generation Z! We sure like making up labels for everything, don't we?
I started thinking about this after reading this press release which gives different age ranges for the three groups than I am familiar with, and even states that Generation X are the parents of Generation Y. I always assumed the following ranges: Boomers - 1947 to 1967, Generation X - 1967 to 1977, and Generation Y - 1977 to 1987. I also assumed that the Boomers are the parents of both Gen X and Gen Y.
But what do I know? After reading the Wikipedia pages for Baby Boomer, Generation X, and Generation Y, it is far more confusing than I ever thought possible. And now, I notice that there is even a Generation Z! We sure like making up labels for everything, don't we?
Wednesday, September 16, 2009
PHP In Lenny
The Debian PHP maintainers included a patch in the package for Lenny which is causing me some grief. This guy is a lot less restrained in showing his annoyance. ^_^
The patch makes a default timezone "System/Localtime" which, when it is detected, forces PHP to use the OS configured timezone. That part is OK. The problem is the patch also prevents you from getting the real timezone from PHP. The PHP timezone always looks like the hard coded default.
Now this probably won't affect many PHP scripts but I'm not that lucky. A developer using the shared hosting server that I admin, unfortunately does need the the real timezone for his application. Marvelous!
The obvious solution is to compile the Debian PHP package without the patch and I plan to do that tomorrow. Oh Joy!
The patch makes a default timezone "System/Localtime" which, when it is detected, forces PHP to use the OS configured timezone. That part is OK. The problem is the patch also prevents you from getting the real timezone from PHP. The PHP timezone always looks like the hard coded default.
Now this probably won't affect many PHP scripts but I'm not that lucky. A developer using the shared hosting server that I admin, unfortunately does need the the real timezone for his application. Marvelous!
The obvious solution is to compile the Debian PHP package without the patch and I plan to do that tomorrow. Oh Joy!
Tuesday, September 15, 2009
Concurrency In Python
The topic at this month's PyGTA meeting was Parallelization in Python: Code Samples, Experiences and Advocacy. It was a round table discussion which I usually enjoy more than a presentation, but this subject is too broad. There are so many options for concurrency in Python that I started to feel overloaded after a while.
None of my own Python code uses any concurrency, so I decided to mention MyHDL which applies the same principles that I've used in various C embedded projects. The technique is known by various names in Python circles: green-threads, continuations, coroutines, and a few others. It is essentially co-operative multitasking. Although this doesn't always have positive connotations, I found it to be very effect for writing machine control software.
I had hoped that MyHDL would be something new to the group, but two people had already heard of it. Darn! But I should have expected it of course. Some of these guys have invested a lot more into Python than I have.
None of my own Python code uses any concurrency, so I decided to mention MyHDL which applies the same principles that I've used in various C embedded projects. The technique is known by various names in Python circles: green-threads, continuations, coroutines, and a few others. It is essentially co-operative multitasking. Although this doesn't always have positive connotations, I found it to be very effect for writing machine control software.
I had hoped that MyHDL would be something new to the group, but two people had already heard of it. Darn! But I should have expected it of course. Some of these guys have invested a lot more into Python than I have.
Subscribe to:
Posts (Atom)
