Kernel Contributor Corbet Says Linux Community Is 'Intimidating'
An anonymous reader writes "Key Linux kernel contributor Jonathan Corbet has admitted the developer community can be intimidating and hard to break into. He highlighted the issue during his Linux.conf.au presentation on the Linux kernel. Corbet expressed concern about the exclusivity of the kernel community, but says it's doing well regardless. He said in a period of just over a year, 55,000 individual changes from 2,700 developers (representing 370 employers) were made to the kernel, equaling 2.8 million lines of code. Corbet called the process 'alive and active.'"
Job interviews are also intimidating - but highly worth it.
intimidating too.
More accessible means more vulnerable.
Add it to the list!
He tried to break into the clique, but Linus preferred someone he knew who essential ripped off Kolivas' work instead of someone that did all the hard work.
http://apcmag.com/why_i_quit_kernel_developer_con_kolivas.htm
http://apcmag.com/why_i_quit_kernel_developer_con_kolivas.htm
This space for rent.
He is kind of right, but I would say the relative challenge of understanding the kernel code is far greater than the social challenge of getting involved. I mean, you can't expect to just sign up to lklm and say, "Hey guys, assign me a project!" Why would they even believe that you can handle it? As likely as not, you'll just make things worse. Start by understanding the code, doing some debugging, and once you are actually doing productive things, people will be more likely to believe you can do more productive things.
Qxe4
Linux elitests are jerks, news at 11.
"I don't have to think. I only have to do it. The results are always perfect, but that's old news." - Meat Puppets
hard to break into.
There, fixed that for ya.
And let's note Jon knows whereof he speaks; he's not just the Editor/Publisher of the almost-10 year old LWN, he's also a fairly well-respected device driver author.
I don't think this is necessarily a flaw in Linux kernel development, because I've seen the same sort of thing all over every internet-based community. Think about the forums, chat rooms, and even discussions on this very site. 'Good' input is secondary to both 'loud' and 'popular', to the deficit of the community.
Part of it is that the text removes a good deal of the context behind the words. To be sure...
However I think there exists a general lack of morality/ethics/whatever in terms on internet communication. Never in a town hall meeting is it considered productive to shout that your opponents are "F~ING STUPID" and yet this tactic works exceedingly well on the internet. I assume that in person this behavior is taboo, but online anything goes. At a minimum you would pretend to listen and use some form of tactful technique to move forward. Online the aggressor seems to hope the opposing voices will simply stop participating in the conversation.
Does anyone have any links to research or the like on this topic?
Further, is there anything resembling Roberts Rules of Order for an online forum, email, etc?
Back to the topic at hand, what if the Linux kernel developers held voice-based meetings on controversial topics? Or at least adopted a code of conduct that demanded civility?
You what's actually harder then Getting in the kernel community, Writing Good Kernel Code!
You what's actually harder then Getting in the kernel community, Writing Good Sentences!
Bow-ties are cool.
The Linux kernel is not some hobbyist tinker toy. It is an extremely serious, mainstream and global-scale project. If it were more inclusive rather than exclusive, there would be MUCH risk in stability and security as I firmly believe that there would be attempts at installing exploitable code within the kernel. These types of problems have already occurred in F/OSS projects all over and we know that there are parties out there who are willing to to to GREAT lengths to accomplish their goals.
With all this, I have little doubt that the present condition is for the best.
At least you can metaphorically break into the linux kernel at all, even just for your own fork to mess around. I would literally have to break into somewhere to look at windows code
> in a period of just over a year, 55,000 individual changes
Is that new functionality or changes to existing code?
I wonder how many changes per year something like Solaris or FreeBSD kernel have.
Go ahead, mod me flamebait. It'll just confirm my suspicions. And ya know, sometimes the truth hurts.
Just think, if they have done this many lines with an intimidating atmosphere how many millions will be made with a friendly one!
Corbet is the editor of LWN.net and has contributed some patches to the kernel, but i doubt he would accept to be called "key contributor". IMHO his best description would be "the best linux kernel journalist".
Flamebait, what the heck?
I once had a signature.
In a good way.
Wow that much activity from that many companies. 370 employees contributing!! Incredible the number of changes and the amount of code. This is tremendous. Open source success in this regard is truly fantastic.
You can lead a man with reason but you can't make him think.
begun in the subject line.
It is pitch black. You are likely to be eaten by a grue.
If anything, the Linux kernel changes too much. It ought to settle down into a tight little kernel that's changed only for rare bug fixes. The "monolithic kernel" concept has gotten somewhat out of hand. Arguably, no USB device driver or printer driver should be in the kernel or have any significant privileges. That alone would cut way down on kernel mods.
...then you can really get chewed out by Linus because you should have known better. It's not just from the outside it's a tough crowd all the way, but you also have to remember these people write the most key component of any good server. There are many places where having a developer, even if he's not the world's greatest is better than having none at all. The kernel isn't one of those places, if you can't take the heat then get out of the fire.
Think of it more like chess, the rules are simple but the most effective implementation hard. Hell, I know a couple geeks who built their own OS, but I think the scheduling was just a round robin. Well a lot of bright people have thought quite a lot about it, and the kernel performs to some level. It's like a grandmaster chess player, he can't learn anything from a player ranked below 2000, it'll only be rehashing the same simple ideas and walking into the same traps that people have walked into before.
Of course there's also the asshats that think that just because they know how to write an operating core, they're god's gift to mankind. But, I've run into those in quite a few other areas too...
Live today, because you never know what tomorrow brings
In other news, "Lead Windows developer admits that the Windows kernel is an intimidating team to join at Microsoft. Among other challenges, contributors must go through a rigorous process where their academic and professional background is evaluated followed by an in-person grilling but top Windows engineers. Afterwards, the contributor must sign various legal papers before spending perhaps 3-4 years doing bug work and very simple tasks before being given the privilege of writing any significant portion of code."
Seriously, the kernel is an important piece of code. If you want something to be added to it, it's going to be challenging both technically and professionally. It's not a bad thing. In most other areas, people would consider a highly selective screening criteria as part of the QA process for a product.
was his.
Is this a rhetorical question?
Well.. duh. Because you have to learn to program the Linux kernel to join.
It is a "best of the best" club for programmers. Obviously that requires a lot of brains and effort. It should be hard to join, otherwise there would be a lot of crappy code in the kernel and Linux would suck.
Ceci n'est pas une signature.
PJ has at least 100 spare hands to do the kind of moderation she does.
She really is a robot :-)
Kernel Contributor Corbet Says Linux Community Is 'Intimidating, Smelly'
Utilizing the synergization of benchmark e-solutions to pre-workaround action items!
The arrogance is intentional and deliberate. These people aren't getting paid for this, and simply don't have time to deal with noobs. Nor do they have time to screen patches from everyone who is trying to be helpful. Some intimidation is necessary to weed out those who aren't really serious and haven't made a concerted effort to fully understand the problem before contacting the kernel developers.
Unix developers have always had an attitude, but in my experience they have been far more tolerant than Microsoft Developers (who insisted we rewrite all the Winsock2 code Intel was doing for them for free to better suit their revision control system) or that paragon of arrogance, the original SCO. When I worked for Amdahl UTS, one of my coworkers got the comment in his annual review that he "has little tolerance for mediocrity". Problem is, he thought this was a GOOD thing, while his manager was using it as a negative to justify a bare cost of living raise. Yes, they don't suffer fools easily, so make sure you do your homework first and get your facts straight before talking to them. Really, they are a lot like slashdot posters who rush to point out even the most minor mistakes in a post.
I've abandoned my search for truth; now I'm just looking for some useful delusions.
Only problem is getting your changes into the trunk.
For that I am glad they are very picky.
really fucking annoying.
Bow-ties are cool.
He can paint with a much broader brush than that, because the insular mindset extends well beyond just the kernel developers. I encounter it constantly in the Ubuntu and similar user forums as well. Groupthink is viral and highly contagious.
Something that I've always found interesting is the whole social structure that permeates different internet projects. In particular -- and I qualify this with nothing but my own paltry observations -- it's exceedingly difficult to break into anything that involves skill (particularly the programming sort) because not only is the existing structure built on skill, but it is also built on familiarity. If, say, Bob is well known for doing 'foo,' and you step in one day after cobbling around your own for a while and demonstrate that you're not half bad at 'foo' yourself, there's an exceedingly good chance that you'll fade into the noise unless Bob (or someone who speaks to Bob quite a bit about 'foo') notices what you've done and says something about it.
At that point (absent of any response), the prospective developer has a few choices -- keep cobbling and work up some more 'foo,' and bring that into the light once it develops, seek out Bob to talk shop that he might let you in on some of the nuances that you may not have seen in development wishlists/buglists/etc., start clamoring over what he/she's already done in (erroneous) hope of getting recognition, or move on to developing 'bar.'
Granted, I haven't done any Linux development yet, but that's what I've been seeing in other things. That whole breaking in process is difficult because those insecurities about people responding underwhelmingly (or negatively) to your work don't really go away, whether you're coding or doing scientific research. It may well benefit the Linux development community only to work with those who have the drive to continue despite those discouraging possibilities, but it won't necessarily be a huge recruitment tool to get people into developing in the first place.
"What's the use in being grown up if you can't be childish sometimes?" --Fourth Doctor, "Robot"
What the fuck does he know?
type something up there.
You should find most linux people friendly and willing to help learn. You might try joining a linux user group before taking on the kernel development. Here is a list of user groups http://www.linux.org/groups/ You have to remember the kernel development is difficult, some people have been programming for 10 or more years to get to that knowledge. You might try this steps in your linux knowlegde. 1) basic user 2) beginner 3) proficient use of applications 4) some programming 5) development 6) kernel programming
it is!
yeah, super intimidating. every time i edit an article i immediately get reverted. oh, wait.
Why does every successful new language have to use "C" syntax?
You mean like python, ruby and Haskell?
Also, what's gained just by being different? It's one thing to have different concepts that need new syntax simply because there isn't anything to copy. It's another thing to rehash an old concept with a different syntax, without any apparent purpose for the difference. Why "fix" what works?
your message's meaning is inverted!
Bow-ties are cool.
Would you say that it's difficult to break into the Microsoft Windows or Mac OS X kernel community?
It’s GIT. There is no central top of the hierarchy. Pull whatever you like into your own repository, add whatever patches you like, modify it, and distribute as you please.
I have over a dozen alternative kernel mods for Linux available in the Gentoo package manager. I chose the one that fits me best. Done.
Any sufficiently advanced intelligence is indistinguishable from stupidity.
... to get used to it. Mostly because it isn't going away, you will encounter it many times, and a better perception of it will better your life as it encounters these blips.
The serenity prayer isn't just for the religious or substance abusers. It is actually pretty awesome. You don't have to know it or say it; just know the basic idea of it 'accept what I can't change'.
When the creator of something is an ass yet they manage somehow to keep hangers on coding crap and dazzling corprats into snorting their product I wonder what is good about 'free' software.
I've used a linux based distribution since around 97, started with Slackware. It's gotten bad enough I'm getting tired of dealing with egos.
I don't want to have to pay M$ for win7 but the audio and X server issues in Linux distributions are killers.
I'd go on a Vegan diet but the delivery time from Vega is too long. --brownkitty
I hear what you're saying, and an argument like this was made some years ago on osnews.com (a woman named Eugenia comes to mind.) But the thing is, these coder folks aren't coding a high school homework assignment, they're writing some seriously serious code. They don't need negative criticism --- they get a lot of that from shills, astroturfers, and trolls. And even constructive criticism like for example comments about "improving" the UI to gimp, while it might be genuine, and honest goodwill, and it might even be correct just isn't as valuable as the most important commidity of all to hackers: code. There is no substitute to good code.
Yes, you can throw money at people to write F/OSS code and that's appreciated because it gives coders a chance to do something they love to do, but other than financial support for coders to write the code, the code itself is the most precious commodity. If there's a F/OSS application that you think stinks and could use some improvement as a service to yourself and to the F/OSS community take the time to study the code, and throw a patch at the developers. It doesn't have to be War-and-Peace sized, just a proof-of-concept patch would be heartily welcome. Really, you will get a chance to flex your coding muscles, you'll get a chance to feel good about performing a constructive act for the community *and* the F/OSS community will benefit from your generosity.
It happens that, If you have a hardware that is not supported for the Linux community aka the same hardware that they buy or hack, they have a nice answer for you: "Waste your hardware and buy the same than me or WRITE THE DAMN DRIVER YOU N000000B!". Yes that's a lot of support from the community. I used SUSE and FEDORA CORE, and I needed to come back to Windows XP since I won't replace: Scanner, Digital Camera, Printer and Internet provider just to please the Linux Community. :P
The Linux community is very open and egalitarian! *Anyone* can get called an idiot for saying something stupid or posting a retarded patch!
Nathan's blog
I'd rather have acceptable code implementing a really well thought out design, than lightning-fast really tiny code that implements an unmaintainable, unsupportable abortion of a design.
Designers really do count for something, and some of us aren't first-class coders. We don't have to be; there are people who eat and breath code.
But the one thing commercial software development has over *most* FOSS projects is that it has ways of evaulating designers, and then *placing them in charge of design*.
Ask Fred Brooks about this, if you like; I'm sure he could tell you a few things about how important software system architecture is.
Oh, wait; he already has.
quit this now?
been modded informative. It was clear that tetsujin knew that and was making the point that doing so is stupid, except to make a point as he and I have done. Of course, the guy who did it doesn't know the difference between breaking into the asylum and breaking out of it, so we can't really hold him to the standards set by "normal" society ;-)
Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
I knew how to quit you.
Try not to take me more seriously than I take myself.
So the antitrust efforts of Microsoft are the fault of OSS developers? If it wasn't for Microsoft, you'd have a choice of not only MSWin and Linux, but also OS/2, BeOS, and many others. Hardware manufacturers would have to create drivers for most operating systems if they wanted any decent market share, just like it was in the 1980s.
I suppose during the bank bailouts you were complaining to your local banks about how they are assholes because they didn't defraud the government into giving them shitloads of taxpayer's money and how they don't give their executives multi-million dollar "bonuses."
If a company manipulates the market to eliminate competition, how does this become the fault of those who try to compete?
Whatever you say shithead. You are just a childish asshole who shits on whomever is most convenient when you don't get what you want. Then again, your views are so absurd, I have to wonder if you are some sort of Microsoft "missionary" trying to preach "the word" of the "one true OS."
I give up
Bow-ties are cool.
I give up
I can see that you're far to stubborn and far too egotistical to accept reality. I will accept that even you cannot see yourself in a position to accept things you cannot change... and thus I will accept that you probably won't change.
Good luck with your stressful and annoyed life. You might avoid a few hemorrhoids if you bothered to listen to someone instead of think you're always right and spew silly snide comments akin to those ridiculous 'no fear' shirts.
Laters.
And you, what, are you going to live your life merely adjacent to the world, resigned to your impotence, determined to forever console yourself that things you disagree with are inherently beyond your influence?
I'll stick to my plan, thanks.
Bow-ties are cool.
No no no mods, parent is NOT insightful. Parent is irrelevant. Parent is clueless. Parent's examples completely miss the point. What the f*** is happening to /.? Are you all just pretenders? Fakers? Jocks pretending to be geeks?
What does the parent propose one should do when your Linux install breaks? And sooner or later like everything else it will break unless you don't really use it. It's not uncommon that's it's broken straight out of the box depending on your hardware (be it new or old). When your chipset or other hardware isn't supported (or support is removed, it happens) and you have to compile the newest (or older) version of a program or kernel that supports it and it breaks other parts of the system so of course you must fix that next and then you get a kernel update which still hasn't fixed the issue and you have to do it all over again? Better get used to it (and yes it is still better than Windows).
I use Ubuntu (not just "install and test" but real use as the primary system, posting this from an old w2k because the Ubuntu machine is busy with other more important stuff), if no problem ever arises I bet my neighbors dog could use Ubuntu and use it well but if a problem appears you will quickly be up to your neck and then some and there's no way in hell you can fix real issues without multiple sessions in the terminal (and hours on Google with the thinking hat on). If it's core stuff you'll even want to (and sometimes have no choice but to) actually reboot to make sure you solved it for good.
So don't lie please, it does nobody any favors. Hell anyone can go have a look at the Ubuntu forum itself and get a clue.
Or an even simpler example: you installed a program with the gui but you can't uninstall it using the same gui, happens.
And another similar example: you want to install a program, it is in the repository but it is not available in the gui, not entirely uncommon either. If you just want pure TeX and LaTeX without insane amounts of bloat you might have to do it this way, gui won't help you get it on its own if you don't already have it (for example if you installed then uninstalled related bloatware from the repository). Plenty of small programs that aren't included in the distro that are only available using that old apt-get in the terminal.
If you do actual work on your Ubuntu machine you should have experienced such examples as these many times.
Ubuntu is good but it has a lot of "polishing" left (remember the 9.04 trash bin bug/icon crash anyone? Install and update a 9.04 and you'll see it's still there, how the hell did they miss that one anyways?). Debian seems to be a bit too conservative and Ubuntu seems to always be a little bit too rushed (and frankly the default selection of apps in Ubuntu sucks but that's easily remedied as long as you know what to get).
And why the hell not push updates for the latest stable versions of core programs and packages? Why the hell are packages like Sun Java (IcedTea really isn't appropriate for some uses) not kept up to date as available from Sun? I've got to say that even though I like Ubuntu a lot I see why many business wouldn't want to switch away from Windows on the desktop when Linux distros make them jump through an awful lot of unnecessary hoops.
Linux: always looking for something better (and yes I am a fan. "Linux" is far better than anything else except OpenBSD on the things that matter the most, but on the rest it still has a long way to go).
And you, what, are you going to live your life merely adjacent to the world, resigned to your impotence, determined to forever console yourself that things you disagree with are inherently beyond your influence?
I'll stick to my plan, thanks.
See that is where you get it wrong. You probably didn't even read far enough into the advice to read or even know the serenity prayer. (I'm not even religious, so I just remove the God part of it).
There is a bit about accomplishing what is possible, and another bit about having the wisdom to know when you should accept those that you cannot change.
I don't just sit back and suck it. But unlike you, I can't stare at the blue sky and be upset about it forever. At some point I accept reality on things and learn to appreciate or at least tolerate that which I get as best as I can.
But I lose in the "i look tough" department, huh? Good thing my friends aren't reading this... I might not look hard enough for them to respect me...
Later, tough guy.
In a blizzard you might freeze to death while I sit cozy, and accept the fact I should put on a jacket.
To the best of my knowledge, most printer drivers are in CUPS (something similar happens for scanners with SANE) which is userland. There are plenty of USB widgets in the kernel but this seems to be mostly for devices that do no not conform to a standardised USB class (e.g. most usb pens will be handled with the existing mass storage driver).
The majority of Linux kernel changes are to drivers but these are for new hard disk controllers, video cards, wifi cards and so forth. In fact I've just done a quick check on where the changes between 2.6.32 and 2.6.33-rc4 were and it looked like this:
9.0% arch/arm/
16.7% arch/
3.2% drivers/gpu/drm/nouveau/
5.2% drivers/gpu/drm/
4.0% drivers/media/
4.5% drivers/net/wireless/
8.1% drivers/net/
3.6% drivers/staging/rt2860/common/
7.4% drivers/staging/rt2860/
4.3% drivers/staging/rt3090/common/
9.4% drivers/staging/rt3090/
4.5% drivers/staging/rtl8192u/
8.5% drivers/staging/wlags49_h2/
35.2% drivers/staging/
66.1% drivers/
6.1% firmware/
Percentages are cumulative (drivers includes drivers/staging etc) and directories with less than 3% of the changes have been left out. So in this case most of the changes were to wifi driver, the ARM architecture and graphics driver bits.