I just switched to Haxe two weeks ago and the kick start was OpenFL because of my AS3 and Flash API background, but after digging more targets i found out that there are very low number of resources out there and most of them are two to three years old in terms of tutorials books, blogs etc. for example i tried Haxe Php haxephp and get to know that the good guy who manage to wrote the series is no longer using the target and those tutorials are getting no upgrades, mean while Haxe is getting mature but those tutorials arenāt reflecting the new apis. same thing with most of the libraries are just sitting in github without any proper readme file. And i think this can be a reason Haxe is getting low visibility i didnāt even know that Haxe can output php, how come i use it. one more thing i noticed is that old.haxe have good amount of material regarding tutorials and usages but it is not coming up in google searches that much.
please ignore my English mistakes as i am not a native English speaker. thanks
I donāt know, Haxe has very extensive and up-to-date manual on the official website, as well as generated standard API documentation and the Cookbook is often updated with new mini-articles.
But yeah, more quality content in the format of tutorials would be very welcome.
Speaking of tutorials, whatās the status on the Haxe MOOC? It sounds interesting but I donāt think Iāve seen anything since it was originally announced.
+1 from meā¦
I think that now a days developers expect to a lot of "how to"s and get started thoroughly tutorials, and IMHO here we as a community not doing good.
Haxe, as of now, requires a lot of effort and motivation to really get into. Yes, you can get some basic program working quickly, but then you wouldnāt be using the true power of the language without truly understanding the typing system, structural sub-typing, unification, macros and specially how all of this maps to a productive workflow. So people often fallback to languages / toolchains that have a lower barrier of entry.
Iāve been lurking around for years, and only recently started using Haxe for a couple of projects of mine, and there are many things that Iām still grasping, gradually - stuff thatās not obvious and not well documented - the myriad [compiler] meta tags, for example. Itās not easy to choose between Ruby (Rails) vs Haxe when the reason youāre using Haxe is because you prefer the language. Business constraints and scarce resources and lack of time calls for better supported stacks, unfortunately. However, Iām betting in it, but thatās why it requires some pretty strong motivation.
Luckily the community - albeit small - is very beginner friendly and thereās always some good soul to help, and Iām specially grateful to @nadako, @back2dos and @kevinresol, which have been helping me a lot lately.
Weāre in a much better state now than years ago when the old wiki/site was still up though, and itās getting better. I guess itās up to use to contribute as well, if weāre able to.
That being said, yes, Iād love to see more Haxe books. Iām in no position to write a Haxe book at this point, but @back2dos, Iād buy an Haxe book from you right away - and there are many subjects to get into - Haxe in general, metaprogramming (macros) Haxe for the web (much needed topic to more widely covered), etc.
This is a good point. Rust is similar in that it is a difficult language to get into, but so far it seems like the community is helpful and growing quickly. I wonder if thereās anything about their approach that we could learn from? (Of course, Rust is different because itās premise is to make a safer language for systems programming, as opposed to Haxe where the premise is to reduce code duplication)
A new topic might be good to keep everyone in the spirit of spit balling tutorial ideas vs discussing if its a problem. Even if anyone disagrees about the state of Haxe tutorials, there is no one that doesnāt have an idea for something else theyād love to use Haxe for.
I think in the end we just need to come up with a list of topics for cook book articles to make that part of the haxe page something to behold. The current ones have been fantastic and Iād love to see even more of them!
The first obstacle to learning Haxe is the temptation to try and learn everything about the language. Honestly, I used Haxe for years without understanding all its features, and that was before new features were added. Thereās a subset of Haxe thatās needed for most everyday use. Thatās something tutorials and lessons may be able to help with (helping you know what you need to know). When you walk into a Loweās, Home Depot or other large hardware store, who tries to understand every tool in the store? That idea makes the learning curve seem more daunting.
The second biggest obstacle (other than not having more big names behind the language) is the sheer scope of what may be accomplished with Haxe. Think of it, you make a ā2D platformer game engine JSā and you know have a very well defined set of tutorials and use cases to meet. Each new developer is on the same platform, running in a similar environment, trying to accomplish similar goals, so the language + framework result in a very natural focus of the community.
Languages themselves are obviously broader than frameworks, but generally speaking, you take a language such as PHP, and you can assume everyone is attempting to use MySQL, implement mem-caching and other problems you naturally work to solve in a certain environment.
C and C++ are much broader, but still (normally) do not run in a web environment, so thereās still some limits to the scope. However, despite the huge success of these languages, I do not find there are many great resources for learning them. C++ and OpenGL, sometimes it feels like you are just assumed to understand already.
For this reason, Haxe is sometimes best learned if certain assumptions are made about who you are, and what you are trying to accomplish. We should have better learning resources at the OpenFL level, for example
Makes me wonder if the best thing wouldnāt be a āget started guideā for some of the less utilized use cases of haxe. The web use cases are probably the first thing I think of as being a major reason to try haxe in the first place (having server and client code shared), but writing server code isnāt something we have as much to offer in terms of tutorials as we do game development.
A boat load of documentation would be pointless at this point, but we could certainly use a couple examples of getting started with a web server or command-line tools.
Web Server/Client is definitely one of the items I was considering. Iām thinking of creating a tutorial for making a simple TODO app with tink_web that is backed by some sort of database. I think that would be a decent overview of building a website with haxe (but it might also be too much work for me to handle).
I agree, I think the Target Details is way too short. Itās mostly for externs (which is great) but is missing more concrete use case. For example, in php/js a āsimpleā CMS made with Haxe.
At the moment, we juste have a: hey you can code everything with Haxe, it exports to the correct platform! But since you might not be very familiar with this platform, you will start to learn more from it reading its original language. And Haxe will only be a barrier somehow.
If anyone wants to make tutorials / series, I invite you to write it on code.haxe.org. It is meant to be community driven and is free to access. Contribution is easy, just edit markdown files on Github. It also contains lot of beginner topics. As for target specific documentation, we need help on that too. The problem with documentation is that you never have enough
I am working on several aspects for Haxe documentation for while now, I can confirm it can be the strength of the community, but since Haxe community is relative small its hard. All docs and tools are open source and easy to edit but seems not attractive enough, otherwise this post wouldnāt be created
But like I said, everyone is welcome to contribute topics/articles/api docs/target details/snippets etc etc! Id love to help getting it online!
I recently started learning Go and I found their āTourā to be excellent, Haxe should try and do something similar. I literally got most of the language figured out in a matter of hours.
The good thing about the tour was how easy it was it pick up the basics of the language and then nuances, all while you have live samples running where you can play and make adjustments.
Check it out here: A Tour of Go - Step through the āWelcomeā, then directly into the first lesson.