• 0

What is (are) the best programming language(s) for beginners?


  

465 members have voted

  1. 1. What is (are) the best programming language(s) for beginners?

    • Pascal
      13
    • Java
      68
    • Python
      36
    • Vb.net
      50
    • Basic
      23
    • Delphi
      6
    • C
      37
    • C++
      37
    • C#
      100
    • Smalltalk
      0
    • Lisp
      1
    • A++
      0
    • Curry
      1
    • Haskell
      2
    • Ruby
      12
    • Perl
      8
    • Other (refer)
      9
    • PHP
      62


Question

Recommended Posts

  • 0

Let's say someone's starting off with a background (from 10+ years ago) in Visual Basic. Going back into programming without all that much knowledge. Would eventually like to make little 2D games and helpful little apps, maybe contribute to open source projects. C#, C++? I'm leaning C++ right now with a later transition into C# and maybe some Objective C for ipod app development in the future.

I'm starting off quaint, but would like to turn it into a profession.

  • Like 1
  • 0

Depends what kind of open-source projects. I'd say open-source projects use C++ more than any other language, although often they have no reason for using C++ other than making their lives more miserable than need be (and ensuring the project fails). Still, a lot of them use C#, Python and others.

C++ is great for learning how computers and operating systems work, while getting acquainted with principles of OOP. It's not so great for making desktop applications, in general. What bugs me is how C++ is selected sort of "by default" for many projects when there are a lot of better choices out there, choices that would lead to a faster and less frustrating development experience, and probably to a better product in the end. C++ is held in way too high esteem. Sure, you need it to develop for PS3. But for Windows? Maybe, but probably not.

  • 0

I learned C++ first, then Java, C#, Perl, then C for system programing, and sone other stuff that I forgot like smalltalk, scheme, and prolog for my Programing languages course. Oh also FuzzyCLIPS for my Intelligent Systems course.

  • 0

I learned Visual Basic (back when it was VB6) and then learned Java. I'd say Java is the more powerful of the two, but VB may help you get your head around programming concepts a tad easier (this IMO is the absolute greatest barrier to learning programming in any language - it's a total paradigm shift in thinking patterns). After learning Java and VB I eventually moved onto C++, which is also a great programming language (but definitely not for beginners IMO). You can learn C#, it's okay, but once you've learned VB, Java and C++ learning C# is well, up to you. At the moment I'm re-learning Java (it's easy enough to forget after 3 years of constant C++) but definitely going to be moving onto PHP and Objective-C because I'm one of those weird people that just love to learn it for fun - PHP more specifically will become useful for me as it'll help me make improvements to the forum I'm an admin on, but that's another story altogether.

So, tl;dr, just go for Java. It's easy enough to begin with and it'll help you pick up common programming concepts fairly easy too.

EDIT: Also, what revvo said.

  • 0

Suggesting to start on a harder, heavier language? Really?

I am keen to understand your thoughts further?

Once you learn C and C++ going to higher level languages like Java, C# and Objective-C is a piece of cake. I also believe some of the concepts you learn with a lower language like C are very valuable in understanding how programming work...something that will be harder to learn in a higher level language

If he just wants to code for fun and he doesn't really care about programming, going straight to C# or Java is a pretty good idea

Rudy doesn't believe a person should enjoy learning to program. Don't mind him.

No, I just believe there are valuable lessons to be learned from C and C++

If he just wants to program as a hobby and isn't very serious about it then by all mean go straight to a higher level language like C#

  • 0

I learned C++ first, then Java, C#, Perl, then C for system programing, and sone other stuff that I forgot like smalltalk, scheme, and prolog for my Programing languages course. Oh also FuzzyCLIPS for my Intelligent Systems course.

Forgot Assembly (hate it, hate it, HATE IT), Verilog, VHDL. I think out of all the languages I learned I really like Verilog. I had to simulate a CPU with it and I felt it was my only class where I was doing real work. Java and Assembly were just create games classes and I learned a lot about Object-oriented programming with Java so I agree with people who are saying to take that first. Java almost does everything plus the kitchen sink and the Java API Docs are some of the best (along with .NET's) documentation I have seen.

  • 0

There is no reason why C or C++ can't be enjoyable to learn. It all comes down to whether you have a real interest in learning how things work, or if you just want to push a few buttons in a wizard and be instantly rewarded on a massive scale. Pick whatever suits your style.

  • 0
No, I just believe there are valuable lessons to be learned from C and C++

If he just wants to program as a hobby and isn't very serious about it then by all mean go straight to a higher level language like C#

While I agree that learning C++ should be part of the curriculum of any serious programmer, it's questionable whether it should be chosen as a first programming language. One can very well learn memory management and the low-level APIs like Win32 after having learned variables, loops, classes, encapsulation, etc., in a higher-level language. As a path it presents less resistance and more gratification. I was exposed to a variety of programming languages before C++, some old and cruddy, some very good, as a result I already had a critical look at it when I started. I remember asking my teacher why were header files needed (unlike in any other language, save for C, but I didn't know C)... he said it was because it was cleaner to have the declaration separate. :laugh:
  • 0

There is no reason why C or C++ can't be enjoyable to learn. It all comes down to whether you have a real interest in learning how things work, or if you just want to push a few buttons in a wizard and be instantly rewarded on a massive scale. Pick whatever suits your style.

Name one programming language where you can "push a few buttons in a wizard" and magically have a program that can do everything.

Go ahead. I'm waiting. :rolleyes:

  • 0
One can very well learn memory management and the low-level APIs like Win32 after having learned variables, loops, classes, encapsulation, etc., in a higher-level language.

You can learn all about variables, loops, classes, encapsulation, etc in C++ without having to worry about advanced memory management and low-level APIs. All that complicated stuff can be done whenever the person feels ready. It's very easy to make a simple app in C++.

  • 0

I've found Java and C# are good because they take something from a bunch of languages, which makes learning other things easier. PHP is a good in-between for scripting and programming, but I've found that my PHP habits create some re-familiarization time when switching to Java. Python and VB, don't like the syntax, and it's very different from other languages so transitioning would be a bit more difficult.

  • 0
As a technical lead I am begging you to stop suggesting C# as a beginners language. I ve seen it all.

Start with VB and when you realise whats going on in the .NET Framework start looking into C#. VB gives you lots of bad habbits though...

Care to explain why C# wouldn't be a good choice? And why do you recommend VB instead if it teaches bad habits?
You can learn all about variables, loops, classes, encapsulation, etc in C++ without having to worry about advanced memory management and low-level APIs. All that complicated stuff can be done whenever the person feels ready. It's very easy to make a simple app in C++.
It's not so much the memory management that's the problem, it's the confusing syntax, the complicated compilation model (you can't get away without understanding the concept of translation unit and the real purpose of header files for long), the poor libraries, the duplicated features (is a string const char* or std::string? C or C++ libraries? etc.), and the relatively unhelpful IDE support, that all combine to produce a remarquably painful experience before you learn your way around all that stuff. Which gets in the way of learning basic concepts such as variables, loops etc.

Example: in C#, to be able to use a class, I just have to write that code somewhere in the project. In C++, I have to ensure the declaration will be accessible in any translation unit in which I want to use the class, that the declaration is guarded from multiple inclusion using include guards, and that the code corresponding to the declaration is available at link time otherwise I will get an error with mangled names that doesn't reference any particular line of code. Oh, and what was that thing about forward declarations?

It gets messy real quick.

  • 0

As pointed out before in this thread, C/C++ forces you to learn lots of things that you probably won't see again in languages like C#, Visual Basic and Java. So for a nice start and learning the basics, I'd recomend anyone to use a high level programming language.

My personal journey started in C/C++, then moved on to VB where I really learned the programmers way of thinking. Then I moved back to C++ again quickly followed by Java. All of those where in a professional environment except for the very first C/C++ teachings. Looking back at those experiences I dont think it makes much difference if I had learned Visual Basic or Java before C++, but I know that first strugle with C/C++ was often about problems not related to any simple programming in itself.

In terms of C#, it was a walkover to learn after Java, and I feel that you can master that basics of any of those and easily enough go into the other.

Because I have something of a softspot for C# with WPF/XAML and LINQ I voted for this.

  • 0

There is no reason why C or C++ can't be enjoyable to learn. It all comes down to whether you have a real interest in learning how things work, or if you just want to push a few buttons in a wizard and be instantly rewarded on a massive scale. Pick whatever suits your style.

Since this is your claim, why don't you answer?

You said it, not me. Therefore, YOU should be the one answering. And if you're complaining about how I didn't quote the phrase verbatim, well get a grip and don't be such a hardass.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • The Vibe Coding Playbook: Building Your Tech Business with AI —was $35, now FREE by Steven Parker Claim your complimentary copy (worth $35) of "The Vibe Coding Playbook: Building Your Tech Business with AI" for free, before the offer ends on June 23. Description A detailed and up-to-date walkthrough for entrepreneurs with limited (or non-existent) coding skills who want to build profitable software companies using new gen-AI tools. In The Vibe Coding Playbook: Building Your Tech Business With AI, renowned AI and data science educator Siraj Raval walks you through exactly what you need to do to build a technology business with generative AI-powered code assistants. Raval offers step-by-step guidance for non-technical professionals and entrepreneurs interested in creating scalable, profitable enterprises without spending years learning how to code. This book conceives of new artificial intelligence tools, like Cursor, as “co-founders,” lighting your way to constructing valuable software products and services. You’ll learn to build minimally viable products (MVPs), iterate on your software products as you develop and after launch, and grow your company while maintaining a lean, efficient, solopreneur-focused structure. Inside the book: Detailed guidance for entrepreneurs interested in creating powerful tech solutions for niche problems and markets without hiring expensive software developers Strategies for using generative AI tools to substitute for traditional technical co-founders Illustrative case studies from real-world founders who built successful technology businesses without learning to code Useful tools for non-technical entrepreneurs, including prompt libraries, decision trees, QR codes linking to video tutorials demonstrating key techniques, and access to an exclusive online community of like-minded founders Perfect for ambitious professionals and entrepreneurs who want to build a successful technology company now – using commercially available AI tools – The Vibe Coding Playbook is your personal roadmap to creating useful and profitable software for customers without learning how to code. How to download for free Please ensure you read the terms and conditions to claim this offer. Complete and verifiable information is required in order to receive this free offer. If you have previously made use of these offers, you will not need to re-register. Was $35, but is now FREE | Below free offer link expires on June 23. The Vibe Coding Playbook: Building Your Tech Business with AI The below offers are also available for free in exchange for your (work) email: The Vibe Coding Playbook: Building Your Tech Business with AI ($35 Value) FREE - Expires 6/23 The Persuasion Engine: How Any Business Can Use AI-Powered Neuromarketing to Understand and Win Customers ($28 Value) FREE - Expires 6/24 How to Do More with Less: Future-Proofing Yourself in an AI-driven Economy ($28 Value) FREE - Expires 6/30 Cloud Security Fundamentals: Building the Foundations for Secure Cloud Platforms ($131.95 Value) FREE - Expires 7/1 The Complete Free AI Learning: Master ChatGPT, Claude, Gemini & More ($21 Value) FREE How to Build an AI Design Workflow with Gamma ($21 Value) FREE The Ultimate Linux Newbie Guide – Featured Free content Python Notes for Professionals – Featured Free content Learn Linux in 5 Days – Featured Free content Quick Reference Guide for Cybersecurity – Featured Free content We post these because we earn commission on each lead so as not to rely solely on advertising, which many of our readers block. It all helps toward paying staff reporters, servers and hosting costs. Other ways to support Neowin The above deal not doing it for you, but still want to help? Check out the links below. Check out our partner software in the Neowin Store Buy a T-shirt at Neowin's Threadsquad Subscribe to Neowin - for $14 a year, or $28 a year for an ad-free experience Disclosure: An account at Neowin Deals is required to participate in any deals powered by our affiliate, StackCommerce. For a full description of StackCommerce's privacy guidelines, go here. Neowin benefits from shared revenue of each sale made through the branded deals site.
    • Rockstar confirms Grand Theft Auto VI pre-orders begin next week, unveils cover art by Pulasthi Ariyasinghe The release date of Grand Theft Auto VI has moved quite a lot since its original announcement in 2023, but it finally looks like the game has found its final launch slot. Rockstar today had a new video upload on its YouTube channel, and while it wasn't a new trailer for the game, the company revealed two things. This was the pre-order kickoff date for Grand Theft Auto VI as well as the game's official cover art. The company revealed that June 25 is when fans of the series will be able to pre-order their copy of Grand Theft Auto VI. Pre-orders will be available both digitally and in retail stores. The newly unveiled cover art shows off the two new protagonists, as well as a few more characters that are probably vital to the campaign storyline. Shots of vehicles players can use like a light helicopter, motorcycle, sports car, and speed boat are also seen here, alongside a shot of a crocodile. "Jason and Lucia have always known the deck is stacked against them," says Rockstar describing the campaign's protagonist duo. "But when an easy score goes wrong, they find themselves on the darkest side of the sunniest place in America, in the middle of a conspiracy stretching across the state of Leonida — forced to rely on each other more than ever if they want to make it out alive." Grand Theft Auto VI is coming to Xbox Series X|S and PlayStation 5 on November 19, 2026. A PC version has not been confirmed yet, though it's expected by many to land after the console release. When asked about this, the Take-Two CEO says it considers the core audience for the Grand Theft Auto franchise to be on consoles.
  • Recent Achievements

    • Week One Done
      Huge Trailer earned a badge
      Week One Done
    • Week One Done
      Classifyskilleducation earned a badge
      Week One Done
    • One Month Later
      eurospharma62 earned a badge
      One Month Later
    • Week One Done
      With What earned a badge
      Week One Done
    • Week One Done
      Harris Gilbert earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      552
    2. 2
      +Edouard
      169
    3. 3
      PsYcHoKiLLa
      72
    4. 4
      Michael Scrip
      64
    5. 5
      ATLien_0
      64
  • Tell a friend

    Love Neowin? Tell a friend!