0 Members and 1 Guest are viewing this topic.
"welcome to the world of computers, where everything seems to be based on random number generators"
Don't you have to pay for VB?
Ouch, I would not recommend Visual Basic not any beginner or any programmer at all.Firstly, it is not open source, and open source languages evolve much faster, besides the fact that you can tinker with them.Secondly, it runs on the .NET Framework, which is Windows-only (yes, there's Mono, but it's not so good), and making developers start fresh with developing Windows-only programs is bad.Thirdly, it has labels/gotos, which make it really (really, really, I know a guy who couldn't learn Python after VB because he missed Goto, he just couldn't do anything without Goto). And goto is bad because it may lead to very hard to read code.Finally, Visual Basic is way too attached to a certain IDE (Visual Studio). You can program without it, but it is better used with it. This is really bad, because programmers should know how to program with a text editor + compiler too.Oh, and the IDE doesn't work on other operating systems too, programmers should be taught cross-platform is cool from the start.I recommend Python or Ruby, because they are both interpreted languages, and easy to understand for beginners.
flyingfisch, I wouldn't recommend Lua, Ruby and Python are better for computers because lists/arrays start at 0, instead of starting at 1. Getting used to thinking 0, 1, 2, 3 is good for other languages and Maths in general.Of course, though, I understand you learnt Lua for Nspire, which is our only option (no more with Ndless though!).And yes, I'm afraid Goto creates that kind of problems
@Ephan:If how quickly a language changes is relevant to a beginner, then the language is either far too new to be used by a beginner or they're in the wrong section of the tutorial book. And the problem is less that proprietary languages change less frequently and more that a good language *shouldn't* be changing much in the first place.As for the Goto argument, it's silly to pick a language based on the fact that it chooses to restrict you by omitting the Goto statement. Python can get away with not including it because it works in a domain where it's not entirely necessary. C on the other hand can't eliminate it. The same thing applies to the argument that Goto leads to unreadable code. It's undeniably true that improper use of Goto will probably result in that. However, I've yet to see a single language where it's impossible to write bad code if you try hard enough. The key is just learning how to design good code, which solves the Goto problem as well.Personally, I would recommend an useless language like TI-BASIC, JustBASIC, or Matlab. Why a useless language? Because you can't learn everything there is to know about programming having learned only one language. One problem I've seen is that people who learn a useful language first have a tendency to try to apply that language everywhere, even in places it doesn't belong. A useless language forces you to move outside it while making learning that second language significantly easier.