This forum is in permanent archive mode. Our new active community can be found here.

What is the best computer language for a hobbyist to learn?

edited February 2008 in Everything Else
If a person will never get paid to program in his life, but loves computers, what programming language would be good for this person to learn? The logical question in response is: "What do you want to do?" I guess my response would be "cool stuff." The only application I thought of was something that would let me back up my free word press or go out and get data on the internet based on a search term and automatically download it. What language is best for the hobbyist?

Comments

  • I'm still working on understanding linux, and still have to follow guides on a lot of the stuff, but from what I've seen isn't a lot of the scripts, and programs written in python? (You do use linux right?) So I'd assume that that would be best, right?
  • In my opinion, C++. Why you might ask, but you can't make real games in anything but.

    The answer is learn programming concepts and then apply them to whatever language suits your needs for that project the best.

    However, don't learn programming for doing cool stuff. That's reason I learned linux. Linux is neat, but when my linux hd died and I went back to windows I realized I wasn't using any of linux's abilities other than the spinny desktop cube, basically wasting my time.
  • This one is "fun"
  • Shell scripting, particularly if you use something Unix-based (Linux or OS X) - you can use it to link together many smaller programs to automate whatever your common tasks are. The shell you use is probably bash, so look into its syntax.

    Python is another good choice, as it is fairly clean and easy-to-read, and can be used for all the same tasks as shell scripting.
  • This one is "fun"
    I remember getting bored one summer and writing "Hello, world" in that.
  • edited February 2008
    I have a co-worker that lives in Emacs and swears by TCL/TK. He has been writing applications for our company for 20 years. He's written in C, Fortran, Lisp, Cobal, Perl, Java and others. I've only dabbled in TCL, and Python, he says it doesn't really matter where you start, just learn the concepts of programming. Once you understand how to write a program then you just have to pickup the syntax for the language you need/want to use.

    Looking around the Open Source community right now Python seems to be a good place to start. I don't think TCL/TK would be more difficult to learn, I just think there are more Python resources out there right now. I started with a book on design, now I'm working through a book on Object Oriented concepts, when I'm done with that I'm going to pick a simple project and write it in Python.

    I don't know that scripting counts as programming. I've been working with HTML, CSS, Javascript, and ColdFusion for the last couple years and I wouldn't call that "programming". VBScript, JavaScript, Bash scripts are useful tools, but not applications.

    Finally if you need an editor beyond what gedit, or notepad, Eclipse is a free, Open Source, Cross Platform IDE that will work with almost any language out there. My co-worker keeps pushing me to use Emacs, unfortunately its learning curve makes Dwarf Fortress look like Bejeweled.
    Post edited by am_dragon on
  • If you really want to learn programing ,and not just scripting I have to say C#. Making "cool stuff" is super easy, all off the graphical stuff is made in a drag and drop, WYSIWYG way, Also it is a very powerful and useful language, that if and when you really want to dive in to it, it will help you learn all the principles of object oriented programming.



    (totally out of topic) is it spelled programing, or programming? Spell check accepts both, WTF?
  • Take from an programming veteran (or at least, I think he is a programming veteran):Python

    Also:
    Shell scripting, particularly if you use something Unix-based (Linux or OS X) - you can use it to link together many smaller programs to automate whatever your common tasks are. The shell you use is probably bash, so look into its syntax.

    Python is another good choice, as it is fairly clean and easy-to-read, and can be used for all the same tasks as shell scripting.
  • Python is pretty easy to learn when you are starting out. That is what they usually start us out on here at my school. Then you can progress to Java, which is quite similar (well, they are almost all similar to me, anyway). Check out Processing. You can do all kinds of crazy neat graphical things with it. There are many other options out there, but I'm just hooked on this one because I'm currently using it in my computer graphics classes. Just look at the demos on the website- it's pretty cool.
  • Yeah, if you want to do "cool stuff" Python is not a bad way to go. It has its problems, but it can be used for shell scripting purposes, web development purposes, and old fashioned application development purposes. There are also tons of modules for it. The major problem I have with python is that sometimes there is no module available, or no adequate module, to do what I want.

    Here is where to get started.
Sign In or Register to comment.