
What language has the quickest payback? - biznerd
I&#x27;ve tried numerous times to pick up programming in my free time. I&#x27;m not dumb (actually smart when it comes to SAT tests) but I&#x27;ve always failed.<p>Looking back, I think what hurts me is the feedback loop. To get a job in programming would take 6 months+ of hard work. Sitting by the computer every night vs spending time on a hobby eventually becomes a hard decision. This is especially true when the coding becomes more tedious and I must reach out for help.<p>This time around I plan on hiring a tutor. Also I think it would be good to link it to easy odesk&#x2F;freelance work. I plan on moving to a 3rd world country in two years, so its not unreasonable to assume that if I do good work it could provide a decent standard of living.<p>I&#x27;m more money-oriented than many people seem here (I don&#x27;t have some cool side project I&#x27;ve been dying to build). I think it would be good to use odesk&#x2F;freelancer as a motivator because:
1) Forced deadlines. I have several abandoned programming projects
2) Pay. This amounts to beer money in the States but it would help as I&#x27;m a student. But also for the potential to live abroad in the future.<p>Which is the best language or framework for this? PHP? Cakephp? I&#x27;m guessing something like wordpress or joomla, but could be wrong.<p>Again, the greatest threat of this is me spending a month reading a coding book, starting a side project and never finishing it before becoming proficient.
======
saluki
Don't read a coding book . . . you need to work through the examples and code
along with the book.

I recommend starting with (this is the same advice I usually give everyone
just getting their feet wet):

Head First HTML and CSS

Work along with it using Sublime Text (editor) and MAMP or WAMP (OSX or
Windows, I recommend using a mac if possible).

After working through part of that book. Buy a domain and a hostgator account
learn about DNS, point your A record to your hostgator account and start
FTP'ing (Filezilla client) up a website to your hosting, view on your domain.

Once you complete that book, learn some javascript/jQuery, there are head
first books for those too, but I think you can learn this from the web.

teamtreehouse.com is a great place to learn.

Next back to Head First PHP and MySQL. Work through that book, working locally
and on your hosting account.

I would stay away from odesk now upwork and try find local clients first or
connect with friends/clients online (craigslist and twitter are better than
upwork), better pay, less headaches.

Once you have some PHP and MySQL knowledge next I'd recommend Wordpress. There
is a head first book for that too.

Install wordpress on MAMP/WAMP locally and on your hosting account. Install
some free themes and free plugins. Modify a theme, make some posts.

Wordpress is a popular ecosystem and there is lots of work there.

Leveling up beyond the items above is creating web applications.

You can create a simple one from scratch using PHP and MySQL this is a good
way to learn the inner workings of an app from scratch. Once you explore that
for an app or two you can move on to a framework.

For frameworks I would go with Laravel (PHP) and/or Rails (Ruby) those are the
most popular in each language.

LaraCasts.com is a great resource.

Good luck.

------
jfaucett
The easiest way has to be PHP + Wordpress if you just want to get your foot in
the door as a web programmer. There is tons of work (albeit much of it low
paid) for this skill set. So if you just want to get started earning money go
with PHP. Ruby and Rails, Python, or the JVM langs provide great programming
environments but you will need to invest more time up front, and there are far
less jobs on the market for a complete junior / newbie.

PHP was essentially the route I took way back in High School and started
earning money with it, learning sql, javascript, html/css along the way on an
as needed basis. Now Im a software engineer who has built projects in a half
dozen programming languages, still I think PHP is a really good way to get
into the field, at least it worked for me.

Good luck

------
monroepe
Ruby on Rails is always a good choice. Ruby is a pretty readable language and
has a pretty good community (so solutions to your issues will be more abundant
than with some other languages/frameworks). Also not that hard to get started
and make something decent.

~~~
gt565k
I second this.

Ruby is a great language, because it was designed with developer productivity
in mind. Same goes for Rails. The most feature complete framework I've seen to
date. Django is up there too.

~~~
zippy786
Ruby/Rails might be great. Not so sure if it is the easiest way to earn. A
bloated opinionated framework will be difficult for new comers to grasp. PHP
would be the easiest.

~~~
mod
I mostly agree with this for a pure beginner, however learning rails makes you
pretty hireable, which is OP's goal.

Still, there's so much magic happening that it'll be hard to get a grasp on
things.

------
husseiny
If your goal is to make money and don't want to spend the effort and time to
really learn coding I would focus on simple web presence development versus
"coding".

What I mean by that is learning to code takes a lot of patience and diligence.
For you to truly add value to a team building a product you will need to learn
best practices, theories, tools, Git, code structure, code style, etc.

If you want a quicker path, practice launching and customizing
Wordpress/Wix/SquareSpace sites and focus your efforts on people looking for a
web presence instead of people trying to build apps and products. That should
be an easier path for you.

------
CyberFonic
Passing tests is not a good indicator for programming aptitude.

I don't think you'll do well at freelancing unless you have some useful
skills. Getting paid to learn is unlikely to work out well.

Python is one of the easiest languages to learn and you can be very productive
with it relatively quickly.

Javascript is quite a bit harder, but more widely used.

If you are really money focused (your handle is "BizNerd" so take looks like a
hint) why are you looking at programming? Sales is very much in demand and a
good sales person earns heaps more than an average programmer (which takes at
least a year or two of dedicated work to reach).

------
sharemywin
you should take a programming class at a local community college. Next go to
the job boards and search on the various languages and see how many jobs.
Also, if you switch to computer science as a major you can look at co-ops or
internships.

------
zhte415
Developing is problem solving. You mention you don't have a cool project
you're dying to build, so when learning, re-invent the wheel a little bit (a
lot of learning development is done like this) and reinvent a wheel. A
blogging engine, a framework for whatever.

I'd be apprehensive on undertaking previously undertaken work on places like
odesk/freelancer as the problems solved there are often carbon copies of what
a freelance developer has done before. It's not a learning platform, it is a
platform for frustration and complaint from you're customer you've promised
something to.

Why not try Udacity? They have some great introductory stuff, suitably
technical, and if you need a tutor running into a problem, post on odesk etc
for a Skype tutor for an hour. You will get a reply.

I don't know where you're moving to, but as being 'money orientated' you'll
may find far greater financial reward not pursuing programming but pursuing
business and cultural differences and using fluency in what's possible in IT
(i.e. both a cultural and technical project manager) for financial gain.

------
osullivj
Others have said Python or Ruby, and I'd agree. Other mainstream languages
like Java, C# or JavaScript have a steeper learning curve. With JavaScript you
have to deal with all the CSS & HTML stuff too if you're doing front end dev.
As a longtime Pythonista I's say give the Tornado web framework a try. Unlike
Django, you're not compelled to use a DB.

~~~
collyw
You could do Django without a DB, but the framework kind of assumes you will
have one.

------
Ch_livecodingtv
The bad news is it's probably not just one. The most popular languages to
learn are Ruby, Python, JavaScript,Java, HTML, CSS, PHP, C/C++, .Net. They
maybe are the ones you should learn to make money today. You have to determine
whether you may be interested in mobile apps, gaming, client or server type of
programming etc. and base you skill from this. Btw, if you want to consider
hiring a tutor. You might also want to visit this site where there are live
streamers where you can learn code in languages you can choose.
[https://www.livecoding.tv/video/new-project-with-ruby-on-
rai...](https://www.livecoding.tv/video/new-project-with-ruby-on-rails-4-10/)

------
Mimick
If you are focusing on oDesk/freelance it's easy to say you need to learn PHP,
Ruby on Rails is easier as others said but you won't get a lot of projects
with it. More likely to get a job with it.

------
veddox
Why do you want to learn programming in the first place? Why not make money
with something else? Learning programming is hard work and takes a long time,
even for those who love it.

I would recommend you look around for distance-learning courses on other skill
sets that interest you more and doing those instead of trying to force your
way into programming. Of course you _can_ learn programming even if you don't
enjoy it at all, but I think the only way to be really good at _anything_ is
to love doing it enough to put in your 10,000 hours...

------
anon5_
The obvious answer is Haskell.

It is the only logical language that exists. Anyone who doesn't know it just
hurting themselves.

After you master functional programming, you will be able to use it in EVERY
other language.

You can even program ruby on rails functionally.

If anyway says anything negative about functional programming - they're just
not dedicated or intelligent enough to understand its' abstract concepts.

In a world filled with hurt feelings and thin skin - finally seeing the
_logical essence_ of code is a transcendent experience.

~~~
veddox
That has got to be a troll post. Nonetheless, on the danger of starting a
flame war, here is a brief answer:

No, Haskell is not the _obvious_ _language_. Though no doubt a very nice
language, it is nowhere near the top of the most commonly used languages.
Thus, it's money-making potential (in terms of available jobs) is pretty low -
which seems to be the main factor the OP is interested in.

As for functional programming: much as I love it, it is not the non-plus-ultra
answer to life, the universe and everything. And even if it were, there are
other languages that are also functional; all the various Lisp dialects to
start with.

And by the way, please refrain from personal attacks on HN.

------
VOYD
you clearly don't have what it takes.

