Você está na página 1de 10

Which programming language is best to learn fi...

About

http://opensource.com/life/15/3/which-progr...

17/03/2015 06:34

Resources Community Participate Submit your story Editorial calendar The open source way
Log in Sign Up

Which programming language is best for


beginners?
Posted 10 Mar 2015 by (/users/admin)Opensource.com
Feed

(/users/admin) (Red Hat)


Rating:

(/user/1/feed)

(5 votes)

Image by : opensource.com

99

(http://reddit.com/submit?url=http%3A%2F

%2Fopensource.com%2Flife%2F15%2F3%2Fwhich-programminglanguage-best-beginners&title=Which programming language is best for


beginners?)

419

StumbleUpon
C/C++
JavaScript
Python
Ruby
Go
Rust
Other
Vote

29

Which programming language is best to learn fi...

Part of being a good open source citizen

http://opensource.com/life/15/3/which-progr...

17/03/2015 06:34

(/life/15/3/how-make-meaningful-

contributions-open-source) is contributing to the projects and programs you use and care
about mostand learning how to code can be a big part of that. But with so many programming
languages out there, picking the right entry point into coding can be a challenge.
That's why we want you, our readers, to share your thoughts. Should new coders start with an
"old reliable" language like C, or something lighter and perhaps easier to learn, like Javascript or
Python? Let us know what you think in our poll, and be sure to join the discussion in the
comments section below.

14561 reads

(http://reddit.com/submit?url=http%3A%2F

99

%2Fopensource.com%2Flife%2F15%2F3%2Fwhich-programminglanguage-best-beginners&title=Which programming language is best for


beginners?)

419

29

StumbleUpon

20 Comments

Starters on 10 Mar 2015


HTML / CSS with some javascript to go in to your HTML.

(/points-and-badges)
Don Watkins (/users/don-watkins) on 10 Mar 2015
(/points-and-badges)
2015

Conversation Starter Award

(/points-and-badges)

and-badges)

Social Sharer Award 2014

(/points(/points-

and-badges)
What about Scratch as a choice? Lots of good reasons for that to be included.

George Holmes on 10 Mar 2015


As with ANY question about "beginning" something, it's so dependent on the kind of learner

Which programming language is best to learn fi...

http://opensource.com/life/15/3/which-progr...

17/03/2015 06:34

someone is, what sort of goals they might have with learning to program (a hobby? a real
project? a new job duty? a career change?, etc.). I think any language that has a gentle
introduction, is interactive, and offers immediate results would be my choice. The learner
would get hooked sooner, and be ready for greater challenges. So, for me scripting
languages with graphical output are the way to go. Therefore, Python (maybe a
Javascript/HTML wrapper of some sort) is a better choice.

Ron Aaron on 10 Mar 2015


It depends entirely on what your purpose is in learning a language. Do you want to expand
your mind? Get a job as a developer (and if so, what kind)? Program home-built devices? If
you are interested in writing applications for multiple platforms, may I suggest "8th" (I'm its
creator: 8th-dev.com)? If you want to write "web-apps" then HTML+CSS+JS is the easiest
path to that at present.

John56 on 10 Mar 2015


Perl no longer qualifies as a top language? Has it really come to this?

parentelaf on 10 Mar 2015


I have no doubts! If you get into serious programming you will have to learn C!!!

Baz on 10 Mar 2015


C++, only because C is difficult, and it also offers OOP (in case you wanted to get into the
gaming industry). Once you have learnt a programming language, most other languages
would become very easy to learn though.

Which programming language is best to learn fi...

http://opensource.com/life/15/3/which-progr...

17/03/2015 06:34

(/points-and-badges)
(/users/coryhilliard) on 10 Mar 2015

Cory Hilliard

(/points-and-badges)
C because everything else including C++ is based on it in some way or another. C allows you
to learn the basics of memory types, structure, loops, decisions without all the confusion of
OOP. Once you learn C solidly, and can think as a programmer, THEN introduce OOP
concepts. I learned Java first, but never really LOVED programming until I learned C.

lupus Furyo on 10 Mar 2015


I was first taught to C (1985) then C++ (1993), but all in vain. Even if I could code using
them, I did not really enjoy programming. Then Java was out and I really fall in love with
programming. But this story should not be a surprise, Universities and Colleges in in the
US soon switched from teaching C/C++ to Java. So, had changed the AP Computer
Science Exam https://apstudent.collegeboard.org/apcourse/ap-computer-sciencea/exam-practice I love Python but do not think switching from Python to C/C++ or C#
.NET would be as easy as from Java to those latter languages similar in syntax. But
today, I would definitely add Java Script, HTML5 as part of any programming curriculum.

John A. Ward on 16 Mar 2015


A relucktant YES only because it is a real language and is taught everywhere and
leaves you with a usable skill when you have finished the course. I use Kylix, and
so I like Pascal as a training language, but the world doesn't, so you must go with
the majority on this one.

(/points-and-badges)

Which programming language is best to learn fi...

Cory Hilliard

http://opensource.com/life/15/3/which-progr...

17/03/2015 06:34

(/users/coryhilliard) on 10 Mar 2015


(/points-and-badges)

It's also important to have a good IDE that is simple and basic that gets out of your way and
just does its job effectively. If you're going to program in C, or C++ I highly recommend
CODE::BLOCKS http://www.codeblocks.org One of the best ways of learning is having a
simple problem to solve and writing a program to do it. There are plenty of sites that will give
you simple walkthroughs and instruction. The more you code, the better you will get. I look
back at some of the first programs I wrote and am like "WHAT THE HECK WAS I THINKING!"
There is nothing like being taught a language though, so if you can go to a class or school to
learn, do it.

AC on 10 Mar 2015
Firstly, use Linux as rthe dev platform, because anything else is sadistic to the kids. Start with
basic shell scripts, then Perl, then C. From there, you can do anything you want to.

Brandon on 11 Mar 2015


I say stick with Java. I love Python and have taught classes in it but Java gives you a good
introduction to programming principles. It's not truly better than C++ when it comes to that but
it's more "reachable" to a beginning programmer. They say you only get the full potential of
Python when you learn it first (thus why MIT and Berkeley teach it before any other language)
but I think it's a lot harder to transition from dynamic to static typing than the other way
around.

Open Sourcerer (/points-and-badges)


Jason Baker (/users/jason-baker) on 11 Mar 2015

(/points-and-badges)
(/points-and-badges)

Best Interview Award 2015

(/points-and-badges)

There are, of course, a number of questions that are worth answering with this question. Do
you have an opportunity to work with a mentor, or to make progress with a project that is
important to you personally or professionally if you go with a particular language? What do

Which programming language is best to learn fi...

http://opensource.com/life/15/3/which-progr...

17/03/2015 06:34

you want to do with your programming skills, and is there a good community around doing
that particular thing with your chosen language? Are libraries and bindings for these tasks
readily available and well supported? I learned QBasic, and then Turbo Pascal, when I was
first getting started (probably disclosing something about my age there, or at least something
about the age of the system I learned to program on). I tried picking up C very early, but for
what I was doing, C didn't offer any advantages in speed or ease or use, so I didn't stick with
it. I wish I had made more of an effort with it, because when I went off to college, classes
generally used Java. If I were starting out today, I'd probably tell the thirteen year old version
of myself to learn Python and/or JavaScript, since these two make up 80% of the small
amount of programming I do these days. Both were available when I was getting started
(being 24 and 20 years old, respectively), but at the time, I had no idea that either would
remain so prominent for so long. The real driver, the shift from desktop applications to the
internet as a platform for application delivery, just wasn't fathomable to a teenage me in the
90s.

evanx on 11 Mar 2015


Javascript is very accessible and fun e.g. instant results in the browser, with browser console,
even drawing using HTML5 canvas. Tools like jsfiddle can be used, so all learners need is
the browser.

Hans Bezemer on 11 Mar 2015


There is nothing wrong with old-fashioned (but structured) Basic to get started, simply
because it illustrates the use of variables, input, output, branching and looping in a
comprehensible, uncluttered way. Much cleaner than others with lots of "noise" like
semi-colons, curly braces, etc. If you REALLY want to know and understand what
programming is all about, take Forth - because you can understand what a Forth compiler
does and how it works. C is much more complex in that regard, hiding its inner working below
layers of abstractions. Certainly don't start with an OO language. The concept itself is
seriously flawed (people who claim otherwise are just playing the parrot) and
incomprehensible to beginners. The inner workings of OO are viciously dirty and inelegant,
so that's no good begin either.

Gary Mayer on 12 Mar 2015


While this conversation is nice to have, what has been provided really can't be used in any
conclusive way--it's all anecdotal at best. Yes, some of this feedback may be useful in some
context but it cannot conclusively be used to determine the best intro language. If you want to
know the best intro language, then you need to conduct experiments--i.e., use the scientific

Which programming language is best to learn fi...

http://opensource.com/life/15/3/which-progr...

17/03/2015 06:34

method. Then, based upon the results you can state what does and does not work in the
context of the experimental environment. While I mean no disrespect to the language
designers or users, Perl has already been shown to not be a very friendly intro language by
researchers such as Andreas Stefik. Java also poses difficulties.

Naren on 15 Mar 2015


Python is the clear winner. People should read the given poll questions. "What is best
programming language for beginners to learn?" . Obviously Python. Java is not there in list.
LOL.

(/points-and-badges)
Eli Cummings (/users/eli-cummings) on 16 Mar 2015
One thing about beginners, they don't know anything else. My first language way back was of
course BASIC. Since I was primarily interested in databases, I learned dBase. This I think is
what is most important, what is it that the a person new to programming is interested in ? I
doubt that those who are interested in programming don't have something in mind that they
want to do. If one is interested in systems programming, C would have to be the go to
language. If one is interested in web site development then Javascript, HTML, CSS etc. is the
logical choice. If one is interested in system administration, learn how to use BASH and then
a scripting language like Python or Perl. If one wants to write desktop type applications or
enterprise applications, Java. If one is interested in databases learn SQL first. Programming
is not an end in itself. It is a method for doing something else. If one is looking at a career in
programming, then the popularity index has something to say about that. C, C++, Java,
Python, Perl. One needs to know a language that has a large installed base because in
nearly all cases one will be doing maintenance and upgrading of existing applications.
Beginning programming is about the primitives: data types, variables, functions, conditional
branching, loops. These are common to all languages. A beginner can start with any
language for these items and once comfortable with them will probably have little difficulty
moving on to the more complex areas regardless of the language. The most important
element is what is the interest of the person ? And not all programming is about the above.
For some people, they can do everything they need to do in a spreadsheet using the various
functions available to them. I remember when there used to be a whole slew of Lotus 123 and
Excel macros floating around because people would use their spreadsheets for everything.
One great thing that is available is the ton of tutorials available for just about everything. Let's
not also forget that after a while, most programmers use libraries, frameworks, IDE's for their
work. Sometimes as in a foreign language, one gets better at reading it than one does at
speaking it which is sort of what happens when other code is used. One may not have been
able to write it but one is able to understand what it does and use it.

Which programming language is best to learn fi...

http://opensource.com/life/15/3/which-progr...

17/03/2015 06:34

Anonymous on 17 Mar 2015


Combining C and C++ into the same entry is a strange choice for a poll like this one. My vote
is for "Other" (Pascal).

Comment now:
Login or Register

(/user?destination[destination]=node/19222) to earn points for

your comments.
Your name

Accept the Terms of Use

(/legal) to continue. You are licensing your contribution(s) as

CC-BY-SA. *
By submitting this form, you accept the Mollom privacy policy

(https://mollom.com

/web-service-privacy-policy).
Save

Preview

Opensource.com is a place where we


share stories about how people
worldwide are discovering an open
source world. See how the principles
of open source software and the open
source way

(http://opensource.com/open-source-way)
are being applied to different disciplines including business,
education, government, health, law, and life. Follow us on
Twitter @opensourceway.

(https://twitter.com

/opensourceway)
More about me

(/users/admin)

Which programming language is best to learn fi...

http://opensource.com/life/15/3/which-progr...

17/03/2015 06:34

(/education/14/12/open-hardware-raspberrypi-A-plus?sc_cid=70160000000c9ptAAA)

Top 5 open source project management tools in 2015

(/business/15/1/top-project-managementtools-2015)
A beginner's guide to GitHub

(/life

/15/2/beginners-guide-github)
Top 3 open source business intelligence and reporting
tools

(/business/14/6/three-open-source-

business-tools)
Top 5 open source customer relationship management
tools

(/business/14/7/top-5-open-source-

crm-tools)
The current state of video editing for Linux

(/life

/15/1/current-state-linux-video-editing)
5 specialized Linux distributions for computer repair

(/life/15/2/five-specialized-linuxdistributions-computer-repair)
What the Ubuntu phone could mean for open source

(/business/15/2/what-ubuntu-phonecould-mean-open-source)
Why now is the time to learn R

(/business/14/12

/r-open-source-language-data-science)
Four Linux distros for kids

(/education

/14/1/teaching-kids-linux)

Which programming language is best to learn fi...

http://opensource.com/life/15/3/which-progr...

17/03/2015 06:34

(/node/17753)

(/node/17733)

(http://twitter.com/opensourceway)
(http://facebook.com/pages/opensourcecom
/162962298056)
(https://plus.google.com
/108750398488318674353)
(http://www.flickr.com/photos
/opensourceway)
(http://www.youtube.com/opensourceway)
(http://pinterest.com/opensourceway/)
(http://www.linkedin.com/groups/OpenSource-Professionals-Advocates2769297?gid=2769297)
(http://opensource.com/feed)

Sign Up