The Smalltalk Solutions 2007 Coding Contest ended today. Here are the results --- congratulations!
- 1st place: Leandro Caniglia and Valeria Murgia.
- 2nd place: Michael Lucas-Smith.
- 3rd place: Niall Ross.
I just noticed Farb-Rausch put up two new demos in their website.
FR-041, "Debris", is only 180kb. And the stuff they managed to do with only that much space leaves me with great difficulty as to what words to use to describe it. The level of detail, the scenes, the movements, the articulated structures, and its length for the quality they achieve are outstanding.
FR-055, "828", is an abstract visual composition of astonishing beauty and visual quality. It is amazing that there exist people that, like Visualice from Farb-Rausch, think of these images and make them reality.
Thank you so much guys. I hope you do many more!
Posted by Andrés at 22:58
I got to Toronto from the US a few hours ago, and the subtle differences are striking.
First of all, nothing is obviously different. There is traffic, the buildings look more or less the same, Toronto reminds me of Portland, OR. However...
For example it's Friday night and I have been sitting at a busy intersection full of night life. There has been zero honking and zero cars driven aggressively. No burning tires to the next red light, no loud radio making the windows shake on their frames. Note that cars look more or less the same as in the US.
Earlier, I saw that largish group of teenagers seemed to have less of an extrovert personality, comparatively speaking. No loud conversations, no grand gesticulations. Nothing but gentle conversation instead. And note they wore more or less the same clothes, and had more or less the same hair dos. In other words, they just looked the same until you took their behavior into account.
So perhaps I've been lucky in my experience of Toronto so far, but then there's the major stuff. Because on top of this, there is the police.
Note I had a chance to look at cops in detail, particularly because I called 911 to report a person that had fallen unconscious on the street so I got to see them first hand. I guess I got used to them looking like the metal terminator or even like Matrix agents... you know, serious, wearing tight clothing, upright, and with a body language that speaks of alertness and being almost on hair trigger. Here? Serious, but not as on edge as I tend to see them in the US. I also saw their relaxed body postures and their smiles while buying coffee at Starbucks like anybody else. And note they wear more or less the same clothes, carry more or less the same equipment, and drive more or less the same cars.
This place is very peaceful compared to some of the places I've lived in. Niiiiice...
Posted by Andrés at 20:33
I am leaving tomorrow. I've been so busy with things that time went by without me noticing... I can't quite believe it's time already. I am sure it will be a lot of fun, and I am looking forward to it.
If you are going, don't forget to check out the Smalltalk World Tour wiki page so we can get together. See you in Toronto!
Posted by Andrés at 01:31
I was reading Michael's posts from last year when he was the organizer, and he also mentioned how much work it is to run a contest. On the other hand, I am sure he had as much fun as I had earlier when I brought up a qualifier challenge and let the different programs try to beat each other out.
I am writing this post with jitters. I ran the participants' submissions a while ago, and only now I am able to write about it. The thing is there were more than 3 participants, but there can only be 3 finalists. I hate bringing bad news to bright people, so I hope you will not be upset.
Thus, without further preamble, and having scored between 201,861.649307 and 193,788.433108 against the qualifiers game allocator, here are the three finalists in strict alphabetical order.
Posted by Andrés at 01:56
In a way, life is like a game. But nobody gave us a manual on what are the goals of life, so then we have a problem. How we play this game depends on what are our goals, and we get to choose what those are.
Yet, it seems to me we are so ambitious about things related to ourselves that we tend to forget the value of spending time with family, to forget the value of others, to forget the value of the environment we play in, and even to forget the value of knowing ourselves. We adopt the predominant set of goals we are educated and trained to like, and thus we become slaves of the things we crave.
Imagine you were given the opportunity to roam around the universe as you please on the condition that you do not change the places you visit as if they were yours. Let's say you decide to try it out. After verifying the Apollo landers are really on the Moon, after taking a stroll on Mars, after skimming the atmosphere of Jupiter, after diving under the ice crust of Europa, after seeing the rings of Saturn and throwing pebbles across it with your own hands like you do in the lakes, rivers and seas of Earth, and after examining the rest of the solar system to your heart's content, it would become time to visit other places. Some that come to mind... the pleiads, the Orion nebula, Sagitarius A*, the numerous worlds in the galaxy you were born in, which eventually you will look at from the outside as you go for your first visit to Andromeda.
From this perspective, look at some of the people that live on Earth now. How valuable would you say having a checking account balance with 12, 20 or even 30 figures is worth? Perhaps you imagine this poor soul in his best business suit, his eyes almost closed because of incurable fears, trying to cover a pile of this metal called gold with his own body so others can't have it. Doesn't the whole proposition look pitiful now? Because you know that in the time it takes you to travel to the next star, the next anonymous person will relieve the guard of the previous one.
Well, that is more or less how truly insignificant we are. Just because you have more or less you are not more nor less, not even different. You are just another of these most humble beings that try to live here.
So... can we please get along and stop giving ourselves undue importance during the time we have to spend in this place? Can we stop assuming we have the moral rectitude to decide which of us should live? Or pretending our beliefs are better than anybody else's just because somebody wrote "it is so" on a piece of paper?
Ah, but you say, why not doing it anyway since we are stuck on Earth in the first place? Nobody will come to judge us in any case, so why care? Well that is great as long as we are ignorant. But at this point we no longer have the excuse of not knowing what the consequences of our acts are. And yet, we are behaving like the spoiled children our societies spend so much time and effort to "educate" so to speak in the image of our rulers --- spoiled in the sense that they become addicted to satisfying their selfish needs, with less and less tolerance to frustration, with more and more willingness to do whatever it takes to get another high.
It is time for us to grow up once and for all. We better hurry, or I think we will not even have a chance.
Posted by Andrés at 22:12
I finally had a chance to get the footage for the talk on Writing Truly Efficient Smalltalk I gave in Buenos Aires last December. Sigh... the level of background noise in the audio is disappointing, and I do not know how much I will be able to clean it. Note to self: next time record the audio separately.
Posted by Andrés at 14:00
Well, I can say that organizing the contest is both hard work and a lot of fun.
On the hard work... you are essentially on call for the program you wrote for participants, and for all the network services and support you have to provide to them. And oh by the way you probably spent months working on the problem!
On the fun... well I can't quite tell you much yet but it certainly is great! I had a great time creating and solving the problem myself :).
This is the last weekend for participants to work on the qualifier round. At this point they have about 34 hours left. More to come --- and see you at Smalltalk Solutions!
Posted by Andrés at 13:54
I just found these very interesting comments. In particular, it makes reference to what we know is Smalltalk! Check it out --- the last paragraph is killer.
Societies have invested more than a trillion dollars in software and have grotesquely enriched minimally competent software producers whose marketing skills far exceed their programming skills. Despite this enormous long-run investment in software, economists were unable to detect overall gains in economic productivity from information technology until perhaps the mid-1990s or later; the economist Robert Solow once remarked that computers showed up everywhere except in productivity statistics.
Quality may sometimes be the happy by-product of competition. The lack of competition for the PC operating system and key applications has reduced the quality and the possibilities for the user interface. There is no need on our interface for a visible OS, visible applications, or for turning the OS and browsers and e-mail programs into marketing experiences. None of this stuff appeared on the original graphical user interface designed by Xerox PARC. That interface consisted almost entirely of documents--which are, after all, what users care about. Vigorous competition might well have led to distinctly better PC interfaces--without computer administrative debris, without operating system imperialism, without unwanted marketing experiences--compared to what we have now on Windows and Mac.
Today nearly all PC software "competition" is merely between the old release and the new release of the same damn product. It is hard to imagine a more perversely sluggish incentive system for quality. Indeed, under such a system, the optimal economic strategy for market leaders may well be the production and distribution of buggy software, for the real money is in the updates and later releases.
One of Philip Greenspun's points in his introductory programming course at MIT is that the one-semester course can enable students to create the programming equivalent of the amazon, eBay, or photo.net websites. So why it is so hard to get it right the first time? Or at least by the Release 8.06th time? See Software Engineering for Internet Applications (MIT 6.171) at [here].
[...] I mentioned Robert Solow's famous remark that computers show up everywhere, except in the productivity statistics. Solow comments on this, and on economic matters, in a recent interview at [here]. As to be expected from Solow, bright, direct, funny.The problem seems to be with really big systems, the "tar pit," as Fred Brooks famously called it in his great book The Mythical Man-Month. Also the original article and discussion that started this thread [as seen here, requires registration] was about the tradeoff between resources committed vs. benefits.
And perhaps the big gains in computing should be substantially attributed to hardware improvements, not software.
See Scott Rosenberg's recent Washington Post article , which reports
"In my view, we lost our way," Vista's manager, Jim Allchin, wrote in an e-mail (later posted online) to Microsoft founder Bill Gates and chief executive Steve Ballmer. "I would buy a Mac today  if I was not working at Microsoft."
Posted by Andrés at 23:09
Examine the following quote from this place:
Posted by Andrés at 13:34
And today we have yet another episode of meaningless killings in the US. But before we go ahead and put all the blame on one or a few people... hold on for a moment.
We routinely ask to have guns, and statistics show we routinely decide that guns are proper means to resolve conflicts or unpleasant situations. Or do I really need to track down the numbers for ratio of people shooting another in this country compared to others?
No my friend, this is not an isolated event. It is not the work of a single deranged person. No, it's much worse and until we dare look in the mirror we won't fix it. Because every single day we discuss life and death just as if we were talking about family. We are so desensitized and our scale of values is so messed up that we are outraged much more when somebody says "ho" than when people call for killing others on TV --- both in fiction and for real. Is that the mark of reasonable behavior now?
So let's look in the mirror once and for all. What's in our society that fosters these events to happen, eh? Because that is our responsibility, isn't it?
And what about those who don't like what they see of ourselves and just look away, like ostriches sticking their heads in the ground? How are they not accomplices by negligence, and hypocritical when they choose yet another scapegoat for the occasion?
Please... on top of the mourning for yet more lives truncated for no good reason... let's do something. And it's not tougher sentences. If we want this to stop, we will need to rip our fondness for death out of our society.
Given we're in a downward spiral in regards to respect for life, are we going to have the courage it will take to stop? Or are we so intimidated by our own behavior we don't even dare to question what in the heck are we doing?
A long time ago I saw an ad for a video game on TV. It was quite gross, and to make it worse it kept coming up within the same commercial break. Revolting, nauseating, sick beyond words. The game?... this one. See what I mean now? Or do you need to see if you like the ad in the context of what happened today?
Posted by Andrés at 20:08
For the coding contest, I decided to provide a standalone .exe file for Windows. This .exe file has the VM and the image file in it, and it runs just like any other executable. Ok, so what is interesting about this?
Posted by Andrés at 21:35
Aha! So I found what was the problem. Indeed, it was rare in the sense that it happens when you do something that does not seem to contribute much to solving the problem. But who knows --- the participant that found the problem may be onto something!
In any case, I am testing the fix and if everything works fine I should have an updated image and game server available soon.
Sorry for the mess!
Update: a new image and standalone Windows .exe file are now available.
Posted by Andrés at 20:41
After the first 20 hours of the coding contest, things are going quite well. I hope those taking part in the contest are having a lot of fun :).
Someone in the IRC channel asked if the problem statement is available to the public. If you are interested, feel free to take a look here.
The problem server seems to be quite stable, with only one problem reported which so far cannot be reproduced easily. The reference solution I wrote did not expose it either, so it looks like you can solve the problem without causing the exception --- ???. I hope I can find it so it can get fixed, although right now it looks like the defect is rare.
A participant asked how much does the reference solution score in the qualifier round, and the answer is about 200,000.
So far, so good.
Posted by Andrés at 20:15
Take a look at this study regarding what makes people reach the level of "genius". The article has a lot of common themes I commented on before: 7 plus minus 2, chunking, putting in the time, the fact that you can either stimulate your brain or it will forever stay underdeveloped. It may look like "genius", but it ain't magic. It's just that some people cared enough to put in the time and effort it takes to reach a higher level of performance.
Come on, people! Just consider what you could do if you didn't watch 1-2 hours of TV each day and dedicated that to practicing a skill you'd like to have instead!
Posted by Andrés at 03:02
Ah, the coding contest is coming up, and it makes me think of last year when I participated. I remember what I wrote about how I dealt with the problem, how I made decisions about things I knew I did not have enough time to address properly, and the stress caused by not knowing if what I wrote would behave like I meant it to in the first place.
Last year I was a participant, this year I am the organizer. How different the situation, yet how similar the feelings!
One last check, watching the reference solution I wrote working against the problem to make sure everything works like it should. After that, just making the image and writing some instructions is all that is left. Then the time for others to look at all this will come.
And questions, more questions, endless questions as the moment when the contest will start comes closer and closer.
Will this year's participants find gross bugs in what I prepared for them during the last months? Will they find the problem too easy or too hard? What could go wrong that I have not anticipated?
And also... what approach to the problem will they take that I did not think of? Will they beat the reference solution? How differently will their programs behave?
The exciting time when everything starts is coming. As soon as this Friday begins according to Pacific Standard Time, I will put some files in an FTP server. Ten days will go by, and then three finalists will be selected to compete in a follow up blitz round at Smalltalk Solutions.
What will happen? How will this unfold? The possibilities make me very curious. Too many antsy feelings already. Let the games begin.
Posted by Andrés at 02:33
Here is an alternate procedure that should produce smaller .exe files when delivering a VisualWorks application as a single .exe file.
Posted by Andrés at 00:29
The last days of open registration for the coding contest are about to go. This is your chance to have a fantastic time at Smalltalk Solutions. I certainly had a terrific time last year, so besides the fun perhaps it's also your opportunity to get some nice Apple hardware :).
Interested? Drop me a line at email@example.com. Also, here is more information about the contest.
Posted by Andrés at 21:25
After driving a moving truck for about 3000 miles, I moved from the east to the west coast. It was quite a trip, and I got the chance to see many places I wouldn't have seen otherwise. About 15 miles of St. Louis when I got lost. The beautiful state of Missouri, full of cherry blossoms. The green hills of Pennsylvania. The Mohave desert in California. The semi-ghost towns in Arizona. Most enjoyable.
I finally got my internet service too. It is a sorry reminder that I won't have symmetric service anymore, and the up pipe is restricted to 96 kb/sec. That's more than an order of magnitude less up bandwidth for the same money... sigh. Anyway, the network setup is slightly different now, so let me know if the FTP server has issues.
Eventually I will also put the video processing unit back in business and there will be some new Smalltalk footage available.
Posted by Andrés at 21:18
I recently drove past this place, a famous steakhouse, after seeing its billboards for over 100 miles on I-40. Here is their claim to fame.
Posted by Andrés at 23:43
So, what is it going to be? Are we going to win the bet that there will not be catastrophic hurricanes landing at the worst possible places in the US coast this year? Or are we going to have another Katrina year? Gentlemen, start rolling your dice!
Oh and by the way New Orleans is back to what it used to be, right? And we have invested to make sure the levees can take category 3 abuse again, right? Because we care about human life, right? Otherwise we would have made sensible decisions since then, right?
Posted by Andrés at 23:38