Learn C/C++ for Film and Games on GitHub

Hi all,

Me and a few friends have set-up a small GitHub organisation for developers interested in taking a plunge into C/C++, specifically for the film and games industry, to complement our higher-level knowledge in pipeline research and development using languages such as Python and Lua.

The idea is to learn by example and complete small tasks, one at a time, together on-line and document our progress in GitHub issues, wikis and chat rooms.

The details have yet to be worked out, like from which level we’re assuming to start out from but spontaneously I’d imagine us going from a basic understanding of scripting, but no prior experience in any compiled language, to eventually end up being able to produce useful software - e.g. real-time geometry, animation or rendering technology in C++, Qt and OpenGL and to potentially decipher Siggraph papers into useful end-products, before they end up in major DCCs.

If you’re interested, post your GitHub username here so we can add you, join the conversation on Gitter and let’s get started.

https://gitter.im/learnclang/general

Best,
Marcus

Is it okay to join in for people that have already plunged? As a complete auto didact even after quite some ventures i feel there are shitloads to learn left heh.

If so, my github username is the same as here.

Cheers,
Thorsten

Certainly. Added.

Will take a look tonight when the little one is asleep. One quick thing though, the name may be a bit misleading as clang is a compiler front-end for llvm. In fact it is not even limited to c/c++ :wink: Seriously thought his may lead to people thinking this is about clang. Probably not really an issue though.

Cheers,
Thorsten

Good point.

LearnC was already taken, but I’m in the progress of seeing whether or not we can claim it in which case we can switch, should be seamless.

lubiteltv is my username. thanks for the initiative…

And we are off!

We seem to be around 10 interested developers ready to plunge into C/C++ and we are right now in the process of summarising the initial act of compiling your first program in the form of tutorials, here:

The way it works at the moment is:

  1. There is a repository on GitHub called “current” which, unsurprisingly, represents the currently running project
  2. In here, we’ll collaborate on source code and document our findings and make a step-by-step tutorial on each subject
  3. Once complete, the current repository will be renamed and archived, most likely into 1-helloworld
  4. From here, a new “current” repository is created and the process is repeated, with a more complex project each time

If you’re new to compiled languages, I would suggest jumping in right away and follow along to learn as much as possible about how things work as there is lots of chatter going on about how things work, like about the difference between compiling and linking and how pre-processors work. Don’t be scared to say hello in the chat, that’s what it’s here for. :slight_smile:

If you’ve already got experience with a compiled language and feel that the current level is much too low, do feel free to jump in at a level most comfortable to you.

As each project gets thoroughly documented, you should also be able to catch up on any progress at any time, however you will lose the ability to join the chatter.

See you soon!

Best,
Marcus

@lubitel You’re very welcome. I’ve added you, welcome aboard!

@lubitel Here’s some resources for you to get started with us.

We’ll update this with relevant information as time goes on, at the moment, the primary incentive is to head on to the chat and say hello!
https://gitter.im/learnclang/general

45 Lines In 45 Minutes

We’re talking about having a screencast in which Sebastian Thiel, former head of pipeline of Trixter, Germany, will write a simple program in C, live, the restriction being that it should consist of less than 45 lines and take less than 45 minutes to make, during which we can follow along and ask questions about the birds and the bees.

We’re talking about what the program should do, ranging from a calculator to a rock-paper-scissor program to a text-based RPG. Join in on the conversation, let us know what time would suit you better or if you have any requests! Estimating that we’ll get started sometime next week.

https://gitter.im/learnclang/general

May I still jump in?

dekorkh

You certainly may, dekorkh.

Head on over to the chat room to stay on top of current events. We’ll be having the 45 minute screencast tomorrow at 8 PM GMT+0 if you’re interested. Let me know either here or in the chat whether you are also interested in GitHub access to join in on upcoming projects.

Chat room: https://gitter.im/learnclang/general

i, my github user is “elpie89”
can i participate?

great initiative marcuso !

my github username (if it’s still okay to join) -> yoann01

Adding you both! Welcome in!

Great idea and implementation so far! Are you planning on hosting the screencasts afterwards for anyone who can’t make it? Please feel free to add me: justinkovac
Thanks!

Thanks, Kovac! We’ve been talking about it, we’ll see how that works technically once the first screencast is done.

Ideally, we would all be attending so as to make the session as interactive as possible. Many of us may of course not be able to make it due to time differences, but there’s also been talk about having individual sessions for each major time zone. Ultimately, I think an interactive session is a little more valuable and also doesn’t compete directly with other, already available video-material out there.

Things will work themselves out once we get going.

Also, I’ve mentioned it somewhere before, but if anyone would like to host a screencast, that would be very welcome and much appreciated!

Edit: Forgot to mention, you’ve been added, welcome in!

Might I still be able to jump in? My username is jarombrand

I would like to be a part of this :slight_smile: My github user is “yuyinja”

I’m reporting for duty as well! :wink:
github username: fredrikaverpil