Haskell web development entries on the Wiki

Decided to move this to a separate thread. I went ahead and refactored the wiki entries: http://www.haskell.org/haskellwiki/Web Now we have the following Web/ sections: Servers Frameworks Interfaces to frameworks Databases and Persistence Libraries Testing and Verification Content Management and Forums and Discussion Literature (research, talks and blogs) Existing Haskell web applications Ongoing projects and ideas And Web/Libraries has the following sections: URLs and Routing Templating Sessions and Authentication CGI Forms JavaScript and AJAX CSS I will add all these pages to the Web category, but not yet, I want to get rid of this page: http://www.haskell.org/haskellwiki/?title=Applications_and_libraries/Web_pro... I've nearly finished moving all of it to organised sections in this new hierarchy. The advantage of doing this is that I have to manually check each thing listed and I discover that quite a few are dead links and no longer maintained. Ideally this page http://www.haskell.org/haskellwiki/Web/Frameworks would have a list of all actually active web projects, and those would be listed at the top, or perhaps there should be another page Web/Frameworks/Active or whatnot. Anyone care to help take this page apart Applications and libraries/Web programming and move it to reasonable pages? Thoughts?

I understand the advantages to splitting into multiple pages, but on
the other hand it *does* make it more difficult to locate information.
My guess is a good search function on the wiki will make that point
moot. Overall, looks like you've done a great job, thanks! A few minor
comments:
* Should we rename HAppS to Happstack everywhere?
* Does pass.net still exist anywhere? Same for parallel web.
* Should older, unmaintained stuff (Wash, for example) be removed
entirely, placed on its own page or be obviously marked as
unmaintained?
Michael
On Fri, Oct 1, 2010 at 10:50 PM, Christopher Done
Decided to move this to a separate thread. I went ahead and refactored the wiki entries:
http://www.haskell.org/haskellwiki/Web
Now we have the following Web/ sections:
Servers Frameworks Interfaces to frameworks Databases and Persistence Libraries Testing and Verification Content Management
and
Forums and Discussion Literature (research, talks and blogs) Existing Haskell web applications Ongoing projects and ideas
And Web/Libraries has the following sections:
URLs and Routing Templating Sessions and Authentication CGI Forms JavaScript and AJAX CSS
I will add all these pages to the Web category, but not yet, I want to get rid of this page: http://www.haskell.org/haskellwiki/?title=Applications_and_libraries/Web_pro...
I've nearly finished moving all of it to organised sections in this new hierarchy. The advantage of doing this is that I have to manually check each thing listed and I discover that quite a few are dead links and no longer maintained.
Ideally this page http://www.haskell.org/haskellwiki/Web/Frameworks would have a list of all actually active web projects, and those would be listed at the top, or perhaps there should be another page Web/Frameworks/Active or whatnot.
Anyone care to help take this page apart Applications and libraries/Web programming and move it to reasonable pages?
Thoughts?

On Sat, Oct 2, 2010 at 4:13 PM, Michael Snoyman
I understand the advantages to splitting into multiple pages, but on the other hand it *does* make it more difficult to locate information. My guess is a good search function on the wiki will make that point moot. Overall, looks like you've done a great job, thanks! A few minor comments:
* Should we rename HAppS to Happstack everywhere?
I think we should. No one is using the old HAppS code, so references are just misleading. -- gwern

On 2 October 2010 22:13, Michael Snoyman
I understand the advantages to splitting into multiple pages, but on the other hand it *does* make it more difficult to locate information.
It does? What's an example? I'll fix it.
My guess is a good search function on the wiki will make that point moot.
Probably!
* Does pass.net still exist anywhere? Same for parallel web.
I couldn't find any references to pass.net.
* Should older, unmaintained stuff (Wash, for example) be removed entirely, placed on its own page or be obviously marked as unmaintained?
Yes, I think so. There are a lot of frameworks on that page that are
just cluttering it up, most of them are unmaintained or don't really
have a big user-base. Perhaps we should split it to Active /
Recommended and Inactive / Unevaluated or something like that. If I
was looking for web frameworks I'd want to know which ones were
actively maintained and then *maybe* what other ones there are. It
could well be two pages. Frameworks/Active or Recommended_Frameworks
and then the other. I'm not sure. Thoughts, chaps?
On 2 October 2010 22:24, Gwern Branwen
* Should we rename HAppS to Happstack everywhere?
I think we should. No one is using the old HAppS code, so references are just misleading.
Agreed.

On Sat, Oct 2, 2010 at 10:40 PM, Christopher Done
On 2 October 2010 22:13, Michael Snoyman
wrote: I understand the advantages to splitting into multiple pages, but on the other hand it *does* make it more difficult to locate information.
It does? What's an example? I'll fix it.
It was more of a general comment. When everything's on the same page, I can do ctrl-f "happ" and find information about all the pieces of happstack. As I said, I think a search function is a good replacement.
My guess is a good search function on the wiki will make that point moot.
Probably!
* Does pass.net still exist anywhere? Same for parallel web.
I couldn't find any references to pass.net.
http://www.haskell.org/haskellwiki/Web/Existing_software
* Should older, unmaintained stuff (Wash, for example) be removed entirely, placed on its own page or be obviously marked as unmaintained?
Yes, I think so. There are a lot of frameworks on that page that are just cluttering it up, most of them are unmaintained or don't really have a big user-base. Perhaps we should split it to Active / Recommended and Inactive / Unevaluated or something like that. If I was looking for web frameworks I'd want to know which ones were actively maintained and then *maybe* what other ones there are. It could well be two pages. Frameworks/Active or Recommended_Frameworks and then the other. I'm not sure. Thoughts, chaps?
I would recommend *not* qualifying the active/recommended stuff. Maybe "Frameworks" and "Frameworks/Inactive". I personally wouldn't want to group new, unevaluated code with inactive: I think we should give the new players the same publicity as the established products on the main page, but perhaps with a little label explaining how new/untested it is. Michael

On 3 October 2010 06:51, Michael Snoyman
* Does pass.net still exist anywhere? Same for parallel web.
I couldn't find any references to pass.net.
I meant that I remember adding it, but I couldn't find any references for it. I.e. it's dead. Maybe we can split that page by active/inactive too.
I would recommend *not* qualifying the active/recommended stuff. Maybe "Frameworks" and "Frameworks/Inactive". I personally wouldn't want to group new, unevaluated code with inactive: I think we should give the new players the same publicity as the established products on the main page, but perhaps with a little label explaining how new/untested it is.
Trouble is most on the Web/Frameworks page are still /available/ but it's hard to see if they're "active" i.e. people are still using them, or whether they're still build-able. Perhaps it would be best to create the Frameworks/Inactive page and then at the top of the Frameworks page say "Inactive frameworks are listed here." and then when someone is definitely sure something is defunct they can move it. Or what do we do?

On Sun, Oct 3, 2010 at 11:59 AM, Christopher Done
On 3 October 2010 06:51, Michael Snoyman
wrote: * Does pass.net still exist anywhere? Same for parallel web.
I couldn't find any references to pass.net.
I meant that I remember adding it, but I couldn't find any references for it. I.e. it's dead. Maybe we can split that page by active/inactive too.
I would recommend *not* qualifying the active/recommended stuff. Maybe "Frameworks" and "Frameworks/Inactive". I personally wouldn't want to group new, unevaluated code with inactive: I think we should give the new players the same publicity as the established products on the main page, but perhaps with a little label explaining how new/untested it is.
Trouble is most on the Web/Frameworks page are still /available/ but it's hard to see if they're "active" i.e. people are still using them, or whether they're still build-able. Perhaps it would be best to create the Frameworks/Inactive page and then at the top of the Frameworks page say "Inactive frameworks are listed here." and then when someone is definitely sure something is defunct they can move it. Or what do we do?
I would actually do the opposite: we can put the libraries/frameworks that we are sure *are* active into the Active section and put everything else into Inactive. I have a feeling we'll be pretty close on the mark with our guesses; a quick look at the last upload date on Hackage should be sufficient. People are *much* more likely to move stuff from Inactive to Active than the other way around. We can also send out an email to the cafe/web-devel with a list of packages we plan to mark as inactive and see if anyone objects. If no one is willing to stand up for a package, odds are it's dead. Michael

On 3 October 2010 12:10, Michael Snoyman
I would actually do the opposite: we can put the libraries/frameworks that we are sure *are* active into the Active section and put everything else into Inactive. I have a feeling we'll be pretty close on the mark with our guesses; a quick look at the last upload date on Hackage should be sufficient. People are *much* more likely to move stuff from Inactive to Active than the other way around.
We can also send out an email to the cafe/web-devel with a list of packages we plan to mark as inactive and see if anyone objects. If no one is willing to stand up for a package, odds are it's dead.
That sounds like a good approach. Anyway, it's not the end of the world if a package gets put in inactive. Ones I know are definitely active are: Happstack Haskell on a Horse loli Salvia Snap Yesod Turbinado -- is this still active? Alson Kemp basically ditched Haskell, so... Yesod The others... I don't know.

On Sun, Oct 3, 2010 at 12:20 PM, Christopher Done
On 3 October 2010 12:10, Michael Snoyman
wrote: I would actually do the opposite: we can put the libraries/frameworks that we are sure *are* active into the Active section and put everything else into Inactive. I have a feeling we'll be pretty close on the mark with our guesses; a quick look at the last upload date on Hackage should be sufficient. People are *much* more likely to move stuff from Inactive to Active than the other way around.
We can also send out an email to the cafe/web-devel with a list of packages we plan to mark as inactive and see if anyone objects. If no one is willing to stand up for a package, odds are it's dead.
That sounds like a good approach. Anyway, it's not the end of the world if a package gets put in inactive. Ones I know are definitely active are:
Happstack Haskell on a Horse loli Salvia Snap Yesod Turbinado -- is this still active? Alson Kemp basically ditched Haskell, so... Yesod
The others... I don't know.
I think it's fair to say that turbinado is inactive. But keep in mind that we should probably look at more than just the frameworks: servers, templating, etc.

I just discovered this: http://www.haskell.org/haskellwiki/Performance/Strictness See the Haskell Performance Resource box? That's great! I'm going to make one for our Web articles.

So I went through the Applications_and_libraries/Web_programming page and pulled out any remaining goodness from it into pages under the Web/ umbrella and then set it up as a redirect to Web/ I made an infobox which I put on every Web/ page, which makes it very nice for navigating between the sections. I also added a tiny introduction to the main page. http://www.haskell.org/haskellwiki/Web I also updated the Practical Web Programming in Haskell tutorial to remove irrelevant/out-dated references and links, updated some bits, and generally improved the formatting so that it's not just a huge chunk of headings and whitespace: http://www.haskell.org/haskellwiki/Web/Literature/Practical_web_programming_... I think on the Web/ page we should have a "hot frameworks" or something like that, listing Happstack, Yesod and Snap, preferably with their logos. Do you have a logo for Yesod? I'm thinking of just tastefully taking the cube.

On Sun, Oct 3, 2010 at 5:33 PM, Christopher Done
So I went through the Applications_and_libraries/Web_programming page and pulled out any remaining goodness from it into pages under the Web/ umbrella and then set it up as a redirect to Web/
I made an infobox which I put on every Web/ page, which makes it very nice for navigating between the sections.
I also added a tiny introduction to the main page. http://www.haskell.org/haskellwiki/Web
I also updated the Practical Web Programming in Haskell tutorial to remove irrelevant/out-dated references and links, updated some bits, and generally improved the formatting so that it's not just a huge chunk of headings and whitespace: http://www.haskell.org/haskellwiki/Web/Literature/Practical_web_programming_...
I think on the Web/ page we should have a "hot frameworks" or something like that, listing Happstack, Yesod and Snap, preferably with their logos. Do you have a logo for Yesod? I'm thinking of just tastefully taking the cube.
Well done, it all looks *very* nice. Regarding Yesod: yes, use the cube for now, I may eventually make a better logo, but that's it for the moment. The only concern I have is the "practical web programming in Haskell" page, which frankly isn't very practical. I personally would put a big fat warning at the top saying most people do not recommend using straight CGI these days. One other possibility is putting together a tutorials section (descending order by date) linking to various blog posts. But I think you've done an amazing job on cleaning things up and getting it presentable. A big thank you! Michael

On 3 October 2010 17:41, Michael Snoyman
Well done, it all looks *very* nice. Regarding Yesod: yes, use the cube for now, I may eventually make a better logo, but that's it for the moment.
Righteo.
The only concern I have is the "practical web programming in Haskell" page, which frankly isn't very practical. I personally would put a big fat warning at the top saying most people do not recommend using straight CGI these days.
Yeah, it's not the best.
One other possibility is putting together a tutorials section (descending order by date) linking to various blog posts.
There is the http://www.haskell.org/haskellwiki/Web/Literature labelled "Literature (research, talks and blogs)" section which contains blog posts, but perhaps a tutorial-centric page would be in order. Really we should link to a yesod, snap, happstack tutorial and cgi on the first page, I think.
But I think you've done an amazing job on cleaning things up and getting it presentable. A big thank you!
Cheers! I'm looking forward to when the new Wiki version and template is rolled out. :-)
participants (3)
-
Christopher Done
-
Gwern Branwen
-
Michael Snoyman