10.25.2010

Twitterpated with Tweetdeck

As I have recently acquired my third diploma, I am currently in the market for a career...sort of. I know this friend of the family who happens to have substantial experience in "human resources," who has enlightened me regarding corporate recruiting in 2010. According to her wisdom, corporate recruiting is accomplished 95% through online social networks such as twitter, linkedin, and of course the mighty facebook. There are often new jobs that have not been advertised, instead they are filled through active corporate recruiting. As a result, it is imperative that today's professional, entry-level or otherwise generate a personal "brand" that is polished, accurate and consistent over multiple web-points. Therefore, despite my distaste for social media and how it is routinely utilized for false advertising, "bait-and-switch" tactics, hurtful defamation of character, rumor propagation or as a sounding-board for idiots; despite this, I must embrace it, harness its power and conquer it!

Hoopla aside, I was directed to the following article (click) which has sufficiently motivated me to push my linkedin account to 100%, make my fb profile a little more professional (i.e. remove the suspicious gas-mask) and actually start tweeting, or microblogging or updating my status or what-have-you. But, woe-is-me who has very little interest in this to begin with to have to update all these social-media sites so regularly. Can't I just have a single program where I can follow the updates and when I make an update it will syndicate it to all the social media sites I subscribe to? Well I went searching and settled on the first thing I found (a lot like how I ended up with my wife) ping.fm which is a website that accomplishes this syndication very easily. However, thanks to publicizing my interest in this syndication business, I was turned on to Tweetdeck, which is a superior tool for posting and managing multiple features to all these subscription sites. I also am really impressed that they are completely cross-platform (Michaelsoft Binbows, Macintosh Apples, and Linux) and I have it installed on my Kubuntu box at home, my wife's ubuntu netbook remix (though there I had to separately install Adobe AIR first) and my "business machine" running 7. Anyway, check out tweetdeck at tweetdeck.com

10.22.2010

Rockbox for Sandisk Sansa e280 v2

About 2 years ago a colleague at UNH told me about this free full featured firmware (oooh alliteration) for mp3 players called Rockbox (http://www.rockbox.org/). It has loads of themes that can be explored, simple playlist manager, and intuitive interface. For the Sansa e280 it also retains the FM radio functionality. Furthermore, it doesn't overwrite the mp3 player's existing firmware but is sort of a dual-boot. The problem for me was that the developers of Rockbox had not ported it to the Sansa e280 v2 at that time, only v1. Since then, I have checked in on the project every few months and after only a couple years wait, I finally got the opportunity to try it out (I guess at least grad-school taught me patience). The only quirk I have noticed is that the "back" button must be depressed when connecting the device to the computer by USB in order for it to mount on my Kubuntu box.

7.05.2010

pour l'amour de la musique

My newest obsession has to be Ampache. Shortly after I upgraded my hosting plan to "unlimited" I decided to use the storage to back-up my digital life (in case of fire/flood/toddler toilette experiments/etc). Since then, I have uploaded approx. 40 GB of media, most of which is home videos and music. I must admit I don't have a very impressive music library compared to many-a-cohort. Still, I always wondered if I could easily manage this lot with a web utility so I didn't always have to carry my external hard-drive around or copy my library whenever I get a new computer. I also like the idea of having it centralized since I'm not too good at keeping up on redundancy with media coming into possession using one of two laptops, home and work desktops, friends, and so on.

Introducing Ampache. Ampache has a lot of functionality that I am not able to exploit, designed for a server that you have total control over, which is not the case with my shared hosting service. However, I have successfully uploaded the PHP based installer, created a database, and configured it...and I'm not that smart so it has to be easy! The only problem that I haven't yet solved is increasing the maximum time my server will allow an Ampache PHP script to run. The default is set to 30 s, which is really not enough to catalog my entire library. My current work-around is to break the library up into many catalogs.

Nevertheless, I am happy with the user interface which allows me to either download a playlist .m3u file which then lets a media player (I use VLC) to stream from the web-server, or there is also a local flashplayer (xspf). I would prefer to use the xspf player since it is one click playback and has a nice interface which displays album art, however, lots of my music is in .ogg format which won't play. So I'm working on converting to .mp3s.

Independence...Really?

It has been some time since I have posted, and I have the day off today, the missus is out to brunch, the twins in a nap, and their big bro chillin with dad, some goldfish snacks and peanut butter sammies. An unlikely coincidence that allows for some writing. I guess I should get it done!

First, I should mention that I was not looking forward to the local yahoos setting off their shitty fireworks at odd intervals all night long in my "quiet" town. I don't mind fireworks, I just think they should be controlled by local fire stations and light-able by authorized individuals. I decided, however, that "you can't beat 'em...so join 'em." Although I think I would prefer to exercise my patriotism at a time of day more amenable to my schedule, like when the kids wake up at 6am. Perhaps next year I will set up my 2 2x12"/2x8" monster purple cabs powered by my 800 Watt junky Crate mixer outside and rip out some a shitty version of "America the Beautiful" (I should think it's easy with YouTube to find a rendition by an 8 yo girl at her first recital!) followed by a Sousa March (you know the one, the really patriotic one) at 6am to kick of the 4th with a real bang! Better still will be the reprise on the 5th. I can't think of a better cure for a hangover.

That being said, I actually had no problem listening to this racket at 10pm this year since the kids easily drowned it out during our routine bedtime ritual. Maybe the extra helping of cake and blueberry pie at my friends pig roast played a role. By the way, I would not recommend bringing 3 kids under 3 to a friends pig roast unless you are hell-bent on being a spectacular circus side-show for all the other guests. I think I managed to say "hi" to like 3 people out of 30, not that I knew many of them. Let's just say watching two adults chasing around midget tyrants who are busy swinging croquet rackets, screeching, falling, stomping on flower beds, etc. is the closest my friends have been to the Ringling Bros.

Additional updates:
- I somehow inadvertently rejoined Facebook - I really don't know how to use the internet. My wife is convinced that my profile picture is damaging to my career.
- I celebrated the anniversary of this blog quietly as I was driving in to work on the 30th of May. That was a while ago, but I thought it deserves mention regardless
- I am looking into a Postdoctoral Fellowship at Texas A&M. Very few members of my family have been initially supportive, but they should come around.
- I am brewing all-grain (details here)
- I have discovered a great web-tool to enable me to play my music library from the web (see later post)

6.12.2010

Home Studio Upgrade - mobile workstation

I recently made 2 purchases to allow a more flexible, complete, mobile solution to my DAW. I now have the ability to take my studio on the road and use my Sony Vaio.

First I have added a simple E-MU XMIDI 1x1 USB interface ($25) so I can use my midi keyboard with a USB port.

Secondly, I needed a USB audio interface / preamp. After some research I found an excellent solution that offers a substantial "bang-for-your-buck" using an ART USB Dual Pre ($80) which does not require any drivers. When you plug it in you will find "USB audio codec" added to your sound I/O hardware options. However, you don't have to select this for your system if you run most of your studio software on top of JACK. Instead, just change the input and output preferences in the JACK setup and you are good to go!

I also found software designed to be a guitar effects simulator called Rackarrack which also has an on-board tuner and can route your guitar notes to midi events. Although it has limited sensitivity, this may be a good way to score midi data for someone (like me) who plays guitar/bass better than keyboard.

6.01.2010

bash scripting

I wanted to put together a simple bash script that would take a wildcard argument from the command-line and send the output to a text file (g03data.sh *.log > output.txt)

I needed to add the following (found here) to the top of my existing script:

if [ -z "$1" ] then     echo $0: usage: $0 filename     exit 1 fi
while [ ! -z "$1" ] do     # do stuff to $1     shift done
exit 0

5.20.2010

MSWord Reference Range

I had some trouble figuring out how to use MS Words simple footnote/endnote reference tool with regard to adding a range of references. I found help here: http://word.tips.net

In summary, I found it relatively easy to create the macro (below) and then I could highlight the numbers in the middle of the range and format them to be hidden with a hyphen in their place.

Macro:

Sub RefListToRange()
Selection.Font.Hidden = True
Selection.Collapse (wdCollapseEnd)
Selection.TypeText Text:="–" 
End Sub


5.13.2010

Ubuntu 10.04 media trouble

Random (20 min to 1 hour of play) video errors:

vlc loses audio and movie player loses audio and video stream.

error from movie player: pa_stream_writable_size() failed: Connection terminated

5.10.2010

Refurbing a Toshiba A45-S150

My friend asked me to fix his laptop as it seemed to have a virus on it. Well after a boot I found not only virus trouble, but lots of out-dated, useless software (mostly AOL crap that I know is painful to get rid of). He said I could do whatever was needed, so I decided the easiest path would be to reformat with Puppy using gparted and then perform a reinstallation. I decided to partition the HD to allow installation of XP (ntfs) and linux (ext3) so after doing this with gparted, I proceeded to install an old copy of XP I obtained. It had a license key with it that was supposed to work :) but alas I have had to find a workaround.

A bigger problem with this job was losing all the toshiba drivers including those that run the network adapter. I spent a few minutes searching and finally came across this forum thread:


http://laptopforums.toshiba.com/


Which pointed me here:

http://www.csd.toshiba.com/

This was critical as I was S.O.L. with most of the hardware on this machine without these!

So now I just need to get any other drivers deemed useful, deal with the activation, SP2 and SP3 upgrades, WGA issues and all that jazz. (yes windoze is a pain).

After the couple hours needed for all that, I'll take 30 min. to do a Ubuntu 10.04 LTS (lucid lynx) install just in case the other system goes to shit!

p.s. I figd out activation (FFX Madman), however it may have interfered with installation of MSOffice 2007.

5.05.2010

Soft Studio Solved?

Whilst the misses was away (Vegas Wedding - 4 days) I made it a goal to upgrade my system: 1. Upgrade to Ubuntu 10.04 LTS on new HD 2. Reconfigure my software studio. I had just purchased a WD Caviar Blue 160 GB HD (ultra quiet!) and installed Ubuntu 9.10. Eventually I will get smart and make a remaster of my system so I don't have to reconfigure everything when doing something like this, but it is rare that I have to move to a new HD. Still, I had to start rebuilding my software suite. I can manage this to 95% completion in about 2 hours which I banged out early one morning.

I accomplished a network upgrade to 10.04 (lucid) in about an hour, however I had to troubleshoot a few bugs, two of which were related. The login screen lagged a very long time and my USB drive would not automount on boot like it used to. Searching the web, I found a fix and after deactivating the floppy drive (I don't even have one) in the BIOS settings this was corrected.

After installing my standard (and more) suite of software, I made my "Studio" menu and fired up JACK, Qsynth, and Qtractor to test things out. Unfortunately, I was unable to record midi from my keyboard! After racking my brain a bit, I decided to uninstall Qtractor and build it from source. Although this is always a non-trivial task (although getting easier), it fixed the problem. I also installed LinuxSampler, and the front-end GUIs Qsampler, and Jsampler (see earlier post 3.10) from the CVS repos.

I had hoped that the LinuxSampler engine would eventually be my "go-to" for running multiple samples on different channels simultaneously. However, I cannot figure out why the GIG files (or any samples for that matter) sound lousy, bad, terrible, fuzzy, etc (keywords!). Really annoyed after having built Gigedit, LinuxSampler, and Qsampler from source. I decided to play with Qsynth (.sf2 soundfont sample handler GUI for FluidSynth).

After some digging and tinkering I believe I have a solution. Use Qsynth with Qtractor and Hydrogen (on top of JACK of course) to build all my MIDI files in real-time with a MIDI keyboard and then record into Ardour. The breakthrough was figuring out how to play multiple samples (.sf2) from Qsynth simultaneously. Here is how:

Qsynth loads audio "engines" and you can set up several at once. However, you only need one!
In setup I select alsa_seq as the midi driver, and jack as the audio driver. Then under "Soundfonts" tab select each of the soundfonts (.sf2) files you want to have available for your Qtractor piece. Then edit each entries "offset" so they are different (0, 1, 2, etc). This sets the "stack" with different banks. Save and leave "setup." Then select "Channels" from the main Qsynth interface. Right-click the channel of interest and select "edit." Then you can select different "banks" and assign different soundfont samples to different channels! Now give your neglected 2 year-old a high five!

5.01.2010

Sony Vaio MotionEye Drivers

Somehow I managed to get the "motioneye" webcam working in windows 7 pro. I originally recieved this laptop with Vista installed and upon upgrading the webcam was not working. Basically I installed all the updates and then went to Sony's "esupport" page and searched for the model printed on the bottom (PCG-5K1L) which returned a different list of models. I chose the one with "EN" at the end and then installed the "Cam" driver for Vista (but I'm running 7? Right!) and it worked after that.

Now I am curious if I can make the webcam run in Ubuntu Linux (while I'm waiting around for a network upgrade to 10.04 LTS). I ran lsusb and found the driver info:

Ricoh Co., Ltd Visual Communication Camera VGP-VCC6 [R5U870]

Now I think I may be able to get some headway according to this site:

http://www.arakhne.org/ricoh/

back for an update...

Update:

Installation of 10.04 took ~2 hours over a wireless connection (a bit slow, but I had other things to do anyway). It will take some time to see what kinds of advantages, upgrades, etc it really adds, but I expect to be fully satisfied.

After that I installed the following files from the above URL.:

ricoh-webcam-r5u870_0.11.4-0arakhne1_i386.deb
ricoh-webcam-r5u870-firmware_0.11.4-0arakhne1_i386.deb

Then I tried "cheese webcam booth" software and verified the motioneye webcam works!

4.26.2010

VT-NMR Simulation Calculator

Enter Temperature (T) in Kelvin and the rate-constant (k) from the simulation (see H. Reich's WinDNMR).

Contstants: Gas (R), Boltzmann (kb) & Planck's (h) constants.

4.09.2010

Download Buttons and Better xspf player

I wanted to know how can I have a "cyber-button" that upon clicking will get your browser to start a download from my server. Here were some useful answers to start:

How to Create an HTML Download Link

Self Extracting Zip File (1) (2)

I also found a website that used a xspf player that included a "shuffle" feature. I thought this was neat and had to have it! I found one with instructions here and here, extracted and uploaded the .fla, .as, and .swf files and presto-blamo it worked.

4.07.2010

Don't Call Me Doctor...

Not because I failed. I passed, I just don't yet feel comfortable with the way it sounds. My dissertation defense took place at 2 pm on April 6, 2010. I presented 46 slides which took 45-50 minutes after which I took 4 or 5 questions from the general audience. Following a 5 min. break I entered a private session with my 5 faculty committee members which was a "round-robin" Q&A lasting 2 hours. I botched a few answers, but in the end the committee was satisfied.

Regarding my presentation, I ended up exporting my OOO3 Impress presentation to a PDF and running a slide show with evince! Very fast, hardy solution. Of course I was not able to run my x-ray crystal videos embedded or from a macro. But I had them both queued up in totem and running in the background during the presentation so I could easily pull them up without losing momentum.

So now I just have about a weeks worth of corrections to make to my dissertation and I will submit the final version to the graduate school. I plan to attend a hooding ceremony at commencement on May 22.

3.31.2010

PhD Defense Presentation

I would like to expand some on this later (after the defense) with reflections etc.

Now I just need to get down the procedure I used to make a quality MPEG of a rotating crystal-packed molecule that I can call from OOO Impress.

To make an MPEG from PyMOL I first needed to install the FreeMol addon pack:

1. Download FreeMol "trunk" tarball from svn repo here.
2. Follow install tips from here.

I moved the FreeMol "trunk" directory to /opt/trunk/ and then cd into each package within /opt/trunk/src. Then I ran < ./cofigure ; make ; sudo make install ; make clean > within each package directory. I had to install the GNU fortran compiler (from synaptic package manager) for one to work.

After you "save as" your MPEG movie you can call it from OOO Impress using a macro command.

1. In OOO Imress go to -> Tools -> Macros -> Organize Macros -> OOO Basic
2. Create a new module within the standard library following these instructions.

I deviated somewhat by using this in my macro command:

Sub Main
Shell("totem --fullscreen --toggle-controls /home/me/chem/movie/movie.mpg",2)
End Sub


New Discovery - It looks like I should be able to embed an AVI file directly into my Impress Slide. From OOO go to Insert -> Movie & Sound and select the .avi file. May need to install a codec (libavcodec?) first...verification needed. Also to convert the MPEG from PyMOL to an AVI format install ffmpeg and then run
> ffmpeg -i file.mpeg file.avi

A video toolbar comes up when you click on the embedded box where you can select "repeat." The AVI video will automatically start playing when you advance to the slide and continue until you move on.

3.25.2010

PhD Dissertation - The End is Near

I thought maybe it would beneficial to document some of the process of writing my dissertation since I went about it a bit nontraditionally (not just taking too long to do too little) using predominantly open-source software.

Disclaimer: Although writing a chemistry dissertation with open-source software is readily accomplished, it is probably unwise to make a switch from MS Windows after already starting your writing. It is recommended that you make the decision a year-ish early and write at least one hefty report to acclimate :)

Software Used

OpenOffice.org 3.1 Office Suite:

OOO3 Writer - Word Processor

OOO3 Draw - Drawing Program - I used this to prepare all of my Figures and Schemes saving each one separately with a unique alpha-numeric identifier for easy renumbering at the end.

OOO3 Calc - Spreadsheet - Used to generate tables and graphs


JabRef 4.2 - Java-Based Reference Manager - Fast and flexible, however there is a bit of a learning curve (maybe a few hours) associated with using the "style file," a template that formats your bibliography. I know there are several others out there, but JabRef was easy enough that I could get started with it right away and it is very robust. Documentation on their web site is good, and you will find there the critical plugin for syncing to OOO3.


SciFinder Scholar - Chemical and Biological Database Search Engine - SciFinder Scholar is sooo expensive that you shouldn't have to pay for it. Your institution will likely have a site-license (mine has one with only 3 seats or simultaneous users for a student body of 12000) and you need only download the Windows executable and obtain a copy of the site.prf file (a key granting you access) from the school (check with the library). Yes it is windows only, but again I found it to run nearly flawlessly in WINE for Linux.


BKChem 0.13.0 - Python-based 2D Chemical Structure Editor - BKChem is far from perfect, but for my thesis it worked great. This may in part be due to most of the chemistry I do is with flat polycyclic aromatic hydrocarbons, however anyone looking for open-source 2D structure editors should have good success with BKChem (also look at JChemPaint). The only major set back I had was in resizing objects as BKChem would crash. Otherwise very robust. Since BKChem exports a scalable vector graphic (SVG) to OOO2 .odg format I had no resolution trouble with resizing in OOO3 Draw.


Avogadro 1.0 - Powerful 3D Chemical Structure Builder and Force-Field Minimizer - I can't say enough good things about Avogadro. It is my front end to all of my computational chemistry. It is easier to use than GaussView (almost as intuitive as Spartan's Builder), offers beautiful, fast graphics, implements MMFF, UFF and Ghemical force-fields, reads loads of file-types including Gaussian Cube files, displays MOs, cross-platform (YES Mac and Windows too!) and it's bloody free!! (I don't know how but thanks to Marcus Hanwell and his faculty advisor Geoff Hutchison).


PyMOL - 3D Chemical Structure Viewer and Graphics Renderer - Although a little clunky, PyMol's greatest strength is producing very nice graphics which are saved in .png format. I know it has many additional uses, however, I only used it to prepare beautiful 3D molecular visualizations for my thesis. It is only missing a "ball-and-stick" display style (which is available in avogadro) but the "stick" style is clean and the images do come out much sharper and scale well.


WinDNMR in WINE - Dynamic NMR Line Shape Simulator - Although not available for Linux or Mac, WinDNMR worked without any trouble through WINE for Linux. The program is free-ware, but the author H. Reich requires e-mail registration in exchange for an activation code. This program requires adequate knowledge and skill for proper execution but the manual/tutorial is available and thorough.


MestReNOVA - Advanced NMR Workup Software - MestReNOVA is not free, but a 45 day trial is available for Windows/Mac/Linux, giving the average graduate student enough time (I got a 15 day extension) to do the final workup of all NMR FIDs.


pdftk - PDF merge/split Command Line Tool - This little gem came in real handy to manage my dissertation in 5 parts. Splitting up the OOO3 .odt files allows for faster save times and handling. I didn't learn how to start page numbering from a different number than 1 until after I merged my 3 chapters and appendix into the .odt file which was a little frustrating to manage the 155 page document for final minor edits. Still saving each part separate and exporting as a PDF worked well and pdftk seamlessly merges one printable document. Most likely pdftk is downloadable from your package manager (that's what I did with Ubuntu) and type pdftk --help for a list of command options.


Hurdles and Lessons for Writing a Dissertation/Thesis with this Software:

The OOO3 office suite is nearly as powerful as MS Office but there are some significant differences, some advantageous. There is no way I can give a complete overview of these differences, but there are a few helpful points I may make.

1. Page Numbering in OOO3 is tricky. It is a good idea to break your document up into sections as it saves time in the end. However, this is only true if you learn how to number starting with a different page than 1 well in advance. OOO-Writer uses page "styles" to manage this information. For example to number your preface with Roman Numerals and then start Chapter 1 with page 1 (as is usually the case), the preface pages must be designated a separate style "preface" than the rest of the document which will probably remain "default." It is imperative to sort this out early with some test pages. Consult the following website documentation: OOO3 Wiki, Taming OOO3, OOBlog. I'm sure there are lots of other sites with this information, but the first 2 alone basically got me up-and-running (although a bit late!).

2. Build a detailed and "Advisor Approved" outline for your entire thesis. Use the Outline Formatter in OOO3 (usually defaults as you build) for this and you'll be happy you did. My outline literally became my headings and subheadings for each section of my dissertation which I could easily reformat numerically after I was finished using the Bullets/Numbering toolbar.

3. Use a reference manager to keep your bibliography organized. I used JabRef with an OOO-plugin (see above) and it worked well for me. I did the best with my "style-file" for ACS formatting and left it alone until I was finished the document before a final format.

4. Organize your Tables, Figures, Schemes and Componds with a well designed alpha-numeric coding system so you can use "Find/Replace" tool in OOO3 at the end to provide a final number. I used "T" for Table, "F" for figure and so on, followed by a 1,2,3 for which chapter the table or figure was in, followed by Roman Numeral designation for which part within the chapter it was in, followed by a capital letter. The trouble I ran into was when substituting C2II (the "I-th" compound of part I Chapter 2) with the number 16, compounds C2IIA-C2IIZ (compounds in part II of Chapter 2) became 16A-16Z!!! So don't do that! Use a better system and you'll be golden.

5. Export and test as you go. Your advisor will probably want to use your well-crafted figs, schemes, tables in journal submissions later on (hopefully) so you should save each one individually with a good systematic archiving method and export them into a format that will be useful for collaboration purposes (MS Word 2003 / 2007). Also deal with your text. I found exporting to .rtf worked well for keeping my text formatting, but my figures/schemes/etc were botched. It is useful to figure out a system that you know will work early on so you're not "stuck like chuck... cuz chuck was stuck" -MM.


3.10.2010

Linuxsamplers: QSampler, JSampler

Installing LinuxSampler and QSampler on Ubuntu directions here.

More significantly just follow the CVS instructions from here.

Note that to install from the cvs source you must first install:

cvs, automake, g++, and respective dependencies, all of which are available through synaptic.

In addition either libsndfile or libaudiofile with the 'dev' files must also be installed.

Installing JSampler/Fantasia found here.

wrote the following script to launch JSampler: /usr/local/bin/fantasia
with help from here.


#!/bin/bash

linuxsampler &
samplerPID=$!
java -jar /opt/Fantasia-0.8a.jar
kill $samplerPID


Configure linuxsampler for jack support with > ./configure --enable-jack

Tutorial on setting up VTPO virtual orchestra with JSampler/Miditzer in Puppy Linux!

3.07.2010

I ALSA Don't know JACK about linux-rt kernel

Okay, I thought I would quickly document the exact procedure to get JACK (via QJackCtl GUI) to play nice with ALSA and the Real-Time kernel (linux-rt) on Ubuntu 9.10.

1. Install linux-rt from synaptic
2. Install QJackCtl from synaptic or Ubuntu Software Store

3. Go to System -> Administration -> Users & Groups and add your user to the following groups: audio, pulse, pulse-access

4. Enter the following into your command line

> sudo su -c 'echo @audio - rtprio 99 >> /etc/security/limits.conf'

5. Reboot

6. Start QJackCtl and edit the following prefs:

Setup -> Settings tab: check the boxes next to Realtime and No Memory Lock
Setup -> Misc. tab: check the box next to Start Jack Server on Application Start-up.

7. Restart QJackCtl and voila!


3.06.2010

GCompris, TuxPaint on puppy linux

These are fun for the kids, however, GCompris may be for 4+ not 2+ like advertised!

Here's the list of .pets you need to grab from here (reprinted from this forum thread):

Gcompris 8.4.13, and dependencies: 
gnucap + gnuchess + python + pysqlite + pycairo + pygobject +pygtk + SDL + SDL mixer +tuxpaint

And

+sqlite 3.6.12 
which you can get here

Also needed for TuxPaint: SDL_image-1.2.7-i486.pet + SDL_Pango-0.1.2-i486.pet + SDL_ttf-2.0.9-i486.pet + libpaper-1.1.23+nmu1-i486.pet from here as well :)

Note all the other goodies from the same site: Klavaro, Enigma, Childsplay, TuxMath.



2.22.2010

RPM Challenge

I registered for the RPM Challenge and I have been working on my music project called Nuclear Overhauser Effect (nOe) which I decided will be experimental and thus a learning tool to catalyze other musical endeavors. As of right now, nOe-i has 8 tracks with 2 more to record. I also want to doctor-up one or two of the existing tracks, but the RPM challenge deadline is Feb. 28, so I'm not sure if that will happen. The concept for this album is to use my iPod Touch to compose, record, and generate field-samples almost exclusively. So far I have been using the following equipment for this project:

Hardware:
iPod Touch-2G 8GB (firmware: v. 3.0)
Desktop PC (home-built) with Pentium IV 2.8 GHz, 2GB DDR RAM, Audigy Soundblaster Platinum with mounted breakout-box (operating system: Ubuntu-9.10 with linux-rt kernel v. 2.6.31.9.10)

Software:

- iPod -
Voice Recorder
Xewton Music Studio
i808
Flare (virtual turn-table)
Thereminator
Noise.io Pro
Guitar Pro
BassGuitar
GigBaby
RjDj
DrumMeister

*Ubuntu-Desktop*
JACK
Muse
Ardour2
Hydrogen
Qsynth
ZynAddSubFX

Now with just a little left to do and possibly not enough time to do it, I want to document a few ideas to add to the project:

- add theremin/scratch? to nOe-i06
- add noise.io synth/field-samples? to nOe-i09
- use field-samples for nOe-i10
- find noise cancellation software (audacity plugin?) for nOe-i08
- need artwork and liner-notes

2.14.2010

Xewton Music Studio for iPod Touch

Xewton Music Studio (XMS) is an amazingly powerful MIDI sequencer with a complete set of instrument samples for the Apple iPod Touch or iPhone. Despite several limitations, this app is quite powerful, very intuitive and loads of fun to use. It is well worth the current $15 list price. I am currently working on my first nOe album using this software almost exclusively for composition. It exports compositions as .wav files and has built in server capabilities which enables you to access the files from you desktop/laptop with a web-browser and download them.

Ubuntu Studio 9.10

Shortly after I burned my first ISO of PCLinuxOS, I configured my first serious desktop with a dual boot of Ubuntu Studio 8.04 and XP. As I recall I had many growing pains configuring my audio with UbuStu, however, at some point I was successful and was able to recompose a song I wrote in high-school using Rosegarden.

At some point, I decided to upgrade to UbuStu-9.04 as I had been enjoying the usability of Ubuntu-9.04 (Jaunty) and 9.10 (Karmic) at school. Sadly, I had some major issues with this install that forced me to move to Ubuntu-9.10. I knew I would probably try UbuStu-9.10 when it was released with the hope that the earlier incompatibility would be corrected. It seemed to work okay, however I could not get it to work with my Ralink Wirless card. Also, I was frustrated that the UbuStu developers didn't include some of the slick upgrades (namely the Ubuntu Software Center) that is steadily improving the usability of Ubuntu. I had no way of accessing the web without "ruining my life" so I moved on to 9.10 and decided to go on a significant "shopping spree." I installed loads of science, education and music apps from the Software Center, as well as the kernel-rt from synaptic.

The most significant challenge was getting the JACK audio server to run and I eventually found that I had to add my user to the "audio" and "pulse" groups under System -> Administration -> Users and Groups. The follwing URLs were helpful for me:

http://ubuntuforums.org/showthread.php?t=600626
http://ubuntuforums.org/showthread.php?t=1336078
http://ubuntuforums.org/showthread.php?t=453486

and most significantly:
http://ubuntuforums.org/showthread.php?t=1143784

I still get the following error from Rosegarden however:

System timer resolution is too low
Rosegarden was unable to find a high-resolution timing source for MIDI performance.
You may be able to solve this problem by loading the RTC timer kernel module. To do this, try running sudo modprobe snd-rtctimer in a terminal window and then restarting Rosegarden.
Alternatively, check whether your Linux distributor provides a multimedia-optimized kernel. See http://rosegarden.wiki.sourceforge.net/Low+latency+kernels for notes about this.

2.02.2010

Anyone ever heard of an online auction website?

I finally sold some stuff on EBay. I have thought about unloading various collectibles, refuse-ables, doodads/trinkets/chotchkies, and "what-have-yous" for quite some time, and always thought "hey, what about EBay?" Well the time has come to overcome my fears and give it a shot. So far, not too shabby. However, I definitely see how small-fry sellers like myself could get burned. It is easy to be bamboozled.

To date, I have sold just a few items:

3 cell phones, and a graphics card.

And have earned a grand total of $180 which has nicely offset my recent purchase of a netbook for my wife (asus eee). She loves it, and I must say, I am quite impressed with how much power can come in a little package for pretty cheap ($250).

I'm sure I'll have Ebay updates in the near future!

Puplets: NOP, TEENPup, UPup

Since my review of "Pup-It-Up" Puppy Linux Music Lab, I have tested a number of other puplets. I will give my best recollection and overall impressions of each.

NOP:
Probably my favorite puplet for general use would be Nearly Office Pup (NOP). Although I find it runs a little slower on my hp pavilion ze5600 laptop, that is probably due to a number of useful changes to the base Puppy, specifically xfce as a window manager and Opera for the browser. However, it is these two additions that make it a slick, user friendly system. Once adding the openoffice.sfs to the boot-up options, NOP is a clear winner for a desktop environment that even Grandma could use.

TEENPup:
My second favorite puplet as an all-purpose desktop would be TeenPup-legacy2009. Although about as "fat" as they come, this distro has a tremendous amount of applications with a "windows-like" feel and usability. I would keep it off of most old laptops, but it is a great choice to get the most out of an older desktop.

UPup:
Perhaps the most cutting edge of the puplets is UPup which is the current "pet" project of Barry Kauler (Puppy Linux originator). It is listed as "experimental" and in fact I remember finding some basic applications were broken. Simply put, UPup is a Puppy platform which readily installs debian (.deb) packages from Ubuntu repos. This makes it one of the most extensible, flexible of any puplets for a linux newbie like myself. My guess is this will be the future of Puppy Linux.

1.02.2010

Snappy Holla-daze!

I'm not so much a grinch as just a guy that could really give a rats-ass about the holidays. In the end I like what I like about it, and that's not much...mostly just the food. After Thanksgiving, I usually cannot wait until January 2nd...that's today. Anyway, a bit has happened since I last blogged and I will try to summarize as I am watching the kids.

At school, my French colleague and two of the Asians have left. Also my Vermont friend is gone to go teach ski racing to teens, but plans to come back to write his thesis in April.

Much of my time has been split between writing my dissertation and playing with the new $40,000 computer cluster. It was assembled and configured by a gifted 22 y.o. UNH undergrad who did a really nice job. It consists of a head node and 6 compute nodes running OpenSuSE, each with 24gb memory and the newest, fastest intel nahelem procs in a dual-quad core configuration. The nodes are networked with gigabit up/down cables. That's about the extent of what I can remember. Of course it has a slew of useful computational chemistry packages.

Although I don't have any training in CS, I managed to piece together a useful python script based on a similar one that I used as a template...though I added a number of useful bits for my own preference. Here it is:


#!/usr/bin/python

import sys
import os
import commands
import datetime

print "*************************************************************\n**See g03jobLOG in Home Directory for Log of Jobs Submitted**\n************
*************************************************\n\nEnter the Following Information for Your Gaussian Calculation:\n"

xyzFile = raw_input("Enter .xyz File Name (omit extension) > ")
uniqueID = raw_input("Enter Unique Identifier (no spaces; optional) > ")
g03root = raw_input("Enter Root Section (#) > ")
charge = raw_input("Enter Charge > ")
multiplicity = raw_input("Enter Multiplicity > ")
title = raw_input("Enter Title; optional > ")
queue = raw_input("Enter Queue (short (s) or long (l)) > ")

if uniqueID == "":
UID = ""
else:
UID = "_"+uniqueID

if queue == "s":
SGEQ = "short"
if queue == "l":
SGEQ = "long"

if title == "":
title = xyzFile+" / "+uniqueID

f = open(""+xyzFile+UID+".com", 'w')
f.write("%chk=/tmp1/"+xyzFile+UID+".chk \n")
f.write("%mem=20gb \n")
f.write("%nprocshared=8 \n")
f.write("%nproclinda=1 \n")
f.write("# "+g03root+" \n")
f.write(" \n")
f.write(" "+title+" \n")
f.write(" \n")
f.write(charge+" "+multiplicity+" \n")
f.close()

inp = open(""+xyzFile+".xyz", "r")
outp = open(""+xyzFile+UID+".com", "a")

for line in inp:
outp.write(line)

inp.close()
outp.close()

lines = open(""+xyzFile+UID+".com", "r")
list = lines.readlines()
lines.close()

del list[9:10+1]

fout = open(""+xyzFile+UID+".com", "w")
fout.writelines(list)
fout.write("\n")
fout.close()

print "Gaussian .com file ("+xyzFile+UID+".com) generated ... submitting"

jobName = "g03job"

f = open(jobName, 'w')
f.write("#!/bin/csh \n")
f.write("#$ -S /bin/csh \n")
f.write("#$ -N "+xyzFile+UID+" \n")
f.write("#$ -q "+SGEQ+".q \n")
f.write("#$ -cwd \n")
f.write("source /opt/g03/environment.csh \n")
f.write("g03l "+xyzFile+UID+".com \n")
f.close()

#command to submit
task = "qsub "+jobName
subJob = commands.getstatusoutput(task)
log = "/home/"+os.environ["USER"]+"/Computation/g03jobLOG"
cwd = os.getcwd()
now = datetime.datetime.now()

if subJob[0] == 0:
print(subJob[1])
f = open(log, 'a')
f.write("\n")
f.write(subJob[1]+"...\n")
f.write("Job Directory: "+str(cwd)+"\n")
f.write("Submission Time: "+str(now)+"\n")
f.close()
else:
print("...Failed : "+subJob[1])
sys.exit(2)

To Summarize - this script conveniently takes user input and edits an XYZ coordinate file to generate the appropriate Gaussian .com input file. It then writes a jobscript , submits it to the SGE queue, and logs (appends) the date/time and directory in a single file.

At home, I have enjoyed running ubuntu 9.10 and hope to do some recording with it soon.