1. 37

Hi all! We (@anishathalye, @jjgo, and @jonhoo) have long felt that while university CS classes are great at teaching specific topics, they often leave it to students to figure out a lot of the common knowledge about how to actually use your computer. And in particular, how to use it efficiently.

There’s just no class in the undergrad curriculum that teaches you how to become familiar with the system you’re working with! Students are expected to know about, or figure out, the shell, editors, remote access and file management, version control, debugging and profiling utilities, and all sorts of other useful tools on their own. Often times, they won’t even know that many of these tools exist, and instead do things in roundabout ways or simply be left frustrated about their development environment.

To help mitigate this, we decided to run this short lecture series at MIT during the January Independent Activities Period that we called “Hacker Tools” (in reference to “hacker culture”, not hacking computers). Our hope was that through this class, and the resulting lecture materials and videos, we might be able to bootstrap students’ knowledge about the tools that are available to them, which they can then put to use throughout their time at university, and beyond.

We’ve shared both the lecture notes and the recordings of the lectures in the hopes that people outside of MIT may also find these resources useful in making better use of their tools. If that turns out to be true, we’re also thinking of re-doing the videos in screen-cast style with live chat and a proper microphone when we get the time. If that sounds interesting to you, and if you have ideas about other things you’d like to see us cover, please leave a comment below; we’d love to hear from you!

We’re sure there are also plenty of cool tools that we didn’t get to cover in this series that you all know and love. Please share them below along with a short description so we can all learn something new!

Anish, Jose, and Jon

  1. 5

    This twitter account is gold: https://twitter.com/b0rk/status/1000235694118395904

    My smaller tips: space at beginning of shell command line - not put into history when you create a complicate shell command… and just discover you can not run it right now… just , put # and enter. It’s comment, not executed and you have it handy in history Use notebooks. Doesn’t matter if Jupyter or orgmode or something else… Just use them for reproducibility. Use tee very often for debugablity use set to make your bash scripts fail fast

    Anyway at a short peek your materials look great. Lot’s of stuff I needed to learn hard way. I hope this will save the next generation some stress and time.

    1. 3

      There’s also some good discussion over at Hacker News.

      1. 2

        Hey @jonhoo,

        If its not too much trouble, do you mind linking to our section on getting invited? We have been seeing an uptick in the number of flustered invitation seekers recently and I think it would help.

        1. 1

          Hey! Where were you thinking I would link to that from? There’s nothing in 6.HT that references Lobsters beyond the link to “see more discussion here” I think?

          1. 1

            Would a bullet below / an emdash next to the lobster.rs link work?

            1. 1

              I guess I’m confused about why exactly people following that link would need invitations? The links there are intended for people who want to read the comments that were made at time of posting. I supposed I could add something like (invite-only) with a link to that page, but that may have the opposite effect of what you’re after, since it might stop people from clicking onto Lobsters in the first place?

              1. 2

                Do you have any objections to me making a pull request on the site with the change this evening? I think that would clear up all of your confusion.

                1. 2

                  Since your post did so well (congrats!) that the prominent mention of Lobsters led to a wave of folks dropping by the irc channel looking for invites. There’s a big overlap between people who want to watch videos and read about being better developers and people who want to join a community that’s largely about that same topic.

                  Rather than cause for celebration at the great PR, it’s been really frustrating for both them and us because it’s clear they haven’t read /about#invitations or otherwise been on the site long enough t oacculturate at all: they’re confused about why they have to ask for an invite and how to do so politely; the channel regulars feel swamped by rude, demanding randos. Slowing down onboarding is a feature rather than a bug of the invite system, but you sent enough attention our way that the deliberately-informal non-process is breaking down.

                  I think @355E3B asked for the link in the same spirit as you publishing these (great!) notes: there’s a wealth of powerful information and tools available to developers that it’s not obvious to go look for, so even a small pointer to what’s possible goes a long way. We’d love to have these folks participate in the community and linking to the invite explanation might remove the stumbling block.

                  (Also: wearing my online marketing hat, maybe the page’s link to the video and notes more prominent? It doesn’t pop out when skimming, so the bullet list of links at the bottom is the most actionable thing a skimmer sees. Easiest thing to do would be to make the text “all lecture videos and lecture notes” the link so that it’s visually bigger, or add a button for design contrast. Or just pull the contents of /lectures into this page; I don’t think it would make it too long.)

                  1. 2

                    Ah, I see. I wasn’t aware that the effect had been that strong! I’ve added a link now — let me know if the text is along the lines of what you were thinking? I’ve also reorganized the front page a little to make it easier to spot the link to lecture contents. I’ll chat to the others about putting the lecture list on the front page.

                    1. 1

                      All of that looks great to me.

          2. 1

            Plastic SCM. Did you know about it @jonhoo?