Almost a year since I've posted here. Sigh.
I spent quite a bit of the last year helping to write and edit a textbook for bioinformatics in beginning Perl. It should hopefully be published sometime later this year. The two authors I was working with were very open to my suggestions on getting the code into shape and keeping to Perl-ish idioms.
After writing and many rounds of editing, and with a looming deadline, they weren't as thrilled with my suggestion for getting a draft copy to Boston.pm. The reason for this was partly justified as Perl Mongers, like any technical group, not being the target audience for the textbook (something that came up quite a bit in the review process where skilled programmers and Computer Science professors griped about things that arguably aren't relevant to bioinformaticists who are just learning to program). I think having the book reviewed by the Perl Mongers would have been a good thing, so this was a bit disheartening.
Most of my time this past year not spent on the book was spent working on RDF::Query, my pure-perl SPARQL implementation for querying RDF data. Perl is an underdog language in the Semantic Web world, but there seem to be a few people working on keeping Perl able to wrangle RDF easily and efficiently.
Most of my recent RDF::Query work has been on compiling SPARQL queries to SQL so that the runtime of complex queries doesn't explode on large data sets. This often increases the speed of queries by an order of magnitude or more, and puts the speed of RDF::Query ahead of things like Redland, while maintaining the flexibility of user-defined query functions.
My most recent work has been on combining user-defined query functions with the underlying database features so that I can use PostGIS spatial functions directly from SPARQL queries. I believe this has great potential for using SPARQL to make location-aware queries of such things as photos, maps, restaurant reviews, etc. These queries are espeically interesting as a SPARQL endpoint can emit the query results (via XSLT) as RSS or KML which can be used as a live feed of data in applications such as Google Earth and news aggregators. Anyway, lots of fun to be had with that.
I'm not sure I like the fact that this works:
bless\%);
sub a { print pop }
(\%))->a('hello');
The fact that the blessing sticks around after the object reference is gone just seems strange.
Wow. It's been a while since I logged in here. Just over three years, in fact. I've been reading the new posts and journals in an aggregator during that time, but I quite fell out of the practice of posting updates of my own. Part of that may have been due to the burnout of trying to cram an understanding of the perl internals and compiler suite into my head in too short a time.
In the mean time, I've been doing quite a bit of work on photo annotation in RDF, implementing a SPARQL query engine in perl, and RDF-enabling a weblogging system. Oh, and doing quite a bit of traveling and taking lots of photos.
I'm coming back, partly because I miss being involved (in whatever small way) in the perl community, and partly to help some friends. I've been asked to help out on a book being written that will involve lots of perl, to make sure it sits well with the perl community, and to ensure the programming aspects follow best practices and good style. In this, I hope to be able to leverage support from a community such as use Perl, and hope some of you might be so kind as to provide feedback and support when I need it. Anyway, I'll post more about that project as it unfolds.
So, it feels good to be back, and I hope this time I'll stick around.
This just in from Simon (Regarding my issues with creating a new CV with B::Generate):
B::CV->newsub_simple("mysub", $root);should do the trick.
with Arthur's response:
Can I download you brain somewhere
:-)
Good call. Thanks Simon!
Does anybody have any good ideas for what I can do with an IBM 5150 that I just rescued? It's got an enormous external 20 meg hard drive (woohoo!), an ubercool monochrome phosphorus monitor, and both 5.25" AND 3.5" inch disk drives! Unfortunately the original keyboard (one of those nice, noise ones - "click clack") got replaced with a new(er) quiet one
Right now it joins the 11 other computers in my growing collection of computer hardware. Most of them seem to be just one part away from functioning; the Cube needs an optical/CD drive, the sparc stations need two hard drives and one video card, the alpha needs a 2.5" IDE drive (I don't think these are made anymore - all I really need is the 2.5" IDE cable!). Most of the macs are in working order, thank goodness, as are the newer intel machines. Ahhhhh... so many computers, so little (time|money).
Ok, I just had a thought... are there any screen capture programs (for any OS) that instead of emitting an image, emit a (Photoshop|Gimp) file with layers for each discrete UI element (Window, Toolbar, Dock, Mouse, Menu [for a mac], etc.)? It would be cool to open up this file, and be able to drag windows around, and re-organize a screen-shot, just like moving windows around
I'm not sure how much actual *use* I'd have for something like this, but it sure would be nifty!
Ok, so it's been a while. gnat's latest journal mentions me thusly: "the last part of that list is people who haven't updated their journals in months," so it's probably time to update
The reason I found myself not posting to use.perl as often as I'd like (or as often as I posted to the quasi-blog on my website) was that almost every entry had entirely nothing to do with perl. Other people may find that acceptable, but I always felt a little strange about posting to use.perl about everything *but* perl.
But with my server MIA for the last week and a half (zoidberg, where are you!), I suppose I can just start puting my ramblings on use.perl again.
On the perl front, I've been wrestling with B::Generate (finally under a threading perl - thanks Arthur!), and am having a wonderful time causing segfaults from perl-land. No, really. It's great!
alias finder "open -a Finder"