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.

China's "artificial sun" sets new record for fusion power

China has reached a new record for nuclear fusion at 120 million degrees Celsius.

Credit: STR via Getty Images
Technology & Innovation

This article was originally published on our sister site, Freethink.

China wants to build a mini-star on Earth and house it in a reactor. Many teams across the globe have this same bold goal --- which would create unlimited clean energy via nuclear fusion.

But according to Chinese state media, New Atlas reports, the team at the Experimental Advanced Superconducting Tokamak (EAST) has set a new world record: temperatures of 120 million degrees Celsius for 101 seconds.

Yeah, that's hot. So what? Nuclear fusion reactions require an insane amount of heat and pressure --- a temperature environment similar to the sun, which is approximately 150 million degrees C.

If scientists can essentially build a sun on Earth, they can create endless energy by mimicking how the sun does it.

If scientists can essentially build a sun on Earth, they can create endless energy by mimicking how the sun does it. In nuclear fusion, the extreme heat and pressure create a plasma. Then, within that plasma, two or more hydrogen nuclei crash together, merge into a heavier atom, and release a ton of energy in the process.

Nuclear fusion milestones: The team at EAST built a giant metal torus (similar in shape to a giant donut) with a series of magnetic coils. The coils hold hot plasma where the reactions occur. They've reached many milestones along the way.

According to New Atlas, in 2016, the scientists at EAST could heat hydrogen plasma to roughly 50 million degrees C for 102 seconds. Two years later, they reached 100 million degrees for 10 seconds.

The temperatures are impressive, but the short reaction times, and lack of pressure are another obstacle. Fusion is simple for the sun, because stars are massive and gravity provides even pressure all over the surface. The pressure squeezes hydrogen gas in the sun's core so immensely that several nuclei combine to form one atom, releasing energy.

But on Earth, we have to supply all of the pressure to keep the reaction going, and it has to be perfectly even. It's hard to do this for any length of time, and it uses a ton of energy. So the reactions usually fizzle out in minutes or seconds.

Still, the latest record of 120 million degrees and 101 seconds is one more step toward sustaining longer and hotter reactions.

Why does this matter? No one denies that humankind needs a clean, unlimited source of energy.

We all recognize that oil and gas are limited resources. But even wind and solar power --- renewable energies --- are fundamentally limited. They are dependent upon a breezy day or a cloudless sky, which we can't always count on.

Nuclear fusion is clean, safe, and environmentally sustainable --- its fuel is a nearly limitless resource since it is simply hydrogen (which can be easily made from water).

With each new milestone, we are creeping closer and closer to a breakthrough for unlimited, clean energy.

The science of sex, love, attraction, and obsession

The symbol for love is the heart, but the brain may be more accurate.

Videos
  • How love makes us feel can only be defined on an individual basis, but what it does to the body, specifically the brain, is now less abstract thanks to science.
  • One of the problems with early-stage attraction, according to anthropologist Helen Fisher, is that it activates parts of the brain that are linked to drive, craving, obsession, and motivation, while other regions that deal with decision-making shut down.
  • Dr. Fisher, professor Ted Fischer, and psychiatrist Gail Saltz explain the different types of love, explore the neuroscience of love and attraction, and share tips for sustaining relationships that are healthy and mutually beneficial.

Golden blood: The rarest blood in the world

We explore the history of blood types and how they are classified to find out what makes the Rh-null type important to science and dangerous for those who live with it.

Abid Katib/Getty Images
Surprising Science
  • Fewer than 50 people worldwide have 'golden blood' — or Rh-null.
  • Blood is considered Rh-null if it lacks all of the 61 possible antigens in the Rh system.
  • It's also very dangerous to live with this blood type, as so few people have it.
Keep reading Show less

There never was a male fertility crisis

A new study suggests that reports of the impending infertility of the human male are greatly exaggerated.

Sex & Relationships
  • A new review of a famous study on declining sperm counts finds several flaws.
  • The old report makes unfounded assumptions, has faulty data, and tends toward panic.
  • The new report does not rule out that sperm counts are going down, only that this could be quite normal.
Keep reading Show less
Quantcast