Unix forms a foundation that is often very helpful for accomplishing other goals you might have for you and your computer, whether that goal is running a business, writing a book, curing disease, or creating the next great app. The means to these goals are sometimes carried out by writing software. Software can’t be mined out of the ground, nor can software seeds be planted in spring to harvest by autumn. Software isn’t produced in factories on an assembly line. Software is a hand-made, often bespoke good. If a software developer is an artisan, then Unix is their workbench. Unix provides an essential and simple set of tools in a distraction-free environment. Even if you’re not a software developer learning Unix can open you up to new methods of thinking and novel ways to scale your ideas.
This course is intended for folks who are new to programming and new to Unix-like operating systems like macOS and Linux distributions like Ubuntu. Most of the technologies discussed in this course will be accessed via a command line interface. Command line interfaces can seem alien at first, so this course attempts to draw parallels between using the command line and actions that you would normally take while using your mouse and keyboard. You’ll also learn how to write little pieces of software in a programming language called Bash, which allows you to connect together the tools we’ll discuss. My hope is that by the end of this course you be able to use different Unix tools as if they’re interconnecting Lego bricks.
This week we'll help you get access to Unix (you may already be using it), and you'll start using the command line. We'll draw parallels between using your mouse and keyboard with your computer's graphics versus only using the command line.
What's included
1 video13 readings1 assignment
Show info about module content
1 video•Total 1 minute
Welcome to Week 1•1 minute
13 readings•Total 270 minutes
Introduction•10 minutes
The Unix Workbench Book•10 minutes
What is Unix?•10 minutes
Mac & Ubuntu Users•10 minutes
Windows•10 minutes
Hello Terminal!•45 minutes
Hello Terminal! Exercises•10 minutes
Navigating the Command Line•45 minutes
Navigating the Command Line Exercises•10 minutes
Creation and Inspection•45 minutes
Creation and Inspection Exercises•10 minutes
Migration and Destruction•45 minutes
Migration and Destruction Exercises•10 minutes
1 assignment•Total 30 minutes
Command Line Basics•30 minutes
Working with Unix
Module 2•3 hours to complete
Module details
Now we'll get into the power of different Unix tools. We'll walk through several scenarios where you could use Unix to perform tasks at a much faster speed than you would be able to normally.
What's included
1 video16 readings1 assignment
Show info about module content
1 video
Welcome to Week 2•0 minutes
16 readings•Total 160 minutes
Self-Help•10 minutes
Self-Help Exercises•10 minutes
Get Wild•10 minutes
Get Wild Exercises•10 minutes
Regular Expressions•10 minutes
Metacharacters•10 minutes
Character Sets•10 minutes
Escaping, Anchors, Odds, and Ends•10 minutes
Find•10 minutes
Search Exercises•10 minutes
History•10 minutes
Customizing Bash•10 minutes
Differentiate•10 minutes
Pipes•10 minutes
Pipes Exercises•10 minutes
Make•10 minutes
1 assignment•Total 30 minutes
Working with Unix•30 minutes
Bash Programming
Module 3•5 hours to complete
Module details
During this week we'll unleash the command line's usefulness as a programming language. By the end of this week you'll be writing your own little computer programs that you can use on the command line.
What's included
1 video25 readings1 assignment
Show info about module content
1 video•Total 1 minute
Welcome to Week 3•1 minute
25 readings•Total 250 minutes
Math•10 minutes
Math Exercises•10 minutes
Variables•10 minutes
Variables Exercises•10 minutes
User Input•10 minutes
User Input Exercise•10 minutes
Conditional Execution•10 minutes
Conditional Expressions•10 minutes
If and Else•10 minutes
Logic and If/Else Exercises•10 minutes
Arrays•10 minutes
Arrays Exercises•10 minutes
Braces•10 minutes
Braces Exercise•10 minutes
for•10 minutes
while•10 minutes
Nesting•10 minutes
Loops Exercises•10 minutes
Writing Functions•10 minutes
Getting Values from Functions•10 minutes
Functions Exercises•10 minutes
The Unix Philosophy•10 minutes
Making Programs Executable•10 minutes
Environmental Variables•10 minutes
Writing Programs Exercises•10 minutes
1 assignment•Total 30 minutes
Bash Programming•30 minutes
Git and GitHub
Module 4•4 hours to complete
Module details
First you'll learn how to use Git, which is like "track changes" for your code and plain text files, but much more powerful. We'll then explore how to use Git with GitHub, a social coding network where you can publish you projects and explore other's code.
What's included
1 video16 readings1 assignment1 peer review
Show info about module content
1 video•Total 1 minute
Welcome to Week 4•1 minute
16 readings•Total 160 minutes
What are Git and GitHub?•10 minutes
Setting Up Git and GitHub•10 minutes
Getting Started with Git•10 minutes
Git Exercises•10 minutes
Gitting Help, Logs, and Diffs•10 minutes
Ignoring Files•10 minutes
Important Git Features Exercises•10 minutes
Branching, Part 1•10 minutes
Branching, Part 2•10 minutes
Branching Exercises•10 minutes
GitHub•10 minutes
Markdown•10 minutes
Pull Requests•10 minutes
Pages•10 minutes
Forking•10 minutes
GitHub Exercises•10 minutes
1 assignment•Total 30 minutes
Git & GitHub•30 minutes
1 peer review•Total 60 minutes
Bash, Make, Git, and GitHub•60 minutes
Nephology
Module 5•2 hours to complete
Module details
Finally we'll set up a cloud computing environment so we can explore how computers communicate with each other using the internet.
What's included
11 readings1 assignment
Show info about module content
11 readings•Total 110 minutes
Introduction to Cloud Computing•10 minutes
Setting Up DigitalOcean•10 minutes
Connecting to the Cloud•10 minutes
Moving Files In and Out of the Cloud•10 minutes
Talking to Other Servers•10 minutes
Automating Tasks•10 minutes
Cloud Computing Exercises•10 minutes
Shutting Down a Server•10 minutes
Next Steps•10 minutes
Giving Feedback•10 minutes
Using This Book•10 minutes
1 assignment•Total 30 minutes
Nephology•30 minutes
Instructors
Instructor ratings
Instructor ratings
We asked all learners to give feedback on our instructors based on the quality of their teaching style.
The mission of The Johns Hopkins University is to educate its students and cultivate their capacity for life-long learning, to foster independent and original research, and to bring the benefits of discovery to the world.
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."
Learner reviews
4.7
1,368 reviews
5 stars
78.72%
4 stars
17.25%
3 stars
2.11%
2 stars
0.58%
1 star
1.31%
Showing 3 of 1368
A
AV
5·
Reviewed on Dec 30, 2017
Nice content to get you started with Unix and it's power. It would have been good if it would have covered symbolic links and file structure. those are anyway covered in the book
S
SA
4·
Reviewed on Oct 10, 2018
A very good course!Before taking this course, I was a little worried to work with Linux. But now I really feel more comfortable with it.Thanks to the instructor for his efforts.
J
JD
5·
Reviewed on Sep 30, 2018
Very useful course, I am using lots of remote high performance computers. This class definitely improves my understanding on Unix Shell and working efficiency.
When will I have access to the lectures and assignments?
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
What will I get if I purchase the Certificate?
When you purchase a Certificate you get access to all course materials, including graded assignments. Upon completing the course, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Is financial aid available?
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.