Jump to content
  • Advertisement
Sign in to follow this  
ssartera

another beginner needs your help:)

This topic is 4132 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

hi i really want to learn programming,so i thought it's better to ask from experts first. sorry if it's not very much related to game development but i believe you can help me alot. i want to know which programming language is better for me(where should i start)? i prefer to learn a language of future.i mean something useful fo now and future, and that includes internet-aware programs(if i'm not wrong).to make it more clear, i don't mean a program to solely write server-based apps.i mean a proper language to learn just as a base, so in the future i can learn to write both a platform-based app(i do'nt know what it's called) and apps for internet(server-side).i want to be able to write some commercial programs(something worth to pay for) so i think i would aim for windows(please tell me if i'm wrong).i want to write apps with good performance(some apps written in java use lots of cpu on my sysem).i also want to write an app for example a very simple firewall in a reasonable time.by that i mean a trade-off between the time i spend on learning and coding, and the quality of the programs.if you know several languages capable of doing above please prioritize them and if you like tell me why you like them. thank you very much.

Share this post


Link to post
Share on other sites
Advertisement
Python is an excellent language for new programmers.

Don't buy into the notion that you need to learn one language that will be your Swiss Army knife for now and all time. You will learn many languages in your career as a programmer and each will be a tool well-suited to a particular set of needs.

I recommend Python primarily because it is straightforward to pick up for a beginner, has a wealth of excellent getting started material right there on the page, has a simple-to-setup toolset, and (basically) lets you get results quicker than you might with some other languages and toolchains. It is also a very powerful language with good "sticking power" as far being able to be used to make complex applications; it grows with new programmers very well.

Python can be used to make all the applications you listed, but it won't unnecessarily be the best tool for any particular one. However, the skill to make those applications is by and large beyond you at this point, and so you should focus on what you can achieve - learning the fundamentals - first.

Share this post


Link to post
Share on other sites
If you are looking for something relatively easy to learn, Windows based and capable of producing software quickly I would heartily recommend C#. There are enough tutorials and examples to get you started pretty quickly. The whole .NET framework allows you to create the building blocks of software pretty quickly.

HOWEVER, if you want to be a proper programmer you should really learn how a computer works, how it handles memory, how the components of a computer and OS work together. Then you should learn something pretty low level like C++, learning as much as you can about program structure, logic, flow control etc.. This will give you a good grounding for any kind of programming, and when a new language comes along you will pick it up easily because you will have that foundation.

Just my 2p.

Share this post


Link to post
Share on other sites
A good programmer will have many different languages at their command. With practice, once you learn good programming, you will probably be able to pick up a new language in a matter of weeks or even days. You already seem to realize that there are many different languages and that some are better suited for some tasks than others. I suggest you choose a 'simple' language that allows you to get results immediately and then branch out from there to learn other languages. A good path might be Python -> C# -> C++ -> Other. You could also learn a functional language such as LISP, or perhaps Java.

With python you can type code in and IMMEDIATELY see results. Along with a simple syntax you can learn fundamentals of programming immediately. From there, C# will lead you into Microsoft's .NET technology which is gaining huge momentum all over the place. It will also prepare you for the next language in this 'path': C++. Because C# is based on C++ it will allow you to easily transition to a lower-level programming language such as C++. See, the problem with C++ is that it's a beast. If you can tame it you'll be lethal, but being a beast it is hard to get it to obey your will. And even if you think you have it down, it still has a mind of its own and will bite you if you let your guard down. Other languages that may interest you someday are LISP/Haskell/ML, functional languages. These operate vastly different from OO and Procedural languages. Many people who have used them say they changed the way they thought about programming. And of course there are many more you can study once you gain a better foundation.

Trust me, if you learn 'programming' then you won't need to worry about 'future languages' because you'll be able to pick them up almost instantly. That's my 2 cents.

Share this post


Link to post
Share on other sites
wow!
that sounds a bit frightening!
it seems i've got alot of work to do.
please tell me what you think about:vb-> c#-> c++ -> other
thanks

Share this post


Link to post
Share on other sites
Your first language really does not matter that much. Most programmers do not primarily use the language they first learned. I think you really should just pick one up and start writing code - it's the only way to learn.

That said, I feel you will be marginally better off with a higher level language than a lower level one. So I'd reccommend pretty much anything except C or C++ to start with [smile]

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!