TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

MIT Hacker Tools: a lecture series on programmer tools

1028 pointsby anishathalyeover 6 years ago

18 comments

Jonhooover 6 years ago
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.<p>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.<p>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.<p>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!<p>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!<p>Anish, Jose, and Jon
评论 #19081790 未加载
评论 #19079632 未加载
评论 #19081672 未加载
评论 #19082531 未加载
评论 #19081582 未加载
评论 #19081144 未加载
bhchiangover 6 years ago
The equivalent UCLA course is CS35L: Software Construction Laboratory (<a href="https:&#x2F;&#x2F;web.cs.ucla.edu&#x2F;classes&#x2F;winter19&#x2F;cs35L&#x2F;" rel="nofollow">https:&#x2F;&#x2F;web.cs.ucla.edu&#x2F;classes&#x2F;winter19&#x2F;cs35L&#x2F;</a>). It&#x27;s taught by Paul Eggert (big open source&#x2F;coreutils&#x2F;emacs contributor + author of diff&#x2F;sort).
评论 #19080488 未加载
评论 #19134263 未加载
flafla2over 6 years ago
Here’s the CMU equivalent course, which interestingly was also designed by students:<p><a href="https:&#x2F;&#x2F;www.cs.cmu.edu&#x2F;~15131&#x2F;f17&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.cs.cmu.edu&#x2F;~15131&#x2F;f17&#x2F;</a>
评论 #19080354 未加载
mistrial9over 6 years ago
Please note that the Software Carpentry [0] project exists as well. All welcome .<p>[0] <a href="https:&#x2F;&#x2F;software-carpentry.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;software-carpentry.org&#x2F;</a>
mellingover 6 years ago
MIT went with the Berkeley editor. A lost opportunity to introduce programmers to the beauty of using Emacs and Lisp.
评论 #19081952 未加载
评论 #19081348 未加载
评论 #19092769 未加载
评论 #19086763 未加载
评论 #19081204 未加载
andrewlover 6 years ago
This looks good. I would also recommend the Software Carpentry program:<p><a href="https:&#x2F;&#x2F;software-carpentry.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;software-carpentry.org&#x2F;</a>
taudeover 6 years ago
This is a great series. I&#x27;m going to share with my team, just to make sure they can fill in any items they&#x27;re missing, like using bash functions for shortcuts or aliasing.<p>BTW, Stanford did an online training course 5 years ago or something called CS 184 Startup Engineering. They had some excellent tutorials on the CLI and Emacs [1]. -I wish I could find the materials, if anyone else can find them.-<p>Actually, I found them online: [1] <a href="http:&#x2F;&#x2F;docshare.tips&#x2F;cli-git-emacs-dotfiles_57592eb2b6d87f377c8b46af.html" rel="nofollow">http:&#x2F;&#x2F;docshare.tips&#x2F;cli-git-emacs-dotfiles_57592eb2b6d87f37...</a><p>[2] Link to their dotfiles for beginner config: <a href="https:&#x2F;&#x2F;github.com&#x2F;startup-class" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;startup-class</a>
splittingTimesover 6 years ago
So one lecture covers window managers for tiling. I used dwm for years and love it, but am stuck on Windows at work. Is there anything for Windows 10 that has a similar approach of having a stack with your unused applications and a big window for the app that is in focus? And then you can easily move window from stack to focus and vice versa?<p>I looked at the Wikipedia article [1], but none of the alternatives seem to do that.<p>What can you recommend?<p>===<p>[1] <a href="https:&#x2F;&#x2F;en.m.wikipedia.org&#x2F;wiki&#x2F;Tiling_window_manager" rel="nofollow">https:&#x2F;&#x2F;en.m.wikipedia.org&#x2F;wiki&#x2F;Tiling_window_manager</a>
评论 #19083870 未加载
评论 #19081393 未加载
评论 #19081906 未加载
评论 #19085169 未加载
评论 #19081955 未加载
rollinDynoover 6 years ago
I strongly believe man is a product of his tools, my slow but steady increase of their mastery is a source of pride. I&#x27;ve spent nights just mindelessly browsing the web in the search for a tool I didn&#x27;t know about (it can be a service, a browser extension, a text editor plugin) so just looking at the title of this post made me ready for an injection of dopamine.<p>I have a branch on my todo list solely focused on my tools, because there are so many things to configure continuously. I schedule these tasks for the occassion I feel like I&#x27;ll have a couple of minutes to improve and their priority are often labeled as &quot;Compounding Rewards&quot; as opposed to &quot;Critical&quot;.
评论 #19084462 未加载
评论 #19103944 未加载
everetmover 6 years ago
We had a student run course at Purdue for a while to teach new students fundamental tools outside of class. <a href="https:&#x2F;&#x2F;github.com&#x2F;Purdue-CSUSB" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;Purdue-CSUSB</a>
stebannover 6 years ago
Really useful! I was looking something introductory for teaching, this will do.
jackallisover 6 years ago
is this some sort of MIT class to undergrad or general public?
评论 #19083123 未加载
jackallisover 6 years ago
can&#x27;t see anything on that projector :-(
评论 #19082710 未加载
marzoevover 6 years ago
wow this is so cool!!!
abhishekjain123over 6 years ago
Thank you Sir For This Amazing Post.It Really Helped Me To Buy new Tolls For My Industries.
uasmover 6 years ago
&gt; <a href="https:&#x2F;&#x2F;hacker-tools.github.io&#x2F;lectures&#x2F;" rel="nofollow">https:&#x2F;&#x2F;hacker-tools.github.io&#x2F;lectures&#x2F;</a><p>Literally none of these have anything to do with proper information security&#x2F;hacking&#x2F;penetration testing. Will you please consider to stop abusing the term &quot;hacker&quot;?
评论 #19080257 未加载
评论 #19080272 未加载
评论 #19080768 未加载
评论 #19080287 未加载
评论 #19080280 未加载
评论 #19080537 未加载
评论 #19080342 未加载
评论 #19080269 未加载
评论 #19080295 未加载
flukusover 6 years ago
Forget university, most of these this should be the content of K-12 computing&#x2F;programming classes. It&#x27;s simpler and has much more real world value than a lot of the crap the tech, like graphical iPad programming or how to use a specific version of word.
jointhefutureover 6 years ago
The article on editors is basically &quot;here&#x27;s the names of 5 editors, now learn vim&quot;<p>I know this will piss off vim users but in my experience vim users are seriously out date when it comes to dev tools. It&#x27;s like they never left the 70s. vim might be great, it might be available everywhere but when I see a vim user I then see them use something like gdb and have clearly never experienced a modern debugger because if they had they&#x27;d be infuriated at how their debugging tools haven&#x27;t improved in 30 years.<p>I&#x27;m sure others could go into all the features a modern editor or IDE provide. The vim users will say they don&#x27;t need that crap. They sound like some grandpa saying &quot;back in my we had to walk to 5 miles to school, no one had invented bicycles or cars or buses. Don&#x27;t need those new fangled things, now Get off my Lawn!&quot;
评论 #19082645 未加载
评论 #19106419 未加载