Re: [CODE4LIB] Online PHP course?

2010-01-06 Thread MJ Ray
Thomas Krichel kric...@openlib.org wrote:
   Joe Hourcle writes
  ps.  yes, I could've used this response as an opportunity to bash
  PHP ...  and I didn't, because they might be learning PHP to
  migrate it to something else.
 
   controversial ;-)
 
   what's the problem(s) with PHP?

Oh please don't nuke the list from orbit like that!  I hope that
this is a balanced enough reply to keep everyone happy:

Our experience is that PHP hosting environments vary much more, most
PHP code is a mess (PHP-based software was part of 35% of the
U.S. government's National Vulnerability Database in 2008 -
http://www.coelho.net/php_cve.html) and few things (code and hosting)
move between the different major versions smoothly.  It's a personal
home page tool which has grown massively, for better or worse.

BUT! Even after all that, software.coop still supports some PHP
applications because they can work well and be very useful, though
we're under no illusions about PHP's warts.

Hope that helps,
-- 
MJ Ray (slef)  Webmaster and LMS developer at | software
www.software.coop http://mjr.towers.org.uk|   co
IMO only: see http://mjr.towers.org.uk/email.html |   op


[CODE4LIB] Google's Go

2010-01-06 Thread Erin Germ
Just wondering if anyone is or has tried using Go ( http://golang.org/ ).

~Erin

-- 
--
Well then what am I supposed to do with all my creative ideas- take a bath
and wash myself with them? 'Cause that is what soap is for (Peter, Family
Guy)

http://eringerm.com/
http://twitter.com/ErinLovesTechno


Re: [CODE4LIB] Online PHP course?

2010-01-06 Thread MJ Suhonos
  I think that the single critical question to ask about any
  development in a digital library environment is it's ability
  to deal with Unicode and it's related standards such as UTF-8.
  Last time I looked at it, PHP had problems is that area.
  These problems will bedevil anything you write in PHP, no 
  matter how elegant you code.

Just to follow on this comment and the related thread on development languages 
and PHP, UTF-8 handling is *exactly* one of the reasons you should consider 
platforms in addition to pure or base languages.  The better frameworks out 
there address the shortcomings of their languages, including PHP and its poor 
Unicode support.

And while I've broken my silence, I'd just like to add to Marijane's original 
question: something you'll want to consider is the deployability and 
maintainability of your chosen platform -- as both a long-time programmer and 
systems admin, even a wonderfully elegant language can be a nightmare to 
maintain if it's not well-supported at the OS level -- I'm sure this is one of 
the reasons for the success of LAMP.

MJ


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Dan Chudnov
On Jan 5, 2010, at 10:13 PM, Ross Singer wrote:

 Dan Chudnov, for example, seems to think in Python.  When I tried
 Python, it never really clicked -- I muddled through a few projects
 but never really got it.

Actually, I think in Hoosier, but as the late Kurt Vonnegut might remind me, 
that's awfully silly.

I mostly agree with Ross, though - find something that fits your brain and lets 
you get your stuff done and stick with it.  It just might take a while.

I have used python as a main language for about seven years now and it pays off 
in many ways.  I didn't arrive at it quickly, though.  At my first regular job 
10-12 years ago I built stuff in perl, java, php, and vb, all of which turned 
into code I had to support for one user group or another for some period of 
time or another.  It's one thing to experiment with toy code, it's another 
thing to do an experiment that brings you hard data and experiences that can 
help to inform future decisions.

Here's how it went for me, but YMMV:  I knew perl first, and everything I wrote 
in perl worked quickly and was easy to install in our hosting environment but 
was hard to fix later when it broke because I couldn't read it after I'd 
forgotten what I'd done.  Java was just hard for me, period, and hard to 
install back then (tomcat wasn't particularly stable, yet, for one thing).  VB 
was super easy to develop with but meant desktop support in the long run when 
everything was moving to the web.  PHP was easy to write and install but I 
wrote a lot of bad code with holes all over the place, partly because of how 
easy it was.  After all of these experiences, and having gained some insights 
about what I preferred, I tried python, and it clicked immediately.  It wasn't 
so easy to install on a web server reliably back then, but it was doable, and 
it had all the other positives I was looking for:  I could get stuff done 
quickly, get it installed, it made sense when I went back to look a!
 t it again, and I tended to write things slightly more securely than I had in 
the past. I was hooked.  Seems like Ross is saying the same things about Ruby, 
for him.

None of the stuff I was building back then was intended to be widely-used or 
even depended-upon, which helped a lot, but some of it turned out to be one or 
both, and that shines a bright light on the positives and negatives of platform 
choices.  If I'd tried the languages in a different order maybe my experiences 
screwing up a lot of stuff early on would have led me to like a different fifth 
language; I definitely got better along the way.

These days I am spending more time in Java and JavaScript than I would have 
expected but find that they're both less hard than they were the last time I 
tried them both, partly because they've become easier to work with based on 
frameworks and such but also because I have more experience, period.

If you want help prioritizing which to choose first I could hardly argue with 
any of php, python, or ruby, for the same reasons others state, and as Ross 
said, building something with Solr is a great idea, because you can then try 
building follow-on apps with the same solr backend in different languages and 
see how they compare.  Also, using solr often means writing less original code 
yourself, which is a big win in any language.  I'd also suggest spending some 
time with javascript and a framework like jquery because it's applicable to 
anything you might do on the web. More than anything, though, build something 
you care about, and give it to real users, and then you'll start to see how you 
really feel about it. :)

One last note... I do all my development behind screen-wrapped ssh sessions 
using vim.  If I have to set up an IDE just to use a language, its happiness 
quotient drops immediately.  This approach isn't for everybody, but it works 
best for me, so platform choices that mesh well with this preference increase 
their happiness quotient.  Don't discount that factor, whichever way you feel 
about it, since that's how you'll spend much of your time.

  -Dan


Re: [CODE4LIB] Google's Go

2010-01-06 Thread Marc Chantreux
On Wed, Jan 06, 2010 at 07:42:23AM -0500, Erin Germ wrote:
 Just wondering if anyone is or has tried using Go ( http://golang.org/ ).

i begun an experimental ISO2709 parser. It's very nice to write go code
but: 

- even the langage itself isn't stable
- the performances are not yet as good as those annonced by Rob. Pike
  during the go presentation.

personnal conclusions:

It's not ready for production but grow fast and have heavy supporters (
plan9 communauty, google, ... ). The mailing list is very active. It
will be very good for parts that need better performances than the
dynamic langages.

BTW: dynamic langages provide tons of shortcuts that will never be
available on compiled langages like go: your code will run faster but
will be longer and harder to write.

I'm actually playing with go, haskell and rakudo and i'm now pretty sure
that rakudo will be my next swiss knife (after 12 years of daily perl5
and some tasks in python, lua, php, ruby)

regards
-- 
Marc Chantreux
BibLibre, expert en logiciels libres pour l'info-doc
http://biblibre.com


Re: [CODE4LIB] c4l2010 T-Shirt Design Contest Extended to Jan. 6th

2010-01-06 Thread Rosalyn Metz
Hello All,

Today is the last day to submit your T-Shirt Designs, I'll be
closing it at noon with a times up message.  I'm sure you're already
sick of doing work, so waste your day creating a t-shirt.

Rosalyn


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Joel Marchesoni
I agree with Dan's last point about avoiding using a special IDE to develop 
with a language.  That can be expensive and/or hinder others supporting the 
application down the road.  I use vim for most of my development as well, 
although we officially use Dreamweaver at work mostly because of its Site 
features.

I also try to stick with languages that are cross-platform.  I use Linux at 
home and Windows at work, and I know that there are many developers in the same 
situation.  I like to know that if I write an application that with minimal 
tweaking it will be portable to any(ish) machine/environment.

Joel Marchesoni 
Tech Support Analyst
Hunter Library @ Western Carolina University
jma...@email.wcu.edu

-Original Message-
From: Code for Libraries [mailto:code4...@listserv.nd.edu] On Behalf Of Dan 
Chudnov
Sent: Wednesday, January 06, 2010 8:17 AM
To: CODE4LIB@LISTSERV.ND.EDU
Subject: Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you 
do it?

On Jan 5, 2010, at 10:13 PM, Ross Singer wrote:

 Dan Chudnov, for example, seems to think in Python.  When I tried
 Python, it never really clicked -- I muddled through a few projects
 but never really got it.

Actually, I think in Hoosier, but as the late Kurt Vonnegut might remind me, 
that's awfully silly.

I mostly agree with Ross, though - find something that fits your brain and lets 
you get your stuff done and stick with it.  It just might take a while.

I have used python as a main language for about seven years now and it pays off 
in many ways.  I didn't arrive at it quickly, though.  At my first regular job 
10-12 years ago I built stuff in perl, java, php, and vb, all of which turned 
into code I had to support for one user group or another for some period of 
time or another.  It's one thing to experiment with toy code, it's another 
thing to do an experiment that brings you hard data and experiences that can 
help to inform future decisions.

Here's how it went for me, but YMMV:  I knew perl first, and everything I wrote 
in perl worked quickly and was easy to install in our hosting environment but 
was hard to fix later when it broke because I couldn't read it after I'd 
forgotten what I'd done.  Java was just hard for me, period, and hard to 
install back then (tomcat wasn't particularly stable, yet, for one thing).  VB 
was super easy to develop with but meant desktop support in the long run when 
everything was moving to the web.  PHP was easy to write and install but I 
wrote a lot of bad code with holes all over the place, partly because of how 
easy it was.  After all of these experiences, and having gained some insights 
about what I preferred, I tried python, and it clicked immediately.  It wasn't 
so easy to install on a web server reliably back then, but it was doable, and 
it had all the other positives I was looking for:  I could get stuff done 
quickly, get it installed, it made sense when I went back to look a!
 
 t it again, and I tended to write things slightly more securely than I had in 
the past. I was hooked.  Seems like Ross is saying the same things about Ruby, 
for him.

None of the stuff I was building back then was intended to be widely-used or 
even depended-upon, which helped a lot, but some of it turned out to be one or 
both, and that shines a bright light on the positives and negatives of platform 
choices.  If I'd tried the languages in a different order maybe my experiences 
screwing up a lot of stuff early on would have led me to like a different fifth 
language; I definitely got better along the way.

These days I am spending more time in Java and JavaScript than I would have 
expected but find that they're both less hard than they were the last time I 
tried them both, partly because they've become easier to work with based on 
frameworks and such but also because I have more experience, period.

If you want help prioritizing which to choose first I could hardly argue with 
any of php, python, or ruby, for the same reasons others state, and as Ross 
said, building something with Solr is a great idea, because you can then try 
building follow-on apps with the same solr backend in different languages and 
see how they compare.  Also, using solr often means writing less original code 
yourself, which is a big win in any language.  I'd also suggest spending some 
time with javascript and a framework like jquery because it's applicable to 
anything you might do on the web. More than anything, though, build something 
you care about, and give it to real users, and then you'll start to see how you 
really feel about it. :)

One last note... I do all my development behind screen-wrapped ssh sessions 
using vim.  If I have to set up an IDE just to use a language, its happiness 
quotient drops immediately.  This approach isn't for everybody, but it works 
best for me, so platform choices that mesh well with this preference increase 
their happiness quotient.  Don't discount that factor, 

Re: [CODE4LIB] Online PHP course?

2010-01-06 Thread Joe Hourcle

On Wed, 6 Jan 2010, MJ Ray wrote:


Thomas Krichel kric...@openlib.org wrote:

  Joe Hourcle writes

ps.  yes, I could've used this response as an opportunity to bash
PHP ...  and I didn't, because they might be learning PHP to
migrate it to something else.


  controversial ;-)

  what's the problem(s) with PHP?


Oh please don't nuke the list from orbit like that!  I hope that
this is a balanced enough reply to keep everyone happy:

Our experience is that PHP hosting environments vary much more, most
PHP code is a mess (PHP-based software was part of 35% of the
U.S. government's National Vulnerability Database in 2008 -
http://www.coelho.net/php_cve.html) and few things (code and hosting)
move between the different major versions smoothly.  It's a personal
home page tool which has grown massively, for better or worse.

BUT! Even after all that, software.coop still supports some PHP
applications because they can work well and be very useful, though
we're under no illusions about PHP's warts.


I can sum it up in one sentance:

PHP makes it *very* easy to write insecure programs.

Of the security incidents in our department (the ones where men with guns 
come and take your hard drive and/or whole server away for an 
'investigaton'), PHP has been responsible for the majority of the 
incidents.


Part of it is the perceived simplicity -- look at how easy it is to add 
some extra functionality to your website!  You don't even need to 
understand good programming practices!  Anyone can do it!


(to be fair -- Perl used to be the software that fell into this niche 10 
years ago, but I blame Matt's Script Archive more than the language 
itself, as Perl isn't specifically for web site automation)


... and they never get their code reviewed by one of the professional 
programmers in our department, it goes live, and then, a year or so later, 
someone shows up to take our server because the security monitoring showed 
that it looks like someone managed to pull our password file off the 
system.  (never mind that (1) there's a shadow file, so /etc/passwd has no 
passwords in it, and (2) even if they got the password file, it only has 
the application users (none of whom have login privs) because it's macosx)


Then you waste a week of your time trying to convince the security gestapo 
that yes, there was a security vulnerability, and there was an incident, 
but nothing confidential was actually lost ... and then we get everyone 
who had stuff on the server bitching us out because they can't get to 
their stuff, and they had some time-sensitive information to get out, or 
whatever, and we're trying to jump through security's hoops for a week or 
two while our other projects get further and further behind.


...

Now, if they actually manage to *upload* a file to your system ... then 
expect to rebuild your whole machine from the ground up.


so um ... if you're going to use PHP ... if you're on apache, look into 
suPHP.  Consider making your website served from a read-only file system, 
and look online for other tips on hardening your server.



-Joe


oh, and I also really disike having to tye all of my stuff to one 
database.  I know mysqli makes it better, but the original mysql stuff 
still taints my perception of PHP.


I also have a dislike of ColdFusion servers, but that stems from the 'unix 
registry' crap they used (still use?) back when they were still Allaire, 
and I had a few times when the system choked and I had to rebuild all 
settings from memory the first time, and from printouts of the server 
configuration the next few times.  And then there was the time at a 
previous job when we upgraded the server and they pushed in changes that 
made the service crash every night at about 2am ... so I'd get a call 
every night to restart the thing ... until I finally wrote a watchdog 
script which by the time I got fired, was restarting the service 5-8 times 
per night ... but I actually *liked* coldfusion as a developer.


...

and so long as we're mentioning PHP, and this is code4lib -- anyone 
personally know the developer of refbase?  I tried emailing him a few 
months back offering patches to get rid of all of the 'deprecated' 
warnings when running under php5.


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Bill Dueber
On Wed, Jan 6, 2010 at 8:53 AM, Joel Marchesoni jma...@email.wcu.eduwrote:

 I agree with Dan's last point about avoiding using a special IDE to develop
 with a language.


I'll respectfully, but vehemently, disagree. I would say avoid *forcing*
everyone working on the project depend on a special IDE -- avoid lockin.
Don't avoid use.

There's a spectrum of how much an editor/environment can know about a
program. At one end is Smalltalk, where the development environment *is* the
program. At the other end is something like LISP (and, to an extent, Ruby)
where so little can be inferred from the syntax of the code that a smart
IDE can't actually know much other than how to match parentheses.

For languages where little can be known at compile time, an IDE may not buy
you very much other than syntax highlighting and code folding. For Java,
C++, etc. an IDE can know damn near everything about your project and
radically up your productivity -- variable renaming, refactoring,
context-sensitive help, jump-to-definition, method-name completion, etc. It
really is a difference that makes a difference.

I know folks say they can get the same thing from vim or emacs, but at that
level those editors are no less complex (and a good deal more opaque) than
something like Eclipse or Netbeans unless you already have a decade of
experience with them.

If you're starting in a new language, try a couple editors, too. Both
Eclipse and Netbeans are free and cross-platform, and have support for a lot
of languages. Editors like Notepad++, EditPlus, Textmate jEdit, and BBEdit
can all do very nice things with a variety of languages.



-- 
Bill Dueber
Library Systems Programmer
University of Michigan Library


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Joel Marchesoni
I should have worded my response differently.  I didn't mean one shouldn't use 
any IDE at all, but as Dan said if there is a special IDE *for that language* 
and otherwise one can't develop it I would stay away from it.

Joel

-Original Message-
From: Code for Libraries [mailto:code4...@listserv.nd.edu] On Behalf Of Bill 
Dueber
Sent: Wednesday, January 06, 2010 9:23 AM
To: CODE4LIB@LISTSERV.ND.EDU
Subject: Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you 
do it?

On Wed, Jan 6, 2010 at 8:53 AM, Joel Marchesoni jma...@email.wcu.eduwrote:

 I agree with Dan's last point about avoiding using a special IDE to develop
 with a language.


I'll respectfully, but vehemently, disagree. I would say avoid *forcing*
everyone working on the project depend on a special IDE -- avoid lockin.
Don't avoid use.

There's a spectrum of how much an editor/environment can know about a
program. At one end is Smalltalk, where the development environment *is* the
program. At the other end is something like LISP (and, to an extent, Ruby)
where so little can be inferred from the syntax of the code that a smart
IDE can't actually know much other than how to match parentheses.

For languages where little can be known at compile time, an IDE may not buy
you very much other than syntax highlighting and code folding. For Java,
C++, etc. an IDE can know damn near everything about your project and
radically up your productivity -- variable renaming, refactoring,
context-sensitive help, jump-to-definition, method-name completion, etc. It
really is a difference that makes a difference.

I know folks say they can get the same thing from vim or emacs, but at that
level those editors are no less complex (and a good deal more opaque) than
something like Eclipse or Netbeans unless you already have a decade of
experience with them.

If you're starting in a new language, try a couple editors, too. Both
Eclipse and Netbeans are free and cross-platform, and have support for a lot
of languages. Editors like Notepad++, EditPlus, Textmate jEdit, and BBEdit
can all do very nice things with a variety of languages.



-- 
Bill Dueber
Library Systems Programmer
University of Michigan Library


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Ross Singer
I definitely agree with Bill here.  There is a definitely a totemistic
attitude about vim or emacs being all the IDE I need.  Knowing your
way around vim (or possibly emacs) is certainly important -- after
all, everybody has to eventually fix something remotely -- but just
languages, some editors look or feel better.

My basic credo is that I want to find the absolute least resistance
between what I see in my head and what eventually gets run.  This
applies to my office chair, my keyboard, my monitor, operating system,
editor, language, SCM, deployment manager, etc.  Every layer provides
amperage that must be accounted for.

Because in the end, I'm spending 8+ hours a day, 5+ days a week
looking at and working on this setup; I might as well be comfortable.

Personally, I use TextMate for practically all the code I write.  I
don't actually use all the features that generally draw people to
TextMate (SCM integration, macros for automating certain tasks in
particular languages/frameworks, etc.) at all.  I just like the way it
looks, it's relatively lean and I can easily cut and paste (which is
my major knock on the character-based editors).  I have a mouse,
dammit, so let me use it.

I also use NetBeans, sometimes, although, honestly, it's only when I
need to run SQL queries against JDBC databases anymore.

If I was a real developer (meaning I wrote code intended to be
compiled, etc.), I couldn't imagine not using something like NetBeans
or Eclipse to automate some of the tedium.

-Ross.

On Wed, Jan 6, 2010 at 9:23 AM, Bill Dueber b...@dueber.com wrote:
 On Wed, Jan 6, 2010 at 8:53 AM, Joel Marchesoni jma...@email.wcu.eduwrote:

 I agree with Dan's last point about avoiding using a special IDE to develop
 with a language.


 I'll respectfully, but vehemently, disagree. I would say avoid *forcing*
 everyone working on the project depend on a special IDE -- avoid lockin.
 Don't avoid use.

 There's a spectrum of how much an editor/environment can know about a
 program. At one end is Smalltalk, where the development environment *is* the
 program. At the other end is something like LISP (and, to an extent, Ruby)
 where so little can be inferred from the syntax of the code that a smart
 IDE can't actually know much other than how to match parentheses.

 For languages where little can be known at compile time, an IDE may not buy
 you very much other than syntax highlighting and code folding. For Java,
 C++, etc. an IDE can know damn near everything about your project and
 radically up your productivity -- variable renaming, refactoring,
 context-sensitive help, jump-to-definition, method-name completion, etc. It
 really is a difference that makes a difference.

 I know folks say they can get the same thing from vim or emacs, but at that
 level those editors are no less complex (and a good deal more opaque) than
 something like Eclipse or Netbeans unless you already have a decade of
 experience with them.

 If you're starting in a new language, try a couple editors, too. Both
 Eclipse and Netbeans are free and cross-platform, and have support for a lot
 of languages. Editors like Notepad++, EditPlus, Textmate jEdit, and BBEdit
 can all do very nice things with a variety of languages.



 --
 Bill Dueber
 Library Systems Programmer
 University of Michigan Library



Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Ya'aqov Ziso
. Thanks to Ross for forestalling what might have easily sunk into yet
another platform war  
===

Discussing our professional preferences is diametrically opposed to war.
I am encouraged by our differences and ability to identify and handle them
professionally. 

Do we need mediators to maintain peace (where peace==trivialize
differences)? 
Do we need someone to help us from sinking into war? I don¹t think so. Let¹s
talk some more differences.
Ya¹aqov Ziso


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Dan Chudnov
At the risk of making this worse... Bill makes good points, and I wasn't saying 
don't use an IDE.  I meant I don't like using an IDE, so I don't want to be 
forced to, and that affects my language/tool preferences.  You might want to 
consider whether you like using a particular IDE or not, in addition to other 
considerations. 

Where I work we try hard to keep IDE-specific files and choices out of the vcs, 
 aside from maybe adding some patterns to the .ignore file to reinforce this.  
We value letting all the different developers use whatever tools they prefer, 
and we do often use different ones (emacs, vim, eclipse, coda, etc.) to work on 
the same project and the same code at the same time without stomping on each 
other's toes, which is a Good Thing.

I love you all.  Really.

  -Dan


On Jan 6, 2010, at 9:37 AM, Joel Marchesoni wrote:

 I should have worded my response differently.  I didn't mean one shouldn't 
 use any IDE at all, but as Dan said if there is a special IDE *for that 
 language* and otherwise one can't develop it I would stay away from it.
 
 Joel
 
 -Original Message-
 From: Code for Libraries [mailto:code4...@listserv.nd.edu] On Behalf Of Bill 
 Dueber
 Sent: Wednesday, January 06, 2010 9:23 AM
 To: CODE4LIB@LISTSERV.ND.EDU
 Subject: Re: [CODE4LIB] Choosing development platforms and/or tools, how'd 
 you do it?
 
 On Wed, Jan 6, 2010 at 8:53 AM, Joel Marchesoni jma...@email.wcu.eduwrote:
 
 I agree with Dan's last point about avoiding using a special IDE to develop
 with a language.
 
 
 I'll respectfully, but vehemently, disagree. I would say avoid *forcing*
 everyone working on the project depend on a special IDE -- avoid lockin.
 Don't avoid use.
 
 There's a spectrum of how much an editor/environment can know about a
 program. At one end is Smalltalk, where the development environment *is* the
 program. At the other end is something like LISP (and, to an extent, Ruby)
 where so little can be inferred from the syntax of the code that a smart
 IDE can't actually know much other than how to match parentheses.
 
 For languages where little can be known at compile time, an IDE may not buy
 you very much other than syntax highlighting and code folding. For Java,
 C++, etc. an IDE can know damn near everything about your project and
 radically up your productivity -- variable renaming, refactoring,
 context-sensitive help, jump-to-definition, method-name completion, etc. It
 really is a difference that makes a difference.
 
 I know folks say they can get the same thing from vim or emacs, but at that
 level those editors are no less complex (and a good deal more opaque) than
 something like Eclipse or Netbeans unless you already have a decade of
 experience with them.
 
 If you're starting in a new language, try a couple editors, too. Both
 Eclipse and Netbeans are free and cross-platform, and have support for a lot
 of languages. Editors like Notepad++, EditPlus, Textmate jEdit, and BBEdit
 can all do very nice things with a variety of languages.
 
 
 
 -- 
 Bill Dueber
 Library Systems Programmer
 University of Michigan Library


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread John Fereira

Joel Marchesoni wrote:

I agree with Dan's last point about avoiding using a special IDE to develop 
with a language.  That can be expensive and/or hinder others supporting the 
application down the road.  I use vim for most of my development as well, 
although we officially use Dreamweaver at work mostly because of its Site 
features.
I am a long time vi user (since about 1984) and for many years 
preferred to develop code using vi from a command line whether working 
on a unix based or windows machine.   A few years ago I started playing 
with a couple of IDEs and started using Eclipse and have become a total 
convert.   Most of the programming I do is in java (I have also been 
using the Spring Framework for about 5 years) but I also do a bit of PHP 
and since most of the development work is in web applications with with 
xml, html, css, javascript, java server pages, etc.  Eclipse handles all 
of them well.


--
John Fereira
Cornell University
Twitter: @john_fereira
Google Wave: fere...@googlewave.com


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Alejandro Garza Gonzalez
Well, I'll quickly run down why we chose Drupal (hence, PHP). I mention 
Drupal because to me it's more of a framework which just happens to have 
a CMS built on top of it =)


Before Drupal, my team knew PHP. We had PHP books in the library, 
students were learning some PHP in classes, etc.


We were lured to Drupal because other libraries were using it (AADL at 
the time). It seemed to have good code, good security, and could be 
hacked politely (or extended) and securely (if you follow the 
rules). Most of all, Drupal has good people behind it =)


Now, even though Drupal is PHP (and, as some say, PHP lets you be as 
insecure and as bad a coder you want...) the code that goes into its 
core has pretty strict coding standards. Of course you can find lots of 
modules which are not up to par, but you can depend on core to be tight.


_alejandro

marijane white said the following on 05/01/2010 05:04 p.m.:

Greetings Code4Lib,

Long time lurker, first time poster here.

I've been turning over this question in my mind for a few weeks now, and Joe
Hourcle's postscript in the Online PHP Course thread has prompted me to
finally try to ask it. =)

I'm interested in hearing how the members of this list have gone about
choosing development platforms for their library coding projects and/or
existing open source projects (ie like VuFind vs Blacklight).  For example,
did you choose a language you already were familiar with?  One you wanted to
learn more about?  Does your workplace have a standard enterprise
architecture/platform that you are required to use?  If you have chosen to
implement an existing open source project, did you choose based on the
development platform or project maturity and features or something else?

Some background -- thanks to my undergraduate computer engineering studies,
I have a pretty solid understanding of programming fundamentals, but most of
my pre-LIS work experience was in software testing and did not require me to
employ much of what I learned programming-wise, so I've mostly dabbled over
the last decade or so.  I've got a bit of experience with a bunch of
languages and I'm not married to any of them.   I also kind of like having
excuses to learn new ones.

My situation is this: I would like to eventually implement a discovery tool
at MPOW, but I am having a hell of a time choosing one.  I'm a solo
librarian on a content team at a software and information services company,
so I'm not really tied to the platforms used by the software engineering
teams here.  I know a bit of Ruby, so I've played with Blacklight some, got
it to install on Windows and managed to import a really rough Solr index.
I'm more attracted to the features in VuFind, but I don't know much PHP yet
and I haven't gotten it installed successfully yet.  My collection's
metadata is not in an ILS (yet) and not in MARC, so I've also considered
trying out more generic approaches like ajax-solr (though I don't know a lot
of javascript yet, either).  I've also given a cursory look at SOPAC and
Scriblio.  My options are wide open, and I'm having a rough time deciding
what direction to go in.  I guess it's kind of similar to someone who is new
to programming and attempting to choose their first language to learn.

I will attempt to head off a programming language religious war =) by
stating that I'm not really interested in the virtues of one platform over
another, moreso the abstract reasons one might have for selecting one.
Have any of you ever been in a similar situation?  How'd you get yourself
unstuck?  If you haven't, what do you think you might do in a situation like
mine?


-marijane


   


--
_ ___ _ _ _ _ _ _ _
*Ing. Alejandro Garza González*
Coordinación de proyectos y desarrollo de sistemas
Centro in...@te, Centro para la Innovación en Tecnología y Educación
Tecnológico de Monterrey

Tel. +52 [81] 8358.2000, Ext. 6751
Enlace intercampus: 80.689.6751, 80.788.6106
http://www.itesm.mx/innovate/

El contenido de este mensaje de datos no se considera oferta, propuesta 
o acuerdo, sino hasta que sea confirmado en documento por escrito que 
contenga la firma autógrafa del apoderado legal del ITESM. El contenido 
de este mensaje de datos es confidencial y se entiende dirigido y para 
uso exclusivo del destinatario, por lo que no podrá distribuirse y/o 
difundirse por ningún medio sin la previa autorización del emisor 
original. Si usted no es el destinatario, se le prohíbe su utilización 
total o parcial para cualquier fin.


The content of this data transmission must not be considered an offer, 
proposal, understanding or agreement unless it is confirmed in a 
document signed by a legal representative of ITESM. The content of this 
data transmission is confidential and is intended to be delivered only 
to the addressees. Therefore, it shall not be distributed and/or 
disclosed through any means without the authorization of the original 
sender. If you are not the addressee, you are forbidden from using 

[CODE4LIB] Position Announcement - Web Services Librarian - Georgia State University Library

2010-01-06 Thread Douglas Goans
**Cross-posting**

POSITION OPENING: WEB SERVICES LIBRARIAN
Georgia State University Library
Atlanta, GA

http://www.library.gsu.edu/jobs/ 

Position and Responsibilities:
Georgia State University Library seeks a creative and innovative
individual to provide leadership as the Web Services  Librarian. This
position works both independently and collaboratively to provide
expertise in the design, implementation,  monitoring and evaluation of
current and future web interfaces and technologies that provide user
access to the Library's  resources and services. The incumbent
identifies policy, technical, and programmatic needs of the Library’s
web site and  various web applications running locally or from hosted
services.

The Web Services Librarian collaborates and leads discussion with
library employees, committees, groups, and departments  regarding
website and application interface functionality. The Web Services
Librarian will provide leadership on website  policy and technical
standards, and adhere to those standards/policies while creating a
supportive, collaborative  atmosphere working with the Department Head
and management to establish policies and procedures, priorities, and 
timelines. Other responsibilities include maintaining current awareness
of digital library technologies and actively  participating in local,
national, and international meetings and organizations. As a faculty
member, the incumbent will  serve on library committees and engage in
scholarly activities.

The Web Services Librarian reports to the Head of Digital Library
Services and supervises two Web Programmer Analysts,  student workers,
and Graduate Research Assistants as needed.

Department  Campus Environment:
The Digital Library Services department uses open source and standard
web development practices to create and provide a  library web presence,
including content management, blogging, and wiki applications. The
department is responsible for  developing, customizing, and integrating
various web applications from vendors and open source platforms used by
both  internal and external customers. Leadership in the area of content
digitization, storage, and presentation will be a  growing
responsibility of the department. The library uses CONTENTdm to create
and present our digital collections on the  web, and LibGuides to
present librarian created web content to our customers, and Ex Libris
products including SFX,  MetaLib, and Voyager as a member of the GALILEO
state library consortium.

Since its 2007 renovation, the Georgia State University Library
provides one of the most attractive, open and inviting  educational
facilities in the Southeast. With over 1.5 million visitors this past
year, the library is an integral part  of the university community. It
supports both teaching and research with an expansive collection and
outstanding  assistance. The library also exhibits a new, modern image,
providing the campus with an attractive, centralized location.  Its
signature bridge, a glass link that overlooks downtown Atlanta, connects
the library’s two prominent buildings. Many  appreciate the comfort of
the library’s new interior design, often enjoying a coffee from the
cafe located on the first  floor.

Library services are supported by the Ex Libris Voyager integrated
library system. The University System of Georgia  statewide system,
GALILEO, provides access to electronic resources and other materials for
libraries throughout Georgia.  The University Library is a member of the
Association of Southeastern Research Libraries, LYRASIS, and the Atlanta
 Regional Consortium for Higher Education.

Located in the heart of downtown Atlanta, Georgia State University is
one of the country’s top urban research  universities. Over 28,000
graduate and undergraduate students enroll each semester in six
different colleges. This
diverse community offers a unique cultural and intellectual atmosphere,
with many opportunities to engage in stimulating  activities and events.
Between college sports, the performing arts and a variety of local
restaurants, the campus  location has it all.

For additional information about the Georgia State University Library:
http://www.library.gsu.edu 

Qualifications:
REQUIRED: 
* ALA-accredited Master’s degree or a terminal degree in other
relevant area such as Information Systems or Computer  Science.
* Experience with web development in a library, college or university
setting. 
* Experience with relevant standards and technologies, such as PHP,
.NET, XML, XHTML, CSS, SQL, XSLT, and JavaScript.
* Ability to think critically and analytically.
* Strong written and verbal communication skills and ability to work in
a collegial and collaborative environment.
* Commitment to user-oriented service. 
* Must be able to pass background check.

PREFERRED: 
* Supervisory experience.
* Understanding of information seeking behaviors in an academic
research environment. 
* Demonstrated experience in library website design 

[CODE4LIB] Job posting: Senior Software Infrastructure Engineer - Northwestern University Library

2010-01-06 Thread Steve DiDomenico
Position Opening:  Senior Software Infrastructure Engineer

This is an exciting opportunity to work with large-scale library server 
applications and participate in cutting-edge digital repository development at 
a major university.

JOB SUMMARY:
Position reports to the Head of Library Technology Enterprise Systems and works 
in a highly collaborative environment with library colleagues and external 
partners on the analysis, design, coding and testing of differently functioning 
systems in support of the Library's enterprise applications. The position also 
works with library colleagues and external partners on digital repository 
development, digital preservation, metadata, collections, and services 
development to explore, adapt, and implement emerging repository technologies.

KEY RESPONSIBILITIES:  (See posting for additional info)
1. Designs, develops, implements, and maintains specifications and 
application code for library's enterprise systems, including the digital object 
repository;
2. Designs, writes, tests, and debugs code internal to systems as well as 
external workflow, ingestion, metadata, and other tools;
3. Ensures established data standards are supported for metadata 
management, business logic, digital preservation, data modeling and metadata 
workflow mgmt.;
4. Performs regular system maintenance for the library's enterprise systems;
5. Makes changes to the backend system in order to achieve proper 
performance;

MINIMUM QUALIFICATIONS: (See posting for additional info)
1. Four - six years of development experience in an object-oriented 
environment;
2. Advanced web development experience w/languages such as Java, PHP, Perl, 
or Visual Basic and frameworks/standards such as JMS, Spring, or Hibernate;
3. Experience with languages/technologies such as XML, XSLT, XPATH, SAX, 
DOM, SQL, JavaScript, and object-oriented programming;
4. Experience with MySQL or Oracle on enterprise level systems;
5. Knowledge of web server software including Apache and Tomcat;
6. Administration of applications running on Linux servers, including shell 
scripting;
7. Strong organizational, analytical,  verbal/written communication skills;
8. BS in Computer Science, Information Science, or the equivalent 
combination of education, training, and experience from which comparable skills 
can be acquired;
9. Experience designing, developing, and implementing multiple software 
applications;
10.  Experience with Library IT or IT in a higher education environment.

TO APPLY:  
Visit Northwestern University's Jobs web site at:
http://www.northwestern.edu/hr/jobs/ Reference Job Opening ID # 15393


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Emily Lynema
If you are looking for abstract reasons to determine which programming tool
to use for a library project, it's worth considering long term support for
your institution. If the future technical support at your institution is 1
librarian-turned-coder (and you don't have strong personal preferences), you
might want to think about which languages/tools/frameworks are commonly
available amongst this pool (I think you'll find PHP/Ruby much more often
than Java, for example). That way your institution isn't up-a-creek when you
leave and they hire your replacement.

-emily lynema
NCSU Libraries

2010/1/6 Alejandro Garza Gonzalez alejandro.ga...@itesm.mx

 Well, I'll quickly run down why we chose Drupal (hence, PHP). I mention
 Drupal because to me it's more of a framework which just happens to have a
 CMS built on top of it =)

 Before Drupal, my team knew PHP. We had PHP books in the library, students
 were learning some PHP in classes, etc.

 We were lured to Drupal because other libraries were using it (AADL at the
 time). It seemed to have good code, good security, and could be hacked
 politely (or extended) and securely (if you follow the rules). Most of
 all, Drupal has good people behind it =)

 Now, even though Drupal is PHP (and, as some say, PHP lets you be as
 insecure and as bad a coder you want...) the code that goes into its core
 has pretty strict coding standards. Of course you can find lots of modules
 which are not up to par, but you can depend on core to be tight.

 _alejandro

 marijane white said the following on 05/01/2010 05:04 p.m.:

  Greetings Code4Lib,

 Long time lurker, first time poster here.

 I've been turning over this question in my mind for a few weeks now, and
 Joe
 Hourcle's postscript in the Online PHP Course thread has prompted me to
 finally try to ask it. =)

 I'm interested in hearing how the members of this list have gone about
 choosing development platforms for their library coding projects and/or
 existing open source projects (ie like VuFind vs Blacklight).  For
 example,
 did you choose a language you already were familiar with?  One you wanted
 to
 learn more about?  Does your workplace have a standard enterprise
 architecture/platform that you are required to use?  If you have chosen to
 implement an existing open source project, did you choose based on the
 development platform or project maturity and features or something else?

 Some background -- thanks to my undergraduate computer engineering
 studies,
 I have a pretty solid understanding of programming fundamentals, but most
 of
 my pre-LIS work experience was in software testing and did not require me
 to
 employ much of what I learned programming-wise, so I've mostly dabbled
 over
 the last decade or so.  I've got a bit of experience with a bunch of
 languages and I'm not married to any of them.   I also kind of like having
 excuses to learn new ones.

 My situation is this: I would like to eventually implement a discovery
 tool
 at MPOW, but I am having a hell of a time choosing one.  I'm a solo
 librarian on a content team at a software and information services
 company,
 so I'm not really tied to the platforms used by the software engineering
 teams here.  I know a bit of Ruby, so I've played with Blacklight some,
 got
 it to install on Windows and managed to import a really rough Solr index.
 I'm more attracted to the features in VuFind, but I don't know much PHP
 yet
 and I haven't gotten it installed successfully yet.  My collection's
 metadata is not in an ILS (yet) and not in MARC, so I've also considered
 trying out more generic approaches like ajax-solr (though I don't know a
 lot
 of javascript yet, either).  I've also given a cursory look at SOPAC and
 Scriblio.  My options are wide open, and I'm having a rough time deciding
 what direction to go in.  I guess it's kind of similar to someone who is
 new
 to programming and attempting to choose their first language to learn.

 I will attempt to head off a programming language religious war =) by
 stating that I'm not really interested in the virtues of one platform over
 another, moreso the abstract reasons one might have for selecting one.
 Have any of you ever been in a similar situation?  How'd you get yourself
 unstuck?  If you haven't, what do you think you might do in a situation
 like
 mine?


 -marijane





 --
 _ ___ _ _ _ _ _ _ _
 *Ing. Alejandro Garza González*
 Coordinación de proyectos y desarrollo de sistemas
 Centro in...@te, Centro para la Innovación en Tecnología y Educación
 Tecnológico de Monterrey

 Tel. +52 [81] 8358.2000, Ext. 6751
 Enlace intercampus: 80.689.6751, 80.788.6106
 http://www.itesm.mx/innovate/

 El contenido de este mensaje de datos no se considera oferta, propuesta o
 acuerdo, sino hasta que sea confirmado en documento por escrito que contenga
 la firma autógrafa del apoderado legal del ITESM. El contenido de este
 mensaje de datos es confidencial y se entiende dirigido y para uso exclusivo
 

Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Glen Newton
Ross wrote:
 I honestly think choosing the best* development language is very 
 similar to how one settles on politics, religion, diet, etc. 
 Environment plays a part, of course, but, in the end, what generally 
 works best is the language that jibes best with you and your 
 personality.  Since you've dabbled with several different languages, 
 you've had to have come across this - some languages just feel 
 better than others.  This is, however, an entirely personal
 choice.  

I also think that the IDEs or editors (and languages, like Ross is
pointing out) one chooses is connected to an amalgam of a person's 
1 - history and experiences, 
2 - mode of learning/working

On #2 and editors/IDEs, I've written a little more extensively on this
pet theory of mine here: 
 http://zzzoot.blogspot.com/2009/07/emacs-mode-and-learning-modes.html
 My theory is that - like learning, where it has been established that
 different people learn in different ways (Visual/Verbal,
 Visual/Nonverbal, Auditory/Verbal, Tactile/Kinesthetic) - I believe
 that particular modes of human-machine interaction are better suited
 to some individuals than others. 

-Glen

Dan wrote:
 At the risk of making this worse... Bill makes good points, and I
 wasn't saying don't use an IDE.  I meant I don't like using an IDE,
 so I don't want to be forced to, and that affects my language/tool
 preferences.  You might want to consider whether you like using a
 particular IDE or not, in addition to other considerations.   
 
  Where I work we try hard to keep IDE-specific files and choices out
  of the vcs,  aside from maybe adding some patterns to the .ignore
  file to reinforce this.  We value letting all the different
  developers use whatever tools they prefer, and we do often use
  different ones (emacs, vim, eclipse, coda, etc.) to work on the
  same project and the same code at the same time without stomping on
  each other's toes, which is a Good Thing. 
 
 I love you all.  Really.
 
   -Dan
 
 
 On Jan 6, 2010, at 9:37 AM, Joel Marchesoni wrote:
 
 I should have worded my response differently.  I didn't mean one
 shouldn't use any IDE at all, but as Dan said if there is a special
 IDE *for that language* and otherwise one can't develop it I would
 stay away from it. 
   
  Joel 
   
  -Original Message- 
  From: Code for Libraries [mailto:code4...@listserv.nd.edu] On
  Behalf Of Bill Dueber 
  Sent: Wednesday, January 06, 2010 9:23 AM 
  To: CODE4LIB@LISTSERV.ND.EDU 
  Subject: Re: [CODE4LIB] Choosing development platforms and/or
  tools, how'd you do it? 
   
  On Wed, Jan 6, 2010 at 8:53 AM, Joel Marchesoni
  jma...@email.wcu.eduwrote: 
   
  I agree with Dan's last point about avoiding using a special IDE
 to develop 
  with a language. 
   
   
  I'll respectfully, but vehemently, disagree. I would say avoid
 *forcing* 
  everyone working on the project depend on a special IDE -- avoid
 lockin. 
  Don't avoid use. 
   
  There's a spectrum of how much an editor/environment can know
 about a 
  program. At one end is Smalltalk, where the development
 environment *is* the 
  program. At the other end is something like LISP (and, to an
 extent, Ruby) 
  where so little can be inferred from the syntax of the code that a
 smart 
  IDE can't actually know much other than how to match parentheses. 
   
  For languages where little can be known at compile time, an IDE
 may not buy 
  you very much other than syntax highlighting and code folding. For
 Java, 
  C++, etc. an IDE can know damn near everything about your project
 and 
  radically up your productivity -- variable renaming, refactoring, 
  context-sensitive help, jump-to-definition, method-name
 completion, etc. It 
  really is a difference that makes a difference. 
   
  I know folks say they can get the same thing from vim or emacs,
 but at that 
  level those editors are no less complex (and a good deal more
 opaque) than 
  something like Eclipse or Netbeans unless you already have a
 decade of 
  experience with them. 
   
  If you're starting in a new language, try a couple editors,
 too. Both 
  Eclipse and Netbeans are free and cross-platform, and have support
 for a lot 
  of languages. Editors like Notepad++, EditPlus, Textmate jEdit,
 and BBEdit 
  can all do very nice things with a variety of languages. 
   
   
   
  --  
  Bill Dueber 
  Library Systems Programmer 
  University of Michigan Library 
  


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Gabriel Farrell
On Wed, Jan 06, 2010 at 09:23:09AM -0500, Bill Dueber wrote:
 There's a spectrum of how much an editor/environment can know about a
 program. At one end is Smalltalk, where the development environment *is* the
 program. At the other end is something like LISP (and, to an extent, Ruby)
 where so little can be inferred from the syntax of the code that a smart
 IDE can't actually know much other than how to match parentheses.

You've never tried SLIME in Emacs.  All kinds of fancy LISPness for
pretty much everything you mention below.

 For languages where little can be known at compile time, an IDE may not buy
 you very much other than syntax highlighting and code folding. For Java,
 C++, etc. an IDE can know damn near everything about your project and
 radically up your productivity -- variable renaming, refactoring,
 context-sensitive help, jump-to-definition, method-name completion, etc. It
 really is a difference that makes a difference.
 
 I know folks say they can get the same thing from vim or emacs, but at that
 level those editors are no less complex (and a good deal more opaque) than
 something like Eclipse or Netbeans unless you already have a decade of
 experience with them.

I guess I did say that, but I'd argue that the opacity depends 
on your definition of opaque.  And I'd say it's more like five 
years.  Vim4life!  :)


Gabriel


[CODE4LIB] DC-2010 Call for Papers

2010-01-06 Thread Julie Allinson

Please accept our apologies for cross-posting.

==
DC-2010 Call for Papers
==

International Conference on Dublin Core and Metadata Applications:
Making Metadata Work Harder: Celebrating 15 Year of Dublin Core

20-22 October 2010, Pittsburgh, Pennsylvania, U.S.A.

Co-located with the Annual Meeting of ASIST (24-27 October 2010)

--
DEADLINES  IMPORTANT DATES:

* Papers/reports/posters submission: 2 April 2010
* Acceptance notification: 14 May 2010
* Camera-ready copy due: 11 June 2010
--

DC-2010 marks the 15th anniversary of Dublin Core and the 10th year of 
the Annual Conference. To celebrate and reflect on the past and future, 
conference participants will engage in investigations in both research 
and application entailing advances that make metadata work harder in 
ways beyond the originally identified need for better resource 
discovery. The DCMI Abstract Model, the refined concept of Application 
Profiles and the initial Description Set Profile specification, 
represent an inflection point in the trajectory of metadata design and 
deployment in the service of human information needs. But all is not 
perfect and we have much to learn from sharing experience. DC-2010, will 
take stock of progress, look to the future and celebrate the broad scope 
of research and applied work in making metadata work harder.


Beyond the conference theme, papers, reports, and poster submissions are 
welcome on a wide range of metadata topics, such as:


--Metadata principles, guidelines, and best practices
--Metadata quality, normalization, improvement and mapping
--Conceptual models and frameworks (e.g., RDF, DCAM, OAIS)
--Application profiles
--Metadata interoperability across domains, languages, time, structures, 
and scales.
--Cross-domain metadata uses (e.g., recordkeeping, preservation, 
curation, institutional repositories, publishing)
--Domain metadata (e.g., for corporations, cultural memory institutions, 
education, government, and scientific fields)
--Bibliographic standards (e.g., RDA, FRBR, subject headings) as 
Semantic Web vocabularies

--Accessibility metadata
--Metadata for scientific data, e-Science and grid applications
--Social tagging and user participation in building metadata
--Knowledge Organization Systems (e.g., ontologies, taxonomies, 
authority files, folksonomies, and thesauri) and Simple Knowledge 
Organization Systems (SKOS)

--Ontology design and development
--Integration of metadata and ontologies
--Metadata generation (methods, tools, and practices)
--Search engines and metadata
--Semantic Web metadata and applications
--Vocabulary registries and registry services

SUBMISSIONS

Authors wishing to submit papers, reports, or poster proposals may do so 
through the DCMI Peer Review System at 
http://dcpapers.dublincore.org/index.php/pubs/. Author registration and 
instructions for the submission process appear under the “Information 
for Authors” link. Author Guidelines for full papers, project reports 
and posters/demonstrations are available through the DCMI Peer Review 
System. All submissions to the DC-2010 Conference Proceedings will be 
peer-reviewed by the International Program Committee. All submissions 
must be in English. Accepted submissions will be published in the 
official electronic Conference Proceedings. Unless previously arranged, 
accepted papers, project reports and posters must be presented in 
Pittsburgh by at least one of their authors.


All submitting authors must provide basic information regarding current 
professional positions and affiliations as a condition of acceptance and 
publication.


FULL PAPERS (8-10 pages)

Full papers either describe innovative work in detail or provide 
critical, well-referenced overviews of key developments or good practice 
in the areas outlined above. Full papers will be assessed using the 
following criteria:


--Originality of the approach to implementation
--Quality of the contribution to the implementation community
--Significance of the results presented
--Clarity of presentation

PROJECT REPORTS (4-5 pages)

Project reports describe a specific model, application, or activity in a 
concise, prescribed format. Project reports will be assessed using the 
following criteria:


--Conciseness and completeness of technical description
--Usability of the technical description by other potential implementers
--Clarity of presentation

POSTERS  DEMONSTRATIONS (1-2 pages)

Posters are for the presentation of projects or research under 
development or late-breaking results. Poster proposals should consist of 
a one-two page extended abstract. Posters will be assessed using the 
following criteria:


--Concise statement of research or project goals and milestones
--Significance of the research or project
--Framing of key barriers and future research
--Statement of results and accomplishments
--Clarity of 

Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Glen Newton
+1  [A good informed response]
-glen


Gabriel wrote:
 On Wed, Jan 06, 2010 at 09:23:09AM -0500, Bill Dueber wrote:
  There's a spectrum of how much an editor/environment can know about a
  program. At one end is Smalltalk, where the development environment *is* the
  program. At the other end is something like LISP (and, to an extent, Ruby)
  where so little can be inferred from the syntax of the code that a smart
  IDE can't actually know much other than how to match parentheses.

 You've never tried SLIME in Emacs.  All kinds of fancy LISPness for
 pretty much everything you mention below.
  For languages where little can be known at compile time, an IDE may not buy
  you very much other than syntax highlighting and code folding. For Java,
  C++, etc. an IDE can know damn near everything about your project and
  radically up your productivity -- variable renaming, refactoring,
  context-sensitive help, jump-to-definition, method-name completion, etc. It
  really is a difference that makes a difference.
  
  I know folks say they can get the same thing from vim or emacs, but at that
  level those editors are no less complex (and a good deal more opaque) than
  something like Eclipse or Netbeans unless you already have a decade of
  experience with them.
 
 I guess I did say that, but I'd argue that the opacity depends 
 on your definition of opaque.  And I'd say it's more like five 
 years.  Vim4life!  :)
 
 Gabriel


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Jonathan Rochkind
Taking time to explore is rarely a a waste of time in this area, because 
exploring is how you learn in programming/software engineering.


marijane white wrote:

I may have worded that poorly, abstract reasons to choose a language was
exactly what I was looking for.

Your suggestion matches my natural inclinations, I think I just needed some
reassurance that taking the time to explore wouldn't be a waste of time.
Thank you. =)


On Tue, Jan 5, 2010 at 7:13 PM, Ross Singer rossfsin...@gmail.com wrote:

  

I realize you didn't want to start a religious war nor were you
interested in the abstract reasons people chose a particular language,
that being said...

I honestly think choosing the best* development language is very
similar to how one settles on politics, religion, diet, etc.
Environment plays a part, of course, but, in the end, what generally
works best is the language that jibes best with you and your
personality.  Since you've dabbled with several different languages,
you've had to have come across this - some languages just feel
better than others.  This is, however, an entirely personal choice.

Dan Chudnov, for example, seems to think in Python.  When I tried
Python, it never really clicked -- I muddled through a few projects
but never really got it.  I then got introduced to Ruby, everything
made sense, and I never looked back.  I recently did a project in
Groovy/Grails and my takeaway was that it was a scripting language
that only somebody that had spent their career as a Java developer
could love.  My coworker (who has spent his career as a Java
developer) LOVES Groovy.  He thinks Ruby is a Fisher-Price language.
To each their own.

Since you don't seem to have institutional constraints on what you can
develop in, I would recommend you try something like this:

Take a handful of languages that look interesting to you and try
writing a simple app to take some of your data, model it and shove it
into Solr and make an interface to look at it.  Solr's pretty perfect
for this sort of project:  it's super simple to work with and
immediately gives you something powerful and versatile to wrap your
app around.  If you can't make something useful quickly around Solr,
then move on to the next language because that one's not for you.

If the ones that click happen to be PHP, Python or Ruby, well, there
you go.  If not, I, for one, look forward to your new Lua (or
whatever) based discovery interface.

Ultimately, any project you choose for your discovery interface is
going to require a lot of customization to make it work the way you
want -- the key is finding the environment that stands the least in
the way between turning what's in your head into a working app.

Good luck,
-Ross.

On Tue, Jan 5, 2010 at 6:04 PM, marijane white marijane.wh...@gmail.com
wrote:


Greetings Code4Lib,

Long time lurker, first time poster here.

I've been turning over this question in my mind for a few weeks now, and
  

Joe


Hourcle's postscript in the Online PHP Course thread has prompted me to
finally try to ask it. =)

I'm interested in hearing how the members of this list have gone about
choosing development platforms for their library coding projects and/or
existing open source projects (ie like VuFind vs Blacklight).  For
  

example,


did you choose a language you already were familiar with?  One you wanted
  

to


learn more about?  Does your workplace have a standard enterprise
architecture/platform that you are required to use?  If you have chosen
  

to


implement an existing open source project, did you choose based on the
development platform or project maturity and features or something else?

Some background -- thanks to my undergraduate computer engineering
  

studies,


I have a pretty solid understanding of programming fundamentals, but most
  

of


my pre-LIS work experience was in software testing and did not require me
  

to


employ much of what I learned programming-wise, so I've mostly dabbled
  

over


the last decade or so.  I've got a bit of experience with a bunch of
languages and I'm not married to any of them.   I also kind of like
  

having


excuses to learn new ones.

My situation is this: I would like to eventually implement a discovery
  

tool


at MPOW, but I am having a hell of a time choosing one.  I'm a solo
librarian on a content team at a software and information services
  

company,


so I'm not really tied to the platforms used by the software engineering
teams here.  I know a bit of Ruby, so I've played with Blacklight some,
  

got


it to install on Windows and managed to import a really rough Solr index.
I'm more attracted to the features in VuFind, but I don't know much PHP
  

yet


and I haven't gotten it installed successfully yet.  My collection's
metadata is not in an ILS (yet) and not in MARC, so I've also considered
trying out more generic approaches 

Re: [CODE4LIB] Online PHP course?

2010-01-06 Thread Tod Olson
On Jan 5, 2010, at 3:36 PM, Tod Olson wrote:

 One of our staff needs to learn PHP, and an online course is preferred.  Is 
 there an online PHP course that any of you would recommend?


Thanks to the list for all of the responses.  Very helpful.

-Tod

Tod Olson t...@uchicago.edu
Systems Librarian
University of Chicago Library


Re: [CODE4LIB] Online PHP course?

2010-01-06 Thread Tim Spalding
I wonder if Code4Lib would ever be a good outlet for online
programming tutorials or hack sessions. I mean, get 10 people on
Etherpad or CodeArmy together, and Skype, and you could learn a lot,
and do a lot.

Tim


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread marijane white
Very true, however, since programming is not part of my core job duties, I'd
like to avoid spending much time on something I won't end up using.  But
that doesn't mean not exploring, I think it just means choosing carefully.
This discussion has steered me towards focusing on exploring things I'm
really interested in, rather than just trying everything that might be
available.


On Wed, Jan 6, 2010 at 10:40 AM, Jonathan Rochkind rochk...@jhu.edu wrote:

 Taking time to explore is rarely a a waste of time in this area, because
 exploring is how you learn in programming/software engineering.


 marijane white wrote:

 I may have worded that poorly, abstract reasons to choose a language was
 exactly what I was looking for.

 Your suggestion matches my natural inclinations, I think I just needed
 some
 reassurance that taking the time to explore wouldn't be a waste of time.
 Thank you. =)


 On Tue, Jan 5, 2010 at 7:13 PM, Ross Singer rossfsin...@gmail.com
 wrote:



 I realize you didn't want to start a religious war nor were you
 interested in the abstract reasons people chose a particular language,
 that being said...

 I honestly think choosing the best* development language is very
 similar to how one settles on politics, religion, diet, etc.
 Environment plays a part, of course, but, in the end, what generally
 works best is the language that jibes best with you and your
 personality.  Since you've dabbled with several different languages,
 you've had to have come across this - some languages just feel
 better than others.  This is, however, an entirely personal choice.

 Dan Chudnov, for example, seems to think in Python.  When I tried
 Python, it never really clicked -- I muddled through a few projects
 but never really got it.  I then got introduced to Ruby, everything
 made sense, and I never looked back.  I recently did a project in
 Groovy/Grails and my takeaway was that it was a scripting language
 that only somebody that had spent their career as a Java developer
 could love.  My coworker (who has spent his career as a Java
 developer) LOVES Groovy.  He thinks Ruby is a Fisher-Price language.
 To each their own.

 Since you don't seem to have institutional constraints on what you can
 develop in, I would recommend you try something like this:

 Take a handful of languages that look interesting to you and try
 writing a simple app to take some of your data, model it and shove it
 into Solr and make an interface to look at it.  Solr's pretty perfect
 for this sort of project:  it's super simple to work with and
 immediately gives you something powerful and versatile to wrap your
 app around.  If you can't make something useful quickly around Solr,
 then move on to the next language because that one's not for you.

 If the ones that click happen to be PHP, Python or Ruby, well, there
 you go.  If not, I, for one, look forward to your new Lua (or
 whatever) based discovery interface.

 Ultimately, any project you choose for your discovery interface is
 going to require a lot of customization to make it work the way you
 want -- the key is finding the environment that stands the least in
 the way between turning what's in your head into a working app.

 Good luck,
 -Ross.

 On Tue, Jan 5, 2010 at 6:04 PM, marijane white marijane.wh...@gmail.com
 
 wrote:


 Greetings Code4Lib,

 Long time lurker, first time poster here.

 I've been turning over this question in my mind for a few weeks now, and


 Joe


 Hourcle's postscript in the Online PHP Course thread has prompted me to
 finally try to ask it. =)

 I'm interested in hearing how the members of this list have gone about
 choosing development platforms for their library coding projects and/or
 existing open source projects (ie like VuFind vs Blacklight).  For


 example,


 did you choose a language you already were familiar with?  One you
 wanted


 to


 learn more about?  Does your workplace have a standard enterprise
 architecture/platform that you are required to use?  If you have chosen


 to


 implement an existing open source project, did you choose based on the
 development platform or project maturity and features or something else?

 Some background -- thanks to my undergraduate computer engineering


 studies,


 I have a pretty solid understanding of programming fundamentals, but
 most


 of


 my pre-LIS work experience was in software testing and did not require
 me


 to


 employ much of what I learned programming-wise, so I've mostly dabbled


 over


 the last decade or so.  I've got a bit of experience with a bunch of
 languages and I'm not married to any of them.   I also kind of like


 having


 excuses to learn new ones.

 My situation is this: I would like to eventually implement a discovery


 tool


 at MPOW, but I am having a hell of a time choosing one.  I'm a solo
 librarian on a content team at a software and information services


 company,


 so I'm not really tied to the platforms used by the software engineering
 

Re: [CODE4LIB] Online PHP course?

2010-01-06 Thread Ross Singer
Seems to me that Dan's Hacker 101/201 preconfs fall into this sort
of category.

I think it would be really useful to see at a conference that didn't
already appeal to the hacker set, like CiL or LITA or something.

Even Access.

-Ross.

On Wed, Jan 6, 2010 at 2:20 PM, Tim Spalding t...@librarything.com wrote:
 I wonder if Code4Lib would ever be a good outlet for online
 programming tutorials or hack sessions. I mean, get 10 people on
 Etherpad or CodeArmy together, and Skype, and you could learn a lot,
 and do a lot.

 Tim



Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Naomi Dushay

Marijane,

It also makes sense to examine the available software for what you  
wish to accomplish.  Available software goes beyond current features to
- maintainability  (one reason Stanford switched to Blacklight)   I'll  
talk a little bit about this in our Code4Lib 2010 presentation about  
testing.

- community
- active development
- potential applicability to additional projects.   (we like  
Blacklight for its ability to run on any solr index, regardless of  
what's in there)


probably some other stuff I've left out.

Our experience at Stanford Libraries is that the common conventions of  
Rails give us a lot more ease in reading each others' code.


- Naomi

On Jan 5, 2010, at 3:04 PM, marijane white wrote:


Greetings Code4Lib,

Long time lurker, first time poster here.

I've been turning over this question in my mind for a few weeks now,  
and Joe
Hourcle's postscript in the Online PHP Course thread has prompted me  
to

finally try to ask it. =)

I'm interested in hearing how the members of this list have gone about
choosing development platforms for their library coding projects and/ 
or
existing open source projects (ie like VuFind vs Blacklight).  For  
example,
did you choose a language you already were familiar with?  One you  
wanted to

learn more about?  Does your workplace have a standard enterprise
architecture/platform that you are required to use?  If you have  
chosen to

implement an existing open source project, did you choose based on the
development platform or project maturity and features or something  
else?


Some background -- thanks to my undergraduate computer engineering  
studies,
I have a pretty solid understanding of programming fundamentals, but  
most of
my pre-LIS work experience was in software testing and did not  
require me to
employ much of what I learned programming-wise, so I've mostly  
dabbled over

the last decade or so.  I've got a bit of experience with a bunch of
languages and I'm not married to any of them.   I also kind of like  
having

excuses to learn new ones.

My situation is this: I would like to eventually implement a  
discovery tool

at MPOW, but I am having a hell of a time choosing one.  I'm a solo
librarian on a content team at a software and information services  
company,
so I'm not really tied to the platforms used by the software  
engineering
teams here.  I know a bit of Ruby, so I've played with Blacklight  
some, got
it to install on Windows and managed to import a really rough Solr  
index.
I'm more attracted to the features in VuFind, but I don't know much  
PHP yet

and I haven't gotten it installed successfully yet.  My collection's
metadata is not in an ILS (yet) and not in MARC, so I've also  
considered
trying out more generic approaches like ajax-solr (though I don't  
know a lot
of javascript yet, either).  I've also given a cursory look at SOPAC  
and
Scriblio.  My options are wide open, and I'm having a rough time  
deciding
what direction to go in.  I guess it's kind of similar to someone  
who is new

to programming and attempting to choose their first language to learn.

I will attempt to head off a programming language religious war =) by
stating that I'm not really interested in the virtues of one  
platform over

another, moreso the abstract reasons one might have for selecting one.
Have any of you ever been in a similar situation?  How'd you get  
yourself
unstuck?  If you haven't, what do you think you might do in a  
situation like

mine?


-marijane


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Sharon Foster
I'm glad someone mentioned maintainability. I used to work in embedded
systems, where design, testing, and maintainability were of utmost
importance, and coding is just the brief stage in between design and
test. I lived by the adage, Code as if the person who will maintain
your code is a homicidal maniac who knows where you live.

Sharon M. Foster, JD, MLS
Technology Librarian
http://firstgentrekkie.blogspot.com/
Have you tried switching it off and on again?




On Wed, Jan 6, 2010 at 3:24 PM, Naomi Dushay ndus...@stanford.edu wrote:
 Marijane,

 It also makes sense to examine the available software for what you wish to
 accomplish.  Available software goes beyond current features to
 - maintainability  (one reason Stanford switched to Blacklight)   I'll talk
 a little bit about this in our Code4Lib 2010 presentation about testing.
 - community
 - active development
 - potential applicability to additional projects.   (we like Blacklight for
 its ability to run on any solr index, regardless of what's in there)

 probably some other stuff I've left out.

 Our experience at Stanford Libraries is that the common conventions of Rails
 give us a lot more ease in reading each others' code.

 - Naomi

 On Jan 5, 2010, at 3:04 PM, marijane white wrote:

 Greetings Code4Lib,

 Long time lurker, first time poster here.

 I've been turning over this question in my mind for a few weeks now, and
 Joe
 Hourcle's postscript in the Online PHP Course thread has prompted me to
 finally try to ask it. =)

 I'm interested in hearing how the members of this list have gone about
 choosing development platforms for their library coding projects and/or
 existing open source projects (ie like VuFind vs Blacklight).  For
 example,
 did you choose a language you already were familiar with?  One you wanted
 to
 learn more about?  Does your workplace have a standard enterprise
 architecture/platform that you are required to use?  If you have chosen to
 implement an existing open source project, did you choose based on the
 development platform or project maturity and features or something else?

 Some background -- thanks to my undergraduate computer engineering
 studies,
 I have a pretty solid understanding of programming fundamentals, but most
 of
 my pre-LIS work experience was in software testing and did not require me
 to
 employ much of what I learned programming-wise, so I've mostly dabbled
 over
 the last decade or so.  I've got a bit of experience with a bunch of
 languages and I'm not married to any of them.   I also kind of like having
 excuses to learn new ones.

 My situation is this: I would like to eventually implement a discovery
 tool
 at MPOW, but I am having a hell of a time choosing one.  I'm a solo
 librarian on a content team at a software and information services
 company,
 so I'm not really tied to the platforms used by the software engineering
 teams here.  I know a bit of Ruby, so I've played with Blacklight some,
 got
 it to install on Windows and managed to import a really rough Solr index.
 I'm more attracted to the features in VuFind, but I don't know much PHP
 yet
 and I haven't gotten it installed successfully yet.  My collection's
 metadata is not in an ILS (yet) and not in MARC, so I've also considered
 trying out more generic approaches like ajax-solr (though I don't know a
 lot
 of javascript yet, either).  I've also given a cursory look at SOPAC and
 Scriblio.  My options are wide open, and I'm having a rough time deciding
 what direction to go in.  I guess it's kind of similar to someone who is
 new
 to programming and attempting to choose their first language to learn.

 I will attempt to head off a programming language religious war =) by
 stating that I'm not really interested in the virtues of one platform over
 another, moreso the abstract reasons one might have for selecting one.
 Have any of you ever been in a similar situation?  How'd you get yourself
 unstuck?  If you haven't, what do you think you might do in a situation
 like
 mine?


 -marijane



Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread marijane white
I've read about Blacklight's ability to run on any Solr index, but I've
struggled to make it work with mine.  Honestly, I've been left with the
impression that my data should be in MARC if I want to use it.  Is there
some documentation on this somewhere that I've overlooked?  (Maybe I should
ask this on the BL list)


On Wed, Jan 6, 2010 at 12:24 PM, Naomi Dushay ndus...@stanford.edu wrote:

 Marijane,

 It also makes sense to examine the available software for what you wish to
 accomplish.  Available software goes beyond current features to
 - maintainability  (one reason Stanford switched to Blacklight)   I'll talk
 a little bit about this in our Code4Lib 2010 presentation about testing.
 - community
 - active development
 - potential applicability to additional projects.   (we like Blacklight for
 its ability to run on any solr index, regardless of what's in there)

 probably some other stuff I've left out.

 Our experience at Stanford Libraries is that the common conventions of
 Rails give us a lot more ease in reading each others' code.

 - Naomi


 On Jan 5, 2010, at 3:04 PM, marijane white wrote:

  Greetings Code4Lib,

 Long time lurker, first time poster here.

 I've been turning over this question in my mind for a few weeks now, and
 Joe
 Hourcle's postscript in the Online PHP Course thread has prompted me to
 finally try to ask it. =)

 I'm interested in hearing how the members of this list have gone about
 choosing development platforms for their library coding projects and/or
 existing open source projects (ie like VuFind vs Blacklight).  For
 example,
 did you choose a language you already were familiar with?  One you wanted
 to
 learn more about?  Does your workplace have a standard enterprise
 architecture/platform that you are required to use?  If you have chosen to
 implement an existing open source project, did you choose based on the
 development platform or project maturity and features or something else?

 Some background -- thanks to my undergraduate computer engineering
 studies,
 I have a pretty solid understanding of programming fundamentals, but most
 of
 my pre-LIS work experience was in software testing and did not require me
 to
 employ much of what I learned programming-wise, so I've mostly dabbled
 over
 the last decade or so.  I've got a bit of experience with a bunch of
 languages and I'm not married to any of them.   I also kind of like having
 excuses to learn new ones.

 My situation is this: I would like to eventually implement a discovery
 tool
 at MPOW, but I am having a hell of a time choosing one.  I'm a solo
 librarian on a content team at a software and information services
 company,
 so I'm not really tied to the platforms used by the software engineering
 teams here.  I know a bit of Ruby, so I've played with Blacklight some,
 got
 it to install on Windows and managed to import a really rough Solr index.
 I'm more attracted to the features in VuFind, but I don't know much PHP
 yet
 and I haven't gotten it installed successfully yet.  My collection's
 metadata is not in an ILS (yet) and not in MARC, so I've also considered
 trying out more generic approaches like ajax-solr (though I don't know a
 lot
 of javascript yet, either).  I've also given a cursory look at SOPAC and
 Scriblio.  My options are wide open, and I'm having a rough time deciding
 what direction to go in.  I guess it's kind of similar to someone who is
 new
 to programming and attempting to choose their first language to learn.

 I will attempt to head off a programming language religious war =) by
 stating that I'm not really interested in the virtues of one platform over
 another, moreso the abstract reasons one might have for selecting one.
 Have any of you ever been in a similar situation?  How'd you get yourself
 unstuck?  If you haven't, what do you think you might do in a situation
 like
 mine?


 -marijane




[CODE4LIB] Code4Lib Journal, article accepted, Open Source in Name, but not in Nature

2010-01-06 Thread Jonathan Rochkind

Ms. Schaefer,

I'm pleased to tell you that your recent proposal for the article Open 
Source in Name, but not in Nature has been provisionally accepted to 
the Code4Lib Journal. The editorial committee is interested in your 
proposal, and would like to see a draft. As a member of the editorial 
committee, I will be your contact for this article, and will work with 
you to get it ready for publication.


I'm afraid that due to the holiday season, we've gotten a bit behind in 
our schedule.  In order to potentially publish your article in in the 
9th issue (target date March 15), we'd need to see a complete draft by 
January 15 (this could probably be extended a week or so at most).   If 
this is too quick for you, we could instead slate the article for a June 
2010 issue, which would give you another couple of months to write a 
draft.  Please let me know that you've received this letter, and what 
your feelings are about whether a March Issue 9 timeline for your 
article is feasible. In considering that, you might want to consider our 
editorial suggestions/requirements for your articles below.


We definitely like the idea of an article about good practices for 
collaborative community open source development, and we think using the 
Archivist's Toolkit as an example is probably quite useful. However, 
we're concerned that the article not end up a purely negative rant 
against the maintainers of the Archivist's Toolkit.  We'd like you to 
make sure to focus on some positive aspects of the development of the 
Toolkit as well as negative aspects;  to avoid attributing malice to any 
individuals but instead focus on some of the contextual challenges that 
may have led to the negative aspects; and most especially to include 
suggestions for improvements to the process that take account of such 
contextual challenges and don't assume that missing good intentions are 
all that's needed. In general, in order to publish your piece (which we 
will probably identify as a 'column' or 'opinion' in the journal), we 
want to make sure it ends up being constructive and collegial, and not a 
purely negative attack on the project or it's adminstrators.  I'm sure 
this is what you intended all along, but we're concerned that the topic 
could easily become overly attacking without explicit care to the contrary.


Hopefully this makes sense to you, please let me know if it doesn't!

Please note that final drafts must always be approved by a vote of the 
Editorial Committee before being published; in this case we'll 
definitely want to make sure the article is constructive and not an attack.


Looking forward to working with you,
Jonathan Rochkind


Re: [CODE4LIB] Code4Lib Journal, article accepted, Open Source in Name, but not in Nature

2010-01-06 Thread Kimberly Silk
Jonathan, I have a feeling you didn't want to send this to the whole list :-)

Kim

-Original Message-
From: Code for Libraries [mailto:code4...@listserv.nd.edu] On Behalf Of 
Jonathan Rochkind
Sent: January 6, 2010 4:48 PM
To: CODE4LIB@LISTSERV.ND.EDU
Subject: [CODE4LIB] Code4Lib Journal, article accepted, Open Source in Name, 
but not in Nature

Ms. Schaefer,

I'm pleased to tell you that your recent proposal for the article Open 
Source in Name, but not in Nature has been provisionally accepted to 
the Code4Lib Journal. The editorial committee is interested in your 
proposal, and would like to see a draft. As a member of the editorial 
committee, I will be your contact for this article, and will work with 
you to get it ready for publication.

I'm afraid that due to the holiday season, we've gotten a bit behind in 
our schedule.  In order to potentially publish your article in in the 
9th issue (target date March 15), we'd need to see a complete draft by 
January 15 (this could probably be extended a week or so at most).   If 
this is too quick for you, we could instead slate the article for a June 
2010 issue, which would give you another couple of months to write a 
draft.  Please let me know that you've received this letter, and what 
your feelings are about whether a March Issue 9 timeline for your 
article is feasible. In considering that, you might want to consider our 
editorial suggestions/requirements for your articles below.

We definitely like the idea of an article about good practices for 
collaborative community open source development, and we think using the 
Archivist's Toolkit as an example is probably quite useful. However, 
we're concerned that the article not end up a purely negative rant 
against the maintainers of the Archivist's Toolkit.  We'd like you to 
make sure to focus on some positive aspects of the development of the 
Toolkit as well as negative aspects;  to avoid attributing malice to any 
individuals but instead focus on some of the contextual challenges that 
may have led to the negative aspects; and most especially to include 
suggestions for improvements to the process that take account of such 
contextual challenges and don't assume that missing good intentions are 
all that's needed. In general, in order to publish your piece (which we 
will probably identify as a 'column' or 'opinion' in the journal), we 
want to make sure it ends up being constructive and collegial, and not a 
purely negative attack on the project or it's adminstrators.  I'm sure 
this is what you intended all along, but we're concerned that the topic 
could easily become overly attacking without explicit care to the contrary.

Hopefully this makes sense to you, please let me know if it doesn't!

Please note that final drafts must always be approved by a vote of the 
Editorial Committee before being published; in this case we'll 
definitely want to make sure the article is constructive and not an attack.

Looking forward to working with you,
Jonathan Rochkind


[CODE4LIB] Job posting: Incredible Opportunity for a Koha Expert in Baltimore, Maryland

2010-01-06 Thread John Roberts
SigInt Technologies, LLC seeks an inquisitive and motivated individual to
support efforts to integrate electronic content for a U.S. Government
Library.

We have access to electronic content from a variety of services, but lack a
way to expose the data to our users. We need someone to build scripts to
pull-in the content, index it, and expose it to our users via a
web-interface. You will have substantial flexibility in the solutions you
implement.

Knowledge/Experience of the following is required: Koha, MARC, Linux, and a
scripting language such as Perl or Python. 

Knowledge/Experience of any of the following would be great: PHP, Java,
MySQL, STILAS, VuFind, Solr/Lucene.

We provide an excellent compensation package, including 401K matching up to
two times; Roth or Traditional 401K plan, full medical benefits, a
technology allowance, and a very flexible work environment.

The job is at Fort Meade, Maryland. You must be able to obtain a security
clearance.

John


[CODE4LIB] c4l2010 T-Shirt Design Contest Closed

2010-01-06 Thread Rosalyn Metz
Well, we received a few more entries. But now its time to close the T-shirt 
contest. Thanks for participating!

The T-Shirt Design Committee


--Original Message--
From: Rosalyn Metz
To: Code for Libraries
Subject: Re: c4l2010 T-Shirt Design Contest Extended to Jan. 6th
Sent: Jan 6, 2010 8:46 AM

Hello All,

Today is the last day to submit your T-Shirt Designs, I'll be
closing it at noon with a times up message.  I'm sure you're already
sick of doing work, so waste your day creating a t-shirt.

Rosalyn


Sent from my BlackBerry® smartphone with SprintSpeed


Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Naomi Dushay

Marijane,

Yes, I would encourage you to ask for help on the blacklight list,  
with specifics about the problems you're having.  We've set up  
Blacklight on a bunch of non-Marc Solr indexes here.


- Naomi

On Jan 6, 2010, at 1:32 PM, marijane white wrote:

I've read about Blacklight's ability to run on any Solr index, but  
I've
struggled to make it work with mine.  Honestly, I've been left with  
the
impression that my data should be in MARC if I want to use it.  Is  
there
some documentation on this somewhere that I've overlooked?  (Maybe I  
should

ask this on the BL list)


On Wed, Jan 6, 2010 at 12:24 PM, Naomi Dushay ndus...@stanford.edu  
wrote:



Marijane,

It also makes sense to examine the available software for what you  
wish to

accomplish.  Available software goes beyond current features to
- maintainability  (one reason Stanford switched to Blacklight)
I'll talk
a little bit about this in our Code4Lib 2010 presentation about  
testing.

- community
- active development
- potential applicability to additional projects.   (we like  
Blacklight for

its ability to run on any solr index, regardless of what's in there)

probably some other stuff I've left out.

Our experience at Stanford Libraries is that the common conventions  
of

Rails give us a lot more ease in reading each others' code.

- Naomi


On Jan 5, 2010, at 3:04 PM, marijane white wrote:

Greetings Code4Lib,


Long time lurker, first time poster here.

I've been turning over this question in my mind for a few weeks  
now, and

Joe
Hourcle's postscript in the Online PHP Course thread has prompted  
me to

finally try to ask it. =)

I'm interested in hearing how the members of this list have gone  
about
choosing development platforms for their library coding projects  
and/or

existing open source projects (ie like VuFind vs Blacklight).  For
example,
did you choose a language you already were familiar with?  One you  
wanted

to
learn more about?  Does your workplace have a standard enterprise
architecture/platform that you are required to use?  If you have  
chosen to
implement an existing open source project, did you choose based on  
the
development platform or project maturity and features or something  
else?


Some background -- thanks to my undergraduate computer engineering
studies,
I have a pretty solid understanding of programming fundamentals,  
but most

of
my pre-LIS work experience was in software testing and did not  
require me

to
employ much of what I learned programming-wise, so I've mostly  
dabbled

over
the last decade or so.  I've got a bit of experience with a bunch of
languages and I'm not married to any of them.   I also kind of  
like having

excuses to learn new ones.

My situation is this: I would like to eventually implement a  
discovery

tool
at MPOW, but I am having a hell of a time choosing one.  I'm a solo
librarian on a content team at a software and information services
company,
so I'm not really tied to the platforms used by the software  
engineering
teams here.  I know a bit of Ruby, so I've played with Blacklight  
some,

got
it to install on Windows and managed to import a really rough Solr  
index.
I'm more attracted to the features in VuFind, but I don't know  
much PHP

yet
and I haven't gotten it installed successfully yet.  My collection's
metadata is not in an ILS (yet) and not in MARC, so I've also  
considered
trying out more generic approaches like ajax-solr (though I don't  
know a

lot
of javascript yet, either).  I've also given a cursory look at  
SOPAC and
Scriblio.  My options are wide open, and I'm having a rough time  
deciding
what direction to go in.  I guess it's kind of similar to someone  
who is

new
to programming and attempting to choose their first language to  
learn.


I will attempt to head off a programming language religious war =)  
by
stating that I'm not really interested in the virtues of one  
platform over
another, moreso the abstract reasons one might have for selecting  
one.
Have any of you ever been in a similar situation?  How'd you get  
yourself
unstuck?  If you haven't, what do you think you might do in a  
situation

like
mine?


-marijane





Re: [CODE4LIB] Choosing development platforms and/or tools, how'd you do it?

2010-01-06 Thread Brad Rhoads
On the IDE question, I'll just add that I find an interactive debugger to be
a necessity.