Archive for the 'Programming' Category

Meet Me at Drupalcon, Boston

Tuesday, February 19th, 2008

drupalconlogo200 I will attend Drupalcon from March 3rd to 5th in Boston, USA and will present a talk entitled Marketing Open Source Software. If you’re around, feel free to contact me.

[Updated 2008-02-21] Jeff published a list of the other accepted talks for the Marketing and Business track at Drupalcon.

[Updated 2008-02-23] I will present March 5th, 13:30-14:30 according to the (yet tentative) Drupalcon 2008 sessions schedule.

Comparing Open Source Java CMS

Tuesday, February 12th, 2008

Seth Gottlieb of Content Here fame asked me a few weeks ago to review his report of Open Source Java CMS which he just announced in his blog. The report is a master piece of analysis covering business-critical aspects as well as technical details.

Readers of my Weblog get a discount: Follow this link, which automatically applies the coupon code saving you $150. In case of problems the code is: yq37we.

The report is profound and reaffirms Seth’s role as one of the best CMS consultants out there, especially when it comes to Open Source CMS. Seth actually compiled first-hand information from the project leads into the report, which is smart.

The report takes a close look at:

I basically share all of Seth’s valuations and imagine that anyone reading the report will have a very good understanding of the strengths and weaknesses of each of the above CMS.

As Seth can put it in much better words than I ever could, let’s read the master’s wisdom:

Even if the best technology fit is a commercial product, the technology decision maker now needs to be able defend his choice of commercial software by demonstrating a knowledge of open source alternatives that were rejected. The answer “we looked at open source and it was all bad” is becoming weaker and weaker as a response to a challenge to consider open source.

[...]

It is not that open source projects are secretive. In fact more information is available because coordination and communication usually happens out in the open. It is just that the information is spread thinly across many sources and people. Compilation and interpretation takes a lot of work and a different set of skills than your typical career analyst. In order to understand an open source application, you need to use it, configure it, and interact with the community (actively and passively). The source code itself also contains valuable information about the development standards and history of the project. It takes time to learn the personalities and group dynamics of the community. Not that it wouldn’t be nice to know all this information about commercial software – it certainly would. Just commercial software doesn’t allow you that access.

[...]

For each of the projects reviewed in this report, I have subscribed to the mailing list and monitored the volume and nature of the activity. I have talked to users of the software. I have built prototypes that involve defining content types, setting permissions, and developing layouts. To ensure factual accuracy, each evaluation has been reviewed by a project committer or company officer.

[...]

Web content management is not a turnkey solution.

[...]

Because company requirements are unique, web content management more like toolkits than out of the box business applications.

[...]

Market fragmentation is rife in the open source world too (especially in the content management sector) and comes at a great cost: developer resources are spread too thinly across too many projects. However, the absence of a “winner” in the commercial market takes away a safe, automatic choice and forces technology decision makers to look at alternatives. Every option appears equally risky from a market share perspective.

[...]

Unless a selection process is adapted to fully explore open source, the commercial products typically win because of the allure of a polished and well executed demo. Investing in an open source proof of concept typically levels the playing field but few companies make the investment unless there is a particular motivation such as a senior-level directive to carefully consider open source. This has essentially happened in many of the governments across Europe that have been mandated to use open source software wherever possible.

[...]

Social activity also creates the opportunity for non-technical users of the application to get involved. Building and serving a non-technical community is a plateau that only a few of the open source content management projects have achieved. It is an important milestone because it allows for user input to be contributed directly in the users own words rather thathrough a technical developer who filters the information through is own biases.

For a full overview of the contents, download the Java Open Source CMS sample which also contains the ToC.

I won’t disclose anything about the final conclusion in Seth’s report, because that’s like killing excitement when telling someone about the end of a novel or movie, but there’s one thing that’s for sure: the report is worth reading all 150+ pages!

David Nüscheler & Co Started Blogging

Monday, December 17th, 2007

ECM vendor Day Software AG now enables you to catch a glimpse of their developer’s expertise. Some of their best programmers started blogging and provide valuable insights into content management technologies and best practices.

Most notable, David Nüscheler, the driving force behind the JSR 170 content repository standard, debuts as a blogger. That was about time, because David is surely one of the most brilliant minds in content management and destined to be a thought leader in that area.

Although Day’s developers blog is only 4 weeks old, there’s already a bunch of interesting content. For example, slides and tutorials about microjax, a technology that allows you to access a content repository in AJAX-style right from a Web browser.

microjax

There’s also an interesting post about a tool for visualizing Day’s ECM product Communiqué and a lot more at dev.day.com.

Lieblinx Seeks Drupal Developers and a Hero

Thursday, November 8th, 2007

Stefan Kausch, CEO of Lieblinx approached me to help them: They are working on a fancy Web 2.0 site based on Drupal and urgently need one more Drupal developer in their team – starting yesterday. That specific job would last roughly until end of December and can be done remotely.

If you feel like becoming a hero, please write Stefan an email: s (dot) kausch (at) lieblinx (dot) net.

Stefan furthermore told me that they are also looking for Drupal/PHP devs in the long run working in their Berlin office. Hence, feel free to write to him if you are looking for a long-term engagement.

Does PHP 5 Hurt PHP?

Monday, July 30th, 2007

If you follow the PHP blogs, then you are likely to have read Matt “Wordpress” Mullenweg’s anti-PHP 5 rant:

PHP 5 has been, from an adoption point of view, a complete flop. Most estimates place it in the single-digit percentages or at best the low teens, mostly gassed by marginal frameworks.

He makes some good points in the post. He also manages to make himself seem like a bit of a dick :)

The thing that I keep wondering is if we aren’t seeing a slowdown in general PHP adoption due to other technologies being able to get a leg up while PHP 5 was in development and the succeeding slow migration from PHP 4 to 5.

Now that I work for a company creating Java-based software, I see:

Finally, with PHP 5, it is possible to build OO libraries able to compete with Java libraries as far as quality is concerned – but, well, those Java libraries already have a long market track-record, i.e. have been in production use for a long time.

My impression is that PHP 5 slowed down the development of PHP applications able to compete with similar Java-based server-side products. The problem being that migration from PHP 4 to PHP 5 consumes quite some developer resources for complex PHP applications. Additionally, PHP 4 keeps developers busy with finding workarounds for their applications due to limited OO features.

Did PHP applications lose market share or at least not grow as fast as their Java (or C#, etc.) counterparts due to the slow adoption of PHP 5? Unfortunately, I did not find an informative basis to answer this question sufficiently and would appreciate any hints.

Common Design for MediaWiki and WordPress

Saturday, July 7th, 2007

I have written a little Wiki entry about how to merge the design of MediaWiki and WordPress, just as I did it on my Web site. The Wiki page explains the setup and you can also download the relevant PHP and CSS files of my design at that page. Use at your own risk.

Defining Commodity Features of Open Source Software

Thursday, March 8th, 2007

Open Source software is often being referred to as commodity products. This is particularly true for OSS databases like MySQL or PostgreSQL. Developers of such systems can heavily make use of defined standards. In this case, it’s the various SQL standards. These standards define the general functionality set your product should have. They help you define the commodity features of your software.

The question is: where do you get your software requirements from if the OSS product you are developing cannot rely on any or only a few standards?

Let’s take a look at two other types of OSS products: Enterprise Content Management (ECM) and collaborative software. I used to work for an Open Source ECM vendor until recently and just started to work for a company offering Open Source collaborative software. Hence, I might be able to provide some useful information.

For ECM vendors, there exist a few standards in different areas of ECM. This is because ECM comprises a very broad set of functionality, e.g. content editing, workflow management, document management, accessibility, etc. Yet, these standards cover only a small fraction of what makes up a full-fledged ECM system. In fact, ECM is very much about customer-specific implementations and integration of legacy systems. It is a lot about experience, best practices.

Hence, a successful Open Source ECM project can define the set of commodity features by listening to its:

  • customers
  • partner companies
  • developers and users community

These groups have different impact in different OSS ECM projects.

For example, eZ Publish is equally influenced by all three of them. At Alfresco, there is massive know-how of customer needs, simply because they have John Newton on board, co-founder of the very successful proprietary Documentum ECM. It will be interesting to see how eZ Publish and Alfresco will compete in the future. This will largely depend on how well the eZ Publish developers react upon market needs and on how fast Alfresco can grow its Open Source community. It’s actually not black and white, because customers can be a part of your developers community.

Before I talk about the interesting aspects of commodity features in collaborative software, one more note about highly standardized products: Of course, the MySQL developers need to also think of market needs. They first implemented the very basic features which made their RDBMS useful for simple, yet common scenarios in Web development. Standards do not free you from deciding which ones to implement first, but they help you to save time collecting all the potential features.

Now about collaborative software: Most development here is based on best practices. The interesting point is: these best practices are mostly already available in the Web. To be more precise: in the Web 2.0. At Mindquarry, we implement collaborative software which includes a Wiki, task and document manager (conversation tools for email and instant messaging coming soon).

Where do we get our basic ideas from? Well, from Wikipedia, Jabber, Bugzilla, etc. Mindquarry’s commodity features are out there in the Web and have been tested by a lot of users for several years. With Mindquarry, the trick is not about simply imitating an already existing and proven software infrastructure. It is about connecting the various bits and pieces of social software into one coherent infrastructure which you can use e.g. in your Intranet.

The point is: You can see the difference between the Web 1.0 and the Web 2.0 also in how OSS vendors define the commodity features of their products. An RDBMS is largely a Web 1.0 tool. It has at least one foot in the old days, when companies fought about software standards. Social or collaborative software is Web 2.0, you can find and influence its standards in the Web by providing efficient and rich user experience.

Of course, Web 2.0 standards rely on Web 1.0 standards, but the Web 2.0 is more about best practices and de facto standards on the user level compared to logical definitions of standards on the developers level. Again, the reality is not black and white. Take a look at MySQL’s and PostgreSQL’s ANSI92 SQL-defying LIMIT clause. It’s a best practice approach and shows that OSS developers always listened to their developers community just like Web 2.0 developers today listen to their users.

LinuxTag Call for Papers Ends Tomorrow

Thursday, February 15th, 2007

Hurry up, submit a paper! The LinuxTag Call for Papers ends tomorrow, February 16th.

Short info about LinuxTag from the homepage:

LinuxTag 2007 opens doors from May 30 to June 2, 2007 on Berlin Expo Center under the Funkturm. We invite users and experts to learn at Europe’s leading conference and expo more about the potential of Linux, Open Source, and Free Software.

New Job at Mindquarry

Tuesday, February 13th, 2007

March 1st, I will start my new job at Mindquarry as VP Marketing.

Mindquarry’s Open Source product is enterprise social software, simply called “Mindquarry”. It supports spontaneous collaboration by including a Wiki, task tracker, file management, etc. The software is MPL licensed, version 1.0 will soon be available to the public. There’s an early access program available upon request.
The company was founded in 2006, it is located in Potsdam, Germany close to Berlin. The main investor is HP Ventures of SAP co-founder Hasso Plattner.

I’ll be in charge of strategic and operational marketing and community relations.

What I like most about this new job is:

  • I move from an Enterprise 1.0 Open Source company (eZ Systems and its eZ Publish ECM) to an Enterprise 2.0 Open Source company (Mindquarry).
  • Having 5 years of PHP programming experience, I am now looking forward towards working for a Java company. Although programming is not part of my job, I am very interested in digging deep into the code to really understand the application’s inner workings.

I actually have known one of Mindquarry’s co-founders for a few years via internet: Lars Trieloff. We only recently met in person. His expertise always impressed me.

I created a dedicated Mindquarry RSS feed for my future postings about Mindquarry, also served by the newly created Planet Mindquarry.

At this cross road of my professional life, I would like to especially thank the following persons who always supported me:

  • Zak Greant
  • Georg Richter
  • Aleksander Farstad

Thanks guys! And of course, thanks to my wife, my biggest supporter :)

Vancouver PHP Conference

Wednesday, January 17th, 2007

If you’re close, don’t miss the Vancouver PHP Conference. As far as I can tell from the schedule, many of the PHP gods will be there. February 12-13 is the date.