From: Premshree Pillai Date: 2005-01-05T23:56:54+09:00 Subject: Re: Ruby JOBS all around the world On Wed, 5 Jan 2005 23:42:22 +0900, Eustaquio Rangel de Oliveira Jr. wrote: > -----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? Heh, right you are. The kind of domain determines which languages can be used. And various other factors -- programmer availability, language knowledge, language support, and possibly a gazillion other things -- determine which language is finally chosen. I have been working in a startup where I have relative independence regarding the language use. And I work on the web domain (generic, maybe, but you get it, right?), so I've been using Ruby and Python at work. However, I have no option but use other languages (for certain tasks requiring more than two people) -- PHP, for instance (which I _hate_, btw) -- because my colleagues don't know Ruby/Python. Moreover, it's easier to find PHP programmers and all that jazz. > > 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 > eustaquiorangel@yahoo.com > 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----- > > -- Premshree Pillai http://www.livejournal.com/~premshree