Boost logo

Boost :

Subject: Re: [boost] Boost Incubator Status Report
From: Niall Douglas (s_sourceforge_at_[hidden])
Date: 2014-11-06 06:07:16


On 5 Nov 2014 at 15:01, Robert Ramey wrote:

> > It could be concluded that if you formally ask for more, you might get
> > more.
>
> LOL - it could also be concluded that if one can't get something that
> costs nothing - it's pointless to ask for financial support.

>From my observations that isn't how the SC works. It is certainly
easier to get money from them than their time. In fact, in recent
months they have been remarkably generous with the monies asked of
them where they have given more than was asked.

> > If I were you Robert, I'd make a formal request to the SC for each of
> > the following:
> >
> > 1. Financial support for the running of the Incubator.
> >
> > 2. The hiring of Wordpress consultancy to advise you where you have
> > been having some struggle.
> >
> > 3. The hiring of someone to deeply integrate the Incubator into the
> > Boost website. This could be the consultancy from 2.
> >
> > 4. Begin work on drafting new rules for submitting a new Boost
> > library to default to the Incubator, the old method of going via the
> > wizards is removed.
> >
> > ... and see what happens.
>
> I really appreciate the advice and the good will in offering it. But I have
> to say I have a whole different way of looking at how the world works.

I'm in a funny position regarding your Incubator. I think the idea
fundamentally flawed due to my negative experience some years ago of
setting up an almost identical solution for an Economics journal
where the membership was a good eight times larger than Boost's and
much keener on reviewing, and yet persuading anyone to do reviews of
submitted papers was nigh on impossible. I also think that Wordpress
is very good at what it does, but anything involving review of other
people's work it is truly terrible at. It's just not designed for it,
and we ran into numerous scalability problems trying to adapt it to
fit peer review. We eventually abandoned the whole project, after
yours truly had dumped hundreds of hours of free work into it.
Shortly thereafter I decided to press Pause on my Economics career,
and return to Technology which I why I suddenly reappeared here in
2012.

All that said, my experiences there and my failed Web 2.0 startup in
2011 probably make me unusually familiar with web technologies for a
C++ engineer. And I baulk at the complexity of what you are intending
to do alone and without substantial financial support. You really
need at least three full time engineers on the Incubator if you
expect to deliver something usable within six months (don't forget
the unit testing! Well designed web services have enormous automated
test suites which probe the website in real time for anything going
wrong, and they run 24/7. Setting those up properly makes writing
comprehensive C++ testing look like a doddle). Good web engineers are
perhaps even more rare than good C++ engineers, plus there is 10x
more web engineers who think themselves god's gift when they are
mediocre at best (more noise to signal). And good web engineers are
expensive, Google pays its about 10% more than programmers for good
reason, not least the shortage of talent.

> > 2. The hiring of Wordpress consultancy to advise you where you have
> > been having some struggle.

Apologies Robert, I meant to write "hiring of *a* Wordpress
consultancy". There are expert consultancy firms for Wordpress just
as Boost Consulting of old. The good ones charge about the same
hourly rate, too.

> Monitoring and managing a wordpress consultancy would probably cost
> more time than I currently spend on it. Ideally I'd like help from a
> someone
> who spends time on this as part of his job. As an aside I'd say that:
> a) Wordpress, like all web design is a pain.
> b) Wordpress, like many web design framework delivers huge functionality
> for relatively few lines of code. Its an excellent learning experience for
> the
> hard core C++ programmer. Its a window on where we're missing the boat
> and how far we can and actually must eventually go. It's an anti-dote to
> the
> narrow perspective that we have from sticking to boost/C++/Standard
> conferences.

Funny you say that actually. Wordpress, compared to the other CMSs,
is very distinctly an anti-pattern - it intentionally chooses a
simple, inflexible design in exchange for reliability, predictability
and security, and it's the only PHP based CMS I know of to have
achieved reasonably good security. In that success the anti-pattern
was a wise choice, but boy is Wordpress inflexible as a result.

If you'd like your eyes opened as to how truly narrow the C++
perspective is, give Plone/Zope a whirl. It's the most secure CMS on
the market, and it follows a very C++ style of thinking and design so
most C++ engineers find themselves in a very warm and comfortable
place ideologically speaking. But you also get that horrible feeling
of utter ignorance that anyone starting into C++ gets - Plone/Zope is
full of ingenious design patterns, ones which make C++ look fusty and
backward, but due to its maturity there are many islands of such
design patterns none of which entirely fit together well to the
inexperienced. In other words, just like C++, Boost and the STL.

One of my reasons behind writing AFIO is for a later graph database
library, and why I want one of those as standard for C++ is precisely
from what I realised writing against Zope where the only storage
available is the reliable distributed object database. Reliable graph
database programming is THE future for systems programming languages.
Once you wrap your head around being able to assume a reliable data
persistence and transfer medium being part of the system, a whole ton
of stuff which gets in the way of C++ programming goes permanently
away.

> c) Actually the incubator has most of the functionality it needs already.

On that we disagree. I don't find the Incubator usable, particularly
the commenting feature. I don't think the threaded commenting
approach works for code review. A line or file or issue based
commenting approach is much better, but even then a decent summary
review would be paramount. Some voting and scoring system is needed
too.
 
> You can see my thinking in the incubator itself. It's really a seamless
> facade
> over disparate repos, issues, docs, etc to make it look like integrated.
> I leveraged on all the other stuff that's out there - and I can drop any
> of it in an instant. This is the way of the future. Note I didn't even
> have to steal or copy anything - I just linked it all. The time is spent
> on figuring out how to link it together.

Some years ago I converted over nedprod.com, an almost entirely
static HTML site like Boost's, to use a large XHTML file as its
"database". I have been *very* pleased with the result - it's still
technically entirely static HTML, it's just some PHP parses all the
static HTML files into a single giant XHTML file and the web front
end is some PHP which does a XML query of that giant file, so it
reconstitutes the static HTML per page load. Scalability is truly
excellent (I used the incremental XML parser). And you can mux in
content by having scripts create extra static HTML files for the
database generator to assemble.

It might be a future for the Boost website. I can supply the PHP
machinery on request.

> c) The review wizard states that when time is appropriate for
> a review - not in the middle of release or some other fiasco.
> There hasn't been a review for a while, and there are worthy
> candidates in the review queue,

I believe Antony is looking to manage a review soon before his baby
arrives.

> i) he will select the next library for review giving priority to any
> libraries which already have the most number of "pre-reviews"
> in the incubator.

It isn't as easy as that. Review managers need to feel competent in
the thing being reviewed. Antony I know is looking at at least three
libraries as candidates. When they were added or how long they have
waited has no consideration, rather it's whether he thinks they are
ready and he is competent in their domain.

> I'm sorry I got carried away I work alone and don't have anyone to talk to.

As am I, many days I don't even leave the house as there is nowhere
to go where I live (rural, rent is cheaper). Unfortunately reading
and writing email is not billable hours, so I lose money doing this
:)

As you know, I stand pretty much opposite to you on your vision of
the future for Boost, I think the time when any of that was
sustainable was ten or more years ago. I look at the most successful
open source orgs and what they do and we do not, and I think we
should copy them. That, as you correctly observed, means Boost turns
into a funding acquisition and dispensing machine which
actively promotes its vision of the future of C++ by obtaining
funding and
dispensing funding on the items it thinks will return the most
benefits to its
future. Very different to before of course, it's more of an open
source
business than anything involving coding and the skills demanded are
managerial and business ones, not engineering. But that's the
marketplace right now, we either have to step up to compete or wither
in the face of competition.

Niall

-- 
ned Productions Limited Consulting
http://www.nedproductions.biz/ 
http://ie.linkedin.com/in/nialldouglas/



Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk