What Programming Languages And Topics Do You Want To Learn?

Started by
8 comments, last by Eelco 12 years, 2 months ago
Hi,

I'm working on a web-based educational environment for programming. I'd like it to be project-oriented, teaching not only the fundamentals of coding but ultimately how to design complete systems from end-to-end, and richly interactive. There are some sites out there attempting to do something similar, and people seems to like them so far. Codecademy is the most famous but there is also Code School and PlayMyCode is one with a game programming twist.

I wanted to ask beginners and veterans alike here what they would be interested in learning. What languages, frameworks, environments, or concepts would you like to see taught in a more richly interactive, community-based way?

Most of the existing sites focus on JavaScript, Ruby, and Python (in that order). My own project is currently being built to teach Ruby with a custom gaming API. In my own experience, a lot of beginners in the 14-26 age group are interested in games. Personally, I think games are a great introduction to many aspects of both coding and computer science. I have some reservations about using Ruby, because I personally dislike the language and don't think it is well-suited to game programming (I come from a C++ background), but there is a lot of interest in Ruby because of Rails. More importantly, to prototype my idea in a web-based environment, Ruby is easier to virtualize and deploy than C++.

Thoughts? How about industry demand for programming skills? What do you think is a relevant introduction to programming these days?
----Bart
Advertisement
I'm personally interested in Scheme. IMO, one of the few languages where the programmer focuses more on the concepts and not the syntax, keywords, and side effects. With that said, Code Hero seems to be very similar to what you are proposing. Have you checked it out?

Beginner in Game Development?  Read here. And read here.

 

Hi, Alpha_ProgDes. I'm familiar with Code Hero but last I looked at it, it was an FPS game that attempted to teach programming. Personally, I think too much game-ification is not the best way to go. What I'm hoping to do is build a platform that teaches people how to develop their own games, whatever they may be, that they can share with friends a la PlayMyCode. It will be built around lessons that first focus on the basic concepts and then how to use them to implement the various parts of a game. I'm designing it so that code samples can be traced, illustrating visually what is happening with each line of code. I think this will be particularly helpful in teaching data structures and algorithms.

TBH, I think JavaScript is more relevant than Ruby. To my knowledge, none of the learn-to-code sites do it properly, though. I'm not aware of any that have the capability to step through code, visualize what is happening to data structures, or even let the user see where there code is getting stuck. I'm hoping Ruby will still be attractive to beginners, though.

I'll have a look at Scheme. Is it deployed widely?
----Bart

I'm personally interested in Scheme. IMO, one of the few languages where the programmer focuses more on the concepts and not the syntax, keywords, and side effects. With that said, Code Hero seems to be very similar to what you are proposing. Have you checked it out?


lolwut? Programmers focus more on the concepts than syntax when they are sufficiently familiar with syntax that it is no longer a barrier. Are you suggesting that Scheme has a lower learning curve than Python, Ruby and Javascript?
Well I'm not going get into a language war. That's not the purpose of this thread. However, I will point out that he asked for an opinion and I did start my reason with "IMO". So to each his own.

@trzy: Scheme is just a dialect of Lisp and is used more often than not in academic environments. However, seeing that JS, Ruby, and Python are far more well-known and used much more in day-to-day programming, I think you should go with those, unless someone has another suggestion. I hope to see your project grow. It sounds extremely interesting.

Beginner in Game Development?  Read here. And read here.

 

Thanks. I will certainly post a link to a demo here once it's up and running. We have a long way to go, though. Maybe in a couple months :) In the meantime, keep the suggestions coming!
----Bart
I would vote for Javascript. It's a great language and can be very elegant once you start using it in a more functional way instead of trying to just shoehorn in OOP concepts. Even websites written in Python or Ruby cannot get away from Javascript for client side code. On top of that, Node.js is quickly gaining popularity (more watchers on github than Ruby on Rails).
I want to learn some web-based database language. As my spark for networked multiplayer games is growing, I realize I need to know how to access server data and store important information (like profiles) in some sort of appropriate manner.

So there's a "language" and a "topic" rolled in one. :)
I'm that imaginary number in the parabola of life.

I want to learn some web-based database language. As my spark for networked multiplayer games is growing, I realize I need to know how to access server data and store important information (like profiles) in some sort of appropriate manner.

So there's a "language" and a "topic" rolled in one. smile.png


Javascript to the rescue again! CouchDB and MongoDB are both document oriented databases which use JSON (or BSON) to store the documents and both use javascript for server side data manipulation. There are probably other document databases which utilize javascript but these are the two I'm most familiar with.

I actually just recently published a WP7 game with use tracking and online highscores writing to a node.js service which persists the data to mongodb. I plan on documenting the experience on my "blog". If there is any interest I'll let people know once it's up.
I wouldnt get too hung up on C++ being a 'better language'. C++ is a great tool to have as a game programmer, but an aweful first language I would say. I dont know Ruby, but if I were to do it all over again, I wish I had started in Python or similar. To a beginner, a decent toolchain, a language with sensible error messages, and direct feedback are much more important to get them going quickly than another C++ has to offer. Furthermore, python is a fine language in terms of sensible design; you feel you are wrestling with the issues at hand rather than the language (unlike imo Java or JS or many others).

This topic is closed to new replies.

Advertisement