Level / levelup

A wrapper for abstract-leveldown compliant stores, for Node.js and browsers.
MIT License
4.09k stars 266 forks source link

organization #122

Closed juliangruber closed 11 years ago

juliangruber commented 11 years ago

I just had this idea that we could move levelup, leveldown and the other core plugins to their own account:

level/level level/levelup level/leveldown ...

In this level account there will be everything "officially supported and used". Maybe also plugins? There we can even hack on private projects until they're ready for release.

What do you guys think?

heapwolf commented 11 years ago

+1

rvagg commented 11 years ago

"organization" and "official" on a Node project? That's got to be an anti-pattern, if not blasphemy.

If we start officially blessing components then we can put a damper on innovation, I'm more in favour of anarchy & a competitive market. Even at the core we're allowing a pluggable LevelDOWN so you can swap it out with other things--when we have a binary-compatible LevelJS we may also have what @dominictarr has been working on with his JSON-backed LevelDB implementation, plus who knows what else? I did hear someone was doing a Redis backend too, not sure how far that got.

Then there's the rest of the ecosystem, currently we have a bit of a clique which is a bit unfortunate but a function of who is willing to be vocal I suspect but there are plenty of other things going on by people we don't even hear from, some of which doesn't even make it to the wiki:

https://github.com/kordon/ https://github.com/chilts/dyno-leveldb https://github.com/richorama/neutrinodb

and more.

I'd rather us focus on ways to encourage more innovation around a small core without embiggening the core itself.

And regarding doing private projects and collaboration in general, I'd encourage everyone involved to hand out commit access to their own projects as if it's candy! Problem solved.

ralphtheninja commented 11 years ago

+1 for commit access. I like that idea! :)

On 20 April 2013 02:23, Rod Vagg notifications@github.com wrote:

"organization" and "official" on a Node project? That's got to be an anti-pattern, if not blasphemy.

If we start officially blessing components then we can put a damper on innovation, I'm more in favour of anarchy & a competitive market. Even at the core we're allowing a pluggable LevelDOWN so you can swap it out with other things--when we have a binary-compatible LevelJS we may also have what @dominictarr https://github.com/dominictarr has been working on with his JSON-backed LevelDB implementation, plus who knows what else? I did hear someone was doing a Redis backend too, not sure how far that got.

Then there's the rest of the ecosystem, currently we have a bit of a clique which is a bit unfortunate but a function of who is willing to be vocal I suspect but there are plenty of other things going on by people we don't even hear from, some of which doesn't even make it to the wiki:

https://github.com/kordon/ https://github.com/chilts/dyno-leveldb https://github.com/richorama/neutrinodb

and more.

I'd rather us focus on ways to encourage more innovation around a small core without embiggening the core itself.

And regarding doing private projects and collaboration in general, I'd encourage everyone involved to hand out commit access to their own projects as if it's candy! Problem solved.

— Reply to this email directly or view it on GitHubhttps://github.com/rvagg/node-levelup/issues/122#issuecomment-16695813 .

dominictarr commented 11 years ago

you arn't really giving them commit access, because politeness means there will be discussion before merging, but why commit access really works, is that gh sends them email whenever someone posts an issue, so, the issue board becomes quite a vibrant discussion area - as it has here!

rvagg commented 11 years ago

it's about a sense of ownership too though, you trust another person enough to give them a share of what you're doing and allowing them to be involved in the decision making.

dominictarr commented 11 years ago

Absolutely, you can even edit each other's comments!

poopin

^ who put that there!

juliangruber commented 11 years ago

So, the main advantage I see is motivation. I'm part of the level team sounds way cooler than saying I'm maintaining levelUp. Lack of motivation kills everything, I've seen this in all of the bands I played in.

Do we want to become the level team?

juliangruber commented 11 years ago

Also, we're a movement. We need a website and stuff. And since that's work again, everything that can be done to motivate should be done. Let's do shirts with teespring e.g.

dominictarr commented 11 years ago

@juliangruber but you are part of the level team! In fact, you are one of the founders

There are good points here... on both sides of the argument. I think that ultimately, the value of level-*/levelup is proportional to the number of people using it, and writing modules for it.

I feel that a github organization puts a boundry on it, it will create a boundry between what is "official" and what is not. I don't think we want to do that...

On the other hand -- a voxel.js style site, is definitely a good idea. We could also add everyone who writes a module to it (which will work for now) or, generate the site from readme's of every thing on npm with level-* in the name.

Yes, t-shirts and stickers!

juliangruber commented 11 years ago

something like http://www.tus.io/about.html is absolutely lovely, we should copy that.

I see your point, the situation woud be like with @visionmedia's component. Only he / the learnboost team gets to push repos to the component account. It has the downside of making other components look 2nd class. On the other side, if you see a component that's from the official component account, you know it's the way a component should be.

So we could make sure that "our" plugins adhere to the best practices. So they don't monkey patch in a bad way e.g.

juliangruber commented 11 years ago

and I got to leveldb through @maxogden's great talk about node and databases (of course with cats all over the place :D).

heapwolf commented 11 years ago

I got into leveldb almost two years ago when trying to close this bug (https://github.com/hij1nx/EventVat/issues/12) But at the time there were no good bindings. Also and even further off topic, i've been thinking that event-vat would make a cool api compatibility layer for people who would try leveldb but they are already invested in redis

ralphtheninja commented 11 years ago

And I got into levelup by a "happy accident" (good movie by the way). I noticed @rvagg 's excellently written README and it instantly got my attention. Don't understimate a well written README! :)

rvagg commented 11 years ago

Without endorsing the suggestion, I'll just point out that 'level' is already taken. it's an old unused account and GitHub are usually happy to free them up if you contact them, but it does have a forked project in it, not sure if there are any local commits.

luk- commented 11 years ago

I like the idea of leaving them on rvagg's account.

On Saturday, April 20, 2013, Rod Vagg wrote:

Without endorsing the suggestion, I'll just point out that 'level' is already taken. it's an old unused account and GitHub are usually happy to free them up if you contact them, but it does have a forked project in it, not sure if there are any local commits.

— Reply to this email directly or view it on GitHubhttps://github.com/rvagg/node-levelup/issues/122#issuecomment-16714123 .

max-mapper commented 11 years ago

-1 organizations, +1 building tools like npmsearch.com that make using NPM easier

I also think a npm.app would be really awesome. I also bought modulefarm.com after substack said "there should be a way to publish lists of modules that work well together with a short description of how you use them"

dominictarr commented 11 years ago

Here is one I prepared earlier

https://github.com/dominictarr/npmd

Needs a web interface, and then you'll be able to install and run as a chromeless webapp, and you'll have full text search, and access to all the readmes in npm. (note, it'll only have to pull down 30 meg. will be larger on disk, due to some views)

heapwolf commented 11 years ago

I think an organization would be great if it's not trying to act like a central authority. Oh, wait @dominictarr and nearform are already creating this. :)

heapwolf commented 11 years ago

I would like to see npm move away from being a centralized authority and more toward a peer to peer network architecture. it would be far more fault tolerant and far more available. npm2npm :)

rvagg commented 11 years ago

I made a spur-of-the-moment decision last night to ask GitHub to free up the level account, which they gladly did, so I've turned it into an org account and made y'all owners. At least we can now have badges on our GitHub accounts for it now.

I'm thinking that a website would be a good thing to do there, so I might set up a dedicated website repo there and move it out of levelup's gh-pages branch.