[Chicago-talk] New system architecture

Jay Strauss me at heyjay.com
Tue Jun 2 07:47:00 PDT 2009


I like the idea of a java script (AJAX) client, although I don't know
javascript, which just means more learning curve.

You say use JSON.  I've never used it (reading about it now), do you
typically build really atomic pieces of code and communicate via JSON,
even between processes on the same host?

Where do the API of individual components end where you pass data in
native format, and the JSON begin?

Thanks
Jay

On Mon, Jun 1, 2009 at 2:27 PM, Dave Viner <daveviner at pobox.com> wrote:
> I would tend to agree with Jason.  Personally, I don't like most
> desktop apps.  I like to use my browser.  So, AJAX is perfect.  Just
> architect your web services to respond in JSON, and use jQuery to
> handle the communication.  This setup allows you to grow - if you and
> your brother hire other people, or want to license the software - and
> it allows you to make changes to the appropriate component (front-end
> versus service layer vs database).  (Note that many system would allow
> for similar levels of encapsulation.  I'm just pointing out that a
> well-designed AJAX system allows the same flexibility as a
> well-designed desktop app or flash app or whatever else.)
>
> Another alternative to consider is AIR.  You can make a pretty simple
> desktop app using just HTML and JS.  Depending on your comfort with
> using Adobe as the main execution platform, it's an interesting
> approach that also buys you cross-platform compatibility.  Seesmic
> Desktop is a full AIR app which has some pretty cool features.
>
> HTH
> Dave Viner
>
>
> On Mon, Jun 1, 2009 at 11:54 AM, Jason Rexilius <jason at hostedlabs.com> wrote:
>> Sorry to chime in here late in the conversation.  I was an architect at JP
>> morgan for FX and fixed income web-based trading apps and some desktop apps
>> so have a bit of experience in related fields.
>>
>>
>> For fat client, I would suggest C++ if your desktop app needs good
>> performance and Qt if your app needs good cross platform capability.
>>
>> If you do not need that level of performance I would jump all the way to the
>> other end of the spectrum and look at Flex/Flash for fat-client-like
>> capability or really well engineered AJAX interactivity (I built web-based
>> FX trading apps using java, perl and javascript/HTML back in the day that
>> moved very, very fast).
>>
>> Swing sux big time and you can get pretty close to its performance with well
>> engineered flash client, particularly if the server component is local
>> network.
>>
>>
>> For server side, java is one choice, I think perl is still a strong
>> candidate depending on _how_ you code.  Python is also a strong candidate.
>>  If you are really looking to rock it hard, the best might be Erlang. But
>> really it comes down to what language you are comfortable with.  A good perl
>> coder can build a faster app than a bad Java coder..
>>
>> Me personally, unless you were doing heavy real-time trading based on market
>> timing, I would build client in HTML/JS and server side with LAMP stack
>> (perl, python or PHP) with shared mem or other high performance IPC
>> mechanism to whatever your trading data feed provider is (reuters,
>> bloomberg, etc.).  If you needed to do transforms or manips on data feed I'd
>> right that in C/C++ or erlang.  If youre just talking to a DB, then the
>> basic principles of a good handler that wraps all access to DBs and good
>> schema design should really be enough. ORMs are often more baggage than help
>> but maybe use a simple code generator to do light ORM class building or
>> something..
>>
>>
>>
>>
>> Jay Strauss wrote:
>>>
>>> I don't think we've set upon Java or not.  But I don't feel there is a
>>> good Perl rich GUI alternative (I know about wxperl, and am not in
>>> love)
>>>
>>> On Mon, Jun 1, 2009 at 12:35 PM, Michael Potter <michael at potter.name>
>>> wrote:
>>>>
>>>> Jay,
>>>>
>>>> Here is my 2 cents:  If you are intending to replace Perl with Java then
>>>> consider Groovy instead of Java.  Groovy has a lot of the benefits of
>>>> Perl
>>>> (Dynamic Language), but runs on the JVM and can interface with class
>>>> files
>>>> that were created with javac.
>>>>
>>>> Let us know what you decide.
>>>> --
>>>> Michael Potter
>>>>
>>>> On Mon, Jun 1, 2009 at 12:14 PM, Jay Strauss <me at heyjay.com> wrote:
>>>>>
>>>>> Hi all, need some advice.
>>>>>
>>>>> I want to build a new system.  My bro and I have a small
>>>>> equity/options trading application.  We cobbled it together in Perl
>>>>> and Oracle years ago.  Things have broken, some of the stuff we want
>>>>> to change.  Ultimately we want to start over.
>>>>>
>>>>> I'm just trying to decide on what architecture to use going forward.
>>>>> I know this is a pretty wide question.
>>>>>
>>>>> Most (all) of the processes will run on a single box.  I don't really
>>>>> have an idea of which presentation route we'll go (full rich client
>>>>> maybe using Java/Swing, maybe a Java Script client using GWT, maybe
>>>>> plain HTML).  The client will probably request functionality from the
>>>>> server.
>>>>>
>>>>> I was thinking we'd do the whole API for asking for quotes, requesting
>>>>> analytics, inserting transactins...  via HTTP (SOAP).
>>>>>
>>>>> Can anyone give me their thoughts on their lessons learned, maybe
>>>>> routes to try, stuff I should be thinking of...
>>>>>
>>>>> (again I know this is pretty open ended, but I'm interested in what
>>>>> others have done with success)
>>>>>
>>>>> Thanks
>>>>> Jay
>>>>> _______________________________________________
>>>>> Chicago-talk mailing list
>>>>> Chicago-talk at pm.org
>>>>> http://mail.pm.org/mailman/listinfo/chicago-talk
>>>>
>>>> _______________________________________________
>>>> Chicago-talk mailing list
>>>> Chicago-talk at pm.org
>>>> http://mail.pm.org/mailman/listinfo/chicago-talk
>>>>
>>> _______________________________________________
>>> Chicago-talk mailing list
>>> Chicago-talk at pm.org
>>> http://mail.pm.org/mailman/listinfo/chicago-talk
>>
>> _______________________________________________
>> Chicago-talk mailing list
>> Chicago-talk at pm.org
>> http://mail.pm.org/mailman/listinfo/chicago-talk
>>
> _______________________________________________
> Chicago-talk mailing list
> Chicago-talk at pm.org
> http://mail.pm.org/mailman/listinfo/chicago-talk
>


More information about the Chicago-talk mailing list