my blog

Springtime, Symantec, and Alcatraz

For the last 8 months, I've been working with the group at Symantec Health. This is a new initiative within the company whose aim is to target the technology needs in the healthcare space. See http://symantechealth.verite.com. In that 8 months, we've gone from prototype to full GA of our two solutions, Health Safe and Health Share.

The broad goal of these products is to ease the burden of IT on hospitals with respect to image archiving and sharing. For those who follow technology trends, healthcare can be surprisingly behind the times. I think this group is on track to place Symantec as a trusted name within healthcare IT, and I'm proud to be part of it.

On a more personal level, my wife, Kelly, has been hard in training for the upcoming Escape From Alcatraz triathlon. The course winds through downtown San Francisco, which we have been able to enjoy during our weekend training. I say "our" training since inevitable I'm along for the ride. The race is this coming Sunday and I'm sure she's in a great shape for it. Go Kelly!

Hello, California!

As of mid-September, I've started on a new project 3000 miles away from New York! I found a great team within Symantec , mostly with backgrounds in web and other tech startups, who are working in health care services. You can have a listen to Gary Sevounts talk about the solution here. I'm really happy to have found these guys; I have a lot I can learn from them.
As far as West Coast vs. East... California is nice. It's like being on vacation, with the weather nice all the time. My wife and I still talk about how we miss New York, though. Right now we could be ice skating at Wollman Rink, or seeing the fall color at a cabin up in the Catskills. Perhaps again some time in the future, but for now I'm gonna soak up the sun and enjoy CA!

MarketFactory

For those who don't know me personally, I have spent the last 2 years working with a great team at MarketFactory. I was fortunate enough to meet the 3 founders via an online ad in summer 2007. It was a great opportunity to work with the founders establishing the core technology. It's really quite an experience to start at nothing and see a product ship.

When we started MarketFactory, we had no office, no infrastructure, no code, and only a vision of how we could make the world better. Though the CTO had the final say, I was given freedom to choose most of the development solutions: languages, libraries, development and support tools. Usually when someone in my position is faced with these choices, it's best to pull from what you know, because it's what works. I was also fortunate that I was trusted enough to be allowed to research new unproven technologies as well. Open source is still a relatively new philosophy for the financial world though there is much out there that can be leveraged.

I've worked at a few startups before, but this is the one I put the most of myself into. It's also the one I'm most proud of out of all my past experience.

Unit tests are good

Some developers can write code from start to finish and and end up with a complete and useful solution. I used to think I was one of those developers. Now I don't think so much of myself. I tend to write some code that's good enough for the moment, and build on top of it like a stack of cards which at some point starts to collapse under its own weight. In the past, this is the point at which I lose interest in the project and usually banish it to the code archive.

Lately I've had some spare time to spend on the game project I have worked on in the past year. After spending some time away from the code, I felt the need to refactor the code. The game-specific code was tied in with the engine code enough that it became somewhat of an overwhelming jumble. So I decided to attempt a clean break from the engine and the game code.

While I am doing this, I am spending the time to do unit testing. While I wrote some tests for the base display, input, and sound objects on the first pass, I didn't attempt to write a thorough unit test, which stressed all of the features of a particular module. Is this a waste of time? I'm not sure, but it's a different approach than I've taken in the past, and in the past, my code has tended to wither away and disappear after becoming stale. I hope to keep this code around and launch a few more projects based on this engine so for ow I'll continue to work on it.

Going undercover...

Recently I heard that a few prediction market sites have disappeared from the world, CrowdIQ and BizPredict. The sites were pretty, the markets had graphs, and they had implemented the latest algorithms to create liquidity and bring ease of use. But they still didn't manage to bring the crowds. While I still think my ideas for the prediction market space would make for an easier interface than most existing sites in the space, I won't be pursuing them.

I've been fortunate enough to find a few new friends who come from the finance world. They fill in my blanks and I (hopefully) fill in theirs. I'm not able to talk of specifics at this early stage, but I can say I'm excited and I'll be talking about it here as soon as I can.

I like python

I just got done reading

    Chance

by Amir D. Aczel, which was a fun, quick book about probability and how it applies to various scenarios in our lives, including gambling. This book was by no means a rigorous study, but it had some good explanations on determining probabilities for simple situations. What I got out of it was a little motivation to revisit my gambling past and, along the way, mess with python.

One of the blackjack games I used to play had a side bet called a "Royal Match", which was basically a bet that 2 cards of the same suit would be dealt to you. The probabilities for this side bet when playig with a full deck of cards is fairly straight forward. But I wanted to run some simulations to see what the probabilities looked like at various points dealing from a randomly shuffled deck. So I started writing a python script to simulate any number of decks being dealt and to determine probabilities. Within a few hours I had all the data I wanted generated by this script. I used a few online references for some syntax help, but it was relatively painless to whip out the script. So I think I'll start using python more often for prototyping algorithms and such.

As far as the results of the Royal Match bet, I'm working to devise a count that can take advantage of positive situations. As soon as I get to a point I'm happy with I'll add it to my projects page.

Back to the Future

While my first contract job here in the big city is coming to a close, I'm starting to think back to my own project I had been working on. I became interested in prediction markets last fall so I read up and studied as much as I could about them. The idea of predicting the future by using a market with contracts based on some future event is really cool. I joined up a few of the big sites and played around a bit. Then I had a thought. Why is there not more interest in these markets? One conclusion I came to was that the mechanics of a market are not something the average person is familiar or comfortable with. Also, my own interest in the markets waned because the lack of participation caused lulls in the action.

So I started working on how I could improve the prediction market to draw more interest. The conclusion I came to was a model where the contracts could not only be presented by a market mechanism, but also by a simpler betting model, the parimutuel betting pool. This is a mechanism used in horse races which is familiar to those who bet on sports. Presenting the prediction in a parimutuel form would cater to different bettors who do not want to use a market interface. In a nutshell, the bettor (investor) would place a bet amount on a particular choice. Once a winner is chosen, the money pool is distributed to the winning bettors proportional to their bet amounts.

Then I realized this could be taken one step further. The contracts could also be used with a poll, or lottery, mechanism. In this form, each participant would ante up a predetermined amount and select their guess. The pot would then be distributed in some fashion amongst the winning guesses, usually by giving the entire amount to a random participant. This big win amount should stir up interest by those who don't wish to use the more complex interface outlined above.

Finally, these 3 methods are linked together by calculating the probability of a particular outcome based on participation. The probability of a market contract would be inherent in the price of that contract. The probability of a parimutuel choice would be the amount of money bet on that choice divided by total money bet on all choices. The probability of the poll, or lottery, would be the number of guesses on a particular choice divided by the total number of guesses. With these 3 probabilities available, it is easy to aggregate the 3 methods into one information pool which will track the current probability of all the possible outcomes of an event. There are some hurdles, such as the need to allow the poll/lottery model to incorporate new information about the event. This can be done by allowing a participant to withdraw their choice and guess a different one.

I feel that this presentation model could allow for much greater interest and participation, which would provide greater accuracy in probability of events, which in turn is more valuable to those who are relying on such statistics. I hope to take this idea to completion and create the software necessary to provide this interface.

Syndicate content