chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] Experience of using Chicken in production environmen


From: Tobia Conforto
Subject: Re: [Chicken-users] Experience of using Chicken in production environment
Date: Tue, 14 Apr 2009 11:23:49 +0200

Hello

I would like to follow up with a few basic (even trivial?) considerations and ask this list for opinions on the matter.

As a developer, I'm both a user and an author of sofware. I find that these two roles often put the focus on conflicting aspects of software development.

As a programmer (which means: on my own projects) I like to be on the cutting-edge, try new things, always adding and perfecting algorithms. I don't care for "past versions", except to trace bugs or recover lost files. I don't care much for bugs or for testing either, because I'll fix things as they break and don't think twice about it. In a work environment it's slightly different, but not much. The focus is still always on "going ahead."

As a user (which means: using software written by others, as tools for my work) I tend to prefer "stable" and "complete" versions, which means: 1. software on which people spent more testing and bug-fixing time than development time, at the expense of new features; and 2. software that has a large number of library extensions available, with similar testing and verification status.

This is why I'll write a program in the ancient Python version shipped with Debian, rather than go and fetch their latest development tree. My aim is to use Python (in this example) just as a tool, so I'd rather not worry about the tool itself: it needs to "just work" and have every extension I might need, so I can focus on my project.

Now, this is all quite obvious, but what implications does it have for a volounteer-based, open source project?

How do other projects cope with this problem? Do they volountarily sacrifice development time to maintain an old, "stable" branch, alongside the latest one? Do they somehow find a paid developer to maintain the stable branch?

How do they manage testing and verification of "stable" releases?

In the case of Chicken, even if 4.0 was bug-free, it would still be of little use to most users, without the wealth of eggs still to be ported. Plus, there's the new macro and module system that will break most user code. So it makes a lot of sense, for the sake of Chicken users, to keep and maintain the 3.0 branch and all eggs for a looong time. Much more than any Chicken developer would like to do. The question is: who will do it?

Note that I'm not blaming anybody or *requiring* anybody to work for me. I appreciate this project and will always consider anything that comes out of it as a gift, simple as that. In the future I will probably contribute in a more significant way, if/when I find the time, or when I can persuade my employer to let me code some projects in Scheme... but this is OT.

What I'm doing is just making some basic considerations of "software engineering"; asking how other projects cope with them; and asking how you, active Chicken developers, plan to tackle them.

Best,
Tobia




reply via email to

[Prev in Thread] Current Thread [Next in Thread]