-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hello Community,
there are many things currently circulating in my head, most of them fueled by the way the Midgard project currently moves. As you might have already guessed, you won't like the content of this mail, but I would ask you to read over it and take yourselves a couple of minutes thinking about what I'm going to write before you start yelling at me. If you still feel like yelling after that, feel free ;-). When I look back over the last year of Midgard, what I see is not nice, independent of where I look. I don't want to reiterate problems already discussed more and more in detail, so for a start I collect the most important points that are clear to bring them back to attention: First there is our most prominent problem, the quality of the Midgard code, both core (lib, mod and php4) and on an application level (Aegir foremost, but even MidCOM isn't really that clean, at least by my own standards). If we couple this with our second-greatest problem, the missing documentation on almost any part of the system along with bad packaging we have a dangerous combination. One of the most apparent results of this is a user base, that is greatly diminishing in favor of the other roughly 300 free content management systems currently on the market. One rough number: The subscriber count of the Midgard User list is currently down to below 100 subscribers. So much for the stuff visible above the waterline, these facts do speak for themselves. Now if this was the only problem we have, it should have been solved months, if not years ago. The conclusion that the points stated above are not our only problems, is easy and quite true. Our real problem doesn't start at the code, the (new or old) website or at the docs. The trouble we are suffering for more then one year now is a really disorganized community. Development is not structuralized, even the new code we produce cannot hold up to modern quality standards, we like to talk, not to act. Heck, we don't even have a development strategy other then hacking away. I can already hear the voices telling me "that's the way Open Source software development works", trying to justify what we're currently doing. But let me tell you one thing, plain and straight: This is wrong. It is quite impossible in my eyes (and the eyes of any halfway experienced software developer) to have a large-scale project to run itself that way, with everybody hacking a littlebit at places where he likes to, democratically voting about how (not necessarily which!) features get implemented. If we are talking about a project the size of Midgard 2 (we actually do this for quite some time now) it is imperative that we all are clear that this project must have a leader. A person that has the final, absolute word about decisions concerning the way of the project, from feature freezes to design decisions to coordinating the efforts of the developers around the world to deciding which contribution makes it into the official distribution and what not. If you look at projects like JBoss, Mono or Mozilla you'll find that there is some truth in it. Speaking about desing decisions, there is currently some other tendency in the project. We just plainly insist on having to reinvent the wheel. Not that there are enough people on the world trying this already. While this has to be done to a certain extent, why else should we write yet another Content Management System, you needn't do this the whole way. There were already several attempts to put a Midgard 2 together, with Ami Ganguli's last one being the most successful to date. These tries had all one thing in common, they tried to build a complete application server from scratch. While this is not only a challenging task, it is nothing short of monumental. Full blown application server measures easily in the hundredths of thousands lines of code, apart from the decent specifications that need to be written before even the first line of code is actually written. Having a proof of concept like Alexander's latest approach to the problem is nice, but it doesn't really help for a start, as it only covers a minute detail of an entire new Midgard architecture. Besides from the fact, that I personally don't think that a glib/C based solution can be done in a reasonable amount of time and hold up to modern industry's standards at the same moment. Again, we are starting to re-invent the wheel, writing an object oriented system on top of the old artifact C. Why not switch to something more powerful? C lacks at even the most primitive things (safe and easy memory management or exception style error-handling), which would have to be implemented on top of it. Not only implemented, but also integrated into other packages being used. Combined with an language like Ruby as a premiere language of choice (sorry Alexander), we will find it quite hard to find acceptance in the industry where it counts. Even PHP has a hard time there often enough these days. Let's face it, it is my opinion that if we build something new from scratch, we should empower the latest, most efficient modern technologies available a) to save us as much work as possible and b) to leave the work of building the foundation to the guys already familiar with such stuff. This way we won't get just yet another hacky CMS but something that is industrial strength and even good enough to stay up to the standards of larger companies. Taken this thought to its logic end, only a couple of few alternatives to build on remain. For once, there is J2EE, already long debated, with its known advantages (established and proven) and disadvantages (Java stays quite slow and is not easy to set up). While I'm still convinced, that the Java Enterprise platform is powerful, I'm no longer convinced, that it is the most efficient solution available. The project, currently most promising in my eyes, is the .NET framework originally developed by Micro$oft. Oh yeah, I see you rolling eyes, even be stumbling on the N of .NET. While I can perfectly understand this, you should at least listen to a few key facts. First of all, .NET is not proprietary; all important core parts of this framework (that is the compiler, the runtime and the standard libraries) are standardized by the ECMA. Novell's reimplementation of the framework, the Mono project, proves quite successfully, that it is in fact no problem running .NET applications under Linux. Then, probably the most amazing thing, is the Common Language Runtime (CLR), which allows any code compiled for .NET to interact with any other code for .NET, across any language supported. This goes as far that you can have libraries (.so's or .dll's) that actually consist of code written in C#, Ruby# and VisualBasic#. Just the thing we always imagined for Midgard. This CLR is part of the ECMA standard. Up until this evening, nothing else I know is near as powerful as this framework when it comes to interoperability. Its prime language, C#, brings the best of C++ and Java together into the same theatre with being quite fast and lean compared to the SUN's competitor. I do not want to force you to that technology, but it is at least worth more the one look at it. There is also a free implementation of the ASP.NET infrastructure, that could even allow you to embed C# code (or whatever) directly in your web-pages, no longer limiting you to PHP. Whether you like it or not, I am quite certain, that from this corner a new generation of applications will emerge, which are truly interoperable with a runtime library that is powerful enough to take all basic tasks away from the program writer. I do not think, that this is the end of the PHP era, in fact, we are quite far away from that. But it is fact that writing code for the infamous Zend Engine (read "php modules") is tedious at best, while writing any large application on the PHP level is doomed to bring a lot of side effects with it due to the limitations of PHP itself. Even PHP 5 does have enough drawbacks. Anyway, with .NET thrown into the Arena for the wolves to snap at it I will make you one offer before finishing this mail. I wrote earlier, that the project needs qualified (and undisputed) leadership. I offer you myself as this leader, if you are willing to follow me to build a better and larger Midgard 2, so that this project will truly build a new and better world on the ruins Midgard 1 left. This offer comes with a few conditions though. First, what I wrote about undisputed leadership is a key fact of this. I will have the last word, period. I know that this sounds like monarchy, but it is fact, that a monarchy can be quite efficient, given you have a good monarch. ;-) I will try to be a good one, bringing the interests of all participants together. Naturally, though, it will be impossible to suite everybody at the same time. You should be prepared for this. Second, but perhaps most important to me, this task will consume a significant amount of my time; time that I need to be paid at least partly, as I cannot live from air and love alone, unfortunately. I will leave that point open for now, as for a start the facts I wrote above are far more important than this point. If you accept my offer basically, there will be plenty of time to discuss this. I just wanted to have this mentioned. So now I have let the cat out of the bag. Fact is, that I'm rather tired of how Midgard has evolved, though I'm still impressed how far MidCOM has spread throughout the last year. I never imagined that framework to get that popular, if I had, a whole load of design decisions would perhaps have come out otherwise. But even MidCOM does make me skeptical about the usability (mainly from a programmers point of view for a start) of Midgard in the long run. I would ask you to discuss this at the Midgard Meeting in Poznan, without my presence, so that you can speak freely without having to be considerate of my presence that I might be offended. I'm of course open for any questions and any discussion, as long as it keeps objective and not emotional. If you decide against me, which I could accept without problems, I will of course stay with the project, keeping MidCOM in running shape as long as I can and as long as it makes sense. I will be there if you need my help here. Apart from that, it could be very well possible, that the next generation of Nathan Syntronics I'm currently doing mostly editorial work for, will no longer be powered by Midgard as I move on to the new world. Finally, one last word: I would to thank the Midgard community for all the work they put into the project in the past. I have profited from Midgard for nearly as long as it was on the market now, and I tried to do a little payback with MidCOM. I hope you can forgive me for this email, which is quite a littlebit heretical... Live long and prosper! Torben Nehmer - -- Torben Nehmer, Guenzburg, Bavaria, Germany http://www.nathan-syntronics.de, mailto:[EMAIL PROTECTED] PGP Public Key: https://www.link-m.de/pgp/t.nehmer.asc -----BEGIN PGP SIGNATURE----- Version: Mulberry PGP Plugin v3.0 Comment: processed by Mulberry PGP Plugin iQA/AwUBQJjk4iT4eCp+neRWEQJDPwCg+geUC5hhsy7+8ZRsuLSFIFY/hisAn3LS lsx7XFnxKcfyemI78vBYZEXt =8BJ9 -----END PGP SIGNATURE----- --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
