Tag Archives: opensource

Linux for Brand New Beginners

At Grace Hopper last week, I was approached by an enthusiastic woman who was a high achiever in her STEM discipline, but was taking a two year interlude to major in computer science. She knew Windows and Mac but felt that, in order to truly understand programming and operating systems, she should understand Linux. She asked me for some resources to get started understanding and using it. Having been an Linux user for some time, I take my knowledge for granted, and I have no idea where most of it came from. I promised her that once the excitement from the conference was over, I’d create a list of some resources and post it here.

Overview: http://www.linux.com/learn/tutorials/784060-the-complete-beginners-guide-to-linux

File system layout: https://www.digitalocean.com/community/tutorials/how-to-understand-the-filesystem-layout-in-a-linux-vps

File permissions and attributes: https://wiki.archlinux.org/index.php/File_permissions_and_attributes

Processes: https://www.digitalocean.com/community/tutorials/how-to-use-ps-kill-and-nice-to-manage-processes-in-linux

Shell and environment variables: https://www.digitalocean.com/community/tutorials/how-to-read-and-set-environmental-and-shell-variables-on-a-linux-vps

The Unix Path: http://superuser.com/questions/517894/what-is-the-unix-path-variable-and-how-do-i-add-to-it

Signals: http://www.tutorialspoint.com/unix/unix-signals-traps.htm

File compression: https://www.digitalocean.com/community/tutorials/an-introduction-to-file-compression-tools-on-linux-servers

System log files: https://help.ubuntu.com/community/LinuxLogFiles

The boot process: http://www.linuxnix.com/2013/04/linux-booting-process-explained.html

GRUB 2 bootloader: http://www.dedoimedo.com/computers/grub-2.html

GCC and Make: https://www3.ntu.edu.sg/home/ehchua/programming/cpp/gcc_make.html

Desktop environments: http://www.makeuseof.com/tag/10-top-linux-desktop-environments-available/

Man pages: http://man7.org/linux/man-pages/dir_all_by_section.html
…and an explanation: http://www.linuxcommand.org/reading_man_pages.php

Linux in a Nutshell (book): http://shop.oreilly.com/product/9780596154493.do
The Linux Command Line (book): http://shop.oreilly.com/product/9781593273897.do

This list is by no means complete, even though it’s already too big for a blog post, but it should get a beginner far enough along to find the rest on her own.

Update: Good grief, how could I have missed this? The Linux Foundations’s Certification Preparation Guide is free for all to download, and is full of pointers to resources that are relevant whether one wants to pursue certification or not. The most obvious one is edX’s free Introduction to Linux course. Enjoy!


A Full House for Linux Kernel Hacking 101 at GHC

I’ve never spoken in front of this many people before! It’s so exciting to see so many people interested in the kernel and FOSS!


The slide deck, including the Resources links, is here on my Github.

Looking Back on LinuxCon

LinuxCon North America was a wonderful experience. I had the best intentions to blog it, but at the time, I just wanted to be in the moment and be a part of what was happening. I still felt that way when I got home, while the mindset I took from there was still lingering.

My talk went incredibly well, thanks to some help from my friends. First, I had my days of the week mixed up, and I wasn’t realizing that my talk was on the first day! I thought I had one more day to practice, but when I got to the venue they warned me that I was on in just a few hours. Everything went just fine, though, because for one, I’d given this same talk twice before. For another, I had supporters in the audience. I like to think to myself that I’m an experienced Toastmaster and don’t really experience stage fright. But I’ve heard in my evaluations that I can sound rushed and clumsy when I’m not feeling my best; and given my poor sleep at home and some flight hassles, I was definitely off. Their smiling faces and eye contact helped me through the stumbles, and their well thought out questions started a productive conversation that went well into the next hour. Thanks, friends.

I also got to meet face to face with my OPW mentor once more. He didn’t have long, being on his way to the airport soon after I arrived, but he had time to sit down over the code with me and help me get over a hurdle with my project. Technically, we could have communicated over IRC, email and Pastebin; but somehow, I learn a little better when I sit down in front of a screen with someone.

Near the end of the conference someone asked me if I’d made any new connections or firmed up any old ones. I stammered out an excuse, because I couldn’t think of any specific instance in which I had done that. A few minutes later, I realized that that was practically all I did while I was there! There was a continuous flow of connection and interaction practically the entire time I was at the venue. That is what it feels like to belong.

I’m envious of the folks who get to go to LinuxCon Europe and the Linux Plumber’s Conference next week. I’ll be missing so much! It’s time for me to focus on my work and my job hunt, though, so I’ll just have to do a good job and earn the right to go next year.