| Andrew Cooke | Contents | Latest | RSS | Twitter | Previous | Next

C[omp]ute

Welcome to my blog, which was once a mailing list of the same name and is still generated by mail. Please reply via the "comment" links.

Always interested in offers/projects/new ideas. Eclectic experience in fields like: numerical computing; Python web; Java enterprise; functional languages; GPGPU; SQL databases; etc. Based in Santiago, Chile; telecommute worldwide. CV; email.

Personal Projects

Lepl parser for Python.

Colorless Green.

Photography around Santiago.

SVG experiment.

Professional Portfolio

Calibration of seismometers.

Data access via web services.

Cache rewrite.

Extending OpenSSH.

Last 100 entries

Neural Nets Applied to Go; Programming, Business, Social Contracts; Distributed Systems for Fun and Profit; XML and Scheme; Internet Radio Stations (Curated List); Solid Data About Placebos; Half of Americans Think Climate Change Is a Sign of the Apocalypse; Saturday Surf Sessions With Juvenile Delinquents; Ssh, tty, stdout and stderr; Feathers falling in a vacuum; Santiago 30m Bike Route; Mapa de Ciclovias en Santiago; How Unreliable is UDP?; SE Santiago 20m Bike Route; Cameron's Rap; Configuring libxml with Eclipse; Reducing Combinatorial Complexity With Occam - AI; Sentidos Comunes (Chilean Online Magazine); Hilary Mantel: The Assassination of Margaret Thatcher - August 6th 1983; NSA Interceptng Gmail During Delivery; General IIR Filters; What's happening with Scala?; Interesting (But Largely Illegible) Typeface; Retiring Essentialism; Poorest in UK, Poorest in N Europe; I Want To Be A Redneck!; Reverse Racism; The Lost Art Of Nomography; IBM Data Center (Photo); Interesting Account Of Gamma Hack; The Most Interesting Audiophile In The World; How did the first world war actually end?; Ky - Restaurant Santiago; The Black Dork Lives!; The UN Requires Unaninmous Decisions; LPIR - Steganography in Practice; How I Am 6; Clear Explanation of Verizon / Level 3 / Netflix; Teenage Girls; Formalising NSA Attacks; Switching Brakes (Tektro Hydraulic); Naim NAP 100 (Power Amp); AKG 550 First Impressions; Facebook manipulates emotions (no really); Map Reduce "No Longer Used" At Google; Removing RAID metadata; New Bike (Good Bike Shop, Santiago Chile); Removing APE Tags in Linux; Compiling Python 3.0 With GCC 4.8; Maven is Amazing; Generating Docs from a GitHub Wiki; Modular Shelves; Bash Best Practices; Good Emergency Gasfiter (Santiago, Chile); Readings in Recent Architecture; Roger Casement; Integrated Information Theory (Or Not); Possibly undefined macro AC_ENABLE_SHARED; Update on Charges; Sunburst Visualisation; Spectral Embeddings (Distances -> Coordinates); Introduction to Causality; Filtering To Help Colour-Blindness; ASUS 1015E-DS02 Too; Ready Player One; Writing Clear, Fast Julia Code; List of LatAm Novels; Running (for women); Building a Jenkins Plugin and a Jar (for Command Line use); Headphone Test Recordings; Causal Consistency; The Quest for Randomness; Chat Wars; Real-life Financial Co Without ACID Database...; Flexible Muscle-Based Locomotion for Bipedal Creatures; SQL Performance Explained; The Little Manual of API Design; Multiple Word Sizes; CRC - Next Steps; FizzBuzz; Update on CRCs; Decent Links / Discussion Community; Automated Reasoning About LLVM Optimizations and Undefined Behavior; A Painless Guide To CRC Error Detection Algorithms; Tests in Julia; Dave Eggers: what's so funny about peace, love and Starship?; Cello - High Level C Programming; autoreconf needs tar; Will Self Goes To Heathrow; Top 5 BioInformatics Papers; Vasovagal Response; Good Food in Vina; Chilean Drug Criminals Use Subsitution Cipher; Adrenaline; Stiglitz on the Impact of Technology; Why Not; How I Am 5; Lenovo X240 OpenSuse 13.1; NSA and GCHQ - Psychological Trolls; Finite Fields in Julia (Defining Your Own Number Type); Julian Assange

© 2006-2013 Andrew Cooke (site) / post authors (content).

A Framework for Managing a Music Collection

From: "andrew cooke" <andrew@...>

Date: Sat, 13 May 2006 18:26:57 -0400 (CLT)

I experimented last night, and had a hard time hearing differences between
different music formats.  I am also rapidly filling my laptop's disk (or
rather, that portion of it that I set aside for "personal" use, since it
is really work's machine).

Talking to a friend recently, he said that his ripped CDs were all that
remained of his music collection since his house was broken into.

Ripping music from a CD takes more time that cross-converting from flac to
ogg.


Taking all those points together it seems that a suitable solution would:
- allow cumulative ripping of CDs into a structured (flac encoded) library
- automatically cross-convert to a (lossy) compressed format(s)
- back-up the library to a second disk
- allow arbitrary selection and synchonization to other machines

Personally, I've been using kAudioCreator for ripping.  That creates a
nice directory structure of FLAC files.  rsynch can be used to mirror that
to a second disk.  rsynch can also be used to update a second machine from
a separate "selected" tree.

That leaves creating and selecting a tree of compressed data.  Since this
is significantly smaller than the flac tree it might as well co-exists. 
So an obvious partial solution is a process that regularly compares the
flacc and ogg trees and generates any missing ogg files.

Selection remains.  It seems that a third tree could be constructed, in
parallel to the ogg tree, using directories and links.  Building a
selection would involve deleting or creating the appropriate links.  This
would require a second app (perhaps a set of apps) that build this
cross-linked structure.

Andrew

Implemented as Python Scripts

From: "andrew cooke" <andrew@...>

Date: Mon, 22 May 2006 10:01:30 -0400 (CLT)

This is now implemented as a collection of Python scripts, called
MusicTree - http://www.acooke.org/jara/musictree/index.html

(actually, I think that tarball contains an error - if anyone is actually
thinking of downloading this before i repackage (like, in the next day or
two), email me....)

And a Radio Station!

From: "andrew cooke" <andrew@...>

Date: Mon, 22 May 2006 10:05:59 -0400 (CLT)

An I have a radio station too!  I've ripped a bunch of albums to disc and
used icecast and ices to play a constant stream taken from the entire
collection at random.  It's amazingly easy - now I need to see if I can
listen directly from La Serena...

Assorted Small Problems

From: "andrew cooke" <andrew@...>

Date: Thu, 25 May 2006 13:42:30 -0400 (CLT)

Bliss - listening to this fine from work.

Just two wrinkles so far:

1 - ices re-encodes data to ogg quality 3 by default (I assumed it would
pass data straight through).  Specifying a quality of 5 in the config
fixes this, but I worry it's uncompressing and re-compressing.  One of the
reasons to have the compressed files pre-processed was to save CPU.

2 - I had a "Copy Protected" CD.  The Thrills "SOm Much for the City".  A
little poking around on the wed (and the CD itself) shows that:

-- this is "protected" with something called Yucca;
-- that the implementation is via broken metadata in the ISO9660 format.
   Simple music players never read the data; sophisticated computer
   readers do, and get confused;
-- the effectiveness depends on the reader/reader firmware;
-- neither of the drives on my server worked; nor did the USB plexor, nor
   the drive in my work machine (all gave errors when trying to read data);
-- however, a recent Sony drive at work (in an ASL build 64bit box) read
   it no problem;
-- this is apparently illegal in the USA (and uncommon in Chile?);
-- this is popular in the UK and Europe (where I bought this CD).

Conclusion - I won't buy copy protected CDs in future.  In fact, if I want
one and it turnsout the only option is copy protected, I'll go looking for
a "pirate" copy instead.  This is just stupid.  I bought the damn thing!

Comment on this post