•  


What language should beginning programmers choose? - Stack Overflow
Loading…

What language should beginning programmers choose?

Should a language be easy or comprehensive?

Article hero image
Credit: Alexandra Francis

Now that Stack Overflow has a space for subjective content? Discussions ?we want to occasionally highlight the great conversations happening on site. Personally, I love hearing about different people’s perspectives on software and technology issues. With the answers to so many technology questions tending towards “it depends” as one gains experience, more perspectives reveal additional factors that “it” could depend on.

For today’s “it” question, I want to highlight the discussion happening in “ What language would be the best beginner language? ” User Mr Quibbles , relatively new to programming, asks:

I started learning programming about a year and a half ago and I started with Python 3.10 as my first ever language. I was advised to do so by friends of mine due to its English-like syntax, however, about a month ago I heard friends of mine discussing that C might be a better language to start.

I have been learning C++ for the past 3 months in my free time and I can see their point, C++ syntax has a lot more in common with other programming languages than Python does. So I wanna hear what others here think, which language do you think would be best to start with, and which language did you learn first?

As you may guess, much of the conversation compared C/C++ and Python as starter languages.

Rupesh Kumar wrote - C, C++ is for learning basics building blocks and learning to applying logic. Python, java like languages is library rich and used to create live application and solve business problems.

You can start with your preference,

For the record, your humble correspondent started with BASIC, then took some computer science classes in C and Java. Of course, it is debatable whether I know programming or not. That’s why we have discussions like this.

Most of the votes for Python talked about how easy it was to understand.

Techguy wrote - Python is a great language to learn, as it's considered very "high level" - meaning close to English in its syntax.

jfleach wrote - There is a reason Python is the most popular programming language in the world.

  1. It's an open source higher-level language.
  2. It's very easy to learn and use.
  3. It can be used for advanced projects.
  4. You can import third party libraries with ease and is a huge time saver.
  5. It can be used for full-stack development.
  6. Employers love people who know Python which pays off.

The C/C++ fans, on the other hand, thought you should get the deeper understanding of CS concepts from the get-go:

wyzarddoc wrote - I vote for C++. Bottom line C++ gives you full control down to the single bit, but also requires you to reinvent the wheel when learning. By this I mean just to print something on the terminal requires you to learn the contents of libraries and how to incorporate them into your code. Python is much easier, but is extremely inconsistent in it's coding application. For instance string handling can be disguised as a list if your not aware of when your function changes input from a list to a string.

One absolute madlad came in with this suggestion:

LemonCool wrote - Assembly!! lots of people started from it for a reason, in the end it all gets translated to low level so would be really beneficial to your dev journey. In my opinion you don't want to skimp on your education and learn to walk. Assembly will humble and reward your journey. If you don't want to go that low, probably C is the best starting point, that won't hide too much away from your keystrokes-composed-code with glue-up-behind-the-scene magic.

There’s plenty more on this about the benefits of each, including which languages will help you get a job (not the assignment, but definitely a good factor to keep in mind). Are you team Python with the easy syntax, or do you think everyone should start with `malloc` on their mind? Or are you a secret third thing, Haskell or death, recurse me eternal sort of programmer? Head on over to the discussion and chime in.

Login with your stackoverflow.com account to take part in the discussion.
- "漢字路" 한글한자자동변환 서비스는 교육부 고전문헌국역지원사업의 지원으로 구축되었습니다.
- "漢字路" 한글한자자동변환 서비스는 전통문화연구회 "울산대학교한국어처리연구실 옥철영(IT융합전공)교수팀"에서 개발한 한글한자자동변환기를 바탕하여 지속적으로 공동 연구 개발하고 있는 서비스입니다.
- 현재 고유명사(인명, 지명등)을 비롯한 여러 변환오류가 있으며 이를 해결하고자 많은 연구 개발을 진행하고자 하고 있습니다. 이를 인지하시고 다른 곳에서 인용시 한자 변환 결과를 한번 더 검토하시고 사용해 주시기 바랍니다.
- 변환오류 및 건의,문의사항은 juntong@juntong.or.kr로 메일로 보내주시면 감사하겠습니다. .
Copyright ⓒ 2020 By '전통문화연구회(傳統文化硏究會)' All Rights reserved.
 한국   대만   중국   일본