[OSM-dev] The future of Potlatch

SteveC steve at asklater.com
Fri May 2 12:07:55 BST 2008


I'm sorry you think informal private chats are now in the public  
domain, I'll keep it in mind.


This is not quite what happened.

For a start, this doesn't really have anything to do with CloudMade,  
it started a long time before that. It's about the maintainability and  
quality of potlatch.

Some time ago when Nick and I decided to spend a week of our company  
time (as a consultancy as it was then, it was a strain on our time) I  
discovered how bad Richards API was. As a bit of background, there is  
the main API and Richard doesn't want to write against it so he wrote  
an entire Flash API in the Rails server which doesn't reuse any code,  
doesn't use any of the object models, writes raw SQL and is basically  

I, and any sane coder, thinks Potlatch should be using the main API. I  
thought I'd do what I know quite  a bit about - the rails backend. I  
found it quite difficult to improve any of it and after a week I think  
I'd improved one or two things but not made much headway. Richard felt  
pretty personal about it and left IRC a few times.

After that I tried to get other people interested in solving it,  
either the backend or potlatch itself. I found it very difficult to  
get anyone interested in the rails bit which is why I used to do all  
that boring stuff in the first place. As for the frontend, there was a  
fair amount of interest in hacking it until those I spoke to found out  
it is in an ancient version of ActionScript, doesn't use the API and  
requires a pile of bizarre libraries to compile it.

Faced with not being able to interest anyone in the problems, I tried  
to solve them with Richard.

I, personally, and with company funds offered basically everything I  
can think of under the sun to get him to let go of the stranglehold on  
the codebase and help others contribute to it. I offered to buy a copy  
of the latest flash compiler suit, whatever it is called. I offered to  
buy the books. I personally offered to ship him the rails books to  
learn how to write good backend code. I offered to send him on a  
course (so I'm disappointed how he's phrased wanting to now get a  
grant, as if this was never talked about). I offered to let him manage  
paid coders to improve it. I even offered to fly him out to california  
and meet people (there seem to be lots of good flash and interaction  
designers out there).

Basically, Richard said no to all of it.

All of this is just to improve potlatch (which most people I've spoken  
to think should be a complete rewrite). I tried very hard. Forgetting  
about all of that for a second - think about what happens if Richard  
loses interest or gets run over by a bus. Basically we're screwed as  
nobody else knows how to code against it. That's not true of the rails  
port - and the rails port was done for exactly that reason and has  
been moderately successful. If I or Tom get run over by busses, all is  
not lost.

Faced with him being so stubborn, I talked to more people about what  
to do and figured that meeting in person might be helpful. So I  
travelled up to north of birmingham in my own time, bought the food  
and tried all of the above points. Andy Robinson came along as well. I  
got nowhere, Richard still feels aggrieved and stubborn.

On a more positive note, all I'm trying to do is get more people  
coding potlatch and hence make it better. I'm also trying to get it to  
use a clean API. Potlatch is great, it's improved way beyond the  
applets that tom and I wrote, but it needs to get better. I've tried  
pretty hard every way I can think and the roadblock is Richard.

We've now reached the point where Richard has rebuffed all offers of  
help, doesn't see the issues and wants to appeal to the community for  
support by taking private conversations public without warning and  
misrepresenting what I've been trying to do.

So I'm open to any advice on what to do next.

On 1 May 2008, at 18:35, Richard Fairhurst wrote:

> [warning - long ponderous e-mail follows!]
> Hi all,
> A fairly weighty issue concerning the future of Potlatch has arisen,
> and I'm completely baffled as to what to do - so I thought I'd "ask  
> the
> community" for thoughts and advice.
> CloudMade (Steve and Nick's VC-funded company set up to commercialise
> OSM data, www.cloudmade.com) wants to commission a new online Flash
> editor for OSM. It would, I believe, probably be written by developers
> from Stamen Design (www.stamen.com): some of you will remember that
> Stamen's Tom Carden wrote OSM's early Java editing applet, and they've
> also written a slippy map in Flash called Modest Maps.
> As you can imagine, this has taken me aback a bit.
> As I understand it, their main issue is a technical one. Potlatch is
> written in ActionScript 1, which is the same language as JavaScript,
> but for Flash. The latest version is ActionScript 3, which is much  
> more
> like Java for Flash. The end user doesn't notice a difference, but the
> programming style is very different.
> CloudMade believes this is holding back the development of OSM: that  
> if
> the editor were written in the latest version of the language, more
> Flash designers would come to work on it, resulting in a better  
> editor.
> Steve cites OSM's move from pure Ruby to Ruby on Rails as an example  
> of
> how a contemporary language encourages more people to contribute. And
> they're also worried that if I were run over by a bus then no-one  
> would
> be able to speak ActionScript 1 and maintain Potlatch.
> I'm not so sure. I think people are beginning to contribute code to
> Potlatch; that as essentially JavaScript it's approachable enough; and
> that the problems of attracting developers is symptomatic of core OSM
> in general (as per http://trac.openstreetmap.org/log/sites/ 
> rails_port).
> I hope that Potlatch, as something maintained by an active community
> participant _for_ the community, has demonstrated a pretty rapid rate
> of improvement anyway. It's meant to be small and compact, of course,
> not a a bells-and-whistles editor like JOSM: nonetheless, in the last
> few months, for example: it's become the only editor yet to offer
> revert/history, gained very good relations support, background layers,
> flexible GPX import, etc. And there's a lot of stuff on the way,  
> mostly
> focusing on usability - from a generic 'undo' and pop-up help panel to
> a new, super-user-friendly tagging panel with draggable POI icons and
> things like that. It's got faults, everything has, but it's come a  
> long
> way in the last year. For what it's worth I think it's the best thing
> I've ever coded.
> For most purposes AS3 probably is a better language - except for the
> fairly major proviso there's no open-source player even in  
> development.
> Indeed, if I were starting all over again I'd probably do it in AS3,
> and in a couple of years I may well migrate Potlatch to AS3 (or 4, or
> whatever) anyway. But right now it's more important to spend time
> improving usability for mappers, given that - like most people here  
> - I
> do have a full-time job which isn't OSM (which isn't computer-related
> at all, in fact) and consequently time is not unlimited.
> So I really don't know what to do.
> Part of me thinks that the most important thing is that Potlatch is
> still available and users are offered the choice. Part of me thinks,
> well, if there's going to be a new Flash editor, there's no point in  
> me
> doing any development on Potlatch from today forward. Part of me wants
> to say "well, screw you" and walk away. And part of me wants to take
> CloudMade up on its OSM Grants scheme (http://blog.cloudmade.com/) and
> say, ok then, I'll announce a medium-term feature freeze, take a few
> weeks' holiday, learn AS3 and recode it for a large amount of $$$. I'm
> utterly stumped and would welcome suggestions.
> Thanks for reading. :)
> cheers
> Richard
> _______________________________________________
> dev mailing list
> dev at openstreetmap.org
> http://lists.openstreetmap.org/cgi-bin/mailman/listinfo/dev



More information about the dev mailing list