
Ghost — rethinking WordPress - saltcod
http://john.onolan.org/ghost/
======
photomatt
I really like some of the things John has done in his mockups here, especially
on the write screen, and contrary to what he thinks ideas like this are more
than welcome in the WordPress community. (For example check out the
dramatically revamped media or the dozens of eliminated options in trunk right
now.)

The one big mistake in his premise, however, is that only 34% of WordPress
users are blogging, the actual percentage is much higher. The survey he quotes
me talking about was of mostly people who make their living building WordPress
sites (over 20,000) and mostly WordPress.org users. This community naturally
focuses (and contributes) more on the CMS and application framework side of
WordPress.

On WordPress.com, however, the vast majority of its millions of users blog,
and are blogging more every day. If you visit WP.com you will see a simplified
and streamlined user experience that is boldly different from the traditional
wp-admin dashboard. Already we've seen huge boosts in user engagement from
this new experience, and while it's a few dozen iterations from being ready
I'm confident the best concepts will make their way back into WordPress core
when they are ready.

But overall, I love seeing different people's takes on what the next
generation of WordPress will look like, and I wish more people did blog posts
like this. We've had 3 dramatic shifts in our evolution before, and the shape
the next one will take is a topic that occupies most of my waking hours, mind
space, and creativity. And don't even get me started on mobile... :)

~~~
gozmike
Is it safe to say that without a vastly improved mobile experience WordPress
is in serious trouble?

As a huge fan of the WordPress community and what the software and platform
has empowered, I'm seeing a decreasing amount of interest in blogging as my
social network turns toward meme-sharing and 140-character quips simply
because they're much more conducive to consumption and sharing on mobile.

It's so bad that there are startups trying to fix this like Blogstand
(<http://blogstand.co> \- our project). We know that others are attempting the
same (and they should be!)

~~~
JagMicker
I used to think that "mobile responsiveness" was the "Holy Grail" of smart
website design. Now, I've come to the conclusion that most modern mobile
devices are completely capable of displaying the full version of most
websites.

Every time I use my iPhone to browse to Twitter or LinkedIn I'm taken away
from the full site and to a silly "mobile" site that resembles the native app.
If I wanted the native app. experience, I'd download and use it! Ever try
approving a LinkedIn recommendation using your iPhone? Good luck!

Now think about most business websites...5 pages of text, images, and a touch
of javascript... Does their "full site" have content that cannot be displayed
properly on a mobile device? No. Is there a benefit to having a second,
"mobile" website (one with much less love put into it)? I think not.

It seems to me that many people think that "mobile responsiveness" is such a
great thing, but I'm not sure they've really considered whether it's even
necessary. I'd bet that most designers who build WP sites on themes that tout
"mobile responsiveness" (and have it enabled by default) haven't even
considered whether their client needs the second version of their site. Even
if they do, I think often times the "mobile" version ends up being an ugly,
hardly-tested, bastardized version of the "full site". Just give us the _real_
website, please!

~~~
jeremyjh
I really like the Dolphin browser on Android, partly because it lets you
switch between mobile and "desktop" modes (lies in the agent string). I don't
find I have to use desktop mode that often, but its really handy when its
there.

~~~
lmm
You get that option in the native browser, though perhaps it's less fiddly in
this "Dolphin".

------
ck2
The whole page is images, and it's a non-existent product, it's just a
theory/proposal.

Buried in the text is _it would be a fork of wordpress_.

Net is filled with that sentiment, but it never takes off:

[http://www.google.com/search?q=fork+wordpress&tbo=1&...](http://www.google.com/search?q=fork+wordpress&tbo=1&prmdo=1)

If you want to replace wordpress you need a modern rewrite, not a fork.

The #1 problem of wordpress (among many) is it loads every darn thing on every
darn page and it's now a godzilla of a program so it's becoming a huge
nightmare. A cache miss in WordPress on a busy server is a horrible, horrible
thing.

You cannot escape that problem by a fork.

~~~
calinet6
This would absolutely be better solved by an entirely new application, written
from the ground up.

And the whole-page-is-images thing really bothered me too. Some nice designs
and interesting ideas for sure, and knowing CSS isn't a prerequisite for being
a designer, but damn, I have some doubts about the understanding of the
technologies here.

Which is probably exactly where the concept of "forking Wordpress" came from—a
misunderstanding of exactly what that would entail.

Modern rewrite is what's needed, definitely. But don't call it anything
related to Wordpress. Don't need to.

~~~
johnonolan
I've been committing code to the core WordPress codebase for 3 years, so while
I'm not a PHP developer - I have some idea.

Perhaps one thing overlooked in the argument for fork vs new build is that
there aren't a huge number of developers with the skills to make this happen
who would do it entirely on an Open Source contribution basis as opposed to,
say, a startup basis. Appealing to existing WordPress developers, businesses
and users, as well as cutting down time to ship first working concept, are (in
my mind) some important arguments in favour of a fork.

~~~
tsewlliw
I'm relatively new to the WP scene, and already its totally clear that
WordPress is tolerated because it has a vibrant ecosystem. Getting to keep
that is way bigger factor in uptake over the next five years than anything a
rewrite could deliver.

~~~
calinet6
I think you could gain momentum surprisingly fast with a new project if it
offered a quality alternative. (I say this as the author of a CMS in another
content-type space which has done that fairly well)

------
onli
You can't make a blog-software without comments. Well, you can try, but it
wouldn't be a blog anymore. Letting the most important thing blogs achieve,
enabling user-comments, get in the hand of proprietary external companies is
totally absurd and a huge loss.

That being said, I like the idea of a focussed blogging software. Probably
because I sometimes contribute to one: Serendipity (<http://www.s9y.org>). And
there are so many different blogengines ones out there, including Wordpress-
forks, and of course some of them focus on being a blog-software instead of a
cms. Heck, like so many even I wrote a blog-software for myself, based on
Sinatra, cached and with spamfilter and using browserid, which is already
probably quite useable (<https://github.com/onli/dsnblog>, though the
description paints the image of something more, till now it is only an almost
complete blog).

~~~
dkuntz2
What do you mean you can't make a blog without comments?

Definitionally a blog is a web log, or an online journal. There is no
requirement that a blog have comments. Dustin Curtis' Svbtle is a recent
blogging platform without comments, Jekyll and its brethren of blog-aware
static-site generators are also without comments (unless the publisher adds
them using an external service).

Nobody needs comments, and there are many good reasons not to have comments on
a blog, ranging from the fact that it removes the ability for people to
impulsively write a negative comment for no reason other than to be negative
to reducing server and database load.

~~~
onli
If I think of the platonian ideal of a blog, it has comments. And Trackback or
Pingbacks. A "blog" without them is just a website someone normally updates
regularily. Of course, that can have its merits, but it's not a normal blog.

And btw, I "need" comments in my blog. I like them, they add value to the
articles and if an article results in a good discussion, to write him was
instantly more worth it. How can you for yourself come to the conclusion that
no one needs them?

~~~
dkuntz2
A "normal blog"? That requires that one define normal, with a set of metrics,
it also requires a set of websites to be analyzed. Should that set be all
blogs hosted with WordPress or Blogger than yes, normal becomes having
comments, because that's the default option.

But, if you use a different set, say a group of people who use Jekyll or
another static site generator, than normal turns into no comments.

Do we include all sites that consider themselves to be a blog inside of this
set? Should there be a number of readers over time and a number of posts over
time requirement? Should the content being delivered be of a certain category?
You can't say that a "normal" blog has comments without defining those, you
can't even define "normal" without defining the set.

\----

Definitionally, a blog does not require a commenting system. I said it before,
and you seem to be refuting that. [Wikipedia says
that](<http://en.wikipedia.org/wiki/Blog>)

> Although not a requirement [...] blogs are interactive, allowing visitors to
> leave comments

Yes, I took out the "most good quality" part, because it shows a bias.

Princeton WordNet defines a blog as "a shared on-line journal where people can
post diary entries about their personal experiences and hobbies", making no
reference to comments at all. The Wiktionary also has no references to
comments. [WordPress' Codex](<http://codex.wordpress.org/Glossary#Blog>)
likewise makes no reference to comments inside of it's blog definition. Same
with [Blogger](<https://www.blogger.com/tour_start.g>).

There are many people called bloggers who's sites don't have comments,
Gruber's Daring Fireball, Marco Arment's blog for a few.

\----

You just proved my point about nobody needing comments. You use the term need,
but imply want. Your blog has no commenting requisite, you just enjoy having
them. Functionally it would have very few differences if it didn't have
comments.

And, I never said nobody wants comments. There are many instances where people
may have a site built like a blog where comments are meant to be a discussion
board of sorts where some BBS for forum software would suit them better.
There's no commenting requirement for a blog to be a blog.

Some people may enjoy discussion inside of a comments section of a blog, and
some people may operate their website in a manner dependent on a comments
section, but I would argue that in such cases they're the ones who aren't
operating a "normal blog", and are instead operating a discussion forum of
sorts.

Likewise, trackbacks, pingbacks, and refbacks are not required for a blog
either. None of those are official "web features" as specified by the W3C or
the WHATWG the two organizations considered to be the "keepers of web
standards". And it requires additional work by the publisher as it isn't
something that can be implemented by generic server software (note the generic
part, server software created specifically for serving a specific piece of
software could very easily implement them).

Plus, comments and all of the *backs require some form of a database to run,
even if it isn't your own database. Are you saying that a database is also a
requisite for a site being considered a blog?

~~~
onli
How about following the definition you yourself picked?

>Although not a requirement, most good quality blogs are interactive, allowing
visitors to leave comments and even message each other via GUI widgets on the
blogs, and it is this interactivity that distinguishes them from other static
websites.

Even with a reference to an academic paper and exactly what i said prior.

> You can't say that a "normal" blog has comments without defining those, you
> can't even define "normal" without defining the set.

I define the set. Easily. Take every site on this internet someone thinks is a
blog and merge them to a default. You will have comments and ping/trackbacks
(and PHP, probably).

You choosed an interesting example: Jekyll. There is that interesting motion
that you can observe technical development to follow circles. Those new static
site generators are on such a backward circle. As I was told, in those early
times before Wordpress, it was common to use systems like this to generate the
sites that resembled modern blogs. Then came Wordpress & Co, PHP-based dynamic
blog-engines. With comments and ping/trackbacks. I'm pretty sure, like the
wikipedia-entry you cited, there are enough definitions acknowledging that.

They became the archetypical implementation of a Blog for many years, just
like the iPad clinges to the archetypical implementation of a tablet laid down
by Star Trek and functional requirements.

The movement now to generate blogs as static sites is probably a reaction to
the awful caching and ressource-usage of Wordpress or a reaction to the
popularity of git.

> You use the term need, but imply want. Your blog has no commenting
> requisite, ...

Really not true. If I didn't have comments, my blog would almost certainly not
exist anymore. Which qualifies as a need over a want.

> There are many people called bloggers who's sites don't have comments,
> Gruber's Daring Fireball, Marco Arment's blog for a few.

There are people sitting on a tree claiming to ride a horse. Gruber for
example is so popular that almost every entry of his gets dicussed here. HN is
his comment-area. And no, that doesn't refute my own argument that a typical
blog has a comment-area, because he has one (HN) and the unknown average
Blogger has one on its site, or he gets no discussion at all, making him an
atypical pseudo-blogger.

> Plus, comments and all of the ping/trackbacks require some form of a
> database to run, even if it isn't your own database. Are you saying that a
> database is also a requisite for a site being considered a blog?

Yep, they don't follow the typical blog-design. Though you can of course have
trackbacks with plain-file-blogs without a dedicated database. I assume you
included that with "some form of database".

And careful with the generic serverpart required: pingbacks use a generic and
stadnardized xmlrpc-call, trackbacks are nothing but a POST with defined
parameters. Sure, additional work to implement, but that is true for
everything you really do with a server.

\----

Again: Depending on when you started coming in contact with blogs, and I argue
still today, it is highly likely that almost every blog you visit has comments
(sometimes deactivated, nonetheless the engine has them), has some form of
ping/trackback-machanism. It is so common for a blog to have those mechanisms
that they became essential for the distinguishing between a static site with
constant updates and websites we call blogs.

~~~
dkuntz2
I wrote a response, but HN ate it, and I don't really care to rewrite it.

Basically, you've got a very exclusive view of what is a blog, and I think
you've got the wrong definition of a blog. You say that your blog requires
comments and wouldn't exist without them. To me, that sounds a lot more like a
__discussion forum __than a blog.

Look at any top blog today, do they _need_ comments. Would they disappear
without them? Or, are the comments just a nice feature that people enjoy, but
doesn't really change the nature of what they publish?

To me, comments are to blogs as radios are to cars. Sure, most cars have
radios, but they don't need them to function. It makes the definition a whole
lot more inclusive, and it should ring true to everyone. Cars of old did not
have radios, blogs of old did not have comments, but as they've aged they both
added new features that people enjoy (radios and comments), but to function
properly, neither needs them.

If a "blog" is dependent on comments, I argue that it isn't a blog, because
what is a blog but an online journal? Each of the five definitions I posted
(four of which you failed to even look at or comment on) says that blogs are
online diaries or journals based on experiences or hobbies. Only Wikipedia
mentions comments, and only Wikipedia says "most good" blogs have them. While
they may have them, there is no functional requirement that they have to be
there, same with the car radio.

All cellphones have more functions than just calling a phone number and being
portable. They can all store contacts in them, most have calculators, most
have some personalizations you can make. Because they all have contacts, and
most have calculators, do all cellphones _have_ to have them to be considered
a cellphone?

\----

Your server part irks me. It irks me because it's wrong. You're defining the
software that runs _on top of_ the server as the server itself. Generic
servers (apache, lighttpd, nginx, thin, etc) have no idea how to process a
*back call. They can read POST requests, but they'll just forward that on to
the software running on top of the server.

Sure, one could modify them to know how to process those requests in the
specified manner, but than they wouldn't be the generic server, they'd be a
specialized server.

~~~
onli
I still think you shouldn't dismiss the historical technial evolution blogs
took. Words have connotations which can differ, but with blogs there really is
the interactivity a distinguishing factor. Dismissing them misses their core.

I didn't react to the other definitions because they mean nothing. Your
wordpress-Glossary has an entry for comments. The Blogger-definitions talk
about how visitors may comment. Sorry, all of that points to my definition.
Note that the latter interactivity-part of the wikipedia-definition is not
necessarily related to "good blogs" but to all blogs.

If you want to have analogies: Disregarding comments in blogs but calling
normal websites a blog is like calling a bike a car because it drives.

\---

Server do one thing: They listen to requests on a port and forward them to a
script, or serve the corresponding file. Reacting to such a request is normal
business, and implementing trackbacks and pingbacks is a three-liner. They are
not more of an artifical extraodinary thing than a php-script serving some
output. Don't see what the classification as complex and weird here aims to.

PS: I hate it when HN eats comments!

------
twodayslate
Why is all the text a giant image? (That aside, the system looks great)

~~~
johnonolan
Just because it's a rough concept, and I wanted to put it out as quickly as
possible rather than delaying by procrastinating about coding a layout. I
actually stole got the idea for making it a big page of images from the
original .Mail concept page. If there's interest - of course we could put
something more professional (and machine readable) together!

~~~
objclxt
It really put me off. It's not about making it machine-readable, it's about
making it human readable for the sizeable number of people who are visually
impaired, prefer or need to read in large print, are on high DPI devices, or
even copy/paste.

It's a massive, huge step backwards. I can't even search the page. I wanted to
try and read all of it, but I gave up. I understand that it's quick and dirty,
but I don't really think you should throw something out for comment when you
can't even copy/paste from the source.

~~~
leeb
Just came to comment on the lack of accessibility for this page - thank you
for pointing it out to the author.

If you insist on using images instead of actual text, at LEAST add alt-text of
the content to the images! Then the page would be screen-reader accessible.

------
zacharyvoase

        > Ghost would be developed openly, and it would encourage contribution. Until
        > now, Open Source projects have often had an incredibly high barier [sic] to
        > entry for contribution, which is so complicated and convoluted that only
        > advanced-level developers have ever really had a hope of getting involved.
    
        > Ghost would facilitate open and easy contribution from people with different
        > skillsets to help grow and evolve the platform. Because designers and
        > developers working together to solve problems always produces a better end
        > result.
    

N.B.: I'm talking from my experience with other open-source projects; I
haven't worked with Wordpress before but I think there are some
generalizations here that need addressing.

I disagree that there's an ‘incredibly’ high barrier to entry with many FLOSS
projects, over and above the technical ability to read and understand what's
happening in the code (which cannot be made up for through community efforts,
or indeed forking). The language used in this passage presents these issues as
manufactured or intended, and therefore as problems that can be fixed by
simply making different decisions. But they're fundamentally issues of
community, and of time/attention management on the part of the core
developers, and they require extraordinary patience.

It's very easy to _say_ "get designers and developers working together". But,
as I've seen with DevOps (which is the principle of "developers and operations
working together"), the phrase "working together" is often used without any
understanding of its meaning.

I don't want to come across as a naysayer. But seriously, if you have the
answers to the problems presented here, a lot of people would love to know.

------
krogsgard
These are some beautiful concepts by John. However, I think it's also worth
noting that just about everyone that works with WordPress wants to see the
interface itself be simplified, even if most of us want to retain its
flexibility as a CMS.

Here are some related notes from Matt Mullenweg on a "radically simplified
WordPress" <http://ma.tt/2012/05/simpler/>

I'd like to see something like Ghost as a step two of Matt's thoughts, rather
than a fork or separate project.

~~~
JamesSL
At this stage I think a fork is needed, the work needed to change the core,
the people behind WordPress just won't get behind.

~~~
krogsgard
Unrealistic for software that powers over 20% of all new websites. Also, a bit
presumptuous of the core team. I think there is a lot of support for a
simplified UI (see Matt's post above). Just because there is a barrier before
you get patches submitted doesn't make the core team unwilling. Each decision
needs fleshing out before getting put into a new version of WP. If it wasn't
that way, the project would be a (total) mess.

~~~
JamesSL
Its WordPress' support for older versions and depreciated plugins which is of
the bigger issues.

~~~
nacin
Our commitment to backwards compatibility simply forces us to make smarter,
more deliberate decisions.

Because we talk so much about our back compat efforts, it is certainly
understandable that people might think that is where almost all of our
development effort goes. But that isn't actually the case.

We heavily emphasize our philosophies because it makes adopting and updating
WordPress easier, and we want users to know that. But in practice, the way we
build software doesn't hamstring us. We've introduced new features and
rewritten entire APIs without needlessly breaking plugins or sites. And we do
sometimes drop stuff -- we are just careful about it. We do whatever is
necessary to make WordPress evolve. In the end, we've simply become really
good at following through.

~~~
ckluis
Any thoughts on frameworks like roots which modify the normal core theme
structure?

------
taylorbuley
Very interesting ideas here, for me particulary in the "free as in Mozilla,
not as in Automattic" angle. Some might consider it blasphemy to say
Auttomattic and WordPress have divergent goals so I'm glad people are having
the discussion.

All that said, I'm not sure I want a CMS from someone who uses images for text
instead of actual text

<http://john.onolan.org/wp-content/uploads/2012/10/81.png>

------
avolcano
Have to say, the most intriguing ideas I saw in the concept were the two
"split view" concepts - one for managing blog posts, and one for writing
posts.

Has any blogging platform implemented anything like that? I know there are
Markdown editors with a split view, but I don't know of any that are web-
based, nor any that are integrated into existing blogging platforms. And I've
definitely never seen any "manage/edit old posts" system as clean and simple
as the one in the concept.

Oh, and btw, a brilliant concept that's super easy to miss - being able to
type "(image)" in the editor pane and seeing an image upload placeholder in
the preview pane. It's a small thing, but one of those things that seems way
more obvious than it actually is.

~~~
rada
There is aero snap. There are browser extensions. You can easily have your
split view today, for any website, without re-writing anything.

<http://www.youtube.com/watch?v=wn97WbalJwM>

[http://windows.microsoft.com/en-
US/windows7/products/feature...](http://windows.microsoft.com/en-
US/windows7/products/features/snap)

<https://addons.mozilla.org/en-US/firefox/addon/fox-splitter/>

------
EnderMB
I'd almost like to see it go the other way. WordPress is a good blog, but a
poor CMS choice for anything but the most basic of websites. I reckon the
"66%" that use WordPress use it for personal sites or very small business
sites (1-10 visitors a day) on shared hosting. There are huge sites using it,
but they seem to be the exception that proves the rule.

I cannot see why people use WordPress over the likes of Concrete5 or a full
CMS on any other platform outside of WordPress being accessible for entry-
level developers. For this reason, a full rewrite of WordPress to be solely a
basic CMS would probably have these novice developers flock to the system,
allowing WordPress to scale back down to doing what it does best.

~~~
photomatt
Because it's easy to develop for, can scale to be one of the top ten sites on
the internet, and your users won't need training to use it.

Now I'll be the first to tell people there are certain things that you should
build from scratch, but the examples of what people build with WordPress can
be pretty breathtaking even to me:

<http://wordpress.org/showcase/>

~~~
papsosouid
Which top 10 site is running on wordpress? And how much of it is static
content being served by a cache and completely avoiding wordpress at all?

~~~
photomatt
Fair question: WordPress.com. This list from Quantcast has WP.com at #16

<https://www.quantcast.com/top-sites/US/1>

But that only includes *.wordpress.com subdomains, and our highest traffic
blogs almost always invest the money to have their own domain. We have a
tag[0] to track those in Quantcast, and it's currently at 129.7M people in the
US, which would place it between Facebook (143M) and MSN (98M). (Blogger might
have a similar boost into the top 10, but I don't see any others in the top 50
that could have so many mapped domains.)

Of course we cache, with a publicly available WP plugin called Batcache.[1]

[0] <http://cl.ly/image/081G1r2f0Z18> [1]
<http://wordpress.org/extend/plugins/batcache/>

~~~
papsosouid
So, none of them? It doesn't include other domains and it shouldn't include
other domains. Really, it is being exceedingly generous in that estimation
already. Hosting thousands of totally independent, small sites is trivial, and
does not require scaling wordpress in any significant way. Facebook is one
site, all their data needs to be able to be accessed by all their software.
Bob's blog and Joe's blog are totally independent, and have no need to be on
the same software or hardware at all. Thus making scaling a non-issue.

I agree that using caching is normal, but the difference is the total reliance
on caching. I wouldn't be impressed with google's scalability either if it
were 99.9999% static pages being served up.

~~~
photomatt
That's sort of like saying Facebook scaling is a "non-issue" because it's just
a bunch of small, independent profile pages. Of course some elements can and
should be sharded, but that doesn't mean that scaling is trivial, especially
as you get into more advanced and social features and a rapidly increasing
percentage of traffic is logged in and fully dynamic.

I think we agree that "scaling" small (sub-RAM-size) amounts of data to a
largely logged-out and cached audience is easy, but I think you think of
WordPress.com as much smaller and more static than it actually is. My
apologies if I'm misunderstanding your point of view.

If you want to see standalone sites in the top 100 running WP besides
wordpress.com, check out time.com, umbrellanews.com, celebuzz.com, and large
sections of nytimes.com, cnn.com, and people.com. If you were to spider the
top million Alexa domains, you'd find about 17% of them on WP:

[http://w3techs.com/technologies/history_overview/content_man...](http://w3techs.com/technologies/history_overview/content_management/all)

~~~
papsosouid
Except that as I pointed out, facebook isn't independent pages. Wordpress.com
is tons of tiny, entirely independent sites. That's like claiming godaddy is a
top 10 website because they host tons of little PHP sites. Tons of little
sites is not the same as one big site.

I realize lots of people run wordpress. That doesn't support the claim that it
easily scales to the traffic demands of a top 10 site.

~~~
ShaneGowland
That's incorrect. WordPress.com serves hundreds of thousands of websites from
a single install. That means one set of PHP files and one database. Not unlike
Facebook.

~~~
papsosouid
It is entirely correct. First of all, they do not serve hundreds of thousands
in one install. Second, it doesn't matter. The point is they are individual
sites, they are not tied to each other in any way. So lets say they host 100
sites on server X. Now one of those sites explodes in popularity and the
server can't handle it all. They can simply move the site to its own server
(or a server shared with a smaller number of other sites). It doesn't matter
that the data is currently in the same database, as the data is in no way tied
to the data of the other sites in that database. So it can be trivially
exported and moved to a different server.

------
skeltoac
johnonolan I agree with the sentiment that got you there, but not with where
you went. Because if you're just going to fork WordPress anyway, all you
really need to do is replace the wp-admin theme.

Yeah, I said wp-admin theme. It's not generally considered a theme but that's
what it is: the core-provided view of everything you can touch when you're an
admin. Try thinking of the back end the same way you think of a front-end
theme.

Unfortunately WordPress has not yet devoted a development cycle to making the
entire admin area easily pluggable. Any seasoned WordPress developer could
hack together a plugin that hijacks wp-admin URLs and displays its own
interface. Several have. Wouldn't that satisfy your requirements?

Of course none of that addresses the issues around efficiency and performance.
My hope is that WordPress will finally undergo a deep refactoring to remove
its worst practices even if it means forcing updates to popular plugins and
themes. There is no longer a reason to fear mass defection from the community
for pulling that trigger. After the initial shock the changes would be
embraced and everyone would enjoy better performance.

------
robbiemitchell
Developers just cannot stop building blogging engines.

~~~
jacques_chester
It's our generation's text editor.

------
benackles
His argument about "No Corporate Arm of The Law" seems a little flawed. He
compares WordPress to Mozilla and argues that Ghost will be more like Mozilla.
Mozilla Corporation is a for-profit arm of Mozilla Foundation. They are nearly
identical to the relationship between WordPress Foundation and Automattic inc.
Each companies corporate arm generates revenue and reinvests those dollars and
development resources back into their open source projects. This is the reason
WordPress and FireFox have been such successful open source projects. They
have the right balance of leadership, resources and community involvement.

~~~
johnonolan
Hi Ben, it's my understanding that Mozilla Corp is 100% owned by the Mozilla
Foundation, and that any profits made by the Mozilla Corporation are
reinvested into the Mozilla project.

The WordPress Foundation and Automattic Inc are two entirely separate
entities.

You are right in saying that they share a nearly identical relationship -
however this small difference is extremely key to the difference in the
overall philosophies of the platforms, in my opinion.

~~~
benackles
Hey John,

First of all, gorgeous mockups! I love where you're headed with the design and
user experience. The cluttered WordPress dashboard and clunky post editor are
my least favorite aspects of WordPress. I also really like how you're
incorporating Markdown syntax.

There are a few points where I disagree.

Forking WordPress would mean keeping loads of legacy code. It would also mean
you'd be binding a future platform for publishing to technologies WordPress
adopted nearly a decade ago. Why use PHP? Perhaps Python, Ruby or server-side
JavaScript (Node.js) are better choices. Why use MySQL? MongoDB or PostgreSQL
may be a better fit.

Wouldn't merging 8+ configurable plugins into core be contradictory to
avoiding bloat? Shouldn't you start with a clean slate? The plugin system is a
great way to customize your environment to fit your individual needs. If you
add defaults, you make it less personalized. You also add more bloat by adding
functionality not everyone wants.

~~~
jtallant
I agree with the points you've made here but one of the reasons WordPress got
so popular is because PHP is just on the server. But if you're looking for a
Ruby/Rails CMS check out <http://refinerycms.com/>. Their UI could use some
work too but the developer has a lot of power with it being a Rails app. I
wish more people would get behind it.

------
HyprMusic
There's a little bit of contradiction in your desires: you say you want to
keep "exactly the same theme and plug-in structure" but you also want to limit
backwards compatibility. You also say you want to remove bloat and non-core
features yet you want to bundle a load of questionable plug-ins. The nicer
interface and UI would be welcomed, but I think if you start going too far
you'll detract away from Wordpress's core appeal.

Don't forget there are many alternatives to Wordpress that have more features
built-in, but Wordpress has succeeded because it's simple, flexible and easy.

------
nex_
I like it but please drop "apple" stuff screenshot.

~~~
TobbenTM
Yeah, the whole thing felt like an Apple keynote in text. "One more thing:"

------
mokash
A lot of people are saying that you can't really make any significant changes
because that would make a lot of plugins and themes incompatible with it. Well
I say, keep Wordpress as it is but create a new version and invite some of the
most popular theme and plugin authors to create their most popular themes and
plugins for it before 'Ghost' goes out to the masses. Once people see how
great it is, others will follow.

I personally think this is a really good idea however, I wouldn't remove the
comment system.

I'd like Wordpress to be more flexible than it already is. I see websites like
The Verge and Polygon, how they have different styles for different kinds of
posts. They create beautiful reviews, very magazine-esque, how it's supposed
to be. Giving this amount of control the users would allow authors to be a lot
more creative and create even more beautiful and better websites than ever
before.

------
rglover
So is the argument to improve the visuals of WP, it's functionality, or both?

If I'm grabbing the thesis statement properly, it sounds like the idea is to
make WP more flexible as a CMS. If so, that'd be very handy.

I'm not sure how it would work logistically, but it'd be cool if admins could
flip a switch (maybe in wp-config) that makes a site either "blog" mode or
"CMS" mode. Sort of like what you have to do to make a site networked (i.e.
multiple blogs same domain).

I like John's ideas here, and this is something that should be talked about.
If John has ties back to WP, though, I would present the ideas and make a case
for letting him head up design or experience. The forking thing could get way
out of hand (and confuse a lot of people).

Short of that, I'd say take the Ghost name and start building your own
platform. It'd be cool to see another open competitor to WP. Especially if it
shared a lot of the same principles.

------
nwienert
If anyone is interested, the "refresh" branch of Obtvse implemented this "live
preview while editing split screen" that he mocked up.

<https://github.com/natew/obtvse/tree/refresh>

<http://cl.ly/image/0m3d3k230b47>

------
BUGHUNTER
The most important thing would be a really good extension system - the
wordpress plugin system is so massively broken and there are so many bad
plugins - this crap must be sorted out - but it is a good place to study how
to produce bad code.

Extensibility is the key factor for any modern web framework / language /
system.

Also Wordpress is last-century with deployment options - there are no (built
in) options for deployment and a smooth upgrade process including backups and
optional rollbacks. The "automatic updates" claim by WP is btw. a good example
for the limiting view of marketing jargon and how technical terms can be
abused and this way educating millions of flies to eat tthe wrong food.
Upgrade without rollback of course does not make sense and is no way
"automatic".

Please, if you build a new system, study modern web frameworks before and
please do NOT use PHP.

------
whalesalad
For those of you who might want to follow the dude on Twitter, but tried to
copy/paste his username and realized it was an image:

<http://twitter.com/johnonolan>

John makes some great points, which is why I'd like to follow him and see the
progression of this. One of us (or a few of us) are going to need to just get
down-n-dirty and start building it.

The internet is indeed filled with a lot of sentiment for rebuilding
WordPress. Most of us who've worked with WP a long time (since b2) have
considered it (myself included).

I'd love to roll out of bed one morning and press a red LAUNCH button that
releases a fresh new fork of WordPress to the world that's compatible with
most of it's theme/plugin ecosystem.

------
pjbrunet
I created a custom blog platform from scratch, a real one ;-) I was thinking
about releasing it but got busy with other projects. You can see a sample post
here:

[http://tomakefast.com/google-not-paying-publishers-for-
rich-...](http://tomakefast.com/google-not-paying-publishers-for-rich-media-
interactions-5239)

For comments, IntenseDebate. The backend is just four tables: options, posts,
categories & feeds. (Yes, it aggregates feeds too.) Index.php does all the
front-end work, another php file for the AJAX server, 4 more php files for the
backend pages. Basically, interact with the database using AJAX datagrids. I
can edit the blog without clicking Publish ;-)

------
tibbon
This proposal makes many good points. If I were rewriting Wordpress, here's
what I'd think of:

\- Seriously consider redesigning the logical layout of the software. Some
sort of rough MVC-ish pattern would be a huge improvement over the 'loop' in
Wordpress which is almost impossible to deal with.

\- I personally dislike PHP, but I do see its benefits in deployment.

\- Make it easy to make beautiful typographic layouts. There's a reason this
1-page wasn't done in Wordpress itself; it is almost impossible to make 'hand-
crafted-web' looks in Wordpress without deep CSS and HTML diving. Great blog
post layouts shouldn't be that hard. Not all content is the same.

~~~
wmeredith
I'm pretty sure the, 'hand-crafted-web' look is going to require deep CSS and
HTML diving anyway you slice it.

~~~
tibbon
True. Perhaps a Wordpress varient would allow for per-post CSS files.

I haven't touched WP in a few years; does it have the equivalent of the Rails
Asset Pipeline yet?

~~~
photomatt
It's old but it still works fine, check out the Art Direction plugin:

<http://wordpress.org/extend/plugins/art-direction/>

~~~
slouch
Does that banner* need to be in place if no one has voted "It's broken" for
the latest version of WP?

*This plugin hasn't been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

------
kmfrk
Note to the author: if you throw those images into ImageOptim, you can save at
least 15%.

Probably convenient when you get hit by HN - and don't seem to be hosting
images on S3.

<http://imageoptim.com/>

~~~
JimWestergren
I prefer Yahoo! YSlow Smush.it [1] which does this for you online.

[1] <http://www.smushit.com/ysmush.it/>

~~~
anatoli
ImageOptim can be configured to reduce the size by a lot more than any of the
online tools will. If you're on a Mac, there's no reason to use anything other
than ImageOptim and ImageAlpha[1].

[1] <http://pngmini.com>

~~~
kmfrk
Wow. Never knew about ImageAlpha. Thanks for the link.

------
alphex
This is a problem being answered with a half dozen other projects. (I'm,
admittedly a drupal guy. But I even know whats wrong with Drupal...)

Symfony, as a core framework for CMS's gives an amazing bedrock to build
exactly what you're talking about.

... Just as an example of something else that exists that is working forward
towards exactly what you're wanting to build, you should check out Apostrophe,
<http://apostrophenow.org/>

And then theres the 90 other projects that exist on 90 other languages... But
yeah, don't fork Wordpress, make something better.

------
shell0x
I don't think thats a good idea to outsource comments to a third-party
platform. I don't like wordpress much, but one of the few things I like is the
native comment function.

------
geekfactor
I'd like to see a fork Ghost as a Rails app. Anyone game?

~~~
nir
You know, IIRC the first Rails demo actually used building a blog app as
example. 8 years later and still no one has come up with a real
Wordpress/Drupal/Mediawiki alternative - or at least none that's gained any
significant userbase. I often wonder why..

------
mehulkar
You should change "Less Options" to "Fewer Options". It's one of those things
that if you know the difference, you can't stop noticing it everywhere.

------
sergiotapia
I'd love for a blogging platform that let me use custom CSS, Markdown (because
I post code all the time on my blog) and free hosting.

Where is something like that?

Wordpress, atrocious code support. Jekyll, too much configuration. I don't
want to learn Jekyll I just want to post code.

Where is the middle ground for people like me? Sounds like this hypothetical
"Ghost" is just what I'm looking for. Now if someone could build it...

~~~
davewasthere
Github pages and prose.io would do the trick for you then.

I really like Ghost, but as a front-end to a github-pages/Jekyll powered blog.
It'd be exactly what I'm after.

~~~
sergiotapia
I've tried Github Pages, not intuitive AT ALL, terrible user experience.

I'll look into prose.io

------
snotrockets
A suggested fork of Wordpress (but not GPLed like Wordpress,) that requires
giving external entities control of the comments on your blog, and with
nothing but a few mockups in Photoshop to show for?

I'm guessing all the 477 points came from those looking at the pretty pictures
but ignoring the text (two extra points could have been awarded by the author
and his SO.)

------
dylanhassinger
I love this, except for the part about building popular plugins into the core.
That sounds like a path to more feature bloat.

Instead, what if there were a small set of plugins that were "Recommended by
Ghost". They could be lightweight and specially geared for extending Ghost.
But still totally optional. (sort of like Jetpack I guess)

------
krmmalik
Question for photomatt if you're still reading this comment thread, and since
it might be my only chance to get dialog with you.

Are you considering any changes regards the stack, since many installations
can have a issues with speed now (not intended as a criticism). So eg
something like Postgres, or MongoDB even for the DB Backend?

~~~
photomatt
Running WP.com, I'm very sensitive too the performance implications of our
stack. A small percentage change in performance could mean the difference of
racks of servers for us. At Automattic we've also had a peek behind the
curtain of pretty much every high-scale WP installation out there.

The vast majority of performance issues I've seen are not from something
intrinsic to PHP or MySQL, but how people configure them. (MySQL is especially
confounding.) There have been ports to other DBs but nothing that matches the
performance of regular WP with a single layer of caching, like Batcache or
Supercache.

For dynamic pageviews, ck2 is correct, our biggest barrier is just the amount
of code we're parsing and executing on every pageload, which a different DB
backend would not change. This problem is bigger on WP.com. I think we can fix
this by becoming more conservative and clever about what we load for a given
page and it's something I expect to be addressed bit by bit over the next few
releases. (BTW ck2 if you want to work on that, please ping me!)

~~~
sandGorgon
Would you consider moving to a database abstraction layer ? There are many of
us here who are running postgres in production already and would like nothing
better than to maintain one database engine that we can run and maintain.

Again - I'm not advocating that you switch the default, but if switching
database engines is not your bottleneck, then would you be willing to consider
that option (maybe Kickstarter it)

~~~
markjaquith
We don't currently have any interest in moving to a database abstraction
layer. We do, however, allow you to drop in a db.php file that can replace the
core database portion. That's not abstraction (you'll have to rewrite any
MySQL-isms to be compatible with your DB of choice), but it is an option for
people who absolutely cannot run MySQL. Microsoft wrote a WordPress plugin to
do something like that: [http://wordpress.org/extend/plugins/wordpress-
database-abstr...](http://wordpress.org/extend/plugins/wordpress-database-
abstraction/)

------
dave1010uk
As someone who makes WordPress sites almost 8 hours a day, what would be the
best start is a rewrite of the WordPress core on a popular, modern framework
(my vote would be Symfony2). This would bring a breath of fresh air to coding
for WordPress. Ideally much of the API would be similar too.

~~~
rmccue
One of the things we're looking at moving forward is using things like this.
We're taking a look at various frameworks at the moment as we look to move
forward on a few issues (such as request variable abstraction, for which we're
looking at Symfony's HttpFoundation/HttpKernel).

However, WordPress still supports PHP 5.2, whereas most frameworks are now
5.3+. There's still a huge [1] userbase still on 5.2, so dropping it isn't
really possible at this point in time.

[1]: <http://wordpress.org/about/stats/>

------
import
Forking WP is not a solution (maybe bad). If you want to make a revolution
write a blog app from scratch.

------
iuguy
It looks really nice and I'd look into it if it existed, but it doesn't. Is
there some sort of trend rising in putting mockups of vapourware?

I really like the split screen and markdown support. That would definitely get
my interest. But please, ship 0.1 and let us know, don't tease us with
vapourware.

------
timmyd
It's a super interesting concept because I think more sites are using
wordpress as a CMS and the custom skinning for wordpress sites has a spanned a
new industry in itself.

As a site note: super +1 for the very last comment, made me laugh.

 _"i hate it/hate you/hate everything - Noted. Haters gonna hate."_

------
apruss
All the "don't fork it, build it from scratch" and the opposite opinions
aside, someone should actually do something about it. WordPress is indeed
bloated and needs a solution faster than it takes for the X WordPress version
to ship, which might be a year (or two) away.

------
EwanToo
Personally, and I know this is a ridiculous dream, I'd rather see a clone of
Wordpress functionality which maintained 95%+ plugin compatibility, but which
had things like caching built-in (and just more sensible handing of files and
databases in general).

------
webwanderings
You should also develop a seamless and easy way to migrate blogs off of
Wordpress and/or Wordpress.com.

I also agree that they are taking WP to do too much and if you look at the
history, it all seems like trying to keep up with the popular trends
everywhere.

------
knes
I hate you a little bit. I read the whole website and started looking for a
download/signup link until I found out it is just a prototype, I'm very sad
now. :(

HOWEVER, your idea / prototype / concept looks awesome and it is something I
have been waiting for!

------
kijin
> _Less Options ... there are still too many options, too many settings, too
> many things which you have an unnecessary level of control over in the
> administrative user interface ... Things that many people have never even
> used. Ghost would get rid of all that._

And you hope to captivate the hearts and minds of the open-source developer
community? Haven't you seen what happened with earlier versions of GNOME 3 and
Unity? We love options. We love settings. We don't want them gone, we just
want them neatly organized and tucked away in an inconspicuous corner so that
we can tweak them at lunchtime.

You yourself might have never used an obscure feature, such as posting by
e-mail, but other people do use it every day, and will never switch unless
they can keep using it. In fact, there exists an entire blogging platform
(Posterous) that is based on the premise of posting by e-mail. Even my
grandfather, who is utterly lost when it comes to regular blogging, can use
Posterous because he knows how to send e-mail. Since Posterous is now on life
support, I've been considering migrating him to one or another WordPress
platform, precisely because WordPress supports posting by e-mail. If your fork
removes this feature, it will fall right off my radar. I'm sure that somebody
else will be able to tell a similar story regarding any WordPress feature that
you think is unnecessary or unrelated to blogging. For example, "No Comments":
excellent, now I need to send all my visitors to a third party who specializes
in tracking them across the world wide web. Someone who had a blog about
online privacy might consider it a case of hypocrisy.

It's easy to drop options and features that you don't see yourself using as
part of "blogging". Anyone can do it, and each person who tries will get a
product that fits his or her definition of "blogging". Such products, however,
won't gain widespread use like WordPress has. A much more difficult but
potentially rewarding task is to reorganize options and features so that
casual users get sane defaults and power users can tweak to their heart's
content. It takes a lot of careful thinking, planning, asking around, and UX
experience to get this right, but once you do get it right, the difference can
be stunning. As the saying goes, 80% of people only use 20% of features, but
each person uses a different 20%.

One solution would be to organize these "extra" features into easily
installable plugins, and to have those plugins ready _before_ you sign off on
your first official release. That would prevent the kind of negative publicity
that surrounded the premature releases of some Linux interfaces. But another
section of your write-up gives the impression that you don't want that many
plugins, either.

PS: But you should definitely kill the ability to edit themes using the web
interface. It's a security nightmare, leaving so many critical files writable
by the web server. Also, the split view looks wonderful.

~~~
erisds
WordPress already has a "hidden" options page which lets you tweak a tonne of
things. Therefore I think you're hitting the nail on the head with hiding the
lesser used options away. It'd be nice if, should you change a setting, it
would automatically become part of your main options screen & not the hidden
one. It would also need to be heavily documented.

I think this is probably preferable to the overhead of tonnes of plugins??

------
hippich
I guess it will cost me some karma, but...

Yes! Please do it. And put large text saying "This is blogging platform.
Please DO NOT build your next e-commerce site using this software." :)

------
hevyw8
I was just about to poll my friends about a blogging platform in between
Tumblr and Wordpress. Wordpress for my purposes has become analogous of
iTunes.

------
mseebach
"People often say that WordPress is free as in speech, not as in beer"

Do they? What do they mean? Can't you download the full, working source code
of Wordpress anymore?

~~~
qeorge
The author has the saying backwards.

WP is free as in beer (you don't pay for it) but _not_ as in speech (you can't
do whatever you want with it because of the GPL).

~~~
mseebach
It can't be that. He wants to fork WP, so the resulting software would also be
GPL.

------
forgotAgain
I have this great idea for a really cool new product. It shouldn't take a good
coder more than a couple of days. Contact me if your interested.

~~~
__david__
What a pointlessly snarky comment. I didn't see anything in the post that
implied that the task was easy or that he was underestimating the work. He
seemed to know the product, and to have even been involved with it directly at
some point in time.

------
jfmercer
I would support this (that is, contribute code) if it wasn't written in PHP.
Ruby, Python, Perl, node . . . anything but PHP.

------
kushti
How much money you got for Macbook ads? They are annoying. And having nothing
common with blogging platform idea.

------
JimWestergren
What is needed is a rewrite and not a fork.

But why Open Source? Such a proper rewrite is a big undertaking and I don't
see how that could be pulled off without financial compensation. Why not offer
it for let's say $19 per domain? I would easily pay for it and I am sure many
others. This way you could at least pay salaries to developers working on it.

~~~
lachlanj
Jim, this idea (private and pay per domain) is already done extremely well by
squarespace.com

------
malandrew
Why is the title and the first three paragraphs an image instead of selectable
text?

------
lionhearted
Very cool. Any thoughts on going the other direction -- the dedicated CMS way?

~~~
notatoad
There are plenty of dedicated CMS. The last thing we need is another one.
Although I suppose you could say the same thing about blogging platforms.

------
nickporter
I really like the image drag and drop in the markdown editor!

------
timdorr
So, this is basically Ghost:Wordpress::Firefox:Mozilla.

------
LittleBuddha87
a really nice idea! I love it! I have in january next year time is there a
repository where i can fork and work on it?

------
wolfparade
build this on top of jekyll or its a fail.

~~~
agius
Developer of <https://jekyllhub.com> here. I think Jekyll might be over-
complicated for what Ghost is going for. WordPress and the hypothetical Ghost
seem to target the mass-market; Jekyll is mostly about power features. Easy
integration with git via the filesystem, code highlighting with pygments,
configuration with yaml... most people really wouldn't care about that kind of
stuff.

------
sandGorgon
Postgres - and you got my money.

------
jgv
why is this web page a series of images?

------
mars
"wordpress is awesome"... NOT

~~~
mokash
A well written argument with plenty of valid points. I'm just going to stop
using Wordpress now.

~~~
mars
i don't think it's the right place to go into detail here, but there are so
many things which make wordpress NOT awesome, that i cannot take anyone
seriously who states that wordpress IS awesome. architecture, performance,
wordpress's code itself, templating, continious security issues just to name a
few.

~~~
mmishra
Is there any alternative ? I guess there platform is very generic that is why
there are 1000s of themes. I was able to build up <http://syncfin.com> in less
than a month using wordpress and with an awesome theme. I believe it is a
great platform but would like to know if there is any alternative ? I am not
looking for RoR or DJango for just a simple blogging needs until there is some
significant performance improvement prrof.

