GML What programming language is best after GML?

M

Mobie

Guest
I'm a teacher who want's to increase his value to school districts so I want to learn another language, now that I'm pretty good with basic GML. What would be a good language to follow GML with? Python, JavaScript, C, Java, or what? What would be a good one to teach to children and teenagers? I already teach a GameMaker class, and kids love it.

Someone said that Python follows GML easily. T/F? I have no intention of becoming a developer in the new language; just want to be good enough to teach introductory lessons to kids.
 
Last edited by a moderator:

Paskaler

Member
In my opinion Python is the easiest one to pickup out of those you listed. JavaScript is good for it's similiarity to GML. Do note, most of the languages(including the ones you listed), are more expressive than GML, so there'll be a learning curve to adapt to a new style of coding and the different paradigms(eg. Object Oriented Programming).
 
J

JFitch

Guest
I started learning Java so I could program Android apps in Android Studio.
 
M

Mobie

Guest
I started learning Java so I could program Android apps in Android Studio.
Yeah, maybe Java is the next logical step. Someone was telling me that Java is declining in favor of other languages, but I don't know if it's true.
 
S

Sam (Deleted User)

Guest
C++ is the most fun I've had out of the languages apart from GML. But Visual Basic is by far the easiest language I can think of that is for general programming and not necessarily game development.
 
H

hunijkah

Guest
I went from GML to web languages, I found it the best switch because of the ease of getting something on the screen to see after writing some code.

Look into HTML (for the structure of the website), CSS ( for the styling of the website) and PHP ( for the logic on the website)

HTML and CSS are very easy to get into.

PHP is loosely written (meaning you can set a variable like so $name = "Daniel"; and then easily change it's type to a number with $name = 38;

In strongly written languages you would have to declare that
var name: String;
and if you change it's type you'll get an error. Better for ensuring good code is written but annoying to get the hang of. If you're just looking for fun projects to teach the kids to get them into programming, have them build their own website!
 

samspade

Member
I'm a teacher who want's to increase his value to school districts so I want to learn another language, now that I'm pretty good with basic GML. What would be a good language to follow GML with? Python, JavaScript, C, Java, or what? What would be a good one to teach to children and teenagers? I already teach a GameMaker class, and kids love it.

Someone said that Python follows GML easily. T/F? I have no intention of becoming a developer in the new language.
If you want to keep learning unique languages geared towards easy learning, I would recommend Processing and Processing.js. They are re-skins of java and java script that were designed to be a simple and easy to use programming language for art students (or something like that).

Additionally, I like it as the coding train channel on YouTube is one of the most understandable and approachable channels out there for programming and learning it helped me a lot with GML.
 

sylvain_l

Member
What would be a good one to teach to children and teenagers?
you'll have to define "good one"^^ and also what will "increase your value to school districts", because it's quite vague for me.

I think it's great that kids/teenagers today have to study at least one programming language at school.

But honestly the value of having kids/teenagers to follow 2, 3 or more introductory courses of one semester/year to XXX programming langage during their school years is low. Because each time your are only going to go through the basics; A good part being lost in learning the new tools for the new langage (the specific IDE, etc...) and relearning certainly a good part that are similar (part of code structure, keywords) but learning also the subtle difference (like stronger type, to concanate string in one language you use + while another use . or thing like that...).

Better teach good programming: which means go beyond the "do that" and just learn some basic keyword.
Programming is more about getting a problem, being able to define it and getting creative to solve it.
there is a lot to cover with algorithmic, patterns, etc... being able to analyse use case and what are the limit of a solution.


(funny speaking of introduction to programming, I just recently watch a doc where teenagers where having an introduction to programming with a very old fashion way: with perfored card to mechanlly program the pattern of a kinda old textille machinery. )
 
L

Leschge

Guest
I think Java is a good choice. The main reason why I would choose it is it's wide span of use and flexibility. You can almost do anything with it and it runs on so many platforms. From programming a simple mobile app to a complex server. If you are focusing on stuff like that it's a good way, specially if you are going to learn languages that mostly handle storage operations like PHP or SQL. From my experience it may not be simple to learn it at first but C or any other language won't be that easy as well or even harder. If you are focusing more on programming games or micro controller apps I would go with C. I sometimes have the feel that C# would have been the better choice to be able to use other engines like Unity or Unreal.
 
M

maratae

Guest
I went from GML to C#.
I actually started understanding GML much better after learning C#.
 
I personally was taught C++ first (before learning GML at all). I've done some of several languages, and C++ is my favorite. However, I can't really comment, because though I technically know both C++ and Java, plus an assortment of others, my primary language is still GML, and I can't speak with authority on any others.

For learning, you could consider doing projects with micro-controllers, like Arduino. Connect those with bread-boards and you can teach basic electrical circuits too, integrated right into the programming. Build little temperature sensors or program blinking LEDs. The Arduino programming engine is really easy to use, and there are also tons of libraries so that you could use many other languages or engines if you wanted. Plus, there's tons of curriculum already. That's a really fun way to program (and wire) something that has practical value and real world, tangible results. It's very different from programming games.
 
R

rpsrosario

Guest
If your intent is on keep teaching kids then I would definitely recommend Python. Although not a big fan of the language there is no denying it is a powerful language that is quite easy to pick up (heck, I've never used it much / had much training in it but I am writing a microservice in it by just looking at some source examples, how they are structured, what packages they use, etc). There is also the upside that Python is a language that I find is in wide use professionally as well, so it could be beneficial for an audience other than kids as well.

Now, if you don't intend on teaching a more general programming language but something more focused on creating artistic stuff / some interesting side projects, then I would recommend Processing (as previously mentioned). I have learned it as part of a really small project in university and it is also relatively easy to pickup, with the advantage that it translates easily into Java if someone wants to then follow that road and the advantage that you can easily get visual feedback of what is being developed. I remember some projects we had to get acquainted with it was for example to draw the University's logo (at first) but by the end we were doing simple simulations like a visual representation of the Brownian Motion.

Concerning your comment about Python following GML... I personally disagree. Not only is the scope entirely different but the syntax rules are also entirely different (e.g. Python is indentation-based while GML follows more the C convention of having blocks of code denoted by curly braces).
 
L

Lithalean

Guest
Javascript, HTML, & CSS
In my opinion the most versatile and most useful. Teach your students how to build, and then host their own static websites through GitHub, or Amazon S3.
Teach them about stuff like Bootstrap (a free and open-source front-end library for designing websites and web applications).
Then your students can share those websites with their family / peers. They could develop an online journal/blog or a portfolio to show off the stuff they are working on, be it games, art, music etc.
You could then teach them how to make those websites mobile friendly and then use technologies like Ionic (a complete open-source SDK for hybrid mobile app development).
Or even build full desktop apps with Node.js
 
Last edited by a moderator:
Top