Practice coding with fun programming challenges
21–30 of 47 posts
Re: Practice coding with fun programming challenges
#22Earlier quoted context omitted.
I feel like you could make a distinction between "making a AAA title game" vs. "modeling game logic in a terminal". There are a lot of great learning opportunities for building a game without a graphics layer / engine. A new developer trying to build a Tic Tac Toe game in the terminal will be exposed to some challenging but not impossible challenges that will have a wide scale application. Plus for many people, these…
I think this actually used to be easier. Back in the QBasic days, throwing some graphics up on the monitor was as easy as SCREEN 13, and then PSET, LINE, and CIRCLE away.
Re: Practice coding with fun programming challenges
#23I once had a student that was taking my Java 2 (OOP concepts) course and was using CodinGame for "fun".
If anything, I believe CodinGame's business model is more on the recruitment side, as their tournaments often offer interviews with the sponsors.
Re: Practice coding with fun programming challenges
#24I've always advised against being introduced to programming through game development. As much as game development is appealing and fun, the process is complicated and requires advanced knowledge of some fairly complicated algorithms even for fairly trivial games. Also you can find yourself spending hours shuffling sprites and designing levels which is time spent not learning programming. Also engines like Unity provi…
> Start slow, build your foundation, learn your bits and bytes,
> data structures and sorting algorithms first then venture out.
Maybe that works if you've already convinced yourself that you're going to learn to program no matter what. That certainly wasn't me, though.In my experience, the challenge for beginners is that they lose interest and make no progress at all, not that they take some suboptimal path.
It's like picking up a guitar. You can come up with the Perfect Five-Year Roadmap and preach about how someone should first learn music theory and proper form before taking a crack at it. But for most people, that's dull and they'd never learn guitar if they had to do that before jumping in and just trying.
I think beginners should optimize for doing anything at all, and nothing should be advised against as a suboptimal route. The optimal route is the one that compels them, even if it amounts to faking it til they make it with a game framework and devoting 75% of their time to things completely unrelated to programming.
Sorting algorithms? Bits and bytes? Seriously? I started dozing off during that sentence and I've been programming in some form for at least 10 years. That's not how you're going to woo most people into programming.
Re: Practice coding with fun programming challenges
#25Earlier quoted context omitted.
I feel like you could make a distinction between "making a AAA title game" vs. "modeling game logic in a terminal". There are a lot of great learning opportunities for building a game without a graphics layer / engine. A new developer trying to build a Tic Tac Toe game in the terminal will be exposed to some challenging but not impossible challenges that will have a wide scale application. Plus for many people, these…
I think this actually used to be easier. Back in the QBasic days, throwing some graphics up on the monitor was as easy as SCREEN 13, and then PSET, LINE, and CIRCLE away.
Racket is also good for this [1,2]:
#lang slideshow
(circle 10)
or in 3d: #lang racket
(require pict3d)
(sphere origin 1/2)
I have been in a time vortex playing with Raylib [3], a C-based game environment that is cross platform, easy to setup and comes with plenty of examples. I have modified the included game examples, and created a Windows .exe, an Android apk, and a web-based version (via Emscripten) with no hassles.Disclaimer: I am not a gamer, but the area of games brings a lot of the things I am interested in to study. I am also interested in NetLogo for simulations and the subject of 'serious games', or 'applied games', which are not a bash on recreational gaming, but a name for games used in things like civic planning, scientific exploration, or basically simulations vs. entertainment.
I am now onto putting some long-forgotten knowledge to use again in reimplementing AI search algorithms, sorting and data structures. It is motivating. Raylib is a pretty simple, yet functional setup for me.
[1] https://docs.racket-lang.org/pict/
Re: Practice coding with fun programming challenges
#26I've always advised against being introduced to programming through game development. As much as game development is appealing and fun, the process is complicated and requires advanced knowledge of some fairly complicated algorithms even for fairly trivial games. Also you can find yourself spending hours shuffling sprites and designing levels which is time spent not learning programming. Also engines like Unity provi…
> Start slow, build your foundation, learn your bits and bytes, > data structures and sorting algorithms first then venture out. Maybe that works if you've already convinced yourself that you're going to learn to program no matter what. That certainly wasn't me, though. In my experience, the challenge for beginners is that they lose interest and make no progress at all, not that they take some suboptimal path. It's l…
Oh come on now. That's hardly the same thing as suggesting someone could put in a few hours with a decent resource and see where they get without needing it to be in game format, for goodness sake.
Re: Practice coding with fun programming challenges
#27Earlier quoted context omitted.
I feel like you could make a distinction between "making a AAA title game" vs. "modeling game logic in a terminal". There are a lot of great learning opportunities for building a game without a graphics layer / engine. A new developer trying to build a Tic Tac Toe game in the terminal will be exposed to some challenging but not impossible challenges that will have a wide scale application. Plus for many people, these…
I think this actually used to be easier. Back in the QBasic days, throwing some graphics up on the monitor was as easy as SCREEN 13, and then PSET, LINE, and CIRCLE away.
Re: Practice coding with fun programming challenges
#28"getting noticed" ? As an indie game dev, I really don't make sense of that one.
I'm trying to figure out why this site exists, what their business model is, and what they're hoping to accomplish. There's no pricing data available anywhere that I can tell, but it's obviously a company. I'll comb over it in more detail when I'm not at work.
Re: Practice coding with fun programming challenges
#29This is by far the best-done "trick you into learning how to code" onboarding experience I've been exposed to. (I've tried many because I want to get some friends interested in coding)
* Note that I'm a CodinGame employee, so my answer might be biased.
Thanks for the feedback :) It's really appreciated. Coding with friends is always more fun than learning to code alone, and if you want to onboard your friends onto programming, maybe you can also take a look at our "Clash of Code" category.
https://www.codingame.com/multiplayer/clashofcode
These are short coding "battles", from 5 to 10mins, where you can challenge your friends in small coding exercises (filter prime numbers, find how many ones there are in a binary representation, that sort of things). You can create private clashes and play together with your friends
Re: Practice coding with fun programming challenges
#30I've always advised against being introduced to programming through game development. As much as game development is appealing and fun, the process is complicated and requires advanced knowledge of some fairly complicated algorithms even for fairly trivial games. Also you can find yourself spending hours shuffling sprites and designing levels which is time spent not learning programming. Also engines like Unity provi…