PDA

View Full Version : What Programming language do you recomend me?



nicoobe
July 22nd, 2010, 12:11 AM
Hello everybody,
My name is Nicolas and I am a 14 years old boy. I have recently installed Ubuntu on my PC. I love it. Everything works fine. I used to program in Visual Basic 6. As you must know VB is not compatible with Linux (Of course). I heard about Gambas, but I really dont like it (Everything are objects Haha). Im looking for a visual language like VB. I also heard something about Glade, but I really don't understand what it is (It is a compiler, IDE or what?). Please help me. Recomend me a good IDE or language.

Thanks you very much.
Greetings from Argentina! ;)

Nytram
July 22nd, 2010, 12:31 AM
Buenas noches,

It's possible to program in VB.net on Linux with a package called "Mono", although I've never tried it myself. VB.net is a little different to VB6 though, it's more object-oriented.

Python is quite an easy language to learn, it comes already installed with Ubuntu, and it doesn't force you to use objects.

Glade is used to build a GUI which can then be imported into your program.

HTH

lisati
July 22nd, 2010, 12:37 AM
Moved to "Programming Talk (http://ubuntuforums.org/forumdisplay.php?f=39)"

Feel free to browse the the "stickies" at the top of this section of the forum.

Good luck on your adventures into programming, and be prepared for a wealth of opinions on what constitutes a good programming language to learn - Python and what might loosely be called the "C family" of languages seem to be popular here.

StunnerAlpha
July 22nd, 2010, 12:44 AM
I strongly recommend python, very easy to learn and very powerful and there are a ton of modules(libraries) out for it so you can do pretty much anything you want without having to create the libraries yourself.

jpmelos
July 22nd, 2010, 12:57 AM
I strongly recommend Python.

It's an easy to learn language and highly important and used language in the open source environment.

madtowneast
July 22nd, 2010, 01:07 AM
I would say it depends on what you want to do. Since you are used to Basic I would say try C or C++ and see how things go. But for a starter I would also say python

nicoobe
July 22nd, 2010, 02:33 AM
Wow, it seems here everybody love's Python. Haha. Well, If I would like to start developing with Py, what IDE should I use? Is there any IDE visual and event-oriented like VB?
I also read that python is not compile,It is not slowly?

bocaccio
July 22nd, 2010, 02:47 AM
It all depends on your end goal. I would say don't just pick one; maybe learn one and then move on to learn another.

Everyone has an opinion too. This question is like asking "What is the best programming language?"

I would suggest you just pick one and search for some books on it and begin learning it; hey if you don't like it you can always move on to another language. Your 14yrs old!!! What would be wrong with knowing MANY languages:popcorn:

bocaccio
July 22nd, 2010, 02:50 AM
Wow, it seems here everybody love's Python. Haha. Well, If I would like to start developing with Py, what IDE should I use? Is there any IDE visual and event-oriented like VB?
I also read that python is not compile,It is not slowly?



No personal experience but "eclipse" seems to be a good start.

www.eclipse.org (http://www.eclipse.org)

simeon87
July 22nd, 2010, 02:57 AM
Eclipse is quite good, it's mainly used for Java but there are plugins for other languages.

But for now, why not use a simple text editor like gedit and the command-line? Python uses dynamic typing so things like code-completion can't be compared to they way they can be used in languages like Java.

nicoobe
July 22nd, 2010, 03:54 AM
Hey could someone give me a good and easy tutorial on python? I have read one of Python + Glade, but I really don't get it. As far as I get was that first I should make the Gui in Glade, then the code and then combine it.

Simian Man
July 22nd, 2010, 04:06 AM
Unfortunately there is really nothing quite as integrated and simple in Linux as Visual Basic is in Windows. If you want to do programming on Linux I'd really recommend skipping the GUI for a while and learn the language you will be working with (I also recommend Python). Once you understand one piece of the puzzle, it will be easier to learn to create a GUI.

By the way I wish I'd started coding when I was 14, keep it up :).

nicoobe
July 22nd, 2010, 04:44 AM
Thanks you all for answering. I decide to learn Python, Im not used to console lenguages but I'll do my best.

nvteighen
July 22nd, 2010, 01:49 PM
Unfortunately there is really nothing quite as integrated and simple in Linux as Visual Basic is in Windows. If you want to do programming on Linux I'd really recommend skipping the GUI for a while and learn the language you will be working with (I also recommend Python). Once you understand one piece of the puzzle, it will be easier to learn to create a GUI.

By the way I wish I'd started coding when I was 14, keep it up :).

No... Fortunately there's nothing quite as integrated as VB in GNU/Linux... it encourages horrible software design. Of course you can write VB stuff in a real modular way, but it's quite difficult and VB books/tutorials just don't care about this.

Ok, but besides that. GUIs are just an interface for the user... in the end, you just lay a design out in a designer (or coding it by hand) and connect that to an implementation that works "behind the scenes"... Good programs are designed in such a way that you could change the interface without touching the way it actually does stuff.

With that in mind, try to learn Python without thinking on the interface issue.

Simian Man
July 22nd, 2010, 01:56 PM
No... Fortunately there's nothing quite as integrated as VB in GNU/Linux... it encourages horrible software design. Of course you can write VB stuff in a real modular way, but it's quite difficult and VB books/tutorials just don't care about this.

Well, Visual Basic (especially prior to .NET) is very hard to write good, robust software in. But its flaws aren't due to the form designer, or IDE which are both pretty nice. Also not everyone is interested in writing good robust software. VB is really aimed at beginners and amateurs (business folk) who can get decent results without having to be computer scientists.

Though I agree that by learning Python the OP is going to mature a lot as a programmer.

kostkon
July 22nd, 2010, 02:03 PM
You can check Gambas (http://gambas.sourceforge.net/) for a VB style language (use the software centre to install it). Although, I would, also, recommend you to learn Python.

aktiwers
July 22nd, 2010, 06:53 PM
Hey there,

I have been learning Python on and off in my sparetime for a while.
A good way for me to learn was to do some of the challenges here in this forum, and on this site:
http://www.pythonchallenge.com/

These site also has a lot of good reference:
http://diveintopython.org/
http://www.swaroopch.com/notes/Python_en:Table_of_Contents

Good luck


A woman asks her husband, a programmer, to go shopping:
- Dear, please, go to the nearby grocery store to buy some bread. Also, if they have eggs, buy 6.
- O.K., hun. Twenty minutes later the husband comes back bringing 6 loaves of bread. His wife is flabbergasted:
- Dear, why on earth did you buy 6 loaves of bread?
- They had eggs.

nvteighen
July 22nd, 2010, 07:41 PM
a woman asks her husband, a programmer, to go shopping:
- dear, please, go to the nearby grocery store to buy some bread. Also, if they have eggs, buy 6.
- o.k., hun. Twenty minutes later the husband comes back bringing 6 loaves of bread. His wife is flabbergasted:
- dear, why on earth did you buy 6 loaves of bread?
- they had eggs.

:lol:

anon.jdh
July 22nd, 2010, 07:52 PM
I'm a little late for the party but I hope you don't mind my throwing in my $.02.

This is some great advice for this kid. The technology just wasn't there when I was 15. What a dream.

Forget about the GUI stuff for now man, it will just get in your way. Grab a Python tutorial and walk through it step-by-step at the terminal.

Once you get comfortable there, don't stay comfortable. Move on to C as soon as physically possible. There are others that really rock (Lisp in particular) but between C and Python theres almost no end to what you can do. Up to and including Kernel hacking.

bocaccio
July 22nd, 2010, 08:23 PM
I'm a little late for the party but I hope you don't mind my throwing in my $.02.

This is some great advice for this kid. The technology just wasn't there when I was 15. What a dream.

Forget about the GUI stuff for now man, it will just get in your way. Grab a Python tutorial and walk through it step-by-step at the terminal.

Once you get comfortable there, don't stay comfortable. Move on to C as soon as physically possible. There are others that really rock (Lisp in particular) but between C and Python theres almost no end to what you can do. Up to and including Kernel hacking.
I like your advice best of all; I am actually asking a question like this in DIC and here too. Because i am on ubuntu so what the heck may as well get the handle on python and i think i'll try out C# too.
I'll be using netbeans and eclipse. As i don't have 100% of my time to dedicate either; I am in a BS in Computer Forensics at the moment; 3 classes and I'll be done and I am about to be back in Active duty service so i'll just be doing some tinkering around a bit and maybe in January I'll be able to jump in some programming classes.

nicoobe
July 23rd, 2010, 08:00 PM
Thanks you all, I follow your advices and I start lerning Python. It is awsome, my first thought about python was "Uff, Console :(" but then I realized all the things I could do. i love python being portable o multiplatform o whatever. It's just great. I can do my application in Linux and run it in Windows.

So again, Thanks you all.

Hey a little cuestion, my ubuntu come with Python 2.6, Do I install 3?

aktiwers
July 25th, 2010, 11:18 AM
sudo apt-get install python3

And run your code with python3 instead of python.

bocaccio
July 25th, 2010, 11:52 AM
sudo apt-get install python3And run your code with python3 instead of python.
What is the difference in Python and Python3; I am thinking of trying to learn Python also.

StephenF
July 25th, 2010, 05:35 PM
What is the difference in Python and Python3; I am thinking of trying to learn Python also.
Besides the obvious print is now a function, so you can do say=print and use say instead throughout your program there is a new emphasis on lazy evaluation (http://en.wikipedia.org/wiki/Lazy_evaluation).

(3)zip is now the same as (2)itertools.izip.
(3)range is the same as (2)xrange and there is no xrange in 3.

If you actually need a list of range(x) it's as easy as list(range(x)).

nvteighen
July 25th, 2010, 07:50 PM
Ok, learn Python 3, but be aware that a lot of important modules haven't been ported (PyGtk, for instance...). Currently, the best versions to use are Python 2.6 o 2.7 (or 2.5 if you target Debian 5.0... but mind that Debian 6.0 will use 2.6 as default)