Sunday, August 28, 2016

Cyber Seniors Pilot



At the beginning of this past summer (of 2016) I came across a call for volunteer coordinator(s) to help with a "Cyber Senior" pilot project being organized by UServe Utah. It turns out that the current generation of teenagers, being digital natives, are very proficient in working with the latest digital apparatus such as computers, tablets and smart phones. The idea of the Cyber Seniors project was to help facilitate the transfer of some of those skills from teenagers over to seniors, who had lived a larger part of their lives before the digital revolution and were likely to benefit greatly on being introduced to recent developments such as the Internet. Originally, this idea was the basis of a high school project in Toronto, Canada before becoming quite well known thanks in part to the popularity of this documentary. Having seen the positive impact of technology awareness within my own family, I thought it was a fabulous idea and signed up. 



The program started with volunteer coordinators meeting up to review and polish the curriculum for seniors which was then followed up by a training session for the youth (middle and high school kids from Salt Lake City area). Later, the youth were paired up with the seniors at a local senior center for one hour a week and go over various items in the curriculum, such as, setting up email and social media accounts for the seniors. It was clear from the start that this was going to be an interesting experience for all involved. There always seemed to be considerable excitement about the sessions at the senior center. Seniors seemed impressed by what is possible by technology as well as how comfortable the youth were in navigating the digital world and answering their questions. The youth were upbeat after being able to help seniors with their technology related concerns



Personally, I liked that I was able work toward something that 1) had a positive impact on the broader community 2) had an immediate impact. The second part is interesting as it contrasts sharply with my day (and night!) job doing research where its not always clear how far into the future, if at all, its really going to make a difference.



Now, along with the summer, the pilot phase of the project is over and the youth are back in school. I think the pilot was a success and it looks like others share this opinion as there seem to be plans of this being expanded to more locations across Utah starting spring 2017.


Saturday, August 20, 2016

Setting Up a Personal Backup System



Backups are critical. If I could only save one (inanimate) entity from a fire or similar, that would be my laptop or more specifically, the data on it. While some bits and pieces of my work are usually backup up in remote code repositories, its hard to believe that until recently I did not have a comprehensive personal backup system in place. While I've heard good things about Apple Time Capsule, here I describe how I set up a backup system using a couple of regular Seagate external drives that I already owned. 



My goal for this system: To set up a 'backup' command to run from the terminal that performs a back of all my important data.



Step 1: Make a list of all important files and folders to back up.  This also helped to organize my data and get rid of all the clutter. Some of these for me were:


  • All the settings settings files for the IDEs I'm using. These settings files are usually stored in different places but I think its important to have those settings fine tuned over the years backed up.
  • Work files. I ended up organizing all my work related files inside a single work folder. 
  • My Documents folder.
  • Pictures and other media.


Step 2: Write a shell script. This is the main backup script. As an example, here is a link to my backup shell script. It allows me to pick from a list of my personal external drives. Also it allows to select form performing either incremental or full backups. In the script, I use the "rsync" command (as opposed to "cp") as it affords the incremental backup option. The list of files and folders to backup are stored in another file "include.txt". Finally, it records the time and other metadata regarding the backup in another text file "latest.txt".


Step 3: Add an alias to you "~/.bash_profile". This makes performing a backup as simple as typing a single command in the terminal. We only need to add the following line to "~/.bash_profile".



alias backup="path_to_backup_script"/backup.sh"



Step 4: Add a recurring backup reminder to the calendar application. This is a simple but important step. I prefer not fully automating the backup to prevent it from annoyingly starting up when I am working on a compute intensive task. Just adding a calendar reminder makes sure that I don't go without running the backup script too long.