Command-line assistant


One of the first programs I wrote on a home computer was a personal assistant that held secret information about my family and friends and grew into a diary and calendar application, at least until the 27KB of RAM was used up (which doesn't take long when you're programming in BASIC). Yoda, a little command-line tool, reminds me of that old project, as it very much feels like a combination of tools that the developer has sewn together into a handy command-line utility. If you type yoda hackernews, for example, you can browse through the top news stories from that website directly from the terminal, which is useful because it obviates the temptation to dive into the comments for every story. Yoda is a useful hotchpotch of ideas like these that also makes a great example Python project if you were looking to start your first programming project.

One of Yoda's neatest functions is a chatbot with which you can communicate, with natural language questions and answers parsed through an online API. A more useful feature is a speedtest that will quickly give you upload, download, and latency for your network connection. There's a URL shortener, too, which uses Google's shortening service. More substantially, there's a diary that includes the ability to add notes, create tasks, and jot down ideas. Additionally, there's a rather creepy mode where you can make notes about your "loved ones," such as their birthday and the things they like. Finally, there's even a money tracking mode for entering your expenses, plus flashcards for remembering things. It's obviously a disparate collection of tools, but there are some useful features, and it's a great first project to study or expand upon.

Project Website

Ask your questions on the command line and get mystical answers, such as what the top story might be on Hacker News.

Web browser

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • OpenSnitch

    OpenSnitch, an application-based firewall, protects you from unwanted data leaks by letting you set customized rules for all your applications.

  • Firewalld and OpenSnitch

    For maximum security, you'd better watch traffic in both directions. This hands-on workshop takes you through the steps of setting up firewalls for outgoing as well as incoming traffic.

  • FOSSPicks

    Graham recently found the perfect use for his old Nintendo DS Lite. Thanks to having exactly the same screen resolution, it now runs the brilliant ZXDS Sinclair ZX Spectrum emulator.

  • FOSSPicks

    Sparkling gems and new releases from the world of Free and Open Source Software

  • FOSSPicks

    After watching Ubuntu help NASA with its first controlled flight on another planet, Graham spent far too much time this month visiting Mars in Elite Dangerous, via Proton on Linux.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More