Over the last several months, I’ve been doing qualitative research into the coding school / developer education space. Specifically investigating if, how, and why coding programs incorporate databases into their curriculum.
Over the last several months, I’ve been doing qualitative research into the coding school / developer education space. Specifically investigating if, how, and why coding programs incorporate databases into their curriculum. While there were of course some differences based on location, size, and emphasis, there were also a few interesting commonalities. I thought I’d share my findings, see if the community has additional insight, and highlight where HarperDB might fit into the mix. (Note: this is related to frontend and full stack programs since backend programs focus almost entirely on databases.)
To conduct this research I reached out to numerous coding instructors, educators, and students across the U.S. and Canada. While many people were respectively too busy, several folks were generous enough to share a bit of insight via email or hop on a call to have a more in depth discussion (if those folks are reading this — thanks again for your help!). I learned the following insights:
The extent or time spent on databases as well as the variety of databases included depends on the length of the program as well as size — no surprise here. While the larger programs might have more time to touch on databases, they may not have the flexibility to deviate from or influence the course catalog. Whereas smaller programs tend to have more flexibility to switch up the curriculum instead of having to “cut through red tape” to make a change.
Smaller / shorter programs that don’t require modeling tend to use MongoDB, while larger / longer programs tend to use PostgreSQL because you can do more with it.
One of my favorite quotes was, “If something is pretty hot out in the wild, it will find its way into a classroom pretty quickly.” However, some of the larger or more established schools have more restrictions when it comes to making changes. One lead educator at an established school mentioned that these programs are licensed by the state they’re in, and changing them can be expensive and exhausting. Instructors can teach certain things “off the books,” but if they don’t teach what’s in the course catalog they risk being fined or sued.
Also not surprising, some of the smaller schools or full-stack focused programs (as opposed to strictly relational for example) have a lot more flexibility with what databases they teach and when they want to switch it up. (But there were some outliers here as well!) One major commonality in how schools choose which database to teach is the local job market, as well as whichever tool will enable instructors to get from point A to point B in the smoothest way possible (i.e. no old-school clunky systems that take forever to install and learn!).
Learning to Code: How to Boost Up the Process? I also often recommend different online and offline resources to my students to make their learning process easier, more effective, and faster. And in this post, I will share a few tips with you.
How to make a good database design? Why we should create a good design database? Database design is an essential skill of a software engineer. In some interviews, the interviewer can ask you a few questions about it.
In this story I want to share with you a basic relational database which helped me to understand ideas of organizing data for relational…
Learn how to design and plan a database for beginners. This database design course will help you understand database concepts and give you a deeper grasp of database design. Database design is the organisation of data according to a database model. The designer determines what data must be stored and how the data elements interrelate. With this information, they can begin to fit the data to the database model.
Craft a compelling story about your work, and if that fails, you better know how to wing it.Learning to speak about your work with eloquence while engaging the audience is one of the essential skills designers can learn. They should be able to craft a compelling story that incorporates your rationale and meets the criteria of the project brief.