Hi, > ....@mentors - any suggestions?
Random thoughts mostly, it's hard to make recommendations as every project is different. Note that I know very little about the overall ESME context, feel free to slap me with a trout if there's too much sillyness below ;-) You mentioned http://laconi.ca/trac/ - If I go there I immediately see a boilerplate description of what that is and does: > From the ABOUT file: Laconica (pronounced "luh-KAWN-ih-kuh") is a > Free and Open Source microblogging platform. It helps people in a community, > company or group to exchange short (140 character) messages over the Web. > Users can choose which people to "follow" and receive only their friends' or > colleagues' status messages. It provides a similar service to sites like > Twitter, > Jaiku, and Plurk. Very clear and to the point, helps people grasp what that's about. I don't see the same clarity at http://incubator.apache.org/esme/, so people interested in ESME might have a hard time understanding what it does and how it can help them. I'm in that category actually, after trying to follow ESME (in my not-so-Copious Free Time, I admit) since it entered incubation. What's the scope of ESME? Server, client, RESTful API? How does ESME compare with and play with other microblogging platforms? Can you say that in 100 words on the ESME website? The laconi.ca site also has a prominent link to a live instance that people can play with. I think there's such an instance for ESME, where is it? No link on the ESME website again. That's problem 1 I think: making it easy for potential users and contributors to decide whether ESME is for them. That should not take more than 10 minutes, people are lazy. And why would I use ESME rather than Laconica? That should also be made plain to help people decide. And if it's hard to decide, maybe both projects should join forces instead of fragmenting the user base? Problem 2 might be the wide range of skills in the current ESME team, it seems like for most areas of ESME (server, clients, graphic design, website) there's only one or two skilled people here, so if people get busy it's hard to go forward. The Apache answer to that is to be very welcoming to newcomers, trying to turn users into contributors to eventually expand the committers base. Easier in theory than in practice, and that takes time, but without solving problem 1 that won't happen. As Vassil mentions, Scala and Lift are also not very well known in Apache circles, that might not help. But Scala runs on a JVM, right? So maybe ESME extensions (assuming extensions make sense) can be written in Java without requiring Scala/Lift knowledge? Very random thought here, but that might help open the community. To summarize, I think growing the ESME community is key to going forward. That's mostly marketing initially, but it has to be backed by some technical/community actions: making it easy to grasp what ESME is and how people can contribute to it, being welcoming to newcomers and trying to involve them early, making it easy for people to test and hack ESME on their own servers, etc. Last random thought: if the ESME rate of progress doesn't match people's business plans, maybe the scope of the project needs to be redefined, so that the common Apache ESME part (just the server and API maybe?) can go forward and build a community, while business-specific parts (clients or other added-value modules) can live their life independently. HTH, -Bertrand
