Ask HN: Projects for learning a language?
51–60 of 61 posts
Re: Ask HN: Projects for learning a language?
#52Re: Ask HN: Projects for learning a language?
#53I don't know if I would recommend it, but I've noticed that in the past, whenever I moved to a different type of computer/OS (Amiga, MS-DOS, Windows, etc.) or language (Java, Javascript, etc.), I ported my biorhythm program to the new system/language. It starts out simple - just strings, math, file/screen input/output, then progresses to graphical plotting of the biorhythm curves. It's a simple algorithm. Disclaimer,…
Mine was sunrise/sunset and phases of the moon. And more graphical: planet orbits, watching for alignments.
Re: Ask HN: Projects for learning a language?
#54I don't always release it publicly, but it's a 'solved' program that I don't have to spend time reworking how the core of it works (needs a hex grid with number tiles, mouse or keyboard input, a menu system, computer opponents, etc), although I might rework some things or add new features to it.
I've done this to learn C# (and XNA), Java (and J2ME), Objective-C (and OpenGL ES), Swift (and SpriteKit), and LUA (with Pico-8).
I've also made versions in Python (text console), for Kindle, and the original was in Flash, but I knew the tech ahead of time.
I recommend it. Can be anything relatively simple. Make a blackjack game, a version of tetris, a Todo app, a Sudoku solver, a web service, whatever seems interesting to you.
Re: Ask HN: Projects for learning a language?
#55It gives you an idea of what the language can do and how to handle network connections with it.
Re: Ask HN: Projects for learning a language?
#56For learning Rust I just picked a random, reasonably sized C++ project and spent a few weeks porting it to Rust. Was more than enough to get a grip on the core language features and tools and start receiving interview offers for a Rust position (though I ultimately decided to stay on the JVM track). The project was a face detection library: https://github.com/atomashpolskiy/rustface
Re: Ask HN: Projects for learning a language?
#57For learning Rust I just picked a random, reasonably sized C++ project and spent a few weeks porting it to Rust. Was more than enough to get a grip on the core language features and tools and start receiving interview offers for a Rust position (though I ultimately decided to stay on the JVM track). The project was a face detection library: https://github.com/atomashpolskiy/rustface
Can you talk more about how you evaluated career options for rust vs jvm and what kept you on the latter?
I also would not want to program in Rust for 100% of the time. It's a great tool to have for certain mission-critical types/parts of software where the cost of a mistake is high, but it also can be very frustrating to work with, at least until you become proficient with the idiomatic ways to structure programs and code in Rust. And even then I would not pick it for R&D type of work for instance, where you have to experiment and refactor a lot. Borrow checker is something you have to keep in mind at all times, and as I said already it can be extremely frustrating when you simultaneously have to think about design, execution logic and performance. Doubly so when the parts you're working on are not going to be concurrent in any foreseeable future.
OTOH, I can see how coding something well-defined and to the spec can be rewarding and less expensive in the long run with Rust.
Re: Ask HN: Projects for learning a language?
#58I made a Flash game way back in 2004 called Proximity[1] that was fairly popular. Whenever I want to learn a new language/platform, I tend to port a new version of that game to that language. I don't always release it publicly, but it's a 'solved' program that I don't have to spend time reworking how the core of it works (needs a hex grid with number tiles, mouse or keyboard input, a menu system, computer opponents,…
Re: Ask HN: Projects for learning a language?
#59I made a Flash game way back in 2004 called Proximity[1] that was fairly popular. Whenever I want to learn a new language/platform, I tend to port a new version of that game to that language. I don't always release it publicly, but it's a 'solved' program that I don't have to spend time reworking how the core of it works (needs a hex grid with number tiles, mouse or keyboard input, a menu system, computer opponents,…
Hey, cool game! It's rare for me to like new games (new for me, of course), but I like your's and been playing it for the last couple of hours..
Trying to figure out a way so potentially hundreds of viewers on Twitch can play along with a Twitch streamer, essentially joining a team and voting for where to place their tile, or just play like normal. Had to take a break working on it recently (job hunting), but I hope to jump back into it after I get settled at a new job.
I need to do a newer update video (you can play a full game now, more focused on adding menus and streamer support right now), but you can see kind of what I'm doing with the third game here, if you're curious. There's videos of Proximity 2 in action on my channel as well:
Re: Ask HN: Projects for learning a language?
#60Build something that solves a problem you have right now. Even if it's a trivial problem and nobody else will be able to use the solution except you. That forces you to think real world usability etc
I see this recommendation rather often, but it's rather unhelpful. I certainly can't think of any such problem that I have.