On 05/11/2014 10:50 AM, Dossy Shiobara wrote:
> On 5/10/14 9:38 PM, Ayan George wrote:
>> aolserver-talk has been quiet for a while.  Has the discussion 
>> moved somewhere else?
> Not that I'm aware of ... but, it's possible there's some 
> NaviServer-focused list that has much more activity than this one.
> 

First, sorry for the rambly email.

I remember a really encouraging thread titled "Roadmap - 4.6 and beyond"
but nothing seemed to come of it.

Perhaps now that usage is fairly low it is time to start making bold
changes to improve and modernize the code AND to attract new developers
and users.

I don't think inertia or alienating users would be a valid argument
against changes at this point.

This is a good time to set some hard goals, delegate tasks, etc.  This
time, however, maybe Dossy can suss out what seems worthwhile and make
it happen?

Personally, I would like to see the following:

* Define the scope and goals of AOLserver.  Personally, I'd like
AOLserver to be a high performance, programmable, TCL based web server
for Unix-like operating systems.

* Identify subsystems and assign a maintainer to each.  Initially this
may be the same person or small group but the goal would be to delegate
ownership.

* Completely commit to a traditional git workflow.  Accept patches on
the -talk submitted using list for review.  Have subsystem maintainers
apply patches.  Dossy then pulls from each maintainer's tree to cut a
release.

* Drop Windows support unless it is exceedingly easy to do.  Right now
there are 86 #ifdef _WIN32 instances in the code -- IMHO, there should
be 0.  Why worry about alienating an incredibly small (maybe
non-existent) sliver of an already tiny community?

* Allow, encourage, maybe insist upon more modern programming
techniques.  There is a lot of classic C89 or pre-C89 code in AOLserver.
Many open source projects balk at using C99 features citing compiler
support and developer familiarity but C99 is about 15 years old now and
well supported.  I think AOLserver would be a more attractive if we
explicitly required C99 features that can improve the quality of the
code (inline declarations, declarations in for() loops, restrict
pointers, etc.).

A simple goal like converting for() loops to c99 in-loop-declarations or
adding restrict keywords where useful would give developers an
opportunity to get familiar with the code without doing any heavy lifting.

* Modernize the main event loop.  Perhaps use libevent for socket
multiplexing and thread dispatch.  This will allow it to take advantage
of superior multiplexing techniques like kqueue() and epoll().

* SPDY, HTTP 1.1, HTTP 2.0?

* Support for deferred accepts (FreeBSD AcceptFilters, Linux
TCP_DEFER_ACCEPT).

* Ongoing code clean-up, feature addition, optimization, and bug fixes.

Bottom line though is that I'm not sure if we should be afraid to break
anything.  I don't think anyone will notice. :^)

-ayan


------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
• 3 signs your SCM is hindering your productivity
• Requirements for releasing software faster
• Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
aolserver-talk mailing list
aolserver-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/aolserver-talk

Reply via email to