
Ghost 1.0 - pieterhg
https://blog.ghost.org/1-0/
======
tbenst
And, four years later, they still have not fulfilled their kickstarter promise
of the Ghost Dashboard. This was the most requested feature on their public
trello roadmap before the card was deleted one day. Over the years there have
been many inconsistent messages around this feature being worked on, then
delayed until Apps, then eventually forgotten. Maybe this was the right
decision for the company, but certainly a case study in how not to manage
public expectations and the danger of public roadmaps (you'll be held
accountable by frustrated customers!)

I'm still a paying customer of Ghost Pro but migrating to self-hosted Hakyll
static site. Ghost has grown to serve a completely different market than they
originally set out to serve.

~~~
wlesieutre
Interesting. I saw Ghost when it was on Kickstarter and my mental model of it
was still "That's the blog platform with the nice dashboard."

Guess not.

I did look at them again (Ghost Pro) last time I thought about setting up a
blog, but there was no way to serve static files alongside posts. Anything
that's not the text and images has to be hosted separately unless you want to
roll your own Ghost server. If I ever get around to making myself a website
I'll probably just use Pelican.

~~~
tedmiston
It is pretty easy to self-host Ghost though.

~~~
wlesieutre
And it's even easier to not!

I'm sure I'm capable of managing a webserver, but it's one more thing to worry
about that I'd just as soon skip.

------
chipotle_coyote
Remember back when Ghost's slogan was "Just a blogging platform?"

I've been following them off and on for years, because I liked the notion that
it'd be good to create a modern version of WordPress that focused on blogging.
But they've swept that vision of Ghost under the carpet -- excuse me, they've
pivoted -- to claim:

 _Ghost was founded in April 2013, after a very successful Kickstarter
campaign to create a new platform focused solely on professional publishing. "

And, okay, but maybe they should remove the link to that Kickstarter page,
given that the word _professional* doesn't appear on it once. Yes, they say
"Ghost is a platform dedicated to one thing: Publishing," but they go on to
say "Ghost allows you to write and publish your own blog," a use case that is,
to say the least, significantly downplayed by their current messaging.

I wish them well in Creating The Future Of Publishing™, I guess. Meanwhile,
great application idea: maybe someone could create a modern version of
WordPress that focuses on blogging.

(Yes, Jekyll Hugo static site generators woo, but for people who are _not_ HN
regulars, having something you don't need to build and deploy from the command
line is a nice thing. I went with WP for my new web site because despite my
sincere belief that WP's internals are a series of dumpster fires connected by
require() statements, WP's dashboard -- and its API -- are pretty useful.
Ironically, from what I can tell Ghost is way behind on both of those fronts,
even at 1.0.)

~~~
suyash
Anyone knows some light weight Node JS based alternatives to Ghost?

~~~
jameskegel
Express and a weekend with Google.

------
callahad
> _we 've marked Ghost 0.11 as a Long Term Support (LTS) release. We will
> continue to provide maintenance and security updates for Ghost 0.11 for the
> next 6 months._

What's the lower bound on labeling something "long term support?" If I recall
correctly, Canonical introduced their LTS releases, which are supported for
five years, to address concerns about their six-month cadence.

------
goodroot
Phew, tough crowd. We use Ghost for our company blog. It works great! Spun the
new editor up locally and it's pretty slick; I'm excited to use it.

Nice work, Ghost Team. Only gripe is the electron-desktop application; Byword
integration with Ghost would be preferred, or a method of using a well
integrated non-electron native application, if Ghost isn't too keen on cooking
one up -- which, I understand.

------
unethical_ban
So wait, why is everyone hating this product? I installed it and thought it
was pretty cool (though I didn't keep using it beyond one post, on how to
install it!).

On-site live Markdown writer/viewer, easy publishing... seems like a pretty
simple system for a lightweight blog.

~~~
simplify
Yeah, I'm not sure either. I've been using ghost's hosting for years, and
haven't had a single problem with it.

------
venantius
I've used Ghost for a number of years now, both self-hosted and using their
hosted service (for both business and personal uses!). So I suppose I fit the
complete matrix of their target user.

I'm pretty excited about this new release - the editor has always been nice
but I'm thrilled to see they're investing in improving it, and I'm also
unreasonably happy to see a dark theme added.

Mostly, I'm just happy to see that they're working on it and that the changes
are directionally correct. It would be easy for them at this point to start
making mistakes, but I think they've been fairly good at figuring out what
people use Ghost for and responding to their needs accordingly.

The team has also been quite responsive when I've submitted support requests,
which is always an extra plus in my book.

------
andrewbarba
More technical article worth reading:
[https://dev.ghost.org/ghost-1-0-0/](https://dev.ghost.org/ghost-1-0-0/)

------
zimpenfish
> We are also now defaulting to MySQL for production blogs as a future-
> proofing measure.

Oh FFHS, must this scourge infect everything?

And there's no Docker image for 1.0 up yet.

~~~
ihuman
What were they using before, and what's wrong with MySQL?

~~~
jlmn
Postgres was an option for production along MySQL and SQLite3 was suggested
for development instances. Sqlite3 is still supported.

The mentioned why they dropped it here: [https://dev.ghost.org/dropping-
support-for-postgresql/](https://dev.ghost.org/dropping-support-for-
postgresql/)

> Without active community support, Postgres has always been, and always will
> be a second-class citizen. For that reason, we are dropping official
> Postgres support from Ghost core.

~~~
andrewbarba
This is incorrect, Postgres was always second class. I know because I tried my
best to keep it running on postgres for months, back the 0.5.x days, and it
was always a source of frustration.

~~~
seanwilson
What kinds of problems did it have? Why is it so difficult to support MySQL
and Postgres at the same time, and why would MySQL be prioritised?

~~~
zimpenfish
> why would MySQL be prioritised?

"Because it's easier to slap a system together on MySQL". Which, to be fair,
it is but that's not a good thing when you're talking about data.

~~~
seanwilson
Why is it easier though?

~~~
zimpenfish
Because it was a lot easier to deal with permissions, you could write "SQL"
rather than SQL, it was very lax with SQL keywords as table names (ie. you
could create a table called 'user'), replication didn't involve selling your
soul to several devils, etc.

It's like Rails - it's easy to slap something up but once you start using it
in anger, it requires all the handholding and effort.

------
33degrees
They mention building their new editor on this:
[https://github.com/bustle/mobiledoc-kit](https://github.com/bustle/mobiledoc-
kit)

Anybody have experience with it?

~~~
mixonic
Mobiledoc dev here. Mobiledoc is used at Bustle (who funded initial
development) on two properties, at Upworthy, Daily Beast, and on several other
sites. We're extremely proud this work has also been adopted by Ghost and hope
to continue working with them for a long time :-)

One of the benefits of Mobiledoc is that we provide a documented and versioned
file format for serialized documents. This allows developers to share
renderers for Mobiledoc content. Bustle for example publishes Mobiledoc
articles to it's own HTML, to Google AMP, and to Apple News.

Mobiledoc also supports runtime-customizable "cards" for rich content. For
example a writer might add a video to an article- but for each rendering
environment the runtime version of that card must be different. The cards API
allows developers to offer custom editing and embedding interfaces without
breaking the general text editing interface.

Try it out and let us know what you think. You can join our Slack:
[https://mobiledoc-slack.herokuapp.com/](https://mobiledoc-
slack.herokuapp.com/) or find me on Twitter as @mixonic.

~~~
33degrees
Yeah, it's the "card" functionality that appeals to me. I was planning on
building something using slate.js but Mobiledoc sounds like it will fit my
needs. Thanks for responding, I'll check things out.

------
laacz
So, this is so weird. That link shows everything blurred. Windows 10, latest
Chrome. [1]

1: [http://imgur.com/XmquYMF](http://imgur.com/XmquYMF)

------
thenomad
The Koenig editor looks a lot like the Medium editor. Bravo. Looks very cool.

(Can it output static content? Ghost's fast, but HTML's faster. :) )

~~~
lookingsideways
Ghost renders static HTML and includes relevant cache headers on it's
responses so if you have a cache or CDN in front then it's pretty much
indistinguishable from static HTML :)

------
jeremy_k
I really wanted to like Ghost. I self hosted a blog for a couple years (didn't
use that much) and really enjoyed tinkering around with the JS and deploying
some custom code. But I just really felt like having no metrics was a huge
disappointment; not that I would have garnered tons of views but it still
rewarding to see them. I once had Blogger account where I posted some random
iOS learnings and one of the posts actually got a lot of views, which was
really cool to see.

Seeing this 1.0 release and then going to the roadmap board and seeing
[https://trello.com/c/rQL1Kiyx/61-post-
analytics](https://trello.com/c/rQL1Kiyx/61-post-analytics) that the analytics
is still in the backlog is disheartening. Maybe some users didn't like the
editor, but I found it to be sufficient. So here we are two new editors!!! and
no post metrics...

~~~
api
Install Piwik?

------
npunt
Really impressed with the update, and _really_ excited about the new Koenig
composer. Having built a CMS at my news startup (edsurge) I know firsthand the
pain that comes from composers that use html as the document storage model,
rather than a more flexible (and recompilable) intermediate format like json.

I've long liked the Ghost approach, but some of the execution (composer,
themes, and lack of self-updating) has been seriously wanting. Looks like 1.0
fixes these points.

My big gripe with 1.0 is the default Casper 2.0 theme. They've decided to
include one of the most persistent anti-patterns on blogs of adding a fixed
header sharing bar [1]. Mobile devices already have both sharing and scrollbar
functionality, making the header both redundant and actually worse UX, since
it takes away valuable reading space. It's totally for the benefit of the
blogger and chasing a trend at the expense of the reading experience for the
user, all to get a few extra shares. This has been covered before [2].

My view is defaults like these are _so_ important in encouraging best
practices and setting expectations. Although its only on this one theme (and
can be disabled easily if you dig around and customize), I imagine other
themes will dutifully copy the pattern, assuming its how the Ghost experience
should be. From the outset, Ghost was about 'just a blogging platform', free
of the cruft of Wordpress - a minimal expression of what blogging should be.
This sharing bar is not that.

Still, kudos to the Ghost team for shipping 1.0. So many good changes.

[1]
[https://twitter.com/nickpunt/status/890641710488756224](https://twitter.com/nickpunt/status/890641710488756224)

[2]
[https://daringfireball.net/2017/06/medium_dickbars](https://daringfireball.net/2017/06/medium_dickbars)

~~~
pascalandy
There is no need to cry about this. Casper has been migrated to Ghost 1.0 as
well.

You basically have two option now:
[https://github.com/TryGhost/Casper/commits/master](https://github.com/TryGhost/Casper/commits/master)

Have fun :-p

~~~
npunt
Were I to push a change to Casper, my sense is it would be rejected, as John
O'Nolan (the Ghost maintainer) responded to the tweet I linked with:

> "It’s really not an anti-pattern. And it can be disabled with literally 1
> line of code"

Since we disagree about whether these bars are good or bad UX, I believe
that'd be a non-starter. And although it can be disabled, it adds unnecessary
friction -- defaults should encapsulate best practices. As Ghost is a blogging
engine that should appeal strongly to less technical users (by being simpler
and better UX than wordpress), having to manually download, edit, and reupload
a theme seems to not be in alignment with one of the key value propositions of
the product. I doubt most users even change the default theme, and that's okay
- frankly, that's a sign that the product is really good.

Since you're new here (or at least your account is new), HN is a community
where we regularly discuss things like the scourge of downloading 5MBs of
javascript in order to view a single news article, the importance of sane
defaults, or other specific issues related to design and tech. It seems
pedantic but its a place where people care about such things, and we don't
typically tell people they're crybabies when bringing them up.

------
dahauns
Whoa, easy there on the css effects. Might come out a bit silly otherwise.

[http://imgur.com/a/Dk9Jl](http://imgur.com/a/Dk9Jl)

(No, there's nothing wrong with your eyesight - this is a 100% crop from
Chrome.)

------
lord_jim
I wish you could just run ghost locally and then publish a generated static
site. I actually much prefer the Jekyll flow to ghost but the core ghost ui
and functionality are great for less technical bloggers. It just seems like a
waste of time and money to be running a node app to serve what are essentially
static pages

------
nahum1
C'mon now, Ghost was a scam! The guys took like 200K+ and if you add all the
extra from their pro services you will go crazy. All these money for what? 4
years of development and a buggy heavyweight platform. Give me 200K and I will
personally code it way better in 6 months or less without any bugs and shit.

~~~
johnonolan
[https://twitter.com/mathowie/status/837735473745289218](https://twitter.com/mathowie/status/837735473745289218)

------
alexellisuk
I'm still not sure about the re-work of the Ghost platform, it feels way more
opinionated and I liked the ability to pick and mix components. However the
Ghost CLI is a step forward.

Read my quick test-drive and try out 1.0 in Docker in 5 minutes:
[https://blog.alexellis.io/try-ghost-1-0-in-
docker/](https://blog.alexellis.io/try-ghost-1-0-in-docker/)

------
jasonrhaas
Why is this markdown editor better than Medium's? It probably has a few more
features but the design and UI looks like a clone of Medium.

~~~
mattferderer
LinkedIn also uses a similar WYSIWYG. This design has been around longer than
any of these companies have been using it.

What separates this is that you won't just get a dump of HTML from the editor.
You'll get the content split into JSON [https://github.com/bustle/mobiledoc-
kit/blob/master/MOBILEDO...](https://github.com/bustle/mobiledoc-
kit/blob/master/MOBILEDOC.md)

This is beneficial if you plan to use your content in more than one place. For
example, maybe the content is used on multiple websites, pulled into an e-mail
newsletter, displayed on digital signage, integrated into an app or news
services outside of your control. If you're interested in this idea, I suggest
searching for the terms COPE or decoupled CMS.

~~~
samat
Headless CMS is also popular term

------
the_common_man
Is there way to automatically migrate a pre-Ghost 1.0 ? (like using APIs
instead of clicking through a UI?)

------
garagemc2
on a side note, does anyone know how to get that text effect on the headline
image (that says ghost 1.0)? Is there a common pattern?

~~~
rocktronica
Looks like a "paint" font on top of a filtered stock photo

[https://blog.ghost.org/content/images/2017/07/DJI_0006-Edit....](https://blog.ghost.org/content/images/2017/07/DJI_0006-Edit.jpg)

------
mstjohn1974
I looked at it once last years and it is really easy to you and very nice
designed. I like it.

------
ahben
still no auto upgrade??? :(

~~~
johnonolan
Sure, this release includes Ghost-CLI, which enables auto-updates for the
first time. Details here:
[https://dev.ghost.org/ghost-1-0-0/](https://dev.ghost.org/ghost-1-0-0/)

------
ejfox
I love that nowhere in this post do they explain what Ghost is or who their
customers are or any of that. At first I thought, I guess, IA Writer
competitor? Then, maybe, 2017 Wordpress alternative? Super unclear.

------
suyash
I'll consider using this platform when they move away from monolithic Ember.

~~~
bluehatbrit
How does their choice in front end tech make a difference from a user
perspective? If they'd built the same thing in Angular or React, it'd still
function the same way.

~~~
suyash
It depends a whole lot if you are releasing the software as open source and
want other developers to contribute to it. That is what they have done.

~~~
disordinary
Yeah, that's why Ember is so great - any developer who is familiar to the
stack can contribute as there are standards and patterns which are consistent
across platforms, Ember is also the perfect fit for a large and long term
project which is constantly evolving because of the backwards compatibility.

The other consideration is that Ember is a community driven project and isn't
beholden to some large corporate monolith.

------
lcnmrn
I rather hack my own blog engine in PHP
[https://github.com/lucianmarin/instanote](https://github.com/lucianmarin/instanote)
rather than using Ghost.

~~~
sametmax
Thank your for spaming HN with your project.

~~~
slig
Why the snark? I see this happening everyday here. The only difference is that
people also use "shameless plug", or something like that.

