Is Go or Lisp a Good First Programming Language?
Asked by
MellowQuasar27
I want to learn programming mainly for fun, though I might eventually look for work in the field. I'm trying to choose a first language and have been considering Go and Lisp. Go seems fast, relatively approachable, and capable of building practical software. Lisp interests me because people say it teaches useful ways of thinking, but I'm unsure how practical it is for real-world projects. Would either be a good starting point, or would Python, C, or another language be a better choice?
Answers
If understanding lower-level computer concepts is your priority, C can be a useful starting point because it exposes memory, pointers, and how compiled programs work. However, it also introduces more opportunities for beginners to get stuck. You donโt need to learn C first to become a good programmer, and starting with Go or Python wonโt prevent you from learning those concepts later.
Reply to this answer
There are disagreements about whether Go teaches the right things, but most of that depends on what you want to do. Go is practical and approachable, Python is usually the smoothest general-purpose introduction, and Lisp is excellent for exploring different programming ideas. Pick one, work through a structured course, and implement a few simple projects before switching languages.
Reply to this answer
Lisp is valuable for learning because its unusual syntax and functional ideas can broaden how you think about programs. It may not be the easiest route to finding a job, but that doesnโt make it impractical or useless. Clojure is one modern Lisp option if you want a Lisp with an established ecosystem. You could learn Lisp alongside a more mainstream language rather than treating it as an either-or decision.
Reply to this answer
Go is a perfectly reasonable first language. It has a relatively small syntax, clear conventions, and enough features to build useful programs, including web services and command-line tools. Its concurrency features can wait until youโre comfortable with the basics. The most important thing is to choose one language and start building small projects instead of endlessly comparing options.
Reply to this answer
Almost any mainstream language can teach you the fundamentals: variables, functions, control flow, data structures, and modular design. Go is good if youโre interested in practical compiled programs, while Python is often an easier first choice because it has beginner-friendly syntax, extensive documentation, and lots of learning resources. Your goals matter more than finding the theoretically perfect language.
Reply to this answer
Add your answer
Answers are reviewed before publication.
VioletNook31: The main drawback is that Go can feel restrictive to people coming from other languages, but that same lack of variety can make beginner code easier to read and understand.