Tips for Getting Started Learning Programming Languages

Image from the San Diego Air and Space Museum Archive

E. Dunham has a few quick – but keen – pointers for learning new programming languages. These are broad tips with no specific language endorsement (hint: Python is a great place to start!). I especially dig tip #5: ‘write toy programs.’ Right on!

So, you’ve decided that you want to add a particular programming language to your repertoire. Now what?

In this article, I outline 12 suggestions for study techniques. Remember that everybody learns differently. Some of these techniques may work excellently for you, whereas others may not meet your needs at all. If you start to feel stuck with one strategy, try another and see where it gets you.

Read more.

Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here:

Join Adafruit on Mastodon

Adafruit is on Mastodon, join in!

Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Join over 36,000+ makers on Adafruit’s Discord channels and be part of the community!

CircuitPython – The easiest way to program microcontrollers –

Maker Business — “Packaging” chips in the US

Wearables — Enclosures help fight body humidity in costumes

Electronics — Transformers: More than meets the eye!

Python for Microcontrollers — Python on Microcontrollers Newsletter: Silicon Labs introduces CircuitPython support, and more! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi

Adafruit IoT Monthly — Guardian Robot, Weather-wise Umbrella Stand, and more!

Microsoft MakeCode — MakeCode Thank You!

EYE on NPI — Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — #NewProds 7/19/23 Feat. Adafruit Matrix Portal S3 CircuitPython Powered Internet Display!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at !


  1. It won’t work. I’ve taught students in college.

    You have to have someone who knows how to teach before they write their books. Just because someone writes an article doesn’t mean they can teach. They know something but teaching is more than giving people a bunch of facts. Teaching is presenting the information in a format that people can learn. It also means not assuming that the person who doesn’t know is communicated what the writer needs to communicate and often doesn’t about a language. Writers assume that the reader knows how to program and that isn’t always the case but they convey half of the teaching because it is assumed that they know what the writer isn’t communicating. In other words, writers write and give you commands to do something without telling you how to do something.

    Some of the books out there are written by people who got their book written too quickly because they were trying to meet a deadline.

    It takes a lifestyle to learn how to code: Turn the TV off.

    I know adults who know microprocessors who can’t learn C because a lot of the books are too badly written.

    And the reason why more people aren’t learning microprocessors is the example of why some authors can’t teach.

  2. The author runs “DevOps” at Mozilla – pretty sure he knows what he’s talking about.

  3. I learned BASIC at home by typing in one command every day on my Commodore 64. Then I learned it in High School and then College made me take BASIC programming and then PASCAL.

    Basic was a language for people for people who couldn’t program and in my college days, everyone wouldn’t leave me alone in LAB class because they wanted me to write their programs for them.

    “Despite the enormous changes which have taken place since electronic computing was invented in the 1950s, some things remain stubbornly the same. In particular, most people can’t learn to program: between 30% and 60% of every university computer science department’s intake fail the first programming course. Experienced teachers are weary but never oblivious of this fact; brighteyed beginners who believe that the old ones must have been doing it wrong learn the truth from bitter experience; and so it has been for almost two generations, ever since the subject began in the 1960s.”

    Your assumption may not be statistically representative of all Americans because:

    “Today, only 2% of students study computer programming.”

    If two percent of students study computer programming, maybe it is because that two percent believe they can. And if they don’t believe they can learn, they won’t because they either don’t know what it takes to learn or it is predictive prophecy: They don’t think they can so they won’t try so they don’t.

    If we studied the other 98% of Americans who don’t code, we might get a more representative sample of who can and who can’t. I’ve already talked to teachers in Philadelphia who say they can’t get their kids to do their homework.

    When I went to elementary school, only those in the gifted program or a full A average were allowed to touch the Commodore Pet computers in school. The teachers attitudes back in the beginning of computers was most kids wouldn’t be able to do anything with it and that attitude still existed among some teachers that I knew back when Apple I and II’s were in school. If you didn’t have a certain average, my high school teacher wasn’t going to let people take the class unless we could convince him we would do well in the class. And I had to tell him I already had a computer and I knew how to program but I wasn’t really good at it.

  4. @Chuckz You really should write to the original author – or let him know you left comments here with your concerns.

    Also, times have changed – a lot!

  5. Learning to program for adults is actually a problem:

    “How long have people been trying to learn programming, and
    how many hours per week do they devote to it?
    We grouped the 469 responses to “How long have you been
    trying to learn programming?” into five buckets: 13% have
    been trying for less than one month, 19% for less than one
    year, 17% for 1–3 years, 8% for 4–10 years, and 43% for
    more than 10 years. In general, most respondents were not
    new to programming. But although 43% reported greater than
    10 years, that does not necessarily mean that they had been
    continually learning for all these years. One common sentiment
    we noticed was people reporting that they first tried
    learning several decades ago when they were younger but
    stopped due to lack of time; and now they are attempting to
    re-learn since they have more free time in retirement.”

Sorry, the comment form is closed at this time.