January 24, 2011

Academic publishing is a scam

Let's walk through the American Society's of Agricultural and Biological Engineers submission guide to see why:

Manuscript Submission

It is helpful, but not required, to prepare your manuscript using ASABE Manuscript Templates and to follow the Journal Manuscript Format. Please include line numbers and page numbers on each page (the templates will do this for you).

Do your own proofreading, editing, and even layout. Doesn't sound unreasonable.

Copyright Transfer Form

A complete Copyright Transfer Form must accompany your submitted journal manuscript. (Note: The Copyright Transfer Form replaces the earlier Manuscript Submission Form.) The manuscript will not be reviewed until the Copyright Transfer Form is received.

Now they expect to take my copyright away from me? Can they at least bother to do layout for themselves?

Page Charges

Please note that authors are required to pay, at publication, a page charge based on the number of published journal pages. The current charge is $100 ($110 for non-members) per 8.5 by 11 inch published page in Transactions of the ASABE and Applied Engineering in Agriculture, and $50 ($55 for non-members) per 6 by 9 inch published page in the Journal of Agricultural Safety and Health and Biological Engineering Transactions (formerly Biological Engineering). You will be advised of the total page charges when you receive the page proofs and billed when your article is published.

And now they expect me to pay for all this???

How much are libraries paying for subscriptions again? (The answer is here)

This journal is one particular example, but page charge fees levied on authors are not uncommon for scientific journals. Subscription costs to these journals for university libraries are astronomical.

I am not the first to have similar concerns.

Academic publishers have clearly become a scam industry. This is a market that is not only ripe for disruption, but by most reasonable standards should not exist (where do you think the money for subscription fees comes from? hint: probably your taxes).

What about the Public Library of Science? It's a good, non-profit scam. According to Wikipedia, "PLoS [author page charges] vary from $1,300 to $2,850." $2,000 to put your paper on the Internet. (note for those not aware: peer reviewers are volunteers that don't get paid, so there's no value-add costs that this $2,000 covers)

"But Vladimir," you say, "who is going to pay for publishing my crap research?" Your local university library already has printers, a connection to the Internet, and computers. Think "Digg for scientists" - verified accounts for peer reviewers (throw in digital signatures if you really care), with local library mirror proxies of papers (with BitTorrent-based distribution to cut down on bandwidth costs). Something like arXiv with multiple virtual journals, peer review, and mirroring/distribution.

January 16, 2011

The Cloud, SaaS, source code escrow, and the Affero GPL

When making large deployments of commercial software, it is not uncommon for companies to force the suppliers to place the source code of that software into escrow. That might be an option if you're a large corporation, but for most users of SaaS/cloud computing services it is not, and not looking like one anytime soon.

There's nothing stopping your service provider from going bankrupt, being acquired, or deciding to shut down the service. This has already happened when SalesForce acquired SiteMasher (the latter was discontinued), and Twitter acquired DabbleDB - development and new signups ceased, but at least the current users have the comfort of knowing that "In the event we terminate the service, we will provide out customers with at least 60 days advance notice." And then what?

With shrink-wrapped software, you could continue running your existing version. Even if the discontinued software was tied to discontinued hardware, you could keep critical business functions running via judicious maintenance and spare parts suppliers (and later take advantage of emulation technology). This scenario is not uncommon, and of course entirely impossible for a cloud service.

This makes SaaS/cloud computing a big risk for basing your business on. Richard Stallman has previously criticized the lock-in risks of cloud computing, and there are also security concerns.

I think there's an overlooked strategy for mitigating this risk based around the Affero GPL. Releasing your service software as AGPL would eliminate this risk for customers, but unlike the GPL or other licenses it would keep your product protected - all competitors using your code would have to release their changes to the public (and to you). There's also the possibility of dual-licensing your code - an "Enterprise" version with the possibility of escrow for large customers, and an AGPL version with less features for smaller customers.

Why not simply provide an escrow clause into the contract with all customers? It won't help the smaller ones - they will certainly lack the knowledge and resources to go through your proprietary system and set it up on their Intranet. This is unlikely to be the case for Free Software that has a lot of users.

As more web services are created and shut down and their customers burned, the trend is likely to sway away from cloud computing. I think a Free Software strategy based around the AGPL is a way to avoid a "cloud computing winter."

Mouse-copy for Emacs

Zmacs, MCL's Fred, and the Lispworks editor all contain a very nice time-saving feature absent from Emacs called mouse-copy. Rainer Joswig wrote a good description of mouse-copy; in brief it can be summarized as "hold down Ctrl and click on an s-exp to copy it to the current point."

I first found out about mouse copy from working with Jedi, JazzScheme's IDE, and ever since I've wanted it for my Emacs setup.

Michael Weber's redshank extensions to Paredit/SLIME include mouse-copy, but it depends on buffers being in Paredit mode.

Fortunately there's a simple way to get generic mouse-copy in Emacs. Unfortunately it doesn't do the right thing when it comes to spaces. This is easy to fix by borrowing a couple of lines from redshank. This is the mouse-copy I use right now, and it seems to work pretty well.

As you might suspect there's more time-saving things you can do with the mouse. For example, in redshank M-S-mouse-1 generates a skeleton for a make-instance when you click on a defclass definition. Looking at TI Explorer ZWEI sources, Lisp Machines had an entire modifier-key-and-mouse-button-chord convention that really made s-exp manipulation easy and direct. It would be nice to have something like that for Emacs.

If you have tips on better ways of using Emacs for editing Lisp, consider sharing them on CLiki's Emacs tips page.

January 10, 2011

January Lisp happenings

The ALU wiki is running again. Despite requiring registration and having a captcha on every edit, it seems to have a worse spam problem than CLiki. Both seem to be being spammed by hand instead of by bots. Makes me wish the current SEO/content mill bubble would burst sooner.

One thing the ALU wiki does need is more up-to-date content. In particular, if you're a Lisp consultant or freelancer, please add yourself to the ALU wiki Lisp consultants directory.

LinkedIn gave me some ad credit to try out their ad platform, and I'm planning to run ads targeted at technologists and product managers to this landing page that strongly encourages them to try Common Lisp. Any ideas for how I can make it better?

One thing you might notice when perusing Ediware (what Luís Oliveira branded Edi Weitz's excellent Free Lisp Software) is the uniformly useful documentation right on the project webpage. What you may not realize is that Edi has written some software to help you write documentation like he does. DOCUMENTATION-TEMPLATE takes a package and generates HTML to describe the package's exported symbols (you are writing docstrings, right?).

Speaking of Ediware, one of the least appreciated of Edi's libraries is CL-INTERPOL. Besides regular expressions, it's also handy for things like HTML templating.

One of the highest-impact papers I've managed to overlook has come to my attention recently: Henry Baker's Metacircular Semantics for Common Lisp Special Forms. If you're working on Common Lisp compilers/translators/simulators it's a must-read (I wish I had noticed it sooner because a lot of the techniques are applicable to Parenscript). Techniques like that are also useful if you want to fake CL-style control flow mechanisms in other languages.

Perhaps the coolest such hack I've seen is Red Daly's implementation of the Common Lisp condition system for Parenscript. It's worth reading just for the fact that the implementation code explains how the condition system works better than the Hyperspec manages to.

Bonjure, the Montréal Clojure user's group, is having its next meeting January, Friday 21 at 17:30 at CRIM.

FunctionalJobs.com recently launched. They seem to have bootstrapped their first listings from Lispjobs; hopefully they'll have more Lisp-related jobs in the future.