3 ms·
> I have to disagree; I routinely need to educate co-workers on how things like B-Trees works, what a sum type is and why it is useful, what the SRP means (and
by randomdata 9y ago
> I have to disagree; I routinely need to educate co-workers on how things like B-Trees works, what a sum type is and why it is useful, what the SRP means (and why it is useful), why testing matters, why abstraction matters, or even things like how to secure production servers.
Given this, why would someone want to get a CS degree, usually at a significant cost, when their coworkers will happily cover the same content while getting paid to learn it? To put it more succinctly, given this, what is the business case to expect increasing enrolments in CS? You will always have some who are passionate about the study, but it seems unlikely that the segment of passionate people is growing over time at this point. CS is not a new field of study anymore.
- deathanatos 9y agoThat's an interesting — and mildly dystopian, to me — thought. I would argue that the cost of having not understood these things is taking quite a toll in the form of tech debt, however. While it is certainly true that I, and others passionate about the field, can potentially educate (though it's debatable how good I am at that), I find I'm usually doing that after-the-fact: I can't know that someone lacks knowledge until they've someone demonstrated that, typically in the form of tech debt, at which point it is much more expensive to course correct. (In the BTree example, I find people often think they understand how BTrees work, so they're not going to raise questions, since they don't know what they don't know.)
- randomdata 9y agoOf what real concern is technical debt to someone who is debating studying CS though? Especially when you say that they don't know what they don't know, thus not even realizing what debt is potentially created. Worst case is that they create too much and leave for greener pastures when the weight becomes too burdensome, which is really not that big of a deal to the individual. But you seem to be looking at this from the owner/employer point of view, which I am not sure represents the type of person who would be studying CS in the typical case anyway. At least once you get past the early startup phase, if the business even started in software, these people tend to disengage from the day-to-day development to focus on the business. In that respect, if technical debt is a real concern to them, they would provide more formalized coverage of these topics to all employees to ensure that everyone understands B-trees, or what have you, at the level the business deems necessary. Since that is not common, it may not really be the operating concern you make it out to be either.