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
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:
- How do you pause a program until a button is pressed in JAVA?Best solution by Stack Overflow
- How to write a parser in C?Best solution by Stack Overflow
- How to split a string in C++?Best solution by Stack Overflow
- How to get actual return type of a generic static method in Java?Best solution by stackoverflow.com
- how to call methods from a dll from c++?Best solution by Stack Overflow
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
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.