Hi,

Presently writing the logic of an application message bus product using
Clojure, mainly because:

a) lack of time to writer 1000xlines of Java code.
b) need to reuse some existing java code & Spring stuff.
c) heavy need for parallelism.
d) heavy need for fast releases to improve the product, dynamic language
is a must.
e) lot funnier to mix tools in a project, it breaks the monotony and
gives the opportunity to people to lean different things and where they
    should be used.
f) Java sucks after a number of years (8 in my case) and all these
frameworks reinventing the wheel or themselves, Cobol would be as funny
to use today
    with a few wizards. Just reading java doc (most of it being poor
documentation of the code behavior) gets me stomach pains.
g) some of my earlier product prototypes where in Common Lisp but now
being able to reuse Java libraries means the prototype can now be
designed to become
    eventually the V1.0 of the product. There will always be a twist to
extend the product relying if needed on existing Java code. Not true
with Common Lisp.
    Getting  a product release becomes a new project by itself. There's
always some bits missing and you end up writing extra code.

But:

a) I am my own boss so I make the decisions about the design and the
appropriate tools.
    My partners either follow or die in the process :)) Some are left
around so it's probably not
    so hard...

b) I sell closed systems on standalone boxes. no endless and painful
discussions with the customer
    anarchitects about the implementation with discussions:  we would
like this part to be rewritten in (choose your option here),
    why not use that latest gizmo  framework that pop out from nowhere 3
weeks ago, we just decided to standardize on that a month ago,...
bablebable...
    No endless meeting anymore...

c) My projects are schedule driven most of the time so sticking to a
tool for the principle
    of keeping stuff mono-language/framework is cumbersome and useless.
My customers want their stuff running as fast as possible,
    since we maintain what we deliver, they do not care about what's
under the hood.

In our product, the configuration GUI part is done in Ruby on Rails
(faster delivery, GUI code is dull to write) and deployed on JRuby,
many basic components come from the prototype that was created primarily
in Java with Spring. On top of that the bus logic runs in Clojure.
Java lies where it should, at the same spot where assembly languages
used to sit in the 70s/80s/90s years, at the bottom.
You know it's there but you do want to deal with it directly as much as
possible however it's always possible to write some specialized code
or use existing librairies.

Use the tool were it is the best fitted.... but that cannot be sold to
many organizations, at least here in Canada.
They want the single tool that will allow them to build a complete house
including the plumbing and the electricity.
Of course that tool does not exists yet so they stick with Java and a
whole bunch of code assistants to spit out huge piles of java code.

Why not build the house from bare molecules... nice genetic engineering
project but not very efficient if you want to deliver
a project of 1000 houses in a three years time line. :))))

We are working with Clojure and some other not yet mainstream
technologies, at least in Canada on a daily basis now.

I call that a competitive advantage....

Our first implementation will be in production by the end of November
2008, other sites to follow in first half of 2009.

The count is now 3 (me and my two partners). Who else ?

Luc


On Tue, 2008-10-14 at 13:13 -0700, Fogus wrote:

> I am attempting to work Clojure (at least partially) into my job, but
> in doing so I wonder how many of you here use it at your own jobs as
> opposed to relegating it to hobby.
> 
> -m
> 
> > 
> 

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to