We really should be trying to get more people interested in Crystal by way of contests. Contests provide a fun and competitive environment and can make some really cool things.
A couple of contest ideas.
- Game Dev contest (using raylib or sfml)
- Crack me contest (write a crackme using Crystal)
- Programmed music contest (people write music in a program using alsa or sunvox or something)
- AI/ML contest
What do you guys think? It could really help Crystal gain more traction.
I’ll definitely take part in a gamedev contest, but without Windows support it would be pretty sad story. I can’t even run my own game on my own pc with another linux distro, without installing all development libraries and compiling from source voidsfml and a game itself. So I can’t even hope that someone not familiar with crystal will play it.
AI/ML - well, maybe, i don’t have much experience in it but i’m not sure about libraries - if many people would say “i can do this in 5 minutes in python with tensorflow but your bindings are so missing\incomplete and i spent 5 days to just fail” the overall effect on language reputation could be negative not positive.
That’s also what I fear. If people are trying to do simple stuff that isn’t currently well supported, it could be risky for the reputation.
I personally prefer to present something that’s already developed using some simple libraries, like a simple game, and telling why it was simple to code.
Then, maybe, when the tools are sufficient, going for a game-dev.
I 100% agree.
To add, I’m surprised there are not more apps with Godot + Crystal for the backend. For example, in my TCP Script example, the communication between Godot and Crystal intertwines beautifully. It’s so damn nice. This is a great foundation to build anything you want. It’s all there!
Godot has a great UI system and is NOT only for games. This is one misconception I see everywhere and it hurts. It’s lightweight and can be exported to basically all mainstream platforms.
Don’t be afraid to use Godot and Crystal together. There is so much potential and I feel like I’m casting pearls before swine.
I wanted to try to do some stuff with sfml but I couldn’t get the dependencies in Ubuntu 19.04 to work. I’ll give raylib a look. I’m working on revamping the awkward language for DragonRuby right now so it’s a good time for me to play around with game engines. I’ll look at Godot too. Thank you!
IMO SFML is great but RayLib is really good for a basic XNA style engine. Godot is a good choice because it’s pretty much 100% complete and has a huge variety of uses. Raylib is good if you want the simpliest dependency install.
FWIW, starting in November, I’m using Crystal to solve Kaggle’s annual Santa competition. Every year, these are usually combinatorial optimization problems, packing boxes into a sleigh, route optimization, this year it’s scheduling with certain constraints. Most participants use Python, Julia, R, Tensorflow, or whatever else is handy. If someone could use Crystal and win one of the top three places (prize $$$!) or persist near the top of the leaderboard, that could get people curious about Crystal.