Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask YC: Programming language survey
2 points by rafa8a on Oct 8, 2007 | hide | past | favorite | 4 comments
I have the following questions related to an application me and my team have to develop for a chain of supermarkets, for a school subject.

The situation is the following: we are very fluent in developing applications with PHP, but our teacher wants us to develop it in a different language.

The amount of time we have to finish the app, is 2 months approximately.

So my questions are related towards knowing if its feasible, to learn a new language in order to develop a system.

The questions:

1.- Which is the minimum time to learn a new language?

2.- Having learned the language, how much experience is necessary to make a system for a client?

3.- If you know how to use a certain language, and that language is suitable to make an app, do you recommend to learn a new one, or to develop it with the language you already know?

Thanks!



1.- A couple of seconds. But that's for an esoteric language that was a trivial modification of another esoteric language :-). As for how long it takes you, it depends on how smart you are, what your definition of "learning a language" is, what languages you know and how strangely you've used them, and what language you're learning. It takes more effort to learn the language's libraries than the "language", except for really unusual languages.

2.- It depends on what experience you have and how translatable that experience is to the current project.

3.- It depends on whether that language is PHP ^_^

So, to summarize: It depends.

Edit: actually, just read what brlewis said, which is a more useful response for your situation (given certain assumptions about how fluent you are).


1. Unless you're switching programming paradigms, learning a new language is trivial if you have a copy of the API to reference. It's all just syntax and libraries at that point.

2. Do it when you're comfortable with the language.

3. Why would you learn a new language if the one you're familiar with is the right tool for the job? I can only assume you're looking to pick up Ruby on Rails or Django instead of PHP. From my experience, Rails development is orders of magnitude faster than PHP if you're using it for the right project.


1. Two days.

2. Two days. (You'll learn as you go along.)

3. All other things being equal, use the language you already know. If things are unequal all bets are off.


"If things are unequal all bets are off"

Well said, and agreed. Actually, I completely agree with brlewis. "Learning" a language is a hard metric to measure. Accordingly, give a language/framework (if you are already familiar with the language) a couple of days, write a small app in it, and the rest, you will learn as you go.

IMO, in most cases, "learning" is merely trying to figure out how you would solve a problem within the scope of your selected toolset. The involves foreseeing what you will encounter down the road, which in a lot of cases is hard, if not downright impossible. Most books/tutorials (atleast the beginner ones) don't touch the boundary cases, so there's only that much value in them. That's not to say that you should drop every reference book on your shelf right now, but that don't spend a lot of time trying to master every detail before getting your feet wet.

Oh, and Good luck...!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: