skip to main | skip to sidebar
Showing posts with label organisation. Show all posts
Showing posts with label organisation. Show all posts

Wednesday, July 7, 2010

Managing PDF books and papers

I have a small collection of mathematical and computer science books and papers as PDF files. Some are stashed in Google Docs, others in Read it Later and others as links in email, etc. It would be nice if:

  • all documents were organised together

  • I could access the documents from all my devices - work and home macs and iPad

  • adding / removing documents automatically synchronised across all devices

  • there is a record of the url each document came from

  • document contents are searchable

A cloud solution with device specific apps would be a good start. I would be happy to pay an annual price similar to flickr and Remember the Milk for a good product. From memory these are about USD25ドル / year.

All the solutions I have come across are intended for academic bibliographic management. Most of my documents were collected adhoc from the web, without access to restricted channels such as the ACM Digital Library. The tools are geared towards searching the popular open and paid publication repositories and extracting bibliographic details automatically. I can see how this would be very useful if you have access, but I found it problematic in matching my documents when I don't have access. Given my requirements this became more hassle then it was worth.

Some solutions integrate social networking. Being able to share your reading and observe what others are reading might be quite useful. Warrants future investigation.

I don't have any need to annotate, highlight or add notes to the PDF files at present.

Papers
A Mac application (USD42ドル) featuring document synchronisation with the corresponding iPhone and iPad apps (USD17ドル.99). Storing the database and documents on Dropbox should also enable sharing between Macs. Metadata and content are searchable and the full screen reading mode is great. You can add notes to documents, but not annotate or highlight portions. At work I am behind a strict corporate firewall and proxy. Papers gave a spurious error about internet connectivity and disabled all online actions. Following this forum post fixed things up.

I had high hopes for Papers. The iPad synchronisation is very compelling, but otherwise it currently doesn't do enough for me to warrant paying money for (and putting my data in) Mac only software. If I end up regularly using the supported repositories then I will probably reconsider.

Mendeley
A web application with a companion Mac/Windows/Linux desktop app. There is no iPad app, although it is apparently in the works. The desktop UI looks like it is Java and is a bit clunky on the Mac.

The desktop app is orientated around managing your documents and associated files. You can add your files, set their metadata and sync with your website account. Synchronisation is initiated manually via a UI button. There is a full screen viewer, although I couldn't figure out the zoom and navigation keys. Alternatively you can open documents with the default external application. Document annotations, highlighting and notes are all supported, as well as full text searching. Unfortunately the network proxy settings aren't automatically detected from System Preferences and I need to manually edit them when taking the MacBook Pro between work and home.

On the website you can manage your references and notes and view your files, but I couldn't figure out how to upload files or see annotations and highlighting. Otherwise, the web site is all about social networking. You get 500MB of personal storage space and 500MB of shared space. The first upgrade is USD4ドル.99/month for 3.5GB + 3.5GB.

To make it attractive for me, Mendeley needs to tidy up the desktop app, automatically sync in the background, make the full screen view useful, release a synchronised iPad app and lower the price.

BibDesk + Dropbox + Skim + GoodReader
BibDesk is a Mac BibTex editor and reference manager. I can record as much metadata as is convenient, associate url's and PDF files, organise and search. By storing the BibDesk database file and PDF files on Dropbox, both content and metadata is automatically synchronised between all Macs. Dropbox provides 2GB of free storage, which is a great to get started. Skim is a PDF reader with a decent full screen mode on the Mac. GoodReader (USD1ドル.19) is a PDF viewer with Dropbox integration on the iPad. Although it is much quicker to transfer documents to GoodReader via iTunes.

The main downside with this setup is the lack of BibDesk support on the iPad and that all documents aren't automatically synchronised locally to the iPad. It is sufficient for me now though, as I am currently only adding new documents periodically.

CiteULike
Web site sponsored by Springer. I haven't investigated it properly, but it looks like you can add references from the major publication repositories or add your own, upload the associated documents and setup social connections. There are no Mac or iPad apps, so you need to manage your local files and how to view them yourself.

Tuesday, May 11, 2010

Brief summary of iPhone Flickr apps

I use Flickr to store my photos. Now that I have an iPhone, I would like to use it as a mobile photo album as well as uploading photos taken from the camera. I don't want the added complexity of using iPhoto as a middleman, so I did a rough survey of iPhone Flickr apps.

Flickr 1.1.3 (free).

  • Loads photos fast. Caching works well if you have already viewed a photo.

  • View photos full screen and swipe to navigate.

  • No zoom.

  • If you take photos with the inbuilt Camera app and upload them sometime later, it doesn't set the map location and time taken to the original values.

  • Uploaded photo file size seems larger than with Mobile Fotos or syncing with iPhoto.

Darkslide 1.6.2 (free add-supported version)
  • Slow load times (even for previously viewed photos).

  • No swipe to nagivate photos.

  • No zoom.

Flickit 2.0 (free)
  • Only does uploading. The Pro app (5ドル.99) is a full client.

  • If you take photos with the inbuilt camera app and upload them sometime later, it doesn't set the map location and time taken to original values. Found an explanation from the developer.

  • Compresses photos significantly. I could only see small differences compared with the same photo uploaded via alternative means. Developer was helpful when I asked about this.

Mobile Fotos (5ドル.99)
  • Upload correctly sets the map location and time taken to the original values for photos taken with the inbuilt Camera app.

  • View photos full screen, swipe to navigate and pinch to zoom.

  • Slideshow.

  • Uploaded photos have washed out colours.

  • Can't select from your tags when uploading, need to type in each time.

  • Had one case where photos were shown as a blank screen. Cleared cache and problem was resolved.

  • Developer was responsive when I asked questions.

Reflections (5ドル.99) and Photo Wallet: Flickr (3ドル.99) both look interesting in their own right, but neither offer zoom. The developer of Photo Wallet answered my question via twitter quickly to.

In summary, none of the Apps I tried are ideal for uploading to Flickr. This leaves me importing into iPhoto and uploading via the standard web uploader.* Mobile Fotos has the best viewing experience and I would also use it for uploading if the colours and tagging were fixed.

* The iPhone saves GPS information into the EXIF data. I had to set the "Import EXIF location data" privacy setting for the Flickr map location to be set. The privacy implications of this need further investigation.

Saturday, October 17, 2009

Mac Flickr client

I am looking for a native mac application that provides an easy interface to my Flickr account. Requirements:

  • Uploading - need to easily filter out the good photos from the camera, upload and add metadata.

  • Browse photos in photostream, or by sets, tags, etc

  • Edit metadata

  • Save photos locally

From what I have briefly read, iPhoto 09 integration with Flickr is very limited. I use Flickr as the primary repository for my photos and iPhoto isn't intended to be a passive Flickr client. I found the following other candidates:
  • Photonic Really nice app. Demo is free but expires after 14 days. Registration is US25ドル. Can browse photostream and sets, no coverflow view. Can search by tags, but you need to know the tag names. Double-click a photo to view a larger version. Doesn't show descriptions and no metadata editing or slideshow. However, there is a convenient link to a photo's Flickr page to do these. Apart from assistance with tags, the other major missing feature is the ability to download a photo or set for use as a desktop background or with the screen saver.

  • FlickrEdit Java app that looks horrible with a clunky UI. However you can backup and download photos and sets. Apparently it saves some metadata in the IPTC header of downloaded files, but I can't see it with the mdls command.

  • DeskLickr Set the Desktop background to a Flickr photo. You can point it to your own account, but it only uses your public photos.

  • Cooliris Firefox add-on A 3D wall for viewing images. Works with Flickr, so if you open it on the first page of your photostream or on a Set page, you can view all those photos. My head is spinning from the animation, so it would be nice to turn that right down. More keyboard keyboard control (photo selection and paging) would make this really good.

  • Picture Sync Essentially just an uploader. Didn't seem very intuitive to me.

  • FotoViewr Webapp that provides 3D viewing of Flickr photos (like coverflow). Only works with public photos.

  • Fotobounce Windows only now, with a mac version due this year.

  • 1001 Didn't try this out.

  • Flickr Finder A very simple Finder-like column view. Content layout seems to be broken on Snow Leopard.

  • Photo Grabbr Didn't try it. Suspect it is public photos only.

None of the apps did uploading really well. I am using the standard mac Image Capture application to get photos off the camera. Finder Quick Look in Snow Leopard provides an easy way to look through photos and delete unwanted ones. The Flickr web site uploader and metadata editing work well enough.

Photonic is the easy winner for viewing photos. If it had better tag support and desktop/screensaver integration or the ability to download original images, then the license fee would be more easily justified.

I have made a Flickr set of my favourite photos for use in my screen saver. FlickrEdit is clunky, but I can use it to quickly download the whole set. This is all I use it for. It also includes an incremental backup feature (I need a backup solution too), but I haven't investigated that yet.

Sunday, July 26, 2009

Firefox 3.5 password manager changes

I use the Secure Login Firefox add-on and store the password files in Git. Upgrading to Firefox 3.5 changes those files.

  • signons3.txt is replaced by signons.sqlite

  • key3.db is still required as before
Unfortunately signons.sqlite is a binary file and so doesn't play as nicely with Git.

Flickr scare

Just signed in to flickr and realised my pro account had expired and the free usage limits applied, so some of my old photos were missing!

I quickly paid for the pro account and they were back again.

I did not receive an email notifying me of pending expiry at my primary email account (which I have registered with flickr) and I don't check the yahoo mail associated with my flickr account.

Was quite worried there for a few minutes. Flickr has been pretty good, but a bit disappointed about this.

Sunday, May 24, 2009

Backup Google Docs

I want a command line tool to copy all my data from Google Docs to my local machine. So far I have found 3 ways to download data from Google Docs, but none are satisfactory.

Google Docs: Download Greasemonkey script runs in Firefox.

GDataCopier looked like it would do the trick, but the current version (1.02) only seems to work with documents and spreadsheets. The feature list for the forthcoming version adds support for presentations, but there is no mention of PDFs.

GDocBackup doesn't work with PDFs and doesn't seem to have a command line option. I already had mono installed on my MacBook, so installed GDocBackup to try it out. First I got an cxception that boiled down to:

 System.DllNotFoundException: gdiplus.dll
After sifting through these: DllNotFoundException, OpenSim Troubleshooting, I added the following line to /opt/local/etc/mono/config to get it working:
<dllmap dll="gdiplus.dll" target="/opt/local/lib/libgdiplus.dylib" os="!windows"/>

Saturday, April 25, 2009

UQ switches to MS Exchange Labs

The University of Queensland is switching over to Microsoft Exchange Labs for student email accounts. In the past I have redirected all my university email to my personal GMail account and I wished to continue that.

This turned out to be a ridiculously complicated process, that I would have never figured out without the instructions. Furthermore it can only be done in IE 7! Obviously the IT staff haven't walked around with their eyes open, otherwise they might have noticed how many students have MacBooks.

From my brief exposure to this service, it seems like a really bad idea to try and clone a desktop application (Outlook) in a web browser. Having to double-click is completely inconsistent with the normal browser paradigm.

Monday, March 2, 2009

PDF documents in Google Docs

I use Google's PDF Viewer to view my PDF documents stored in Google Docs quite a lot. Recently I ran into two issues with PDF support:

  • The PDF Viewer only shows the first 100 pages. The entire PDF is stored in Google Docs, but you have to download it to view subsequent pages.

  • I have installed Google Gears for offline support, however PDF documents are not available offline.

This is alongside the fact that you can only upload a single PDF at a time and there also seems to be a limit of 100 PDFs in your account.

Friday, February 6, 2009

Google Docs

Recently I have started using Google Docs. Before that, all my docs were stored in Git and I was reasonably happy with that system.

Reasons for changing:

  • Technical complexity. My system using Git is not suitable for the non-technical members of my family.

  • No syncing now. I move around several trusted computers, each with a clone of my Git docs repository and the master repository is encrypted on a USB memory stick. Finding the USB stick, mounting the encrypted disk image and syncing the repository was not difficult or too time consuming, but it was inconvenient.

  • Version diffs. I never did it, but if I wanted to compare versions of a spreadsheet/document then that would probably be a manual process with the old system as they are stored as a binary file (OpenOffice) on the filesystem.

I had a quick look at Google's competitors - Zoho and ThinkFree. Zoho has many applications, probably with more features than Google, e.g. the Equation Editor with LaTeX support, although it doesn't have a built-in PDF viewer like Google. One day I should investigate it further. ThinkFree looked more specialised and complicated, like MS Office, so I didn't sign up and trial it.

Issues with Google Docs that I have encountered so far:
  • Only upload single files. I wish I could select multiple files to upload at a time.

  • PDF versioning. I can't find a way to replace a PDF with a new version and have that history.

  • Sharing folders. You can't share a folder of documents, you must select the files and share those. Collaborators also only see the individual files, not the folder structure that they have been organised in.

  • Invitation email address. When a sharing, invitation email is sent, it comes from your gmail.com address, irrespective of your Gmail settings (Accounts -> Send mail as). I don't know whether Google Apps solves this.

I still need to put a backup strategy in place, i.e. periodically download a copy of my documents. Not sure if the Google Gears offline support will be an easy way to achieve that.

Wednesday, November 12, 2008

Jungle Disk R.I.P.

In the past I have tried to manage my files by storing then in Git and keeping a central repository on Amazon S3 via Jungle Disk. I was using this system from two different macs and a linux machine and when it worked, it worked well, but the intermittent corruption/synchronisation issues were a killer.

My fallback plan was to store the central repositories on encFS on a USB memory stick instead of Jungle Disk over S3. I tried with the USB stick formatted as FAT32 and then ext3 but that also had intermittent failures.

Over the last few weeks I have ditched the linux machine and stored the repositories in an encrypted sparse disk image on the USB stick formatted as Mac OS Extended (Journaled). It has worked very well so far!

Wednesday, August 20, 2008

File Management

I need to access my personal files in different locations such as home, work office or when traveling. I wish to be able to move between a number of trusted computers, rather than being tied to a specific laptop, as I like to cycle to and from work. I also don't want the hassle of running my own server at home (have done this in the past).

So my first step in solving this is to store all my files in a Distributed Version Control System. I get all the benefits of a common centralised VCS such as version history and version management between multiple machines, as well as being able to work normally when I don't have an internet connection (e.g. travelling). I have chosen Git, although Mercurial would probably be a fine choice to.

The second step is having a location for a master repository that is accessible over the internet. I could have purchased a hosted linux virtual machine, but I didn't want to deal with setting it up, security, software upgrades, etc. Git can synchronise repositories located at different points on the same file system, so I thought I would try a locally mounted, encrypted virtual file system over Amazon S3. I chose JungleDisk for this purpose.

As it is only me using these Git repositories, I only have one machine writing to the master at any one time, so I don't have to worry about concurrency issues. Secondly, whenever I clone a repository from the master, I use the --no-hardlinks option, although I am not sure if that is necessary.

In principle the ideas have worked out pretty well. I have run into some issues though. From minor to major:

  • S3 has been unavailable on two occasions, when I have tried to access it in the last three months.

  • Sometimes I have had errors pulling (synchronising) from the master. Recreating the local repository by cloning it again from the master has solved these issues. This may also be similar to the next one.

  • I have had a case where I don't get any errors pulling from the master, but I don't get the latest commits pushed from another machine either. This one has been a real pain. In the process of getting everything back to a stable state, I updated to Git 1.6.0, JungleDisk 2.10a, deleted my local JungleDisk caches and reduced the cache size down to the minimum (I would have liked to turn caching off altogether). I suspect the JungleDisk caching was the issue, but that is only a guess. Will see how things go over the next few weeks.

I now don't need backups from a file deletion point of view, as the VCS takes care of that (I am not using any of the Git feature to modify history). I also keep a subset of the machines synchronised on a daily basis, so I don't need backups from a hardware failure/lost/stolen perspective either.

Wednesday, July 23, 2008

SmugMug

SmugMug doesn't have a free account, but it does have a 14 day trial.

As soon as you try and upload some photos, you are forced to categorise them in a gallery. I find this frustrating and instead prefer how flickr works - upload photos and organise using tags and/or sets (similar to galleries) afterwards. So as a workaround I created a 'Default' gallery, which contains all photos I don't explicitly put in other galleries.

As mentioned in my flickr post, I found viewing photos in a gallery more efficient than in a flickr set due to the thumbnails being present. There is also the flexibility to choose from a number of different layouts for each gallery. On the downside, a long description for a gallery takes up a lot of screen real estate at the top, pushing all the photos down. The navigation for some photo actions seemed a little inefficient as it requires clicking on the Photo Tools drop down box and then selecting the action to take.

The first step in improving privacy for family photo sharing is to create a SmugIsland. I set 'Hello world!' to 'No' and 'Hello smuggers!' to 'No - make me an island'. You can set a site-wide viewing password. However, this disables showing a map on your homepage. Google Maps is used and apparently Google requires that all usage of Maps be done without requiring a password. I was also confused by the privacy settings in a gallery. Even though I had setup a SmugIsland, a gallery privacy settings seemed to show that it was public. Supposedly this is correct and the gallery will inherit my SmugIsland settings.

To use maps requires getting a Google Maps key, which is very simple. From there on though, I had very little success with maps. It looks like you can only set the location of photos individually. Once configured I could see a map of my photos that I had set a location for, but a non-logged in user (e.g. family) just sees an empty box where the map should be. When I was logged in and clicked on a pin on the map, it zoomed in, but then showed no photos. This feature just does not seem to work with SmugIslands.

At this point I stopped further investigation as the negatives outweigh the positives. Looks like I will be using flickr.

Tuesday, July 22, 2008

Flickr

I already had a dummy yahoo id for dealing with freecycle, so signing up to trial flickr was simple. It didn't take long to set the default privacy level to viewable by family only, upload a few photos and add some tags and descriptions. The descriptions support hyperlinks, although you have to enter the HTML manually.

To set the geographical location on a photo you drag a pointer to the photo to a location on a map. It just so happened that one of my photos was taken at a place where the flickr map didn't have enough data, so you couldn't zoom in far enough to be accurate. Otherwise though, the mapping features seemed to work well.

I like the fact that uploading photos requires no categorisation and you can easily view all your photos (flickr calls it your photostream) from several different perspectives.

To share private photos with non flickr users, you use a guest pass. The help mentions that you can share your whole photostream using a guest pass, but the "Share This" link was not appearing on my photostream page. It seems there is a bug if all your photos are private. Making one photo public solved the problem. After generating the guest pass, the photo can be set back to the previous privacy level.

I find the site looks very clean and uncluttered, which I like. The navigation at the top and the expanded nav at the bottom was helpful, so getting around was easy. For flickr to be useful to share your photos you really need a Pro Account. It costs US25ドル/year and you get unlimited storage, which seems very reasonable.

Now for the things I don't like. When you click on a photo to view it, the resulting page has a widget that only shows thumbnails for the previous and next photos. You can go forwards or backwards in the thumbnails or click on browse to go back, but when viewing photos I found this quite cumbersome. SmugMug does this much better, by showing more thumbnails next to the main image. Viewing photos in flickr as a slideshow looks like a good solution though.

Users with a guest pass for the whole photostream (including private family photos) can see your sets and each photo's description, tags and camera data. However, they:

  • cannot see the geographical location for, or find your private photos on the map

  • cannot browse your private photos via your tags. The tags themselves are visible, but if all your photos are private, clicking on a tag takes you to a "no results found" page, which seems contradictory.

  • cannot comment on your photos

In summary, flickr scores reasonably well against my requirements. Guest pass users have a very basic level of access. If they want more access to your photos, they need to sign up for their own account, which will cost them their time, but nothing financially. Then you can add them as a family contact.

Monday, July 21, 2008

Family Photo Sharing

Most of my extended family do not live near us and I would like a way to keep them more updated with what we are doing. I envisage one aspect of the solution will be sharing our photos with them more frequently than when we visit one another. With that in mind I started to consider what I need from a photo sharing site.

Given that the primary motiviator is sharing, an over-arching goal is convenience for family members. More specifically:

  • They shouldn't have to sign up to the site if they don't want to. I would prefer to give them a url and possibly a password as a starting point. This way they only need to deal with a small part of the complexity of the overall site to achieve the main benefit. As an aside, I consider facebook an example of what not to do in this regard.

  • Can view all photo details, such as date, tags/keywords, description, geographical location, camera details

  • Can browse by date, album, tags/keywords and a map.

    I am using the term album to refer to an arbitary grouping of photos that I specify, e.g. for a holiday, birthday party, etc. Ideally the album would also have a description of its own.

  • Original photo is downloadable

  • Can make comments on photos

  • Flexibility to receive notifications of new photos by a mechanism they understand (e.g. RSS, email), if they wish.

From my perspective:
  • Convenience. The easier it is to upload photos and describe them, the more likely I will actually do it.

  • Security. I wish to restrict my photos to people I choose and then everthing is read-only for them, except for making comments.

  • Photo metadata. Tags/keywords, geotagging and a textual description that supports basic HTML such as hyperlinks.

  • Retain ownership of all my content

  • Some sort of group/community feature might be useful. For example if we are on holiday with other family members (that choose to use the same photo site) then being able to group our photos together for that time might be handy.

  • Export/backup. A tool or API that enables photos and metatdata to be exported for backup.

In building my shortlist of sites to try I stumbled upon 45 Photo Sharing Sites.

I discarded photobucket due to its limits and sharing in picasa web albums looked confusing. I am trying out flickr and smugmug.

Wednesday, July 9, 2008

Converting a CD to FLAC Files (Mac OS X)

I have the following software installed:


The following process would be significantly simpler if one app provided both a decent rip log and metadata lookup.

There is no point being concerned with the quality of the audio unless you know if there were errors introduced in ripping the data off the CD. xAct shines here. Max does not provide enough details, although there is a ticket open with the developer to fix that.

Max does well with metadata. xAct is poor.

The process
$TMP and $GIT_REPO represent file paths, e.g. $TMP=$HOME/tmp
  1. Rip CD using xAct, saving files to $TMP/xAct. [1]

  2. Save xAct output to $TMP/xAct/xAct.rip.log

  3. Check the log for errors. After the first section of the log file, search for each occurence of 'track' to quickly find the right spots to check.

  4. Open Max. It will automatically detect the CD and pop up a window. Check the metadata and fix/enter it if necessary.

  5. Download album art. Press Command-D in Max. It will automatically search. Choose one of the listed images (assuming some are found). [2]

  6. Rip to FLAC using Max (I have set my output directory to $TMP)

  7. $ mkdir $TMP/max-rip
    $ mv $TMP/[Artist]/[Album]/*.flac $TMP/max-rip

  8. Convert $TMP/xAct/*.wav to FLAC using Max.

  9. $ mv $TMP/*.flac [Artist]/[Album]

  10. Ensure that all files in [Artist]/[Album] have the same names as those in max-rip. Assume max-rip as correct - we set the metadata in step 4. The following should identify if there are any differences:

    $ cd $TMP/[Artist]/[Album]
    $ ls -1 ../../max-rip> /tmp/ls.txt; ls -1 | diff /tmp/ls.txt -; rm /tmp/ls.txt

  11. Generate FLAC fingerprints:

    $ metaflac --show-md5sum *.flac> ffp.txt
    $ mv ffp.txt $GIT_REPO/flac fingerprints/[Artist] - [Album].ffp.txt

  12. $ mv $TMP/xAct/xAct.rip.log $GIT_REPO/log/[Artist] - [Album].xAct.rip.log

  13. Transfer tags from the files ripped with Max. I use the following script:
    find . -name "*.flac" | while read FILE
    do
    FIXED=`echo $FILE | sed 's/ /\\ /g'`
    metaflac --export-tags-to=- "../../max-rip/$FIXED" | metaflac --import-tags-from=- "${FILE}"
    done
  14. Transfer album art (if it was found and used in step 5) from the files ripped with Max. I use the following script:
    metaflac --export-picture-to=cover.jpg ../../max-rip/01*
    ls -lh cover.jpg
    echo "Adding album art ..."
    find . -name "*.flac" -exec metaflac --import-picture-from=cover.jpg {} \;
    rm cover.jpg
  15. Move $TMP/[Artist]/[Album] to music library

  16. rm -rf $TMP/xAct $TMP/max-rip

  17. In the root directory of the music library:
    $ md5deep -rl * | sort> $GIT_REPO/md5deep.txt

  18. Check the $GIT_REPO changes and commit


[1] See FLAC Encoding Guide for mac for a details on using xAct.

[2] At this stage I do not know the correct way to handle album art, as the players have a variety of ways of dealing with it. For the moment, I have chosen to store it in the metadata of each file.

Tuesday, July 8, 2008

Music Management

After going to all the trouble of ripping and encoding my CD's to a lossless format, I want to:

  • Ensure integrity of the music library, i.e. at any point be able to validate that all the files exist, their contents haven't changed and that there are no extra files.

  • Have a recovery strategy should there be a problem with the files.

Ideally, I would satisfy these requirements by placing all the music in a Distributed VCS and storing a master copy somewhere like S3. Unfortunately there are a couple of problems:
  • I tried out Git, but after the initial commit of a music file, the repository storage space on the filesystem took up twice the size of the music file. Furthermore, changing metadata such as fixing a spelling mistake in the track name and committing increases the repository by the full size of the file again. I assume this is because the files are binary and already compressed. I didn't try out Mercurial, but I expect it will be the same.

  • The music files are already large, even without the extra overhead of the previous point and the data transfer costs here in Australia are just too high.

My current solution:
  • Store the music library on a removable drive on the Mac at home.

  • Keep a copy of the music library on my computer at work by either periodically taking in the removable drive and using rsync or copying newer music onto a USB drive if physical space is at a premium, such as when cycling.

  • Put checksums of the files in a Git repository stored on both machines. I can then verify the integrity of a music library at any time. Currently I use md5deep because it can recursively process a directory tree and is available for both linux and Mac OS X. The default md5 program on the Mac does not seem to have the same feature set as md5sum on linux.

  • I also store FLAC fingerprints in the Git repository. FLAC files store a checksum of the uncompressed audio in the metadata and various tools, such as xAct on the Mac, can verify the file against that. I am not sure how useful storing the fingerprints is, but I can think of a few unlikely situations where it might be helpful, plus it is small and easy to generate anyway.

To verify a music library, I do:

$ cd $MUSIC_LIBRARY
$ md5deep -rl * | sort | diff $GIT_REPO/md5deep.txt -


where $MUSIC_LIBRARY and $GIT_REPO represent appropriate file paths.

I originally tried the matching feature of md5deep instead:

$ cd $MUSIC_LIBRARY
$ md5deep -rX $GIT_REPO/md5deep.txt *


However this does not catch the case where a file has been deleted in the music library but is still present in the Git checksum file.

Wednesday, July 2, 2008

Lossless Audio Formats

I like to rip my CD's to a lossless format so I have:

  • a backup if they get damaged, lost or stolen

  • the freedom to decide (and change my mind) on the audio quality/size trade-offs. I can listen to the lossless version on devices that have enough space and encode into a lossy format where space is limited.
In the past I have used Apple Lossless (ALAC), because iTunes was available on all the computers I used frequently and it was convenient. However, Apple has not publicly released an encoder, so iTunes is the only choice for encoding to ALAC. I do not wish to be restricted like this (tis a bit Microsoft-ish) as managing a music collection can take a fair bit of effort and I don't know what platforms I will use in the future.

I have started to try out FLAC. It is an open source format that seems to compare well with other lossless options.

Also looking at the ripping process, managing tags and album artwork, converting between formats, etc. There are a lot of issues to solve.

Thursday, June 12, 2008

Cross Platform Password Management

Previously I used a MacBook as my main computer and authentication credentials were stored in the native Keychain. I now use a number of trusted machines that are a mixture of Macs and Ubuntu linux and I would like to manage and utilise those credentials from any of the machines.

Firefox
Many of the credentials are for web applications, so browser integration will be handy. So first of all I am switching from Safari to Firefox on the Macs to have a similar browser on all platforms. I am using a Firefox 3.0 release candidate. Firefox 2.x looks completely out of place on a Mac.

The Firefox Password Manager stores its data in two files (key3.db, signons3.txt) in your profile directory. These files are portable across my machines (I am happy that Firefox isn't integrated with the Apple Keychain), so I manage and share them via Git. By default, anyone with access to the two files can obtain your credentials, so I have also set a master password to take care of that.

To handle the case where I have multiple logins to the same site, I have installed the Secure Login add-on. So far it has worked really well.

KeePassX
For all other credentials I am using KeePassX. It stores its data in a file you specify. The file is portable across my machines and it is also shared via Git.

Tuesday, May 27, 2008

Task Lists in The Milk

I think I now have my tasks well organised in Remember The Milk.

After signing up, there are a number of default task lists, some of which are: Study, Personal and Work. I deleted the Study one immediately and started putting tasks into the other two. It quickly became frustrating to be switching between the two task lists during the day. What I needed was a consolidated view of both lists, so I tried out Smart Lists.

Smart Lists are essentially saved search queries. The query language is quite powerful, so it was easy to setup the consolidated view. Unfortunately though, if I was in that smart list and created a new task, then the new task would be created in the default Inbox task list, not one of the underlying tasks lists (Personal and Work).

After some experimenting, it seems that creating a task in a smart list defined by a simple query over one task list works in the desired manner - the new task is in the underlying task list, not the Inbox. However, once the query becomes more complex (I don't understand the rules), a newly created task is place in the Inbox.

The second issue I had was seeing future dated tasks and current tasks all mixed in together. Ideally I want to work predominantly with one task list/view of current tasks during the day.

So my current approach is to only have one task list for all my tasks (I have called it Tasks, surprisingly enough) and two smart lists. The first smart list is my current work (show tasks with no due date). This smart list is open in a browser tab all day and I can pretty much do all my task operations in it, including creating tasks. The second smart list shows all tasks with a due date.

Each day I need to remember to spend a short block of time dealing with tasks that have a due date for that day, by either removing their due date so they appear in the current work task list or postponing them. Perhaps I need to set up some form of automated reminder on days where dated tasks are due.

This system worked well today.

Saturday, May 24, 2008

Remember The Milk

Earlier this week I signed up for Remember The Milk, a web-based task manager. So far I have been quite happy with it.

Background
Currently my work predominantly consists of many small tasks, many interruptions and adapting to changing priorities on a daily basis. So to handle this situation, I generally view my tasks as a queue and prioritise them by their position in the queue. When I am doing a particular task, often it will decompose into smaller tasks, so I am regularly adding, completing and prioritising tasks. Given the frequency of these activities, I am after a lightweight, efficient solution. Generally I am only interested in the title and priority of a task. Occasionally tasks have a due date, such as paying a bill, but otherwise I do not wish to expend effort in calculating and updating task attributes as my circumstances change.

In the past I have had a MacBook as my work machine and used iCal and Stickies (yes Stickies the bundled Mac app) to manage tasks. All tasks for the current day went on to a desktop sticky note, the rest into iCal. I split the sticky note into two sections: TODO and DONE. During the day I could then add a new task (as a line on the sticky note) to the TODO section, re-order (i.e. prioritise) by moving lines up and down and marking a task as done by cutting the line from TODO and pasting it under DONE. Very low tech, but very fast and low overhead.

On longer running activities, I also found the sticky notes useful to collect ideas and links.

This system has generally worked well, except that it was tied to the MacBook. Sometimes I would work from a different machine and in those cases would end up having sticky notes in different places. Secondly, there was no backup (and no I don't want to use Time Machine).

I have now switched from iCal to Google Calendar. This makes working on different (trusted) computers easy from a calendar perspective. However, Google Calendar does not do task management.

Experience with The Milk so far
It was quick, easy and free to sign up. The keyboard shortcuts are excellent, they greatly reduce the time it takes to create, prioritise and complete tasks. Generally the site is quite responsive, although not as fast as using my Stickies approach. The help is quite good.

Most of my tasks are not that private or sensitive in nature, but some are a little. The Milk site follows the same convention as the Google Apps, and will stay with HTTPS if you arrive at the site that way. Occasionally I have noticed it has reverted back to HTTP, but haven't figured out the pattern yet.

I setup a notes Task List just for storing ideas for longer running activities. You can add text snippets (called notes) to a task. So the tasks in this list are not tasks as such, but containers for the notes. The text box for editing notes is a little small, it would be great if it could be bigger, resisable or a little more accessible.

I haven't tried the Google Calendar integration yet and will do further posts once I have settled in to a good way of working with The Milk on a day-to-day basis.

So far the overall verdict is good and I can now get to my tasks from different computers. It is great to see some more Australian (the Milk crew are in Sydney) software success. Well done guys.

Subscribe to: Comments (Atom)
 

AltStyle によって変換されたページ (->オリジナル) /