Universities base their education system around the lecture. Students are expected to learn by listening to a lecture and then to use that knowledge to solve problems or write papers. This traditional approach is used even for teaching newer subjects such as computer science and programming. In my experience, students would rarely learn much from computer science lectures, since the way to learn such topics is to practice it, not to listen to someone talk about it. To quote Aristotle:
For the things we have to learn before we can do them, we learn by doing them, e.g. men become builders by building and lyre-players by playing the lyre…
Instead of listening to lectures, students can learn subjects such as programming by going through online tutorials and writing their own programs. However, learning entirely on one’s own can be difficult, since one can get stuck or lose focus. It would be good if one has a way to stay on track and get help.
There’s a traditional Jewish approach to learning that is different from standard lectures – learning with a chavruta, or study partner. By learning with someone else, both people can maintain better focus and get help from each other. As Koheleth says:
Two are better than one; because they have a good reward for their labour. For if they fall, the one will lift up his fellow; but woe to him that is alone when he falleth, and hath not another to lift him up.
A pair learning alone may still run into difficulties, but they can join a group that provides the right environment, structure and support. Jews have traditionally learned in a Beth Midrash, where they benefit from being in an environment conducive to learning and can ask and answer each other’s Talmudic questions. Programming students can similarly learn among other programming students and ask and answer each other’s programming questions.
Students could still attend or watch short lectures, but this would not be the focus of learning. Instead, students would learn on their own and the teacher’s main role would be to answer their questions and give them feedback. This would be similar to the way some students learned in the times of the Geonim. Colleges think that students learn primarily from lectures, but the environment and structure are the real key to learning, not the lecture.
In the last few years, many have adopted this study-group approach to teaching programming. Programming Bootcamps have opened in large cities to teach web development in 2-3 months. Students in these programs often learn more practical programming skills in these bootcamps than they would in three years in many colleges. Lectures play a very small role in these programs. Instead, they gather bright students together to code for most of the day, and provide them with structure and help. Students go through online tutorials and spend most of the time practicing coding. When they need help or feedback, they have other students or mentors to turn to. This approach has been very successful, and most students have been able to land full-time jobs after graduating from these programs.
Yeshivish students in America and Haredi students in Israel would appreciate this practical approach to learning skills. Instead of attending a college for 2-4 years and learning what can be arbitrary requirements, they could attend a “bootcamp” for 2-3 months and come out with more practical skills! This could be a great way for them to learn programming now and get a good job, without having to encounter religiously objectionable issues in college. In the future, this approach to learning could be offered for to many other high-demand areas besides web development, such as Java programming, statistics and marketing.
Interested in learning Web Development? Check out my Kickstarter Project!
Note: Parts of this article are based on a previous post of mine on Programming Bootcamps.