Ask HN: What coding challenge sites should I try next?
I'm learning PHP for a new position and tried using codewars and codefights. I'm not impressed by the UX with either of them, they're over gamified. The quality of Kata on codewars is not good (at least the easy stuff) and both are broken in random trivial places.
Can you offer suggestions on similar platforms that are less gamified, higher quality challenges, and more reliable?
66 comments
[ 2.2 ms ] story [ 138 ms ] threadGo to github, find a project that you find interesting and relevant to your position.
Take a look at the open bugs and try to fix some. Even if you don't feel comfortable sending a pull request you can learn a lot by going through the whole process on a real project.
Alternatively, take a look at the recent commits and what they fix...
https://github.com/topics/php
[1]: http://up-for-grabs.net/#/tags/PHP
I think this is unfortunate, irrational, and that contributing to Github projects would actually build your practical skills while adding some value to the universe.
But having spent more time working on coding challenges, algorithms and puzzles would have been more beneficial to my most recent several interviews.
Now what I'd be VERY interested in is an implementation of a list of "Like Project Euler, but for X" where X is all manner of things. WRT various values of X, I know there are periodic security challenges but nothing long term/permanently ongoing, I'd greatly enjoy being proven wrong. I'd be particularly personally and professionally interested in "Project Euler for HFT". How about "Project Euler for VLSI design"?
Yeah, yeah, If I want it, I should do it, and its true I probably could, other than the lack of infinite spare time.
Afterwards I'd just go make some standard 'mock projects' that require a bit more of software architecture. Such as building Game of Life, a twitter clone, a HN clone,..
Depending a bit on if I actually liked the language :-)
agree with cag_ii that you should just work on projects given that you're keen on PHP
Reviewing commits on github will be useful in understanding what contributing to mature projects looks like though.
I suggest trying Udemy, TutsPlus, or CodeSchool. Unfortunately, I can't recommend anything PHP-specific. Though if you're just getting started and aren't stuck with PHP, I recommend going with Django or Node instead. Udemy has excellent courses on Node(https://www.udemy.com/the-complete-nodejs-developer-course-2...), so if you're looking for the best place to learn webdev, I highly recommend going there.
Thanks for the recommendations though. I'm not necessarily stuck with PHP and would prefer to move towards Python if possible.
Starting out, I spent a few days in standard tutorials, then just started writing. As I implemented features, I'd research the standard Python idioms for doing various things. It might not work for every program, or for every learning style, but that script has been part of our build infrastructure for 2 years at this point, and maintenance for the last year and a half has mostly been limited to feature additions as our needs change.
https://pgexercises.com/ https://www.hackerrank.com/domains/sql
[0] https://adventofcode.com/ [1] https://challenge.synacor.com/
- compiler
- neural network
- graphics engine
- web server
- physics LP solver
- JIT compiler
- garbage collector
- memory controller
- operating system
Https://codegolf.io
This site has been mentioned on HN and reddit a few times.
Good if you are looking for sharp code, and perhaps to span languages.
https://programmingpraxis.com/
There's a pretty extensive collection of problems there now, and they span a variety of topics, from basic CS stuff (e.g., implement a stack or a binary tree), to cryptography, number theory, and trivia (e.g., write a quine, calculate the date of Easter, or solve a Sudoku puzzle). Note that the chronological list of exercises isn't up to date.
The cool thing is that some challenges are multiplayer, in the sense where you need to develop an AI for a given game, and then send your AI on a ladder to compete against other coders' AI.
https://code.google.com/codejam/
http://www.interviewbit.com - teaches you at the same time.
[1] https://www.hackerearth.com
They're one of the few which tests and teaches your code's performance. They're also very popular for hiring tests.
http://www.pythonchallenge.com/
If you could share with us what you could like to see, we can make it happen!
I wasn't a fan of the text adventure puzzle, but the rest is great.
They're really strong on language-agnostic testing with emphasis on CS concepts. That's great and typical, but they have the study material linked directly to each lesson. I've had great interview experiences through their platform.
(shameless plug warning) I liked it enough that when I went through Flatiron School, I made a Ruby gem to see their lessons in the command line. https://rubygems.org/gems/rubedility