
Haskell Web Development: A Freely Available Book - ingve
https://www.indiegogo.com/projects/haskell-web-development-a-freely-available-book#/
======
jasode
John Resig (of JQuery fame) got a $7500 advance[1] for a Javascript book. I
think it's reasonable to assume that a Javascript book would be 100x (or even
1000x) more popular than a Haskell book. To this day, I don't believe he's
made much beyond that advance. I doubt he's reached $20k since 2007.

If the author can crowdsource $20k, more power to her. On the other hand,
maybe the monetary threshold needs a reality check. EDIT ADD: I looked again
and noticed that the $20k is a "flexible goal" so presumably, the author will
write the book even without reaching that amount; therefore, the author
already understands market forces at work that might prevent a $20k payout.

(Of course it's possible that the Haskell book market can charge a premium
because of a uniquely enthusiastic audience . E.g., doctors pay $500 for a
book that shows surgical procedures and the volume of sales is only in the
hundreds.)

In the economics of books, the big money is fiction. (50 Shades, Harry Potter,
etc). To a lesser extent, you have some non-fiction titles making a decent
amount of money (Chicken Soup for the Soul, Eat Pray Love, etc). Way down on
the totem pole are the trade publications like computer books. The economics
on that level basically dictate that you slave away writing "Java for Dummies"
for less than minimum wage. You then use it as a _business calling card_ and
let it open doors to speaking engagements at conferences and attract
consulting gigs.

[1]>[http://ejohn.org/blog/programming-book-
profits/](http://ejohn.org/blog/programming-book-profits/)

~~~
TheCoelacanth
JS might be 100x as popular as Haskell, but it doesn't follow that a single JS
book will be 100x as popular as a single Haskell book, because there are also
100x as many JS books.

------
brbsix
For anyone interested, I found the author's Patreon page here:
[https://www.patreon.com/user.php?v=queertypes&ty=h](https://www.patreon.com/user.php?v=queertypes&ty=h)

Cost of living is listed as $5k/mo on this page, which contrasts with the
$6.6k/mo listed on the IndieGogo campaign.

The author is a self-described anti-capitalist but this campaign looks an
awful lot like free-market economics at work. Rather than simply writing the
book for free and accepting donations, the author has simply stated a price
($20k) for a product (an open source book).

I also found a blog post here
[https://blog.cppcabrera.com/posts/53-announcing-queer-
types....](https://blog.cppcabrera.com/posts/53-announcing-queer-types.html)
where the author goes into more personal detail about the project. Apparently
the $20k would cover in excess of 3 months living, whatever that means. There
was even mention of releasing additional books if funding reached $60k+.
Sounds pretty far-fetched.

~~~
dudul
And the author doesn't even have to write the book for free. They could
perfectly use a distribution platform focused on self-publishing (I mentioned
GitBook and Leanpub in a different comment). A good strategy would be to start
writing the book and make it available in pre-order/beta for whatever amount
($20 maybe). It would probably take longer than 3 months to write since the
author would have to work on the side, but so what? I'm not aware of a
programming focused author who can actually cover their living expenses simply
by writing.

~~~
brbsix
Agreed. I don't have a problem with the campaign and hope it goes well, it
just seems as if the author is a bit out of touch. The 12 hour workshop (with
a relatively unknown person) for $5k and a number of other little things
really add to that general feeling of malaise.

------
bobthechef
Nothing wrong with writing a book, but frankly,what Haskell really could use
is a richer ecosystem, better tooling ( _ahem_ cabal) and perhaps a sense of
its niche(s). I like Haskell, but there's absolutely no reason why you ought
to expect people to start using it when you've got much richer, usable
ecosystems available out of the box. History keeps repeating itself. What
makes or breaks a language isn't just the language itself. A language needs a
supporting ecosystem to actually make it useful. Of course, it's a bit of a
Catch-22: you need people to populate the ecosystem with code. So why don't we
start with a leiningen for Haskell? Time and again, the forums reinforce that
the basic tools are what keep them from treating Haskell seriously.

~~~
mark_l_watson
I agree about the need for better tooling, but lately I have been finding
"stack" to be a better experience. Try it if you haven't done so already.

------
grandalf
For those interested in learning Haskell, I've found this book (currently in
progress) excellent:

[http://haskellbook.com/](http://haskellbook.com/)

~~~
coolsunglasses
Thank you :)

Might be worth noting that while it's "currently in progress", it's also 912
pages of "in progress" in the current release. ;)

------
brbsix
I don't think it's fair to state that the author's cost of living is
irrelevant. The author is simply stating how much he/she needs in order to
open source the content. The amount IMHO is immaterial. If you want to donate,
then do so. If a sufficient amount of people find the campaign compelling and
donate in excess of $20k, then evidently he/she's expected to provide at least
that much value to people. If the campaign fails, then clearly the funding
goal was too high.

To put it another way, people who donate are paying a price based on perceived
value.

Perhaps someone will offer to write (and make freely available) a similar book
for a smaller sum. If not, there is only one offer on the table and the market
will decide whether it is reasonable or not.

------
amelius
I'm still waiting for the internet RFCs to be coded in Haskell. It seems like
Haskell is the perfect language to write a protocol specification in, yet,
mysteriously, no implementations that parallel the specs can be found.

~~~
agentultra
Sounds like a terrible idea.

Haskell is written for the Haskell compiler to understand.

Specifications and designs should be written in a spoken language of choice
and maths. That's where all the high-level modelling and problem domain
specification should go.

Programs, on the other hand, should be written with the greatest amount of
mechanical sympathy for the target platform as is necessary to achieve your
engineering goals. That means we should prefer to write directly in the
language understood by the platform, usually some form of assember, but where
this isn't practical we write in something a little bit more complex but
staying as close to that lower bound of complexity as is possible.

Before people start piling on and saying, "It's not the 80's anymore you
dummy, we have spare cycles and plenty of memory," think about why I have a
laptop with so much power under the hood and yet it still takes almost a
minute to load up a spreadsheet... long enough that I get to stare, blankly,
at a splash logo while my multi-core super-computer chugs along on the code
designed in such a frame of mind.

Engineering is applied maths. Specifications are blueprints not
implementations.

~~~
chriswarbo
> Programs, on the other hand, should be written with the greatest amount of
> mechanical sympathy for the target platform as is necessary to achieve your
> engineering goals. That means we should prefer to write directly in the
> language understood by the platform, usually some form of assember, but
> where this isn't practical we write in something a little bit more complex
> but staying as close to that lower bound of complexity as is possible.

This, of course, depends on what your engineering goals are. If
maintainability, extensibility, portability, amenability to cheap labor, etc.
are considered as engineering goals then the opposite approach makes more
sense: write all software as a handful of Prolog clauses and let the search
algorithm do all the hard work; gradually move to lower levels if performance
is unacceptable.

The fact that you're waiting a minute for your spreadsheet to load shows that
the performance is acceptable: you've accepted it. If it were unacceptable,
you would be spending resources (money, or time to learn/transition-
to/improve) on a faster alternative like sc.

~~~
agentultra
> If maintainability, extensibility, portability, amenability to cheap labor,
> etc. are considered as engineering goals

Those don't sound like goals they sound like principles.

A goal is I want to create a web server that implements the HTTP 1.1
specification that can process a stream of N bytes per second over X
simultaneous connections. There are metrics, tolerances, and limits to
consider.

A well engineered program that considers the data first and foremost can be
easier to maintain since there are fewer abstractions to consider and reason
through. It can be easier to debug since the program execution and memory
layout are explicitly maintained. Performance is much easier to reason about
for the same reasons. It is actually easier to refactor this kind of code in
my experience.

We have to get out this idea that our job as programmers is to write code.
It's really about solving engineering problems with computers -- real
processors with caches, memory channels, interrupts, and the whole nine yards.

 _update_ : To wit, for those that know me, I actually write a lot of Python
code. And Common Lisp. Doesn't change a thing; you can write a Python program
that is ignorant of the underlying platform the interpreter was compiled for
at your own risk... "write once, run everywhere," is a nice idea but a fiction
in reality... a cleverly disguised, hand-wavey fiction.

------
Xophmeister

        I want to work full-time on this book for 3 months. $20,000 covers
        my cost of living for that long.
    

Is the cost of living really that high in Austin, TX?

~~~
melling
Is an $80,000/year salary "that high"?

~~~
odonnellryan
6k+ a month is a pretty high cost of living. It is a good salary for Texas,
but if that's your cost of living that's pretty insane.

~~~
mikekchar
Personally, I think it's a reasonable amount given that you have to pay taxes
on it, you have to get health insurance for the 3 months that you are working
on it (not cheap), and the position is not extendible after 3 months.

In other words, you have to consider this as a 3 month contract as an
independent contractor with no chance of extension. Personally, that would be
pretty far into my discounted rate ;-)

Still, if successful, it has the upside of giving the author chances at a good
reputation and follow on contracts. I'm very interested to see how successful
this is. I'm sceptical that it can be completed in 3 months, but wish the
author the very best of luck!

~~~
odonnellryan
I think it is very fair PAY, but they specifically said cost of living.

------
chrisgw
There's also Developing Web Applications with Haskell and Yesod by Michael
Snoyman which is available from O'Reilly in dead tree format or for free in
HTML format: [http://www.yesodweb.com/book](http://www.yesodweb.com/book)

It's a pretty good introduction to Haskell web development for people who are
already familiar with both web development and Haskell.

------
batz
Because web development in brainfuck was already written?

------
netcraft
On a separate topic from the fundraising goal, are there many examples of
haskell driven web applications out there? Any big properties?

------
dudul
I would love to read that book, but is a funding campaign the best way to get
there? Can she work on it during her spare time, like most authors do, and
deliver in 6 or even 9 months instead of 3?

$20,000 to write a book is an enormous amount. When you work with actual
publishers you don't get that much, the upfront royalties usually stay in the
4 digit range.

Maybe it would make more sense to use a platform like GitBook or LeanPup.

------
biggestbob
Author cost of living = $6667/month? Author has high rent, wife, 3 children,
only eats the organic and gluten free, car repayments, college debt... maybe
shouldn't be writing book now.

If author wants to make same money as work for corporate, no problem, but
should say this directly, not say the dubious "cost of living".

~~~
biggestbob
Why am I getting downvote? Somebody please explain me how $6667 is cost of
living. I don't understand.

