b2evolution b2evolution

  • Sign in
  • Sign up
  • About
  • Downloads
  • Hosting
  • Docs
  • Support
  • Sign in
  • Sign up
  • About
  • News
 
  • « Hacks
  • 0.8.5.5 Release Candidate »

Codebase

Posted by fplanque on Sep 20, 2003 in Technology

b2evolution is actually an evolution of the b2 blog software. Thus, a significant part of the codebase is b2 legacy. As of today, b2 legacy is a little less than 50% of the whole b2evolution code.

Every now & then I read these quite irritating remarks about some other b2 forks supposedly being so much better because their authors are planning to rewrite it from ground up someday. :crazy: Duh!

Beyond the intrinsic irony of this statement, I'd like to explain my position about this: I do not believe the usage value of software lies in its codebase!

Actually, I have experimented the rewriting path myself about 12 years ago. I had developed a piece of software working very well with lots of happy users. However, I decided that having written this software in GfA Basic wasn't good enough and rewrote it from ground up in C!

This was an unvaluable move for me to learn the C language (and a couple of other things I wanted to experiment with, like the GEM environment), but regarding the software, the new version - while significantly nicer - never reached the usage value of the previous one.

The product and the users would have benefited much more from me spending all this time adding new features to the existing codebase instead of reimplementing the same ones differently. However, as a developer, I personnaly benefited more from reimplementation.

See how precisely this translates to b2 and its forks?

Now, please give me a break with this rewriting crap! Anyone talking to you about rewriting doesn't actually care about the community but about himself. :lalala: I don't blame that - we work for free - I just don't want it turned into ridiculous "marketing" arguments.

Also, please don't get me wrong: I am not saying the legacy b2 codebase was all clean. The b2evo dev team has actually rewritten more than 50% of it in order to achieve better maintainance. But we don't advertise that. We take far more pride in providing new features on a regular basis. :P

7 comments

Comment from: ocatrapse

ocatrapse

Do not pay attention to them, just ignore them.

2003-09-20 @ 20:53

Comment from: gustavo

gustavo

I just started using b2evolution so I’m not too familiar with what is (was) going on. But anyway I agree with what you sad. Sometimes the opensource people are so busy on doing a perfect code(on theory) that they forget the users just want to use a software with as much features as possible. Sometimes a commercial approach to opensource is good.

2003-09-20 @ 23:48

Comment from: ocatrapse

ocatrapse

I respect your opinion.
I only want to write a little comment: remember users want quality, stability and reliability too. “opensource people” only try to make good software, and usually more features affect this goal. The François’ approach is, IMHO simply the pragmatic (and correct) approach. I think it is not about commercial or free developers “mindset".

Regards.

2003-09-21 @ 00:45

Comment from: Hans

Hans

I totally agree!

2003-09-21 @ 15:51

Comment from: Edlef

Edlef

I’ve been using b2 from the very first version (0.4 or so) and it ist a fine tool. The community is great and til version 06 Michel did a great job with a lot of enhancements. I’ve watched and tested the other b2-forks, but b2evo is the only script which is working like it should: Import of old entries, nice enhancements (statistics, last comments, much better search function …), and, for new users of b2evo, the skins option.
The only thing that prevents me for now using it on my working server, is my missing luck of making a template or skin which can be shown and used with older Netscapes (4.x)
I think its the right way how Francois and the others have used the old b2!!!
Thanks a lot!

2003-09-22 @ 08:28

Comment from: Michel Valdrighi

Michel Valdrighi

The reason I first wanted to rewrite b2 from the ground up was to have the ability to add features.
The sheer size, uncleanliness, useless duplication of code bits, and lack of in-the-source documentation made adding features much too annoying. It also lead to adding more bugs.
So I just couldn’t let it go on like that, just like I couldn’t go on developping it if it meant having to cope with the conceptionnal mistakes of what a newbie can do in php (the newbie being me… when I started coding b2 I had done less than 3 weeks of PHP, and that was really low scale PHP for my job).
And then, I took a big break. And I got a depression or two, which don’t have anything to do with b2 but which halted the support from me.

Code cleanliness is always a win-win situation in opensource projects: it means more developers can join the project and not feel alienated when ogling over the legacy code.
A fine example of it is Apple’s choice of the KHTML engine over the Gecko one for Safari. They chose KHTML simply because the code was cleaner and more easily extensible, even if it meant turning their back to Gecko’s wonderful rendering engine.

And last but not least, I’m saddened that you’re taking such an oppositional approach towards other b2 forks’ maintainers and their decisions. Can’t we all just get along? :)

2003-10-08 @ 01:38

Comment from: François PLANQUE

François PLANQUE

Michel,

I do agree that code cleanliness is a good thing. How could I disagree? What I am saying, is that rewriting is not necessarily the best option over simply cleaning up.

I also do agree on the Safari example. However bear in mind that Apple chose KHTML because it actually was a fact that it was cleaner than Gecko, not because people said they were going to rewrite it cleaner someday.

Plus, the reason that made Apple choose KHTML for *development* purposes is pointless when users need to choose between *using* Safari vs. Gecko.

Regarding your opinion on my approach, let me assure you that I am not ranting at you nor the other forks’ maintainers but at those big mouths spreading their opinions on the subjects above all over the place without actually having a clue neither about b2evolution nor about software development.

It is everybody’s right to rewrite anything he fancies and to talk about it. Whatever their reasons I wouldn’t normally care, but this time I eventually got sick of people drawing ridiculous conclusions on all that and posting them in my sight :P

2003-10-19 @ 20:48

b2evolution News

  • Home
  • Latest comments

Search

Categories

  • All
  • New releases
    • Press releases
  • Community
  • b2evolution.net
  • Development
    • New features
    • Technology
    • Security info
    • Translations
  • The Webmaster's Blog

Archives

  • July 2024 (1)
  • March 2022 (1)
  • September 2020 (1)
  • January 2020 (1)
  • May 2019 (1)
  • March 2019 (2)
  • September 2018 (1)
  • May 2018 (1)
  • September 2017 (1)
  • March 2017 (1)
  • September 2016 (1)
  • March 2016 (1)
  • More...

XML Feeds

  • RSS 2.0: Posts
  • Atom: Posts
What is RSS?

About b2evolution

  • What is it?
  • Features
  • Getting Started
  • Screenshots
  • Online demo
  • Testimonials
  • Design philosophy
  • Free & open source
  • Terms of service

Downloads

  • Latest releases
  • Skins
  • Plugins
  • Language packs

About us

  • About us
  • Contact

Webhosting Guide

  • Web hosting blog
  • Best web hosting
  • Cheap web hosting
  • Green web hosting
  • Hosting with SSH
  • VPS hosting
  • Dedicated servers
  • Reseller hosting
  • Int'l: UK / France

Docs & Support

  • Online manual
  • Forums
  • Hire a pro !

Other

  • Adsense
  • Press room
  • Privacy policy

Stay in touch

  • GitHub
  • Twitter
  • Facebook
  • LinkedIn
  • News blog
  • RSS feed
  • Atom feed

Founded & Maintained by François Planque