Giving up on WordPress embeds

Back in 2012, I wrote a post called Conversations as a future of blogging. Well, I say I wrote, but actually I must have had a conversation on this up-and-coming platform called branch.com with a few people I invited to it from twitter. Using their tools, I embedded the conversation to my blog on the link above. I thought the embed would last forever, because a) where is branch going to go, and b) WordPress usually gracefully downgrades embeds, right?

Nope. branch.com died three years after launch. They gave us a period of time to request backups of our conversations. I remember doing that, but I never received one in my email. Perhaps they expected me to come back to their site to download the files? I asked all the other people involved in the conversation and none of them cared to request a backup of the copy. This goes back to my posts here about the futility of exporting your data from online services, even though in this case, a full backup was exactly what I needed to recover my blog post.

I was further wrong in that WordPress does no such thing with embeds. In the case of officially supported embeds, I’ve seen the system do this once before and I thought that was standard behavior, but in the case of link embeds, there’s no clear way for it to be possible.

Recently, I introduced a random post finder to my blog. With it, I’ve been discovering a lot of great and terrible posts I’ve written over time. It’s my way of getting closer to my blog.

But it has also left me reeling from all the broken links and embeds that I trusted to work forever. The branch.com embed, images and links I’ve linked to, PDF files I thought would never go away. Heck, even Facebook CDN stuff has disappeared and that company doesn’t let go of any data!

Recently, Automattic introduced inline GIFs from giphy through Jetpack. The model they’re following is pretty neat – they shipped the Gutenberg editor within WordPress 5, and have been extending it using Jetpack with blocks that allow various kinds of content, including GIFs. It shows the scope that Gutenberg has in the future.

Coming back to embeds, Giphy, the company Automattic is leaning on, came into existence in 2013, and I suspect will be out the door before its 10 year mark. Such is the way of life on the Internet. All of these are fads and fads can raise millions, but they eventually all die. Automattic will simply pull out the block from Jetpack and replace it with something else, but we users will be left with broken links and missing context on our blogs.

When the block was introduced some time ago, I played with it and added some GIFs to a blog post. It’s a lot of fun to express ourselves visually. But if branch.com is any indication, embeds come back to bite us later on.

Therefore, I’m getting off embeds. I’d rather download the GIF and upload it to my media. I’d rather take a screenshot of a webpage than to iframe it and hope it sticks around a few years from now. Jetpack already has a massive CDN operation behind them, so you’re never really serving your content directly from your site if they can help it. So there’s no need to worry about storage and bandwidth issues.

As I go through my site, rediscovering old posts, I’ll keep coming across these embeds. Whenever I have context, I’ll try to replace it with relevant information. But, as in the case of branch.com, I will just put a note that explains what happened there, some general thoughts on the topic, and move on. Once bitten by embeds, twice shy now.

Don’t Moleskine your blog

Have you ever seen people using a Moleskine notebook in public? You can see them using a fancy pen or pencil, writing in beautiful cursive, making excellent sketches, drawing straight lines without scales, right into their beautiful overpriced notebooks. It’s a gorgeous and truly scary sight.

I’ve never been able to buy a Moleskine notebook. I’ve often come across them in shops and stores, but every time I flip through the well weighted, elegant pages, which can give you paper cuts all day, I realize that I’m not worthy of a Moleskine. My handwriting is terrible. My ability to sketch wouldn’t save my life! Besides, the most important thing I want out of any notebook is the ability to scribble random ideas, or write small notes into. I want to just dump chicken scratch and small paragraphs in, without having to worry about elongating, or writing perfectly. Do I furiously scratch out words as I’m writing? All the time.

Would I ever want to use a Moleskine for that? No.

I recently came across this post by Jeff Perry –

It got me thinking – do we sometimes treat out blogs as Moleskine notebooks? Do we worry that we must only present our best writing on them, instead of just putting our ideas out there, perfection be damned? Yes, we do. We write entire posts and then save them in drafts, only to forget them forever. Either we’re not proud of our writing, or we’re not sure if it’s the right time to publish them, or we’re unnecessarily being perfectionists. Whatever the reason, what happens when you open your blog the next time? You come to the homepage, or the admin dashboard, and what do you see? The drafts? No. That’s a hidden page somewhere, totally ignored. So we move on to the next idea, and then the next, until our creativity is stifled and our spirits dampened by the lack of publishing. Why do we do this? Because the home page of our blog, at least in our minds, is a public space, and on it, only our best work should be displayed. But this is not true. CMSes allow two states – logged in and logged out. When you’re logged in, your blog’s home page is, in fact, not a public space, but a private one. Most of us do not realize or understand this, let alone capitalize on this simple idea.

I learnt about this problem in 2017 and solved it for myself. I want to share the idea with you, dear reader, so you can also stop moleskinning your blog. I’ve alluded to me writing this post before, specifically mentioning a key aspect of my solution – that when you see my blog’s 2018 archive, you see 25 posts, while I see 59. Yes, that’s thirty four posts that are not sitting tucked away in a drafts folder, but active and alive on my blog, albeit only for me.

Here’s how – this plugin on WordPress can set the default visibility of every new post you create on the web to Private. If you’ve never done this before (and I had not, till I discovered this solution), go ahead and manually try it now. When you change the visibility of a post to Private, WordPress immediately changes the save prompt from “save as draft” to Publish. You can finally get it – you can hit that Publish button and get that sweet, sweet rush of publishing something, but you can also get the freedom to read your post after some time, catch a few errors, a sentence you don’t like and such, and finally, when you’re happy with it, you can publish it publicly, which, by then would be a much smaller cognitive step than publishing it for the first time.

Side note – I’ve long recognized that seeing your blog posts on the front page of your blog, with theme and all, is a much different experience than writing and editing inside a text area and then publishing it. The feel is different, your eyes move differently to that beautifully set font, but most importantly – your mind responds differently.

I’ve tried hard to capture this feeling. A few years ago, when I found out about front end editors, I tried every single one I could get my hands on. One of my favorite ones was Barley. It was very well built, and a charm to work with. But front end editors come and go. Besides, the mind’s response to an editor is still that it is just that – a workspace. Even in the look and feel of my blog’s theme, the words seemed to flow differently when they were in edit mode.

I’ve been excited about Gutenberg since it was announced. But when I installed it in beta, it was horrible. However, the first release was actually quite good for me. For some reason, when I turned on SSL on my blog, one of the Gutenberg JS files crapped out (probably something to do with bad caching) and I can’t use it any more for post creation. I’ve gone back to the Classic Editor for now.

Just as well, because I noticed that when I was using Gutenberg, my willingness to quickly pound out an idea to the blog actually went down. Maybe it has something to do with the fact that the Private Posts by Default plugin only works on the blog when using the Classic Editor. That’s because it uses JavaScript to change the visibility setting on the fly. It’s a little silly, but it’s a better solution than the other hacks I’ve found, including a database script that’s changes the visibility setting as soon as you actually publish a post to public <shudders>.

Coming back from that long winding side note, when you’ve published a post to private, go your blog’s front page and just read. Be a consumer. Be a reader. The first time I did that, I found two spelling mistakes I’d made towards the end of my post. It’s so much easier to do that when your mind is just casually glancing at words instead of trying hard to be creative and write. The second time I did it, I was able to find a few sentences I hated reading and edited. Immediately after I made the edits in both the cases, I changed the settings to set the visibility to Public and published my posts. I’ve even used this process to sit on a post for a few days, slowly edited it every day, till I was ready to hit publish. Of course, you need to be careful to set the time and date of publishing to the current time and date instead of the value it’ll actually be – the time when you first hit Publish.

You don’t have to use the plugin. Whenever I’m on the WordPress iOS apps, I just head to the Post Settings section and quickly set the visibility to Private.

As I said before, stop moleskinning your blog. It’s not a perfect, pristine place which must always reflect the best work you’ve ever done. It’s alive. It’s a creative space where your ideas should stare you in the face so you can always work on them, and when they’re presentable, you can show them to the world. If you don’t ever want to, that’s fine too.

p.s. I let this post marinate on my blog in private mode for one night. According to WordPress, I have edited it twelve times after the initial publish. 😊

A year with Facebook

A year ago, I decided to change my relationship with Facebook. I decided to be more active on the network, but not in the way Facebook would want me to be – commenting, liking, browsing, and clicking more.

I wanted to use Facebook to put out my thoughts more. So I actively started blogging more and putting it all on Facebook, a practice I had stopped for a while because I wasn’t getting anything out of it. I did another thing – something I’ve often been told off for, but I just wanted to experiment with – I connected my twitter account with Facebook. The benefit? All my tweets (and quote tweets, which is a little silly) started getting posted to Facebook. This meant that each passing, silly thought, which we often toss into the void, became instantly visible to my real life friends.

In a way, I did do all the things that would be considered an increase in Facebook activity – I have spent the past year listening to a podcast called Philosophize This! The podcast has an accompanying community on Facebook. Though I didn’t interact with the community much, I did become a part of it. I also found a community relating to an app I use a lot – Day One. The community also chugs along, though I’ve not derived as much value from it as I would like.

I also started using Facebook a lot more. There was a time when I would gleefully count the stupid notification counter on the Facebook website approach 99. I call it stupid not because I have prejudice against it. I like notifications. They’re an excellent approach to garnering attention. But somewhere along the way, Facebook decided that I am not a worthy enough user of their service and they downgraded my experience. They made the counter stupid by pushing every little activity to it. Things which belong in the newsfeed – someone posted something, someone liked someone else’s post, someone had a birthday – were suddenly in my notifications. But at the beginning of the year, I decided to be more proactive, hoping that the algorithm would notice this and rid me of the stupid notifications and only give me the smart ones. I’ll let you know that the algorithm is not smart. It never did recognize my contribution and that portion of the experiment quickly bombed. Now I don’t care what the notification counter says. Whenever it irks me, I click it to reset it and ignore the notifications. (They’ve added even more notifications now – friend suggestions, community posts; heck they’ve even added Facebook notifications to the Instagram app, because why ruin just one social network when you can ruin two?)

I even went ahead and actively started using Instagram. I thought, maybe one Facebook property will feed into the algorithm of the other? See above regarding algorithm smartness.

But the last thing, that of posting more, I did religiously. After my initial December 20th, 2017 post, I’ve posted 25 public posts on my blog, a marked increase over the 13 posts I made in 2017. The plan was that all of the posts would be posted to Facebook and the ensuing conversations, controversy, and opinion would all happen in Facebook. After all, only if I contribute more to the platform, will I reap the rewards of the happiness that are supposed to come from it.

I also definitely did not delete any (well, most) of the tweets that got pushed from twitter to Facebook. I don’t like posting about political stuff openly. It’s like religion, everyone has one, and it’s best kept personal. But some tweets do get out once in a while. I believe I deleted those from Facebook. About 70 tweets made it to Facebook before disaster struck.

In the words of Hillary Clinton,

What Happened?

Well, the year started off nicely. Posting to Facebook is certainly a good way to garner attention. Friends who often forget that I have a blog were reading my posts and sometimes even clicking through to come to my actual website to check it out. The fact that Facebook discards in-text HTML, thus removing all URL references from a post both helps and hinders. It removes all context, but it also means that astute readers realized they had to click through.

I don’t have a lot of unknowns on my Facebook account. I do have a bunch of acquaintances, and people I haven’t met in years. I’m not a particularly social person irl. But everyone on there is someone I know or knew once. So it’s not like I was able to appeal to the masses and drive ‘traffic’ to my blogs. What I did achieve is a meager amount of conversation – a few likes and comments per post.

This extended to both types of posts. Folks who had never heard me express things about the random topics I post about on twitter and other microblogs, suddenly had access to my thoughts. Some reacted like idiots, some had positive or negative comments, and some just hit like and moved on.

All this stopped on August 1st. The declaration came in the form of a blog post by Facebook on their developer portal on April 24th. It was hidden between a bunch of other deprecated APIs, which I’m sure broke a lot of other things for other people. At the time, a huge noise rose, specially in the WordPress world about this. A lot of blogs depended on this API to post to Facebook using either the Jetpack plugin or the dlvr.it service (or other, similar services). Matt Mullenweg commented on the change, hoping that Facebook will reverse their decision and re-embrace the open web, to which this decision shuts the doors. But that’s not Facebook’s way. I reckon they heard him once in 2017, so they’re done listening to him for a decade.

I didn’t bother with finding workarounds to this problem. Smarter and more dedicated people than me would have found ways if there were any. Regardless, I wrote a blogpost on August 2nd and manually posted it to my Facebook profile on August 11th. This was my last cross-post from twitter or my blog to Facebook. It did not get any likes or comments.

According to some people, removing this API is important in helping fight the corruption that was revealed in the Cambridge Analytica scandal. But from what I can see, removing the ability for content to come in through legitimate sources is certainly not the way to go if you want to increase trust in your system. This was just a random move by Facebook, which is running around in headless chicken mode right now. It would be better if it were actually headless right now though, because the current head is part of the pattern of problems that Facebook manifests in this world.

Regardless, my year-long experiment ended mid-year.

The outcome of this experiment was this – I fell in love with the written word again. I also fell in love with my blog again. Though I now have newfound respect for a few things – first of all, I’m glad that my twitter is no longer connected to Facebook. The stream of consciousness that goes into twitter is not at all suited to Facebook, even though it should be, and for a majority of the world this has been a learning curve. Rants and raves belong to the place where outrage is common. You put it on Facebook and you alienate friends and get fired from jobs. While none of that happened to me, the effect was clear – people who I’ve never bothered to talk to my every day thoughts about were suddenly talking to me about them whenever I met them. This was… awkward. So I’m glad it’s no longer happening.

The second thing I’m glad of is discovering a rather important aspect of WordPress – private blog posts. While I’d like to talk about this more in another post, the overview is this – when you see 24 published posts for the year of 2018, I see 58. My process used to be that I would write a post and just leave it in drafts if it didn’t feel ‘complete’. This was wholly unsatisfying. Now, I privately publish my posts, giving them a timestamp that helps me date my thoughts. I also believe deeply in the concept of the blog as an Outboard brain as once proposed by Cory Doctorow. Though not as vibrant and well published as his blog, Boing Boing, my blog is my space, and having things published and showing up on the home page of my site when I’m logged in means I get to think about those things more.

What happened on the Facebook end of things? I noticed that the folks who interacted most with my posts were the same over and over – friends in the US who share my time zone, and some in India who I frequently interact with on Facebook. But what happened when the posts stopped? Nothing.

No one noticed. No one pinged me and asked me what was wrong with my blog and my tweets. Part of this is just the way the internet operates. Even with the extensive RSS setup I have, where I follow a lot of amazing blogs, if one slows down, I don’t have an easy way to figure it out. Time spent on the internet gets filled up by whatever is available.

The other half of this, I blame on Facebook. Their algorithm has become too smart for themselves. A willing user such as I should be able to push my posts to my friends without acting like an SMB and paying them money. In the same breath that they turned off the wall feeds, they promoted creating a separate page for one’s blog. This is a bad approach. For Facebook, it makes perfect sense – they can easily show hundreds of thousands new pages being created within the year, with all that untapped potential for paid promotions. That money will never come. A blogger such as I would rather trust the open web as a source of feedback and views than Facebook, whose track record for respecting ad spend is poor if not terrible. Facebook is a hungry beast, always looking for its next fix.

I’m tired of being Facebook’s fix. I don’t care for it any more. I have had an intense love for it as a platform at one time. I’ve been in awe of the leadership at one point. But now the spells are broken. 2018 was a journey, both public and private, in trying to see where Facebook goes. For me, it’s led itself to a dead end.

postscript – I opened Facebook recently, after perhaps a month, and a few things jumped at me. First of all, Facebook wished me for being with them since ten years. I think that’s serendipity. No social network online has a good life of more than a decade. Facebook should be no exception. While the company has morphed and plundered and established itself as the place to go to steal access user data, it should know that its main platform is tired and done for. I will slowly stop visiting and interacting with it. I know a lot of people have done this in 2018, but I still have derived some utility from it, so I’m sure it’ll feel somewhat bad to do so. On a new device I setup recently, I specifically made it a point to uninstall Facebook (it came preinstalled for some reason), while I did install Instagram. I know this is counter intuitive, but this is a signal from me to the company that it’s time to retire your aging platform or at least break it up instead of amalgamating into it. Facebook’s ugly attempts at driving people back towards their main property are so transparent that they should accept that it’s time.

The second thing I noticed was that Facebook had killed off an ugly experiment it has forced me to be a part of since two years – the Facebook marketplace and Video tabs. The main app has had these tabs since the beginning of 2017 for me (ymmv) and I never used them. I’ve looked forward to the day Facebook does *one* smart thing and recognizes that users would like an experience that’s suited to their needs instead of Facebook’s. By the way, for a brief time last year, when I discovered the Facebook groups app, my daily activity on Facebook actually increased, because I was able to get an ad-free, clean, groups-only experience of Facebook. Then FB killed off that app. So it goes. I’m glad that Facebook has removed its craigslist clone from my Facebook experience, but I didn’t celebrate it the day I saw it. Too little, too late.

Some thoughts on WordPress 5 and Gutenberg

Ok, this is me trying out Gutenberg after it’s full GA release. Let’s see how well it works. This entire post has been written on Gutenberg on Firefox on Windows, saved, privately published, and then edited on Gutenberg on Firefox on Mac, and published publicly. Yay.

Hmmm. There are some interesting quirks. The private publishing thing is available, so potentially there’s scope for the private posts plugin to be updated for Gutenberg. I like this plugin because every post is private by default and that gives me the freedom to publish immediately and edit later.

On a rock, undecided.

There’s an oddity here that might be useful to most people – when you start editing, the menu on the right shifts from Document to Block, so you can quickly change the Block settings if you want. That’s nice and all, but the switch is irritating to me. Maybe in a while I won’t even notice.

Other than that, it’s definitely performing better than it was last time I played with it, when it was in beta. That time, it just completely soured my experience because it kept crapping out on me. But this time, it seems stable and I can actually type a sentence without being constantly kicked out of the editor.

This is a title. Yeah, I know.

LOL. I just noticed that Gutenberg has support for drop capping. I don’t think I’ve ever had it before in my blogs. Interesting!

Is Gutenberg supposed to be useful for longform writing too? I don’t think longformers care about inline images. Also, the whole moving text up or down thing doesn’t make much sense to me. It’s just a weird concept. Maybe it’s useful to speech writers or essay writers – they need to present ideas in coherent ways, with each paragraph a complete idea. So technically, they could massively benefit from being able to move ideas around quickly for the overall coherence and flow of the thing they’re writing.

Wait, does Gutenberg not have autosave? The Classic editor does. It does it every time you stop writing for a significant and noticeable amount of time. But Gutenberg just seems to sit there.

I hit the gear icon and the right side menu disappeared. That’s good. More screen space to focus on writing, even though all the writing is happening within this one central column.

I wonder if Gutenberg would be useful to Instagram poets. Does this allow you to place text anywhere on the page? That might make a very pretty ‘flow’ thing that would work beautifully! If it doesn’t exist, someone should make it!

I really like Unsplash for pictures now. It’s not always on point, but there are some gorgeous pics out there! The Instant Images plugin is also nice – it doesn’t play with Gutenberg, but it sits outside and so it’s easy to add an image and then come to Gutenberg on an already open post and just click on the image block to pull the latest images. That seems to work well. My main problem with the plugin is that it’s got a max image size. They’re just trying to foster consistency, I think. But for an image that’s 5000×4000, to bring it down to 1600×1200 max size is a little irritating. But it does the sizing well actually. No graininess there! (Except maybe the graininess introduced by my theme)

Inline images in Gutenberg aren’t perfect. They don’t do everything as advertised, which will put more pressure on theme devs, I think. For example, the three images in my post till now don’t quite align the way I see them inside the editor. Weird. I wonder how they’ll look if I exit the editor and come back?

Embeds are separately supported now, as a block for each one of them. Nice. Good exposure to functionality. Earlier it used to be – use this shortcut and put the url in there in this format, and then do this incantation to call upon that demon to embed stuff on your blog. Now, it’s just there. Might actually cause an increase in link embedding across WordPresslandia. Maybe. Let’s see. I noticed after publishing that the embed doesn’t look the same inside and outside. Jeez. I think the embeds are a feature of Jetpack and that needs to be further updated to work properly with Gutenberg?

Instagram embedding did not work. Maybe because my blog isn’t https? I dunno. It’s fine.

I wonder if Automattic is tracking Gutenberg installs and usage? They should. It’s pretty good to highlight usage in the first week, first month etc.

edit: When Gutenberg opens in edit view (or maybe this is only on Mac), the currently being edited block is highlighted while others are faded out. That’s nice for focus, but weird for reading and revising

edit to that edit: I realized this is called Spotlight mode. Now, why is Spotlight mode active on my Mac and not on Windows? Don’t tell me there’s small JS differences which the devs have not reconciled yet.

edit: Gutenberg is NOT a happy camper on the Mac. I can move the central edit column horizontally in a not-so-good way. Separately, the dropcap paragraph, when it moves into edit mode, removes the dropcap in a very ugly way.

Verdict: I’m keeping Gutenberg on for a while. A few more posts it in. Let’s see. I already have the Classic Editor installed and I might just go back to that if I don’t see a lot of value in Gutenberg, or if I see a lot of noise in it.

That’s all folks!


Fixing Jetpack’s Stats module

Despite the hate that Jetpack gets for being a bloatware plugin, it is one of my favorite and the first step whenever I setup a new WordPress install. However, Jetpack does have a few irritating habits that I cannot overlook. One of these is the stats module. The module actually does pretty well, posting data to the wordpress.com dashboard and making it easy for me to quickly glance at the number of visitors I’ve had for the day.

However, every so often the module craps out and logs a large number of visits from crawlers, bots and spiders as legitimate hits, since those are not in the official list of crawlers, bot and spiders to look out for. To fix this, I went out to look for the list and to add to it. One quick GitHub code search later, I found that the file class-jetpack-user-agent.php is responsible for hosting the list of non-humans to look out for. What I found inside was actually a pretty comprehensive list of software, but one that definitely needed extending.

If you want to do what I did, find the file in your WP installation at –
/wp-content/plugins/jetpack/class.jetpack-user-agent.php

Inside the file, look for the following array variable –
$bot_agents

You’ll see that the array already contains common bots like alexa, googlebot, baiduspider and so on. However, I deepdived (meaning did a sublime text search) into my access.log files and found some more. To extend the array, simply look for the last element (which should be yammybot) and extend it as follows –
'yammybot', 'ahrefsbot', 'pingdom.com_bot', 'kraken', 'yandexbot', 'twitterbot', 'tweetmemebot', 'openhosebot', 'queryseekerspider', 'linkdexbot', 'grokkit-crawler', 'livelapbot', 'germcrawler', 'domaintunocrawler', 'grapeshotcrawler', 'cloudflare-alwaysonline',

Note that you want to leave in the last comma, and you want all the entries in lower case. This doesn’t actually matter, because the PHP function that does the string compare is case-insensitive, but it just looks neater. You’ll also notice that I’ve added the precise names of the bots, like ‘grokkit-crawler’ and ‘clousflare-alwaysonline’ but you can be less specific and save yourself some pain. This will, however, affect your final stats outcome.

Notes –

  1. Some of the bots are pretty interesting. I saw tweetmemebot, which is from a company called datasift, which seems to be in the business of trawling all social networks for interesting links and providing meaningful insights into them. Another was twitterbot. Why the heck does twitter need to send out a bot? We submit our links to it willingly! Also interesting were livelapbot, germcrawler and kraken. I have no idea why they’re looking at my site.
  2. Although Jetpack does not have a comprehensive list of bots, it still does a pretty good job. I found the main culprit of the stats mess in my case. Turns out, CloudFlare, in an effort to provide their AlwaysOnline service (which is enabled for my site), looks at all our pages frequently and this doesn’t sit well with Jetpack. I hope this tweak will fix this now.
  3. Although this fix is currently in place, every time the Jetpack plugin gets updated, all these entries will disappear. That’s why this blog post is both a tutorial for you all and a reminder and diary entry for me to make this change every time I run a Jetpack update. However, if someone can tell me a way to permanently extend Jetpack, or if someone can reach out to the Jetpack team (hey Nitin, why don’t you file a GitHub issue against this?) it’ll be awesome and I’ll be super thankful!

Update – I was trying to be hip and did a fork of Jetpack and GitHub, made the changes and then tried to make a pull request. Turns out, I don’t know how to do that, so I opened an issue instead. It sits here.
 

How I Follow Blogs on the Open Internet

Colin Devroe’s post about Fred Wilson’s post about how hard it is to follow blogs on the Open Internet is interesting to me.

Ok, before we go any further, yes, this is very meta. Yes, I could have written this entire thing as comments on Colin’s blog (no, it doesn’t support comments) or Fred’s blog (has nice disqus comments) but I didn’t because that’s the point of blogging. I can write this ‘commentary’ on my blog. Sort of like Greek philosophers writing entire books just discussing each other’s books. Very meta indeed. Continue reading

Blog Merry-go-round

Using WordPress but tired of MySQL?

Want to have a fast, static blog?

Use Jekyll.

Using Jekyll but want a better UI?

Use OctoPress.

Using OctoPress but want to use Python instead of Ruby?

Use Hyde.

Using Hyde but want to use Dropbox to hold your files?

Use Pelican.

Using Pelican but want good search, analytics and plugins?

Use WordPress.

 

Good thing I’ve been on WP all along and intend on staying here.

 

You Won’t Finish This Article Either

Just today, I was having a discussion on ADN about how there’s too much noise on the Internet and if I had the choice of a broadcast medium, I’d go with newspapers. Some time after that, I noticed the link to an interesting article on Slate about how people are not reading entire articles on the Internet and are just skimming through, or even just reading the headline, and tweeting the link if they like the headline or an eye-catching photo.

At this point, it’s my duty to inform you that this is a post about Social media, sharing, reading on the Internet and is a bit of a rant, so if you’re not interested, you’ve already left the article. I’d also like to tell you that I wanted to name the article – “Dealing with loss, of Readers” but that seemed rather grim and I wanted to mimic the Slate headline, because it’s just that good. There’s another reason that I’ll tell you later about. Continue reading

Ghost: My comments

Ghost showed up on Kickstarter yesterday and like any good blogging platform, it’ll be judged, commented on, loved and hated. So let me start early. I don’t like it. I love the idea, I loved the beginning, I just don’t like the execution. Here are the two reasons why –

  1. NodeJS? Really?

NodeJS is all the rage right now. Every developer is discovering the strange and amazing things you can do with, of all the things, JavaScript and is running from pillar to post to launch a real-time, fast and easily scalable app as soon as possible. Of course, this means that there are some really nice apps out there. But is NodeJS ready?

Well, define ready.

Of course. Ready means that the next time some layman decides to set up a blog on the Internet, can (s)he purchase a simple hosting plan, upload a couple of NodeJS files and be up in 5 minutes? No. You have to rent a VPS or invest in Amazon AWS, upload files via git and then know how to develop locally and push out changes to the repo in the cloud(Notice all those keywords I threw there, developer?) In other words, you better be a developer and please don’t expect every Tom, Dick and Thorsten to be able to use this technology.

The ghost blog tries hard to defend its decision to go with JS based on the argument that it’s the future and is robust and allows innovation. It leaves out the fact that until the GoDaddies of the web hosting world don’t come out with NodeJS support in their basic plans, you’re not going anywhere with this blogging platform other than the few platforms that specifically support this technology. Oh, and your own computer.

  1. What about WordPress?

When Ghost was first introduced, O’Nolan talked about how WP changed his life and how it was awesome and awful at the same time and how his plan is to take the WP Core and rewrite parts of it to make it awesome-awesome. He meant it. He was going to fix WordPress with just a plugin. But then he didn’t. He’s going to keep the WP format, so that themes and plugins can be easily converted. He’s going to make tools to import from WP so that people can shift to Ghost ASAP. He’s going to take from WP and literally give nothing back. Ever.

I did not expect this. Well, the folks at WordPress probably did. They understand that WP is open source and people can easily add or take as they want. But I did not expect that instead of solidifying and giving better direction to WP, John would just steal from WP so blatantly and try to replace one good platform with another. He could have worked on the Core, he could have made it so much better as to force Automattic to consider his direction as the right path forward. He could have influenced the lives of so many WP lovers in such a positive way, but instead he chose to give up all that just because it would be a little more difficult to make the same stuff in PHP than it is in NodeJS. He gave up on the entire idea and instead focussed himself on getting people to drop WP and come to Ghost, leaving behind the entire essence of the platform that he’s clearly got a lot to thank for.

I’m a big proponent of WordPress. When friends come to me with even a semi-serious resolve to start a blog, I tell them of the cheap and easy hosting plans out there, how they can just upload a bunch of files and run an install script by opening a link in a browser and can search for and edit plugins and themes right from inside the web app and be running a blog in 5 flat minutes.

Now, when people will ask me about Ghost, the “better WordPress”, I’m just going to tell them that it’s not worth the effort and that it’s not ready for prime time. That’s because, NodeJS being such a nascent technology, we can’t expect to see large-scale adoption of the platform any time soon. We won’t see people being enabled to quickly setup a blog without too much hassle and we won’t see ghost being the de facto standard for someone just stepping into the world of blogging. You thought App.net was a country club? Wait till Ghost comes out.

 

This whole thing seems too much like a rant? As O’Nolan says, “Haters gonna hate.”