Category: open source

  • Python

    My first exposure to programming was, of course, using BASIC on my DOS 6.22 machine in 1995. Then I played around with C from a book my friend bought me. My last two years of high school found me learning the fundamentals of C++, but I didn’t get much further than simple if-else functions. This helped in college as I was required to take one semester of C++ which I basically slept through. It was interesting coding a program to calculate the trajectory of a cannonball based on certain inputs, but I don’t remember much else. Ok, I did just find eight .cpp files from twenty years ago, so I could use the gcc compiler on my laptop to see what happens.

    Seven or eight years ago, I started using Codeacademy to learn something, maybe Perl, but that didn’t stick. I had also purchased a book on Java and a book by Larry Wall on Perl, but didn’t continue learning programming.

    A few months ago, Tim Ferriss had a link to an essay by Paul Graham about writing essays. I could relate to Mr. Graham as he tweeted about his 7 year old feigning death at the elder Graham’s exposition about what writing essays entails (I have a 7 year old at home as well).

    Reading this essay lead me to Graham’s book, Hackers and Painters. This short series of essays talks about programming, creating wealth, the commonalities between (surprise surprise) hackers and painters, and how to start a startup. In one of these essays, an endnote points the reader to Eric S. Raymond’s essay “How to be a Hacker.” Raymond explains in his essay that hackers create, tinker, and share ideas whereas crackers steal, obtain illegal access and break the law. For more details, see Steven Levy’s book Hackers.

    Raymond describes four steps (not a complete checklist, but a start) to become a hacker:

    Basic Hacking Skills

    1. Learn how to program.
    2. Get one of the open-source Unixes and learn to use and run it.
    3. Learn how to use the World Wide Web and write HTML.
    4. If you don’t have functional English, learn it.

    I already use Linux on my machine, so I figured might as well start learning programming. Thankfully ESR doesn’t recommend going back to C or C++, but rather Python. Apparently one doesn’t need to manage memory resources or other overhead processes as much as C++. So I installed the python IDE on my laptop and started the Python 2 course on Codeacademy.

  • Shredding

    If you are like me, you may have a drawer full of old laptop harddrives, USB cables, SD card, PCI cards, PCMIA cards, and maybe a few motherboards. I don’t worry about it too much, as I used to have a trunk full of these odd items…that I never used again.

    What you can do with old drives is quickly turn them into external storage devices for on-site backup, storage while traveling, or for sharing large amounts of files with friends and family when they visit your faraway abode. I’ve used this Sabrent enclosure that requires no screws and is right around ten bucks. Oh and the USB cable that comes with it is the standard USB 3.0 on both sides, so you can reuse the cable on other devices without worrying about micro-, mini-, or any other metric-prefix-type-USB.

    Thankfully I am down to just four external harddrives: one 160GB, two 500GB, and one 1TB. There is really no point in keeping the 160, so I used the command line utility shred to overwrite any extraneous data.

    If you have old electronics (even harddrives) you can recycle them at Best Buy or Staples so they don’t end up in a landfill somewhere.

  • Software

    After installing Xubuntu in lieu of Lubuntu I took a look at what applications I use on my laptop. Chrome is open almost all the time for email, blogging, checking finances, etc., so if you want to know about Chrome I’ll let Google it.

    Desktop open-source applications make up most of the applications I use that are installed on my machine, with the exception of Chrome and Crashplan for Small Business. Sidenote: I went with Crashplan Pro after they ended support for personal users because of their end-to-end encryption, continuous backups, and support for Windows and Linux users

    • LibreOffice: Have been using LibreOffice instead of Microsoft Office for close to ten years with only minor complaints regarding formatting when opening documents between Office and LibreOffice. However, the formatting issues have gone down significantly. LibreOffice supports several extensions, such as Solver (for operations research optimization problems), so that is very helpful.
    • VLC (audio and video files): Very useful for playing and editing videos and music files. Need to splice some mp3s for continuous playback? Play a DVD? Make a music playlist? All accomplished, all for free.
    • GIMP (images): The GNU Image Manipulation Program is a free substitute for Adobe Photoshop. I am not a master manipulator, but this program will allow you to touch up images, create vector graphics, and copy human faces to future memes waiting to go viral.
    • Zim wiki (notes, writing projects): Useful for linking project notes, calendars, or any work you want to show linkages to. Also useful for blog page edits not yet ready for draft primetime.
    • Calibre (ereader manager): Got an ereader? Like ebooks? Calibre can manage, convert, and otherwise edit your ebooks regardless of your hardware.

    The below list of three web-based applications I use everyday for exciting tasks such as password management, email subscriptions, and to-do lists.

    • Lastpass (password manager): There are password managers like it, but this one is mine. Used to use a spreadsheet with all my passwords, with a mediocre password, until I got wise six years ago.
    • Gmail (seriously?): If you don’t know what this is, I commend your for your ignorance of cultural technological phenomenon over the past twenty years.
    • Todoist (to-do list): This puppy works on my Android phone, work computer, and home laptop. You can label tasks, add them to projects, share tasks with others, and (best of all) implements a markup language that recognizes date references such as “File taxes on April 15th,” Take wife to dinner on 14 February” or “Train at Jedi Academy on Yavin 4 tomorrow.”

    So if you are looking for open-source software for creating documents, editing videos, editing photos, or managing your productivity, consider the above options.