Embrace the Command Line

In this hands-on course you'll learn to use the command line to automate tedious tasks, work with data quickly, and create your own toolbox.

Recording of a live workshop I gave recently. How can the command line benefit your work?

The command line is a powerful piece of technology available on Windows, macOS, and Linux.

The command line is a powerful piece of technology available on Windows, macOS, and Linux.

The Unix or Linux command line, sometimes referred to as the shell or the terminal, is as powerful as it is intimidating. By typing commands, you can rename thousands of files, process large amounts of data, and work on remote machines with ease. But make one mistake and everything will explode!


At least, that’s what many think when they first encounter this stark and unforgiving environment. I can’t blame them, the command line just doesn’t look very inviting. Still, the fact remains that the command line successfully enables thousands of developers and researchers to be more efficient and productive at work. All they had to do is embrace it.


In this three-week cohort based course, I'll help you embrace the command line so you can also become more efficient and productive.

A pattern of wavy dots

Invest in learning this time-tested technology and it will pay dividends for the rest of your career.

This course is for you if...

01

You're a developer looking to streamline your workflow and take back control over your computer.

02

You're a researcher looking to become more efficient and productive at working with data.

03

You feel intimidated by the power of the command line but understand the benefits it brings.

See what people are saying

        Great workshop! Very well done and very useful information delivered in an excellent and interactive manner. Jeroen anticipated very well on the different knowledge levels within the group. I would highly recommend this course to anyone that is interested kickstarting their command-line experiences.
Sanne Bouwman
Sanne Bouwman
Data Scientist at Teradata
        As a seasoned UNIX command line adept, I didn’t expect to learn much. I was wrong! Over the years, many new tools have become available that I didn’t know about, and that can be combined with traditional tools in new ways. I have been able to simplify and improve the efficiency of many of the scripts I use on a daily basis.
Joost van Dijk
Joost van Dijk
Manager Middleware Services at SURFnet
        Besides demonstrating a good knowledge and experience in command-line tools for data science, Jeroen had very good training skills, clear communication, and managed to adapt the level of the training to the level of the audience, which is not always easy!
Marc Canaleta
Marc Canaleta
CTO at Social Point
        I found Jeroen to be a wonderfully welcoming, knowledgeable, and patient instructor. He covered content at a very nice pace, and made the workshop feel like a welcoming space where any question was fair game. Thanks to our small class, I really appreciated how he took interest in what each participant wanted to get out of the class.
Carolina Simao Roe-Raymond, PhD
Carolina Simao Roe-Raymond, PhD
Visualization Analyst at Princeton University
        Jeroen is a great coach. Because he is able to tailor the course to the business challenges of the participants, the learning curve goes straight up! Jeroen quickly switches to the knowledge level of the participants, so that everyone is guided in a tailored manner.
Bauke Visser
Bauke Visser
Senior Data Consultant at Textkernel
        This training was very enlightening. I discovered that most of our tasks could be achieved using simple tools, without the need for heavyweight & complex software. This training not only got me data science skills with simple tools, but I also felt very confident as a command-line power user.
Evance Soumaoro
Evance Soumaoro
Senior Software Developer at eHealth Africa

Key outcomes

A new way of working

Run and string together small but powerful tools to accomplish and automate tedious tasks. Integrate seamlessly with your existing workflow.

Be more efficient

Parallelize and distribute your data-intensive or compute-heavy tasks to multiple cores and machines.

Data science skills

Easily obtain, inspect, transform, and visualize data coming from various sources (including APIs, server logs, spreadsheets, and databases).

Build your own toolbox

Turn ad-hoc commands into reusable command-line tools and even convert your existing code (including Python, R, and JavaScript) to create your own tools.

Hands-on experience

We're actually going to get our hands dirty in this course. Through workshops and exercises you'll quickly become comfortable working at the command line.

Be part of a great community

You're not alone in this. You'll surround yourself with like-minded people who want to grow alongside you.

Solid foundation

It's impossible to cover everything the command-line has to offer. Instead, I'll make sure you know how to keep on learning after the course.

Meet your instructor

Jeroen Janssens, PhD
Jeroen Janssens, PhD

👋 Hi there, I'm Jeroen. I'm a data science consultant and certified instructor. My expertise lies in visualizing data, implementing machine learning models, and building software using Python, R, JavaScript, and Bash.


In 2014 I wrote the book Data Science at the Command Line (O'Reilly Media). Since then I've helped hundreds of developers and researchers embrace the command line. Recently I finished the second edition of the book.


I run Data Science Workshops, a training and coaching firm that helps organizations such as Amazon, eHealth Africa, Schiphol Airport, The New York Times, and T-Mobile to upgrade their skills and knowledge. I hold a PhD in machine learning from Tilburg University and an MSc in artificial intelligence from Maastricht University.

Yes, I wrote the book. And now this cohort based course is...

Yes, I wrote the book. And now this cohort based course is...
Designed for both researchers and developers

While my book is aimed at data scientists only, this course will give you command-line knowledge and skills that are useful for doing research and developing software.

Absolutely hands-on

It's one thing to read a book. To try it for yourself is a different story. During the live sessions, you'll get hands-on experience in a safe environment, making you well prepared.

Taught by an experienced, certified instructor

I've trained and coached hundreds of students in the past eight years. My approach is practical and casual, but also sustainable. I'll be able to give you the personal attention you need.

More fun and effective

Because you'll be embracing the command line with other researchers and developers. You'll be part of a welcoming community of like-minded people.

Course syllabus

01

Essential concepts of the command line
  • Run command-line tools
  • Combine command-line tools
  • Redirect input and output
  • Work with files and directories
  • Get help

02

Making the Command Line Less Scary
  • Customizing your prompt and environment
  • Creating aliases for rm and mv
  • Setting up a "recycle bin"

03

Obtaining Data
  • Download files and data
  • Import spreadsheets
  • Query databases
  • Call RESTful APIs

04

Parallel processing
  • Introducing GNU parallel
  • Looping over files and lines
  • Logging and output
  • Distributed processing

05

Working with Text Data
  • Search through text
  • Extract values
  • Clean up messy data

06

Working with JSON Data
  • Introducing jq
  • Reformat
  • Extract values
  • Convert to CSV

07

Working with CSV Data
  • Introducing xsv
  • Select rows and columns
  • Run SQL queries on CSV


08

Editing Files
  • The basics cat and echo
  • Introducing nano
  • What about vim and emacs?

09

Creating Command-line tools
  • From Bash
  • From Python
  • From R

10

Exploring Data
  • Inspect data quickly
  • Create visualizations
  • Viewing images on the command line

11

Automating Things
  • Set up build pipeline
  • Deploy software
  • Make analyses reproducible

12

Version Control
  • Introducing Git and GitHub
  • Staging and committing
  • Branching and merging
  • Pulling and pushing

Frequently Asked Questions

Do I need to have experience with the command line?
Will I be able to do this next to my regular job?
When will live sessions be held?
Do I have to attend all of the live sessions?
Is there a community to interact with others?
Is this course also available as a corporate training?
I have another question!

Stay in the loop

Sign up to be the first to know about course updates.

Cost

$997 USD