remove field guide cruft and update all field guide links to wiki

This commit is contained in:
Quincy Larson 2015-07-31 21:55:49 -07:00
parent fd68501e16
commit feab8b508e
24 changed files with 74 additions and 1718 deletions

View File

@ -16,7 +16,7 @@ With respect to the computer software contained in this repository:
# Curricular Content
With respect to the curricular content contained in this repository, as in the `./seed/challenges` and `./seed/field-guides` subdirectories:
With respect to the curricular content contained in this repository, as in the `./seed/challenges` and subdirectory and our wiki:
> By exercising the Licensed Rights (defined below), You accept and agree to be bound by the terms and conditions of this Creative Commons Attribution-ShareAlike 4.0 International Public License ("Public License"). To the extent this Public License may be interpreted as a contract, You are granted the Licensed Rights in consideration of Your acceptance of these terms and conditions, and the Licensor grants You such rights in consideration of benefits the Licensor receives from making the Licensed Material available under these terms and conditions.
>

View File

@ -7,9 +7,6 @@
},{
"content": "News",
"link": "/news"
},{
"content": "Guide",
"link": "/field-guide"
},{
"content": "Jobs",
"link": "/jobs"

View File

@ -1,40 +0,0 @@
{
"name": "fieldGuide",
"base": "PersistedModel",
"idInjection": true,
"trackChanges": false,
"properties": {
"name": {
"type": "string",
"unique": true
},
"dashedName": {
"type": "string",
"unique": false
},
"description": {
"type": "array",
"unique": false
},
"category": {
"type": "string"
}
},
"validations": [],
"relations": {},
"acls": [
{
"accessType": "*",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "DENY"
},
{
"accessType": "READ",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "ALLOW"
}
],
"methods": []
}

View File

@ -162,14 +162,6 @@
],
"default": []
},
"completedFieldGuides": {
"type": "array",
"default": []
},
"uncompletedFieldGuides": {
"type": "array",
"default": []
},
"currentStreak": {
"type": "number",
"default": 0

View File

@ -114,28 +114,6 @@ $(document).ready(function() {
}
});
function completedFieldGuide(fieldGuideId) {
if ($('.signup-btn-nav').length < 1) {
$.post(
'/completed-field-guide',
{
fieldGuideInfo: {
fieldGuideId: fieldGuideId
}
},
function(res) {
if (res) {
window.location.href = '/field-guide'
}
});
}
}
$('.next-field-guide-button').on('click', function() {
var fieldGuideId = $('#fieldGuideId').text();
completedFieldGuide(fieldGuideId);
});
$("img").error(function () {
$(this).unbind("error").attr("src", "https://s3.amazonaws.com/freecodecamp/camper-image-placeholder.png");
});

View File

@ -12,7 +12,7 @@
"The user may fill out the form field any way they choose as long as it is a valid US number. The following are all valid formats for US numbers:",
"555-555-5555, (555)555-5555, (555) 555-5555, 555 555 5555, 5555555555, 1 555 555 5555",
"For this challenge you will be presented with a string such as \"800-692-7753\" or \"8oo-six427676;laskdjf\". Your job is to validate or reject the US phone number based on any combination of the formats provided above. The area code is required. If the country code is provided, you must confirm that the country code is \"1\". Return true if the string is a valid US phone number; otherwise false.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"tests": [
"expect(telephoneCheck(\"555-555-5555\")).to.be.a(\"boolean\");",
@ -71,7 +71,7 @@
"description": [
"Create a function that takes two or more arrays and returns an array of the symmetric difference of the provided arrays.",
"The mathematical term symmetric difference refers to the elements in two sets that are in either the first or second set, but not in both.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function sym(args) {",
@ -112,7 +112,7 @@
"cid is a 2d array listing available currency.",
"Return the string \"Insufficient Funds\" if cash-in-drawer is less than the change due. Return the string \"Closed\" if cash-in-drawer is equal to the change due.",
"Otherwise, return change in coin and bills, sorted in highest to lowest order.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function drawer(price, cash, cid) {",
@ -165,7 +165,7 @@
"difficulty": "4.04",
"description": [
"Compare and update inventory stored in a 2d array against a second 2d array of a fresh delivery. Update current inventory item quantity, and if an item cannot be found, add the new item and quantity into the inventory array in alphabetical order.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function inventory(arr1, arr2) {",
@ -221,7 +221,7 @@
"description": [
"Return the number of total permutations of the provided string that don't have repeated consecutive letters.",
"For example, 'aab' should return 2 because it has 6 total permutations, but only 2 of them don't have the same letter (in this case 'a') repeating.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function permAlone(str) {",
@ -266,7 +266,7 @@
"For example, if the year and month are the same then only the day range should be displayed.",
"Secondly, if the starting year is the current year, and the ending year can be inferred by the reader, the year should be omitted.",
"Input date is formatted as YYYY-MM-DD",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function friendly(str) {",

View File

@ -94,7 +94,7 @@
"Reverse the provided string.",
"You may need to turn the string into an array before you can reverse it.",
"Your result must be a string.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function reverseString(str) {",
@ -137,7 +137,7 @@
"If the integer is represented with the letter n, a factorial is the product of all positive integers less than or equal to n.",
"Factorials are often represented with the shorthand notation n!",
"For example: 5! = 1 * 2 * 3 * 4 * 5 = 120f",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function factorialize(num) {",
@ -171,7 +171,7 @@
"A palindrome is a word or sentence that's spelled the same way both forward and backward, ignoring punctuation, case, and spacing.",
"You'll need to remove punctuation and turn everything lower case in order to check for palindromes.",
"We'll pass strings with varying formats, such as \"racecar\", \"RaceCar\", and \"race CAR\" among others.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"tests": [
"expect(palindrome(\"eye\")).to.be.a(\"boolean\");",
@ -217,7 +217,7 @@
"description": [
"Return the length of the longest word in the provided sentence.",
"Your response should be a number.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function findLongestWord(str) {",
@ -257,7 +257,7 @@
"description": [
"Return the provided string with the first letter of each word capitalized.",
"For the purpose of this exercise, you should also capitalize connecting words like 'the' and 'of'.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function titleCase(str) {",
@ -296,7 +296,7 @@
"Return an array consisting of the largest number from each provided sub-array. For simplicity, the provided array will contain exactly 4 sub-arrays.",
"Remember, you can iterate through an array with a simple for loop, and access each member with array syntax arr[i] .",
"If you are writing your own Chai.js tests, be sure to use a deep equal statement instead of an equal statement when comparing arrays.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function largestOfFour(arr) {",
@ -333,7 +333,7 @@
"difficulty": "1.07",
"description": [
"Check if a string (first argument) ends with the given target string (second argument).",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function end(str, target) {",
@ -373,7 +373,7 @@
"difficulty": "1.08",
"description": [
"Repeat a given string (first argument) n times (second argument). Return an empty string if n is a negative number.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function repeat(str, num) {",
@ -411,7 +411,7 @@
"description": [
"Truncate a string (first argument) if it is longer than the given maximum string length (second argument). Return the truncated string with a '...' ending.",
"Note that the three dots at the end add to the string length.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function truncate(str, num) {",
@ -449,7 +449,7 @@
"difficulty": "1.10",
"description": [
"Write a function that splits an array (first argument) into groups the length of size (second argument) and returns them as a multidimensional array.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function chunk(arr, size) {",
@ -487,7 +487,7 @@
"difficulty": "1.11",
"description": [
"Return the remaining elements of an array after chopping off n elements from the head.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function slasher(arr, howMany) {",
@ -528,7 +528,7 @@
"For example, ['hello', 'Hello'], should return true because all of the letters in the second string are present in the first, ignoring case.",
"The arguments ['hello', 'hey'] should return false because the string 'hello' does not contain a 'y'.",
"Lastly, ['Alien', 'line'], should return true because all of the letters in 'line' are present in 'Alien'.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function mutation(arr) {",
@ -569,7 +569,7 @@
"description": [
"Remove all falsey values from an array.",
"Falsey values in javascript are false, null, 0, \"\", undefined, and NaN.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function bouncer(arr) {",
@ -607,7 +607,7 @@
"difficulty": "1.55",
"description": [
"Make a function that looks through a list (first argument) and returns an array of all objects that have equivalent property values (second argument).",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function where(collection, source) {",
@ -646,7 +646,7 @@
"difficulty": "1.60",
"description": [
"You will be provided with an initial array (the first argument in the destroyer function), followed by one or more arguments. Remove all elements from the initial array that are of the same value as these arguments.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function destroyer(arr) {",
@ -687,7 +687,7 @@
"description": [
"Return the lowest index at which a value (second argument) should be inserted into a sorted array (first argument).",
"For example, where([1,2,3,4], 1.5) should return 1 because it is greater than 1 (0th index), but less than 2 (1st index).",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function where(arr, num) {",
@ -724,7 +724,7 @@
"description": [
"We'll pass you an array of two numbers. Return the sum of those two numbers and all numbers between them.",
"The lowest number will not always come first.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function sumAll(arr) {",
@ -764,7 +764,7 @@
"difficulty": "2.01",
"description": [
"Compare two arrays and return a new array with any items not found in both of the original arrays.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function diff(arr1, arr2) {",
@ -818,7 +818,7 @@
"description": [
"Convert the given number into a roman numeral.",
"All <a href=\"http://www.mathsisfun.com/roman-numerals.html\">roman numerals</a> answers should be provided in upper-case.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function convert(num) {",
@ -862,7 +862,7 @@
"Second argument is the word that you will be replacing (before).",
"Third argument is what you will be replacing the second argument with (after).",
"NOTE: Preserve the case of the original word when you are replacing it. For example if you mean to replace the word 'Book' with the word 'dog', it should be replaced as 'Dog'",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function replace(str, before, after) {",
@ -904,7 +904,7 @@
"Translate the provided string to pig latin.",
"<a href=\"http://en.wikipedia.org/wiki/Pig_Latin\">Pig Latin</a> takes the first consonant (or consonant cluster) of an English word, moves it to the end of the word and suffixes an \"ay\".",
"If a word begins with a vowel you just add \"way\" to the end.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function translate(str) {",
@ -946,7 +946,7 @@
"The DNA strand is missing the pairing element. Match each character with the missing element and return the results as a 2d array.",
"<a href=\"http://en.wikipedia.org/wiki/Base_pair\">Base pairs</a> are a pair of AT and CG. Match the missing element to the provided character.",
"Return the provided character as the first element in each array.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function pair(str) {",
@ -979,7 +979,7 @@
"description": [
"Find the missing letter in the passed letter range and return it.",
"If all letters are present in the range, return undefined.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function fearNotLetter(str) {",
@ -1018,7 +1018,7 @@
"description": [
"Check if a value is classified as a boolean primitive. Return true or false.",
"Boolean primitives are true and false.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function boo(bool) {",
@ -1063,7 +1063,7 @@
"In other words, all values present from all arrays should be included in their original order, but with no duplicates in the final array.",
"The unique numbers should be sorted by their original order, but the final array should not be sorted in numerical order.",
"Check the assertion tests for examples.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function unite(arr1, arr2, arr3) {",
@ -1098,7 +1098,7 @@
"difficulty": "2.07",
"description": [
"Convert the characters \"&\", \"<\", \">\", '\"' (double quote), and \"'\" (apostrophe), in a string to their corresponding HTML entities.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function convert(str) {",
@ -1140,7 +1140,7 @@
"difficulty": "2.08",
"description": [
"Convert a string to spinal case. Spinal case is all-lowercase-words-joined-by-dashes.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function spinalCase(str) {",
@ -1182,7 +1182,7 @@
"Return the sum of all odd Fibonacci numbers up to and including the passed number if it is a Fibonacci number.",
"The first few numbers of the Fibonacci sequence are 1, 1, 2, 3, 5 and 8, and each subsequent number is the sum of the previous two numbers.",
"As an example, passing 4 to the function should return 5 because all the odd Fibonacci numbers under 4 are 1, 1, and 3.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function sumFibs(num) {",
@ -1223,7 +1223,7 @@
"Sum all the prime numbers up to and including the provided number.",
"A prime number is defined as having only two divisors, 1 and itself. For example, 2 is a prime number because it's only divisible by 1 and 2. 1 isn't a prime number, because it's only divisible by itself.",
"The provided number may not be a prime.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function sumPrimes(num) {",
@ -1261,7 +1261,7 @@
"description": [
"Find the smallest number that is evenly divisible by all numbers in the provided range.",
"The range will be an array of two numbers that will not necessarily be in numerical order.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function smallestCommons(arr) {",
@ -1299,7 +1299,7 @@
"difficulty": "2.12",
"description": [
"Create a function that looks through an array (first argument) and returns the first element in the array that passes a truth test (second argument).",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function find(arr, func) {",
@ -1335,7 +1335,7 @@
"difficulty": "2.13",
"description": [
"Drop the elements of an array (first argument), starting from the front, until the predicate (second argument) returns true.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function drop(arr, func) {",
@ -1373,7 +1373,7 @@
"difficulty": "2.14",
"description": [
"Flatten a nested array. You must account for varying levels of nesting.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function steamroller(arr) {",
@ -1411,7 +1411,7 @@
"description": [
"Return an English translated sentence of the passed binary string.",
"The binary string will be space separated.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function binaryAgent(str) {",
@ -1449,7 +1449,7 @@
"Check if the predicate (second argument) returns truthy (defined) for all elements of a collection (first argument).",
"For this, check to see if the property defined in the second argument is present on every element of the collection.",
"Remember, you can access object properties through either dot notation or [] notation.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function every(collection, pre) {",
@ -1488,7 +1488,7 @@
"Create a function that sums two arguments together. If only one argument is provided, return a function that expects one additional argument and will return the sum.",
"For example, add(2, 3) should return 5, and add(2) should return a function that is waiting for an argument so that <code>var sum2And = add(2); return sum2And(3); // 5</code>",
"If either argument isn't a valid number, return undefined.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function add() {",

View File

@ -12,7 +12,7 @@
"Now you're ready to start our Zipline challenges. These front-end development challenges will give you many opportunities to apply the HTML, CSS, jQuery and JavaScript you've learned to build static (database-less) applications.",
"For many of these challenges, you will be using JSON data from external API endpoints, such as Twitch.tv and Twitter. Note that you don't need to have a database to use these data.",
"The easiest way to manipulate these data is with <a href='http://api.jquery.com/jquery.getjson/' target='_blank'>jQuery $.getJSON()</a>.",
"Whatever you do, don't get discouraged! Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"Whatever you do, don't get discouraged! Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"We'll build these challenges using CodePen, a popular tool for creating, sharing, and discovering static web applications.",
"Go to <a href='http://codepen.io' target='_blank'>http://codepen.io</a> and create an account.",
"Click your user image in the top right corner, then click the \"New pen\" button that drops down.",
@ -56,7 +56,7 @@
"Don't worry if you don't have anything to showcase on your portfolio yet - you will build several several apps on the next few CodePen challenges, and can come back and update your portfolio later.",
"There are many great portfolio templates out there, but for this challenge, you'll need to build a portfolio page yourself. Using Bootstrap will make this much easier for you.",
"Note that CodePen.io overrides the Window.open() function, so if you want to open windows using jquery, you will need to target invisible anchor elements like this one: <code>&lt;a target='_blank'&rt;</a>.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
"If you'd like immediate feedback on your project, click this button and paste in a link to your CodePen project. Otherwise, we'll review it before you start your nonprofit projects.<br><br><a class='btn btn-primary btn-block' href='https://twitter.com/intent/tweet?text=Check%20out%20the%20project%20I%20just%20built%20with%20%40FreeCodeCamp:%20%0A%20%23LearnToCode%20%23JavaScript' target='_blank'>Click here then add your link to your tweet's text</a>"
],
@ -88,7 +88,7 @@
"<span class='text-info'>User Story:</span> As a user, I can click a button to show me a new random quote.",
"<span class='text-info'>Bonus User Story:</span> As a user, I can press a button to tweet out a quote.",
"Note that you can either put your quotes into an array and show them at random, or use an API to get quotes, such as <a href='http://forismatic.com/en/api/'>http://forismatic.com/en/api/</a>.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
"If you'd like immediate feedback on your project, click this button and paste in a link to your CodePen project. Otherwise, we'll review it before you start your nonprofit projects.<br><br><a class='btn btn-primary btn-block' href='https://twitter.com/intent/tweet?text=Check%20out%20the%20project%20I%20just%20built%20with%20%40FreeCodeCamp:%20%0A%20%23LearnToCode%20%23JavaScript' target='_blank'>Click here then add your link to your tweet's text</a>"
],
@ -121,7 +121,7 @@
"<span class='text-info'>Bonus User Story:</span> As a user, I can see an icon depending on the temperature..",
"<span class='text-info'>Bonus User Story:</span> As a user, I see a different background image depending on the temperature (e.g. snowy mountain, hot desert).",
"<span class='text-info'>Bonus User Story:</span> As a user, I can push a button to toggle between Fahrenheit and Celsius.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
"If you'd like immediate feedback on your project, click this button and paste in a link to your CodePen project. Otherwise, we'll review it before you start your nonprofit projects.<br><br><a class='btn btn-primary btn-block' href='https://twitter.com/intent/tweet?text=Check%20out%20the%20project%20I%20just%20built%20with%20%40FreeCodeCamp:%20%0A%20%23LearnToCode%20%23JavaScript' target='_blank'>Click here then add your link to your tweet's text</a>"
],
@ -153,7 +153,7 @@
"<span class='text-info'>User Story:</span> As a user, I can start a 25 minute pomodoro, and the timer will go off once 25 minutes has elapsed.",
"<span class='text-info'>Bonus User Story:</span> As a user, I can reset the clock for my next pomodoro.",
"<span class='text-info'>Bonus User Story:</span> As a user, I can customize the length of each pomodoro.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
"If you'd like immediate feedback on your project, click this button and paste in a link to your CodePen project. Otherwise, we'll review it before you start your nonprofit projects.<br><br><a class='btn btn-primary btn-block' href='https://twitter.com/intent/tweet?text=Check%20out%20the%20project%20I%20just%20built%20with%20%40FreeCodeCamp:%20%0A%20%23LearnToCode%20%23JavaScript' target='_blank'>Click here then add your link to your tweet's text</a>"
],
@ -189,7 +189,7 @@
"<span class='text-info'>Hint:</span> Here's an example call to Twitch.tv's JSON API: <code>https://api.twitch.tv/kraken/streams/freecodecamp</code>.",
"<span class='text-info'>Hint:</span> The relevant documentation about this API call is here: <a href='https://github.com/justintv/Twitch-API/blob/master/v3_resources/streams.md#get-streamschannel' target='_blank'>https://github.com/justintv/Twitch-API/blob/master/v3_resources/streams.md#get-streamschannel</a>.",
"<span class='text-info'>Hint:</span> Here's an array of the Twitch.tv usernames of people who regularly stream coding: <code>[\"freecodecamp\", \"storbeck\", \"terakilobyte\", \"habathcx\",\"RobotCaleb\",\"comster404\",\"brunofin\",\"thomasballinger\",\"noobs2ninjas\",\"beohoff\"]</code>",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
"If you'd like immediate feedback on your project, click this button and paste in a link to your CodePen project. Otherwise, we'll review it before you start your nonprofit projects.<br><br><a class='btn btn-primary btn-block' href='https://twitter.com/intent/tweet?text=Check%20out%20the%20project%20I%20just%20built%20with%20%40FreeCodeCamp:%20%0A%20%23LearnToCode%20%23JavaScript' target='_blank'>Click here then add your link to your tweet's text</a>"
],

View File

@ -71,7 +71,7 @@
"Keep the chat room open while you work through the other challenges. That way you ask for help if you get stuck on a challenge. You can also socialize when you feel like taking a break.",
"You can also download a desktop or mobile chat application here: <a href='https://gitter.im/apps' target='_blank'>https://gitter.im/apps</a>",
"You can also access this chat room by clicking the \"Chat\" button in the upper right hand corner.",
"In order to keep our community a friendly and positive place to learn to code, please read and follow our Code of Conduct: <a href='/field-guide/what-is-the-free-code-camp-code-of-conduct?' target='_blank'>http://freecodecamp.com/field-guide/what-is-the-free-code-camp-code-of-conduct?</a>",
"In order to keep our community a friendly and positive place to learn to code, please read and follow our Code of Conduct: <a href='https://github.com/FreeCodeCamp/freecodecamp/wiki/Code-of-Conduct' target='_blank'>https://github.com/FreeCodeCamp/freecodecamp/wiki/Code-of-Conduct</a>",
"Now you're ready to move on. Click the \"I've completed this challenge\" button to move on to your next challenge."
],
"challengeType": 2,
@ -93,7 +93,7 @@
"Comentale a otros campers como es que encontraste Free Code Camp. También hablanos sobre las razones por las cuales decidiste aprender a programar.",
"Mantén la sala de chat abierta mientras estás trabajando otros desafíos. De esa manera podrás pedir ayuda en caso te quedes atascado en algún de ellos. También puedes socializar cuando sientas que necesitas un descanso.",
"Puedes acceder a la sala de chat dándole click al botón de \"Chat\" en la parte superior derecha de la página.",
"Para mantener a nuestra comunidad como un lugar de aprendizaje positivo y amigable, por favor lee y sigue nuestro Código de Conducta: <a href='/field-guide/what-is-the-free-code-camp-code-of-conduct?' target='_blank'>http://freecodecamp.com/field-guide/what-is-the-free-code-camp-code-of-conduct?</a>"
"Para mantener a nuestra comunidad como un lugar de aprendizaje positivo y amigable, por favor lee y sigue nuestro Código de Conducta: <a href='/https://github.com/FreeCodeCamp/freecodecamp/wiki/Code-of-Conduct' target='_blank'>https://github.com/FreeCodeCamp/freecodecamp/wiki/Code-of-Conduct</a>"
],
"namePt": "",
"descriptionPt": [],
@ -108,7 +108,7 @@
"Teile den anderen Campern mit, wie du auf Free Code Camp gestoßen bist. Wir interessieren uns auch dafür, warum du Programmieren lernen willst aber auf englisch bitte, sonst versteht dich kaum einer.",
"Behalte den Chat geöffnet, während du an den Challenges arbeitest. Auf diesem Weg kannst du schnell nach Hilfe fragen, wenn du nicht weiter kommst. Du kannst auch jederzeit mit uns chatten, wenn du eine Pause einlegen möchtest.",
"Du kannst den Chat auch über die Schaltfläche \"Chat\" oben rechts auf dieser Seite erreichen.",
"Damit diese Community ein freundlicher und positiver Ort zum Lernen bleibt, lies und folge bitte unseren Verhaltensregeln: <a href='/field-guide/what-is-the-free-code-camp-code-of-conduct?' target='_blank'>http://freecodecamp.com/field-guide/what-is-the-free-code-camp-code-of-conduct?</a>"
"Damit diese Community ein freundlicher und positiver Ort zum Lernen bleibt, lies und folge bitte unseren Verhaltensregeln: <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/Code-of-Conduct' target='_blank'>https://github.com/FreeCodeCamp/freecodecamp/wiki/Code-of-Conduct</a>"
]
},
{
@ -303,7 +303,7 @@
"description": [
"One of the best ways to stay motivated when learning to code is to hang out with other campers.",
"Gitter and Camper News are great ways to communicate with other campers, but there's no substitute for meeting people in-person.",
"The easiest way to meet other campers in your city is to join your city's Facebook Group. Click <a href='/field-guide/how-can-i-find-other-free-code-camp-campers-in-my-city' target='_blank'>here</a> to view our growing list of local groups.",
"The easiest way to meet other campers in your city is to join your city's Facebook Group. Click <a href='https://github.com/FreeCodeCamp/freecodecamp/wiki/List-of-Free-Code-Camp-city-based-Campsites' target='_blank'>here</a> to view our growing list of local groups.",
"Click the link to your city, then, once Facebook loads, click \"Join group\".",
"Our local groups are new, so if you don't see your city on this list, you should follow the directions to create a Facebook group for your city.",
"If you don't have a Facebook account, we strongly recommend you create one, even if it's just for the purpose of coordinating with campers in your city through this group.",
@ -322,7 +322,7 @@
"descriptionEs": [
"Una de las mejores maneras de mantenerte motivado cuando estás aprendiendo a programar es pasar el rato con otros campers.",
"Gitter y Noticias de Campers son una muy buena forma de comunicarte con otros campers, pero no hay ningún substituto para conocerlos en persona.",
"La forma más fácil de encontrarte con otros campers en tu ciudad es unirte al grupo de Facebook de tu ciudad o país. Dale click a <a href='/field-guide/how-can-i-find-other-free-code-camp-campers-in-my-city' target='_blank'>here</a> para ver la lista de grupos locales.",
"La forma más fácil de encontrarte con otros campers en tu ciudad es unirte al grupo de Facebook de tu ciudad o país. Dale click a <a href='https://github.com/FreeCodeCamp/freecodecamp/wiki/List-of-Free-Code-Camp-city-based-Campsites' target='_blank'>here</a> para ver la lista de grupos locales.",
"Dale click al link de tu ciudad o país y una vez que Facebook cargue, dale click a \"Join group\".",
"Nuestros grupos locales son pocos, asi que en caso no veas tu ciudad o país en la lista, solamente sigue las instrucciones para crear un grupo de Facebook para ello.",
"Si no tienes una cuenta de Facebook, te recomendamos que crees una, asi sea solamente con el proposito de coordinar con otros campers en tu ciudad a través del grupo",
@ -335,7 +335,7 @@
"descriptionDe": [
"Der beste Weg, motiviert am Ball zu bleiben, ist mit anderen Campern abzuhängen.",
"Slack und Camper News sind super Wege zur Kommunikation mit anderen Campern. Es gibt aber nichts vergleichbares, Personen im echten Leben zu treffen.",
"Um leicht andere Camper in deiner Stadt zu treffen, solltest du der Facebook Gruppe deiner Stadt beitreten. Klicke <a href='/field-guide/how-can-i-find-other-free-code-camp-campers-in-my-city' target='_blank'>hier</a> um unsere wachsende Liste der lokalen Gruppen zu sehen.",
"Um leicht andere Camper in deiner Stadt zu treffen, solltest du der Facebook Gruppe deiner Stadt beitreten. Klicke <a href='https://github.com/FreeCodeCamp/freecodecamp/wiki/List-of-Free-Code-Camp-city-based-Campsites' target='_blank'>hier</a> um unsere wachsende Liste der lokalen Gruppen zu sehen.",
"Klicke auf den Link zu deiner Stadt. Sobald Facebook geladen ist, klicke auf \"Gruppe beitreten\".",
"Unsere lokalen Gruppen sind neu. Solltest du deine Stadt also nicht in der Liste sehen, erstelle doch bitte eine Facebook Gruppe deiner Stadt indem du den Anweisungen dazu folgst.",
"Wenn du keinen Facebook Account hast, empfehlen wir dir einen zu erstellen. Auch wenn dieser nur dazu dient, sich mit anderen Campern in deiner Stadt zu koordinieren.",
@ -387,7 +387,7 @@
"Next, S - Search Google. Good Google queries take a lot of practice. When you search Google, you usually want to include the language or framework you're using. You also want to limit the results to a recent period.",
"Then, if you still haven't found an answer to your question, A - Ask your friends. If you have trouble, you can ask your fellow campers. We have a special chat room specifically for getting help with tools you learn through these Free Code Camp Challenges. Go to <a href='https://gitter.im/FreeCodeCamp/Help' target='_blank'>https://gitter.im/FreeCodeCamp/Help</a>. Keep this chat open while you work on the remaining challenges.",
"Finally, P - Post on Stack Overflow. Before you attempt to do this, read Stack Overflow's guide to asking good questions: <a href='http://stackoverflow.com/help/how-to-ask'>http://stackoverflow.com/help/how-to-ask</a>.",
"Here's our detailed wiki article on getting help: <a href='/field-guide/how-do-i-get-help-when-i-get-stuck' target='_blank'>http://freecodecamp.com/field-guide/how-do-i-get-help-when-i-get-stuck</a>.",
"Here's our detailed wiki article on getting help: <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>http://freecodecamp.com//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck</a>.",
"Now you have a clear algorithm to follow when you need help! Let's start coding! Move on to your next challenge."
],
"challengeType": 2,
@ -406,7 +406,7 @@
"Luego, Busca - Busca en Google. Buenas búsquedas o queries requieren bastante práctica. Cuando búsques en Google, idealmente tienes que incluir el lenguaje o framework que estés usando. También tendrás que limitar los resultados de búsqueda a un periodo reciente.",
"Ahora, en caso no hayas encontrado la respuesta a tu pregunta, Pregunta - Pregunta a tus amigos. En caso estes en problemas, puedes preguntar a otros campers. Tenemos una sala de chat especificamente para obtener ayuda sobre las herramientas que utilizamos en los desafíos de Free Code Camp. Ingresa a <a href='https://gitter.im/FreeCodeCamp/Help' target='_blank'>https://gitter.im/FreeCodeCamp/Help</a>. Mantén este chat abierto mientras trabajas en los desafíos subsiguientes.",
"Finalmente, Publica - Publica tu pregunta en Stack Overflow. Antes de hacer esto lee la guía de Stack Overflow para publicar buenas preguntas: <a href='http://stackoverflow.com/help/how-to-ask'>http://stackoverflow.com/help/how-to-ask</a>. Tendrás que hacerlo en inglés, en caso no sepas como, pide que te ayuden a traducir tu pregunta en el canal #espanol de Slack.",
"Aquí está nuestra guia detallada en como obtener ayuda: <a href='/field-guide/how-do-i-get-help-when-i-get-stuck' target='_blank'>http://freecodecamp.com/field-guide/how-do-i-get-help-when-i-get-stuck</a>.",
"Aquí está nuestra guia detallada en como obtener ayuda: <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>http://freecodecamp.com//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck</a>.",
"Ahora que tienes en claro el procedimiento a seguir cuando necesites ayuda. ¡Empecémos a programar! Continua con el siguiente desafío."
],
"namePt": "",
@ -419,7 +419,7 @@
"Danach, S Suche bei Google. Es bedarf viel Übung, gute Such-Anfragen zu stellen. Wenn du bei Google suchst, solltest du die Sprache oder das Framework angeben, welches du benutzt. Außerdem wirst du die aktuellsten Ergebnisse haben wollen.",
"Wenn du keine Antwort auf deine Frage erhalten hast, folge A Frage deine Freunde. Wenn du Probleme hast, kannst du andere Camper fragen. Wir haben einen speziellen Chat-Raum zur Unterstützung beim Lernen eingerichtet. Gehe zu <a href='https://freecode.slack.com/messages/help/' target='_blank'>https://freecode.slack.com/messages/help/</a>. Behalte diesen Chat offen, solange du an den Challenges arbeitest.",
"Und zum Schluss, P Poste auf Stack Overflow. Bevor du das tust, lies bitte den Leitfaden für gute Fragen auf Stack Overflow: <a href='http://stackoverflow.com/help/how-to-ask'>http://stackoverflow.com/help/how-to-ask</a>.",
"Hier ist unser detaillierter Field Guide um Hilfe zu erhalten: <a href='/field-guide/how-do-i-get-help-when-i-get-stuck' target='_blank'>http://freecodecamp.com/field-guide/how-do-i-get-help-when-i-get-stuck</a>.",
"Hier ist unser detaillierter Field Guide um Hilfe zu erhalten: <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>http://freecodecamp.com//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck</a>.",
"Jetzt hast du einen klaren Algorithmus, dem du folgen kannst wenn du Hilfe benötigst. Fangen wir an zu programmieren! Gehe zur nächsten Challenge."
]
}

View File

@ -12,7 +12,7 @@
"Those methods are getFirstName(), getLastName(), getFullName(), setFirstName(first), setLastName(last), and setFullName(firstAndLast).",
"All functions that take an argument have an arity of 1, and the argument will be a string.",
"These methods must be the only available means for interacting with the object.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"var Person = function(firstAndLast) {",
@ -65,7 +65,7 @@
"You can read about orbital periods <a href=\"http://en.wikipedia.org/wiki/Orbital_period\" target='_blank'>on wikipedia</a>.",
"The values should be rounded to the nearest whole number. The body being orbited is Earth.",
"The radius of the earth is 6367.4447 kilometers, and the GM value of earth is 398600.4418",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function orbitalPeriod(arr) {",
@ -104,7 +104,7 @@
"Return the sum of all indices of elements of 'arr' that can be paired with one other element to form a sum that equals the value in the second argument 'arg'. If multiple sums are possible, return the smallest sum. Once an element has been used, it cannot be reused to pair with another.",
"For example, pairwise([1, 4, 2, 3, 0, 5], 7) should return 11 because 4, 2, 3 and 5 can be paired with each other to equal 7.",
"pairwise([1, 3, 2, 4], 4) would only equal 1, because only the first two elements can be paired to equal 4, and the first element has an index of 0!",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck. Try to pair program. Write your own code."
],
"challengeSeed": [
"function pairwise(arr, arg) {",

View File

@ -19,7 +19,7 @@
"<span class='text-info'>User Story:</span> As a user, I can click a link to go directly to the post's discussion page.",
"<span class='text-info'>Bonus User Story:</span> As a user, I can see how many upvotes each story has.",
"<span class='text-info'>Hint:</span> Here's the Camper News Hot Stories API endpoint: <code>http://www.freecodecamp.com/news/hot</code>.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
"If you'd like immediate feedback on your project, click this button and paste in a link to your CodePen project. Otherwise, we'll review it before you start your nonprofit projects.<br><br><a class='btn btn-primary btn-block' href='https://twitter.com/intent/tweet?text=Check%20out%20the%20project%20I%20just%20built%20with%20%40FreeCodeCamp:%20%0A%20%23LearnToCode%20%23JavaScript' target='_blank'>Click here then add your link to your tweet's text</a>"
],
@ -52,7 +52,7 @@
"<span class='text-info'>Bonus User Story:</span>As a user, I can click a button to see a random Wikipedia entry.",
"<span class='text-info'>Bonus User Story:</span>As a user, when I type in the search box, I can see a dropdown menu with autocomplete options for matching Wikipedia entries.",
"<span class='text-info'>Hint:</span> Here's an entry on using Wikipedia's API: <code>http://www.mediawiki.org/wiki/API:Main_page</code>.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
"If you'd like immediate feedback on your project, click this button and paste in a link to your CodePen project. Otherwise, we'll review it before you start your nonprofit projects.<br><br><a class='btn btn-primary btn-block' href='https://twitter.com/intent/tweet?text=Check%20out%20the%20project%20I%20just%20built%20with%20%40FreeCodeCamp:%20%0A%20%23LearnToCode%20%23JavaScript' target='_blank'>Click here then add your link to your tweet's text</a>"
],
@ -84,7 +84,7 @@
"<span class='text-info'>User Story:</span> As a user, I can add, subtract, multiply and divide two numbers.",
"<span class='text-info'>Bonus User Story:</span> I can clear the input field with a clear button.",
"<span class='text-info'>Bonus User Story:</span> I can keep chaining mathematical operations together until I hit the clear button, and the calculator will tell me the correct output.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
"If you'd like immediate feedback on your project, click this button and paste in a link to your CodePen project. Otherwise, we'll review it before you start your nonprofit projects.<br><br><a class='btn btn-primary btn-block' href='https://twitter.com/intent/tweet?text=Check%20out%20the%20project%20I%20just%20built%20with%20%40FreeCodeCamp:%20%0A%20%23LearnToCode%20%23JavaScript' target='_blank'>Click here then add your link to your tweet's text</a>"
],
@ -117,7 +117,7 @@
"<span class='text-info'>Bonus User Story:</span> As a user, I can never actually win against the computer - at best I can tie.",
"<span class='text-info'>Bonus User Story:</span> As a user, my game will reset as soon as it's over so I can play again.",
"<span class='text-info'>Bonus User Story:</span> As a user, I can choose whether I want to play as X or O.",
"Remember to use <a href='/field-guide/how-do-i-get-help-when-I-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"Remember to use <a href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank'>RSAP</a> if you get stuck.",
"When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
"If you'd like immediate feedback on your project, click this button and paste in a link to your CodePen project. Otherwise, we'll review it before you start your nonprofit projects.<br><br><a class='btn btn-primary btn-block' href='https://twitter.com/intent/tweet?text=Check%20out%20the%20project%20I%20just%20built%20with%20%40FreeCodeCamp:%20%0A%20%23LearnToCode%20%23JavaScript' target='_blank'>Click here then add your link to your tweet's text</a>"
],

View File

@ -1,309 +0,0 @@
[
{
"id": "bd7158d9c436eddfaeb5bd3f",
"name": "Can I jump around in this guide?",
"dashedName": "can-i-jump-around-in-this-guide",
"category": "FYI",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>This guide was designed as a reference for you. You shouldn't try to read it all today.</h3>",
" <p class='large-p'>Feel free to come back any time and jump around, reading any articles that seem interesting to you at the time.</p>",
" <p class='large-p'>If you're currently doing our \"Browse our Field Guide\" Waypoint, go ahead and mark that challenge complete and move on to your next Waypoint.</p>",
"</div>"
]
},
{
"id": "bd7159d9c436eddfaeb5bdef",
"name": "Can I Calculate the True Cost of a Bootcamp with a Coding Bootcamp Cost Calculator?",
"dashedName": "can-i-calculate-the-true-cost-of-a-bootcamp-with-a-coding-bootcamp-cost-calculator",
"category": "FYI",
"description": [
"<script src=\"/js/calculator.js\"></script>",
"<div class=\"row\">",
" <div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3 id=\"chosen\" class=\"text-center text-primary\">Coming from _______, and making $_______, your true costs will be:</h3>",
" <div id=\"city-buttons\">",
" <div class=\"spacer\"></div>",
" <h2 class=\"text-center\">Where do you live?</h2>",
" <div class=\"spacer\"></div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"atlanta\" class=\"btn btn-primary btn-block btn-lg\">Atlanta</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"austin\" class=\"btn btn-primary btn-block btn-lg\">Austin</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"brisbane\" class=\"btn btn-primary btn-block btn-lg\">Brisbane</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"boulder\" class=\"btn btn-primary btn-block btn-lg\">Boulder</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"chicago\" class=\"btn btn-primary btn-block btn-lg\">Chicago</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"denver\" class=\"btn btn-primary btn-block btn-lg\">Denver</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"hong-kong\" class=\"btn btn-primary btn-block btn-lg\">Hong Kong</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"london\" class=\"btn btn-primary btn-block btn-lg\">London</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"los-angeles\" class=\"btn btn-primary btn-block btn-lg\">Los Angeles</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"manchester\" class=\"btn btn-primary btn-block btn-lg\">Manchester</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"melbourne\" class=\"btn btn-primary btn-block btn-lg\">Melbourne</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"new-york-city\" class=\"btn btn-primary btn-block btn-lg\">New York City</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"portland\" class=\"btn btn-primary btn-block btn-lg\">Portland</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"raleigh-durham\" class=\"btn btn-primary btn-block btn-lg\">Raleigh-Durham</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"san-francisco\" class=\"btn btn-primary btn-block btn-lg\">San Fransisco</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"seattle\" class=\"btn btn-primary btn-block btn-lg\">Seattle</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"singapore\" class=\"btn btn-primary btn-block btn-lg\">Singapore</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"toronto\" class=\"btn btn-primary btn-block btn-lg\">Toronto</button>",
" </div>",
" <div class=\"col-xs-12 btn-nav\">",
" <button id=\"other\" class=\"btn btn-primary btn-block btn-lg\">Other</button>",
" <div class=\"spacer\"></div>",
" </div>",
" </div>",
" <div id=\"income\" class=\"initially-hidden\">",
" <div class=\"spacer\"></div>",
" <h2 class=\"text-center\">How much money did you make last year (in USD)?</h2>",
" <div class=\"spacer\"></div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"0\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$0</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"20000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$20,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"30000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$30,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"40000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$40,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"50000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$50,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"60000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$60,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"70000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$70,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"80000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$80,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"90000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$90,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"100000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$100,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"120000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$120,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"140000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$140,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"160000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$160,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"180000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$180,000</button>",
" </div>",
" <div class=\"col-xs-12 col-sm-12 col-md-4 btn-nav\">",
" <button id=\"200000\" href=\"#\" class=\"btn btn-primary btn-block btn-lg\">$200,000</button>",
" <div class=\"spacer\"></div>",
" </div>",
" </div>",
" <div id=\"chart\" class=\"initially-hidden\">",
" <div class=\"d3-centered\">",
" <svg class=\"chart\"></svg>",
" </div>",
" </div>",
" <div id=\"explanation\" class=\"initially-hidden\">",
" <div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <div class=\"text-center\">",
" <button id=\"transform\" class=\"btn btn-primary btn-lg\">Transform</button>",
" <div class=\"button-spacer\"></div><a href=\"/json/bootcamps.json\">View Data Source JSON</a><span>&nbsp; &bullet; &nbsp;</span><a href=\"/coding-bootcamp-cost-calculator\">Recalculate</a>",
" </div>",
" <h3>Notes:</h3>",
" <ol>",
" <li class=\"large-li\">For cash-up-front bootcamps, we assumed an APR of 6% and a term of 3 years.</li>",
" <li class=\"large-li\">For wage-garnishing bootcamps, we assume 18% of first year wages at their advertised starting annual salary of around $100,000.</li>",
" <li class=\"large-li\">We assume a cost of living of $500 for cities like San Francisco and New York City, and $400 per week for everywhere else.</li>",
" <li class=\"large-li\">The most substantial cost for most people is lost wages. A 40-hour-per-week job at the US Federal minimum wage would pay at least $15,000 per year. You can read more about economic cost<a href=\"https://en.wikipedia.org/wiki/Economic_cost\" target=\"_blank\"> here</a>.</li>",
" <li class=\"large-li\">Free Code Camp. We don't charge tuition or garnish wages. We're fully online so you don't have to move. We're self-paced so you don't have to quit your job. Thus, your true cost of attending Free Code Camp will be $0.</li>",
" </ol>",
" <div class=\"spacer\"></div>",
" <div class=\"row\">",
" <div class=\"col-xs-12 col-sm-4 col-md-3\"><img src=\"https://www.evernote.com/l/AHRIBndcq-5GwZVnSy1_D7lskpH4OcJcUKUB/image.png\" class=\"img-responsive testimonial-image\"/></div>",
" <div class=\"col-xs-12 col-sm-8 col-md-9\">",
" <h3>Built by Suzanne Atkinson</h3>",
" <p class=\"large-p\">Suzanne is an emergency medicine physician, triathlon coach and web developer from Pittsburgh. You should &thinsp;<a href=\"https://twitter.com/intent/user?screen_name=SteelCityCoach\" target=\"_blank\">follow her on Twitter</a>.</p>",
" </div>",
" </div>",
" <div class=\"spacer\"></div>",
" </div>",
" </div>",
" </div>",
"</div>"
]
},
{
"id": "bd7158d9c442eddfaeb5bdef",
"name": "How do I best use the Global Control Shortcuts for Mac?",
"dashedName": "how-do-i-best-use-the-global-control-shortcuts-for-mac",
"category": "FYI",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>These Global Control Shortcuts for Mac will save you hours by speeding up your typing.</h3><br>",
" <div class=\"embed-responsive embed-responsive-16by9\"><iframe src=\"//player.vimeo.com/video/107073108\" class=\"embed-responsive-item\"></iframe></div>",
" <p class='large-p'>These global shortcuts work everywhere on a Mac:</p>",
" <p class='large-p'>",
" <ul>",
" <li class='large-li'>Control + F = Forward</li>",
" <li class='large-li'>Control + B = Backward</li>",
" <li class='large-li'>Control + N = Next Line</li>",
" <li class='large-li'>Control + P = Previous Line</li>",
" <li class='large-li'>Control + H = Backspace</li>",
" <li class='large-li'>Control + D = Delete</li>",
" <li class='large-li'>Control + A = Beginning of Line</li>",
" <li class='large-li'>Control + E = End of Line</li>",
" <li class='large-li'>Control + K = Kill line</li>",
" </ul>",
" </p>",
"</div>"
]
},
{
"id": "bd7158d9c445eddfaeb5bdef",
"name": "How can I get to Inbox Zero with Gmail shortcuts?",
"dashedName": "how-can-i-get-to-inbox-zero-with-gmail-shortcuts",
"category": "FYI",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>These Gmail Shortcuts will save you hours and help you get to Inbox Zero.</h3><br/>",
" <div class=\"embed-responsive embed-responsive-16by9\">",
" <iframe src=\"//player.vimeo.com/video/115194016\" class=\"embed-responsive-item\"></iframe>",
" </div>",
" <p class='large-p'>The shortcuts:</p>",
" <p class='large-p'>",
" <ul>",
" <li class='large-li'>j - move down</li>",
" <li class='large-li'>k - move up</li>",
" <li class='large-li'>o - open</li>",
" <li class='large-li'>r - reply</li>",
" <li class='large-li'>a - reply all</li>",
" <li class='large-li'>f - forward</li>",
" <li class='large-li'>c - compose</li>",
" <li class='large-li'>x - select</li>",
" <li class='large-li'>e - archive</li>",
" <li class='large-li'>! - mark spam</li>",
" <li class='large-li'>z - undo</li>",
" </ul>",
" </p>",
"</div>"
]
},
{
"id": "bd7158d9c445eddfaeb5bdff",
"name": "How can I deploy a website without writing any code at all?",
"dashedName": "how-can-i-deploy-a-website-without-writing-any-code-at-all",
"category": "FYI",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>It's possible to build dynamic, mobile-responsive websites without writing any code at all, in just a few minutes.</h3><br/>",
" <div class=\"embed-responsive embed-responsive-16by9\">",
" <iframe src=\"//player.vimeo.com/video/115194017\" class=\"embed-responsive-item\"></iframe>",
" </div>",
" <p class='large-p'>Here are the technologies we used here:</p>",
" <p class='large-p'>",
" <ul>",
" <li class='large-li'><a href='http://www.atom.io/'>atom.io</a> - a free code editor</li>",
" <li class='large-li'><a href='http://www.startbootstrap.com/'>startbootstrap.com</a> - a collection of free responsive (Bootstrap) templates</li>",
" <li class='large-li'><a href='http://www.powr.io/'>powr.io</a> - a collection of free JavaScript plugins</li>",
" <li class='large-li'><a href='http://www.bitballoon.com/'>bitballoon.com</a> - a tool for drag and drop website deployment</li>",
" </ul>",
" </p>",
" <p class='large-p'>You will quickly reach the limits of what you can do without actually coding, but it's nice to be able to rapidly build working prototype websites like this.</p>",
"</div>"
]
},
{
"id": "bd7158d9c447eddfaeb5bdef",
"name": "How do I install Screenhero?",
"dashedName": "how-do-i-install-screenhero",
"category": "FYI",
"description": [
"<div class='col-xs-12 col-sm-10 col-sm-offset-1'>",
" <h3><a href=\"http://links.screenhero.com/e/c/eyJlbWFpbF9pZCI6Ik1qQTNNem9XQkNJQ1pBQUNjd0FYQVZrVEdnRkxNamtfX0JWZEdGVEpSZkVCWlRwbFpXRTBNamM0WVMxaE56SmlMVEV4WlRRdE9HUXpZUzFpWXpVNE1HRTJNalkxTldNNk1UUTJNVEEyQUE9PSIsInBvc2l0aW9uIjowLCJocmVmIjoiaHR0cDovL2RsLnNjcmVlbmhlcm8uY29tL3NtYXJ0ZG93bmxvYWQvZklYQU1UUUJBTEtQQkhQTC9TY3JlZW5oZXJvLnppcD9zb3VyY2U9d2ViIn0=\">Download for Mac</a></h3>",
" <h3><a href=\"http://links.screenhero.com/e/c/eyJlbWFpbF9pZCI6Ik1qQTNNem9XQkNJQ1pBQUNjd0FYQVZrVEdnRkxNamtfX0JWZEdGVEpSZkVCWlRwbFpXRTBNamM0WVMxaE56SmlMVEV4WlRRdE9HUXpZUzFpWXpVNE1HRTJNalkxTldNNk1UUTJNVEEyQUE9PSIsInBvc2l0aW9uIjoxLCJocmVmIjoiaHR0cDovL2RsLnNjcmVlbmhlcm8uY29tL3NtYXJ0ZG93bmxvYWQvZklYQU1UUUJBTEtQQkhQTC9TY3JlZW5oZXJvLXNldHVwLmV4ZSJ9\"> Download for Windows</a></h3>",
" <p class='large-p'>You'll use Screenhero to pair program starting with <a href='/challenges/pair-program-on-bonfires'>http://freecodecamp.com/challenges/pair-program-on-bonfires</a></p>",
"</div>"
]
},
{
"id": "bd7158d9c436eddfaeb5dd3b",
"name": "What other resources does Free Code Camp recommend to nonprofits?",
"dashedName": "what-other-resources-does-free-code-camp-recommend-to-nonprofits",
"category": "FYI",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h2>Here are some excellent resources for nonprofits.</h2>",
" <h3>Please note that Free Code Camp is not partnered with, nor do we receive a referral fee from, any of the following providers. We simply want to help guide you towards a solution for your organization.</h3>",
" <h3>Skills-based Volunteer Organizations:</h3>",
" <p class='large-p'><a href='http://www.volunteermatch.com'>http://www.volunteermatch.com</a></p>",
" <p class='large-p'><a href='http://www.catchafire.org'>http://www.catchafire.org</a></p>",
" <h3>Building a website:</h3>",
" <p class='large-p'><a href='http://www.wix.com/'>http://www.wix.com/</p>",
" <p class='large-p'><a href='https://wordpress.com/'>https://wordpress.com/</p>",
" <p class='large-p'><a href='http://www.freecodecamp.com/field-guide/how-can-i-deploy-a-website-without-writing-any-code-at-all'>Build it yourself for free with no code</a></p>",
" <h3>Donor and Volunteer Management Systems</h3>",
" <p class='large-p'><a href='https://www.thedatabank.com/'>https://www.thedatabank.com/</a></p>",
" <p class='large-p'><a href='http://www.donorsnap.com/'>http://www.donorsnap.com/</a></p>",
" <p class='large-p'><a href='http://www.donorperfect.com/'>http://www.donorperfect.com/</a></p>",
" <p class='large-p'><a href='https://www.blackbaud.com/fundraising-crm/etapestry-donor-management'>https://www.blackbaud.com/fundraising-crm/etapestry-donor-management</a></p>",
" <p class='large-p'><a href='http://www.z2systems.com/'>http://www.z2systems.com</a></p>",
" <p class='large-p'><a href='http://www.regpacks.com/volunteer-management/'</a>http://www.regpacks.com/volunteer-management</a></p>",
" <p class='large-p'><a href='http://sumac.com/'>http://sumac.com</a></p>",
" <p class='large-p'><a href='http://www.volgistics.com'>http://www.volgistics.com</a></p>",
" <h3>Inventory Management Systems</h3>",
" <p class='large-p'><a href='https://www.ezofficeinventory.com/industries/non-profits'>https://www.ezofficeinventory.com/industries/non-profits</a></p>",
" <p class='large-p'><a href='https://www.ordoro.com'>https://www.ordoro.com</a></p>",
" <p class='large-p'><a href='http://www.unleashedsoftware.com'>http://www.unleashedsoftware.com</a></p>",
" <h3>E-Learning platforms</h3>",
" <p class='large-p'><a href='http://www.dokeos.com/'>http://www.dokeos.com</a></p>",
" <p class='large-p'><a href='http://www.efrontlearning.net/'>http://www.efrontlearning.net/</a></p>",
" <p class='large-p'><a href='https://moodle.org/'>https://moodle.org/</a></p>",
" <p class='large-p'><a href='https://sakaiproject.org/'>https://sakaiproject.org/</a></p>",
" <h3>Community Management</h3>",
" <p class='large-p'><a href='https://civicrm.org/'>https://civicrm.org/</a></p>",
" <p class='large-p'><a href='http://tcmgr.com/'>http://tcmgr.com/</a></p>",
" <h3>Electronic Forms</h3>",
" <p class='large-p'><a href='http://www.google.com/forms'>http://www.google.com/forms</a></p>",
" <p class='large-p'><a href='http://www.typeform.com'>http://www.typeform.com</a></p>",
"</div>"
]
}
]

View File

@ -1,22 +0,0 @@
[
{
"id": "bd7158d9c436eddfaeb5bd3c",
"name": "How can I reach the Free Code Camp team to interview them for my publication?",
"dashedName": "how-can-i-reach-the-free-code-camp-team-to-interview-them-for-my-publication",
"category": "contact",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>We're happy to do a quick interview for your publication or show. Here's whom you should contact about what, and how to best reach them:</h3>",
" <p class='large-p'>",
" <ol>",
" <li class='large-li'>Want to talk to about Free Code Camp's curriculum or long-term vision? Reach out to Quincy Larson. He's <a href='https://twitter.com/ossia' target='_blank'>@ossia</a> on Twitter and @quincylarson on Gitter.</li>",
" <li class='large-li'>Want to talk about Free Code Camp's open source codebase, infrastructure, or JavaScript in general? Talk to Nathan Leniz. He's <a href='https://twitter.com/terakilobyte' target='_blank'>@terakilobyte</a> on Twitter and @terakilobyte on Gitter.</li>",
" <li class='large-li'>Want to explore our efforts to empower nonprofits with code? Michael D. Johnson eats, sleeps and breathes that. He's <a href='https://twitter.com/figitalboy' target='_blank'>@figitalboy</a> on Twitter and @codenonprofit on Gitter.</li>",
" <li class='large-li'>Want to get a camper's perspective on our community? Talk with Bianca Mihai (@biancamihai on Gitter and <a href='https://twitter.com/bubuslubu' target='_blank'>@bubuslubu</a> on Twitter) or Suzanne Atkinson (@adventurebear on Gitter and <a href='https://twitter.com/SteelCityCoach' target='_blank'>@steelcitycoach</a> on Twitter).",
" </ol>",
" </p>",
" <p class='large-p'>We strive to be helpful and transparent in everything we do. We'll do what we can to help you share our community with your audience.</p>",
"</div>"
]
}
]

View File

@ -1,814 +0,0 @@
[
{
"id": "bd7158d9c441eddfaeb5bdef",
"name": "How do I use this guide?",
"dashedName": "how-do-i-use-this-guide",
"category": "orientation",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>This guide strives to provide clear answers to common questions about Free Code Camp, learning to code, and getting a coding job.</h3>",
" <p class='large-p'>If you're logged in, you can click the \"Next article\" button to go to your next article.</p>",
" <p class='large-p'>You can also click the \"Show me all articles\" button to browse all the questions we answer.</p>",
"</div>"
]
},
{
"id": "bd7158d9c441eddfaeb5bdff",
"name": "What exactly is Free Code Camp?",
"dashedName": "what-exactly-is-free-code-camp",
"category": "orientation",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>We're a community of busy people who learn to code by building projects for nonprofits.</h3>",
" <p class='large-p'>We help our campers (students):</p>",
" <p class='large-p'>",
" <ol>",
" <li class='large-li'>Learn full stack JavaScript</li>",
" <li class='large-li'>Build a portfolio of real apps that real people are using</li>",
" <li class='large-li'>Get a coding job</li>",
" </ol>",
" </p>",
"</div>"
]
},
{
"id": "bd7158d9c441eddfaeb5bd1f",
"name": "Why do I need Free Code Camp?",
"dashedName": "why-do-i-need-free-code-camp",
"category": "orientation",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>Learning to code is hard.</h3>",
" <p class='large-p'>Most people who successfully learn to code:</p>",
" <p class='large-p'>",
" <ol>",
" <li class='large-li'>Make friends with people who code</li>",
" <li class='large-li'>Code a little every day</li>",
" </ol>",
" </p>",
" <p class='large-p'>We give you the structure and the community you need so you can successfully learn to code.</p>",
"</div>"
]
},
{
"id": "bd7158d9c441eddfaeb5bd2f",
"name": "What are the main advantages of Free Code Camp?",
"dashedName": "what-are-the-main-advantages-of-free-code-camp",
"category": "orientation",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>Our main advantage is that we're accessible to busy adults who want to change careers. Specifically, we're:</h3>",
" <p class='large-p'>",
" <ul>",
" <li class='large-li'>&bull; Free</li>",
" <li class='large-li'>&bull; Self-paced</li>",
" <li class='large-li'>&bull; Browser-based</li>",
" </ul>",
" </p>",
"</div>"
]
},
{
"id": "bd7158d9c441eddfaeb5bd3f",
"name": "How does Free Code Camp work?",
"dashedName": "how-does-free-code-camp-work",
"category": "orientation",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>Our free, self-paced, browser-based program takes about 1,600 hours to complete.",
" <div class='spacer'></div>",
" <img class='img-center img-responsive' alt='An image of a table showing the different segments of Free Code Camp's curriculum. This one shows that first you'll do about 200 hours of lessons. These are our \"Waypoints\".' src='https://s3.amazonaws.com/freecodecamp/curriculum-diagram-waypoints.jpg'/>",
" <div class='spacer'></div>",
" <img class='img-center img-responsive' alt='An image of a table showing the different segments of Free Code Camp's curriculum. This one shows that next you'll write algorithms for 200 hours. These are our \"Bonfires\"' src='https://s3.amazonaws.com/freecodecamp/curriculum-diagram-bonfires.jpg'/>",
" <div class='spacer'></div>",
" <img class='img-center img-responsive' alt='An image of a table showing the different segments of Free Code Camp's curriculum. This one shows that next you'll write algorithms for 200 hours. These are our \"Ziplines\"' src='https://s3.amazonaws.com/freecodecamp/curriculum-diagram-ziplines.jpg'/>",
" <div class='spacer'></div>",
" <img class='img-center img-responsive' alt='An image of a table showing the different segments of Free Code Camp's curriculum. This one shows that next you'll write algorithms for 200 hours. These are our \"Basejumps\"' src='https://s3.amazonaws.com/freecodecamp/curriculum-diagram-basejumps.jpg'/>",
" <div class='spacer'></div>",
" <img class='img-center img-responsive' alt='An image of a table showing the different segments of Free Code Camp's curriculum. This one shows that finally you build full stack JavaScript apps for nonprofits for 600 hours. These are our \"Nonprofit Projects\"' src='https://s3.amazonaws.com/freecodecamp/curriculum-diagram-nonprofit-projects.jpg'/>",
" <div class='spacer'></div>",
" <img class='img-center img-responsive' alt='An image of a table showing the different segments of Free Code Camp's curriculum. This one shows that all of these sections summed up for a total of 1,600 hours of coding experience.' src='https://s3.amazonaws.com/freecodecamp/curriculum-diagram-full.jpg'/>",
"</div>"
]
},
{
"id": "bd7158d9c441eddfaeb5bd4f",
"name": "Will I really be able to get software engineering job after Free Code Camp?",
"dashedName": "will-i-really-be-able-to-get-a-software-engineering-job-after-free-code-camp",
"category": "orientation",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3 class='text-left'>If you complete this program, <span class='text-info'>you will be able to get a coding job</span>. Many of our campers have already gotten coding jobs.</h3>",
" <img class='img-center img-responsive' src=\"https://www.evernote.com/shard/s116/sh/55c128c7-5d99-41cc-b03d-b3de22611c8d/b43e467b3889f646fec34bb4c161e2a2/deep/0/What's-wrong-with-this-picture----Code.org.png\"/>",
" <h3>Here are the facts:</h3>",
" <p class='large-p'>",
" <ul>",
" <li class='large-li'>&bull; There are hundreds of thousands of unfilled coding jobs.</li>",
" <li class='large-li'>&bull; Employers and the US government have joined together to promote nontraditional coding programs like Free Code Camp.</li>",
" <li class='large-li'>&bull; Full stack JavaScript is one of best paying skill sets, and has a ton of job openings.</li>",
" <li class='large-li'>&bull; The best proof that you're an employable developer is a portfolio filled with real apps that real people are using.</li>",
" </ul>",
" </p>",
"</div>"
]
},
{
"id": "bd7158d9c440eddfaeb5bdef",
"name": "What will I learn, and in what sequence?",
"dashedName": "what-will-i-learn-and-in-what-sequence",
"category": "orientation",
"description": [
"<div class=\"text-left col-xs-12 col-md-10 col-md-offset-1\">",
" <h3>First, you'll learn basic web design tools like:</h3>",
" <p class='large-p'>",
" <ul>",
" <li class='large-li'>&#8226 HTML - the structure of web pages</li>",
" <li class='large-li'>&#8226 CSS - the visual style of web pages</li>",
" <li class='large-li'>&#8226 Bootstrap - a \"responsive design\" tool that helps your websites look great on tablets and phones</li>",
" <li class='large-li'>&#8226 jQuery - an easy tool for controlling content in the browser</li>",
" <li class='large-li'>&#8226 Chrome DevTools - a tool for understanding and debugging websites, right in your browser</li>",
" </ul>",
" </p>",
" <h3>Then you'll learn computer science and the art of programming:</h3>",
" <p class='large-p'>",
" <ul>",
" <li class='large-li'>&#8226 JavaScript - the one programming language that all web browsers use</li>",
" <li class='large-li'>&#8226 Algorithms - step-by-step recipes for getting things done</li>",
" </ul>",
" </p>",
" <h3>Finally you'll learn Agile Methodologies and Full Stack JavaScript to build projects for nonprofits:</h3>",
" <p class='large-p'>",
" <ul>",
" <li class='large-li'>&#8226 Agile - a set of software development principles that focus the design and production of a project on the needs of its users</li>",
" <li class='large-li'>&#8226 Git - a version control system for saving and sharing your projects</li>",
" <li class='large-li'>&#8226 MongoDB - a popular non-relational database</li>",
" <li class='large-li'>&#8226 Angular.js - a tool for making exciting web interfaces</li>",
" <li class='large-li'>&#8226 Express.js - a powerful web development framework</li>",
" <li class='large-li'>&#8226 Node.js - a platform for creating scalable network applications.</li>",
" </ul>",
" </p>",
"</div>"
]
},
{
"id": "bd7158d9c434eddfaeb5bdef",
"name": "How long does Free Code Camp take?",
"dashedName": "how-long-does-free-code-camp-take",
"category": "orientation",
"description": [
"<div class=\"text-left col-xs-12 col-md-10 col-md-offset-1\">",
" <h3>It takes about 1,600 hours of coding to develop the skills you'll need to get an entry level software engineering job.</h3>",
" <p class='large-p'>Most coding bootcamps try to jam all this into 3 or 4 months of intensive study. Free Code Camp is fully online, and there will always be other people at your skill level that you can pair program with, so you can learn at your own pace. Here are some example coding schedules:</p>",
" <table class=\"table\">",
" <thead>",
" <th>Time budgeted</th>",
" <th class=\"hidden-xs\">Hours per week</th>",
" <th>Weeks to complete</th>",
" </thead>",
" <tr class=\"info\">",
" <td>Weekends</td>",
" <td class=\"hidden-xs\">10 hours/week</td>",
" <td>160 weeks (36 months)</td>",
" </tr>",
" <tr class=\"success\">",
" <td>Nights and Weekends</td>",
" <td class=\"hidden-xs\">20 hours/week</td>",
" <td>80 weeks (18 months)</td>",
" </tr>",
" <tr class=\"warning\">",
" <td>Full time</td>",
" <td class=\"hidden-xs\">40 hours/week</td>",
" <td>40 weeks (9 months)</td>",
" </tr>",
" <tr class=\"danger\">",
" <td>Traditional Bootcamp Pacing</td>",
" <td class=\"hidden-xs\">80 hours/week</td>",
" <td>20 weeks (5 months)</td>",
" </tr>",
" </table>",
"</div>"
]
},
{
"id": "bd7158d9c438eddfaeb5bdef",
"name": "Why does Free Code Camp use JavaScript instead of Ruby or Python?",
"dashedName": "why-does-free-code-camp-use-javascript-instead-of-ruby-or-python",
"category": "orientation",
"description": [
"<div class=\"text-left col-xs-12 col-md-10 col-md-offset-1\">",
" <p class='large-p'>Like JavaScript, Ruby and Python are high-level scripting languages that can be used for full stack web development.</p>",
" <p class='large-p'>But even if you learned these languages, you'd still need to learn JavaScript. That's because JavaScript is the only language that runs in web browsers. JavaScript has been around for 20 years, and it is still growing in popularity.</p>",
" <p class='large-p'>Because of this, JavaScript has more tools and online learning resources than any other language.</p>",
" <img src=\"https://s3.amazonaws.com/freecodecamp/github-repo-growth.png\" style=\"max-height: 355px;\" alt=\"A chart showing the volume of new GitHub repositories by year, with JavaScript growing and most languages declining.\" class=\"img-center img-responsive\"/>",
"<br>",
"</div>"
]
},
{
"id": "bd7158d9c437eddfaeb5bdef",
"name": "What is pair programming, and why is it special?",
"dashedName": "what-is-pair-programming-and-why-is-it-special",
"category": "orientation",
"description": [
"<div class=\"text-left col-xs-12 col-md-10 col-md-offset-1\">",
" <h3>Pair programming is where two people code together on one computer.</h3>",
" <img class='img-responsive img-center' src='http://cs10.org/sp15/resources/images/pairprogramming.jpg'>",
" <p class='large-p'>You discuss different approaches to solving problems, and keep each other motivated. The result is better code than either of you could have written by yourselves. Because of its benefits, many engineers pair program full time. And it's the best way to learn coding. Thanks to tools that allow two people to share mouse and keyboard inputs, you can pair program with a friend without needing to be in the same room.</p>",
" <p class='large-p'>By pair programming with other campers on our coding challenges you'll develop the necessary skills to work with people at nonprofits to build real-life software solutions.</p>",
"</div>"
]
},
{
"id": "bd7158d9c436eddfaeb5bd2f",
"name": "How do I get help when I get stuck?",
"dashedName": "how-do-i-get-help-when-i-get-stuck",
"category": "orientation",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>When you get stuck, remember: RSAP.</h3>",
" <p class='large-p'>",
" <ol>",
" <li class='large-li'><span class='text-info'>Read</span> the documentation or error</li>",
" <li class='large-li'><span class='text-info'>Search</span> Google</li>",
" <li class='large-li'><span class='text-info'>Ask</span> your friends for help</li>",
" <li class='large-li'><span class='text-info'>Post</span> on Stack Overflow</li>",
" </ol>",
" </p>",
" <p class='large-p'>This is the most time-efficient way to handle being stuck, and it's the most respectful of other people's time, too.</p>",
" <p class='large-p'>Most of the time, you'll solve your problem after just one or two steps of this algorithm.</p>",
" <p class='large-p'>We have a special chat room just for getting help: <a href='//gitter.im/freecodecamp/help/' target='_blank'>https://gitter.im/freecodecamp/help/</a></p>",
" <p class='large-p'>Also, if you need to post on Stack Overflow, be sure to read their guide to asking good questions: <a href='http://stackoverflow.com/help/how-to-ask' target='_blank'>http://stackoverflow.com/help/how-to-ask</a>.</p>",
" <p class='large-p'>Learning to code is hard. But it's a lot easier if you ask for help when you need it!</p>",
"</div>"
]
},
{
"id": "bd7158d9c435eddfaeb5bdcf",
"name": "What are the Official Free Code Camp Chat Rooms?",
"dashedName": "what-are-the-official-free-code-camp-chat-rooms",
"category": "orientation",
"description": [
"<div class=\"text-left col-xs-12 col-md-10 col-md-offset-1\">",
" <h3>We have 4 official chat rooms:</h3>",
" <ol>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/FreeCodeCamp' target='_blank'>Free Code Camp</a> - a friendly place where you can hang out and chat</li>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/Help' target='_blank'>Help</a> - the best place to get help from your fellow campers</li>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/LetsPair' target='_blank'>LetsPair</a> - the best room to find fellow campers to pair program with using <a href='/field-guide/how-do-i-install-screenhero'>Screen Hero</li>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/TeamViewer' target='_blank'>TeamViewer</a> - the best room to find fellow campers who use Linux and pair with using <a href='https://www.teamviewer.com/en/download/linux.aspx' target='_blank'>Team Viewer</a></li>",
" </ol>",
" <h3>We also have language-specific chat rooms:</h3>",
" <ul>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/Arabic' target='_blank'>Arabic</a></li>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/Chinese' target='_blank'>Chinese</a></li>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/Dutch' target='_blank'>Dutch</a></li>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/Francais' target='_blank'>French</a></li>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/Deutsch' target='_blank'>German</a></li>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/Portugues' target='_blank'>Portugues</a></li>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/Russian' target='_blank'>Russian</a></li>",
" <li class='large-li'><a href='//gitter.im/FreeCodeCamp/Espanol' target='_blank'>Spanish</a></li>",
" </ul>",
" <h3>Finally, we have one room for <a href='/field-guide/how-can-i-find-other-free-code-camp-campers-in-my-city'>each of our local Campsites</a>.</h3>",
" <p class='large-p'>If you think we should add a chat room, please message @quincylarson in Gitter.</p>",
"</div>"
]
},
{
"id": "bd7158d9c436eddfaeb5bdef",
"name": "If Free Code Camp is free, how does it make money?",
"dashedName": "if-free-code-camp-is-free-how-does-it-make-money",
"category": "orientation",
"description": [
"<div class=\"text-left col-xs-12 col-md-10 col-md-offset-1\">",
" <h3>We are completely free for both students and for nonprofits.</h3>",
" <p class='large-p'>Our name is Free Code Camp. We are a free code camp. If you had to pay us (or sign over future earnings), we'd have to change our name. And we are not going to do that.</p>",
" <p class='large-p'>Everyone working on our community and our open source projects is a volunteer.</p>",
" <p class='large-p'>We plan to eventually cover our operational costs by earning job placement bonuses from companies who hire our graduates. Note that we will not actually garnish any wages from our graduates - employers are already paying recruiters thousands of dollars to find successful candidates. Employers will simply pay the recruitment bonus to Free Code Camp instead of paying a recruiter.</p>",
"</div>"
]
},
{
"id": "bd7158d9c435eddfaeb5bdef",
"name": "Does Free Code Camp have an application process?",
"dashedName": "does-free-code-camp-have-an-application-process",
"category": "orientation",
"description": [
"<div class=\"text-left col-xs-12 col-md-10 col-md-offset-1\">",
" <h3>Unlike coding bootcamps, anyone can study at Free Code Camp.</h3>",
" <p class='large-p'>We're not going to tell you that you can't become a software engineer. We believe the only person who should be able to tell you that is you.</p>",
" <p class='large-p'>If you persevere, and keep working through our challenges and nonprofit projects, you will become an employable software engineer.</p>",
"</div>"
]
},
{
"id": "bd7158d9c436eddfaeb5bd3d",
"name": "How can I find other Free Code Camp campers in my city?",
"dashedName": "how-can-i-find-other-free-code-camp-campers-in-my-city",
"category": "orientation",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>Find your city below and join their Facebook group and Gitter Chat. This is a great way to hang out with other coders, share insights, and pair program.</h3>",
" <h4>",
" <table class=\"table table-striped\">",
" <tr><td>Accra</td><td><a href='https://www.facebook.com/groups/free.code.camp.accra/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Accra' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Ahmedabad</td><td><a href='https://www.facebook.com/groups/free.code.camp.ahmedabad/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Ahmedabad' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Albany</td><td><a href='https://www.facebook.com/groups/free.code.camp.albany.ny/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Albany' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Alameda</td><td><a href='https://www.facebook.com/groups/free.code.camp.berkeley/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/EastBay' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Amsterdam</td><td><a href='https://www.facebook.com/groups/free.code.camp.amsterdam/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Amsterdam' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Ann Arbor</td><td><a href='https://www.facebook.com/groups/free.code.camp.ann.arbor/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/AnnArbor' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Apucarana</td><td><a href='https://www.facebook.com/groups/free.code.camp.your.apucarana.parana/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Apucarana' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Aracaju</td><td><a href='https://www.facebook.com/groups/free.code.camp.aracaju/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Aracaju' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Asheville</td><td><a href='https://www.facebook.com/groups/free.code.camp.asheville/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Asheville' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Asuncion</td><td><a href='https://www.facebook.com/groups/free.code.camp.asuncion/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Asuncion' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Atlanta</td><td><a href='https://www.facebook.com/groups/free.code.camp.atlanta/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Atlanta' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Auckland</td><td><a href='https://www.facebook.com/groups/awesome.code.camp/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Auckland' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Austin</td><td><a href='https://www.facebook.com/groups/free.code.camp.austin/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Austin' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Baltimore</td><td><a href='https://www.facebook.com/groups/free.code.camp.baltimore/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Baltimore' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bandung</td><td><a href='https://www.facebook.com/groups/free.code.camp.bandung/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bandung' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bangkok</td><td><a href='https://www.facebook.com/groups/free.code.camp.bangkok/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bangkok' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Belem</td><td><a href='https://www.facebook.com/groups/free.code.camp.belem/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Belem' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Belgrade</td><td><a href='https://www.facebook.com/groups/free.code.camp.belgrade/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Belgrade' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bellingham</td><td><a href='https://www.facebook.com/groups/free.code.camp.bellingham/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bellingham' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Belo Horizonte</td><td><a href='https://www.facebook.com/groups/free.code.camp.belo.horizonte/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/BeloHorizonte' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bengaluru</td><td><a href='https://www.facebook.com/groups/free.code.camp.bengaluru/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bengaluru' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Berkeley</td><td><a href='https://www.facebook.com/groups/free.code.camp.berkeley/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/EastBay' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Berlin</td><td><a href='https://www.facebook.com/groups/free.code.camp.berlin/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Berlin' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bhaktapur</td><td><a href='https://www.facebook.com/groups/free.code.camp.bhaktapur/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bhaktapur' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bijeljina</td><td><a href='https://www.facebook.com/groups/free.code.camp.bijeljina/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bijeljina' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bydgoszcz</td><td><a href='https://www.facebook.com/groups/free.code.camp.bydgoszcz/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bydgoszcz' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Birmingham</td><td><a href='https://www.facebook.com/groups/free.code.camp.birmingham.uk/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Birmingham' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Birmingham, Alabama</td><td><a href='https://www.facebook.com/groups/free.code.camp.oxford.al/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/BirminghamAlabama' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bismarck, ND</td><td><a href='https://www.facebook.com/groups/free.code.camp.bismarck.north.dakota/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bismarck' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bogota</td><td><a href='https://www.facebook.com/groups/free.code.camp.bogota/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bogota' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Boston</td><td><a href='https://www.facebook.com/groups/free.code.camp.boston/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Boston' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Boulder</td><td><a href='https://www.facebook.com/groups/free.code.camp.boulder/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Boulder' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Brasilia</td><td><a href='https://www.facebook.com/groups/free.code.camp.brasilia/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Brasilia' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bratislava</td><td><a href='https://www.facebook.com/groups/free.code.camp.bratislava/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bratislava' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Brno</td><td><a href='https://www.facebook.com/groups/free.code.camp.brno/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Brno' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Brussels</td><td><a href='https://www.facebook.com/groups/free.code.camp.brussels/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Brussels' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bucaramanga</td><td><a href='https://www.facebook.com/groups/free.code.camp.bucaramanga/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bucaramanga' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Buenos Aires</td><td><a href='https://www.facebook.com/groups/free.code.camp.buenos.aires/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/BuenosAires' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Bucharest</td><td><a href='https://www.facebook.com/groups/free.code.camp.bucharest/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Bucharest' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Budapest</td><td><a href='https://www.facebook.com/groups/free.code.camp.budapest/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Budapest' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Cairo</td><td><a href='https://www.facebook.com/groups/free.code.camp.cairo/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Cairo' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Calgary</td><td><a href='https://www.facebook.com/groups/free.code.camp.calgary/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Calgary' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Campinas</td><td><a href='https://www.facebook.com/groups/free.code.camp.campinas/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Campinas' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Cape Cod</td><td><a href='https://www.facebook.com/groups/free.code.camp.cape.cod/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/CapeCod' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Cape Town</td><td><a href='https://www.facebook.com/groups/free.code.camp.cape.town/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/CapeTown' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Caracas</td><td><a href='https://www.facebook.com/groups/free.code.camp.caracas/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Caracas' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Charlotte</td><td><a href='https://www.facebook.com/groups/free.code.camp.charlotte.nc/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Charlotte' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Chattanooga</td><td><a href='https://www.facebook.com/groups/free.code.camp.chattanooga/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Chattanooga' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Chennai</td><td><a href='https://www.facebook.com/groups/free.code.camp.chennai/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Chennai' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Chiang Mai</td><td><a href='https://www.facebook.com/groups/free.code.camp.chiang.mai/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/ChiangMai' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Chicago</td><td><a href='https://www.facebook.com/groups/free.code.camp.chicago/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Chicago' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Cincinnati</td><td><a href='https://www.facebook.com/groups/free.code.camp.cincinnati/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Cincinnati' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Clarksville</td><td><a href='https://www.facebook.com/groups/free.code.camp.clarksville.TN/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Clarksville' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Cleveland</td><td><a href='https://www.facebook.com/groups/free.code.camp.cleveland/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Cleveland' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Cluj</td><td><a href='https://www.facebook.com/groups/free.code.camp.cluj' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Cluj' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Coimbatore</td><td><a href='https://www.facebook.com/groups/free.code.camp.coimbatore' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Coimbatore' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Coventry</td><td><a href='https://www.facebook.com/groups/free.code.camp.coventry/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Coventry' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Curitiba</td><td><a href='https://www.facebook.com/groups/free.code.camp.curitiba/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Curitiba' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Dallas</td><td><a href='https://www.facebook.com/groups/free.code.camp.dallas/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/DallasFortWorth' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Delhi</td><td><a href='https://www.facebook.com/groups/free.code.camp.delhi/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Delhi' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Denver</td><td><a href='https://www.facebook.com/groups/free.code.camp.denver/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Denver' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Des Moines</td><td><a href='https://www.facebook.com/groups/free.code.camp.des.moines/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/DesMoines' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Detroit</td><td><a href='https://www.facebook.com/groups/free.code.camp.detroit/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Detroit' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Dhaka</td><td><a href='https://www.facebook.com/groups/free.code.camp.dhaka/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Dhaka' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Dnipropetrovsk</td><td><a href='https://www.facebook.com/groups/free.code.camp.dnipropetrovsk' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Dnipropetrovsk' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Doha</td><td><a href='https://www.facebook.com/groups/free.code.camp.doha/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Doha' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Dubai</td><td><a href='https://www.facebook.com/groups/free.code.camp.dubai/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Dubai' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Dublin</td><td><a href='https://www.facebook.com/groups/free.code.camp.dublin/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Dublin' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Durango</td><td><a href='https://www.facebook.com/groups/free.code.camp.durango/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Durango' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Edmonton</td><td><a href='https://www.facebook.com/groups/free.code.camp.edmonton/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Edmonton' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Firenze</td><td><a href='https://www.facebook.com/groups/free.code.camp.firenze/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Firenze' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Flagstaff</td><td><a href='https://www.facebook.com/groups/free.code.camp.northern.arizona/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/NorthernArizona' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Florianopolis</td><td><a href='https://www.facebook.com/groups/free.code.camp.florianopolis/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Florianopolis' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Fort Worth</td><td><a href='https://www.facebook.com/groups/free.code.camp.dallas/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/DallasFortWorth' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Frankfurt</td><td><a href='https://www.facebook.com/groups/free.code.camp.frankfurt.main/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Frankfurt' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Freehold</td><td><a href='https://www.facebook.com/groups/free.code.camp.freehold/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Freehold' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Galveston</td><td><a href='https://www.facebook.com/groups/free.code.camp.galveston/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Galveston' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Gdynia</td><td><a href='https://www.facebook.com/groups/free.code.camp.gdynia/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Gdynia' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Geneva</td><td><a href='https://www.facebook.com/groups/free.code.camp.geneva/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Geneva' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Glendora</td><td><a href='https://www.facebook.com/groups/free.code.camp.Glendora.California/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Glendora' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Guntur</td><td><a href='https://www.facebook.com/groups/free.code.camp.guntur/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Guntur' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Granada</td><td><a href='https://www.facebook.com/groups/free.code.camp.granada/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Granada' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Guarapuava</td><td><a href='https://www.facebook.com/groups/free.code.camp.guarapuava/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Guarapuava' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Hampton Roads</td><td><a href='https://www.facebook.com/groups/free.code.camp.hamptonroads/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/HamptonRoads' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Hanoi</td><td><a href='https://www.facebook.com/groups/free.code.camp.hanoi/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Hanoi' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Hartford</td><td><a href='https://www.facebook.com/groups/free.code.camp.hartford.connecticut/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Hartford' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Hermosillo</td><td><a href='https://www.facebook.com/groups/free.code.camp.Hermosillo/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Hermosillo' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Ho Chi Minh City</td><td><a href='https://www.facebook.com/groups/free.code.camp.hochiminhcity/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/HoChiMinhCity' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Hong Kong</td><td><a href='https://www.facebook.com/groups/free.code.camp.hk/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/HongKong' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Houston</td><td><a href='https://www.facebook.com/groups/free.code.camp.houston/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Houston' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Hyderabad</td><td><a href='https://www.facebook.com/groups/free.code.camp.hyderabad/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Hyderabad' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Istanbul</td><td><a href='https://www.facebook.com/groups/free.code.camp.istanbul/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Istanbul' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Indianapolis</td><td><a href='https://www.facebook.com/groups/free.code.camp.indianapolis/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Indianapolis' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Iasi</td><td><a href='https://www.facebook.com/groups/free.code.camp.iasi.romania/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Iasi' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Irkutsk</td><td><a href='https://www.facebook.com/groups/free.code.camp.irkutsk/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Irkutsk' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Islamabad</td><td><a href='https://www.facebook.com/groups/free.code.camp.islamabad/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Islamabad' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Ivano Frankivsk</td><td><a href='https://www.facebook.com/groups/free.code.camp.ivano.frankivsk/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/IvanoFrankivsk' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Jaipur</td><td><a href='https://www.facebook.com/groups/free.code.camp.jaipur/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Jaipur' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Jakarta</td><td><a href='https://www.facebook.com/groups/free.code.camp.jakarta/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Jakarta' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Joao Pessoa</td><td><a href='https://www.facebook.com/groups/free.code.camp.joao.pessoa/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/JoaoPessoa' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Johannesburg</td><td><a href='https://www.facebook.com/groups/free.code.camp.johannesburg/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Johannesburg' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Kaduna</td><td><a href='https://www.facebook.com/groups/free.code.camp.kaduna/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Kaduna' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Kalamazoo</td><td><a href='https://www.facebook.com/groups/free.code.camp.kalamazoo/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Kalamazoo' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Kampala</td><td><a href='https://www.facebook.com/groups/free.code.camp.kampala/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Kampala' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Kansas City</td><td><a href='https://www.facebook.com/groups/free.code.camp.kansascity/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/KansasCity' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Karachi</td><td><a href='https://www.facebook.com/groups/free.code.camp.karachi/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Karachi' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Kathmandu</td><td><a href='https://www.facebook.com/groups/free.code.camp.kathmandu/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Kathmandu' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Kemerovo</td><td><a href='https://www.facebook.com/groups/free.code.camp.kemerovo/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Kemerovo' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Kerch</td><td><a href='https://www.facebook.com/groups/free.code.camp.kerch/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Kerch' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Kiev</td><td><a href='https://www.facebook.com/groups/free.code.camp.kiev/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Kiev' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Kolkata</td><td><a href='https://www.facebook.com/groups/free.code.camp.kolkata/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Kolkata' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Krasnodar</td><td><a href='https://www.facebook.com/groups/free.code.camp.krasnodar/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Krasnodar' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Kryvyi Rih</td><td><a href='https://www.facebook.com/groups/free.code.camp.kryvyi.rih/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/KryvyiRih' target='_blank'>Gitter</a></td></tr>",
" <tr><td>La Crosse</td><td><a href='https://www.facebook.com/groups/free.code.camp.la.crosse' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/LaCrosse' target='_blank'>Gitter</a></td></tr>",
" <tr><td>La Paz</td><td><a href='https://www.facebook.com/groups/free.code.camp.La.Paz/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/LaPaz' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Lagos</td><td><a href='https://www.facebook.com/groups/free.code.camp.lagos/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Lagos' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Lahore</td><td><a href='https://www.facebook.com/groups/free.code.camp.lahore/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Lahore' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Leesburg</td><td><a href='https://www.facebook.com/groups/free.code.camp.leesburg/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Leesburg' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Lehi</td><td><a href='https://www.facebook.com/groups/free.code.camp.lehi/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Lehi' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Lima</td><td><a href='https://www.facebook.com/groups/Free.Code.Camp.Lima/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Lima' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Limassol</td><td><a href='https://www.facebook.com/groups/free.code.camp.limassol/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Limassol' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Lisbon</td><td><a href='https://www.facebook.com/groups/free.code.camp.lisbon/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Lisbon' target='_blank'>Gitter</a></td></tr>",
" <tr><td>London</td><td><a href='https://www.facebook.com/groups/free.code.camp.london/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/London' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Los Angeles</td><td><a href='https://www.facebook.com/groups/free.code.camp.los.angeles/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/FCCLosAngeles' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Lubbock</td><td><a href='https://www.facebook.com/groups/free.code.camp.lubbock/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Lubbock' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Madrid</td><td><a href='https://www.facebook.com/groups/free.code.camp.madrid/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Madrid' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Manchester, UK</td><td><a href='https://www.facebook.com/groups/free.code.camp.manchester/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Manchester' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Manila</td><td><a href='https://www.facebook.com/groups/free.code.camp.manila/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Manila' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Melbourne</td><td><a href='https://www.facebook.com/groups/free.code.camp.Melbourne/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Melbourne' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Mexico City</td><td><a href='https://www.facebook.com/groups/free.code.camp.mexico.df/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/MexicoCity' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Miami</td><td><a href='https://www.facebook.com/groups/free.code.camp.miami/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Miami' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Milwaukee</td><td><a href='https://www.facebook.com/groups/free.code.camp.milwaukee/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Milwaukee' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Minneapolis</td><td><a href='https://www.facebook.com/groups/free.code.camp.minneapolis/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Minneapolis' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Mississippi Gulf Coast</td><td><a href='https://www.facebook.com/groups/free.code.camp.msgulfcoast/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/MississippiGulfCoast' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Missoula</td><td><a href='https://www.facebook.com/groups/free.code.camp.missoula/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Missoula' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Monterrey</td><td><a href='https://www.facebook.com/groups/free.code.camp.monterrey/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Monterrey' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Montgomery</td><td><a href='https://www.facebook.com/groups/free.code.camp.montgomery.alabama/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Montgomery' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Montreal</td><td><a href='https://www.facebook.com/groups/free.code.camp.montreal/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Montreal' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Moscow</td><td><a href='https://www.facebook.com/groups/free.code.camp.moscow/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Moscow' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Munich</td><td><a href='https://www.facebook.com/groups/free.code.camp.munich/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Munich' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Mysore</td><td><a href='https://www.facebook.com/groups/free.code.camp.mysore/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Mysore' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Nairobi</td><td><a href='https://www.facebook.com/groups/free.code.camp.nairobi/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Nairobi' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Nashik</td><td><a href='https://www.facebook.com/groups/free.code.camp.your.nashik/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Nashik' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Nashville</td><td><a href='https://www.facebook.com/groups/free.code.camp.nashville/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Nashville' target='_blank'>Gitter</a></td></tr>",
" <tr><td>New Haven</td><td><a href='https://www.facebook.com/groups/free.code.camp.new.haven/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/NewHaven' target='_blank'>Gitter</a></td></tr>",
" <tr><td>New Orleans</td><td><a href='https://www.facebook.com/groups/free.code.camp.neworleans/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/NewOrleans' target='_blank'>Gitter</a></td></tr>",
" <tr><td>New Paltz</td><td><a href='https://www.facebook.com/groups/free.code.camp.new.paltz/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/NewPaltz' target='_blank'>Gitter</a></td></tr>",
" <tr><td>New York City</td><td><a href='https://www.facebook.com/groups/free.code.camp.new.york.city/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/NewYorkCity' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Nicosia</td><td><a href='https://www.facebook.com/groups/free.code.camp.nicosia/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Nicosia' target='_blank'>Gitter</a></td></tr>",
" <tr><td>North Platte</td><td><a href='https://www.facebook.com/groups/free.code.camp.north.platte/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/NorthPlatte' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Oakland</td><td><a href='https://www.facebook.com/groups/free.code.camp.berkeley/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/EastBay' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Oklahoma City</td><td><a href='https://www.facebook.com/groups/free.code.camp.oklahoma.city/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/OklahomaCity' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Omaha</td><td><a href='https://www.facebook.com/groups/free.code.camp.omaha/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Omaha' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Orange County</td><td><a href='https://www.facebook.com/groups/free.code.camp.orange.county/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/OrangeCounty' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Orlando</td><td><a href='https://www.facebook.com/groups/free.code.camp.orlando/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Orlando' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Parana</td><td><a href='https://www.facebook.com/groups/free.code.camp.your.apucarana.parana/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Parana' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Paris</td><td><a href='https://www.facebook.com/groups/free.code.camp.paris/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Paris' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Pasadena</td><td><a href='https://www.facebook.com/groups/free.code.camp.pasadena.ca/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Pasadena' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Pasto</td><td><a href='https://www.facebook.com/groups/free.code.camp.pasto/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Pasto' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Penang</td><td><a href='https://www.facebook.com/groups/free.code.camp.penang/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Penang' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Philadelphia</td><td><a href='https://www.facebook.com/groups/free.code.camp.philadelphia/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Philadelphia' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Pittsburgh</td><td><a href='https://www.facebook.com/groups/free.code.camp.pittsburgh.pa/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Pittsburgh' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Poitiers</td><td><a href='https://www.facebook.com/groups/free.code.camp.poitiers/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Poitiers' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Porto</td><td><a href='https://www.facebook.com/groups/free.code.camp.porto/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Porto' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Pune</td><td><a href='https://www.facebook.com/groups/free.code.camp.pune/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Pune' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Phoenix</td><td><a href='https://www.facebook.com/groups/free.code.camp.tempe.phoenix.scottsdale/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Phoenix' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Port Harcourt</td><td><a href='https://www.facebook.com/groups/free.code.camp.port.harcourt/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Harcourt' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Portland</td><td><a href='https://www.facebook.com/groups/free.code.camp.portland/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Portland' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Prescott</td><td><a href='https://www.facebook.com/groups/free.code.camp.northern.arizona/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/NorthernArizona' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Pristina</td><td><a href='https://www.facebook.com/groups/free.code.camp.pristina/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Pristina' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Providence</td><td><a href='https://www.facebook.com/groups/free.code.camp.providence/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Providence' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Provo</td><td><a href='https://www.facebook.com/groups/free.code.camp.provo/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Provo' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Quibdo</td><td><a href='https://www.facebook.com/groups/free.code.camp.quibdo/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Quibdo' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Raleigh</td><td><a href='https://www.facebook.com/groups/free.code.camp.raleigh/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Raleigh' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Recife</td><td><a href='https://www.facebook.com/groups/free.code.camp.recife' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Recife' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Richmond</td><td><a href='https://www.facebook.com/groups/free.code.camp.richmond/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Richmond' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Rio de Janeiro</td><td><a href='https://www.facebook.com/groups/free.code.camp.rio.de.janeiro/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/RiodeJaneiro' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Roma</td><td><a href='https://www.facebook.com/groups/free.code.camp.roma/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Roma' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Rotterdam</td><td><a href='https://www.facebook.com/groups/free.code.camp.rotterdam/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Rotterdam' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Sacramento</td><td><a href='https://www.facebook.com/groups/free.code.camp.sacramento/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Sacramento' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Saint George</td><td><a href='https://www.facebook.com/groups/free.code.camp.saint.george/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SaintGeorge' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Saint Louis</td><td><a href='https://www.facebook.com/groups/free.code.camp.saint.louis/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SaintLouis' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Saint Paul</td><td><a href='https://www.facebook.com/groups/free.code.camp.saint.paul.mn/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SaintPaul' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Salt Lake City</td><td><a href='https://www.facebook.com/groups/free.code.camp.salt.lake.city/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SaltLakeCity' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Salvador</td><td><a href='https://www.facebook.com/groups/free.code.camp.salvador/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Salvador' target='_blank'>Gitter</a></td></tr>",
" <tr><td>San Bernardino</td><td><a href='https://www.facebook.com/groups/free.code.camp.san.bernardino/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SanBernardino' target='_blank'>Gitter</a></td></tr>",
" <tr><td>San Diego</td><td><a href='https://www.facebook.com/groups/free.code.camp.san.diego/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SanDiego' target='_blank'>Gitter</a></td></tr>",
" <tr><td>San Francisco</td><td><a href='https://www.facebook.com/groups/free.code.camp.san.francisco' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SanFrancisco' target='_blank'>Gitter</a></td></tr>",
" <tr><td>San Jose</td><td><a href='https://www.facebook.com/groups/free.code.camp.san.jose' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SanJose' target='_blank'>Gitter</a></td></tr>",
" <tr><td>San Luis Obispo</td><td><a href='https://www.facebook.com/groups/free.code.camp.SLO/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SanLuisObispo' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Santa Barbara</td><td><a href='https://www.facebook.com/groups/free.code.camp.santa.barbara/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SantaBarbara' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Santa Cruz</td><td><a href='https://www.facebook.com/groups/free.code.camp.SC/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SantaCruz' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Sao Paulo</td><td><a href='https://www.facebook.com/groups/free.code.camp.sao.paulo/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SaoPaulo' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Scottsdale</td><td><a href='https://www.facebook.com/groups/free.code.camp.tempe.phoenix.scottsdale/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Phoenix' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Sedona</td><td><a href='https://www.facebook.com/groups/free.code.camp.northern.arizona/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/NorthernArizona' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Seattle</td><td><a href='https://www.facebook.com/groups/free.code.camp.seattle/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Seattle' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Seoul</td><td><a href='https://www.facebook.com/groups/free.code.camp.seoul/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Seoul' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Sidoarjo</td><td><a href='https://www.facebook.com/groups/free.code.camp.sidoarjo/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Sidoarjo' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Singapore</td><td><a href='https://www.facebook.com/groups/free.code.camp.singapore/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Singapore' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Skopje</td><td><a href='https://www.facebook.com/groups/free.code.camp.skopje/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Skopje' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Solo</td><td><a href='https://www.facebook.com/groups/free.code.camp.solo/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Solo' target='_blank'>Gitter</a></td></tr>",
" <tr><td>South Bend</td><td><a href='https://www.facebook.com/groups/free.code.camp.south.bend/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/SouthBend' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Stuttgart</td><td><a href='https://www.facebook.com/groups/free.code.camp.stuttgart/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Stuttgart' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Taipei</td><td><a href='https://www.facebook.com/groups/free.code.camp.taipei/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Taipei' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Tampa</td><td><a href='https://www.facebook.com/groups/free.code.camp.tampa/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Tampa' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Temecula</td><td><a href='https://www.facebook.com/groups/free.code.camp.temecula/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Temecula' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Tempe</td><td><a href='https://www.facebook.com/groups/free.code.camp.tempe.phoenix.scottsdale/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Phoenix' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Tirana</td><td><a href='https://www.facebook.com/groups/free.code.camp.tirana/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Tirana' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Toronto</td><td><a href='https://www.facebook.com/groups/free.code.camp.to/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Toronto' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Tucson</td><td><a href='https://www.facebook.com/groups/free.code.camp.tucson/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Tucson' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Tulsa</td><td><a href='https://www.facebook.com/groups/free.code.camp.tulsa/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Tulsa' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Verde Valley</td><td><a href='https://www.facebook.com/groups/free.code.camp.northern.arizona/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/NorthernArizona' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Valencia</td><td><a href='https://www.facebook.com/groups/free.code.camp.vlc/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Valencia' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Vancouver</td><td><a href='https://www.facebook.com/groups/free.code.camp.vancouver.bc.canada/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Vancouver' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Virginia Beach</td><td><a href='https://www.facebook.com/groups/free.code.camp.virginia.beach/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/VirginiaBeach' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Vitória</td><td><a href='https://www.facebook.com/groups/free.code.camp.vitoria.e.regiao.metropolitana.es/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Vitoria' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Washington, DC</td><td><a href='https://www.facebook.com/groups/free.code.camp.washington.dc/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/WashingtonDC' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Winnipeg</td><td><a href='https://www.facebook.com/groups/free.code.camp.winnipeg/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Winnipeg' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Yaounde</td><td><a href='https://www.facebook.com/groups/free.code.camp.yaounde' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Yaounde' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Znojmo</td><td><a href='https://www.facebook.com/groups/free.code.camp.znojmo/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Znojmo' target='_blank'>Gitter</a></td></tr>",
" <tr><td>Zurich</td><td><a href='https://www.facebook.com/groups/free.code.camp.zurich/' target='_blank'>Facebook</a> </td><td><a href='https://gitter.im/freecodecamp/Zurich' target='_blank'>Gitter</a></td></tr>",
" </table>",
" </h4>",
" <h3>If you didn't see your city on this list, you should create your own Facebook group for your city. Please follow these steps:</h3>",
" <p class='large-p'>",
" <ol>",
" <li class='large-li'>Sign in to Facebook.</li>",
" <li class='large-li'>Click the down arrow in the upper right corner of the screen, then choose \"Create Group\" from the options.",
" <img class='img-responsive img-center' src='https://www.evernote.com/shard/s116/sh/d01bb2bc-6260-4987-bedf-b2ce4c31972f/3eecbcff3109036cf90b69589360f407/deep/0/Facebook.png', alt='A screenshot of facebook showing the drop down menu that appears when you click the down arrow, with an arrow pointing to the \"Create Group\" option'>",
" <li class='large-li'>Set the group name as \"Free Code Camp\" plus the proper name of your city. Avoid using slang terms such as \"Philly\" for \"Philadelphia\". If your city is not the biggest city that uses its name, also include the state or province. For example, the Free Code Camp group in Paris, France should be called \"Free Code Camp Paris\". The Free Code Camp group in Paris, Texas should be called \"Free Code Camp Paris, Texas\".</li>",
" <li class='large-li'>Set your group to public.</li>",
" <li class='large-li'>You'll need to add at least one friend from your city to this group in order to create the group.</li>",
" <img class='img-responsive img-center' src='https://www.evernote.com/shard/s116/sh/4ed3197c-db1b-4103-a040-b42482ad232a/6c34948ebe12c57f0b7a54d7b2222ab3/deep/0/Facebook.png' alt='A screenshot of the Facebook group creation modal saying that your group name should be Free Code Camp plus your city name, that your group should be public, and that you need to invite at least one Facebook friend.'>",
" <li class='large-li'>Choose the graduation cap icon to indicate that this group is related to a school.</li>",
" <img class='img-responsive img-center' src='https://www.evernote.com/shard/s116/sh/00e461b3-e0a8-4ecd-9cbf-8b0ae9de75d1/59c4e9f25672b1b2ca2d7e6b06d55e0b/deep/0/Facebook.png' alt='a screenshot telling you to choose the graduation icon, which is on the forth row of icons, seven icons from the left.'>",
" <li class='large-li'>Click the \"...\" menu, then click \"Edit group settings\" in the dropdown menu.</li>",
" <img class='img-responsive img-center' src='https://www.evernote.com/shard/s116/sh/ae9a22e2-19a5-4309-b46c-f05a6be5644c/0870b25572d37d4d650cca1a0d59e407/deep/0/Free-Code-Camp-Testland.png' alt='a screenshot telling you to click the \"...\" button then choose the \"Edit group settings\" option'>",
" <li class='large-li'>Set the group's privacy setting to public.</li>",
" <li class='large-li'>Set your group's membership approval to where any member can add or approve members</li>",
" <img class='img-responsive img-center' src='https://www.evernote.com/l/AHTs6Ec_hylKyYWVhpZonOHPn8j8I5ydgv4B/image.png' alt='a screenshot showing the Facebook settings panel and where you can click to set the group to public and allow all members to be able to add or approve members>",
" <li class='large-li'>Click the \"Customize Address\" button.</li>",
" <img class='img-responsive img-center' src='https://www.evernote.com/shard/s116/sh/1a0781ce-ca41-46d5-94b0-d57b862882c8/4f1b729868ee5cabcd0d7e016bb6194e/deep/0/Free-Code-Camp-Testland.png' alt='a picture telling you to click the \"Customize Address\" button.'>",
" <li class='large-li'>Enter \"free.code.camp.your.city.name\" with each word separated by periods.",
" <img class='img-responsive img-center' src='https://www.evernote.com/shard/s116/sh/357b1bd9-7c40-4f72-8a9a-d918e632a5e8/c4714ca59360b2517dfffe90c60b1556/deep/0/Free-Code-Camp-Testland.png' alt='a screenshot telling you to enter free.code.camp.your.city.name with each word seperated by periods.'>",
" <li class='large-li'>Please feel free to personalize your city's group description, but be sure to include a link to Free Code Camp: \"http://www.freecodecamp.com\".",
" <img class='img-responsive img-center' src='https://www.evernote.com/shard/s116/sh/e13808ea-f084-46f1-95bc-63db524383d5/0586484d44360e73e9acda956dad7f6a/deep/0/Free-Code-Camp-Testland.png' alt='A screen shot showing you the group description box on the Facebook page.'>",
" <li class='large-li'>Click the \"Upload a photo button. To start out, you'll probably just want to use Free Code Camp's banner (download it <a href='https://s3.amazonaws.com/freecodecamp/wide-social-banner.png'>here</a>), or a scenic shot of your city. Later you can update this with a picture from one of your city's Free Code Camp events.</li>",
" <img class='img-responsive img-center' src='https://www.evernote.com/shard/s116/sh/fabe226a-5a26-4508-b015-1dac35192a21/37f8119dc57845a31e972217714b038b/deep/0/Free-Code-Camp-Testland.png' alt='A screenshot showing the \"Upload a photo\" button.'>",
" <li class='large-li'>Message @quincylarson on Gitter with a link to your city's group page. He'll include it on this list and also create a Gitter room for you.</li>",
" <li class='large-li'>Join our <a href='https://www.facebook.com/groups/freecodecampers/'>Local Leaders Facebook group</a>, where we share ideas about involving campers in your city.</li>",
" </ol>",
" </p>",
" <p class='large-p'>If you don't have a Facebook account, we strongly recommend you create one, even if it's just for the purpose of coordinating with campers in your city through this group.</p>",
" <p class='large-p'>If Facebook is blocked in your country, feel free to use social network with a similar group functionality that's popular in your region.</p>",
"</div>"
]
},
{
"id": "bd7158d9c451eddfaeb5bded",
"name": "What is the style guide for Bonfires?",
"dashedName": "what-is-the-style-guide-for-bonfires",
"category": "orientation",
"description": [
"<div class='col-xs-12 col-sm-10 col-sm-offset-1'>",
" <h3>Writing Bonfire challenges is a great way to exercise your own problem solving and testing abilities. Follow this process closely to maximize the chances of us accepting your bonfire.</h3>",
" <p class='large-p'>",
" <ol>",
" <li class='large-li'>Fork the Free Code Camp repository and <code>open seed_data/bonfires.json</code> to become familiar with the format of our bonfires.</li>",
" <li class='large-li'>Regardless of your bonfire's difficulty, put it as the last bonfire in the JSON file. Change one of the numbers in the ID to ensure that your bonfire has a unique ID.</li>",
" <li class='large-li'>In the terminal, run <code>node seed_data/seed.js</code>. Run <code>gulp</code>. You should be able to navigate to your new bonfire in the challenge map. Whenever you make a change to bonfire.json, you'll need to reseed in order to see these changes in the browser.</li>",
" <li class='large-li'>Solve your own Bonfire. Confirm that your tests work as expected and that your instructions are sufficiently clear.</li>",
" <li class='large-li'>Submit a pull request to Free Code Camp's Staging branch and in the pull request body, link to a gist that has your algorithmic solution.</li>",
" </ol>",
" </p>",
" <h3>Here is a description of each of the Bonfires' fields.</h3>",
" <h3>Name</h3>",
" <p class='large-p'>The name of your challenge. It's OK for this to be humorous but it must be brief and relevant to the task.</p>",
" <h3>Difficulty</h3>",
" <p class='large-p'>Attempt to rate difficulty compared against existing bonfire challenges. A good proxy for the difficulty of a bonfire is how long it takes you to solve it. For every 15 minutes it takes, increase the difficulty. For example, a one-hour bonfire should probably be a 4.</p>",
" <h3>Description</h3>",
" <p class='large-p'>Separate paragraphs with a line break. Only the first paragraph is visible prior to a user before they click the the 'More information' button.</p>",
" <p class='large-p'>All necessary information must be included in the first paragraph. Write this first paragraph as succinctly as possible. Subsequent paragraphs should offer hints or details if needed.</p>",
" <p class='large-p'>If your subject matter warrants deeper understanding, you may link to Wikipedia.</p>",
" <h3>Challenge Seed</h3>",
" <p class='large-p'>This is where you set up what will be in the editor when the camper starts the bonfire.</p>",
" <h3>Tests</h3>",
" <p class='large-p'>These tests are what bring your challenge to life. Without them, we cannot confirm the accuracy of a user's submitted answer. Choose your tests wisely.</p>",
" <p class='large-p'>Bonfire tests are written using the Chai.js assertion library. Please use the should and expect syntax for end user readability. As an example of what not do to, many of the original Bonfire challenges are written with assert syntax and many of the test cases are difficult to read.</p>",
" <p class='large-p'>If your bonfire question has a lot of edge cases, you will need to write many tests for full coverage. If you find yourself writing more tests than you desire, you may consider simplifying the requirements of your bonfire challenge. For difficulty level 1 through 3, you will generally only need 2 to 4 tests.</p>",
" <h3>MDNlinks</h3>",
" <p class='large-p'>Take a look at <code>seed_data/bonfireMDNlinks.js</code>. If any of these concepts are relevant to your bonfire, be sure to include them. If you know of an MDN article that isn't linked here, you can add it to the bonfireMDNlinks.js file before adding it to your bonfire.</p>",
"</div>"
]
},
{
"id": "bd7158d9c451eddfaeb5bdee",
"name": "What is the Free Code Camp Code of Conduct?",
"dashedName": "what-is-the-free-code-camp-code-of-conduct",
"category": "orientation",
"description": [
"<div class='col-xs-12 col-sm-10 col-sm-offset-1'>",
" <h3>Free Code Camp is friendly place to learn to code. We're committed to keeping it that way.</h3>",
" <p class='large-p'>All campers are required to agree with the following code of conduct. We'll enforce this code. We're expecting cooperation from all campers in ensuring a friendly environment for everybody.</p>",
" <h3>In short: be nice to your fellow campers.</h3>",
" <h3>Remember these 3 things and your fellow campers will like you:</h3>",
" <p class='large-p'>",
" <ol>",
" <li class='large-li'>Compliment your fellow campers when they do good work. Congratulate them when they accomplish something (like finishing a nonprofit project or getting a job).</li>",
" <li class='large-li'>Critique the work, not the camper doing it.</li>",
" <li class='large-li'>Only argue about something if it's important to the greater discussion.</li>",
" </ol>",
" </p>",
" <p class='large-p'>Free Code Camp should be a harassment-free experience for everyone, regardless of gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, national origin, or religion (or lack thereof).</p>",
" <p class='large-p'>We do not tolerate harassment of campers in any form, anywhere on Free Code Camp's online media (Gitter, Twitch, etc.) or during pair programming. Harassment includes sexual language and imagery, deliberate intimidation, stalking, unwelcome sexual attention, libel, and any malicious hacking or social engineering.</p>",
" <p class='large-p'>If a camper engages in harassing behavior, our team will take any action we deem appropriate, up to and including banning them from Free Code Camp.</p>",
" <p class='large-p'>We want everyone to feel safe and respected. If you are being harassed or notice that someone else is being harassed, say something! Message @quincylarson, @terakilobyte and @codenonprofit on Gitter (preferably with a screen shot of the offending language) so we can take fast action.</p>",
" <p class='large-p'>If you have questions about this code of conduct, email us at <a href='mailto:team@freecodecamp.com'>team@freecodecamp.com</a>.</p>",
"</div>"
]
},
{
"id": "bd7158d9c451eddfaeb5bdef",
"name": "What is the Free Code Camp Privacy Policy?",
"dashedName": "what-is-the-free-code-camp-privacy-policy",
"category": "orientation",
"description": [
"<div class='col-xs-12 col-sm-10 col-sm-offset-1'>",
" <p class='large-p'>Free Code Camp is committed to respecting the privacy of visitors to our websites and web applications. The guidelines below explain how we protect the privacy of visitors to FreeCodeCamp.com and its features.</p>",
" <h3>Personally Identifiable Information</h3>",
" <p class='large-p'>Free Code Camp protects the identity of visitors to FreeCodeCamp.com by limiting the collection of personally identifiable information.</p>",
" <p class='large-p'>Free Code Camp does not knowingly collect or solicit personally identifiable information from or about children under 13, except as permitted by law. If we discover we have received any information from a child under 13 in violation of this policy, we will delete that information immediately. If you believe Free Code Camp has any information from or about anyone under 13, please email us at <a href=\"mailto:team@freecodecamp.com\" target=\"_blank\">team@freecodecamp.com</a>.</p>",
" <p class='large-p'>All personally identifiable information you provide to us is used by Free Code Camp and its team to process and manage your account, analyze the demographic of our users, or to deliver services through the site. </p>",
" <p class='large-p'>If you choose to provide personally identifiable information to us, you may receive occasional emails from us that are relevant to Free Code Camp, getting a job, or learning to code in general.</p>",
" <p class='large-p'>Free Code Camp may also use other third-party providers to facilitate the delivery of the services described above, and these third-party providers may be supplied with or have access to personally identifiable information for the sole purpose of providing these services, to you on behalf of Free Code Camp.</p>",
" <p class='large-p'>Free Code Camp may also disclose personally identifiable information in special legal circumstances. For instance, such information may be used where it is necessary to protect our copyright or intellectual property rights, or if the law requires us to do so.</p>",
" <h3>Anonymous Information</h3>",
" <p class='large-p'>Anonymous aggregated data may be provided to other organizations we associate with for statistical purposes. For example, we may report to an organization that a certain percentage of our site's visitors are adults between the ages of 25 and 35.</p>",
" <h3>Cookies and Beacons—Use by Free Code Camp; Opting Out</h3>",
" <p class='large-p'>We use cookies and software logs to monitor the use of FreeCodeCamp.com and to gather non-personal information about visitors to the site. Cookies are small files that Free Code Camp transfers to the hard drives of visitors for record-keeping purposes. These monitoring systems allow us to track general information about our visitors, such as the type of browsers (for example, Firefox or Internet Explorer), the operating systems (for instance, Windows or Macintosh), or the Internet providers (for instance, Comcast) they use. This information is used for statistical and market research purposes to tailor content to usage patterns and to provide services requested by our customers. To delete these cookies, please see your browser's privacy settings.</p>",
" <p class='large-p'>A beacon is an electronic file object (typically a transparent image) placed in the code of a Web page. We use third party beacons to monitor the traffic patterns of visitors from one Free Code Camp.com page to another and to improve site performance.</p>",
" <p class='large-p'>None of the information we gather in this way can be used to identify any individual who visits our site.</p>",
" <h3>Security</h3>",
" <p class='large-p'>Any personally identifiable information collected through this site is stored on limited-access servers. We will maintain safeguards to protect these servers and the information they store.</p>",
" <h3>Surveys</h3>",
" <p class='large-p'>We may occasionally conduct on-line surveys. All surveys are voluntary and you may decline to participate.</p>",
" <h3>Copyright</h3>",
" <p class='large-p'>All of the content on FreeCodeCamp.com is copyrighted by Free Code Camp. If you'd like to redistribute it beyond simply sharing it through social media, please contact us at <a href=\"mailto:team@freecodecamp.com\" target=\"_blank\">team@freecodecamp.com</a>.</p>",
" <h3>Contacting Us</h3>",
" <p class='large-p'>If you have questions about Free Code Camp, or to correct, update, or remove personally identifiable information, please email us at <a href=\"mailto:team@freecodecamp.com\" target=\"_blank\">team@freecodecamp.com</a>.</p>",
" <h3>Links to Other Websites</h3>",
" <p class='large-p'>Free Code Camp's sites each contain links to other Websites. Free Code Camp is not responsible for the privacy practices or content of these third-party Websites. We urge all FreeCodeCamp.com visitors to follow safe Internet practices: Do not supply Personally Identifiable Information to these Websites unless you have verified their security and privacy policies.</p>",
" <h3>Data Retention</h3>",
" <p class='large-p'>We retain your information for as long as necessary to permit us to use it for the purposes that we have communicated to you and comply with applicable law or regulations.</p>",
" <h3>Business Transfers</h3>",
" <p class='large-p'>As we continue to develop our business, we might sell or buy subsidiaries, or business units. In such transactions, customer information generally is one of the transferred business assets but remains subject to the promises made in any pre-existing Privacy Policy (unless, of course, the customer consents otherwise). Also, in the unlikely event that Free Code Camp, or substantially all of its assets are acquired, customer information will be one of the transferred assets, and will remain subject to our Privacy Policy.</p>",
" <h3>Your California Privacy Rights</h3>",
" <p class='large-p'>If you are a California resident, you are entitled to prevent sharing of your personal information with third parties for their own marketing purposes through a cost-free means. If you send a request to the address above, Free Code Camp will provide you with a California Customer Choice Notice that you may use to opt-out of such information sharing. To receive this notice, submit a written request to <a href=\"mailto:team@freecodecamp.com\" target=\"_blank\">team@freecodecamp.com</a>, specifying that you seek your &quot;California Customer Choice Notice.&quot; Please allow at least thirty (30) days for a response.</p>",
" <h3>Acceptance of Privacy Policy Terms and Conditions</h3>",
" <p class='large-p'>By using this site, you signify your agreement to the terms and conditions of this FreeCodeCamp.com Privacy Policy. If you do not agree to these terms, please do not use this site. We reserve the right, at our sole discretion, to change, modify, add, or remove portions of this policy at any time. All amended terms automatically take effect 30 days after they are initially posted on the site. Please check this page periodically for any modifications. Your continued use of FreeCodeCamp.com following the posting of any changes to these terms shall mean that you have accepted those changes.</p>",
" <p class='large-p'>If you have any questions or concerns, please send an email to <a href=\"mailto:team@freecodecamp.com\" target=\"_blank\">team@freecodecamp.com</a>.</p>",
"</div>"
]
},
{
"id": "bd7158d9c436eddfadb5bd30",
"name": "Can I do Free Code Camp completely in my native language?",
"dashedName": "can-i-do-free-code-camp-completely-in-my-native-language",
"category": "orientation",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <p class='large-p'>The last 800 hours of free code camp involve building projects for nonprofits. These nonprofit projects will involve lots of meetings, correspondence, and pair programming, all of which will be conducted in English.</p>",
" <p class='large-p'>You will need to be good enough with English to be able to participate in these meetings.</p>",
" <p class='large-p'>We are translating our challenges into English is so that you can focus on learning to code, rather than focusing on learning English.</p>",
" <p class='large-p'>Many non-native English speakers have succeeded in our nonprofit project program. With some effort, you can, too.</p>",
"</div>"
]
},
{
"id": "bd7158d9c436eddfadb5bd3c",
"name": "What is the new Free Code Camp Mobile Experience?",
"dashedName": "what-is-the-new-free-code-camp-mobile-experience",
"category": "orientation",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h2>We're building an on-the-go version of Free Code Camp.</h2>",
" <img src='http://www.howardforums.com/attachment.php?attachmentid=97254&d=1378730537&stc=1' class='img-responsive img-center'>",
" <p class='large-p'>It will be video-driven, with multiple-choice questions.</p>",
" <img class='img-center img-responsive' src='https://www.edx.org/sites/default/files/upload/philip-guo-edx-first-blog-figure.png'>",
" <p class='large-p'>These videos will be short - generally less than 6 minutes long.</p>",
" <img src='http://a3.mzstatic.com/us/r1000/095/Purple/3f/58/42/mzl.xypmpeal.320x480-75.jpg' class='img-center img-responsive'>",
" <p class='large-p'>We are considering focusing the mobile experience on code interview questions. Answering these common questions is a very different skill from coding itself.",
" <p class='large-p'>We're still in the process of designing this. We'd love to hear your input.</p>",
"</div>"
]
},
{
"id": "bd7158d9c436eddfadb5bd3b",
"name": "What is the Free Code Camp Front End Development Certificate?",
"dashedName": "what-is-the-free-code-camp-front-end-development-certificate",
"category": "orientation",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h2>We're creating a free Front End Development Certificate.</h2>",
" <p class='large-p'>Here are the challenges that will make up our Basic Front End Development Certificate Program:</p>",
" <ol>",
" <li class='large-li'>HTML5 and CSS</li>",
" <li class='large-li'>Responsive Design with Bootstrap</li>",
" <li class='large-li'>jQuery, Ajax and JSON APIs (coming soon - will replace Codecademy jQuery challenges)</li>",
" <li class='large-li'>Zipline: Use the Twitch.tv JSON API</li>",
" <li class='large-li'>Zipline: Build a Random Quote Machine</li>",
" <li class='large-li'>Zipline: Show the Local Weather</li>",
" <li class='large-li'>Zipline: Stylize Stories on Camper News</li>",
" <li class='large-li'>Zipline: Wikipedia Viewer</li>",
" </ol>",
" <p class='large-p'>This won't be a new curriculum - it will just be the first 200 hours of our full stack JavaScript curriculum.</p>",
" <p class='large-p'>All campers who have already completed these challenges are retroactively eligible for the certificate!</p>",
"</div>"
]
},
{
"id": "bd7156d9c436eddfadb5bd3b",
"name": "How can I watch Live Coding on the Free Code Camp Twitch.tv Channel?",
"dashedName": "how-can-i-watch-live-coding-on-the-free-code-camp-twitch-tv-channel",
"description": [
"<div class='row text-center'>",
" <div class='col-xs-12 col-sm-10 col-sm-offset-1'>",
" <h2>Watch the live stream below or on our &thinsp;<a href='http://twitch.tv/freecodecamp' target='_blank'>Twitch.tv channel</a>.</h2>",
" <div class='spacer'></div>",
" <div class='row'>",
" <div class='col-md-8 col-xs-12'>",
" <div class='embed-responsive embed-responsive-16by9'>",
" <iframe src='http://www.twitch.tv/freecodecamp/embed' frameborder='0' scrolling='no'></iframe>",
" </div>",
" </div>",
" <div class='col-md-4 col-xs-12'>",
" <div class='visible-sm visible-xs'>",
" <div class='embed-responsive embed-responsive-16by9'>",
" <iframe src='http://www.twitch.tv/freecodecamp/chat?popout=' frameborder='0' scrolling='no'></iframe>",
" </div>",
" </div>",
" <div class='visible-md visible-lg'>",
" <div class='embed-responsive embed-responsive-twitch-chat'>",
" <iframe src='http://www.twitch.tv/freecodecamp/chat?popout=' frameborder='0' scrolling='no'></iframe>",
" </div>",
" </div>",
" </div>",
" </div>",
" <div class='row'>",
" <div class='col-xs-12'>",
" <h2>Check out our scheduled shows. You can add them to your calendar.</h2>",
" <div class='embed-responsive embed-responsive-16by9'>",
" <iframe src='https://www.google.com/calendar/embed?src=freecodecamp.com_r06116ile3o6ucpif7s0g281tc%40group.calendar.google.com&amp;ctz=America/New_York&amp;mode=AGENDA' style='border: 0' width='800' height='600' frameborder='0' scrolling='no' class='embed-responsive-item'></iframe>",
" </div>",
" </div>",
" </div><br/>",
" <div class='row'>",
" <div class='col-xs-12'>",
" <h2>Here are some of our previous shows (you can full-screen them):</h2>",
" <div class='row negative-20'>",
" <div class='col-xs-12 col-sm-12 col-md-6'>",
" <div class='embed-responsive embed-responsive-16by9 big-break'>",
" <iframe src='//www.youtube.com/embed/Z_43xApGB9Y' class='embed-responsive-item'></iframe>",
" </div>",
" <p class='wrappable negative-30'>link: &thinsp;<a href='http://www.youtube.com/watch/Fn9HMn79KH0'>http://www.youtube.com/watch/Z_43xApGB9Y</a></p>",
" </div>",
" <div class='col-xs-12 col-sm-12 col-md-6'>",
" <div class='embed-responsive embed-responsive-16by9 big-break'>",
" <iframe src='//www.youtube.com/embed/PvWHzcebjjQ' class='embed-responsive-item'></iframe>",
" </div>",
" <p class='wrappable negative-30'>link: &thinsp;<a href='http://www.youtube.com/watch/Fn9HMn79KH0'>http://www.youtube.com/watch/PvWHzcebjjQ</a></p>",
" </div>",
" <div class='col-xs-12 col-sm-12 col-md-6'>",
" <div class='embed-responsive embed-responsive-16by9 big-break'>",
" <iframe src='//www.youtube.com/embed/yHL6mEr-LGY' class='embed-responsive-item'></iframe>",
" </div>",
" <p class='wrappable negative-30'>link: &thinsp;<a href='http://www.youtube.com/watch/Fn9HMn79KH0'>http://www.youtube.com/watch/yHL6mEr-LGY</a></p>",
" </div>",
" <div class='col-xs-12 col-sm-12 col-md-6'>",
" <div class='embed-responsive embed-responsive-16by9 big-break'>",
" <iframe src='//www.youtube.com/embed/dolG-yRMcPs' class='embed-responsive-item'></iframe>",
" </div>",
" <p class='wrappable negative-30'>link: &thinsp;<a href='http://www.youtube.com/watch/Fn9HMn79KH0'>http://www.youtube.com/watch/dolG-yRMcPs</a></p>",
" </div>",
" <div class='col-xs-12 col-sm-12 col-md-6'>",
" <div class='embed-responsive embed-responsive-16by9 big-break'>",
" <iframe src='//www.youtube.com/embed/YMz_vrK_KlQ' class='embed-responsive-item'></iframe>",
" </div>",
" <p class='wrappable negative-30'>link: &thinsp;<a href='http://www.youtube.com/watch/_BErpDdmBOw'>http://www.youtube.com/watch/YMz_vrK_KlQ</a></p>",
" </div>",
" <div class='col-xs-12 col-sm-12 col-md-6'>",
" <div class='embed-responsive embed-responsive-16by9 big-break'>",
" <iframe src='//www.youtube.com/embed/bbFVxaza8Ik' class='embed-responsive-item'></iframe>",
" </div>",
" <p class='wrappable negative-30'>link: &thinsp;<a href='http://www.youtube.com/watch/S7iRBZJwOAs'>http://www.youtube.com/watch/bbFVxaza8Ik</a></p>",
" </div>",
" </div>",
" </div>",
" </div>",
" </div>",
"</div>"
]
}
]

View File

@ -1,143 +0,0 @@
[
{
"id": "bd7158d9c436eddfaeb5bd3b",
"name": "How can I stream my live coding sessions on Free Code Camp's Twitch.tv channel?",
"dashedName": "how-can-i-stream-my-live-coding-sessions-on-free-code-camps-twitch-tv-channel",
"category": "outreach",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <h3>If you're interested in coding JavaScript live in front of dozens of people on our popular <a href='http://twitch.tv/freecodecamp' target='_blank'>twitch.tv channel</a>, we'd love to have you.</h3>",
"<p class='large-p'>Please follow these steps to get started:</p>",
" <p class='large-p'>",
" <ol>",
" <li class='large-li'>Follow <a href='http://www.hdpvrcapture.com/wordpress/?p=5951' target='_blank'>this tutorial</a> to set up your computer for streaming.</li>",
" <li class='large-li'>Contact Jason Ruekert - he's @jsonify in Gitter. He's in charge of our Twitch.tv channel. Tell him what you'd like to stream, and when you're available to stream.</li>",
" <li class='large-li'>Jason will pair with you using Screenhero to verify your computer is configured properly to stream.</li>",
" </ol>",
" </p>",
" <p class='large-p'>Be respectful of your audience. Everything you stream should be related to coding JavaScript, and should be acceptable for children. (Yes, children do sometimes watch our Twitch stream to learn to code).</p>",
" <p class='large-p'>While you're streaming, keep the chat room open so you can respond to questions from your viewers. If someone follows Free Code Camp on Twitch, try to thank them.</p>",
" <p class='large-p'>If you do a good job, we'll invite you back to stream some more. Who knows, you might become one of our regular streamers!</p>",
"</div>"
]
},
{
"id": "bd7158d9c446eddfaeb5bdef",
"name": "How do Free Code Camp's Nonprofit Projects work?",
"dashedName": "how-do-free-code-camps-nonprofit-projects-work",
"category": "outreach",
"description": [
"<div class='col-xs-12 col-sm-10 col-sm-offset-1'>",
" <p class='large-p'>Building nonprofit projects is the main way that our campers learn full stack JavaScript and agile software development. Once you complete the Free Code Camp Waypoints, Bonfires, Ziplines and Basejumps, you'll begin this process.</p>",
" <h3>Starting with the end in mind</h3>",
" <p class='large-p'>Our goal at Free Code Camp is to help you land a job as a junior software developer (or, if you prefer, a 'pivot job' that leads your current career in a more technical direction).</p>",
" <p class='large-p'>You'll continue to work on nonprofit projects until you've built a sufficiently impressive portfolio and references to start your job search. Your portfolio will ultimately have three to five nonprofit projects. We estimate that the 900 hours of nonprofit projects you're going to complete, in addition to the 100 hours of challenges you've already completed, will be enough to qualify you for your first coding job. This will produce a much broader portfolio than a traditional coding bootcamp, which generally only has one or two capstone projects.</p>",
" <h3>Choosing your first Nonprofit Project</h3>",
" <p class='large-p'>We've categorized all the nonprofit projects by estimated time investment per camper: 100 hours, 200 hours, and 300 hours. These are only rough estimates.</p>",
" <p class='large-p'>Example: if you and the camper you're paired up with (your pair) each stated you could work 20 hours per week. If the project is a 100 hour per camper project, you should be able to complete it in about 5 weeks.</p>",
" <p class='large-p'>Our Nonprofit Project team will match you and your pair based on:</p>",
" <p class='large-p'>",
" <ol>",
" <li class='large-li'>Your estimated time commitment (10, 20 or 40 hours per week)</li>",
" <li class='large-li'>Your time zone</li>",
" <li class='large-li'>The nonprofit projects you've chosen</li>",
" <li class='large-li'>Prior coding experience (we'd like both campers to be able to contribute equally)</li>",
" </ol>",
" </p>",
" <p class='large-p'>We won't take age or gender into account. This will provide you with valuable experience in meshing with diverse teams, which is a reality of the contemporary workplace.</p>",
" <p class='large-p'>You'll only work on one project at a time. Once you start a nonprofit project, we'll remove you from all other nonprofit project you've expressed interest in. There's a good chance those projects will no longer be available when you finish your current project, anyway. Don't worry, though - we get new nonprofit project requests every day, so there will be plenty more projects for you to consider after you finish your current one.</p>",
" <h3>Finalizing the Project</h3>",
" <p class='large-p'>Before you can start working on the project, our team of Nonprofit Project Coordinators will go through the following process:</p>",
" <p class='large-p'>",
" <ol>",
" <li class='large-li'>We'll wait until there are two campers who have chosen the same project and look like they're a good match for one another based on the factors mentioned above.</li>",
" <li class='large-li'>We'll call the stakeholder to confirm once again that he or she agrees with our &thinsp;<a href=\"freecodecamp.com/nonprofits\">terms &thinsp;</a>and has signed our &thinsp;<a href=\"http://goo.gl/forms/0YKkd9bpcR\">Nonprofit Project Stakeholder Pledge</a>.</li>",
" <li class='large-li'>We'll set an initial meeting with representatives from Free Code Camp, the two campers, and the stakeholder.</li>",
" <li class='large-li'>If the stakeholder and both campers shows up promptly, and seem enthusiastic and professional, we'll start the project.</li>",
" </ol>",
" </p>",
" <p class='large-p'>This lengthy process serves an important purpose: it reduces the likelihood that any of our campers or stakeholders will waste their precious time.</p>",
" <h3>Nonprofit Stakeholders</h3>",
" <p class='large-p'>Each nonprofit project was submitted by a nonprofit. A representative from this nonprofit has agreed to serve as a \"stakeholder\" - an authorative person who understands the organization and its needs for this particular project.</p>",
" <p class='large-p'>Stakeholders have a deep understanding of their organizations' needs. Campers will work with them to figure out the best solutions to these needs.</p>",
" <p class='large-p'>When you and your pair first speak with your nonprofit stakeholder, you'll:</p>",
" <p class='large-p'>",
" <ul>",
" <li class='large-li'>talk at length to better understand their needs.</li>",
" <li class='large-li'>create a new Trello board and use it to prioritize what needs to be built.</li>",
" <li class='large-li'>and establish deadlines based on your weekly time commitment, and how long you think each task will take.</li>",
" </ul>",
" </p>",
" <p class='large-p'>It's notoriously difficult to estimate how long building software projects will take, so feel free to ask our volunteer team for help.</p>",
" <p class='large-p'>You'll continue to meet with your stakeholder at least twice a month in your project's Gitter or Slack channel.</p>",
" <p class='large-p'>You should also ask questions in your project's Gitter or Slack channel as they come up throughout the week, and your stakeholder can answer them asynchronously.</p>",
" <p class='large-p'>Getting \"blocked\" on a task can take away your sense of forward momentum, so be sure to proactively seek answers to any ambiguities you encounter.</p>",
" <p class='large-p'>Ultimately, the project will be considered complete once both the stakeholder's needs have been met, and you and your pair are happy with the project. Then you can add it to your portfolio!</p>",
" <h3>Working with your Pair</h3>",
" <p class='large-p'>You and your pair will pair program (code together on the same computer virtually) about half of the time, and work independently the other half of the time.</p>",
" <p class='large-p'>Here are our recommended ways of collaborating:</p>",
" <p class='large-p'>",
" <ul>",
" <li class='large-li'>&#8226; Gitter has robust private messaging functionality. It's the main way our team communicates, and we recommend it over email.</li>",
" <li class='large-li'>&#8226; Trello is great for managing projects. Work with your stakeholder to create Trello cards, and update these cards regularly as you make progress on them.</li>",
" <li class='large-li'>&#8226; Screenhero or Team Viewer - These are the ideal way to pair program. Tools like TMUX are good, but difficult to use. We discourage you from using screen sharing tools where only one person has control of the keyboard and mouse - that isn't real pair programming.</li>",
" <li class='large-li'>&#8226; Write clear and readable code, commit messages, branch names, and pull request messages.</li>",
" </ul>",
" </p>",
" <h3>Hosting Apps</h3>",
" <p class='large-p'>Unless your stakeholder has an existing modern host (AWS, Digital Ocean), you'll need to transition them over to a new platform. We believe Heroku is the best choice for a vast majority of web projects. It's free, easy to use, and has both browser and command line interfaces. It's owned by Salesforce and used by a ton of companies, so it's accountable and unlikely to go away.</p>",
" <p class='large-p'>If you need help convincing your stakeholder that Heroku is the ideal platform, we'll be happy to talk with them.</p>",
" <h3>Maintaining Apps</h3>",
" <p class='large-p'>Once you complete a nonprofit project, your obligation to its stakeholder is finished. Your goal is to leave behind a well documented solution that can be easily maintained by a contract JavaScript developer (or even a less-technical \"super user\").</p>",
" <p class='large-p'>While you will no longer need to help with feature development, we encourage you to consider helping your stakeholder with occasional patches down the road. After all, this project will be an important piece of your portfolio, and you'll want it to remain in good shape for curious future employers.</p>",
" <h3>Pledging to finish the project</h3>",
" <p class='large-p'>Your nonprofit stakeholder, your pair, and our volunteer team are all counting on you to finish your nonprofit project. If you walk away from an unfinished nonprofit project, you'll become ineligible to ever be assigned another one.</p>",
" <p class='large-p'>To confirm that you understand the seriousness of this commitment, we require that all campers &thinsp;<a href=\"http://goo.gl/forms/ZMn96z2QqY\">sign this pledge &thinsp;</a>before starting on their nonprofit projects.</p>",
" <p class='large-p'>There will likely be times of confusion or frustration. This is normal in software development. The most important thing is that you do not give up and instead persevere through these setbacks. As Steve Jobs famously said, \"Real artists ship.\" And you are going to ship one successful nonprofit project after another until you feel ready to take the next step in your promising career.</p>",
"</div>"
]
},
{
"id": "bd7158d9c436eddfadb5bd3e",
"name": "How can I contribute to this guide?",
"dashedName": "how-can-i-contribute-to-this-guide",
"category": "outreach",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <p class='large-p'>Contributing to our field guide is a great way to establish your history on GitHub, add to your portfolio, and help other campers. If you have a question about JavaScript or programming in general that you'd like us to add to the field guide, here are two ways to get it into the guide:</p>",
" <p class='large-p'>",
" <ol>",
" <li class='large-li'>You can message @danraley on Gitter with your question.</li>",
" <li class='large-li'>You can also contribute to this field guide directly via GitHub pull request, by cloning Free Code Camp's <a href='https://github.com/FreeCodeCamp/freecodecamp'>main repository</a> and modifying <a href='https://github.com/FreeCodeCamp/freecodecamp/blob/master/seed_data/field-guides.json'>field-guides.json</a>.</li>",
" </ol>",
" </p>",
"</div>"
]
},
{
"id": "bd7158d9c436eddfadb5bd32",
"name": "How can I help the Free Code Camp translation effort?",
"dashedName": "how-can-i-help-the-free-code-camp-translation-effort",
"category": "outreach",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <p class='h2'>Our translation effort is driven by bilingual campers like you.</h2>",
" <p class='large-p'>If you're able to help us, you can join our <a href='https://trello.com/b/m7zhwXka/fcc-translation' target='_blank'>Trello board</a> by sending @quincylarson your email address on Gitter.</p>",
"</div>"
]
},
{
"id": "bd7158d9c436eddfadb5bd31",
"name": "What if I speak a language that Free Code Camp does not yet support?",
"dashedName": "what-if-i-speak-a-language-that-free-code-camp-does-not-yet-support",
"category": "outreach",
"description": [
"<div class=\"col-xs-12 col-sm-10 col-sm-offset-1\">",
" <p class='h2'>Translation is an all-or-nothing proposal.</h2>",
" <p class='large-p'>We won't be able to add new languages to Free Code Camp until all of our challenges are translated into that language.</p>",
" <p class='large-p'>In addition to translating these initially, we'll also need to maintain the translation as the challenges are gradually updated.</p>",
" <p class='large-p'>If you're able to help us, you can join our <a href='https://trello.com/b/m7zhwXka/fcc-translation' target='_blank'>Trello board</a> by sending @quincylarson your email address on Gitter.</p>",
"</div>"
]
}
]

View File

@ -14,13 +14,11 @@ function getFilesFor(dir) {
}
var Challenge = app.models.Challenge;
var FieldGuide = app.models.FieldGuide;
var Nonprofit = app.models.Nonprofit;
var Job = app.models.Job;
var counter = 0;
var challenges = getFilesFor('challenges');
var fieldGuides = getFilesFor('field-guides');
var offerings = 3 + challenges.length;
var offerings = 2 + challenges.length;
var CompletionMonitor = function() {
counter++;
@ -61,25 +59,6 @@ Challenge.destroyAll(function(err, info) {
});
});
FieldGuide.destroyAll(function(err, info) {
if (err) {
console.error(err);
} else {
console.log('Deleted ', info);
}
fieldGuides.forEach(function(file) {
FieldGuide.create(require('./field-guides/' + file), function(err, data) {
if (err) {
console.log(err);
} else {
console.log('Saved ', data);
}
CompletionMonitor();
console.log('field guides');
});
});
});
Nonprofit.destroyAll(function(err, info) {
if (err) {
console.error(err);

View File

@ -84,7 +84,7 @@
"moneySaved": 40000
},
{
"id": "bd1325d8c464cbafaeb4bdef",
"id": "bd1225d8c464cbafaeb4bdef",
"whatDoesNonprofitDo": "We empower youth with technology by providing age appropriate resources and education.",
"websiteLink": "http://savvycyberkids.org/",
"name": "Savvy Cyber Kids",

View File

@ -1,180 +0,0 @@
var Rx = require('rx');
var debug = require('debug')('freecc:fieldguides');
var observeMethod = require('../utils/rx').observeMethod;
var saveUser = require('../utils/rx').saveUser;
var utils = require('../utils');
var allFieldGuideNamesAndIds = utils.allFieldGuideNamesAndIds();
// order here determine order on all-articles page
const categories = [
'orientation',
'FYI',
'outreach',
'contact'
];
module.exports = function(app) {
var router = app.loopback.Router();
var FieldGuide = app.models.FieldGuide;
var findFieldGuideById = observeMethod(FieldGuide, 'findById');
var findOneFieldGuide = observeMethod(FieldGuide, 'findOne');
router.get('/field-guide/all-articles', showAllFieldGuides);
router.get('/field-guide/:fieldGuideName', returnIndividualFieldGuide);
router.get('/field-guide/', returnNextFieldGuide);
router.post('/completed-field-guide/', completedFieldGuide);
app.use(router);
function returnIndividualFieldGuide(req, res, next) {
var dashedName = req.params.fieldGuideName;
var userSave = Rx.Observable.just(req.user)
.filter(function(user) {
debug('filtering user', !!user);
return !!user;
})
.map(function(user) {
var completed = user.completedFieldGuides;
var uncompletedFieldGuides = utils.allFieldGuideIds()
.filter(function(id) {
if (completed.indexOf(id) === -1) {
return id;
}
});
user.uncompletedFieldGuides = uncompletedFieldGuides;
return user;
})
.flatMap(function(user) {
debug('saving user');
return saveUser(user);
})
// always call onNext
.defaultIfEmpty(null);
var query = { where: { dashedName: { like: dashedName, options: 'i' } } };
debug('find fieldGuide', query);
Rx.Observable.combineLatest(
// find that field guide
findOneFieldGuide(query),
userSave,
Rx.helpers.identity
)
.subscribe(
// don't care about return from userSave
function(fieldGuide) {
debug('onNext', fieldGuide);
if (!fieldGuide) {
req.flash('errors', {
msg: '404: We couldn\'t find a field guide entry with ' +
'that name. Please double check the name.'
});
return res.redirect('/field-guide/all-articles');
}
if (fieldGuide.dashedName !== dashedName) {
return res.redirect('../field-guide/' + fieldGuide.dashedName);
}
res.render('field-guide/show', {
title: fieldGuide.name,
fieldGuideId: fieldGuide.id,
description: fieldGuide.description.join('')
});
},
next,
function() {
debug('onCompleted called');
}
);
}
function showAllFieldGuides(req, res) {
var completedFieldGuides = [];
if (req.user && req.user.completedFieldGuides) {
completedFieldGuides = req.user.completedFieldGuides;
}
// produces an array of arrays of field guides ordered by the above
// i.e. [[...orientFieldGuides][...FYIfieldGuides]...]
const orderFieldGuides = categories
.reduce((ordered, category) => {
const fieldGuidesForCategory = allFieldGuideNamesAndIds
.filter(fieldGuide => {
return category === fieldGuide.category;
});
return ordered.concat([fieldGuidesForCategory]);
}, []);
res.render('field-guide/all-articles', {
// leaving this property as legacy.
allFieldGuideNamesAndIds: allFieldGuideNamesAndIds,
completedFieldGuides: completedFieldGuides,
categories: categories,
fieldGuides: orderFieldGuides
});
}
function showCompletedFieldGuideFunction(req, res) {
req.flash(
'success',
{
msg: [
'You\'ve read all our current Field Guide entries. ' +
'If you have ideas for other Field Guide articles, ' +
'please let us know on ',
'<a href=\'https://github.com/freecodecamp/freecodecamp/' +
'issues/new?&body=Please describe your idea for a Field Guide' +
' article and include links if possible.\'>GitHub</a>.'
].join('')
}
);
return res.redirect('../field-guide/how-do-i-use-this-guide');
}
function returnNextFieldGuide(req, res, next) {
if (!req.user) {
return res.redirect('/field-guide/how-do-i-use-this-guide');
}
if (!req.user.uncompletedFieldGuides.length) {
return showCompletedFieldGuideFunction(req, res);
}
findFieldGuideById(req.user.uncompletedFieldGuides[0]).subscribe(
function(fieldGuide) {
if (!fieldGuide) {
debug(
'field guide %s not found',
req.user.uncompletedFieldGuides[0]
);
return res.redirect('../field-guide/how-do-i-use-this-guide');
}
return res.redirect('../field-guide/' + fieldGuide.dashedName);
},
next
);
}
function completedFieldGuide(req, res, next) {
var fieldGuideId = req.body.fieldGuideInfo.fieldGuideId;
req.user.completedFieldGuides.push(fieldGuideId);
var index = req.user.uncompletedFieldGuides.indexOf(fieldGuideId);
if (index > -1) {
req.user.progressTimestamps.push(Date.now());
req.user.uncompletedFieldGuides.splice(index, 1);
}
saveUser(req.user).subscribe(
function() {
res.send(true);
},
next
);
}
};

View File

@ -12,7 +12,6 @@ module.exports = function(app) {
var User = app.models.User;
var Challenge = app.models.Challenge;
var Story = app.models.Story;
var FieldGuide = app.models.FieldGuide;
var Nonprofit = app.models.Nonprofit;
router.get('/api/github', githubCalls);
@ -155,31 +154,6 @@ module.exports = function(app) {
);
}
});
},
fieldGuides: function(callback) {
FieldGuide.find(
{ field: { name: true } },
function(err, fieldGuides) {
if (err) {
debug('User err: ', err);
callback(err);
} else {
Rx.Observable.from(
fieldGuides,
null,
null,
Rx.Scheduler.default
)
.map(function(fieldGuide) {
return fieldGuide.name;
})
.toArray()
.subscribe(
callback.bind(callback, null),
callback
);
}
});
}
}, function(err, results) {
if (err) {
@ -193,8 +167,7 @@ module.exports = function(app) {
users: results.users,
challenges: results.challenges,
stories: results.stories,
nonprofits: results.nonprofits,
fieldGuides: results.fieldGuides
nonprofits: results.nonprofits
});
});
}

View File

@ -4,14 +4,7 @@ module.exports = function(app) {
router.get('/nonprofit-project-instructions', function(req, res) {
res.redirect(
301,
'/field-guide/how-do-free-code-camps-nonprofit-projects-work'
);
});
router.get('/coding-bootcamp-cost-calculator', function(req, res) {
res.redirect(
301,
'/field-guide/can-i-calculate-the-true-cost-of-a-bootcamp-with-a-coding-bootcamp-cost-calculator'
"https://github.com/FreeCodeCamp/freecodecamp/wiki/How-Free-Code-Camp's-Nonprofit-Projects-work"
);
});
@ -21,7 +14,7 @@ module.exports = function(app) {
router.get('/privacy', function(req, res) {
res.redirect(
301, '/field-guide/what-is-the-free-code-camp-privacy-policy?'
301, "https://github.com/FreeCodeCamp/freecodecamp/wiki/Free-Code-Camp's-Privacy-Policy"
);
});

View File

@ -35,10 +35,6 @@
"dataSource": "db",
"public": true
},
"fieldGuide": {
"dataSource": "db",
"public": true
},
"job": {
"dataSource": "db",
"public": true

View File

@ -11,20 +11,10 @@ var path = require('path'),
resources = require('./resources.json'),
nonprofits = require('../../seed/nonprofits.json');
var fieldGuides = fs.readdirSync(
path.join(__dirname, '../../seed/field-guides')
)
.map(function(file) {
return require('../../seed/field-guides/' + file);
})
.reduce(function(allGuides, categoryGuides) {
return allGuides.concat(categoryGuides);
}, []);
/**
* Cached values
*/
var allFieldGuideIds, allFieldGuideNames, allNonprofitNames,
var allNonprofitNames,
challengeMap, challengeMapForDisplay, challengeMapWithIds,
challengeMapWithNames, allChallengeIds,
challengeMapWithDashedNames;
@ -162,33 +152,6 @@ module.exports = {
];
},
allFieldGuideIds: function() {
if (allFieldGuideIds) {
return allFieldGuideIds;
} else {
allFieldGuideIds = fieldGuides.map(function(elem) {
return elem.id;
});
return allFieldGuideIds;
}
},
allFieldGuideNamesAndIds: function() {
if (allFieldGuideNames) {
return allFieldGuideNames;
} else {
allFieldGuideNames = fieldGuides.map(function(elem) {
return {
name: elem.name,
dashedName: elem.dashedName,
id: elem.id,
category: elem.category
};
});
return allFieldGuideNames;
}
},
allNonprofitNames: function() {
if (allNonprofitNames) {
return allNonprofitNames;

View File

@ -6,7 +6,7 @@
.modal-body.text-center
h3 This will take you to our pair programming room where you can request a pair.
h3 You'll need &thinsp;
a(href='/field-guide/how-do-i-install-screenhero' target='_blank') Screenhero
a(href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-install-Screenhero' target='_blank') Screenhero
| .
h3 Other campers may then message you about pair programming.
a.btn.btn-lg.btn-primary.btn-block(href='https://gitter.im/FreeCodeCamp/LetsPair', data-dismiss='modal', aria-hidden='true' target='_blank') Take me to the pair programming room
@ -30,7 +30,7 @@
a.close.closing-x(href='#', data-dismiss='modal', aria-hidden='true') ×
.modal-body.text-center
h3 Remember to use &thinsp;
a(href='/field-guide/how-do-i-get-help-when-i-get-stuck' target='_blank') RSAP
a(href='//github.com/FreeCodeCamp/freecodecamp/wiki/How-to-get-help-when-you-get-stuck' target='_blank') RSAP
| .
h3 If you've already read the errors and searched Google, you should ask for help.
h3 This will take you to our help room.

View File

@ -26,7 +26,7 @@ urlset(xmlns="http://www.sitemaps.org/schemas/sitemap/0.9")
priority= 0.9
url
loc http://www.freecodecamp.com/twitch
loc http://www.freecodecamp.com/coding-bootcamp-cost-calculator
changefreq weekly
lastmod= now
priority= 0.9
@ -59,10 +59,3 @@ urlset(xmlns="http://www.sitemaps.org/schemas/sitemap/0.9")
lastmod= now
changefreq daily
priority= 0.9
each fieldGuide in fieldGuides
url
loc #{appUrl}/field-guide/#{fieldGuide.replace(/\s/g, '-')}
lastmod= now
changefreq daily
priority= 0.9