Friday, 23 July 2010

Thesis’s Next Opportunity: Un-WordPress Itself

A long running controversy in the WordPress community was resolved this week when the popular, commercial theme Thesis was re-licensed making it compatible with WordPress’s own GPL license. This re-licensing confirms WordPress themes and plugins must be released under the GPL. This is great news for the WordPress community for it reinforces the type of culture and ecosystem around the WordPress codebase it’s maintainers intended.

From my perspective, Thesis had 2 resolutions available – adopting the GPL was the quickest way to resolve the issue, and I suspect the impact on commercial side won’t be as significant as feared. Unfortunately, this decision means Thesis will always be just a WordPress theme.

The second resolution, available to all WordPress developers, is to divest themselves of all WordPress code. Every line, every call, every function – remove it form the Thesis code base. Then hire a team of PHP developers unfamiliar with the WordPress codebase to custom develop the application from the ground up – interacting with pre-existing WordPress database structure.

A complete clean-room developed, drop-in replacement for WordPress.

Licensed and distributed however the project sponsor wants.

This solves a number of increasingly irritating technical issues I have with WordPress;

  • WordPress is increasingly an attack target resolved with seemingly endless codebase updates,
  • the WordPress admin UI continually less about writing,
  • the WordPress theme templating structure encourages redundant code.
  • Most importantly – the self-hosted, reliable, usable, website engine space needs some innovation.

This approach confirms Thesis is, much more than a WordPress theme (one of the controversial points), but a mature, stand-alone WordPress replacement [1].

This approach is far more interesting to me and I think has the opportunity to foster greater energy, excitement, and innovation in a very stagnant feeling space.

P.S. I say all this someone who; has written a bunch of code to interact with WordPress, currently maintains a number of WordPress blogs, continually recommends WordPress the starting point for all publishing-heavy web projects.

Elsewhere:

“Because my relationship with WordPress has been souring for longer than the recent problems, I’ve been working on a replacement for WordPress…” – J Wynia

1. Yes, this was the idea behind my PressOnRails project – an effort to use Ruby on Rail to interact with a pre-existing WordPress database.

Tuesday, 20 July 2010

Adding Custom Fields to an Existing Post via XMLRPC in WordPress

If you’re having difficulty adding custom fields to an existing WordPress posts via XMLRPC’s metaWeblog.EditPost command, try including a dummy entry in your code.

It worked for me.

I’m working on a project where we’re programmatically adding WordPress custom field data to thousands of posts, seemed like a great job for XMLRPC. I had assumed a simple Ruby call like this would work:


result = server.call('metaWeblog.editPost', wordpress_post_id, name, pass, {"custom_fields" => [{"key" => "note", "value" => "loves you"]})

It doesn’t – it gives a less than happy Error 500 ‘Sorry, your entry could not be edited. Something wrong happened.’

I read through WordPress’s xmlrpc.php file and noticed that the update post command is run (line 2460) before any of the custom field data is recognized (line 2476).

So, I added a line to not change the Post’s title, and new custom fields were added as expected.


result = server.call('metaWeblog.editPost', wordpress_post_id, name, pass, {"title" => POST_TITLE, "custom_fields" => [{"key" => "note", "value" => "loves you"]})

Monday, 19 July 2010

Real Time Red Herring

Over the past few years, I’ve worked on a number of projects exploring the the value of capturing & sharing a fleeting moment in ‘real time’.

These projects included;

  • Cullect; which proved to me how infrequently ‘real time’ ever passed into ‘relevant’.
  • RE07.US; which was a URL shortener that self-destructed after 5 minutes
  • iTunes-to-Twitter; where I continually sent my iTunes playlist into Twitter to no one’s enjoyment.

While these efforts hinted at the uselessness and annoyance in focusing on ‘real time’ for goofy side projects. I needed to find out if there was significant business value in focussing on ‘real time’.

So, I landed a project with a client in an industry I assumed would convincingly show me the need to focusing-heavily on ‘real time’ message delivery and communication.

In a round of customer interviews, I asked – “how frequently do you want to know the status of X?”

“90% of the time, within 4 hours.”

Turns out, more than 90% of the time – everything is work as expected. That remaining 10%, when additional coordination is needed – the parties involved pick up the phone and talk to one another in real time. And that was the constituents who looked at the data most frequently.

In my email today, I received a ‘Thank you, I needed that.’ for a message I sent 2 months ago. The message referenced a podcast I recorded 4 years ago. The podcast was a retelling of an experience I had 8 years ago. An experience about patiently waiting for the right moment.

All this makes me wonder when Google will stop indexing the ‘real time’ web [1] in the name of spam-prevention and focus their attention on the under-appreciated “I’m Feeling Lucky” button.

This pursuit of ‘real time’ is a distraction. A distraction from building and sharing relevance and timelessness. A distraction from being present.

Elsewhere:

“The breaking news mindset isn’t just annoying, it may be distracting you from what really matters.” – Seth Godin

1. I’m holding on my prediction that by March 2011, Twitter – the company – is no longer relevant.

Friday, 16 July 2010

What Does a Successful MN Tech Firm Look Like?

“The region has just a few large tech operations left (Lawson, Digital River, Seagate), and venture capitalists say most local software startups are tiny and will never grow into market leaders or large companies.” – Dan Haugen.

Most businesses, local or otherwise, are tiny and will never grow to market leaders or large companies. Minneapolis’ thriving restaurant, music, and art scenes immediately come to mind. Not to mention – my 2 favorite auto repair shops aren’t owned by large companies (though – they are market leaders within this 10 block radius).

I don’t hear many stories of restauranteurs struggling to get venture capital funding for their newest dining concept. Nor do I hear similar cries from other ‘industries’. Yet, the local zeitgeist in the web tech community defaults to getting early stage funding for ideas that aren’t capital-intensive or significantly innovative at a changing-the-world level (changing-our-world level: yes, that’s entirely different) [1].

“But not all industries are as capital efficient as the Web or Information Technology. Biotech, medical devices, semiconductors, communications and CleanTech require significantly more capital to build and scale before they can generate profits. It’s in these industries that the lack of a public market has taken the heaviest toll on entrepreneurs and their startups.” – Steven Blank

Re-read that statement from Blank. His list of industries hurt by the non-existant IPO market is a list of all the industries Minnesota is, or wants to be, known for.

From this angle – the acquisition of ADC Telecom is a success story. They beat the odds. Minnesota’s tech community should be celebrating. ADC found a $1.25b exit in a tough market.

Congrats.

In a world where IPOs and acquisitions are non-existant, the question isn’t – what local entity will grow to fill ADC’s shoes (assuming it vanishes from MN’s landscape)?. The question is – What does our tech community look like where everyone…

“…can find 2,000 people to pay … $40 a month for a product … make $1 million a year. The economics of that are liberating. When I can build a company that costs nothing to operate, that changes the way I can live” – Dan Grigsby

Grigsby paints a very compelling vision of Minnesota entrepreneurship. A vision less reliant on state policies, big funding, and big exits and more on a sale-able product to a global market. A vision that resonates with me, and I suspect many of you.

P.S. There’s been chatter over on Minnov8 on this topic as well, where Minnesota’s ‘risk-adverse’ culture (as compared to where?) is brought up as a negative.

If anything, it’s a list of positives.

If you want to have it all; raise a family, bootstrap startups while making a living contracting and consulting – Minnesota is the perfect place.

I’ve had enough conversations with people that have moved elsewhere to get funding for their company, find developers, and build businesses to know – it’s not any easier anywhere else. No place guarantees success.

1. The most recent example comes from Gene Rebeck, Twin Cities Business Senior Editor
“But one thing’s for sure: Start-ups are going to need access to capital.”