4 ms·
I really like Haxe as a higher level typed language. My Nephew who is in his 20s has wanted to learn programming and he was able to go from "Hello World" to a d
by baldfat 9y ago
I really like Haxe as a higher level typed language. My Nephew who is in his 20s has wanted to learn programming and he was able to go from "Hello World" to a decent 2D game he was thinking about for a few years in a few months working off and on.
Now my preferred method would have been him learning Racket with Realm of Racket and then Haxe but he was still able to get things done. He used HaxeDevelop and pretty much used Haxe like a flash replacement with OpenFL.
Here are the popular Indie Games made with Haxe:
Papers Please
EvoLand
Dead Cells
Defenders Quest
A ton of Kids games
EA's Madden Mobile
https://haxe.org/use-cases/games/ https://haxe.org/use-cases/games/
- ido 9y agoWhy Racket? Having worked in the games industry for years (and as a programmer in other industries & hobby game dev before that) I've longed realised tools matter much more (especially for beginners) than languages - something like unity, godot or GameMaker are so much easier to get started with and you see results much faster.
- baldfat 9y agoRacket makes you a better programmer. Especially if someone goes through "How to Design Programs." John Carmack taught his 10 year old son Racket just for this same purpose. The whole system is great for teaching. You run DrRacket and you have an IDE that is geared towards beginner programmers and just have them code. https://www.itworld.com/article/2978142/development/why-john-carmack-thinks-racket-is-aces-for-beginning-programmers.html https://www.itworld.com/article/2978142/development/why-john...
- ido 9y agoI guess it really depends on the student's motivation (and age, most likely). My experience was that the biggest danger is not them learning the 'wrong' things but giving up in frustration a few weeks/months in after not getting anywhere. So it's paramount to get them on something that can achieve their goal (or something close to it) ASAP, so they get hooked on making cool stuff before getting frustrated and dropping off.
- yorwba 9y agoFrom the article linked upthread: “[Ryan] reacted very positively to the initial ‘intro to racket with pictures’,” Carmack wrote, “which was a contributing factor to settling on Racket. Java / C# work seemed to feel more like homework, but changing numbers and colors in the REPL had him smiling and excited.“ So Racket does seem to offer that kind of quick feedback.
- ido 9y agoYeah I can imagine it being better than straight-up java or c#, but I meant using a "batteries-included" kind of game engine. Anyway, to each their own!
- ZenoArrow 9y ago> "Racket makes you a better programmer." Any practical language that is sufficiently different from the ones you already know will make you a better programmer.
- baldfat 9y agoExcept Racket was from its foundation built to be a great teaching tool.
- ZenoArrow 9y agoScheme has it's roots in the classroom, that much is true, however that doesn't make what I stated previously any less true, nor does it automatically mean that Racket is a better vehicle for improving the code quality of its students over other languages outside a programmer's comfort zone. In other words, learning Racket can make you a better programmer, but so can learning Smalltalk, Forth, Coq, an assembly language, etc... All languages outside your comfort zone that are designed for practical purposes (i.e. not languages like Brainfk, Malbolge, etc...) are potentially rich sources of information. Putting Racket at the top of the pile doesn't seem appropriate.
- ido 9y agoAnd of course, the question needs to be asked if becoming the best programmer you can be is the actual goal? There are a lot of developers much more succesful than myself that have gotten their success using GameMaker and a good enough understanding of scripting it. It's not all about programming!
- chii 9y agoIf your goal was to make a working end product, then yes, it's not all about programming. But for somebody trying to learn programming, the other things like tools for building, packaging, and any other kind of polish is just a distraction. If you are learning math, using very long and arbitrary floating point numbers instead of nice, simple integers, would just add an extra level of cognitive overhead. But if you're building a house or bridge, the measurements needed rarely is nice, and real world issues overwhelms the simple model in a math question. But those are unimportant to learn until the simple stuff is learnt.