Lesson Based vs. Project Based Learning
I’ve had a little time to think following my tour of the projects from two recent code bootcamps in Toronto. And I’ve attended most grad shows for post-secondary students for years, seeing hundreds of projects from their programs.
At shows like this I see a wide variety of concepts. Usually each project has it’s own creative vision and there is often no similarity between demos. As an example at a recent one I saw a socket-based real-time word game beside a real-estate finding site. At another a baseball-card creating app next to a personal-budget site.
Educational programs seem to emphasize individuality in these projects, to the point that they may have little to nothing in common.
It makes for a fun show, but this diversity comes at a cost. Talk with the student creators and you’ll often find gaps in fundamental coding knowledge. Does that emphasis on the final project cause people to take shortcuts in the learning process itself?
Lesson-based curriculum vs. Project-based curriculum
Both bootcamps and post-secondary education use project-based curriculum. In this method, each person comes up with their own project idea and are assisted in building it out as best they can.
With Leaflet, we use lesson-based curriculum. Everyone is building the same project, learning the same methods and technology. Their creativity and individuality are encouraged in problem-solving and content-creation within a project that is selected for them by experienced instructors — much like a real workplace.
The Pros and Cons of Self-Directed Projects
The strength of project-based curriculum is that students get to apply a lot of imagination to what they will build, but there are significant cons to this method.
- students often pick out projects whose scope is well outside of their ability, due to inexperience
- since emphasis is on the final project, students will skip many of the basics and come out with holes in their knowledge
- students can not learn meaningfully from each other, since each person is pursuing their own project unrelated to others
- students get little chance to improve communication without a common knowledge base among classmates
- it is difficult to identify students who are falling behind
To do a project-based curriculum well requires a LOT of instructor and mentor hours, since there is little in common between the projects being created.
Is a Project-based Curriculum Realistic?
I question the real-world viability of project-based curriculum. Most people are not going to be tasked with coming up with the project concept as a new developer. They need skills that will allow them to work well with more senior developers — communication, collaboration, consistency. A strong base of skills is more important than a brilliant concept. When they are several years in they may begin to be given conceptual tasks, but until then they are going to be given jobs to do by more senior staff. Can they handle that? Do they respond quickly to task assignments? Acknowledge feedback? Can they formulate effective questions?
Lesson-based curriculum gets everyone doing the same things at the same time. This allows students to practice collaboration and communication, since they are building a common knowledge base. Having seen and learned similar things they have a common reference to use in communication. They can refer to each other’s projects. They learn that the process is as important as the code.
The emphasis is not on the final product, but the best-practices employed along the way. A brilliant-looking finished job does not excuse poor practices during development. Students who learn that the journey is more important than the destination integrate better in team environments.
Thanks Adam. I must say I appreciate all the feedback you have given me. I wish I had you in my phone like siri lol Its very possible we could be speaking again in the near future as I plan on following through with Leaflet to improve my development skills. I know I have a long way to go but I believe you guys have a great model here!-Mike, student
The same applies to mentors and instructors, who can steadily improve by knowing roughly what to expect from each lab. And over time a body of student projects grows that they can consult and use to illustrate techniques to new students.
But there is a significant con to lesson-based curriculum, that hopefully we are addressing with Leaflet.
In lesson-based curriculum students can fall into a habit of copying steps from others without applying logic, reason, or creativity. Mentors and instructors have the extra responsibility of having to watch out for that and constantly encourage experimentation within the parameters of the lesson.
I’d also like to see you customize your work some more. Yours is very similar to Tim’s example. With some of your own content and a lot more styling you could have a very nice finished product. I suggest checking out what your classmates have done with their lists, because some of them are doing interesting things like putting it inside a phone. — Devin, Leaflet mentor
We pick projects that provide the same set of skills to everyone, but that allow for a high degree of creativity within the parameters of the project. For example in the “Vanilla JS” course we build a crowd-funding site, but each person determines their own funding project, rewards, stretch-goals. They design their own badges, language, styles, copy and other content. They create the unique logic of the rewards. Mentors specifically look for and reward such initiative.
Students can be as creative as they wish, within the parameters of showing that they have understood and applied the lesson knowledge. This provides a base-level of knowledge that is shared among everyone, can be evaluated, and ensures a level of experience to a prospective employer.
In the end, everyone will have a crowd-funding site, but there is a lot of room for individuality inside those parameters.
This ensures that people do not get overwhelmed by setting themselves up for failure with a project whose scope they will not be able to handle. It enables collaboration and assisting one another.
To me, this choice of methodology is the number one differentiation between Leaflet and other courses. Out of this comes all the particulars of both our software and lesson material.
From lesson-based curriculum comes a common knowledge base.
A common knowledge base allows us to practice transparency. Every student can see the work of any other student and the resulting feedback from mentors. And it makes sense to them because they are doing similar work. When a student is rewarded for a successful technique, other students can learn from it and apply it to their projects.
Collaborative debug sessions become valuable, because chances are many students are struggling with the same problem.
When one student asks a question, everyone benefits
For instructors and mentors, it becomes possible to compare samples of student work looking for success patterns. We can plan for encouraging those patterns because the road-map of the course is known. Every question a student asks becomes applicable to everyone else.
Conclusion:
Project-based curriculum makes for an interesting show, useful for attracting students into spending on a program. However it does very little to ensure students are actually arriving at the skill-sets necessary to work in industry. Lesson-based curriculum, combined with transparency, provides a means to evaluate both students AND instructors on a wide variety of skills — communication, work ethic, punctuality, enthusiasm, and of course technical ability.

