Senegal is a land of magic and mystery. People there use their heads for recreation! How? Well, here's an example. The photo you see above is a game called Wari I got in Kaolack, Senegal. I went to Sengal to give the opening presentation for the SeneJUG. The rules are pretty simple. You move the beans around and the winner takes all the opponent's beans. Here are the rules, a little more specifically.

Now, here's the challenge. Write a program, any way you like, and show the Contest Town something that works, and you win! Cambridge Web Design will sponsor this first contest, and the winner will get a check for $50. The deadline for submitting your entry is midnight, tonight - December 27, 2009, Eastern Standard Time USA.

Yep, that's not much time, but you know what to do. CWD will judge the winning entry based on completeness, user interface (if any), and elegance. CWD will be the sole judge, and CWD's decision is final.

Submit your entry to this email address: contest @ codetown dot us. You can send a link to a web app, a binary, anything you think shows a complete solution that we can run here at CWD HQ, in the Swamp.

If you have questions, just ping me at contest @ codetown dot us.

If there are no entries by midnight tonight, stay tuned. We'll extend the deadline and let you know what the new rules are. Good luck!

Views: 614

Replies to This Discussion

Extend the deadline a week or two and I might take a shot. Today's schedule revolves around the 'Life on Mars' DVD I got for christmas. Sis says the show is offbeat, weird, and full of strange twists. Kinda like me.
Looking back, I'm not certain that was a compliment!
Well, let's look at this as Contest 1, Phase 1. But, think about it. Wari is a universally well known game, The possibilities are broad. It could be an iPhone program. Let me see...yes just as I thought. No Wari for iPhone. Think of what people are missing out on in the game world. You should have seen me playing with the vender in Kaolack. I learned the rules in just a few minutes, but it was a very challenging game. And, he won. They are selling it in Starbucks these days!

As for "offbeat, weird, and full of strange twists", it beats being boring.
I am catching this with only 3 hours to go. Does the program have to be about the Wari game?
Yes, the program has to be about the Wari game. Now, wait until you see the next contest!
OK. Then I won't have time to put something together. I'll wait for the next contest and learn the rules of the game in the meantime.
I wrote a web app in Clojure. You can play the game at or see the source code at

We have a winner! Congrats, Eric. I ran the app on my Mac and from your website. Would you like to collect your $50 prize immediately via PayPal or in person at the next GatorJUG meeting? I'd love to devote the meeting in part to describing your Clojure implementation.
Thanks, Michael. I prefer to pick it up in person because I don't often use PayPal.

I would be happy to talk about my code, but I don't think it will take a large chunk of the meeting. It is just one file with about 100 lines of code, plus a folder full of images.

I delivered a Clojure presentation earlier this year for GatorJUG. If anyone is interested in hearing about Clojure again, I'll be delivering the same presentation again (with minor updates) tomorrow evening for a Ruby user group.
Perfect. We'll update the meeting announcement with a blurb about your description of the Clojure app you wrote to win the first Contest Town contest. Thanks, Eric. You rock!
The Ruby meeting that I mentioned has been cancelled.

Here's a shot of Eric Lavigne (l) receiving his prize for winning the coding contest from Mike Levin.
In this last photo, it looks more like a million dollars, than $50!!! :)



Happy 10th year, JCertif!


Welcome to Codetown!

Codetown is a social network. It's got blogs, forums, groups, personal pages and more! You might think of Codetown as a funky camper van with lots of compartments for your stuff and a great multimedia system, too! Best of all, Codetown has room for all of your friends.

When you create a profile for yourself you get a personal page automatically. That's where you can be creative and do your own thing. People who want to get to know you will click on your name or picture and…

Created by Michael Levin Dec 18, 2008 at 6:56pm. Last updated by Michael Levin May 4, 2018.

Looking for Jobs or Staff?

Check out the Codetown Jobs group.

There's also a free Java Jobs mailing list. It's a Yahoo group so you have to create a Yahoo account to use it.


Enjoy the site? Support Codetown with your donation.

InfoQ Reading List

Google Software Engineering Culture

Several Google engineering practices have been largely adopted across the company until today and still contribute to its success. In 2017 a staff software engineer published some of these practices, not limited to software development. Today, Google fosters a team culture of creativity, autonomy, and innovation.

By Shaaron A Alvares

Presentation: Are We Really Cloud-Native?

Bert Ertman goes beyond the hype of being Cloud-native and focuses instead on what being Cloud-native actually requires in terms of skills and experience for Java Developers and how it affects and impacts traditional systems design.

By Bert Ertman

Presentation: Scaling DB Access for Billions of Queries per Day @PayPal

Petrica Voicu and Kenneth Kang talk about Hera (High Efficiency Reliable Access to data stores) – an open-source in the Go programming language – and how it helps PayPal to manage database access and deal with issues. Hera scales thousands of PayPal’s applications with connection multiplexing, read-write split, and sharding.

By Petrica Voicu, Kenneth Kang

Change to AWS Lambda Networking Reduces Cold Start Time for VPC Customers

AWS announced changes to how Lambda functions connect to resources in a Virtual Private Cloud (VPC). This change — using pre-created network interfaces instead of network interfaces created for each function execution environment — cuts out a major factor in "cold starts" for serverless functions.

By Richard Seroter

Article: Rethinking Flink’s APIs for a Unified Data Processing Framework

Since its very early days, Apache Flink has followed the philosophy of taking a unified approach to batch and streaming. The core building block is the “continuous processing of unbounded data streams, with batch as a special, bounded set of those streams.” Recent updates to the Flink APIs include architectural designs by the community to support batch and streaming unification in Apache Flink.

By Aljoscha Krettek

© 2019   Created by Michael Levin.   Powered by

Badges  |  Report an Issue  |  Terms of Service