Self-Motivation
David Goggins
Former Navy Seal
Career Development
Bryan Cranston
Actor
Critical Thinking
Liv Boeree
International Poker Champion
Emotional Intelligence
Amaryllis Fox
Former CIA Clandestine Operative
Management
Chris Hadfield
Retired Canadian Astronaut & Author
Learn
from the world's big
thinkers
Start Learning

5 Programming Languages Everyone Should Know

Programmer Larry Page offers language suggestions to amateur programmers who might not know exactly where to start.

Question: What are the five programming languages everyone, even non-programmers, should know about and why?

Larry Wall:  Oh, boy, that's a really tough question.  It's kind of like asking what are the five countries you should know about if you're not interested in geology, or geography, or politics, and the answer varies depending on what your actual interests are, or what are the five companies you should know.  And the answer changes over time, too.  Back when I was getting started, lo these many decades ago, the answers would've been Fortran, Cobalt, Basic, Lisp, and maybe APL, and those were very formative languages back then and people learned a lot from those, but these days, it might be more important for you to know JavaScript, even if the only reason you know that is that you know whether or not to click the "enable JavaScript" button in your browser.  But JavaScript is a nice, lightweight, object-oriented language and that's why it can fit in a browser and do these things such as run little programs that help you input your data and then send it off to a web server somewhere.

There are heavier-weight object-oriented languages and the elephant in the room is sort of Java, you can't really make a list of modern languages without talking about it.  Java is sort of the Cobalt of the 21st century, I think. It's kind of heavyweight, verbose, and everyone loves to hate it, though not everyone will admit that.  But managers kind of like it because it looks like you're getting a lot done, you know, if 100 lines of Java code accomplish a task, then it looks like you've written 100 lines, even though in a different language, it might only take 5 lines.  You know, it's like, you know, you can eat a 1-pound steak or you can eat, you know, 100 pounds of shoe leather and you feel a greater sense of accomplishment after the shoe leather, but, you know, maybe they're some downsides.

But it also, because it is sort of considered an industrial language and programmers are sort of interchangeable parts, managers like it for that reason, and for that reason, a lot of Java jobs have been outsourced from the United States.

Oh, what other languages?  I think going in a different direction, coming more from academia, we have a language like Haskell, which we call a functional programming language. That means function in a mathematical sense, not in the sense the other languages are dysfunctional.  But a function mathematically has an input and an output and it maps to, you know, with a great deal of mathematical certainty what those are.  Haskell is one of those languages that mathematician-type-minded people love; it's sort of a language for geniuses, by geniuses.  So you should probably know about it, if only to be able to say, "Well, is this kind of like Haskell?"  And if so, then you know you have to hire some really smart people to program in it.  Haskell is sort of a modern kind of Lisp in that sense.

What else?  Well, we can't leave off modern languages without talking about C.  The C language, that’s just spelled with the letter C, is actually about 40 years old, but people have tried to replace C with other languages that are like it and have by and large not succeeded because C is a very minimalistic language and very close to the metal, as we say, on a machine, and lets you get down and do very fine grain stuff, very efficiently, but it's a lot of hard work.  But once you've done that work, you can run it pretty much everywhere.  So almost all the other languages that you see, Java, Perl, whatever, actually if you look down underneath, they're actually implemented in C, or in a closely related language.  So that continues to be a very fundamental language, if only because everyone is trying to reinvent it and not succeeding in doing so.

And finally, for a fifth language, well, you'd probably want to pick one of the scripting languages.  There's several to choose from, there's Python, there's Ruby, but of course, I am prejudiced in favor of Perl, because I think it has the liveliest community and because we have intentionally been redesigning it lately to leapfrog all the other languages. For the last number of years, we've been redesigning it to out all the warts that we've noticed over time.  And we figured it was just our one chance to break backward compatibility, break the things that need breaking, keep all the things that make Perl, Perl, keep it a joy to use, and with this redesign, make it a language that will be able to be useful and enjoyable for decades.  And so I'd recommend Perl, but I'm known to be prejudiced in the matter. 

Java is "heavyweight, verbose, and everyone loves to hate it," but programmer Larry Wall still thinks you should know it. In this video, he offers suggestions for people interested in learning languages, as well as suggestions for those significantly less invested in computer programming.

LIVE TOMORROW | Jordan Klepper: Comedians vs. the apocalypse

Join The Daily Show comedian Jordan Klepper and elite improviser Bob Kulhan live at 1 pm ET on Tuesday, July 14!

Big Think LIVE

Add event to calendar

AppleGoogleOffice 365OutlookOutlook.comYahoo

Keep reading Show less

LGBTQ+ community sees spike in first-time depression in wake of coronavirus​

Gender and sexual minority populations are experiencing rising anxiety and depression rates during the pandemic.

Photo by Chip Somodevilla/Getty Images
Coronavirus
  • Anxiety and depression rates are spiking in the LGBTQ+ community, and especially in individuals who hadn't struggled with those issues in the past.
  • Overall, depression increased by an average PHQ-9 score of 1.21 and anxiety increased by an average GAD-7 score of 3.11.
  • The researchers recommended that health care providers check in with LGBTQ+ patients about stress and screen for mood and anxiety disorders—even among those with no prior history of anxiety or depression.
Keep reading Show less

The mind-blowing science of black holes

What we know about black holes is both fascinating and scary.

Videos
  • When it comes to black holes, science simultaneously knows so much and so little, which is why they are so fascinating. Focusing on what we do know, this group of astronomers, educators, and physicists share some of the most incredible facts about the powerful and mysterious objects.
  • A black hole is so massive that light (and anything else it swallows) can't escape, says Bill Nye. You can't see a black hole, theoretical physicists Michio Kaku and Christophe Galfard explain, because it is too dark. What you can see, however, is the distortion of light around it caused by its extreme gravity.
  • Explaining one unsettling concept from astrophysics called spaghettification, astronomer Michelle Thaller says that "If you got close to a black hole there would be tides over your body that small that would rip you apart into basically a strand of spaghetti that would fall down the black hole."

Scientists see 'rarest event ever recorded' in search for dark matter

The team caught a glimpse of a process that takes 18,000,000,000,000,000,000,000 years.

Image source: Pixabay
Surprising Science
  • In Italy, a team of scientists is using a highly sophisticated detector to hunt for dark matter.
  • The team observed an ultra-rare particle interaction that reveals the half-life of a xenon-124 atom to be 18 sextillion years.
  • The half-life of a process is how long it takes for half of the radioactive nuclei present in a sample to decay.
Keep reading Show less

Space travel could create language unintelligible to people on Earth

A new study looks at what would happen to human language on a long journey to other star systems.

Credit: NASA Ames Research Center.
Surprising Science
  • A new study proposes that language could change dramatically on long space voyages.
  • Spacefaring people might lose the ability to understand the people of Earth.
  • This scenario is of particular concern for potential "generation ships".
Keep reading Show less
Quantcast