-
Notifications
You must be signed in to change notification settings - Fork 790
Launch Plan
The Clojure language currently has a fractured web presence, with clojure.org, clojure.com and dev.clojure.org all serving different purposes with some overlaps, with three distinctly different aesthetics. This fracturing is a natural bi-product of the growth (and success!) of the language and the community. Rethinking and restructuring that web presence is a sizable problem. I believe ClojureScript represents an opportunity for a "clean slate", an opportunity to provide a single source of information about the language, an updated aesthetic, and hopefully to solve (or avoid) some of the problems of the Clojure web presence. Eventually, hopefully we can apply some of our learnings and direction from ClojureScript.org to unifying and simplifying the Clojure web presence.
Objective: To promote the usage of ClojureScript, and relatedly, Clojure itself.
Audience: Javascript developers who want a more powerful language and have an inkling of understanding about passing functions and events. The audience is explicitly not existing Clojurists for two reasons:
- Existing Clojurists will use ClojureScript anyway
- Existing Clojurists are not often working heavily in the front-end (in the browser)
Approach: Experiment with a micro-site that accomplishes some of the goals that we would like to eventually accomplish on Clojure.org, including:
- Approachable
- "How do I get started?"
- "How can I contribute?"
- "How hard is this to use?"
- "What does the code look liked?"
- Attractive
- subconscious: "Does this look cool?"
- "Does this look like something I would use?"
- "Is this page (and therefore this language) well-designed?"
- Up-to-date
- "Are people still working on this?"
- "When was the last commit?"
- "When was this started?"
- Trustworthy
- "Are people still working on this?"
- "Will this thing stick around?"
- "Who made this?"
- "Is this free or is this a product?"
- "What libraries are out there? What can I use this with?"
- "Who is using this and what are they building?"
- Awesome
- "What problem does this solve for me?"
- "Why is this better than other approaches?"
- "How can I use this to impress friends/boss/the internet/myself?"
- "Will this be fun?"
Minimum Viable Product to accomplish above goals:
- One pager at http://clojurescript.org
- Clear, simple statement of:
- motivations
- advantages
- Great example: http://knockoutjs.com/ (Key Concepts box)
- Call to action:
- Get the code (link to github)
- Get involved (mailing list, for now)
- Getting Started guide
- Simple, step-by-step guide to your first app in ClojureScript
- Consistent design aesthetic
- I think that ClojureScript should have a separate visual identity from Clojure proper, though it should pay homeage to the Clojure identity.
Advantages to this plan:
- Creates a single location for people to go to understand what ClojureScript is
- Gives us an opportunity to control and focus the messaging around ClojureScript
- Creates a definitive place to link to when ClojureScript gets attention
- People don't have to wonder "Do I point them to Github? Or Clojure.org?"
- Don't have to update Clojure.org to get info out there
- Don't have to solve the organization problem on Clojure.org to figure out where ClojureScript fits
Disadvantages to this plan:
- Creates another place that the Clojure community has information
- Counter: Eventually, if it makes sense, we could get rid of the top-level domain and link to http://clojure.org/clojurescript
- Will need maintenance over the long-term
- Counter: Any source of information and Getting Started guides and such will need maintenance.
- Requires work to create and curate that will take away from ClojureScript development
- Counter: This is really important work, perhaps more important than the development. If ClojureScript is really awesome, but no one uses it or knows about it, its awesomeness is irrelevant.
Long term planning:
- Hopefully we'll learn some things from ClojureScript.org that we can
eventually apply to the organization and content of Clojure.org.
- We can put together a plan for updating Clojure.org based on our learnings and slowly roll out changes there.
- Eventually, if it makes sense, we could get rid of the top-level domain and link to http://clojure.org/clojurescript
- Rationale
- Quick Start
- Differences from Clojure
- [Usage of Google Closure](Google Closure)