-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi!
| Languages are not commodities. They differ substantially. For example:
| compare Java to Ruby.
Oh, I agree with you. They are very different.
| Ruby culture says: keep it simple, keep it short, keep away from XML.
This XML stuff is weird. Seems that a lot of people have a bad idea about
it because of the *huge* XML files a lot of Java stuff needs. I agree that
there's a lot of mess around there, a lot of no necessary complexity, but
this kind of generalization is not healthy.
I know YAML is very, very more simple than XML, but XML is helping us to
make the web more well-designed and with more semantics.
Try to give a look on XML with XSLT, it can make some cool stuff.
| Java culture says: make it complex, make it long, and there's no such
| thing as too little XML. Java programmers would deny having those as
| goals in themselves. But I think they like those properties.
I don't think ALL that *programmers that use Java* think this way. Another
generalization here.
I think we can talk about *people that uses languages*, and not *people
that are used by languages*. There's a lot of missing points about that on
the hype created with, let's say, the Java hype these days, the C# hype.
A lot of people learn how to do things the hard way. Some dudes learn that
to make a simple query on a database they need to install Hibernate, to
"keep the OO pure concept", for Christ sake. And some are lazy, ok.
This is not a fault from the language, but from where people are learning
things, the way people are learning things.
Even if people comes to Ruby, they could start to find how to find huge
things there also (and can make a mess, do you have some doubt about
that?), because it's the way *they think they need do things*, not the
language they're using. The concept of a text editor and a compiler is far
away from their ideas.
And, I know, talking just about the languages, Java is *very* heavier than
Ruby. This is a clear point.
| I used to be a Java programmer. I used to like that stuff. Some
| perverse part of me still does. There's something strangely appealing
| about a behemoth. Like the U.S.S. Enterprise.
Thanks God I never used J2EE or EJB's and never tempted by it.
| I wouldn't hire myself as I were back then.
You could hire yourself and give you some cool tips about programming.
| Your preferred language says a lot about your personality. I don't want
| Java personalities on my team. In case I'm not offending enough
| demographics: I don't want C++, C#, or Windows personalities, either.
Seems you see them like demons or something like that.
This take us back from the original point here: about people and languages.
I think, sorry if I offend you, that if you have a chance to have a *really
good* Java/C++/C# programmer in your team, and you know that the guy loves
his work, likes to study, is creative, smart, and you refuses to hire him
and hire a guy that started yesterday using Ruby or Python or whatever,
you're doing a foolish thing.
A good Java/C++/C# programmer can *learn* things (agreeding or not) and
*teach and discuss* things (some contestation and brainstorming is good!) a
lot better than somebody that thinks that is a programmer just because is
using a cool language.
I'd like to have a *very good* Visual Basic (ouch!) programmer on my team,
if he's interested on solving problems with the tools we use, than hiring a
stupid kid just because he comes here and say "yo, bro, I use Ruby, I'm
fucking smart, let me work for ya".
The problem here is the creative mind and the being able learn and create
cool things.
| I can imagine finding myself in a situation where Java, C++, C#, or even
| Window would be the best solution. I wouldn't hire anyone who doesn't
| realize that. But I'd be suspicious if he used that stuff in his free
| time.
Wow, man, you need to buy some crosses and nails. And some gasoline too
(fire works better with it). You can do not allow people think different on
their works (it's ok if you're their boss) but will watch them on their
free time also? Did you heard about freedom? About learning about other
things (good or bad, your point)?
This way a lot of people that comes to Linux from Windows we'll be screwed
(I'm one of those guys). People will not having a chance to trying
something different (good or bad).
Apple was trying to make that with their employees, I don't know that
happens, but they were trying to stop people of developing free software on
their free time.
But thinking here ... some cell phones nowadays have some JVMs there. What
will be your solution for that? Ruby is not running there, Python is on
some Nokias, but if your boss tell you "hey, we need to make some apps
there", what will be the best solution?
This will not lead you to hell, anyways. You can stay a little angry to
have to use that, but, *the situation needs a solution*. You can give it or
not. It's your choice, but the situation is there.
| P.S. It seems like there are some undercurrents of simplicity in the
| Java culture. If you're a part of that, you'll know to ignore my
| ramblings. But by god, find yourself a better language.
Well, I don't know who told you I use Java (just J2SE, not J2EE, as I know
and use Python, Ruby and oh, PHP, burn me in hell!
, but I like trying
to make the simple things on all stuff I do. If it becomes bigger in some
places than the others, it's a kind of language and enviroment context.
And, yeah, I know some other languages also. I think I can find ways to
make each one better on some situations, I thank you for your advice, but
don't worry so much about these kind of things. It's not the end of the
world, as we know it. ;-)
- ----------------------------
Eustáquio "TaQ" Rangel
(e-mail address removed)
http://beam.to/taq
Usuário GNU/Linux no. 224050
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)
Comment: Using GnuPG with Thunderbird -
http://enigmail.mozdev.org
iD8DBQFB2/zEb6UiZnhJiLsRAhMAAKCSrp7LY+riboR/vrHfH7RqcKTgBgCfbitb
d1wJhOZXFyUccJKj8P4xl/M=
=PGss
-----END PGP SIGNATURE-----