Monday, September 3, 2007

Moving Right Along

After that colossal failure at making something of myself in the web development industry (well it's not so easy to hit the ground running after a long break, don't you know it) I'm going to try my hand at some application development once again. The Molly Project was not my thing, really the problem is mostly that I googled and I couldn't find any tutorials whatsoever.

In fact all I found were some non-functional demos and I got the impression that I would have to install the code and learn all of the development tools, then make contributions by myself to the existing code-base before I would even generate a single useful application. Hey man, that's a raw deal.

Compare to the work flow of the printing industry: business people don't buy posters so they can hang them on their office walls and have them look pretty, they finance marketing campaigns so that their products will sell harder better faster longer. If Molly Project is a product, lets just say that from the marketing campaign I am thus far not impressed.

Consider: There are sharks and there are bankers.

Bankers keep an inventory of resources and hand out their resources based on complex algorithms that are studied and modeled by Computer Scientists. Sharks don't need to know math. Sharks love bankers, because sharks know exactly what they need to have in order to get on with their job as a shark: eat more animals, and go on living until some time near their own death.

Sharks go around asking bankers for food, and bankers give it away so long as they are not strictly married to the idea of population control. Sharks and bankers both live here in the world with pirates, and a pirate is another idea altogether. They're really only ever important if you concern yourself with entertainment. This may come soon.

Also: a pirate tends to require a ship to protect him from the harsh seas and from the elements. Coincidentally, both bankers and pirates are animals that sometimes ride inside of ships, so the ship should be built strong to help protect against sharks as well. Pirate ships usually have a crew. The job of the crew is to see that the ship remains in working order, and not full of water, lest the sharks take over.

What was I on about? So much for applications; anyway I'll model a game of Blackjack and some players, to see how the various strategies perform, and to get myself accustomed to the C# language. Blackjack is a good game for a computer scientist. The players play against the dealer, not against each other, so the players are all in the same boat, so to speak.

The dealer is essentially a robot who behaves according to rules, and handles the bank's money to pay winners and collect from losers. Dealers have no free will; they must hit up to 16, and if the dealer is busted, all of the remaining players who are left in the game are winners. Players always have the choice to place a bet, and to hit or stay.

If you never hit then you can never bust; this is fundamental. Card counting strategies attempt to predict the odds of a dealer bust before the draw, based on the number of cards of each type (high or low) that have been drawn already, and the number remaining in the deck. Is it possible to do this with statistical reliability?

It sounds like a strategy to me, but does it actually improve your odds against the house? That is a perfect job for a computer simulation! Maybe we can get on mythbusters. Start with both BlackJack using C# and Visual C# 2005 Express Edition, that should be enough to get you simulating a heist on the house. For detailed reporting capabilities so we are able to inform the world about the reality of casino rules and the existence of Santa Claus, we will want to include Visual Web Developer 2005 Express Edition and the Reporting Add-In as well.

I have yet to use most of these tools, and I'm looking for a qualified instructor. If you want to learn together, please contact me.

No comments: