12 votes

Topic deleted by author

6 comments

  1. Emerald_Knight
    Link
    Definitely cover basic programming tools! IDEs. Virtual machine basics. Version control basics. Standard input/output and stream redirection (important for automating program input from a file and...

    Definitely cover basic programming tools!

    • IDEs.
    • Virtual machine basics.
    • Version control basics.
    • Standard input/output and stream redirection (important for automating program input from a file and redirecting output to a file).
    • Network basics (public vs. private IP addresses, ports, port forwarding, NAT, DNS, firewalls).

    For Linux in particular (and others for which these are applicable):

    • Packing and unpacking tarballs.
    • Connecting remotely via SSH (maybe touch on configuring keepalives in case there are connection timeouts).
    • Using scp to grab/upload files (seriously, no one bothered to teach me this when I needed it to download a required VM image for a class, and sometimes search engines are an absolute joke with this stuff for newbies).
    • File permission management (read/write/execute, users/groups, root, how to add the appropriate permissions without touching the others, etc.).
    • Bad habits to avoid (using rm -rf ./* because it's easy to rm -rf /* and wipe your entire drive, using chmod 777 for literally everything because what are permissions anyway, etc.).
    4 votes
  2. [2]
    masochist
    Link
    As a not-Linux Unix user, please point out that there's more to not-Windows than just Linux. Bash, coreutils, etc. all run on lots of things besides Linux and the more people who know that, the...

    As a not-Linux Unix user, please point out that there's more to not-Windows than just Linux. Bash, coreutils, etc. all run on lots of things besides Linux and the more people who know that, the better off we'll be. Come to the dark side, we have cookies, and we don't have systemd!

    3 votes
    1. [2]
      Comment deleted by author
      Link Parent
      1. masochist
        Link Parent
        macOS is not quite "based on" BSD. Rather, it shares a number of different components (and, historically, people) with FreeBSD. The kernel is different, the userland has a lot of elements that...

        macOS is not quite "based on" BSD. Rather, it shares a number of different components (and, historically, people) with FreeBSD. The kernel is different, the userland has a lot of elements that aren't in FreeBSD, and so on. The Wikipedia articles cover things pretty well.

        2 votes
  3. [3]
    vakieh
    Link
    Your 2nd and 3rd paragraphs are both funny and depressing to me - I teach and research in computer science at a university level and accredit computer science programs in Australia and the US. If...

    Your 2nd and 3rd paragraphs are both funny and depressing to me - I teach and research in computer science at a university level and accredit computer science programs in Australia and the US.

    If your department isn't teaching effective ways of working, including things like requirements elicitation and validation (not verification, which theoretical CS does a lot of), it isn't teaching computer science in a way that anyone outside academia is going to be able to use (and would hard fail ACM, IEEE and ACS accreditation).

    Here is the most recent ACM curriculum guide for CS, and here is the ACS equivalent. I would look through those and see what the biggest gaps are with what students are being taught.

    If students are hitting the capstone level (which I assume is year 3 or 4 being the final year of an undergrad bachelor level degree?) without knowing the application of programming to the level you are describing, then they are attending a scam institution and should leave immediately.

    1 vote
    1. [3]
      Comment deleted by author
      Link Parent
      1. [2]
        vakieh
        Link Parent
        Are they claiming ACM as in Association for Computer Machinery, or Associated Colleges of the Midwest? Because they don't have ABET-CAC accreditation (not failed, just not applied for), which is...

        Are they claiming ACM as in Association for Computer Machinery, or Associated Colleges of the Midwest? Because they don't have ABET-CAC accreditation (not failed, just not applied for), which is what the IEEE & ACM (the computing one) curricula are assessed by. I could only find a claim for Higher Learning Commission accreditation for the institution overall.

        The issue of language change is not a serious one, by 3rd year students should be capable of transferring skills to a different language without issue. Databases though is a bigger problem, as it's on the accreditation list as something to be taught. Do you really get to the capstone level without having done SQL, or Mongo, or something? Even database theory like normalisation, or ACID?

        1. [2]
          Comment deleted by author
          Link Parent
          1. vakieh
            (edited )
            Link Parent
            This is enough to trigger a fail in any modern curriculum accreditation if they don't use the capstone itself as a teaching method (where you're expected to self-learn and have been taught...

            the problem is that the professor is much more interested in theory than practice academically, but is basing a large part of the grade on the practical project-based learning.

            This is enough to trigger a fail in any modern curriculum accreditation if they don't use the capstone itself as a teaching method (where you're expected to self-learn and have been taught self-learning skills prior to those units). What have you observed in other students - do they learn what they need to and succeed, or do they fail? It's possible they're teaching using problem-based learning but just aren't doing it well.

            The reason this is such a big deal is constructive alignment, or outcomes-based assessment is now more or less known to be the best way to teach anything at a tertiary level, so assessing things you aren't teaching is one of the big things that get looked at (curriculum covers the right content, constructive alignment shows that the stated curriculum is actually being taught, students have the right equipment and facilities to learn, and educators have the right qualifications - the 4 corners of modern curriculum assessment).