Discussion:
Ready.. Set.. Code!
Avleen Vig
2010-12-29 05:37:42 UTC
Permalink
https://github.com/avleen/vexim

Finally, after *years* of waiting, promises made and broken (by me,
I'm sorry!), I'm finally in a position where I can focus heavily on
vexim. I actually have *time* to do this now :-)

The new version is being coded as we speak. I'm committing heavily to
git as fast and often as I can.
I'm hoping to get it the basic features done in the next 2 days.

Some features which *probably* will get dropped for now:
1. Header-based blocking. We'll get it back if there is any interest
(even just one person saying "I want that!").
2. The half-hearted support I coded in for non-spamassassin spam
filtering. It didn't work. We'll stick with SA support for now, and
later separate it such that we can write plugins for others
3. The non-English language support will not be there in the very
first stable new version I think. But I'll be working closely with
people to get translations in place.

What are the goals of the new version?
A complete re-write, to enable easier future development. Currently
making even small changed to Vexim is a huge pain in the backside.
To enable others to contribute changes more easily.
To take the changes that others have make over the last 7 years and
make sure they are all integrated.


I think that's it. The other stuff is pretty basic functionality.
If you join #vexim on Freenode, I'm in there too. If anyone wants to
make suggestions, throw code in,

--
Avleen Vig
Systems Administrator
Personal: www.silverwraith.com
Rimas Kudelis
2010-12-29 07:51:12 UTC
Permalink
Hi Avleen,

what about http://code.google.com/p/vexim/ ? Have you decided that
github is better, or did you simply forget about the code.google.com
project?

Also, it seems you're rewriting vexim as a Django app. Does that mean
the PHP version should be considered dead?

Rimas
Post by Avleen Vig
https://github.com/avleen/vexim
Finally, after *years* of waiting, promises made and broken (by me,
I'm sorry!), I'm finally in a position where I can focus heavily on
vexim. I actually have *time* to do this now :-)
The new version is being coded as we speak. I'm committing heavily to
git as fast and often as I can.
I'm hoping to get it the basic features done in the next 2 days.
1. Header-based blocking. We'll get it back if there is any interest
(even just one person saying "I want that!").
2. The half-hearted support I coded in for non-spamassassin spam
filtering. It didn't work. We'll stick with SA support for now, and
later separate it such that we can write plugins for others
3. The non-English language support will not be there in the very
first stable new version I think. But I'll be working closely with
people to get translations in place.
What are the goals of the new version?
A complete re-write, to enable easier future development. Currently
making even small changed to Vexim is a huge pain in the backside.
To enable others to contribute changes more easily.
To take the changes that others have make over the last 7 years and
make sure they are all integrated.
I think that's it. The other stuff is pretty basic functionality.
If you join #vexim on Freenode, I'm in there too. If anyone wants to
make suggestions, throw code in,
--
Avleen Vig
Systems Administrator
Personal: www.silverwraith.com
_______________________________________________
Vexim mailing list
http://silverwraith.com/mailman/listinfo/vexim
Avleen Vig
2010-12-29 08:53:25 UTC
Permalink
Post by Rimas Kudelis
Hi Avleen,
what about http://code.google.com/p/vexim/ ? Have you decided that
github is better, or did you simply forget about the code.google.com
project?
We'll be keeping the google code project, but we won't use it for the
source code repo. There are other things we can do there which are nice
though which github doesn't do as well (the tickets and documentation
for example). We'll get to it :)
Post by Rimas Kudelis
Also, it seems you're rewriting vexim as a Django app. Does that
mean the PHP version should be considered dead?
Unfortunately yes.
We (and by that, I mean mostly I) decided to do this a while ago.
I don't feel comfortable writing the application in PHP any more for a
number of reasons:
1. My PHP is really weak. That should be clear from the current code :)
2. I know a lot more python
3. I think Django is a really good framework for things like this (as
would be Ruby on Rails if we were using Ruby). I don't feel the current
PHP frameworks and ORMs, even if we did stick with PHP, would have quite
the same cleanliness, and support. When it comes down to it, I directly
know many more people supporting efforts to do web development with
python and ruby, than with PHP these days.

Some of these are slightly wishy-washy reasons but I believe they're
important when considering the future of an application.

I hope this doesn't upset too many people :-)
Rimas Kudelis
2010-12-29 09:07:01 UTC
Permalink
Post by Avleen Vig
Post by Rimas Kudelis
Hi Avleen,
what about http://code.google.com/p/vexim/ ? Have you decided that
github is better, or did you simply forget about the code.google.com
project?
We'll be keeping the google code project, but we won't use it for the
source code repo. There are other things we can do there which are nice
though which github doesn't do as well (the tickets and documentation
for example). We'll get to it :)
Well, thats a bit weird, but up to you, I guess...
Post by Avleen Vig
Post by Rimas Kudelis
Also, it seems you're rewriting vexim as a Django app. Does that
mean the PHP version should be considered dead?
Unfortunately yes.
<...>
I hope this doesn't upset too many people :-)
I wonder if the Exim4u guys will follow or just keep improving current
code. Do you know anything about that?

Rimas
Avleen Vig
2010-12-29 09:12:01 UTC
Permalink
Post by Rimas Kudelis
Post by Avleen Vig
Post by Rimas Kudelis
Hi Avleen,
what about http://code.google.com/p/vexim/ ? Have you decided that
github is better, or did you simply forget about the code.google.com
project?
We'll be keeping the google code project, but we won't use it for the
source code repo. There are other things we can do there which are nice
though which github doesn't do as well (the tickets and documentation
for example). We'll get to it :)
Well, thats a bit weird, but up to you, I guess...
I'd prefer it have it all together. But in the end it doesn't REALLY
matter. The code is completely portable.
Post by Rimas Kudelis
Post by Avleen Vig
Post by Rimas Kudelis
Also, it seems you're rewriting vexim as a Django app. Does that
mean the PHP version should be considered dead?
Unfortunately yes.
<...>
I hope this doesn't upset too many people :-)
I wonder if the Exim4u guys will follow or just keep improving
current code. Do you know anything about that?
I haven't spoken to the Exim4U guys yet. I was planning on dropping them
a line tomorrow or later this week. I think they understand better than
most how painful the current code base has become.

They're on this list though.. Gordon? What do you think? :-)

There will, of course, be a simple way to migrate the data over when
people upgrade. And as always, I eat my own dogfood - I use this
software myself for several domains so I'm going to be doing lots of
live testing before a release is put out there!
Gordon Dickens
2010-12-29 19:05:30 UTC
Permalink
Post by Rimas Kudelis
I wonder if the Exim4u guys will follow or just keep improving
current code. Do you know anything about that?
They're on this list though.. Gordon? What do you think? :-)
Hi Rimas and Alveen,

Great to hear that Vexim development has been re-energized!

The foremost objective of the Exim4U project is to be a best-of-breed
anti-spam solution and, as a result, Exim4U's focus will always be the
exim and spamassassin configurations. Therefore, the front end user
interface really isn't that important to us. Maintaining the php code
has proven to be a challenge in the past, especially as far as security
is concerned, however, most of those issues have been addressed and so
that really doesn't concern me very much anymore. For the most part,
modifications and additions to the php code can now be fairly easily
implemented. Also, I do not have any experience with Django. A couple
of years ago I reviewed the Django implementation for Vexim that Avleen
and some other folks were working on and, at that time, decided that php
would be best for what we wanted to accomplish with Exim4U. That said,
I am definitely a proponent of application development tools like Django
and am open to using these types of tools in the future. We will
probably continue to focus our resources on best-of-breed spam
prevention techniques with the exim and spamassassin configurations and
wait and see how the Vexim Django project goes. If at some time we
think that it provides a better solution for the user interface then we
would probably adopt it. Otherwise, we will continue with the php code.

Even with the new more powerful application tools such as Django, there
are still many very successful open source php projects that have opted
to continue with php such as Horde, Squirrelmail and the Coppermine
Photo Gallery just to name a few. Although powerful, these new
development tools do not necessarily offer the flexibility that is
availability with php.

Good luck and thanks for all of your contributions to Vexim!

Gordon
Avleen Vig
2010-12-30 02:28:30 UTC
Permalink
Post by Gordon Dickens
The foremost objective of the Exim4U project is to be a best-of-breed
anti-spam solution and, as a result, Exim4U's focus will always be the exim
and spamassassin configurations. Therefore, the front end user interface
really isn't that important to us. Maintaining the php code has proven to
be a challenge in the past, especially as far as security is concerned,
however, most of those issues have been addressed and so that really doesn't
concern me very much anymore. For the most part, modifications and
additions to the php code can now be fairly easily implemented. Also, I do
not have any experience with Django. A couple of years ago I reviewed the
Django implementation for Vexim that Avleen and some other folks were
working on and, at that time, decided that php would be best for what we
wanted to accomplish with Exim4U. That said, I am definitely a proponent of
application development tools like Django and am open to using these types
of tools in the future. We will probably continue to focus our resources on
best-of-breed spam prevention techniques with the exim and spamassassin
configurations and wait and see how the Vexim Django project goes. If at
some time we think that it provides a better solution for the user interface
then we would probably adopt it. Otherwise, we will continue with the php
code.
Even with the new more powerful application tools such as Django, there are
still many very successful open source php projects that have opted to
continue with php such as Horde, Squirrelmail and the Coppermine Photo
Gallery just to name a few. Although powerful, these new development tools
do not necessarily offer the flexibility that is availability with php.
Good luck and thanks for all of your contributions to Vexim!
Thanks Gordon!
You're absolutely right about PHP - I love Horde, for example. Those
guys certainly make a good product :-)
My biggest challenge has been my own ability to write PHP.
For the last ~6 years I've been working with Python and in the last
few years I've been involved with some big Django projects too. It
looks like my own involvement outside Vexim will continue this way.
This makes it make easier for me to keep developing Vexim, something
which has been sorely lacking for a long time.

As your focus is on the anti-spam solution with Exim4U, mine is on the
UI, and the domain management system. I think this is the best way
forward for it. :)

I certainly appreciate *all* of the contributions made my various
members of the community over the last 7 years while Vexim has been a
PHP product.
All of these contributions, wherever possible, will be ported over to
the new version.
I hope contributions will continue in the future.

Loading...