Welcome, Guest. Please login or register.
November 21, 2024, 09:05:05 pm

Pages: [1]
  Print  
Author Topic: Programming Languages  (Read 27549 times)
divit
black cap brotherhood member
******
Posts: 225



« 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?
Logged
popsUlfr
Global Moderator
black cap brotherhood boss
*****
Gender: Male
Posts: 270


Houndeye


« Reply #1 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.
Logged
Bio
noble citizen robot
***
Posts: 28


« Reply #2 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 Smiley
Logged
popsUlfr
Global Moderator
black cap brotherhood boss
*****
Gender: Male
Posts: 270


Houndeye


« Reply #3 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 Smiley

I agree Eclipse is a very powerful IDE. But I would personally recommend NetBeans.
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.
Logged
Bio
noble citizen robot
***
Posts: 28


« Reply #4 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!!!  Grin
Certainly it was a good way to learn but i suggest you to try a different approach.

Bye
Logged
popsUlfr
Global Moderator
black cap brotherhood boss
*****
Gender: Male
Posts: 270


Houndeye


« Reply #5 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!!!  Grin
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.
Logged
Bio
noble citizen robot
***
Posts: 28


« Reply #6 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)
Logged
divit
black cap brotherhood member
******
Posts: 225



« Reply #7 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.
Logged
Bio
noble citizen robot
***
Posts: 28


« Reply #8 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 Smiley
So i've to disagree with that paper, but this topic is really hard to handle and i'm not so skilled in english  Grin

Greetings
Logged
_phred
little rusty robot

Posts: 1


« Reply #9 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. Smiley

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.
Logged
oleksus
little robot
*
Posts: 2


« Reply #10 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 for example. Or you can learn to make text adventures, with QUEST platform.

Or you can play a programming game, like Ceebot 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!
« Last Edit: October 28, 2009, 02:08:16 pm by oleksus » Logged
Pages: [1]
  Print  
 
Jump to: