Change:
Bonfires show completely done, but not all points were accounted for. This could have stemmed from using Bonfires when it was first live and the bug at and fixed in . I doubt this is a pervasive issue. It could just be isolated to me.
There's a good chance this is already fixed on our UX-improvement branch. There were a number of issues with our old point system that we've since remedied.

Discussion:
} ]); <ins> profileValidation.controller('nonprofitFormController', ['$scope', function($scope) { } ]); </ins> profileValidation.directive('uniqueUsername', function($http) { return { restrict: 'A',

li &#8226 Understand that they will build your project using JavaScript frameworks (as opposed to older or proprietary tools) li &#8226 Keep your expectations high. Our students' goal is to produce work that's up to your standards h3 If you're OK with these terms, great! We'd love to help you! Fill in this form and we'll get right back to you. <del> form.form-horizontal(role='form', action="/nonprofits/", method='POST') </del> <ins> form.form-horizontal(role='form', action="/nonprofits/", method='POST', novalidate='novalidate', name='nonprofitForm') </ins> input(type='hidden', name='_csrf', value=_csrf) .form-group <del> label(class='col-sm-2 control-label', for='name') Your name </del> <ins> label(class='col-sm-2 control-label', for='name') Your name * </ins> .col-sm-8 <del> input.form-control(type='text', name='name', id='name') </del> <ins> input.form-control(type='text', name='name', id='name', autocomplete="off", ng-model='name', required='required') .col-sm-8.col-sm-offset-2(ng-show="nonprofitForm.name.$invalid && nonprofitForm.name.$error.required && !nonprofitForm.name.$pristine") alert(type='danger') span.ion-close-circled(id='#name-error') |  Your name is required. </ins> .form-group <del> label(class='col-sm-2 control-label', for='email') Your email </del> <ins> label(class='col-sm-2 control-label', for='email') Your email * </ins> .col-sm-8 <del> input.form-control(type='text', name='email', id='email') </del> <ins> input.form-control(type='text', name='email', id='email', autocomplete="off", ng-model='email', required='required') .col-sm-8.col-sm-offset-2(ng-show="nonprofitForm.email.$invalid && nonprofitForm.email.$error.required && !nonprofitForm.email.$pristine") alert(type='danger') span.ion-close-circled(id='#email-error'). Your email is required. </ins> .form-group <del> label(class='col-sm-2 control-label', for='message') Briefly describe what problem you need to solve, and for whom. </del> <ins> label(class='col-sm-2 control-label', for='message') Briefly describe what problem you need to solve, and for whom. * </ins> .col-sm-8 <del> textarea.form-control(type='text', name='message', id='message', rows='7') </del> <ins> textarea.form-control(type='text', name='message', id='message', rows='7', autocomplete="off", ng-model='message', required='required') .col-sm-8.col-sm-offset-2(ng-show="nonprofitForm.message.$invalid && nonprofitForm.message.$error.required && !nonprofitForm.message.$pristine") alert(type='danger') span.ion-close-circled(id='#message-error') | Your message is required. </ins> .form-group .col-sm-offset-2.col-sm-8 <del> button.btn.btn-primary(type='submit') </del> <ins> button.btn.btn-primary(type='submit', ng-disabled='nonprofitForm.$invalid') </ins> span.ion-paper-airplane <del> | Submit </del> <ins> | Submit </ins>  No newline at end of file