January 9th, 2008
So on to plugin’s in Raydo. The computation functions I am trying to make it easier to add computation, almost like ‘plugin’s. I say ‘plugin’, and when I say plugin, I mean compiled into the code. Doing binary ‘plugins’ is just crazy. The only reason to do that is closed source code. If you have the source like Raydo, it makes much more sense to compile it in.
So when you write a plugin, you have to worry about threads. The computations are done out in the threads, so you have to be careful to use thread safe functions.
Certain C++ Standard Library functions from C are particular problems because they hold internal state between calls.
asctime
ctime
gmtime
localtime
rand
strtok
rand & strtok will probably not be a problem. The time functions (asctime, ctime, gmtime, localtime) you may end up trying to use but you shouldn’t.
Some vendors ( like HP ) have thread-safe replacements for these functions, with different names and arguments, but you should realize that these are not portable. You can write thread-safe implementations using thread-specific storage, if you want to.
If you really want something portable & thread safe, I suggest you use the Boost replacements for the problem functions. I will go into why I am not including Boost in the build at a later time.
Tags: c++, Dow @ 12589.07 crazy!, threadsafe, when will the Bernake put get here
Posted in Raydo | No Comments »
January 4th, 2008
Well, I just spoke to someone ( who shall remain nameless ) at OptionsHouse, and they are not going to have an API for a while. They have lot of requests for an API, but I think they are a little too busy to push it out for traders. They do not have an estimate, but you know how estimates are anyway.
They are good guys over at OptionsHouse, and I am sure they will get the API out sooner rather than later.
Tags: danny, options house, optionshouse.com
Posted in Raydo, Website | No Comments »
January 3rd, 2008
The Problem with Threads is a paper written by the Edward A. Lee, the Chair of EE @ University of California at Berkeley
I especially liked one line from his conclusion,
Concurrent programming models can be constructed that are much more predictable and understandable than threads. They are based on a very simple principle: deterministic ends should be accomplished with deterministic means.
Until that day comes, we will still muddle along with pthreads. Once again, threads in Windows is a pain!
( Well not really a pain, just why do they have to be different ? )
Tags: , berkley, edward lee, evil, threads
Posted in Development, Raydo, design | No Comments »
January 2nd, 2008
Over there, on the right hand side of the page.
Tags: about me, I like sushi, obligatory about me page
Posted in Website | No Comments »
December 31st, 2007
I have updated my rather anemic FAQ section. Check it out.
Tags: FAQ, Frequently 'Axed' Questions, No snide remarks this time, RTFM
Posted in Website | No Comments »
December 29th, 2007
I cleaned up the C++ interfaces a little bit. This image below is only for the C++ interfaces.

I am concentrating on Postgres, sqlite, Oracle and MySQL. Postgres and SQlite have the most project friendly licenses, and MySQL / Oracle have the least friendly licenses.
However, the cluster aspects of MySQL and Oracle are awesome. Something the other two do not have.
( I know Postgres has clustering, but it is not the same )
Posted in Database, Development, Raydo, design | No Comments »
December 28th, 2007
So it only took….not much time to get a Raydo building under windows.
It was very easy, much easier than I expected. Usually you expect some complication to crop up. Fresh installs are so nice, and worked perfectly this time.
One caveat, read the instructions!! After installing VC++ 8, you have to make some configuration changes when installing the platform SDK. It boggles the mind that they (they as in M$) could not make those changes transparent when installing. That would make it much easier.
So I checked Raydo at of the svn repository. and hit build. It compiled straight out of the box. Always nice when that happens.
I do not know if Windows will be as supported as much as Linux or OSX. Actually I do know. It will not be supported as much. The difference is now, if there is a question or problem on windows, I can at least debug.
Blah. I still hate windows.
Tags: bakefile, microsoft is a racket, vc++, windows sucks, wxwindows
Posted in Development, Linux, Raydo, Windows, WxWidgets | No Comments »
December 26th, 2007
As everyone knows, I am not the greatest fan of Microsoft windows. I prefer an operation system that does not eat up all your time to just to get it to work.

So I have a HP tc1100 now for windows development. It is a two year old machine running a six year old “operating system”. It is a nice little box.
So now I will do more development for the Windows platform.
Tags: , compaq, hp tc1100
Posted in Raydo | No Comments »
December 20th, 2007
Ok, to answer a question, the interface is written C++. NOT wxWidgets.NET. Chills run down my spine just thinking about it. And to answer the second question, the Alpha GUI will be ready when it is ready. Sorry, but I want to get the interface right the first go around ( or at least build in enough flexibility ) that I don’t ‘code myself into a box’ that would require me to break a lot of stuff to fix the UI.
So here are some of the changes I have made. ( With screencaps ! )

Click to enlarge
[1] The rows are thinner so more information can be shown to the user.
[2] First cut at user defined views ( Notice the View 1/2 tabs )
[3] The Books ( or desks , or whatever you want to call them ) can be user defined.
[4] I took out the application menu for now. I want to roll part of the functionality into the main screen, and the rest into the status menu.
Design is not how something looks, but how it is used. -Unknown
Tags: Amy Winehouse can sing her butt off, windows is not an operating system, wxWidgets.NET
Posted in Development, design | No Comments »
December 19th, 2007
So more on the GUI. I develop the GUI on Ubuntu, using GTK2 and wxWidgets. wxWidgets 2.6.x is supported on the mac out of the box which is a good thing. So for most systems ( Unix and Mac ) GTK2 is the way to go. Now that Sun is supporting GTK2 to Solaris, so it is a safe bet for most Unixes. My other options are GTK1, Motif and X11 for Unix.
The good thing about GTK+ is that it isn’t based on Xt. The bad thing about GTK+ is that it doesn’t have access to the X resources database. This is a large positive, with a smaller negative, so I think it is better than using Xt based toolkits.
Now, Ubuntu derivivatives may or may not work as well. KUbuntu with GTK2 installed do not work. I think whoever made KUbuntu screwed up the GTK+ libs. Understandable, since the purpose of KUbuntu is to not use Gnome.
I use wxWidgets 2.6.x builds now. It serves me well, and I do not have any plan to move to wxWidgets 2.8. I plan to move to wxWidgets 3.0 when it comes out next year ( normal disclaimer applies )
As for Windows, whatever. I will get to it when I get to it.
Posted in Raydo | No Comments »