My company today decided to ditch ruby development and to develop new
web
applications only with Java or .net.
Current RoR applications will be migrated to Java.
Sigh. No more ruby for me (in office hours).
But anyway: are here some Java devs who may suggest some Java frameworks
similar to RoR? Maybe something that emulates Activerecord and is as
flexible, powerful and convenient to use as the ActionPack?
On Jul 4, 2008, at 10:31 , S2 wrote:
My company today decided to ditch ruby development and to develop
new web
applications only with Java or .net.
Current RoR applications will be migrated to Java.
Sigh. No more ruby for me (in office hours).
most people at this stage would be posting their resume, not a
question about “good” java frameworks.
S2 wrote:
My company today decided to ditch ruby development and to develop new web
applications only with Java or .net.
Quit.
Were you using RoR with unit tests?
Current RoR applications will be migrated to Java.
Was there a rationale? Did an executive read a magazine article or
something?
phlip wrote:
Quit.
i probably will.
Were you using RoR with unit tests?
no. everything was fine actually. apps where developed quickly, used
“cool”
ajax stuff that excited our clients and developers where quite happy.
Current RoR applications will be migrated to Java.
Was there a rationale?
no.
Did an executive read a magazine article or
something?
probably. i think the main reason is that management does not want to
have 3
separate development lines (RoR, Java and .NET) for Web apps. I think
they
want to unify the development Frameworks/languages so they can relocate
Staff from one project to an other without loosing to much “learn” time.
On Fri, Jul 4, 2008 at 7:39 PM, Ryan D. [email protected]
wrote:
Maybe, but as someone who certainly is not like most people (with the
exception that I guess that many people are exactly like this, but
this would lead to a tangent I am afraid) I see an alternative.
Would you think you could some jar files like jruby.jar ?
Cheers
Robert
–
http://ruby-smalltalk.blogspot.com/
AALST (n.) One who changes his name to be further to the front
D.Adams; The Meaning of LIFF
Ryan D. wrote:
most people at this stage would be posting their resume, not a
question about “good” java frameworks.
monster.com and rubynow are my friends
but in the mean time i have to keep paying for my mortgage.
On Fri, Jul 4, 2008 at 8:01 PM, S2 [email protected] wrote:
Current RoR applications will be migrated to Java.
Was there a rationale?
no.
Of course there was, you stated it yourself above, “developers were
quite happy”, sorry for my pessimistic look at this.
Apart of the idea that jruby might come in handy this decision really
looks odd to me.
Maybe somebody wants to sink the ship? Well at least, if they do, they
seem to be good at it sigh.
R.
S2 wrote:
Were you using RoR with unit tests?
no. everything was fine actually. apps where developed quickly, used “cool”
ajax stuff that excited our clients and developers where quite happy.
You would have been faster and more … assertive … with unit tests.
Use assert_javascript to test Ajax.
Your Java and .NET offerings will limp far behind RoR’s test abilities.
Current RoR applications will be migrated to Java.
Was there a rationale?no.
You have a boss who is allowed to decree things without giving a
rationale?
probably. i think the main reason is that management does not want to have 3
separate development lines (RoR, Java and .NET) for Web apps. I think they
want to unify the development Frameworks/languages so they can relocate
Staff from one project to an other without loosing to much “learn” time.
So, no pair programming, and they want to make knowledge transfer easier
by
reducing the amount of knowledge required. Gotcha!
Robert D. wrote:
Of course there was, you stated it yourself above, “developers were
quite happy”, sorry for my pessimistic look at this.
I don’t think they are that evil
Apart of the idea that jruby might come in handy this decision really
looks odd to me.
No. jruby will not be an option. If that was the case I would not look
for
some other job. I think we/they are going to use the Seam Framework, but
it’s still not sure. They asked me to join the team who gets to evaluate
the various available frameworks, but every time I look at a hibernate
config file I get goose-flesh.
Maybe somebody wants to sink the ship?
I don’t think so. I think it’s only ignorance.
Well at least, if they do, they
seem to be good at it sigh.
Have some arguments I could tell management? You never know…
S2 wrote:
Yes. I asked to get some devs and PMs together and get an analysis done on
the migration, what we lose and what we would gain by dropping RoR for
Java, but “for now we don’t have the time. New development should be done
in Java”.
At my day job we use pure XP with RoR. We use promiscuous pair
programming,
meaning we switch pairs every 2 hours. We use pure Test Driven
Development, with
refactoring & continuous integration. We have a very high velocity and a
vanishing bug rate.
Since I got there, our team has increased to 6, and we will get 2 more
as soon
as we remodel. I really doubt we could talk our executives into
switching back
to Java, or switching from XP to something else… like “Agile”.
Your worksite has issues that prevent your executives from seeing which
systems
are working better than others. There’s an old adage, “If I had 6 hours
to cut
down a tree, I would spend the first 3 hours sharpening my ax”.
Your bosses think the more strokes required to cut down a tree, the more
“progress” you made. That’s what a 600 line configuration file is - 600
more
strokes with a dull ax.
So, no pair programming, and they want to make knowledge transfer easier
by reducing the amount of knowledge required. Gotcha!Exactly. I’m not sure I understand your point?
Exactly… you are not sure? (-;
If you are not pair programming, then knowledge is indeed hard to
transfer at
team swap time. So your execs think they can reduce the total amount of
knowledge required. Yet more strokes to cut down that tree!
phlip wrote:
You have a boss who is allowed to decree things without giving a
rationale?
Yes. I asked to get some devs and PMs together and get an analysis done
on
the migration, what we lose and what we would gain by dropping RoR for
Java, but “for now we don’t have the time. New development should be
done
in Java”.
So, no pair programming, and they want to make knowledge transfer easier
by reducing the amount of knowledge required. Gotcha!
Exactly. I’m not sure I understand your point?
S2 wrote:
No. jruby will not be an option. If that was the case I would not look for
some other job. I think we/they are going to use the Seam Framework, but
it’s still not sure. They asked me to join the team who gets to evaluate
the various available frameworks, but every time I look at a hibernate
config file I get goose-flesh.
You need to be able to explain to them just why you get “goose-flesh”.
No doubt everyone on this list is automatically sympathetic to your
plight, but truth is that much of what we see as obvious about Ruby is
not so for others.
I don’t see how anyone can expect people to just be instantly
enlightened about the value of using Ruby; folks need facts.*
If Ruby (with Rails or whatever) is the objectively better choice then
you should be able to demonstrate that. There has to be something
tangible, something other than “I like it.”
Get some stats, some code, some use cases, and build a solid case. The
best argument tends to center on money. Something that argues for
higher employee retention rate, or lowered training costs. If you can
show that using Ruby means faster turnaround with fewer developers and
lower maintenance, that in the end Ruby == more profit than Java or
.Net, you should be OK.*
If you can’t make that case, then why would you expect a business to
choose Ruby?
- Or not. Some folks will have ulterior motives for choosing one tool
over another, but you should start be giving people the benefit of the
doubt.
–
James B.
www.happycamperstudios.com - Wicked Cool Coding
www.jamesbritt.com - Playing with Better Toys
www.ruby-doc.org - Ruby Help & Documentation
www.rubystuff.com - The Ruby Store for Ruby Stuff
On Fri, Jul 4, 2008 at 8:21 PM, S2 [email protected] wrote:
No. jruby will not be an option. If that was the case I would not look for
seem to be good at it sigh.
Have some arguments I could tell management? You never know…
Sure, if you trust that they are honest, first thing to do is to ask
for their rationale.
Maybe, after all, it makes sense.
If they cannot share their agenda with you, I was probably a little
bit right, but if they can and do you might be able to
trigger a discussion.
If e.g. you were guessing correctly, and I guess knowing the ship you
are sailing on there are some chances that you have, that they are
trying to get their development sharing spectrum smaller, you might be
able to give them different options (jruby might come into play
again). You might want to figure out some market trends, development
times etc.
In an ideal world you might get a chance to present Ruby’s strengths :).
But in order to reason with somebody at first you have to trigger a
dialog, do you think you are in a position to do that?
Well good luck from the bottom of my heart.
Cheers
Robert
James B. wrote:
You need to be able to explain to them just why you get “goose-flesh”.
Well yes. That part is in the past. Our small RoR group already
explained
that.
No doubt everyone on this list is automatically sympathetic to your
plight, but truth is that much of what we see as obvious about Ruby is
not so for others.
Sure.
I don’t see how anyone can expect people to just be instantly
enlightened about the value of using Ruby; folks need facts.*
Of course.
If Ruby (with Rails or whatever) is the objectively better choice then
you should be able to demonstrate that. There has to be something
tangible, something other than “I like it.”
I can’t agree more. But as I sad to phlip, it’s not a “technical”
argument I
have to fight this time. Who made the decision knows RoR is qucker,
faster,
better solution to almost all our development needs. I quote myself:
what we use has not necessarily be the best tool for the
job, but it should be the same for everyone, so people can be moved from
one project to an other without switching from one Framework/language to
another.
I have no arguments against that.
Maybe they are right. It’s ok to switch to Java. But at that point I
will
feel castrated, wasting time on config files and generating getters and
setters with eclipse, waiting for tomcat to restart to see the changes
on
my code and sending war files to the sysadmin for deploy instead of a
convenient svn update.
S2 wrote:
My company today decided to ditch ruby development and to develop new web
applications only with Java or .net.
Current RoR applications will be migrated to Java.
Sigh. No more ruby for me (in office hours).
But anyway: are here some Java devs who may suggest some Java frameworks
similar to RoR? Maybe something that emulates Activerecord and is as
flexible, powerful and convenient to use as the ActionPack?
Rather than berate your management for the decision I’ll try to answer
your actual question
I switch between RoR and Java regularly for different clients.
For Java I use the Spring framework almost exclusively. I do not use
Hibernate as I prefer to use
springs DAO framework, and the various jdbc wrappers they provide, I
like to get my hands dirty with
SQL, and you can make things very efficient that way too.
Spring has a fairly steep learning curve but is well documented and
supported and has many
components, from JMS, WEBMVC, JDBC etc. you can pretty much do
everything with the Spring framework.
I use a standard architecture where you have web servers, talking to
middleware servers via JMS,
this separates all database access out of the web layer. Then the
middleware layer is composed of a
JMS layer calling POJO’s and the POJO’s call the DAO layer which talks
to the database, so
everything is cleanly separated. All database access is in the DAO
layer, all Business logic is in
the POJOs. This makes testing pretty easy, I write JUnit tests (using
hamcrest matchers) for the
DAOs, and for the POJOS, so I can test database independent of business
logic and vice versa.
It is not as much fun as RoR, but it sure is much easier to scale for
huge loads.
I use Eclipse as my IDE for Java development.
I would guess it takes me twice as long to write a given application in
Java as it would in RoR, not
including the scaling issues.
I write all my support scripts and database management code in Ruby and
use the Sequel GEM, so I
still get my ruby fix even when on a Java project.
Good luck
phlip wrote:
Your worksite has issues that prevent your executives from seeing which
systems are working better than others. There’s an old adage, “If I had 6
hours to cut down a tree, I would spend the first 3 hours sharpening my
ax”.
I think they know RoR is better. But that’s not their main argument.
Their
main point is that what we use has not necessarily be the best tool for
the
job, but it should be the same for everyone, so people can be moved from
one project to an other without switching from one Framework/language to
another. Even if it takes more strokes to cut the tree, at least it’s
the
same axe for everyone.
An since Java has to be used for some Projects because the client
mandates
it, and since for .NET it’s the same, RoR has to die.
BTW, I agree with you, I am just giving back what comes from management.
At my day job we use pure XP with RoR. We use promiscuous pair
programming, meaning we switch pairs every 2 hours. We use pure Test
Driven Development, with refactoring & continuous integration. We have a
very high velocity and a vanishing bug rate.
I think changing development process would be to much of a jump. What we
do
is very old style: requirements analysis, design, implementation,
testing.
If I propose pair programming i think they would not understand it, or
not
be willing/prepared/ready for such a radical change.
Jim M. wrote:
Rather than berate your management for the decision I’ll try to answer
your actual question
Thank you!
This was actually a great post, gave me a bit of insight and an overview
on
all of it. Thanks again for your time.
Robert D. wrote:
Sure, if you trust that they are honest, first thing to do is to ask
for their rationale.
Sorry, I think I misunderstood what phlip meant with rationale. I
thought
about a technical analysis comparing the two technologies (that would
actually be quite interesting). If by rationale you mean simply the
reason
for the decision it’s very easy:
Same language and framework for everyone: people can switch projects
quicker.
We have to use Java because some clients want it. Nobody asks for RoR.
Dismiss RoR.
Maybe, after all, it makes sense.
Sure.
that they are
trying to get their development sharing spectrum smaller, you might be
able to give them different options (jruby might come into play
again).
I really don’t think we will be able to pass something like jruby. It’s
Java
the platform, but not Java the language. That would go against their
main
reason: same language for everyone. (No, we can’t rewrite all current
apps
written in Java (the language))
In an ideal world you might get a chance to present Ruby’s strengths :).
I already did that when we started to evaluate it a few years ago. But
it’s
not really a “what is the best tool” decision this time.
But in order to reason with somebody at first you have to trigger a
dialog, do you think you are in a position to do that?
I’ll sure try it
From: “M. Edward (Ed) Borasky” [email protected]
- Or not. Some folks will have ulterior motives for choosing one tool
over another, but you should start be giving people the benefit of the
doubt.Or better yet, just say, “They may be right,” and proceed with the
accepted environments and projects.
Wait… have you ever actually endured much Java programming?
HaHaOnlySerious,
Bill
Bill K. wrote:
Wait… have you ever actually endured much Java programming?
HaHaOnlySerious,
Bill
I once picked Java for a queuing theory model. I tried Visual Basic,
Perl and Java on some simple linear algebra, and Java was the fastest.
This was long ago – before “Java 2”! So I wrote it in Java. The damn
thing is still sitting in a CM repository somewhere. Nobody used it,
because Java wasn’t on the “approved list”. If I had written it in C, I
would have been a hero. Ah, well.
That’s the only Java code I ever wrote, but the language still appeals
to me as a language. What I haven’t endured is all of the frameworks,
APIs, XML, etc. that have “evolved” around Java.
–
M. Edward (Ed) Borasky
http://ruby-perspectives.blogspot.com/
“A mathematician is a machine for turning coffee into theorems.” –
Alfréd Rényi via Paul Erdős