topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Friday April 19, 2024, 11:09 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Author Topic: Endless Projects - Dr. Dobbs article  (Read 3947 times)

phitsc

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 1,198
    • View Profile
    • Donate to Member
Endless Projects - Dr. Dobbs article
« on: May 05, 2011, 02:53 AM »
I read this article on Dr. Dobbs yesterday and was asking myself: does the programming language really make such a big difference on productivity.

Obviously, the availability of libraries makes a big difference on productivity. I also think that some programming languages are much better suited for certain tasks than others (e.g. systems programming vs. web stuff). But for something like a desktop GUI application, why would I be 10 times more productive with Ruby than with Java or C#, or even with C++ using a decent GUI toolkit for that matter?

Renegade

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13,288
  • Tell me something you don't know...
    • View Profile
    • Renegade Minds
    • Donate to Member
Re: Endless Projects - Dr. Dobbs article
« Reply #1 on: May 05, 2011, 03:15 AM »
I read this article on Dr. Dobbs yesterday and was asking myself: does the programming language really make such a big difference on productivity.

Obviously, the availability of libraries makes a big difference on productivity. I also think that some programming languages are much better suited for certain tasks than others (e.g. systems programming vs. web stuff). But for something like a desktop GUI application, why would I be 10 times more productive with Ruby than with Java or C#, or even with C++ using a decent GUI toolkit for that matter?

This is what I think is some of the brilliance in .NET -- a complete framework where you are free to work in any language you want.

I think the greatest factor in productivity is "what you know", then language after that, contingent on the task. e.g. Not assembler for UI, and not JavaScript for DSP, etc.

I've not bothered to learn Ruby, but I'd like to know if it really is all that great. I guess I should look at Iron Ruby sometime.

Obviously, the availability of libraries makes a big difference on productivity.

I'm all for buy rather than build. Why spend 6 months or a year to become an expert when you can spend $100, or whatever, and get all that expert work done for you instantly? Doesn't make sense to me.

I'd like to know if there's something faster than what I'm doing now...
Slow Down Music - Where I commit thought crimes...

Freedom is the right to be wrong, not the right to do wrong. - John Diefenbaker

40hz

  • Supporting Member
  • Joined in 2007
  • **
  • Posts: 11,858
    • View Profile
    • Donate to Member
Re: Endless Projects - Dr. Dobbs article
« Reply #2 on: May 05, 2011, 03:46 AM »
I've not bothered to learn Ruby, but I'd like to know if it really is all that great. I guess I should look at Iron Ruby sometime.

@Ren - Might want to PM f0dder about that. He was working on a Ruby project not too long ago.

« Last Edit: May 05, 2011, 03:49 AM by 40hz »

iphigenie

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,170
    • View Profile
    • Donate to Member
Re: Endless Projects - Dr. Dobbs article
« Reply #3 on: May 05, 2011, 04:23 AM »
To me there is no big difference for small projects - as long as there are good libraries to match the problem domain and the general abstraction model.

And as others have said, the first time you encounter a language with a good ecosystem and a great IDE it makes a hue difference :)

The right abstraction model (oo, functional, aspect oriented etc.) that matches how you think and solve problems can make a  big difference. I can totally believe that there would be a language that makes really good programmers (the ones already 10 times more productive than average) more productive by another factor 10

For larger projects, or longer in time, i think it can matter even more - but there is often a tradeoff

- some languages make it easier to translate the thinking into code the first time, they flow easier for you - this is often familiarity as much as anything, but it counts
- some languages make it easier to extend, refactor, debug over time (and some languages make it easier to be correct and consistent and error free up front)
- some languages make it easier to develop with a team and with other functions (UX, BA), with easy separation of concern, domain model, assets etc.
- some languages make it easier to manage and deploy and monitor
- some languages make it easier to measure, document and communicate the system... it can go on

trick is, at the moment based on my experience over years, they are not the same languages, especially in a team setting - and sometimes it's a tough tradeoff

Renegade

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 13,288
  • Tell me something you don't know...
    • View Profile
    • Renegade Minds
    • Donate to Member
Re: Endless Projects - Dr. Dobbs article
« Reply #4 on: May 05, 2011, 05:11 AM »
@iphigenie - Some very good points there. Especially about working in teams.
Slow Down Music - Where I commit thought crimes...

Freedom is the right to be wrong, not the right to do wrong. - John Diefenbaker