The Class Works. Now I Have to Sell It.
Three weeks ago I wrote about a class I built, the night before I taught it for the first time. I said I was about to find out if it works.
So far, it does.
We’re two weeks in. The students have run containers I handed them and documented what those containers were doing, and they’ve written their own Dockerfiles for their piece of the team project. Everything they do feeds into the project they’ll demo in week ten, so none of it is busywork.
The labs have gone well, but what’s really stuck with me is what the students have been saying.
One student said in class that this is the most useful class he’s taken. He said it in front of everyone, and the lecture was being recorded.
Another student told me he’s taking it because his dad told him to. His dad is a developer, and he told him that if he wants a job, he needs this class, because this is how software gets built now. I love that one. It’s a working developer telling his own kid what it takes to get hired, and it’s the same thing I’ve been saying for years.
A few of them have also told me they wish DePaul offered more classes like this.
Honestly, that frustrated me more than anything, because it’s exactly what I’ve been pushing for. In the last post I wrote about how the approval went. It went through a committee I wasn’t in the room for, and it came out as an undergrad-only elective that runs once a year. The masters students who asked me about it can’t take it, even though a lot of them are working or trying to break into tech and will be interviewing soon.
So I had students telling me the same thing I’d been trying to tell the people who make these decisions, and I was tired of someone else making that argument for me.
I ended that post saying I needed to figure out who to talk to long before anything reaches a committee. I figured that was a next-year problem. It took three weeks.
I sent an email, and this week I have a meeting with the people who can actually make it happen. This time I’m the one making the pitch.
The main ask is pretty simple. Offer this class on a regular schedule instead of as an elective that shows up once a year, open it up to grad students, and make it part of the software engineering course offerings.
That’s what I need to walk out with. What I actually want to talk about is bigger than that.
When students say they want more classes like this, what they’re asking for is more of what I talked about in the last post, the stuff between writing code and that code running somewhere real. One ten-week class can’t cover all of that.
CI/CD should be in most classes, not just mine. In my course the pipeline shows up in week four and everything after that runs on it. I’d love to see that across the whole program. If every class where students write code had that code built and tested on every push, they’d graduate already used to working that way. GitHub has a lot of offerings for universities, and we should be using them.
I want to see a real cloud development class, where students actually deploy things, break them, and see what they cost. I know cost is going to be the first concern. I think that’s something we can work through, and I’d like to help figure out how.
I’d also like to see observability and SRE. A lot of my career has been spent on problems that only show up at scale, and most of them come down to knowing when something is wrong and why. Students hardly see any of that right now.
And more systems administration, for both Linux and Windows. Containers and the cloud still run on real machines, and somebody on every team needs to understand them.
This is all stuff I use every day, and pretty much every company I’ve worked with expects new hires to at least be familiar with it.
I’m nervous about the meeting. I have a lot I want to say and not a lot of time, so this week I’m figuring out what matters most and what can wait. I have to be okay with not getting to all of it.
What’s helping is something I stole from Ben Johnson: good, better, best. I’ve been a Bears fan long enough to be an expert in rebuilding years, so I know you don’t fix everything in one offseason. You don’t fix a curriculum in one meeting either. You get good first, and you build from there. Besides, I’ve survived a lifetime of being a Bears fan. I can survive one pitch meeting.
For me, good is getting this class offered every year. Better is opening it to grad students and making it part of software engineering. Best is a program where students don’t have to stumble onto one elective to learn how software actually gets shipped.
If all I get this week is good, I’ll take it. Thanks, Coach. Bear down.
In the meantime I still have a class to teach. This week is Compose, and after that comes CI/CD, which is the week the rest of the course is built on. Whatever happens in that meeting, I’ll be back in front of them the same week, and that’s still the part that matters most.