How does Ruby interpreter work?

Is there a reputation that C# and Java is for work while Ruby or Python is for fun? Why?

  • heard this several times online or from colleagues. Many people use  C# or Java at work-related project, but prefers Ruby or Python for fun  or hobby-oriented projects.  For example, in his blog post, https://msmvps.com/blogs/jon_skeet/archive/2009/06/19/os-jam-at-google-london-c-4-and-the-dlr.aspx .. I was still surprised there weren't more people using C# for their   jobs and hacking on Ruby/Python/etc at night. Is there such reputation? If yes, why? What feature in .Net or Java  makes it more attractive for corporate projects (and Ruby/Python less  attractive)? Why is it considered less fun and Ruby/Python more fun?

  • Answer:

    Java and C# are statically typed and force Object Oriented paradigm on programmers. This makes them ideal for run of the mill business applications when developers are average and you want maintainable code as a manager. But this also makes programming in these languages a bit tedious. Good programmers can write awesome and well designed programs in Python/Ruby but most companies don't have bulk of such coders. You will find that companies where the hiring bar is higher (Facebook, Google etc.), i.e. companies trust their employees to write good code, Python/Ruby/etc. are encouraged (unless execution speed is a high priority). On the other hand, when one is developing a personal project, quick development is important. And most probably you don't have to write code that others can easily understand. So scripting languages are encouraged.

Anonymous at Quora Visit the source

Was this solution helpful to you?

Other answers

Not in thoughtful programming circles - the reputation might exist in  pretentious, simple-minded programmers in order to sound intelligent. This really boils down to using scripting languages in a corporate environment - which is, of course, extremely common. A good programmer uses the right tool for the job - sometimes that means a scripting language and sometimes that means a non-scripting language - whether or not it's a hobby project or paid project. The following puts scripting languages up against non-scripting languages in a seemingly objective way: http://page.mi.fu-berlin.de/prechelt/Biblio/jccpprt2_advances2003.pdf

Nicholas Pickering

The perception has formed like that because most corporations either have a Windows or a Linux Environment. Is your company has a Microsoft Stack then it makes sense to use C#. C# (and Visual Studio) has the following things that make it attractive : 1. Static Typing. 2. Intellisense in Visual Studio 3. Huge Developer Community and extensive Documentation. Broad reach across the Microsoft platform: WCF (Windows Communication Foundation) WPF (Windows Presentation Foundation)/Winforms WP (Windows Phone) Windows Store Apps Windows Embedded Microsoft Xbox Reach outside the MS platform: iOS with Xamarin and MonoGame Android with Xamarin and MonoGame Mac with MonoGame Linux with MonoGame Also *most* corporate development jobs involve building Line of Business Applications which Java and C# excel at.

Chandrashekar Venkatraman

-> Java/C# are bulky and overly engineered. These languages add or impart no value to build logic or how to think or design or engineer something. -> The frameworks developed around these languages like J2EE etc are more similar to the tools like draft etc in mechanical engineering. So this means, that java coders are more or less similar to handyman or draft workers, the one who takes order from the designer or engineer, and sets up the thing. But even in the mechanical world, the draft man is a skill person and they know their jobs. This is not the case in the field of IT, adding more pain to the coders. -> Yes, engineering can happen on JAVA/C#, but after the ground or base is clear, ability to think on the problems. But it is very tough to design a compiler in JAVA, as a final year B.TECH project, that takes years and years of toils and hardwork.

Radhakrishna Lambu

Related Q & A:

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.