this post was submitted on 22 Dec 2023
87 points (98.9% liked)

Asklemmy

43833 readers
1331 users here now

A loosely moderated place to ask open-ended questions

Search asklemmy 🔍

If your post meets the following criteria, it's welcome here!

  1. Open-ended question
  2. Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
  3. Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
  4. Not ad nauseam inducing: please make sure it is a question that would be new to most members
  5. An actual topic of discussion

Looking for support?

Looking for a community?

~Icon~ ~by~ ~@Double_A@discuss.tchncs.de~

founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] Fizz@lemmy.nz 28 points 10 months ago (5 children)

I can't believe in my comp sci course they never went over git. Like cmon that's core to software development these days.

[–] catfish@lemmy.ml 20 points 10 months ago

It's a little unfair to criticise a CS course for not being a SWE course. But I agree that graduating students in CS without having covered the basic requirements in the SWE day job most of them will move into is a disservice.

I did CS (30 years ago) and things entirely missing in the syllabus back then:

  • any and all soft skills
  • version control
  • refactoring
  • testing and the value of testing
  • staging and replicated environments for raw dev, QA, live, etc
[–] mesamunefire@lemmy.world 10 points 10 months ago

Totally agree! git is a standard for a reason.

It never fails too how many times I have to teach jr devs git right off the bat. Its just weird enough to require a little bit of handholding when they start.

[–] toastal@lemmy.ml 4 points 10 months ago* (last edited 10 months ago)

Teaching about version control would be preferable to a singular tool. Git wasn’t always the #1 tool nor will it be forever, & there are some great tools pushing against Git as we speak which will be great for all of us when something truly better usurps—like Subversion, the former king. Training on a singular tool is like learning Microsoft Word instead of document processing where the broader concepts are more valuable for your career as you understand not just how but why.

Personally I had a lot of fun giving darcs & Pijul fair shakes in 2023 to understand what makes the patch theory cool to work with. You could probably do a whole course on VCSs & their models since you are correct that they are rather integral to real world teams & projects.

[–] JustSomePerson@kbin.social 3 points 10 months ago (1 children)

It doesn't require university level study to understand. You took Comp Sci, not applied software development. If you can pass Comp Sci, you should be able to use a system like git without it having been part of a tertiary level curriculum.

[–] Fizz@lemmy.nz 4 points 10 months ago (1 children)

it doesnt require university level study to understand

Yeah you can learn it outside of uni but I could say the same for anything in that course. Students wouldn't know they need to learn it because they haven't worked in the industry.

During the course you are doing projects with multiple people. Looking back it would have been a great place to introduce version control.

[–] JustSomePerson@kbin.social 2 points 10 months ago

If you were to study version control in a comp sci degree, you would study the way it's implemented, not how to use it. The data models for how to store and access repositories of many files with many changes is interesting, and can have different aspects depending on if it is text content or binary. Is it optimal to store each file as an aggregate of its diffs, no matter how many. Should there be snapshot points, etc?

Those are the aspects of version control that belong in tertiary level computer science. Learning how to use "git add" and "git push" don't.

[–] lemann@lemmy.dbzer0.com 2 points 10 months ago

My comp sci course used SVN.

There was one tutor who used git on their course though, albeit via GitHub Classroom so that was probably more a convenience thing