What do I do? My father majored in math, he's in computers. My sister majored in math, she's in computers. I wanted to become a mathematician, so I majored in computers. But it didn't work. Judging from computer science departments, you need a Ph.D. in computer science before you can become a mathematician. So...what do I do...It's the first question people ask. I never noticed until I didn't have a good answer. Well, in a fit of wild optimism, I quit my job and set off to write the Great American Software Product. What is it? I've been working hard for a very long time, and you'd think I'd know - but I don't. Right now it is just a lot of code, not a product. A product solves somebody's problem. What I have is a nice framework for building diagram editors. I need to decide soon. I also do consulting. I have built a couple of interesting pieces of software: *An automated microscope framework. I also built a specific microscope application using this framework. It was interesting work. It involved using image processing and pattern recognition to automatically find and recognize different things under a computer controlled microscope and camera. Most of my consulting involves image processing and pattern recognition. *I built a 2D structured graphics/computational geometry library. I originally built it to use with my diagram editor, but it stands up well on its own. I am currently working on version 3.0, a major upgrade. *SceneGraph based with nodes for layout, hiding subtrees, level of detail, clip rects, transforms, pens, etc. (and regular drawable graphics, of course). *O[lg n] point hit testing (in progress). *O[lg n] visible in rect testing (in progress). *A diagram editor. *Code for doing DoubleDispatch in C++ (useful for the visitor pattern). I've used this code in a couple projects and it works well. It handles inheritance correctly, has constant-time overhead, and can be used in a framework (no dependency between "node" and "visitor" classes). See http://www.determan.net/articles/doubledispatcharticle.pdf ---- '''You can leave me a message here:''' ---- CategoryHomePage