Getty Images/iStockphoto

Experts rate programming languages for beginners in 2023

Python and JavaScript are two standouts for novices, according to developer experts. But fledgling coders should diversify their toolbox with newer languages too.

Several of the usual suspects are among the programming languages seasoned developers recommend for beginners. But there are some newer options worth considering in 2023.

Python is widely used for its simplicity and versatility in scientific computing, data analysis and artificial intelligence projects, according to tech hiring managers. Python also lends itself to opportunities in a wide range of areas, from web and mobile development to data management and automation. HTML, CSS and JavaScript, meanwhile, are the backbone of web development, allowing for the creation of dynamic and responsive websites.

Coders with experience in the JavaScript library React.js and the JavaScript runtime Node.js are in high demand, said Vanessa Romero, head of talent acquisition at Jobsity, a developer talent company based in New York City.

"Depending on what your goals are, you can find a lot of job opportunities that rely on Python and JavaScript skills," she said.

Giancarlo Hirsch, New York managing director at Glocomms, a tech recruiting agency headquartered in London, echoed Romero. He said Python and JavaScript are the best programming languages for beginners for 2023.

"Taking the time to learn Python or JavaScript is a good way to get yourself into the technology industry and land your first development or engineering opportunity," he said.

Python "is extra dope"

Python is a good programming language choice for beginners because it's a popular language used to wrangle the data fed into machine learning algorithms, which are hot topics in tech.

Python has also been a software development and data analysis mainstay for more than three decades, said Kelsey Hightower, Google Cloud's distinguished engineer.

"Python is extra dope," Hightower tweeted last week. "The fact that Python remains relevant after 30 years says a lot."

Kelsey Hightower's tweet on why Python is a good choice for beginners
Kelsey Hightower tweeted that Python is 'dope.'

Beginners can also use frameworks to make video games, such as Pygame, which offer a visible feedback loop as well, Hightower said in an interview. Pygame is a free open-source library used to develop multimedia applications using Python.

Another Python strength is being a powerful, flexible and easy-to-read programming language, said Tam Ayers, field CTO for North America at Digibee, an enterprise integration PaaS provider based in Sao Paulo, Brazil.

Coders can easily deploy Python scripts via free tiers on major cloud provider tools such as AWS Lambda or Google Cloud Functions, Ayers said.

"These tools allow you to focus on learning to write code to achieve a specific goal rather than worrying about managing a web server," he said. "The Python community is also very supportive, with plenty of resources and libraries available to help you get started."

Python is used to manipulate, model and move data sets into buzz-generating tools such as ChatGPT, said Dustin Pearce, vice president of engineering at Amplitude, a digital analytics platform company based in San Francisco.

"If I'm a [beginner] programmer… then learning data engineering and how to manipulate data and move data around with the patterns that have been established in the industry, using Python, is a very valuable skill," he said.

HTML, CSS and JavaScript: the languages of the web

HTML, CSS and JavaScript work together to turn code into working web pages. HTML creates the basic page content, CSS styles web pages with effects such as colors and fonts, and JavaScript adds interactive features such as email forms and radio buttons.

One reason why HTML is a good programming language for beginners is that most people frequently use a web browser, so they have some experience with it already, Hightower said. The HTML and CSS experience is like working with Google Docs or Microsoft Word. Plus, the visual element makes HTML an especially good choice for beginners in Hightower's view.

"A lot of people would benefit from the visual feedback loop you get when working with HTML and a browser," Hightower said.

Once learners have mastered those basics, they can move on to JavaScript, he said.

MIT's Scratch dashboard is a visual way to learn coding basics.
MIT's Scratch dashboard.

Starting from Scratch with newer languages

Beginners should expect a steep learning curve no matter what programming language they choose to begin with, Pearce said.

"It takes a lot of time, a lot of resilience, a lot of focus," he said. "People have to almost be obsessive."

A lot of people would benefit from the visual feedback loop you get when working with HTML and a browser.
Kelsey HightowerDistinguished engineer, Google Cloud

Hightower agrees that the jump to any programming language is going to be hard. That's one reason that he recommends Scratch, which helps people learn the logic behind programming languages using blocks. Since its creation, Scratch -- developed and maintained by MIT Media Lab and Lifelong Kindergarten group -- has amassed more than 100 million registered users aged four to 80.

Scratch could also bring greater variation to learning to code, Pearce said, which may be more effective than one learning approach alone.

"Only picking up Python books and only sticking in one lane is likely to be less effective than a multimedia approach, where I'm doing Scratch, I'm doing a little bit of Python, doing a little bit of JavaScript, different schools, different YouTube authors," he said.

Hightower also recommended that people learn to program with tools they already use. For example, Microsoft Excel users can learn to write macros with Visual Basic for Applications, and Roblox players can use the Lua programming language to code custom features, he said.

Dig Deeper on Software design and development