Actions

Difference between revisions of "Coding Community"

From Future Skill

Line 1: Line 1:
 
== The Coding Community ==
 
== The Coding Community ==
In the Future Skill Coding Community, there are several types of activities that members can take part in to practice and improve their coding skills. The following sections describe the '''Exercise''', '''Challenge''', '''Tournament''' and '''Freecode''' activities. But first, the coding '''Editor''' should be introduced.
+
In the Future Skill Coding Community, there are several types of activities that members can take part in to practice and improve their coding skills. The following sections describe the '''Exercise''', '''Challenge''', '''Tournament''' and '''Freecode''' activities. You can also create Exercises, Challenges and Freecodes for others, this is described here !ADD LINK!. But first, the coding '''Editor''' should be introduced.
  
 
==== The Editor ====
 
==== The Editor ====
 
When performing one of the activities mentioned above, the Future Skill coding Editor is used. The Editor consists of four main sections as seen in the image below. On the top left side is a description of the current activity and below it, usually some graphical output using a [[canvas element]]. On the top right side is the solution section where the programmer writes their solution code and below it, a console and score section where the output from running the solution code is shown.
 
When performing one of the activities mentioned above, the Future Skill coding Editor is used. The Editor consists of four main sections as seen in the image below. On the top left side is a description of the current activity and below it, usually some graphical output using a [[canvas element]]. On the top right side is the solution section where the programmer writes their solution code and below it, a console and score section where the output from running the solution code is shown.
  
The Editor supports a number of programming languages. While programmers are free to choose which language to write their solution code in, it is encouraged to try different ones. In fact, solving a task in multiple languages is usually rewarded with ''achievements'' and ''experience'' points!
+
The Editor supports a number of programming languages. While programmers are free to choose which language to write their solution code in, it is encouraged to try different ones. In fact, solving a task in multiple languages is usually rewarded with ''achievements'' and ''experience'' points.
  
 
==== Exercise ====
 
==== Exercise ====
An Exercise is usually aimed at introducing a certain programming concept. Exercises have ''levels'' and in order to complete an exercise, all levels must be solved. Completing an exercise is often rewarded with ''achievements'' and ''experience'' points.
+
An Exercise is usually aimed at introducing programming concepts or to solve for fun and to challenge yourself. Exercises have ''levels'' and in order to complete an exercise, all levels must be solved. Completing an exercise is often rewarded with ''achievements'' and ''experience'' points.
  
 +
---- Flow of solving an Exercise ----
 +
 +
1. When entering an Exercise you will be presented with level 1, and if the graphical canvas is used you will see it in the bottom left-hand corner with Level 1 visible. If it is your first time using the Editor a tutorial dialoge window will pop up by the Description tab top left - you will notice it has a "Next tip" button.
 +
 +
2. Start by reading the description text in the top left part of the web page. Here the problem and what you need to do to solve it is presented and any canvas elements are explained.
 +
 +
3. Click the tab "API" in the top left to read about the methods available to you as you write your code and solve the problem. Each method can be expanded by clicking it.
 +
 +
4. Now choose the language you want to use to solve the Exercise, the language picker is in the top right part of the page.
 +
 +
5. In the Solution tab, below the language picker, you see the code window where an initial starting point for solving the problem is shown. You can always return to this initial state by using the red Reset code button, top right. Read through the available methods and their descriptions, as these are also an integral part of understanding the Exercise.
  
 
Exercises that have the ''Official'' tag are either created or endorsed by Future Skill.
 
Exercises that have the ''Official'' tag are either created or endorsed by Future Skill.

Revision as of 11:18, 20 January 2021

The Coding Community

In the Future Skill Coding Community, there are several types of activities that members can take part in to practice and improve their coding skills. The following sections describe the Exercise, Challenge, Tournament and Freecode activities. You can also create Exercises, Challenges and Freecodes for others, this is described here !ADD LINK!. But first, the coding Editor should be introduced.

The Editor

When performing one of the activities mentioned above, the Future Skill coding Editor is used. The Editor consists of four main sections as seen in the image below. On the top left side is a description of the current activity and below it, usually some graphical output using a canvas element. On the top right side is the solution section where the programmer writes their solution code and below it, a console and score section where the output from running the solution code is shown.

The Editor supports a number of programming languages. While programmers are free to choose which language to write their solution code in, it is encouraged to try different ones. In fact, solving a task in multiple languages is usually rewarded with achievements and experience points.

Exercise

An Exercise is usually aimed at introducing programming concepts or to solve for fun and to challenge yourself. Exercises have levels and in order to complete an exercise, all levels must be solved. Completing an exercise is often rewarded with achievements and experience points.


Flow of solving an Exercise ----

1. When entering an Exercise you will be presented with level 1, and if the graphical canvas is used you will see it in the bottom left-hand corner with Level 1 visible. If it is your first time using the Editor a tutorial dialoge window will pop up by the Description tab top left - you will notice it has a "Next tip" button.

2. Start by reading the description text in the top left part of the web page. Here the problem and what you need to do to solve it is presented and any canvas elements are explained.

3. Click the tab "API" in the top left to read about the methods available to you as you write your code and solve the problem. Each method can be expanded by clicking it.

4. Now choose the language you want to use to solve the Exercise, the language picker is in the top right part of the page.

5. In the Solution tab, below the language picker, you see the code window where an initial starting point for solving the problem is shown. You can always return to this initial state by using the red Reset code button, top right. Read through the available methods and their descriptions, as these are also an integral part of understanding the Exercise.

Exercises that have the Official tag are either created or endorsed by Future Skill.


Challenge

In a Challenge, a solution to a coding problem is evaluated based on several parameters. Depending on what type of problem is to be solved, the evaluation parameters can include (...). The solution then receives a score which is entered in a leader board. This way, programmers compete with each other trying to solve the same problem. Challenges are rewarded with achievements and experience points.


Tournament

In Tournaments, a submitted solution is run against solutions from several different programmers. Each night, a tournament takes place where code from participating programmers compete with others in multiple matches. When the tournament is finished, each solution receives an ELO-rating.


Freecode

In Freecodes, the programmer is free to do whatever she or he wants to do. Since there is not a specific problem to be solved, a Freecode is not rewarded with any achievements or experience points.