Title: Programming Languages Post by: divit on October 20, 2009, 10:40:32 pm Hi there,
I'm thinking of learning programming, but I'm not sure where to begin (although I've heard that Python is good for beginners). The only language I've done before is P-basic (and only for simple mechanical functions), and that was three-and-a-bit years ago. Any advice? Title: Re: Programming Languages Post by: popsUlfr on October 21, 2009, 07:49:15 am You should consider JAVA, it's great for beginners but still extremely flexible. The amount of documents and tutorials available is huge, so if hit a problem you might find some hints on how to proceed. It's Object Oriented so you can basically apply real-world schemes to your app. Each supplied class has complete Documentation and you can easily do this aswell for your own classes.
It has been the Programming language we were introduced to in my Computer Science studies, we are working on different Platforms so it was important to have one that can be executed on each of them. JAVA is the logical choice, compile once run everywhere totally Platform independant as long as the java runtime is installed. It's fun to use, debugging is powerful and fast, running your app is a matter of seconds and java automatically enhances you program to get the most performance out of it. Unlike C, C++ where you have to worry about all those performance issues. And many more... I recommend it, once you get along with it you will have fun programming with it. Python is more of a script language, though there are ways to embed it in JAVA also. Ruby, Perl aswell. Title: Re: Programming Languages Post by: Bio on October 24, 2009, 09:47:07 am I've to agree, Java is the best choice for beginners. I've learned it at University and I suggest you to use Eclipse development enviroment (http://www.eclipse.org/) I think it's one of the best, it's open source and really powerfull.
Good work :) Title: Re: Programming Languages Post by: popsUlfr on October 24, 2009, 11:29:24 am I've to agree, Java is the best choice for beginners. I've learned it at University and I suggest you to use Eclipse development enviroment (http://www.eclipse.org/) I think it's one of the best, it's open source and really powerfull. Good work :) I agree Eclipse is a very powerful IDE. But I would personally recommend NetBeans (http://www.netbeans.org/). WYSIWYG Form,GUI programming with many plugins, database handling, etc... Has all the features Eclipse has. I've started with Eclipse and ended up with NetBeans. Title: Re: Programming Languages Post by: Bio on October 24, 2009, 12:00:11 pm I don't know NetBeans IDE but i think it's more complete than Eclipse.
GUI programming is surely an aid (there are some plugins for Eclipse that allow to you to do that, but i don't like them so much). I've experienced during my studies, what means to develop a software (not commercial) with GUI, DB handling (JDBC),etc writing every single row of code.....and it was a pain!!! ;D Certainly it was a good way to learn but i suggest you to try a different approach. Bye Title: Re: Programming Languages Post by: popsUlfr on October 24, 2009, 12:15:40 pm I don't know NetBeans IDE but i think it's more complete than Eclipse. GUI programming is surely an aid (there are some plugins for Eclipse that allow to you to do that, but i don't like them so much). I've experienced during my studies, what means to develop a software (not commercial) with GUI, DB handling (JDBC),etc writing every single row of code.....and it was a pain!!! ;D Certainly it was a good way to learn but i suggest you to try a different approach. Bye Of course it's needed to do it the hard way without any helping hand, so you actually know how it works. But once you start some very complex Programs it will be a pain and time consuming to write all that code yourself. Title: Re: Programming Languages Post by: Bio on October 24, 2009, 12:47:30 pm You could consider to try Visual Basic .NET too, it's OO and it uses .NET Framework. There's a open-source IDE called SharpDevelop (http://sharpdevelop.com/), otherwise you can buy Visual Studio .Net licence (if you are a student there's surely a discount on it) that supports other language too (C++,C#,etc)
Title: Re: Programming Languages Post by: divit on October 24, 2009, 10:20:19 pm I read that Java has its downside as a first language:
http://www.stsc.hill.af.mil/CrossTalk/2008/01/0801DewarSchonberg.html (third section) This might only apply to people taking it a lot more seriously than me though. On another note the next month looks like essay season, so I probably wont have too much in the way of spare time for this. Title: Re: Programming Languages Post by: Bio on October 25, 2009, 08:58:03 am It all depends what you are going to do and what you want to do.
Java is a good language for beginners and it's widely used in academia (students are beginners by definition). The paper, if i've understood rightly,talks about the basic knowledge should have any engineer, ofc it can't be bounded to Java only. I've achieved a bachelor in ITC Engineering, now i've just started Automation Engineering (degree) and during my studies i've learned first of all C language and Motorola 68K Assembly, then Ada, Python and at the end Java. There were a lot of theoretical courses about Computer Science but i'll be honest: i don't consider myself a good programmer (by the way engineering purpose is not to bring up new programmers) and all this knowledge is (unfortunately) not so appreciated by most of industries (at least here in Italy). The paper author is probably describing a situation in USA. In few words they want you to know Web Services,XML, PHP, ASP.NET, Oracle,etc,etc....they don't care if you know or not what is it a graph,a tree,algorithm complexity and other stuff :) So i've to disagree with that paper, but this topic is really hard to handle and i'm not so skilled in english ;D Greetings Title: Re: Programming Languages Post by: _phred on October 28, 2009, 10:21:19 am I'm gonna have to come down on the other side of the coin and say: don't learn Java. Instead, learn whatever excites you.
Personally, I learned a ton while programming games in high school. Mostly C and C++, nasty and hardcore stuff that really put a long distance between the programmer and the intended outcome. So, in the vein of doing fun things with code, let me introduce to you: Processing (http://processing.org/) Free and open-source language with a terrific runtime, lots of goodies baked in like sound, graphics (2d & 3d), animation; built on Java so it'll run on Mac / Windows / Linux / mobile phones. Download the runtime and check out the examples, modify the code, see what you can come up with! Oh, did I mention that reading and tinkering with someone else's code is a great way to learn about programming? OK, continuing with the introductions: PyGame (http://www.pygame.org/news.html) It's a Python library for making games. Lots of games to download from their site, try out, and modify. I really like game programming, because it doesn't have the constraints of boring "business" software, but they have their own set of challenges, and I love the immediate feedback loop and visual aspect of games. Not to say that I don't totally geek out on algorithms and database storage engines like CouchDB, and write all kinds of "business" software. Just have fun with what you do, that's the most important part. As long as you're having fun, it's all good. OK, final introduction: If you want to mess around with web stuff, try PHP. It's not the flashiest thing on the block, but it's dead simple to set up and try on a free web hosting account. Academics hate PHP, but they can stuff it. Obviously, the Amanita folks are madly skilled with Flash, which rocks. I dunno if I'd recommend it for your first time programming, as it's a wickedly complex thing to mess around with. At least, that's been my experience. Oh yes, and programming books are great. Online tutorials will get you a good distance down the road, but there's something about the heft of a dead-tree book, and being able to write in it and toss it in your bag to study when you're away from the computer. When you start writing programs in your head away from the computer, then you're really programming. :) Have fun, write games, and there's time later to learn awesome stuff like algorithms and computing theory and boring junk like Java and web frameworks. Title: Re: Programming Languages Post by: oleksus on October 28, 2009, 02:05:29 pm I'd suggest trying to learn LUA or Python.
They are stripped of a huge lot of inconsistencies, and have much more common sense than Java/C++. Personally after much hassle with Java I started learning LUA, and I make text adventures with it. But my main advice - PICK A SIMPLE PRACTICAL GOAL. In other words, you've got to have WHY you need a language. Either you make a game, or an application. You can learn a language that accompanies some game-making platform, like Wintermute (http://dead-code.org/home/) for example. Or you can learn to make text adventures, with QUEST (http://www.axeuk.com/quest/) platform. Or you can play a programming game, like Ceebot (http://www.ceebot.com/ceebot/index-e.php) or Colobot. These are wonderful games to help you get a starting hands-on experience with programming. Colobot has all the features of C++ like language, which you learn to use while playing a game! |