SSH and Terminal

I used an ssh connection from the Terminal today for the first time!

Picture of Apple Terminal

Terminal

I feel like a real man now.
I needed to transfer a 106MB folder from one subdomain to another subdomain on my DreamHost webserver. It has been my experience that whenever I copy or move folders with a lot of sub-folders that something(s) do(es) not get copied all the time or all the way. So I needed to archive my files and move them as a single object. But I do not think it is possible to zip files with an FTP client (at least not with Interarchy). For a solution I turned to ssh and a lot of googling.

So to ssh into my webhost I had to enable a user from the DreamHost panel.

Picture of  panel to Enable ssh for user on DreamHost.

Panel to Enable ssh for user on DreamHost.

User Account Type Page at DreamHost

User Account Type Page at DreamHost

Second image from another tutorial.

Then I had to open terminal and create a key. I found some sensible directions in the knowledge base.

    To generate a secure public/private key pair to log in securely, and without a password (if you want):

  • In Terminal type: ssh-keygen -d
  • Hit the “enter” key three times.

    Replacing “username” and “yourdomain” with your FTP username and your-domain,

  • copy & paste/type the following into Terminal:

    ssh username@ftp.yourdomain.com 'test -d .ssh || mkdir -m 0700 .ssh ; cat >> .ssh/authorized_keys && chmod 0600 .ssh/*' < ~/.ssh/id_dsa.pub

  • Press return/enter key again.
    Wait for it to ask for the Password:

    Enter the password of the FTP user who's username you inserted in place of the example USERNAME@ftp.yourdomain.com above.
    If it asks you for the password multiple times, type in the same correct password each time.

    Then you will be at the root in your Terminal window.

  • type: ssh username@ftp.yourdomain.com
  • You're logged in!
    Now any time you want to log using SSH you can just repeat
    ssh username@ftp.yourdomain.com
    from the command line (Terminal), no need to repeat the other steps.

So from here on I was in my webhost but still didn't know how to get around. Evidently I needed to use long paths so $ cd /home/username/directory would move me from directory to directory. I could not just $ cd /directory.

Once I was able to get to the directory I needed to archive, I still needed the archive commands.

I thought I wanted to use zip as my archive utility. The zip command to do that would be:
$ zip -r folder.zip folder
Though my friend Daniel said that I might should have used tar gunzip tar.gz instead of using the zip command: "Zip compresses each file separately and then archives. Tar+gzip or tar+bzip2 archives first and then compresses."

The commands to use the tools Daniel suggested would be like the following:

tar+gzip
$ tar -cf blah.tar folder/
$ gzip -9 blah.tar

gzip compressed tar I guess this is a combination of the above two commands. Not sure. Didn't try it.
$ tar czvf folder.tgz folder

bzip2
$ tar jcvf filename.tbz folder

After the file was compressed I used Interarchy to move the single zip file to its new location. I also needed to unzip the file. (I also read this.)
To unzip the file I navigated to the directory where the file was located and then used this command:
$ unzip folder.zip folder
I had to use the long path too. So it was really:
$ unzip /home/username/directory/folder.zip folder

What a sense of accomplishment!

Merging iLife Libraries

The Problem:
One user on in a small business / family network can’t use (with metadata) all the media in a colleague’s or family member’s iTunes or iPhoto Library.

In our family there are three Macs (2 everyday machines and a server). On many work and personal tasks we function as a small workgroup. Unfortunately iTunes and iPhoto do not facilitate the sharing of media libraries (or for that matter the merging of media libraries). For instance, my wife had her own music and photo collection before we got married. Now if I want to browse that collection from my machine, there is iPhoto & iTunes sharing. But I can not add tags or other metadata to photos on her Mac. I can not create smart folders which we both can use.

iTunes
For our music we moved my collection to the Server and made it like a “media center”. When we get new music we add it to the server. If we want a copy on our own machines we pull it as needed. i.e. for an iMove project. This solution has not allowed my wife to add her collection to the server, nor has it solved the manny duplicates which exist because we like many of the same songs. Now I have found a solution to this: PowerTunes.

iPhoto
Now the same problems exist for our photos. However, there is no real advantage (or software) for hosting the family photos on our sever. But we still need to define a photo capture strategy.

  • When we take new photos, to which computer are we going to download the photos?
  • Where will we have the master library?

I don’t have a complete solution to our photo capture, retention and access needs but iPhoto Library Manager is the only software out there that will let us maintain the metadata and merge our iPhoto Libraries. However, This is a fantastic first step strategy:

  • Consolidate the iPhoto Libraries.
  • Designate an computer to be the Master Library holder.
  • Share that iPhoto library across the network.
  • Back that computer up.

ProfDev Data Tracking

My wife has been tasked to be the Professional Development Coordinator for the company at which we work. Her task has several interesting things about in the area of data tracking. One question needing to be asked is: “what are the experiences and skills of our current employees?” This suggests that a databases with cross sections of professionally related events, people and skills is needed. These data then need to be able to be viewed by various stakeholders so that the data can be read and analyzed and understood; eventually to be acted upon and incorporated into company strategies for doing business.

One of the things that is obvious from the start is that a web based collection system is need for the data. A storage solution is also called for. And finally an web based analysis tool for presenting the data in a variety of manners for final use is needed.

So in an effort to help my wife out I have been looking a OpenSource implementations of Resume databases and CV building Databases. It has been my experience that when it comes to IT solutions that people need unique implementations and have unique criteria to meet but do not have unique problems. I think I even found a service that provides some professional development tracking called Onefile. But for our company it makes sense to approach this problem with an eye to integrate it with other corporate IT infrastructure, rather than silo it as an outsourced the system.

Summaries of Goals

This effort to take a strategic look a professional development of employees is part of an effort to look holistically at the corporation’s pool of human talent. The motivation is to be able to strategically deploy our skills in a manner where there is the largest return on investment. It is also important for us to be able to present our talented people and the products of their efforts to the world; both for credibility and for marketing.

Difficulties in the business world

There are quite a few legal challenges for companies (working in the U.S., Europe, and elsewhere) retaining these kinds of records, let alone sharing them with business partners.

Social networks are notorious for being able (if they are successful networks) pull information from users easily.

The data to be tracked

Facebook CV/Resume Creator apps

Easy CV Creator EasyCV Curriculum Vitae

Example YouTube video: httpv://www.youtube.com/watch?v=egEadu5EUjI
CV Creative

Not popular…

My CV
Works with the http://moncv.com/ service.

Resume Factory

My Resume

1.5 of 5

Resume Central

Captain ResumeCaptain Resume
http://www.facebook.com/apps/application.php?ref=sgm&id=23892177864
3.5 of 5

LinkedIn:
Share it on facebook
http://www.facebook.com/apps/application.php?id=6394109615&ref=appd

Opensource stuff:
http://www.kite-eu.org/kite/en/download/
http://digitaldisruptions.org/rhizome/

http://www.margaperez.com/2009/08/resurfacing-the-kite-europass-cv-plug-in-for-wordpress/
http://digitaldisruptions.org/rhizome/2009/10/12/updating-the-application-profile-of-the-europass-cv-based-on-hr-xml-candidate-specifications-3-0/

http://digitaldisruptions.org/rhizome/2009/08/06/resurfacing-the-kite-europass-cv-plug-in-for-wordpress/comment-page-1/#comment-158
HR-XML:
http://www.sarmsoft.com/product/resumebuilder/

Plone:
http://plone.org/products/faculty-cv

Java:
http://gestcv.sourceforge.net/
http://sourceforge.net/projects/gestcv/
http://sourceforge.net/projects/lusid/

hResume:
Could not find a creator which worked

Conference Management
http://pkp.sfu.ca/?q=ocs
http://www.conftool.net/
http://sourceforge.net/projects/wcmt/
Conman
http://github.com/herlo/ConMan
http://blog.utos.org/2008/01/31/utosf-hacknight-a-grand-success/
http://conman.utosc.com/pages/home/
http://code.google.com/p/utos-conman/
registration
http://code.google.com/p/scalereg/

Coraga
http://corga.sourceforge.net/

Drupal conference registration
http://drupalmodules.com/module/conference

Social Network
http://www.boonex.com/dolphin/
http://www.patrick-opitz.com/projects/facelift/about/
http://www.xoops.org/ This is an open source social network which looks interesting but I am not sure how much momentum is behind it.

4.5 out of 5
This social network looks really cool and targets the e-portfolio
http://mahara.org/

Services:
http://en.easy-cv.com/

People Exist in Space and Time

The situation though is that everything that goes into a resume or a CV after biographical information is an event in which the person was involved, a skill they have or a resource they have helped to create. So if we could automatically pull information from the events and resources and then organize them according to Who then we would almost be there. (I am not sure how our company is tracking these kinds of information. It is most likely in a MS Word document.)

Events have several attributes one of those is time.

This is course management software: with calendars and DHTML in Video.
http://www.olat.org/website/en/html/about_features.html

NO CALENDAR….
http://www.davical.org/
http://www.bedework.org/bedework/update.do
http://trac.calendarserver.org/wiki/CalDAVTester

So How do we pull data from the container which holds our resources?
Well the container holding our resources is DSpace.
But these options work with wordpress….
http://wordpress.org/extend/plugins/wikindx-macro-plug-in-for-wordpress/
http://wikindx.sourceforge.net/
http://refdb.sourceforge.net/features.html

http://simile.mit.edu/wiki/Citeline_Developer%27s_Guide
http://simile.mit.edu/wiki/Citeline_User%27s_Guide

Example resumes
http://matthewlevine.com/resume

Why do we need a Resume now that I have a Job?
http://optional.is/required/2010/02/01/have-gun-will-travel/

Doing School all over again?

How would I do School all over again? What would I do? I might study formal arguments or study database design and web architecture. I might even do some pre-med classes (or maybe wilderness medicine with NOLS). But I really wish someone had told me about a degree in outdoor sports and a degree in some other part of the world. Like a minor in Spanish, study in Argentina and then also do a NOLS semester in Patagonia, or a semester with GVI.

For the last 2 years I have been enrolled in the linguistics M.A. Program at UND. It has been a blast. I love linguistics. I love learning. But through this time I have been talking with people who have come to know me and my passion for doing things right organizationally and for seeing things from the "big picture" perspective. These conversations have resulted in people recommending me to look at degrees like an M.B.A. or International Management degree.

As I drive around in the Dallas area I have heard a lot of advertisements from the community college. So investigated it. They have some really cool classes for $41 a credit hour... nice.
I looked up what type of Associates degrees they offer and there are some nice options:

What do I want to do? I want to be able to build the tools I need in linguistics. Some of this involves GIS data, some language data, some linguistics.

And then I would also think about finishing my Aviation Studies to at least have my privat pilots license.

Running and using MySQL On OSX

Installing
The best tutorial for running MySQL on OS X is actually found on the MySQL website.

However, there is a really cool System Preference pane that turns on or off the MySQL server/service. This either only works in OSX 10.5 or in 32-bit mode on OSX 10.6.

I downloaded mysql-5.1.42-osx10.5-x86_64.dmg from MySQL.com and the included preference pane works on OSX 10.6.2. (Even though it says it is for OSX 10.5.)

I just installed it without uninstalling a previous version of MySQL. I was brought over to a New MBP from an older MBP running OSX 10.5 (via Apple Genius at the Apple store), which was running MySQL. So I don’t know if the older version is still there somewhere or if the /local/ folder was not brought over in the transfer.

It seems that I have avoided the issues mentioned here:

Using
As far as editing the MySQL databases there used to be an app called CocoaMySQL. But as the link says the project has been abandoned. I heard it rumored on O’Reilley that it was because the app didn’t keep up with changes mad in MySQL past MySQL version 4.0. So CocoaMySQL can still be used on OSX 10.6 with a MySQL version 4 Database, but not with MySQL version 5.

However, there is an new app called Sequel Pro. It is available on Google Code and boast to work on OSX 10.5 with MySQL version 3-5. (I am about to test it on OS X 10.6, though the application was last updated in Dec. ’09, so it should work on 10.6.)

Of course there is always PhpMyAdmin.

Making a recipe blog

My wife, Becky likes to cook. I like her to cook. She recently started to blog. So I talked her through the MySQL database set up and the installation of her own copy of WordPress on our Dreamhost account. (I must admit that it was a happy day.) One of the things she is doing is writing about what she cooks, with pictures of how it turns out.
“Cool”, says I. But how does one keep track of all the recipes? So I asked her why she was blogging. And she said that one of the reasons was that if she had a fixin’ to use a certain ingredient she would have a place to search to see if she had cooked with that ingredient before and how it turned out.

So I am on the hunt for a recipe plugin or recipe management CMS for her.

So far I have come across OpenEats.
And for Using WordPress itself there is hRecipe.

Javascript Charts…

These are some really cool looking Javascript Charts from Highcharts.

Highcharts Javascript charts

Another opinion on Highcharts.

They run off of JQuery, which is already used by WordPress and K2. It would be nice if someone could wrap this into a WordPress Plugin with a cool way to add / manage data from the WP admin panel. Let me see if someone did….

For WordPress there is WP-Table by alex.rabe. This project was handed over to another developer, Tobias Bäthge and retitled WP-Table Reloaded.
Tobias says

[one] can have both wp-Table and WP-Table Reloaded installed in your WordPress! They will not interfere (as they are not using anything together). They are completely independent from each other. If WP-Table Reloaded finds the wp-Table database tables, it can import the found tables into it’s own format, so that you can completely upgrade from wp-Table to WP-Table Reloaded.

There are some updated instructions for version 1.5, which didin’t seem to make to the WP plugin repository.

There is another jQuery plugin, called Visualize, that takes data from an HTML table and displays it as a chart. Cool. I wonder which, Visualize or Highcharts is better and why?

After we graph these data, is it possible to also make the data drive a SIMILE chart/timeline?

It looks like one can add data sets to be graphed with the WP-SIMILE plugin. Why not pull these directly from the current display table? or make SIMILE / TIMEPLOT graph time depth change. i.e. if the data displayed in the HTML table is propagated from a MySQL table then why not have several entries in the MySQL database with a time code to change? in a way tracking momentum. That is over time how much have these data changed? i.e. Display the same data set from 1945, from 1950, and 1955.

Why should we still use HTML tables instead of CSS?

ASIDE: My next question is: How do I keep track of all the jQuery plugins I use?
Is there an efficient way to do that?

FYI: There are several other Charting options currently available for WordPress. Most of these involve managing your data somewhere else and then using an API to bring that data to your WP install. The truth of the matter is that it is most likely that you are going to manage your data somewhere else anyway. However, I do not use Google docs to manage my data so I can not pull data from that source directly into my my WP install.
However, there is a plugin Easy Chart Builder. This plugin does not have “nice” admin section for creating the charts but does create an image from a data set inserted with a short code.

PS
Some solutions when using google apps to present data, but if Data Ownership is an issue. Then why use google apps?
http://ouseful.wordpress.com/2008/08/29/html-tables-and-the-data-web/
http://ouseful.open.ac.uk/blogarchive/014014.html
http://ouseful.wordpress.com/2008/10/14/data-scraping-wikipedia-with-google-spreadsheets/