Friday, July 3, 2009

Using web ads as a massive computer

Web ads allow for javascript and even flash these days. Given that you buy million's of impressions (based on a .001% return or something ridiculously small you get a ton of impressions for cheap) you are not only buying real estate on the users screen, but buying their cpu power. Assuming that the smaller the ad size the less it costs I should be able to buy a ton of ads for very cheap if the ad doesn't even show on the screen! Combine this with some problem that is easily distributed and you could get a cheap massive computer.

Update: pluraprocessing.com, cpushare.com and discussion of plura and a biz model around this on hacker news.

Sunday, April 19, 2009

Community Live Transformers Toy Movie

Expanding on the previous idea of a Live Toy Transformers Movie except rather then having one person (me presumably) do the entire thing turn it into a community project where everyone gets to put together a minute or two of the film in their own style with their own toys. From the extremely ruff and crude to the polished (with votes for what goes in?) it would probably come together rapidly, rally and amuse the community.

Saturday, April 11, 2009

iPhone apps

Bird identifier
- Take a photo or record a sound, tell me what bird it is

Puzzle solver
- Take a photo of the box and the piece, highlight where the piece probably goes.

Friday, March 27, 2009

Live Action Toy Transformer movie

Take the audio from the original Transformers cartoon movie and then reshoot each shot using the toys. Either the originals, updated versions, customs, and anything in between. There are a fair amount of accessories that are Movie gimmicks. The alternators hotrod has a fishing pole, you can get a Unicron head from the Takara Primus. There are even 3rd party Spike and Daniel with an Exo-Suit set. Close up shots could use the masterpiece toys, shots with the city can use the worlds smallest transformers to go with the Metroplex which wasn't that big. Overall probably pretty doable. It wouldn't have to be stop motion and could very much play on the idea that it is toys being pulled by a string or similar gags. Overall it would probably be a ton of work and entertaining to watch once. As far as distribution goes it could probably only be shown at botcon. The video would be a parody, but I don't know about the usage of the audio.

Less work and a better first attempt would be to just create a five minutes sequence like this. From this it should be clear how much fun a project like this would be.

Monday, December 29, 2008

Board game simulator

To create a board game from stratch there seems to be several basic steps.

1) Idea!
2) Create board, "borrow" pieces from other games, and design the rules.
3) Play test
4) Goto Step 2, tweaking to make the game better.

Play testing involves playing your game over and over looking for issues. A user on bgdf.com wrote up a quick summary of how to play test. Many of the things listed are things you can only do in person, but something I have been pondering is how you often here the hundreds of times designers have played games. One game I got for christmas Agracola someone said the designer played it more then 500 times before the first production run. Part of the reason a designer play tests is to make the game as good as possible and to find the flaws. Even simple things like the first player can always win could take several games to discover. As different strategies are noticed it would be nice to be able to quickly apply them in a computer in hundreds of runs of the game to see if the game has a flaw and how tweaking rules would help or hinder. Rather then spending two hours playing a game with a fundamental flaw it would be nice to be able to discover that automatically and use the two hours to play good versions of the game. This would hopefully reduce the total number of play tests.

There are a few board game software programs on the internet, but they seem to be leaning to helping you visually see a board game on a computer, or setting up some website where users can play a board type game on the web (such as a quick and dirty flash movie tie in game).

So the idea would be to create a simulator (doesn't even need graphics) where after creating a game and inputing different strategies you can have the computer run the game many times over. Every game would be fully recorded so they could easily be compared. With the computer playing thousands of versions of the game it should help to discover flaws that make the game unbalanced (and thus unfun). It should help spot that a player who does action X ends up always winning/loosing a game. Or even something as simple as the first player always wins. Try tweaking rules and re-running the simulations to see what changes. Or graphing parts of the game such as victory points to notice that the game is mostly over half way through and last few rounds don't matter. All this information would be to help guide and maximize the time consuming real world play testing.

The simulator could not say if a game is "fun", but it could help to discover that the player who doesn't buy "item X" before round 4 will never win the game and even worse will be so far behind that at they will go bankrupt/loose/starve only half way through the game. Then one could tweak the rules so everyone can get a chance to buy item X before round 4 even if there are 5 players.

Of equal, but different value would an online version of this that people can play test the game. All games are completely logged. There will be way less games played, but you can see how often they reference the rules, how long they wait between turns and notice new strategies that are taken. The logged information can be inputted back into the system to more accurately determine play times, statistics and even base simulated game play upon what real players do such as with Bayesian filtering.

Disclaimer: I have never designed a board game nor done much research into this hobby. I have only thought about it from time to time as it seems like something fun to do and having a tool like this would be helpful. If you design board games please feel free to point out why this ideal is silly (or might even be useful) in the comments.

Saturday, October 18, 2008

lossy javascript compressor targeting gzip

There is a website that compares various popular JavaScript compression utilities. The goal is to reduce bandwidth. Looking at the results though you see that just turning on gzip compression will give you the biggest win for your effort and reduces the size of the data that is sent to ~40-20% and beyond that the best compressors seem to only half that getting down to ~15-7%. So it should be a given that you will turn on gzip compression on the server. Looking through the compressors that compress variable names you see variable names such as a,b,c,d,e etc. What if you used a, aa, aaa, aaaa, etc? Because the goal is to produce lossy compression why not tune the javascript compressor to not return a file that is small, but to return a file that can be highly compressed by the algorithms used by gzip? Some ideas to re-write the code so the same behavior occurs include:
- Use a, aa, aaa, or maybe thisthis, thisthisthis or limit yourself to the most common letters used f, o, r, e, t, n, etc Need to test out what would work best.
- Always adding an else statement so the pattern }else{ would always appear
- Making sure spacing is consistent (I think most do this already)
- all if statements use {}
- There is always a ; before a } I noticed that some of the compressors removed the ; after a return because you technically don't need it, but that makes two types of } blocks, those with a ; and those without.

Saturday, June 7, 2008

book vending machine

Book vending machine in a hospital. nuff said