Hi Shankar,

I appreciate your message, and basically agree with what you are saying. The message was partly mourning for a time past and partly just a recognition of how things are, and what that means.

In particular I think that OpenWrt is caught with a codebase that was developed more rough-and-tumble and trying to grow up and be product, and has got in a situation where there is little commercial support AND dying community support because neither group's need are sufficiently addressed at the present time.

The challenge for Felix and John (and the other developers who occasionally contribute), is to try to find a way forward that works for whichever use case they decide is most important.

I may mourn the loss of a freewheeling community (and have taken it badly that isn't the way it is any more), but that sort of community is hard to maintain from an economic perspective (and I'm not sure that people like myself who came at openwrt as a vehicle for experimentation and trying to make things better and have fun at the same time, without the rigour of day job are sufficiently motivated to fund a project), and also people's expectations of what projects offer has changed.

Even though OpenWrt is free as beer, there is still a high degree of expection of what it will offer, and not break, and so on, which in the early days was less of a concern, particularly on bleeding edge where the community was the qa department.

I hadn't kept up with the shift (and had gotten away from open source due to nda's and contracts that interfered with my freedom) and came back with the wrong set of expectations.

The project itself is in a transition state, and, at least from what see, has lost a lot of mindshare for a variety of reasons (I think part of just that geeks (except strange ones like us) just aren't as excited by working on routers as in days past, and hence is left to people who are willing to treat it like a job, or have the time and energy, and inclination to put in a job-like effort.

On 16-03-29 07:37 PM, Shankar Unni wrote:
Hi, Daniel.

I’ve been following your messages in the background, and I want to both 
sympathize, and at the same time, try to show you a little of my perspective 
(and those of others working on the product).  Please forgive my verbosity, 
because I have a few points to make.

Yes, you’re absolutely correct when you say that: "OpenWrt in particular the 
emphasis is now on a product and has a lot more rigour.”  That’s just a fact of 
life, and is nothing to be particularly either celebrated or mourned.

Agreed.


The Linux kernel went through the same thing years ago; when I first played 
with it (back in 1995), it was a rough-and-tumble world. People submitted 
patches to a mailing list, and Linus picked up whatever he liked (and sometimes 
there was a bit of back-and-forth, but you could often get stuff in for really 
obscure devices, or quirky behavior, without a lot of rigor).

But it’s now a big business, which is both a blessing (a massive flood of 
support, both in peoplepower and cash), and a curse (since everyone depends on 
it, it has to go through some really rigorous vetting before anything gets in).

Also, since the kernel is so large, you can’t just deal with parts either in 
isolation (because there are too many ramifications elsewhere), or totally 
holistically (since it’s way too large for that).  So they’ve broken it down 
into a series of subsystems, with their hierarchies of maintainers and 
contributors, who all report to Linus.  And just like when you make additions 
to a house, you have to match styles so that the other residents don’t have a 
harder time.

The same thing is happening now to OpenWrt.

Agreed.


SOLUTIONS:

* Create your own clone on github, with your private branch.  Everyone does 
this.   (keep the master in your clone a strict clone of the remote master; use 
a branch for all of your changes; pull into your master and merge from your 
master into your branch to refresh it).

I've created my own project on github for this very reason; I realized even before I came to this realization, that I needed to change what I was doing.

* If you need to contribute something back, please appreciate that it has to 
fit in with the framework and style of whatever it is you’re modifying (this 
seems to have been the original sticking point).  Given that, be ready to pull 
in specific changes into your master, as a submission, and co-review it and 
make modifications according to review comments, and push that back.

Yes, and this is the part I hadn't clued into; that things are more rigorous, and that there are limited resources to explain the rigour needed, and since community involvement, particularly on the list, is greatly diminished, there is little feedback to get tuned in, unless you're an IRC junkie (I'm not a chat or forum person).

This way, you don’t have to park all of your desired changes into the master 
tree where they’ll affect everyone.

Again, cluing in to modern reality was my problem.

WHAT IF YOU WANT TO MAKE SUBSTANTIAL CHANGES TO THE WAY THINGS WORK BY DEFAULT?

That’s hard.  It’s not just a programming or design exercise, it’s a social 
exercise.  You have to essentially “sell” your idea to others, get them to buy 
into it (and this is where most of the back-and-forth comes in).  Be prepared 
for rejection (so many good ideas are rejected, and that’s not a bad thing in 
general), or to compromise and only push a part of your proposal that is 
acceptable to everyone.

Another part of the this is figuring out, with little feedback or documentation, what the current priorities and goals of the project are, and understanding what makes sense of the context of what the project is aimed at.


I hope this is helpful, and doesn’t come off as too patronizing or windy.

Not all, it's appreciated, and I hope you don't mind my putting this back to the list; I didn't see anything in your email that I thought you'd be terribly offended to see on list, and I think having it in archives, and hopefully leading to an effort like updating either the wiki or dev.openwrt.org or www.openwrt.org to having some sort of mission statement or project goals and expectations so that newcomers have an idea what the project is about these days, compared to the current pages, which seem to me to be largely legacy from a less rigorous time.

It seems to me the shift has been fairly dramatic over the past two to three years, and this is why it was disconcerting to come back from hiatus and have things be so different from what I recall.

Regards,

Daniel



On Mar 29, 2016, at 1:10 PM, Daniel Dickinson <open...@daniel.thecshore.com> 
wrote:

Hi all,

I realized what part of my frustration (aside from medically causes reasons for 
oversensitivity) is that what I wanted from OpenWrt is not what OpenWrt is 
anymore.  I was looking for the old days of GNU/Linux when most everyone was 
playing and sharing the results of playing to benefit the community of players, 
and any contribution was welcome.

Those days are long gone, and for Linux as a whole and OpenWrt in particular 
the emphasis is now on a product and has a lot more rigour.

This is good for people who want a final product that approachs commercial 
quality (but sorry, if I wanted true commercial quality I'd build something 
based on Yoctol; if I was going to do 'real work' that's where I'd go), but not 
so good for people who want to experiment and play and share the results of 
same, and want to be welcomed for that type of input rather than treating 
OpenWrt as a second, unpaid, job.

The reality is that projects that get too serious lose community interest 
because most community members aren't looking for a second job, so unless 
you've got commercial interests willing to contribute back to the project, you 
lose mind share.

The Linux kernel is really not a playground anymore; it is dominated by 
commercial interests.  OpenWrt is trying to be like the kernel without the 
companies that contribute back.

Basically people who wonder why things like the attempt at an OLPC community 
failed miss that fact that if you make things too much like work, you need 
work-level incentives; if things you make things unfun then people who want to 
play not work won't be interested, and that means you some way to motivate 
people to do free work.  There are far fewer people who find that an 
interesting way to spend their time than people who will work either work for 
pay or play.  GNU/Linux didn't attract its initial developer and user base by 
being serious work, it grew to the point where enough people get paid to work 
on it, and contribute back, that it can take that approach.

Regards,

Daniel
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to