Wednesday, October 21, 2015

Lynx Program Downloader

Today I am proud to announce version 1.0.0 of my very first finished program, Lynx Program Downloader! This program is really just a bash script that a person could run in any Linux operating system (sorry, no Windows support at this time). It automates the process of downloading your favorite programs on a regular basis, regardless of where you go to for your downloads or what platform you are downloading for. It logs which files have changed since the last download, how long ago you downloaded it, and sorts the downloads into the categories you want them to go into. Because it is script-able, anyone could create the pattern for downloading a file from a given website. Once the program has done it once, you can have it download dozens of files from the same site using the same macro!

You can attach your initials to signify who downloaded the program, and look through the logs to see which files succeeded and which ones failed. A filter decides what files to consider good (.exe's, .deb's, etc.) or bad (.html). Because of its open nature, anyone can take this program and make it run on as many programs and categories as they want by simply editing a CSV file that acts as the program's database.

In my runs, when I tell it to download all files, it takes hours and goes through gigabytes of data because I have so many programs in the spreadsheet! All on its own. It's pretty cool.

I encourage everyone who finds this at all interesting or helpful to give the program a try! You can clone or fork it on GitHub or download the source as a .zip or .tar.gz. You can also report bugs and request features here.

It has been quite a process: I started it at work as my very first scripting job. At first, it worked...unreliably. I never really was happy with it, so I continued on my own, tweaking it every couple weeks. Eventually I got people to try the program and review the code! I went through a ton of editing, changing aspects of the program, adding and removing certain features to bring it to a stable state. I think I have finally gotten to the point where it is stable, and I want to share it with as many people as I can to get it reviewed and tested. So here it is!

I am always getting ideas for another project, and in the future I'd like to use python and QT to create a program with a graphical user interface. I'd like to create a program that presents a timeline--something that a person could use to view certain events in history, whether ours or in a fantasy. I have ideas for filters, events and people to be stored in a database, and I want to be able to zoom in and out of any period in history. This project will be a little more ambitious than this last one, but I am excited to get started and look forward to seeing my work represented in more than a terminal.

I'll be supporting Lynx Program Downloader and working on this new project in my spare time between college and work. I look forward to it and am so excited to start working with Python and QT! Some day, hopefully, I'll be able to use these skills professionally, and I'd also like to work on some KDE projects. Until then, I've got some programming to do!

Sunday, October 4, 2015

Joining Geek Squad

It finally happened! I've been trying to restructure my schedule since I started College back in May, and that meant quitting some things and starting others. The most recent thing I have started is a job with the Geek Squad at Best Buy.

I first saw the Geek Squad in action when I purchased a DSLR camera at Best Buy. I was twelve, and had invested pretty much everything I owned into this camera. I wanted to know that it wasn't the end of the world if I dropped it, so I also had it ensured. The Geek Squad agents helped me understand what plans were available, and I chose one that would also allow me to bring the camera in for a cleaning annually. That was great! I also loved being able to come back to Best Buy just to look at all the cool new gadgets, and the idea of working there stuck around in the back of my mind, though it obviously didn't happen right away.

Fast forward several years, and here I am, having worked as an IT Consultant but needing a job that works better with my college schedule. The experience I gained there ensured that I was qualified to work not just on sales floor, but in my position of choice--as a Geek Squad Agent. I realize going into it, this is going to be a different kind of Consulting. I'm working with a lot more home users, and I have to learn how to do things the Geek Squad way. There are pros and cons to many aspects of the job, but at the end of the day, I still get earn a paycheck while studying for college and help people find solutions for their technological needs.

There is a lot for me to learn now, and I'm going to be very busy for a while, getting used to the new schedule and training. But I look forward the experience, and the better work/school balance!