Merge branch 'master' into profiles

pull/9/head
Michael Q Larson 2015-01-08 22:33:17 -08:00
commit 9ab523d3f3
9 changed files with 155 additions and 119 deletions

View File

@ -30,31 +30,20 @@ module.exports = {
var date2 = new Date();
var timeDiff = Math.abs(date2.getTime() - date1.getTime());
var daysRunning = Math.ceil(timeDiff / (1000 * 3600 * 24));
var nonprofitProjects = client.get('https://trello.com/1/boards/BA3xVpz9/cards?key=' + secrets.trello.key, function(data, response){return data.length;});
User.count({}, function(err, users) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 2}}, function(err, c2) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 4}}, function(err, c4) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 9}}, function(err, c9) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 19}}, function(err, c19) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 29}}, function(err, c29) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 39}}, function(err, c39) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 53}}, function(err, all) { if (err) { debug('User err: ', err); next(err); }
res.render('resources/stats', {
title: 'Free Code Camp Stats:',
daysRunning: daysRunning,
users: users,
nonprofitProjects: nonprofitProjects, /* can't yet get this to work. Async issue?
Hardcoded value for now and created a Trello card */
c2: c2,
c4: c4,
c9: c9,
c19: c19,
c29: c29,
c39: c39,
all: all
});
});
});
client.get('https://trello.com/1/boards/BA3xVpz9/cards?key=' + secrets.trello.key, function(trello, response) {
var nonprofitProjects = (trello && trello.length) || 15;
User.count({'points': {'$gt': 2}}, function(err, c3) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 9}}, function(err, c10) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 29}}, function(err, c30) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 53}}, function(err, all) { if (err) { debug('User err: ', err); next(err); }
res.render('resources/stats', {
title: 'Free Code Camp Stats:',
daysRunning: daysRunning,
nonprofitProjects: nonprofitProjects,
c3: c3,
c10: c10,
c30: c30,
all: all
});
});
});
@ -131,8 +120,29 @@ module.exports = {
},
about: function(req, res) {
res.render('resources/about', {
title: 'About Free Code Camp and Our Team of Volunteers'
var date1 = new Date("10/15/2014");
var date2 = new Date();
var timeDiff = Math.abs(date2.getTime() - date1.getTime());
var daysRunning = Math.ceil(timeDiff / (1000 * 3600 * 24));
client.get('https://trello.com/1/boards/BA3xVpz9/cards?key=' + secrets.trello.key, function(trello, response) {
var nonprofitProjects = trello.length || 15;
User.count({'points': {'$gt': 2}}, function(err, c3) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 9}}, function(err, c10) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 29}}, function(err, c30) { if (err) { debug('User err: ', err); next(err); }
User.count({'points': {'$gt': 53}}, function(err, all) { if (err) { debug('User err: ', err); next(err); }
res.render('resources/about', {
title: 'About Free Code Camp and Our Team of Volunteers',
daysRunning: daysRunning,
nonprofitProjects: nonprofitProjects,
c3: c3,
c10: c10,
c30: c30,
all: all
});
});
});
});
});
});
},

View File

@ -9,7 +9,7 @@
"Welcome to Free Code Camp. We're a community of busy people learning to code.",
"We built this community because learning to code is hard. But anyone who can stay motivated can learn to code. And the best way to stay motivated is to code with friends.",
"To maximize accessibility, all our challenges are self-paced, browser-based, and free.",
"All of us start with the same 100 hours of interactive coding challenges. These cover everything from Computer Science to SQL. They also cover in-demand JavaScript tools like jQuery, Node.js and MongoDB.",
"All of us start with the same 100 hours of interactive coding challenges. These cover Computer Science and databases. They also cover in-demand JavaScript tools like jQuery, Node.js and MongoDB.",
"Once we have a basic understanding of web development, we'll spend another 900 hours putting that theory into practice. We'll build full stack solutions for nonprofits.",
"By the end of this process, we'll be good at coding. We'll have a portfolio of apps with happy users to prove it. We'll also have an alumni network of fellow coders and nonprofits ready to serve as references.",
"If you make it through Free Code Camp, you will be able to get a coding job. There are far more job openings out there than there are qualified coders to fill them.",
@ -58,7 +58,7 @@
"video": "114627406",
"challengeNumber": 3,
"steps": [
"There are tons of interactive HTML and CSS tutorials out there, but Nathan Bashaw's Dash tutorials, which he built for General Assembly, are our favorite.",
"There are tons of interactive HTML and CSS tutorials out there, but Nathan Bashaw and Christine Bower's Dash tutorials - which they built for General Assembly - are our favorite.",
"Go to <a href='https://dash.generalassemb.ly/projects/annas-website-1' target='_blank'>https://dash.generalassemb.ly/projects/annas-website-1</a> and get started with your first project."]
},
{
@ -456,7 +456,7 @@
"video": "114686471",
"challengeNumber": 36,
"steps": [
"Now that we understand some Computer Science, JavaScript programming, and how Databases work, you're ready to move on to Full-stack JavaScript!",
"Now that we understand some Computer Science and JavaScript programming, you're ready to move on to Full-stack JavaScript!",
"The first step is to familiarize ourselves Node.js, the JavaScript-based web server that most full-stack JavaScript apps use.",
"Code School has an excellent course on Node.js. Note that this course requires a Code School subscription, but that you can get a free two-day membership to Code School by going to <a href='https://www.codeschool.com/hall_passes/213f3fedb6b9/claim_shared' target='_blank'>https://www.codeschool.com/hall_passes/213f3fedb6b9/claim_shared</a>. The challenges immediately following these Node.js challenges also require a Code School course, so you may want to try to complete all these challenges in one two-day period. Alternatively, you could subscribe to Code School for one month, then take your time in completing these challenges.",
"When you're ready, go to <a href='http://campus.codeschool.com/courses/real-time-web-with-node-js/level/1/video/1' target='_blank'>http://campus.codeschool.com/courses/real-time-web-with-node-js/level/1/video/1</a> and complete the first chapter."

View File

@ -37,5 +37,5 @@ block content
br
a.btn.nonprofit-cta.btn-success(href="/nonprofits") I'm with a nonprofit and want help coding something
include partials/about-us
include partials/about
include partials/faq

View File

@ -6,7 +6,41 @@
.masonry-row
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
| Getting back on track with
a(href='https://twitter.com/FreeCodeCamp') @freecodecamp
| and committing to a new career in 2015!
| &mdash; Jen (@jenbestyoga)
a(href='https://twitter.com/jenbestyoga/status/552261958221963264') January 6, 2015
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
| I can&apos;t get enough of the free tutorials you&apos;re offering. Thanks for being awesome! Will be referring friends your way!
| &mdash; Chris Pearson (@CPearsonnn)
a(href='https://twitter.com/CPearsonnn/status/551513789401559042') January 3, 2015
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
| Great way to start learning code, it&apos;s the future.
a(href='http://t.co/pNwDAQ9xFe') http://t.co/pNwDAQ9xFe
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
a(href='https://twitter.com/hashtag/Code?src=hash') #Code
a(href='https://twitter.com/hashtag/html?src=hash') #html
a(href='https://twitter.com/hashtag/css?src=hash') #css
a(href='https://twitter.com/hashtag/jquery?src=hash') #jquery
a(href='https://twitter.com/hashtag/javascript?src=hash') #javascript
| &mdash; Adam (@savageEWOK87)
a(href='https://twitter.com/savageEWOK87/status/549277640612278273') December 28, 2014
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
| My boss was impressed by the troubleshooting I learned through
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
@ -17,7 +51,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
a(href='https://twitter.com/DrivenByTatiana') @DrivenByTatiana
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
@ -27,7 +61,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
| Discovered
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
@ -39,7 +73,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
| For my friends who are learning to code,
a(href='https://twitter.com/ossia') @ossia
@ -53,7 +87,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
| is such a fantastic program! I love the idea of it. Perfect for someone like me
@ -62,7 +96,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
| Just built my companies website
a(href='http://t.co/AUkS27oTm5') http://t.co/AUkS27oTm5
@ -73,7 +107,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
| I&apos;ll make time to be part of this!!!!
@ -82,7 +116,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
| Great idea. Great vision.
@ -91,7 +125,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
| Learn code for free! Your time, your pace! Sweet!
a(href='http://t.co/y6IMdPDPnH') http://t.co/y6IMdPDPnH
@ -104,7 +138,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
| is my new favorite online learning tool right now.
@ -117,7 +151,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
| Started
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
@ -131,7 +165,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
| I don&apos;t consider myself a teacher, but getting involved &amp; collaborating through
a(href='https://twitter.com/FreeCodeCamp') @FreeCodeCamp
@ -141,7 +175,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
| A6 -
a(href='http://t.co/M6Gyw8jszd') http://t.co/M6Gyw8jszd
@ -153,7 +187,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.masonry-block
.masonry-relative
blockquote.twitter-tweet(lang='en')
blockquote.twitter-tweet(lang='en', data-cards="hidden")
p
| I agree,
a(href='https://twitter.com/LeifPixel') @LeifPixel
@ -168,7 +202,7 @@
script(async='', src='//platform.twitter.com/widgets.js', charset='utf-8')
.panel.panel-primary
.panel-heading.landing-panel-heading.text-center Our Team of Volunteers
.panel-heading.landing-panel-heading.text-center Our Team of Volunteer Camp Counselors
.panel-body
.landing-panel-body.text-center
.col-xs-12
@ -181,12 +215,24 @@
}
});
#shuffle
.col-xs-12.col-sm-4.col-md-3.team-member
h3.negative-10.text-nowrap Ammar Shah
h4.negative-10.text-nowrap Community Builder
img.profile-image(src='https://s3.amazonaws.com/freecodecamp/ammar-shah.jpg' alt="Ammar Shah's picture")
h4.text-nowrap Karachi, Pakistan
p.negative-10 "I code whenever I'm not sleeping or in school. Making computers obey me is a dream come true."
.col-xs-12.col-sm-4.col-md-3.team-member
h3.negative-10.text-nowrap Branden Byers
h4.negative-10.text-nowrap Community Builder
img.profile-image(src='https://s3.amazonaws.com/freecodecamp/branden-byers.jpg' alt="Branden Byers picture")
h4.text-nowrap Madison, Wisconsin
p.negative-10 "I'm a massage therapist and Stay-at-home-dad. I learned Hypercard, then Rails, but now I feel at home with JavaScript."
.col-xs-12.col-sm-4.col-md-3.team-member
h3.negative-10.text-nowrap Michael Johnson
h4.negative-10.text-nowrap Nonprofit Coordinator
img.profile-image(src='https://s3.amazonaws.com/freecodecamp/michael-johnson.jpeg' alt="Michael Johnson's picture")
h4.text-nowrap Washington, D.C.
p.negative-10 "I'm a recent Harvard graduate who took a pass on Wall Street to code for a cause. Coding is the 21st century literacy."
p.negative-10 "Im a recent Harvard University graduate who took a pass on Wall Street to code for a cause, and help others do the same."
.col-xs-12.col-sm-4.col-md-3.team-member
h3.negative-10.text-nowrap Berkeley Martinez
h4.negative-10.text-nowrap JavaScript Engineer

44
views/partials/stats.jade Normal file
View File

@ -0,0 +1,44 @@
.panel.panel-primary
.panel-heading.landing-panel-heading.text-center Free Code Camp Stats
.panel-body
.landing-panel-body.text-center
.row
.col-xs-6.text-right
h2 Days since we Launched:
.col-xs-6.text-left
h2
= daysRunning
.row
.col-xs-6.text-right
h2 Nonprofit Projects:
.col-xs-6.text-left
h2
a(href="https://trello.com/b/BA3xVpz9/nonprofit-projects")=nonprofitProjects
.row
.col-xs-6.text-right
h2 Code Campers with at least...
.col-xs-6
.row
.col-xs-6.text-right
h2 3 Points:
.col-xs-6.text-left
h2
= c3
.row
.col-xs-6.text-right
h2 10 Points:
.col-xs-6.text-left
h2
= c10
.row
.col-xs-6.text-right
h2 30 Points:
.col-xs-6.text-left
h2
= c30
.row
.col-xs-6.text-right
h2 All 54 Points:
.col-xs-6.text-left
h2
= all

View File

@ -1,4 +1,5 @@
extends ../layout
block content
include ../partials/about-us
include ../partials/stats
include ../partials/about
include ../partials/faq

View File

@ -22,8 +22,8 @@ block content
0: "$('#next-exercise').attr('disabled', false);",
1: "$('.target').appendTo('#location2');",
2: "$('.target').css('background', 'red');",
3: "$('.target:even').css('background', 'red');",
4: "$('.target:nth-child(4)').css('background', 'red');",
3: "$('.target:even').css({'background': 'red'});",
4: "$('.target:nth-child(4)').css({'background': 'red'});",
5: "$('.target:nth-child(2)').clone().appendTo($('#location2'));",
6: "$('.target:nth-child(3)').remove();",
7: "$('#location1 input').attr('checked', 'true')",

View File

@ -3,9 +3,9 @@ block content
.jumbotron.text-center
h1.hug-top Live Pair Programming
h2 We live pair program every Tuesday from 6 p.m. to 7 p.m. (Pacific Time).
h2 Our next session is January 6th, 2015.
a.btn.btn-big.btn-primary.big-break(href="http://www.crowdcast.io/e/freecodecamp-live-pair-programming-3" target='_blank') Watch us Pair Program on JavaScript Algorithms
h2 Previous Live Pair Programming Sessions
h2 Our next session will be January 13th, 2015 at 6 p.m. PST!
//a.btn.btn-big.btn-primary.big-break(href="http://www.crowdcast.io/e/quincylarson11" target='_blank') Watch us Pair Program on JavaScript Algorithms
h3 Previous Live Pair Programming Sessions:
.embed-responsive.embed-responsive-16by9.big-break
iframe.embed-responsive-item(src='//www.youtube.com/embed/cBtysq16kqo')
.embed-responsive.embed-responsive-16by9.big-break

View File

@ -1,68 +1,3 @@
extends ../layout
block content
.jumbotron.text-center
h1.hug-top Free Code Camp Stats
.row
.col-xs-6.text-right
h2 Days since we Launched:
.col-xs-6.text-left
h2
= daysRunning
.row
.col-xs-6.text-right
h2 Nonprofit Projects:
.col-xs-6.text-left
h2
a(href="https://trello.com/b/BA3xVpz9/nonprofit-projects") 14
.row
.col-xs-6.text-right
h2 Total Code Campers:
.col-xs-6.text-left
h2
= users
.row
.col-xs-6.text-right
h2 Code Campers with at least...
.col-xs-6
.row
.col-xs-6.text-right
h2 2 Points:
.col-xs-6.text-left
h2
= c2
.row
.col-xs-6.text-right
h2 4 Points:
.col-xs-6.text-left
h2
= c4
.row
.col-xs-6.text-right
h2 9 Points:
.col-xs-6.text-left
h2
= c9
.row
.col-xs-6.text-right
h2 19 Points:
.col-xs-6.text-left
h2
= c19
.row
.col-xs-6.text-right
h2 29 Points:
.col-xs-6.text-left
h2
= c29
.row
.col-xs-6.text-right
h2 39 Points:
.col-xs-6.text-left
h2
= c39
.row
.col-xs-6.text-right
h2 All 54 Points:
.col-xs-6.text-left
h2
= all
include ../partials/stats