Skip to content

A code club for raylib library.

License

Notifications You must be signed in to change notification settings

raysan5/raylib-code-club

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

raylib CODE CLUB FAQ

What is raylib CODE CLUB?

It's a coding club using the raylib programming library. Every coding session, members of the club have to solve in streaming some proposed coding challenges with raylib. They must follow the rules of raylib CODE CLUB.

How can I join raylib CODE CLUB?

raylib is open to any raylib user that wants to participate, coding a proposed challenge in streaming in front of an audience and following the rules. Everyone can join the raylib CODE CLUB just asking for the @raylib-cc-member role on raylib Discord #raylib-code-club channel. Before joining, be aware of rule #8.

How does it work exactly?

Coding session are done in raylib Discord, in a specific #raylib-code-club-ring voice challenge. Participants with the @raylib-cc-member role will be given a raylib coding challenge and they have to try to code it live in streaming, following the raylib CODE CLUB rules.

What's does it mean in streaming?

Coding challenges are faced individiually and streamed in Discord in a live coding session, sharing the screen in front of an audience trying to solve the proposed raylib challenge.

Where are the coding sessions streamed?

In raylib Discord. In the private #raylib-code-club-ring voice channel.

When is the next coding session?

Coding sessions are announced in raylib Discord as Events.

Is the code session stream open to everyone?

No, the #raylib-code-club-ring channel is private, only visible to @raylib-cc-member, @raylib-cc-audience and @Sponsor roles. But any raylib Discord user can request the @raylib-cc-member if willing to participate in the next session or @raylib-cc-audience is willing to watch the coding session.

Is there any penalty if a new member cannot participate in their first session?

Yes, as stated in rule #8, new members must code on their first session. If a member does not participate the @raylib-cc-member role will be removed. The user could ask again for the role for next session.

Users with the @raylib-cc-audience role can decide to attend the session or not, no penalty.

If members can watch other members doing the challenge, could they take advantage?

Maybe, but every member participating must start coding the proposed challenge from scratch, the approach to the challenge and the coding style could be completely different.

What is the audience role?

raylib Discord users with @raylib-cc-audience role can watch the code session and write in the chat area but they are not allowed to voice talk.

When does one session ends?

Session finishes when compilation fails or the challenge is successfully accomplished.

What is the challenge to solve in the coding session?

The challenge(s) to solve are announced when the first code session starts.

Does every member get their own challenge?

No, challenges are defined at the start of the coding session. In case one challenge is completed, a new challenge could be proposed.

Is it required to use a mic?

Not a requirement but highly recommended. The audience will thank you.

Can I use any code editor?

Yes, no restrictions on the IDE to do the coding but there are some limitations on the features provided by the IDE.

Can I use an editor that gives me feedback?

It depends the kind of feedback, rule #6 states that no code helpers are allowed in the coding session. Variables and functions name intellisense help is allowed but automatic code errors detection and feedback is not allowed. Make sure to disable those options before the session starts or session will be ended.

Does it have to be C?

No, you can choose the language and IDE you feel more confortable with but it must be raylib and it must support the required functionality for the challenge.

Can I use any raylib compatible language?

Yes, no language restrictions but the binding used must provide the required functions for the task.

Could the error messages be used for reference?

If some error message is detected, that means code has been compiled or some IDE helper mechanism is active, in that case session is over.

Does "no code copying" means we can't use the cheatsheet or look at the header?

You can have the cheatsheet and the header open but you cannot copy code from other people or examples.

Can I use code completion?

A minimal intellisense mechanism is allowed for code completion but automatic errors detection mechanisms are not allowed. IDE should not warn the user about a missing semicolon, or a mispelled variable.

Is there any base code template to start with?

Yes, a basic template is provided to start coding, actually it's the core_basic_window code.

Is the challenge the same for each person?

Yes, the proposed challenge is active for the full event until someone accomplishes it.

Are code warnings considered as compilation errors?

No, if the program compiles and runs, the session can continue.

Are memory leaks considered a compilation error?

No, if the program compiles and runs, the session can continue.

If the program crashes at runtime, is it considered a compilation error?

Yes, if the program crashes at runtime, the coding session is over.

Can we use a premade makefile?

Yes, the compilation process configuration is up to the user.

Can I use external assets to do the challenge?

Yes, the challenge is focused on logic, the graphics or shapes measures are up to the coder but all the challenges can be solved using the basic shapes provided by raylib.

If some specific graphics were required in more advance challenge, they will be provided.

What is the license of the codew written in the coding sessions?

By default, provided template defines a zlib/libpng license, users are free to change it but it must be a permissive open source license.

NOTE: Feel free to send a PR if you need to add more questions to the FAQ