3 ms·
I must be very lucky... because after many many years of writing open source, being involved with at least three communities (IT security with hping, Tcl langua
by antirez 12y ago
I must be very lucky... because after many many years of writing open source, being involved with at least three communities (IT security with hping, Tcl language with Tcl/Jim-Interpreter, Databases with Redis) I still have to receive serious attacks. Actually the only attacks I can remember are about my vision on how diversity should be handled (I was accused of sexism for saying that people are all alike), and a few company-driven attacks 99% generated from the SF area and for people working for competing companies, and with a big overlap of people accusing me of sexism (go figure...). Basically none of this was ever a great deal, and the remaining 99.999% of the OSS community was always awesome. Basically I'm just a single data point but as somebody involved for a long time in OSS, I can't confirm what I read.
Well, also consider this: I refuse most pull requests, and I'm not the kind of guy that is kind at every cost. I also am part of a minority, being very southern-european, from Sicily, often associated with the worst cliché of the Italian culture, Mafia, ... I also have a vision on software development which is very far from what is considered "good practice". One could expect me to receive more attacks than average.
- teleclimber 12y agoThanks for sharing. It's good to know that even when a project is large and popular like Redis, it's still possible to have mostly positive experiences.
- solipsism 12y agoCould you hint or point us toward some of the ways your vision on software development is far from what is considered good practice? I like to absorb counter-normal opinions.
- antirez 12y agoJust a few examples: reinvent the wheel (Redis uses its own event loop, strings library, and in general has very little external deps). Always backporting new features when they have little interactions with the rest on the code base, to patch-level releases of the stable version. Using data structures or algorithms which are not common. For example Redis implements LRU by random sampling. Taking extreme tradeoffs: Redis is also a store but the dataset is in RAM, Redis Cluster does not try to achieve theoretical optimum of CP or AP in order to win latency, lack of metadata, simplicity, and so forth.