Slashdot Mirror


Why Linux Is Not Attracting Young Developers

judeancodersfront writes "Jonathan Corbet recently pointed out at the Linux Foundation Collaboration Summit that the Linux kernel team was getting older and not attracting young developers. This article suggests the Linux kernel no longer has the same appeal to young open source developers that it did 10 years ago. Could it be that the massive code base and declining sense of community from corporate involvement has driven young open source programmers elsewhere?"

742 comments

  1. older developers... by mayberry42 · · Score: 5, Insightful

    would also imply more experienced developers. And that's not (necessarily) a bad thing.

    1. Re:older developers... by adosch · · Score: 5, Interesting

      I agree with that. I've noticed a big divide in developers of the 21st century coming out of college; there's a lot less focus on lower-level development and hardware interaction in schools/colleges than there were in the 80's and 90's. I think there's a more general focus on high level languages at best (e.g. python, web frameworks, al la .Net, java-this-and-that, ect.) that work 'on' an hardware/development architecture, not 'with' it.

      I also wouldn't say there is a lack of support for the Linux kernel, but Linus is still a full-time driver of changes/additions in the kernel and with him, comes his ego and experience. Rightfully so, but we've seen it drive away brilliant maintainers and contributors in the past decade.

    2. Re:older developers... by Anonymous Coward · · Score: 0

      would also imply more experienced developers. And that's not (necessarily) a bad thing.

      Until they retire or croak. And then lack of replacements will be a very bad thing.

      (Captcha: recruit. I think the captcha generator is becoming sentient or something.)

    3. Re:older developers... by Anonymous Coward · · Score: 0

      Yes, but new programmers have a different mindset, more apt at exploring and not attached to any particular style or way of doing things, meaning younger developers have a higher chance at pushing boundaries and being more revolutionary in their processes and products.

    4. Re:older developers... by Magic5Ball · · Score: 5, Insightful

      The bigger problem appears that CS programs now focus on teaching tools and how to Google as opposed to thinking or problem solving, in order to meet perceived industry demand. In industry, I've had to teach too many youngling graduates about basic data structure and database concepts, memory and hardware addressing, protocol encapsulation, AAA, synchronous vs asynchronous operation, and other fundamentals which would be needed to understand why things such as kernels are implemented as they are. The way in which FOSS support forums and listservs generally respond to noob developer and user questions--some variation of RTFS without providing a way of understanding which documentation to read--does not invite exploration of concepts embedded in the current software architecture, let alone ways to identify entry points into interesting sub-components. This is a barrier since popular CS program tools to which students are exposed, such as RHEL, gcc, etc. are provided as finished products in the same way as Access or BOS.

      Separately, I have a dream where all of the Alans Cox get together to write an operating system.

      --
      There are 1.1... kinds of people.
    5. Re:older developers... by Anonymous Coward · · Score: 0

      I'm sure one of the reason is that the application layer has a lot more bells and whistles, and it is easier to show your work. In the past, there wasn't an easy to program Web layer, nor were there platforms for writing apps. In the past, one had to "scratch an itch", which developed a project, either a hardware driver, kernel level module, or basic Linux userlevel program. These days, it is perceived that writing an app on Objective-C for the iPhone is a lot cooler than writing a kernel object module for Linux.

      OB Car analogy -- its like people who are younger being interested in ground effects and paint jobs because they get rewarded, as opposed to working on the frame and engine that people don't see right off.

    6. Re:older developers... by taoye · · Score: 2

      This is too true... my school decided to teach its 200-level programming courses in Java because "that's what we'll best be able to get entry-level jobs with when we graduate." Oh joy.

    7. Re:older developers... by Anonymous Coward · · Score: 0

      Completely agree. I'm seeing new CS graduates, from fairly decent US universities, for whom programming at "low-level" means implementing, say, a queue instead of using the java library implementation. I've had a Master of Science, from MIT (though not in CS admittedly... but working as a developer for a couple of years at the time) asking me whether it was really possible to attach to a compiled C program with a debugger and step through the instructions... because... you see... things like step-by-step debugging is only possible because the interpreter (java,php... what have you) allows it. And I'm perfectly willing to extrapolate that the general level and "tilt" of programming education/experience worldwide leans more towards scripting/java now.

        So yes, the available pool of college kids who would have enough interest or the ability to contribute to the kernel is very likely shrinking. In addition to that, Linux is no longer the scrappy kid fighting the big evil Microsoft monopoly anymore. So it's not surprising that linux kernel (or *any* kernel) team is not finding the same type of young blood, raring to go at hard new problems, any more.

    8. Re:older developers... by Hal_Porter · · Score: 2, Funny

      At least they don't teach about how to quickly Alt Tab from slashdot to your three day old half completed TPS report when the boss walks by.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    9. Re:older developers... by gandhi_2 · · Score: 4, Insightful

      Maybe it's because there are basically ZERO jobs in most places for real hard-core CS. What few jobs DO exist require the ability to produce actual usable products...applications programming, especially web where the ability to hand-code a balanced search tree won't help at all. Ask a Flash "developer" about registers and instructions on the stack.

      My college changed the first 3 CS classes to Python instead of C++ because it's easier. Then when they get to Data Structures, they've gotta learn C++ for the first time, at the same time.

      Now queue the arguments about the logic skills that HR doesn't care about. Colleges all over the nation (and other nations I'm sure) already crank out degrees no job market asked for....I'm not sure I can blame the CS depts for trying to stay relevant.

    10. Re:older developers... by RockoTDF · · Score: 4, Funny

      I think in the long run Alt Tabbing away from /. is a more useful skill to one's career than knowing only Java.

      --
      There is more to science than physics!

      www.iomalfunction.blogspot.com
    11. Re:older developers... by Zedrick · · Score: 4, Insightful

      And the biggest problem is that very few people grow up with a C64 or an Amiga nowadays. They don't have any reason to learn how a computer actually works (or what a computer is), if they're just put in front of a computer that can load a game into the OS with a double-click. No reason to actually learn anything if that "just works".

    12. Re:older developers... by gbjbaanb · · Score: 3, Insightful

      haha.

      and now they've graduated they find the world has moved on and everyone wants C# developers. Ho hum, ever was the way.

      See, if they're taught them computing fundamentals, they'd be able to enter any job and quickly learn whatever language/framework/system that company uses. Every company I've ever worked at had their own frameworks in place anyway, so no matter what you learn in college, you still have to learn something new when you become employed.

      Otherwise, if colleges really wanted to teach graduates something that would allow them to get entry-level jobs, they'd teach Word, Excel, Outlook and Powerpoint.

      My computer course was maths, but also Prolog, Simula, Pascal, Concurrent Euclid, C, and assembler. I think the idea was to teach a range of languages suited for different tasks. I commend this idea to colleges around the world, though in keeping with modernity, I'd do C (of course), Python, Javascript, C#, assembler and openGL.

    13. Re:older developers... by Magic5Ball · · Score: 2, Interesting

      The unfortunate reality is that a graduate who only knows Java or previous flavours of the week (I've seen resumes where the candidate was apparently able to do an entire CS program in Pascal...) but not how to program will get shoved into a helpdesk position. But neither the graduate nor the company wants that since individuals smart enough to grok enough of the mechanics of one language to get a degree usually want more stimulation shortly after they've received 3-6 months of (expensive to the company) training. My preference has always been to throw demonstrated adaptable individuals (not necessarily CS or any kind of graduate) into situations where their main challenge is to learn and grow the business as opposed to having to struggle to think outside their previous tools. But YMMV since headhunters and HR seek specific, often meaningless to actual business, words on paper for CYA purposes.

      Separately, I have a dream where CS departments stop teaching industry tools from a decade ago, and where industry doesn't have to teach information theory, BA, maths, and computability.

      --
      There are 1.1... kinds of people.
    14. Re:older developers... by cyphercell · · Score: 1

      If you're still there, recommend C++ in the final course or so as a way for students to learn C++ and write modules for python.

      --
      Under the influence of Post-Cyberpunk Gonzo Journalism
    15. Re:older developers... by Runaway1956 · · Score: 4, Insightful

      I scrolled down a ways. I don't think anyone has hit on the underlying reason.

      About 15 years ago, MS started giving their products away for free, or very nearly free, to the education system. Schools ate it up. 80%+ of all schools in the US teach kids on MS systems. That goes for elementary, high school, and college. The kids learn how to do things the fast and easy way, and the Microsoft way.

      Today's young developers learned the MS way, and they aren't about to go wandering into the open source ways of doing things, unless there is some really big incentive. And, the fact is, Linux really isn't high profile and high dollar, like MS.

      In short, last decade's monopoly is paying off for MS today.

      --
      "Windows is like the faint smell of piss in a subway: it's there, and there's nothing you can do about it." - Charlie Br
    16. Re:older developers... by Gerzel · · Score: 2, Insightful

      Still new developers are REQUIRED to keep the projects going.

      Also it would be nice to know if the number of linux developers in total is staying the same, shrinking or growing? In other words are older developers attracted to Linux or is Linux just keeping its current developers who are aging?

      Another bit of data I'd like to see if anyone out there has it is where the young developers are going?

      Knowing information about where developers are developing and why would be very useful to many many people.

    17. Re:older developers... by SanityInAnarchy · · Score: 2, Insightful

      My college changed the first 3 CS classes to Python instead of C++ because it's easier. Then when they get to Data Structures, they've gotta learn C++ for the first time, at the same time.

      I've seen nothing in my current Data Structures course that couldn't be done in Python. Am I missing something?

      --
      Don't thank God, thank a doctor!
    18. Re:older developers... by jadedoto · · Score: 1

      I'd have to disagree. At least at my University, there's a very hard emphasis on things like basic data structures, classic computing algorithms and the hardware-software connection. Perhaps that's just because I'm studying for a computer engineering degree rather than just CS, but many of the classes even on the 200-level have at least half the course dedicated to classical CS stuff. You can't get past your third semester in CS without knowing how to effectively write and manipulate classes, BSTs, manual memory management. In sophomore year, we do microcomputer organization and you can't get past without being able to write at least rudimentary assembly.

    19. Re:older developers... by Gorobei · · Score: 4, Interesting

      Weird, I've got 10+ headcount open for hard-core CS guys. I'm lucky to see one candidate/month who is even in the ballpark. 95% fail when asked the basics, e.g:

      1. What is a hash table, why would I use one, what's the expected cost to insert/find/delete, how might you implement it?
      2. Write a bug-free binary sort in the language of your choice.
      3. Here's real-world problem XXX, sketch out a solution and describe the algorithms+data structures involved.

      Had to tell HR to stop filtering resumes: they are set up to look for specific skills, not talent. Also had to explain to them they are not in the compensation package deciding business: we do that, HR gets the process working smoothly. It's no wonder that if HR talks to college placement folks, pretty soon the college profs start feeling the pressure to teach the wrong stuff.

    20. Re:older developers... by Magic5Ball · · Score: 5, Insightful

      > Maybe it's because there are basically ZERO jobs in most places for real hard-core CS.

      There are close to zero jobs for hard-core anything, but that's not the goal of earning or producing a BA/BSc in CS.

      The most important goal of a university degree program is to teach students how to think critically, how to evaluate and apply information, and how to perceive and act professionally outside themselves. Theoretical knowledge is helpful not because industry does a lot of relational algebra or computability analysis directly, but because CS graduates should be able to make a critical business case that an Oracle implementation would be better/worse than a Sybase implementation for a particular use.

      Local technical/trade school graduates can and should easily out implement degree holders in identical fields. If the post-secondary education market is segmented ideally, CS graduates should be have the knowledge and conceptual tools to run rings around technical graduates in terms of understanding and designing principles and solutions in a broader corporate or societal context. As it stands, recent crops of technical graduates seem to understand more about both what they're doing locally, how they got there, and why they're doing it in the community, than the CS graduates who seem weak with both theory and implementation. Some of my colleagues have been seeking out CCNAs, biologists, and ex-military officers, and training them to program because they have better tools to understand systems and business context than recent CS graduates (who /should/ be able to apply the "science" part of their tools to figure it out).

      Relating this back to the Linux kernel, good luck finding a recent CS graduate who understands that MPLS exists, let alone one who can grok the concept (let alone specifications) well enough to understand why Linux will want to support MPLS if it wants not to be locked out of an important part of the enterprise market relating to the current network neutrality debate. (Incidentally, I've pointed some international relations friends at the Wikipedia page who understood the consequences immediately.)

      Perhaps there should be a return from quantity to quality in undergraduate CS programs.

      --
      There are 1.1... kinds of people.
    21. Re:older developers... by Gorobei · · Score: 2, Informative

      Oops, meant to say "bug free binary SEARCH." Though a good hire should be able to knock off a conceptually correct quicksort or heapsort in 20 minutes or so.

    22. Re:older developers... by Vindication · · Score: 1

      there's a lot less focus on lower-level development and hardware interaction in schools/colleges than there were in the 80's and 90's

      I'm a high school student headed to a top-10 engineering university next year. From the information that I've gathered from current students and tours, while the CS department at this school focuses more on the higher-level abstractions, the CE curriculum in the School of Engineering stresses low-level development, including assembly and direct work with hardware.

      Just my two cents, as I by no means claim to be an expert on the topic, nor do I know if similar things happen at other universities, but maybe the departments have simply shifted focus somewhat.

    23. Re:older developers... by pjt33 · · Score: 1

      I understand why developers need to understand things like data structures, but why are you teaching them about anti-aircraft artillery?

    24. Re:older developers... by loufoque · · Score: 3, Funny

      I've had to teach too many youngling graduates about basic data structure and database concepts, memory and hardware addressing, protocol encapsulation, AAA, synchronous vs asynchronous operation, and other fundamentals

      Well personally, I'm more annoyed by old coworkers who have limited knowledge of such basic things and write large chunks of unmaintenable and inflexible code and dump maintenance on you when they retire or move to another project.
      At least the young ones you can do something about.

    25. Re:older developers... by kgo · · Score: 1

      But the sad truth is that even if you take the trade-school approach, and just teach them java, most graduates still won't be able to produce usable product.

      They won't be able to make a robust working app. Probably haven't written a web based app that had more than two concurrent users. Probably haven't written a desktop app that's been tested across a variety of platforms and configurations. Haven't written some server app that can go on for years at a time. They aren't familiar with all the intricacies of J2EE on a real clustered live environment. They aren't going to understand how to code with a team, maybe in theory, not in practice.

      They still have to learn all that on the job anyway. People always say (half-joking) that they learned more their first week on the job than they ever did in college.

      So how much does learning real-world skills over theory really help you? Not that much.

      --
      Can you construct some sort of rudimentary lathe?
    26. Re:older developers... by hitmark · · Score: 1

      the C64 may have shown them programming, even if it was basic, as it came with it in the firmware (and could handle assembly with a bit of prodding).

      but the amiga didnt come with a programming language out of the box, or at least the A500 didnt.

      heck, my best example keeps being the development of mods for first person shooters. with quake, id software had its own programming language, quake-c, that they used for the logics of the game, and the 3d models where "crude" but did the job. Thing is that id software released the compiler, a simple dos program, for downloads. It made its way to demo discs and such, and a whole bunch of mods sprang up. At first it was mostly weapon mods and such, but over time there because things like flight "simulators", warhammer 40k recreations, multi-class single player fantasy stories and more.

      But with quake 2 this all moved to visual-c++ and 3d studio. And with that the access and ability to simply toy with the code vanished. Sure, there was one or two projects that took on some grand ambitions. But most became remakes of each other, or ports of big name mods from quake 1.

      Basically the time and dedication it took to get noticed increased along with the complexity of the tools needed. When before a single guy could dream up a flight sim, it took multiple people just to get the basics ready. And often the groups split based on disagreements or lack of interest.

      but then, this mirrors the game industry, where once, at the time of the C64, a single person could dream up and implement a full game on his own, there are now teams of 100+ people working on a game. But the funny thing is, most of them are artists, be it music, 3d models or 3d graphics, but the number of programmers have stayed largely the same.

      --
      comment first, facts later. http://chem.tufts.edu/AnswersInScience/RelativityofWrong.htm
    27. Re:older developers... by hitmark · · Score: 1

      only way to keep those pointy haired managers at bay.

      --
      comment first, facts later. http://chem.tufts.edu/AnswersInScience/RelativityofWrong.htm
    28. Re:older developers... by kgo · · Score: 1

      Forgive me for asking, but what the hell is a binary sort? I thought I was just being dense, but none of the items on the first page of a "sort algorithm" search list a binary sort as a popular sorting algo. Do you mean binary search? (I'm hoping it's just a typo and I'm not that out of it...)

      --
      Can you construct some sort of rudimentary lathe?
    29. Re:older developers... by renegade768 · · Score: 1

      The bigger problem appears that CS programs now focus on teaching tools and how to Google as opposed to thinking or problem solving, in order to meet perceived industry demand. In industry, I've had to teach too many youngling graduates about basic data structure and database concepts, memory and hardware addressing, protocol encapsulation, AAA, synchronous vs asynchronous operation, and other fundamentals which would be needed to understand why things such as kernels are implemented as they are. The way in which FOSS support forums and listservs generally respond to noob developer and user questions--some variation of RTFS without providing a way of understanding which documentation to read--does not invite exploration of concepts embedded in the current software architecture, let alone ways to identify entry points into interesting sub-components. This is a barrier since popular CS program tools to which students are exposed, such as RHEL, gcc, etc. are provided as finished products in the same way as Access or BOS.

      Separately, I have a dream where all of the Alans Cox get together to write an operating system.

      Amen to not teaching problem solving, that is the case I see coming forward in my daughter's education. Training is not concentrated on developing learning and problem solving skills, it is more training on how to use the 'current' tools. Many do not fully comprehend data structures and in the case of C/C++ pointers and how they are perceived at the lowest level in computer memory (for that matter many course instructors I have run across, teach the language, nothing more). Fact is, java, python, PERL, and languages like them, are actually higher level interpreted languages, which some more than others further isolate the new guy/girl from the lower level workings of such languages. The fact is, there has got to be coders that know and understand how to do those things as well, they are the ones that write the software average joe/jill uses. Most (JMO) younger people do not have the skill nor the patience and persistence to learn how these systems actually work. The long list of error messages from a compiler, is intimidating, so the actual knowledge is bypassed in favor of something that is easier to comprehend and understand.

    30. Re:older developers... by Blakey+Rat · · Score: 5, Insightful

      Separately, I have a dream where all of the Alans Cox get together to write an operating system.

      Yeah, they'd spend 5 years perfecting every single line of code for the USB subsystem. Meanwhile, nobody cares because the optimizations from those 5 years were completely leap-frogged by hardware improvements, and normal people want an OS that they can use to get shit done.

      Sometimes I think the concept of "pragmatism" is entirely absent from this field.

    31. Re:older developers... by Gorobei · · Score: 1

      np, you are right - I meant to type "binary search" and added a follow-on post asap.

      I'll lick my wounds now and claim "binary sort" is any sort that runs in NlogN expected time on one CPU (bonus for worst case runtime in bounds.)

    32. Re:older developers... by Anonymous Coward · · Score: 0

      I concur. Can we mod this +10 on this one?

    33. Re:older developers... by AndyS · · Score: 1

      Pretty sure the A500 shipped with BASIC.

      Of course, I don't have it lying around here so I can't check too much...

      http://en.wikipedia.org/wiki/AmigaBASIC

      Covers it. Of course, that stopped with the A500+, but by then you could get AMOS/Blitz fairly easily (or at least minimal versions of it, as they were included on magazine cover disks)

    34. Re:older developers... by Teufelsmuhle · · Score: 1

      It's not necessarily a good thing either. "Experienced" developers have a tendency to continue to code in the same way and continue to make the same "mistakes" because "that's the way we've always done it". Infusion of new blood is needed regularly to stir new ideas and uncover unnoticed design flaws. This is not to disparage experienced developers in any way -- there are a lot of positives that come along with experience. It's just ideal to have a good mix of experienced and more youthful developers.

    35. Re:older developers... by Nerdfest · · Score: 1

      I keep seeing Apple in schools the way MS used to be. I think the current crop's future may be even worse than the last one for being able to deal with problem solving at any level. Good for Apple for making things easy, but bad for learning. With the lock-down mindset that appears to be coming, it's becoming less relevant anyway.

    36. Re:older developers... by Bungie · · Score: 1

      I still remember my dad doing his taxes by hand coding programs in BASIC to the all of the calculations. I'm sure he's much happier double clicking TurboTax.

      --
      The clash of honour calls, to stand when others fall.
    37. Re:older developers... by centuren · · Score: 3, Insightful

      would also imply more experienced developers. And that's not (necessarily) a bad thing.

      The suggestion that "the Linux kernel no longer has the same appeal to young open source developers that it did 10 years ago" is a statement that shields an assumption: the Linux kernel is losing young developers to other, similar projects.

      The article points out the iPhone has had more success attracting younger developers than the Linux kernel, which makes me wonder how anyone possibly thought that might sound anything other than idiotic along side concepts such as "declining sense of community".

      Writing apps for the iPhone is not the same as developing an OS kernel's code base in practically any way. It often draws a furore when I point this out, but all areas that fall under the umbrella name "Computer Science" are not equal. A web developer is not an Apache developer. An iPhone app developer is not an iPhone OS kernel developer (or any other kernel developer). Of course, I'm not making a broad statement that web or iPhone app developers don't have the capacity to be skilled programmers in other areas. I'm just pointing the obvious: iPhone apps do not have the learning curve and project scope that a kernel project has, and yes, less talented programmers can find a place more easily wherever learning curves and language complexities/nuances are lower/less/fewer.

      10 years ago, there weren't as many developers, nor were there as many platforms, toolkits, IDEs, SDKs, etc. Apple, behind the iPhone, has every reason to do as much as possible to make it as easy as possible for as many people as possible to produce software for their platform (subject to their approval, of course), since available applications are so important to young platforms and/or OS's. The Linux kernel project does not have cause to do the same, and let's hope it never does. The only proper way to judge the interest in the Linux kernel project with young developers is to compare it to how well other kernel projects are attracting young developers. Or, at the very least, compare it to projects that deal with a similar area and scope.

    38. Re:older developers... by w0mprat · · Score: 3, Insightful

      And the biggest problem is that very few people grow up with a C64 or an Amiga nowadays. They don't have any reason to learn how a computer actually works (or what a computer is), if they're just put in front of a computer that can load a game into the OS with a double-click. No reason to actually learn anything if that "just works".

      And the next generation of gadgets kids will grow up with won't even have root access to their computing devices. *cough* iPad *cough*.

      --
      After logging in slashdot still does not take you back to the page you were on. It's been that way for 20 years.
    39. Re:older developers... by sorin25 · · Score: 1

      > Maybe it's because there are basically ZERO jobs in most places for real hard-core CS.

      A real hard-core CS would be able to do the jobs that are available faster and better ...

      Engineering is an art, and the colleges should promote people with talent for that art. Code monkeys do not need a college degree, they can survive with a 3 month introductory course in whatever programming language they need ...

    40. Re:older developers... by Magic5Ball · · Score: 1

      http://en.wikipedia.org/wiki/AAA_protocol

      (Authentication, authorization and accounting: Basic security that, if learned and implemented consistently by people working with computers, would make the Interwebs a much safer place.)

      In a previous career, one of our hardware/software bundles unexpectedly sold well to the military. Although AAA would normally have no reason to go through our product, some of our SENGs and EEs had to quickly learn to troubleshoot and design for bad things that can happen to computing devices with the military in physically hostile environments.

      Bringing this back to the Linux kernel, I'm glad that LM78 support finally works better for some real-time applications than external instruments feeding serial data...

      --
      There are 1.1... kinds of people.
    41. Re:older developers... by spiffmastercow · · Score: 1

      Heap sort is certainly a binary sort..

    42. Re:older developers... by Sir_Lewk · · Score: 4, Insightful

      Yes. A good Data Structures class.

      A data structures class shouldn't only tell you how to create a linked list, or a binary search tree, or a hashtable. It should also teach why why and when. Part of understanding why and when involves understanding how exactly those things work. Granted, that part is common sense and/or comes naturally to some people, but it is a entry level course, don't expect to be challenged that much.

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    43. Re:older developers... by twitterfire · · Score: 0

      There is one sorting method called binary tree sort.

    44. Re:older developers... by BitZtream · · Score: 0, Flamebait

      Ask a Flash "developer" about registers and instructions on the stack.

      Please stop using the term 'developer' when refering to flash monkeys.

      Artist, sure. Developer? No.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    45. Re:older developers... by twitterfire · · Score: 0

      O(nlog n)sorting algorithms are inefficient. There are algorithms with O(n) complexity.

    46. Re:older developers... by styrotech · · Score: 1

      Yep, my first experience with annoyingly buggy MS software was AmigaBASIC.

    47. Re:older developers... by Eli+Gottlieb · · Score: 1

      That's simply not true. I'm in college right now, and all of our department's computers are triple-booting iMacs. Most of the students actually run at least two of the three major operating systems if not all three.

      --UMass Amherst CS

    48. Re:older developers... by Gorobei · · Score: 1

      Well, sure there are algorithms with O(n) complexity, but do they sort things?

      I mentioned single CPU - what is an example of a more efficient algorithm?

    49. Re:older developers... by Bodrius · · Score: 3, Insightful

      I'm not sure how that answers the original question - what part of the internals of data structures cannot be taught in Python or other high level languages?

      Or are you saying that really understanding data structures requires unsafe pointer arithmetic?

      --
      Freedom is the freedom to say 2+2=4, everything else follows...
    50. Re:older developers... by Anonymous Coward · · Score: 0

      Holy shit, are these kids coming out of non-accredited scam schools or something? I learned all of that in the CS classes I took just a few years ago at the local community college, and I don't even have a degree.

    51. Re:older developers... by spiffmastercow · · Score: 2, Funny

      2 questions.. 1.) are you just looking for CS knowledge to weed out the riff raff, or do you actually have jobs available that require such knowledge? And 2.) if the answer to #1 is the latter, why haven't you hired me?

    52. Re:older developers... by Anonymous Coward · · Score: 0

      "bug free" can be a real problem in an interview scenario. What tools do they have access to? Do syntax errors count? How much quiet concentration time to you give them?

      Interviewing for development positions is hard, and questions like this can be a useful filter, but you really want to make sure someone can tell you the direction, not demonstrate that they can find missing semi-colons by eye.

    53. Re:older developers... by Eravnrekaree · · Score: 1

      You mention a good point. Part of the problems with Linux is the poor documentation of the kernel. A mailing list is not a good place to learn about the kernel systems, these are what documentation is for of the kernel systems. Obviously its more efficient to document the kernel once rather than respond 10,000 times to response for help on understanding it.

      Another problem with Linux is that it is simply not a pleasant system to use and this is due to the elitist and ideological philosophy of some developers who are unwilling to adopt some ideas such as encouraging more hardware makers to make drivers which would lead to better hardware support. By taking more of a pragmatic approach in adding the technical possibility of a stable ABI, we can make a more useable system and increase deployment of OSS systems. Hardware makers can test the drivers better than any OSS driver is tested, and realese drivers much quicker, we need their help. Indeed we see a group of kernel devs which technically hobbles the Linux kernel, actually lets politics drive Kernel development, including excluding the possibility of a stable kernel ABI. The hardware vendor drivers would even speed up OSS driver development by providing more back engineering possibilities. OSS drivers are great, need to be done, but we should not make people wait the year it takes for someone to do them. Some hardware never has an OSS driver. This is simply not acceptable and will keep Linux from being useable to most, including its developers. Whats the point in developing a system that does not work well for you, and will not because of some politics of some other developers? Hardware makers are not going to release open source drivers in massive numbers, lets be realistic, and without their help even if their drivers are binary, we are not going to see a useable system.

      Obviously as well it takes people who are intellectual and who havea drive to achieve rather than just game consumers, to work on a kernel, so there is a work ethic that needs to be taught. Games are great, but the purpose of the kernel is to make the games work and run well, which is one way to suggest the relevance of kernel work.

    54. Re:older developers... by cjHopman · · Score: 3, Informative

      No comparison-based sorting algorithm has complexity less than nlogn. However, there are sorting algorithms that are not comparison-based and thus can have "better" complexity. For example, counting sort is a sorting algorithm with complexity O(n + M) where M is the size of the range of values.

    55. Re:older developers... by Anonymous Coward · · Score: 0

      Kind of. Problem is the of the few young people that can grok kernel code, not too many want to work for Microsoft anymore.

    56. Re:older developers... by antirelic · · Score: 1

      I've seen this kind of intellectual dick wagging for quiet some time in the CS arena and its pretty funny. Especially in the FOSS community which relies on a growing base of individual and independent thinkers to help improve the state of "things" and come up with new ideas. Its ironic how in the less cerebral professions (thinking military here) new individuals are instructed on EVERYTHING,new regardless of their previous experience, with the hazing having ended at boot camp. In the developer world its lolz n00b you suck rts.

      --
      20th century Marxism is not progress...
    57. Re:older developers... by Anonymous Coward · · Score: 0

      Might be useful to point out where said listings can be found. ::just a thought::

    58. Re:older developers... by Sir_Lewk · · Score: 3, Informative

      You certainly can teach students how to create various data structures in python, however I expect the general response from the students would be very poor. It seems somewhat silly to have students implement things that a language natively supports. You're likely to get many "why do I have to reimplement this if python already supports it" type complaints.

      I did however read the comment I was replying to as "why should we need to learn things in Data Structures that python can already do". Perhaps I misread it.

      Really though, a good class would be completely language agnostic. In my data structures class the professor demonstrated concepts with Pascal, but expected assignments to be completed using either C, C++, or python, at the student's discretion. Most students opted to use C.

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    59. Re:older developers... by Gorobei · · Score: 1

      Sure, sorting N identical values is O(1), but that's not really what CS guys are talking about when they are talking "sorting."

    60. Re:older developers... by TheRaven64 · · Score: 1
      When I was growing up, the government was pushing computers into schools. The machine that they selected for the purpose was the BBC Micro. It came with a very powerful dialect of BASIC (supporting structured programming, writing directly to memory addresses for I/O, and even had a built-in assembler) in ROM and a massive array of useful ports. These included things that you could easily connect to a variety of sensors, or motors. One port, for example, was an 8-bit digital I/O port. On some modern systems, you get the same thing from GPIO, but this had two advantages:
      • The pins were big and connected to a standard ribbon cable, so it was easy to build something that connected to them.
      • You could read and write a byte of data from BASIC with the PEEK and POKE commands at the right address.

      The most important thing about this machine was that it started up in a programming environment and leaving it required effort. My school had some education games, but if you wanted to play one then you needed to go to the headmaster's office and ask for the disk. If you just sat down at the computer (which you could do at break and lunch times if you reserved it, or after school if no one else was using it first) then you were in a programming environment by default.

      Writing code was a fun way of killing some time while waiting to be collected after school. Machines of the era that people used at home typically had a cassette deck instead of a disk drive. This meant that playing a game could involve 10 minutes of waiting for it to load, while writing a program was something you could start immediately.

      The first computer I had at home was a PC with a BASIC interpreter and a PL/M compiler. I later moved from PL/M to C, and still find the painfully primitive memory model irritating.

      --
      I am TheRaven on Soylent News
    61. Re:older developers... by Magic5Ball · · Score: 1

      I never said that I was annoyed with teaching. (Unlike some people in *-dev) I find it quite enjoyable to ensure that the people coming up have the skills not just to take over the current operations, but to build and improve on it to meet future needs, especially if they don't blindly accept the current paradigms.

      It's a good thing that the remains of my pile of undocumented code and wonky infrastructure configurations built on best (and worst) practices from a few generations of technology and knowledge ago inspires the young ones to do it better using what we know now. And in 30 years, their mistakes (whatever those will be*) will in turn teach the next generation.

      * My guesses: you won't know what good parallelized/distributed/cloud code looks like for another 5-10 years; you will URIs (and their shorteners) as foreign keys to the bazillion local stores when things like BigTable top out; and you will regret sacrificing any-to-any connectivity for big pipes to favored content of little to no new information value.

      --
      There are 1.1... kinds of people.
    62. Re:older developers... by swillden · · Score: 1

      You open to telecommuters? I'm thinking about looking for a new job.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    63. Re:older developers... by wed128 · · Score: 4, Insightful

      There's nothing unsafe about pointer arithmetic, unless you do things in a lazy way and don't think things through. As long as you design your objects ahead of time, and make sure to cover all of your edge cases, you'll be fine.

      I think a major problem with modern CS education is that students are taught that pointer math is "unsafe", and end up afraid to even try it. Maybe this is why so much software ends up getting written in java or c#, and my 3 GHz Core 2 doesn't feel any faster then the 2ghz Athlon I had 8 years ago...

    64. Re:older developers... by IntlHarvester · · Score: 3, Interesting

      And the biggest problem is that very few people grow up with a C64 or an Amiga nowadays.

      As someone who grew up with Ataris and Apples, I actually think that is a good thing to some degree. For every 1 coding genius that came out of the 8-bit home computer scenes, you also had 10 other self-taught Visual Basic hackers making a mess of everything.

      Generally speaking, kids coming out of school nowdays are much more professional and exacting in their approach than young programmers were in my day, probably because they didn't learn programming until they were taught "the right way to do it".

      --
      Business. Numbers. Money. People. Computer World.
    65. Re:older developers... by CAIMLAS · · Score: 1

      If the post-secondary education market is segmented ideally, CS graduates should be have the knowledge and conceptual tools to run rings around technical graduates in terms of understanding and designing principles and solutions in a broader corporate or societal context.

      Sadly, my experience has been in strong contrast to this (within the domain of systems administration).

      Yes, there are university grads who know their stuff and can hack it, too. But from what I've seen, they're got absolutely no idea what they're doing around a system, and most of their administration attempts are utter crap laziness (at best).

      In short, they design their systems like a conceptual mathematics student or a computer science type might: no forethought into the future, at all. They're not capable of a true "engineering" task, because everything they touch is of the "it works perfectly, just don't touch it" variety.

      In short, the work is good, btu the conceptual understanding of what's necessary over time is not. They've got too much theory floating around in their head and, while they can grasp technologies well enough, proper design isn't a concern if the "theory" is fun enough.

      --
      ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
    66. Re:older developers... by Gorobei · · Score: 2, Interesting

      1. I have jobs available that require such knowledge. Open source contributions, good grasp of functional programming, graph algorithms, etc are a plus. Being interested in big systems also a plus.
      2. Because you didn't send me your CV yet. mmn@bellatlantic.net

    67. Re:older developers... by Sir_Lewk · · Score: 2, Insightful

      This is a very good point. What's more is that if there is ever a time when you shouldn't be relying on your language to keep you save, it's in a data structures class. You shouldn't ever need your language to keep you safe if you are doing it correctly.

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    68. Re:older developers... by Lordnerdzrool · · Score: 2, Interesting

      But there are many applications where using an O(n) sorting algorithm actually is useful, and fast. It is what "CS guys" are talking about. It's not just a useless technicality.

      For instance, sorting large numbers of telephone numbers, sorting zip-codes or other integer data can be done in linear time using a non-comparison based sorting algorithm like Radix Sort. This isn't just a technicality that creates the faster than O(nlogn) time complexity, it covers a large range of common problems that people often use the wrong algorithms to preform because people don't know they can do better than O(nlogn) in specialized situations.

      Likewise, if you know the data is to have a certain pattern that isn't necessarily random, you sometimes may use even O(n^2) algorithms that work much faster in practice than quicksort or other O(nlogn) ones. In general, your solutions should be built around your expected data. The linear time sorting algorithms I know off my head often require looking a bit more into the data and realizing they apply.

    69. Re:older developers... by NotQuiteInsane · · Score: 1

      I've noticed this too... One of my relatives did a comp-sci B.Sc. in the early 1990s, and most of the modules on that course were development-type subjects that were essentially "practical" modules. Skills you'd use in the real world -- a few language modules (Pascal, C/C++), a computer architectures module, and some maths type stuff ("mathematics for computing science").

      In contrast, the 4-year B.Sc. course I'm doing is roughly 60%-70% hard theory -- Formal Aspects and Evaluation, Lambda Calculus, Denotational Semantics, Functional Programming, with a bit of Project Management thrown in for good measure. The Formal Aspects stuff is part of a single module, and well into the realms of "headache inducing" and "can't see any real-world use for this".

      Given the choice, I'd have sooner gone for more practical modules -- things like lambda calculus and functional programming languages may look nice on paper, and might be some academic's pet project, but I honestly can't see a use for them in a real world application...

      In actual fact, an embedded systems module would have been REALLY cool. Give a room full of students a ready-made 68000 board (or a software emulator), then get them to make that board do something interesting. Nothing beats the fun of bringing up a newly-designed CPU board completely from cold :)

    70. Re:older developers... by Anonymous Coward · · Score: 0

      And the educators own shares in Microsoft and HP, and get wined and dined at trade shows. It is much harder to corrupt a school administrator with Linux; They can't buy shares.

    71. Re:older developers... by wisty · · Score: 1

      >>In short, they design their systems like a conceptual mathematics student or a computer science type might: no
      >>forethought into the future, at all. They're not capable of a true "engineering" task, because everything they touch is of >>the "it works perfectly, just don't touch it" variety.

      It's called a lack of experience.

    72. Re:older developers... by dbIII · · Score: 1

      Rightfully so, but we've seen it drive away brilliant maintainers and contributors in the past decade.

      Who exactly?
      OK, so we've seen a medical doctor mostly putting together a few patches from others in his limited spare time who doesn't even run linux apart from testing patches and a homicidal madman with an unfinished file system that had no way to recover from errors (disks have hardware problems no matter how perfect a file system is).
      Did I miss anyone?

    73. Re:older developers... by Anonymous Coward · · Score: 0

      A binary sort huh?

    74. Re:older developers... by Alex+Belits · · Score: 1

      stable ABI

      Not this shit again.

      (also GIMP does not support CMYK, you will be forced to publish your sources if you write anything for Linux, and Jews did WTC).

      --
      Contrary to the popular belief, there indeed is no God.
    75. Re:older developers... by Lord+Ender · · Score: 1

      The bigger problem appears that CS programs now focus on teaching tools and how to Google as opposed to thinking or problem solving, in order to meet perceived industry demand.

      What? Schools teach "googling?" Bullshit. They very much teach datastructures in school these days.

      If you have to teach your new hires the basics, you suck at recruiting. Period. Quit hiring trade-school graduates and barely-passing cheaters for $50k/year. Offer real salaries to hire talented graduates from real universities.

      There sure as hell wasn't a focus on "googling" at my university. It was math and algorithm analysis... probably too much of it. It was also assembly/machine language, computer architecture, and digital circuits. What they don't teach CS grads is "how to recruit talent." This is the class YOU need.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    76. Re:older developers... by Anonymous Coward · · Score: 0

      "OSS drivers are great, need to be done, but we should not make people wait the year it takes for someone to do them."

      You do know OSS is a (series of) distribution license, don't you? Hardware vendors could produce OSS drivers *now* at the same cost they produce closed source drivers, you do know that, don't you?

      ABI stability is *only* good for those that don't want to produce OSS drivers. No wonder those producing and liking OSS software don't give a damn about them.

    77. Re:older developers... by MBGMorden · · Score: 3, Interesting

      I don't see this happening really. Students do assignments because they're told to. They somewhat EXPECT that the code they're writing is just to learn material. Even C++'s STL provides a pretty decent amount of data structures built in. We just implemented them for academic purposes (with our instructor flat out telling us "When you get out of this class - just use the built in structures afterwards. They're very finely tuned and it's HIGHLY unlikely that your homemade versions will outperform the provided ones."). And it worked. I wrote my crappy hash table, linked list, binary tree, b-tree, and other classes in C++ for my assignment that will never get used, but it taught me how the things work, so that now even though I can just use Microsoft's built in version provided with .NET and it's great, I still can recognize when and how I need to use the structure itself.

      FWIW, I started in Fall 1999. We did Java for our introductory classes (101, 102, 201, 202), with a required intro to C in the second year. Most of the stuff in year 3 and 4 transitioned to C++ instead, though towards the end some of our classes literally became language agnostic. As long as we could write a Makefile to build it on the departmental Solaris machines and compiled to the executable name that he asked for, he didn't care. Final project in that class was to write a LISP interpreter, which I found particularly enlightening. Nothing to teach you the ins and outs of a language like having to parse and execute the code yourself.

      I know they're still doing the C/C++ towards the end, but I'm not sure if they're still teaching Java for the intro stuff.

      --
      "People who think they know everything are very annoying to those of us who do."-Mark Twain
    78. Re:older developers... by Anonymous Coward · · Score: 0

      Windows development, people... Please, grow up, let go of the old, dead ways. *nix? LOL

    79. Re:older developers... by Daengbo · · Score: 1

      They don't have any reason to learn how a computer actually works (or what a computer is), if they're just put in front of a computer that can load a game into the OS with a double-click. No reason to actually learn anything if that "just works".

      This was a huge deal for me when I was working with teens in Korea. Just about every male's hobby was "computers." My heart would lift until they said that they just liked to play Starcraft. Every. F'ing. Time.

      On my old Model I, I got a magazine every month with a couple of games in it. Printouts! I had to type them in and debug the inevitable typos to get the games to work. After a few months of data entry plus debugging, it was natural to start programming. Slightly different experience.

    80. Re:older developers... by tsm_sf · · Score: 4, Insightful

      GIMP does not support CMYK. A play in one act.


      Man 1: But GIMP does support CMYK.

      Man 2: Not well enough for my needs.

      Man 1: You don't really need that level of support.

      Man 2 [to himself]: wtf?

      Curtain.

      --
      Literalism isn't a form of humor, it's you being irritating.
    81. Re:older developers... by hotfireball · · Score: 1

      But this experience needs to be transferred to the younger generation, not to the cemetery...

    82. Re:older developers... by Anonymous Coward · · Score: 0

      If you write code the way you write English, I'm surprised anyone can understand anything you write.

    83. Re:older developers... by Anonymous Coward · · Score: 0

      Radix sort can be O(n).

    84. Re:older developers... by Anonymous Coward · · Score: 0

      I am curious to see what is going to happen when all these developers are going to be too old and too tired to contribute... Who is going to write the stuff we get for free today? Somebody who has never coded in C can't write Linux and we still be needing people to improve operating systems, compilers, etc. And, no, you can't take a Ruby programmer, pay her and ask her to contribute to an OS. It something that requires time and motivation. I think it's a serious problem. I bet big companies know this and teach their stuff the very low level stuff we skip in the universities today.

    85. Re:older developers... by bluelip · · Score: 1

      It's not a new problem. I graduated from HS in 1995. While in my 3rd year of schooling after that, (Yup, I'm looking at you Rutgers) I was the wizard of IT because I actually had the cover off my computer. Fellow students were in awe to see an actual hard drive.

      How can you be in the 3rd year of a university CS program and not ever see the inside of a PC??

      Yes, I left. Quickly. Just as I hold in high esteem those who are self taught, thankfully, so do some employers.

      Drop the OO BS. If you can do low level programming you can do anything. How can anyone graduate without knowing about endian-ess, int vs long, interrupts, data structures, etc.

      My HS CS teacher made us know the clock cycles of each instruction. OO killed CS.

      Disclaimer: I'm a grumpy old curmudgeon.

      --

      Yep, I never spell check.
      More incorrect spellings can be found he
    86. Re:older developers... by CAIMLAS · · Score: 1

      Lack of experience? Or a lack of give-a-damn or understanding? I've seen 30+ year old "computer engineers" with a decade of experience as system administrators pull this nonsense. They've got experience, they've just got the wrong mindset.

      They're like the bad mechanic who replaces parts until finding the problem, or until the problem stops manifesting itself - regardless of whether the problem has actually been fixed.

      --
      ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
    87. Re:older developers... by Anonymous Coward · · Score: 0

      In short, the work is good, btu the conceptual understanding of what's necessary over time is not. They've got too much theory floating around in their head and, while they can grasp technologies well enough, proper design isn't a concern if the "theory" is fun enough.

      Perhaps you just don't understand the theory.

      What is the point of using the "factory" pattern in a language with "map"? There isn't one. You sacrifice clarity -- keeping like things together, so that maintenance becomes trivial -- and gain nothing but a bunch of tiny, unmaintainable classes. What's the point of having a half dozen variants of "the functor pattern" in a language that has map? There isn't one. A functor is a functor is a functor. If you need a functor, use one, at the right level of abstraction.

      Design is about creating minimal normal forms for the data and algorithms you are trying to encode, using sane normal forms as a starting point. Anything else -- anything extra -- is just cruft to remove with extreme prejudice. I include object orientation for values which are not "object like", or can at least be encoded more efficiently using a simpler normal form. The best example of this phenomenon (and probably the most damaging economically) is the "Object-relational impedance mismatch". Using the wrong computational normal form to model the theory of relations leads to lots of wasted time, as people implement the same sorts of flimsy, brittle work-around "solutions" again and again. But people love their objects, and call people who dare question poor, industry standard, design choices "lazy"...

      What is more maintainable: A list of hashes? A list of values from the same algebraic data type? Or a directory full of classes, each of which is instantiated once, and placed in a list, in yet another (the "runner") source file?

    88. Re:older developers... by Greyfox · · Score: 1
      I had the same trouble in the last position I was interviewing candidates for. Most of them couldn't even tell you the most basic attributes of any data structure I asked them about, much less describe the implementation of one. Actually a lot of the candidates I interviewed couldn't even answer questions about things on their resumes. And asking them to design a function to perform even the simplest of tasks was like watching a train wreck in slow motion.

      On the flip side of that coin, you really don't see a lot of positions anymore for down-on-the-iron C programming either, which was always what I enjoyed doing. It's really not that often that anyone needs a device driver written or a multi-threaded system program that won't deadlock. And if that sort of thing is needed, it's usually outsourced to some country in Eastern Europe where a guy with a Master's and 10 years of experience is happy to get a grand a month.

      --

      I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    89. Re:older developers... by Mongoose+Disciple · · Score: 2

      There's nothing unsafe about pointer arithmetic, unless you do things in a lazy way and don't think things through. As long as you design your objects ahead of time, and make sure to cover all of your edge cases, you'll be fine.

      Not to be cynical, but my real-world experience is that the case in which the developer isn't lazy, is knowledgeable enough, and thinks everything through is itself an edge case.

    90. Re:older developers... by Anonymous Coward · · Score: 0

      So true. I'm one of the guys that grew up on C=64 and Amiga (TASM on C=64, TRASH'M-One/AsmOne on Amiga).

      While helping a CS student struggling with some Perl, I happened to mention that the extremely complex object-oriented code could be solved in three lines in AWK. He winced at me:

      "AWK? What is that???"

      Me: Aho, Weinberger, Kernighan! It's a programming language by those three guys! Don't you know who they are?!?

      Him: no...

      Me: they're the equivalent of Nobel prize winners in CS!

      I'm basically an endangered species, a dinosaur waiting to go extinct or be put out of my misery, whichever comes first.

    91. Re:older developers... by shriphani · · Score: 1

      In radix sort you are allowed to do more than just compare a pair of numbers. When comparing two numbers is the only fundamental operation allowed, you cannot sort a set of numbers in less than nlogn time.

    92. Re:older developers... by feepness · · Score: 4, Funny

      3. Here's real-world problem XXX, sketch out a solution and describe the algorithms+data structures involved.

      You definitely need a hardcore programmer to solve XXX problems.

    93. Re:older developers... by Vasheron · · Score: 1

      Sorry, a lot of us end up going to graduate school. See you in two years =)

    94. Re:older developers... by Waccoon · · Score: 0

      A data structures class shouldn't only tell you how to create a linked list, or a binary search tree, or a hashtable. It should also teach why why and when.

      Since when does any school teach you about application and implementation on any subject?

      Take a typical history class, for example. Plenty of names and dates are thrown around, but little information as to why things happened. My college history classes weren't any better than those I took in high school.

    95. Re:older developers... by poopdeville · · Score: 1

      That sounds like a good program. It is unfortunate that you don't appreciate what you are getting. You need to get into the mindset that programs are proofs -- and you can prove things much more easily using a constructive first order logic than you can with pebbles and buckets and instructions for moving pebbles around -- the sort of procedural programming you seem to have nostalgia for. Those days are long dead. Even Intel's engineers don't understand how their processors work, except at a high level. Electrons flow through transistors, which implement a micro-code machine which emulates the x86 architecture, which is queried by the BIOS and kernel, which supports your applications.

      --
      After all, I am strangely colored.
    96. Re:older developers... by HermMunster · · Score: 1

      The article is a total strawman. Nothing different could be said about closed source. Is this Microsoft funding FUD? If not, the whole gist is vacuous.

      --
      You can lead a man with reason but you can't make him think.
    97. Re:older developers... by Anonymous Coward · · Score: 0

      You didn't study CS at all did you. Software beats the crap out of hardware in terms of speed. A crappily implemented program on a computer 100000 times as fast as what I have now Corei7-920, will be slower than well implemented version of the same program on a '286. O(n) is slower than Olog(n). They cover this in the first year. Hardware improvements are very nice. Software improvements are critical.

    98. Re:older developers... by Anonymous Coward · · Score: 0

      It sounds great until you get someone who always tries to reinvent their data structures and libraries, rather than seeking out well known solutions. Of course, you want to test abilities, but in hiring I've found that having them code a solution for a less abstract gets better results.

    99. Re:older developers... by Goalie_Ca · · Score: 2, Insightful

      many college profs never had real jobs and so they wouldn't know what one looked like.

      --

      ----
      Go canucks, habs, and sens!
    100. Re:older developers... by Blakey+Rat · · Score: 1

      Yes, I get you, but you're still better off making the entire solution functional before spending even one nanosecond on optimization. I'm sure everybody can agree with that.

      And the Alan Cox OS team wouldn't be doing that, which is exactly the problem.

    101. Re:older developers... by simoncpu+was+here · · Score: 0

      How brave of you to post your domain name at Slashdot! Good luck keeping your web and e-mail servers alive. :)

    102. Re:older developers... by mr_stinky_britches · · Score: 1

      Super insightful. Thank you.

      --
      Censorship is obscene. Patriotism is bigotry. Faith is a vice. Slashdot 2.0 sucks.
    103. Re:older developers... by bm_luethke · · Score: 1

      I guess I have to look at the sheer number of fart noise, fireplace animations, and other such apps in the 100k+ to see that simple "development" of an application isn't a plus. I would rather have 100 useful applications than 200k fart noises.

      The Linux Kernel is fine - as it matures from input from *real* kernel devs (ones that have made Kernels that have 5+ 9's uptime that *also* include performance) chances are the fart application people are going to be left behind in their ability. Frankly if many 2-4 year college students are regular contributors I would find that MUCH more troubling than most being 20+ year veterans of the field. I'm not a kernel dev - at best I can poke here and there - frankly I would be dismayed if I can do much more than the little I do to optimize for a specific field and what I do is so specific as to not be relevant to the global kernel tree.

      I'm more than happy that IBM and other similar corporations have given their time to make the kernel something that it actually takes talent, knowledge, and experience to improve upon instead of a first or second semester OS student being able to find holes to fix.

      --
      ------- Sorry about the spelling, I suffer from two problems. Dyslexia makes it difficult to spell well, lazy makes it
    104. Re:older developers... by Trinn · · Score: 1

      So...question...if you do, is there a place I could submit a resume or perhaps more importantly answer some interview questions or something? I'm a self-taught individual (no degree unfortunately), been doing this since I was 8 or 10 and was playing around with like apple II's and an old Trs-80 CoCo-2 (I'm 27 now), still remember compiling my first slackware kernel quite well (I think that was just before the version jump). I'm more known recently as the Quinn Storm of the Beryl project, though I'd *love* to get back into writing lower level stuff, might have to dust off some of my skills related to advanced data structures (b-trees and the like) but I really could use a job where I feel like I'm actually thinking instead of just tossing something together in PyGTK or whatever.

      Re: your questions there, the only thing I *feel like* I might have trouble with is the specific O() of the hash table operations, but I could sit and think for a few seconds on that...all the operations actually seem like they'd be roughly O(1) save for collisions, where its O(n) where n is the number of values in the cell, though that could likely be further reduced by just having a continuing hash function of some sort that lets you store in sub-cells based on its return (i.e. each allocated cell of the hashtable is also a hashtable). My O() isn't as good as it could be, but again just out of practice.

      For the binary sort, I hadn't heard of that sort, so I glanced over and looked it up, very interesting (I have to look up quicksort too usually when I'm looking to use it, but I do know of it and understand it, I just store part of my working knowledge in secondary, offline storage) Tempted to pull out like 68k assembly and implement it though just for kicks, but it'd take me slightly longer than I want to spend on a slashdot comment (implementing a binary tree, doing in-order depth-first traversal to dump it out to a sorted array)

    105. Re:older developers... by Anonymous Coward · · Score: 0

      A Binary Sort? I hope you meant "binary search" or some real kind of sort. Binary search is a bit of a pain to take from basic concept to bugless implementation. I mean I could do it, no problem, but i might take me 5 minutes or so to ensure I've covered the edge cases properly. If I did it more often I would memorize the exact pattern that avoids edge-case bugs, but lets face it, when I really need to implement one in practice, I can base it on an existing implementation, and know I have the edge cases right.

      Now the first question is quite reasonable, as is the third assuming the real life cases were within reason.

    106. Re:older developers... by poopdeville · · Score: 1

      My HS CS teacher made us know the clock cycles of each instruction. OO killed CS.

      C killed computer science. Before that, machines were built to interpret LISP, in hardware. Computer languages are constructive first order logics. Using C amounts to turning a computer into a machine that keeps track of buckets and the number of pebbles each bucket contains, and using the bucket/pebble system to write proofs.

      --
      After all, I am strangely colored.
    107. Re:older developers... by Magic5Ball · · Score: 1

      Schools teach many skills which aren't explicitly on any syllabi or assignment, not the least of which are copy and paste, and ethanol appreciation. I'm sure a plurality of universities produce high quality CS graduates, but most of the A and A- graduates from the five major universities within 200 miles in the last decade or so did not appear to be of that variety. There were a few gems, to be sure, but they had unremarkable academic careers.

      I've mostly retired from IT in the last two years, but the recent graduates I run into at the usual industry groups and events still complain about being forced to choose in fourth year one of: their first experience with LDAP, their first experience with SQL, "system administration", how to write malware, or history of computing. They admit that the majority of their cohort have graduated without any substantial exposure to some major concepts and basic tools of the trade.

      I'd be glad to introduce any good resources you may know of with respect to "how to recruit talent" to the local and regional industry groups since everyone from 10-person consultancies up to the local branches of the big three letter global services companies are all hurting for skilled grads.

      --
      There are 1.1... kinds of people.
    108. Re:older developers... by log0n · · Score: 1

      Not really. Giving things away for free only works if there's a solid foundation to build upon or enables you to accomplish with. We all love to hate MS, but the truth is their software works and (starting with the NT4/Win2k days - which coincides with the MS Software Alliance Initiative) works reliably. OS/2 Warp 4 was given away on college campuses but never caught on because it really didn't do anything useful. I still have my orange and white boxed copy simply for nostalgia's sake. The same argument can be made with Linux for most average desktop users.

      I really think is has much more to do with hardware capability now vs. what we used to have to work with. Remember mode 13h? Remember having to deal with Dos4GW and protected mode? The old ways of having to exploit the hardware - because it was the limiting factor - just don't exist now. Back in the day, the hardware couldn't keep up with programmers, so everything had to be exploited and hacked and worked around - all of which required very low level hardware knowledge.

      We're in a world now where technology has pulled a complete 180. Hardware now enables programmers to do anything they want - ultimately making the limiting factor now the programmer. High level languages allow more to be done faster and with more focus.

    109. Re:older developers... by FreakAlienJobEater · · Score: 1

      Maybe it's because there are basically ZERO jobs in most places for real hard-core CS. What few jobs DO exist require the ability to produce actual usable products...applications programming, especially web where the ability to hand-code a balanced search tree won't help at all. Ask a Flash "developer" about registers and instructions on the stack.

      My college changed the first 3 CS classes to Python instead of C++ because it's easier. Then when they get to Data Structures, they've gotta learn C++ for the first time, at the same time.

      Now queue the arguments about the logic skills that HR doesn't care about. Colleges all over the nation (and other nations I'm sure) already crank out degrees no job market asked for....I'm not sure I can blame the CS depts for trying to stay relevant.

      OMG I have tons of jobs **in my company alone** for hardcore folks, all at 100k+ and HR would find nobody. I recently hired one person after 4 months searching in Chicago & NY. The phrase "knowledge of C library/glibc" would promptly disqualify most.

    110. Re:older developers... by Anonymous Coward · · Score: 0

      And it would be called: Cox OS? People who use it could then say, "I like Cox.."

    111. Re:older developers... by Anonymous Coward · · Score: 0

      your comment is right on! you should be typing in capitals. Thank you.

    112. Re:older developers... by Yvanhoe · · Score: 1

      Agreed. I think it has the same appeal as it used to have, there are simply more people trying to get there and the most competent developers are older.

      --
      The Wise adapts himself to the world. The Fool adapts the world to himself. Therefore, all progress depends on the Fool.
    113. Re:older developers... by Lord+Bitman · · Score: 1

      And I'd say that the focus on higher-level languages is a good thing. They're 3rd and 4th generation for a reason: they've been building on the work of those before them.

      Yes, there will always be a place for the low-level interactions. And yes, data structures are important to know if you want to get into some of the fancier stuff later in your career.

      But have you ever actually seem a recent college grad? If you teach someone with zero practical experience a bunch of data structures and low-level languages, what you get is someone who can't code anything worth reviewing for two years, until they learn not to code a bunch of data structures, and that in the thirty years between when the language their college taught them was invented and now, hundreds of other "ALGOL-like" languages have been invented, many with extensive libraries, some of which are good, and one or two of which we actually use. The one does not require an entry-level programmer to know anything about data-structures, even if it might require our senior programmer to know a lot about them.

      --
      -- 'The' Lord and Master Bitman On High, Master Of All
    114. Re:older developers... by Runaway1956 · · Score: 1

      Uhhh, you did note that I said 80%+ ??

      Yes, of course there are schools out there that teach real computer science. UMass at Amherst sounds like a helluva good school, if they are ensuring that you are competent on all three major platforms. But, for every school like yours, there are at least 4 others that teach MS-centric "computer science". My eldest son attended one such college. Everything he did was on a Windows machine, and he is far less competent with the command line than his younger brother who is graduating high school next month. Put big brother on a *nix box, and he's pretty much lost. Yeah, he can find the Firefox icon, and other such simple stuff, but he doesn't understand the file system, or much of anything else.

      Be proud that you're getting a better education than my son.

      --
      "Windows is like the faint smell of piss in a subway: it's there, and there's nothing you can do about it." - Charlie Br
    115. Re:older developers... by Anonymous Coward · · Score: 0

      Corollary: The case in which the developer isn't working to unreasonable deadlines, or having to work mandatory overtime while on salary, can be the exception in certain companies. Those environments don't tend to encourage dedication, due care or due attention.

    116. Re:older developers... by NuShrike · · Score: 1

      So going along with this, the majority of young folks growing up are playing with their PS3s, DS Lites, Wiis, Facebook, Twitter, iPhones, WoW, and pretty much living off the fruits of our original works.

      Look at the transition from hardcore programmer friendly phones PalmOS/WindowsCE to more dumb-consumer type phones (Windows Phone 7 Series, aka Wimpy7s), or even the iPhone. Even though Android, iPhone, and webOS do have SDKs to develop on the phones, there's a high learning curve, so people spend more time just running apps and playing with their phones instead of tinkering and rebuilding their ubiquitous mobile devices.

      I've personally rewritten the backlight code for every HTC phone I've owned which included a light-sensor even when there's no SDK for it (damn you HTC), and helped out on a few other driver projects, but I grew up in the Apple IIGS generation where this was normal. The rest of my younger peers are satisfied with code that gets by.

      When I point out how their code is a few instructions slower than necessary, or how a different code construct is more memory/cpu efficient I get laughed off. This is why multi-core, multi-GHz cpus apps are no faster than years before. The .NET generation is probably the worst offender where people are so isolated from the hardware, they have no idea why their code ends up being such poor quality. Browsing sites like wmpoweruser.com, it's amazing to see how many younger people are against native code these days, and think .NET produces quality apps.

      This is the kind of generation that could care less about Linux and OpenSource hacking.

    117. Re:older developers... by bonch · · Score: 1

      Blaming it on the Microsoft monopoly is ridiculous. The fact is, Linux used to be edgy and cool, but when the public realized it wasn't going to take the desktop from Windows, they moved onto the new edgy, cool thing that really is taking away from Windows--mobile computing and social networking. Young developers want to work on the iPhone, do interesting things with Goolge APIs, or develop Facebook apps. Why would they want to work on some monolithic server operating system written in C?

    118. Re:older developers... by TheTurtlesMoves · · Score: 1

      Two words.

      Buffer overflow.

      Safe pointer arithmetic isn't about *if* it can be coded correctly, but what happens when its not (aka huge number of security problems for starters). Why in 2010 should we be doing tedious, careful edge cases everywhere when its something a compiler/computer can do for you and do well.

      The java program i have written is faster than the C program it replaces. When someone use MS word or just windows in general, people don't go on about how slow C is. But if they think its written in Java...... For the record i develop in Java, C++, Scheme, etc and even a little assembly from time to time.

      --
      The Grey Goo disaster happened 3 billion years ago. This rock is covered in self replicating machines!
    119. Re:older developers... by qc_dk · · Score: 1, Insightful

      There's nothing unsafe about pointer arithmetic, unless you do things in a lazy way and don't think things through.

      There's nothing unsafe about juggling alligators on a tight-rope made of razor wire over a tub of acid, unless you do things in a lazy way and don't think things through.

    120. Re:older developers... by Anonymous Coward · · Score: 0

      AMEN! You are talking out of my heart

    121. Re:older developers... by Trinn · · Score: 1

      Didn't catch the mention that you meant binary search, okay that would be a quicker implement ;)

      As for the binary sort, there is such a thing, but essentially its like I said, insert into a binary tree then walk the tree, according to google at least (I admit I had to look)

    122. Re:older developers... by Anonymous Coward · · Score: 0

      Which company is this? Can I work from home?

    123. Re:older developers... by Philip_the_physicist · · Score: 1

      Apart from the counting sort which the SP mentioned, which is very handy if you have a dense range of discrete values, or an enumerated list of values, there are also radix and American flag sorts, which are both O(nm), where there are n values of length m, which are suitable for short data types (good for integers, terrible for strings, basically useless for anything with arbitrary length elements). In principle you can use them for floats, butt hey would lose their elegant simplicity and I really wouldn't like to try to debug an such an implementation.

    124. Re:older developers... by Hal_Porter · · Score: 1

      Well yeah, but it would still be cruel to teach it in University.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    125. Re:older developers... by Bodrius · · Score: 1

      Sure, not all pointer arithmetic is unsafe, but the safe operations you do need for data structures can be done in any high-level language. For the cases where you do need to be careful all the time and cover your edge cases, then by definition you're dealing with *unsafe* operations.

      That's fine, so are a lot of other very useful things we depend on for our daily lives (cars, electricity, carpentry tools, etc), and I'd agree learning how to deal with system-level languages is similarly important and useful.

      But it *still* has little to do with teaching and learning data structures - and frankly I have yet to hear of a good reason to force such a mix, other than blind tradition or silly 'my language is better than your language' arguments.

      Perhaps we have different worries about crappy performance on modern machines: my own Core2 also feels slower than it should be, and crappy native code seems to accomplish that just fine by itself - so I'm more likely to blame the guys who can't do heaps and B-trees than the guys who choose not to do pointer arithmetic.

      --
      Freedom is the freedom to say 2+2=4, everything else follows...
    126. Re:older developers... by Bodrius · · Score: 1

      What's more is that if there is ever a time when you shouldn't be relying on your language to keep you save, it's in a data structures class.

      Could you please elaborate on this point?

      This is pretty much what I was asking about in my first reply, but I haven't seen it answered yet.

      --
      Freedom is the freedom to say 2+2=4, everything else follows...
    127. Re:older developers... by Anonymous Coward · · Score: 0

      Why would you explicitly mention "bug-free", isn't trying to write correct code kind of expected? I mean, they won't be writing faulty code just for the fun of it, or introducing subtle mistakes to test your competence.

    128. Re:older developers... by magloca · · Score: 2, Funny

      There's nothing unsafe about juggling with chainsaws, unless you do things in a lazy way and don't think things through. As long as you train properly, and make sure to cover all of your safety aspects, you'll be fine.

      I'm not railing on you. I'm just saying that some things, no matter how useful*, are not for everyone.

      * The usefulness of juggling with chainsaws can be debated. This is not career advice.

    129. Re:older developers... by nstlgc · · Score: 1

      Separately, I have a dream where all of the Alans Cox get together to write an operating system.
      Suddenly, Cox everywhere!

      --
      I'm Rocco. I'm the +5 Funny man.
    130. Re:older developers... by rufty_tufty · · Score: 1

      "Maybe it's because there are basically ZERO jobs in most places for real hard-core CS"
      I'm sure that most doctors don't use the theory of cell metabolism on a regular basis, but I'm fairly sure you have to understand the basics to work with the higher level concepts.
      Judging by the CS graduates I have worked with there are 2 types, those that understand what a microprocessor is, how it accesses memory and then how to build useful data structures on top of this and create efficient code. Then they can go on and use higher level languages and churn out code. The other type only know the higher level code side of things and while they often code faster, productivity is lower because they don't understand the system, they hack and bodge and design for their part of the system only.
      A gross generalization granted, but what we see is that someone who understands the theory behind the languages can soon code in any language you choose and can be put to any task you choose. Someone who understands only the languages is going to be useful for certain jobs, but only those jobs.

      The idea that you must turn up for a job as a graduate fluent in the tools the company already uses is a misnomer and the only place I have seen that attitude is from educational institutions not at any company I have worked at. The attitude I normally see is you employ a graduate to mold them to be what you as a company want, if they've been primed in a specific language and that only, then they are much less desirable - like the old statement that learning basic breaks a programmer, i would say that learning only languages like c# and python breaks a programmer.

      "My college changed the first 3 CS classes to Python instead of C++ because it's easier. "
      Why would you want to study an easier subject? Don't you want to demonstrate to employers that you are capable of more complex difficult things? What do you do if your first job is at a company that programs in C++? If as you say python is easier then you'd be better prepared by having studied C++ then migrating to python at the company rather then the other way around.

      --
      "The weirdest thing about a mind, is that every answer that you find, is the basis of a brand new cliche" -
    131. Re:older developers... by Anonymous Coward · · Score: 0

      This is similar to something I say a lot at work when people fret about so-called "unsafe" code: "Wrong code is wrong.".

      I've been asked to make a piece of code less portable, less neat, less maintainable because an interested party worried out loud "But that isn't safe if someone were to do X". "Yes," I reply, "if you change right code to wrong code, it will become wrong.". Anyone who has written more than a "Hello World" program knows that bad code can be written in any language. Automatically labelling pointer arithmetic "unsafe" does nothing to address the underlying issue that bad pointer arithmetic is unsafe in much the same way that *any* bad code is undesirable (for a litany of reasons).

    132. Re:older developers... by Anonymous Coward · · Score: 0

      And the biggest problem is that very few people grow up with a C64 or an Amiga nowadays. They don't have any reason to learn how a computer actually works (or what a computer is), if they're just put in front of a computer that can load a game into the OS with a double-click. No reason to actually learn anything if that "just works".

      You're joking, right? On an Amiga you could just click an icon to start a game (or just boot with the game disk in the drive). And on the C64 you just type LOAD,"*",8,1. Neither required or motivated anyone to learn how the computer worked any more than the computers of today do.

    133. Re:older developers... by doogledog · · Score: 1

      Of course, that stopped with the A500+

      But you had ARexx still... and that was all kinds of awesome fun.

      For someone, somewhere.

      Possibly.

      Oh and I'm pretty sure AMOS was just a computer game that looked like a programming environment :-)

    134. Re:older developers... by Anonymous Coward · · Score: 0

      And the Alan Cox OS team wouldn't be doing that

      Is that so? I'd say you're being borderline insulting.

    135. Re:older developers... by agentultra · · Score: 1

      I could waste my time asking candidates I interview questions about hash tables, linked lists, and bubble sort; but I'd be wasting my time. They're perfectly capable for the job and don't need to know it. 100% of their work will be serializing and deserializing data between libraries. As long as they have a basic level of competency they'll probably get the job.

      Why?

      When was the last time you built a website and needed to implement your own binary search algorithm or write your own laplacian matrix structure?

      I wouldn't expect a PhD bio-chem professor to be applying for an entry level job in a GPs office. So why would I expect that degree of expertise from someone who's job is mostly going to be fetching rows out of a database and rendering them in HTML or *gasp* JSON? The hardest part of their job will be optimizing the persistence layer as the project grows. Even that isn't too hard.

      The reason why colleges are pumping out generic programmers and fast-tracking them past studies of algorithms and data structures is because for the jobs they're applying for they won't need it. If they want to be writing operating systems, phsyics engines, object recognition systems, search engines and the like -- yeah, they'll be going to university and work on a masters (or if you're like me, you'll buy lots of books and waste away your free time noodling through it on your own).

      If the work you do really truly needs candidates to understand complicated algorithms and educated, well-thought out use of efficient data structures — congratulations you're in the minority.

    136. Re:older developers... by Sabalon · · Score: 1

      And I learned in Pascal and Modula-2. The main thing (as the parent mentioned) is not to learn Java, Modula-2, C or whatever, but to learn the underlying concepts. Linked lists, sorts, function calls, reusability and so on. They can be moved from one language to another. Depends on if they teach you how to program and here's the syntax for that in Java, or if they teach go to my web page, click on my applet and see how my sort sorted.

      Crap shoot on any course - my networking course had nothing to do with anything practical. It was taught by a PhD physicist and covered how fast electrons moved etc... More suitable for a EE.

    137. Re:older developers... by like_pilate · · Score: 1

      I agree with this sentiment. I graduated with a CS degree from a major UK university almost two years ago, and I find myself technically ignorant. I did well in classes covering data structures, programming paradigms, logic, and so forth, but ask me about spinlock or whatever and you'll be lucky to get a blank stare. I find myself moving away from programming/technical work as I've started working. I'm not very good at self-teaching so working through something like 'The C Programming Language' to try to understand low-level concepts is frustrating, and looking for help just seems to solicite responses of 'don't bother if you don't understand'. Companies these days put emphasis on experience on most roles, when what I really want - in a way - is guidance and apprenticeship. It's probably not going to happen, so I might as well stick with the Excel and Powerpoint work that's getting me a paycheque.

    138. Re:older developers... by shaitand · · Score: 1

      Tell it to the framework and generalized code wrangling masses.

      I don't want to advocate reinventing the wheel but sometimes it's best to spread the best guidelines for implementing a wheel rather than to try to make a single wheel solution fit every project.

    139. Re:older developers... by shaitand · · Score: 1

      "Yes, I get you, but you're still better off making the entire solution functional before spending even one nanosecond on optimization."

      I don't. Macro optimization should happen at the drawing board. Micro optimization should happen automatically by never implementing anything but efficient code as a routine.

      Only fine tuning optimization and tweaking should come at the end.*

      *Note: You might have noticed that I include optimization in EVERY part of the development process. I also fail to see how you can claim efficiently is not part of function.

    140. Re:older developers... by Alex+Belits · · Score: 1

      The only people who "need" CMYK support in a way that is not already available in GIMP, are Windows astroturfers.

      In reality CMYK never appears in the picture until the last moment when image is converted into internal format used to control actual pigment distribution in the print house. GIMP does that just fine if someone really want to do it by himself, however I have never in my life heard a print house technician talking about GIMP (or Photoshop). Yet a lot of wannabes who heard about outdated print workflows, are quick to invent new and exciting uses for CMYK, Pantone, and imaginary problems associated with them -- all the while being unable to keep their own colors consistent on any device with any software.

      --
      Contrary to the popular belief, there indeed is no God.
    141. Re:older developers... by Sir_Lewk · · Score: 1

      Well, I feel I've elaborated on that with the next sentence:

      You shouldn't ever need your language to keep you safe if you are doing it correctly.

      Homework assignments for a data structures class are not massively complex production projects. If a student cannot safely implement a hashtable in an unsafe language, then they pretty obviously don't have a firm grasp on either the concept of how hashtables are supposed to work, or a firm grasp on the language being used.

      Really for something this simple, doing it safely in C is just a matter of staying in bounds, and not dereferencing null pointers. Both of those things can be done with practically no extra code at all. If a student is stepping off the end of a linked list, then his linked list implementation itself is fundamentally flawed. Those are issues you can have with safe languages if you are reimplementing data structures yourself anyways.

      And if the student does mess something up (everyone messes stuff up sometime), then so what! They can fix the bug, rebuild it, and try again. Unlike in the real world, doing this isn't prohibitively expensive.

      Why should a data structures class be the best time if any to use an unsafe language? Well, it a very important thing to know, even if you never use it, and it is a very safe place to learn it.

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    142. Re:older developers... by TheSpoom · · Score: 1

      I'm pretty sure Verizon will have no problems with that one.

      --
      It's better to vote for what you want and not get it than to vote for what you don't want and get it.
      - E. Debs
    143. Re:older developers... by DutchUncle · · Score: 1

      The bigger problem appears that CS programs now focus on teaching [abstractions] as opposed to thinking or problem solving, in order to meet perceived industry demand. In industry, I've had to teach too many youngling graduates about basic ... concepts...

      I agree completely, while chuckling about how we sound just like the elders we scoffed at when WE came out of school. :-)

    144. Re:older developers... by nurd68 · · Score: 1

      I took my 200's in 1999.. the last year they were taught in C.

    145. Re:older developers... by CorporateSuit · · Score: 1

      That sounds like my experience with setting up SFTP:

      Me: I want to create ftp accounts without creating them as user account for the console.

      L1nux_M4st3r: Why would you ever want to do that, anyway?

      Me: For the 9 out of 10 reasons I'd set up an FTP server.

      L1nux_M4st3r: You can't do that. I can't think of one reason!

      Me: That's it, I'm going back to windows.

      L1nux_M4st3r: We didn't want your kind anyway. Go kiss Bill Gates for me, Micro$loth boy!

      Indeed. The attitude and words "Why would you even want to do that?" are the most poisonous to the Linux community.

      --
      I am the richest astronaut ever to win the superbowl.
    146. Re:older developers... by twitterfire · · Score: 0

      Counting sort is just an example of an O(n) sorting algorithm.

    147. Re:older developers... by SanityInAnarchy · · Score: 1

      It seems somewhat silly to have students implement things that a language natively supports. You're likely to get many "why do I have to reimplement this if python already supports it" type complaints.

      That's a problem of motivation, something I'd expect any good class, period, to address. For example, our Data Structures course (in Java, yuck) had us implement an interpreter for a simple procedural language as a homework problem.

      It's also not necessarily more of a problem in one language than another. Any decent language is going to offer many of these things as libraries. So, for example, when we were asked to implement a Linked List, we were not allowed to use java.util.LinkedList.

      I did however read the comment I was replying to as "why should we need to learn things in Data Structures that python can already do". Perhaps I misread it.

      You did.

      Really though, a good class would be completely language agnostic. In my data structures class the professor demonstrated concepts with Pascal, but expected assignments to be completed using either C, C++, or python, at the student's discretion.

      Apparently, some of the higher-level classes allow that. Data Structures is our second course, immediately after an "Intro to Java and OOP" course. The concepts are (hopefully) language-agnostic, but the assignments are relatively large and tightly restricted and spec'd. Even with this restriction, it can take awhile for them to be graded.

      So I think it does make sense, especially this early on, to require a single language. I think Java is a terrible choice for that, but so it goes.

      --
      Don't thank God, thank a doctor!
    148. Re:older developers... by SanityInAnarchy · · Score: 1

      If a student cannot safely implement a hashtable in an unsafe language, then they pretty obviously don't have a firm grasp on either the concept of how hashtables are supposed to work, or a firm grasp on the language being used.

      I still don't see what this has to do with it -- if a student can safely implement a hashtable in a safe language, why would we expect them to fail in an unsafe language?

      All I see the unsafe language doing is making things unnecessarily difficult.

      Really for something this simple, doing it safely in C is just a matter of staying in bounds, and not dereferencing null pointers.

      That makes it even less relevant that it's in C and not some other language. Most languages will have that restriction. The difference is:

      And if the student does mess something up (everyone messes stuff up sometime), then so what!

      Well, if it's C, they'll get a segfault, with no useful information about why it's happening. Other languages will generally give a nice verbose backtrace -- useful when you're trying to learn what the hell is going on.

      Well, it a very important thing to know, even if you never use it...

      What, how to work in an unsafe language?

      it is a very safe place to learn it.

      If you say so. Also probably a safe place to lean assembly, but I wouldn't recommend that, either. Save both of those for, say, an OS design class.

      --
      Don't thank God, thank a doctor!
    149. Re:older developers... by SanityInAnarchy · · Score: 1

      There's nothing unsafe about pointer arithmetic, unless you do things in a lazy way and don't think things through.

      Or unless you do think things through, and make a mistake.

      And we all make mistakes.

      The question is, when (not if) you make a mistake, will you get a nice stacktrace and an instant crash? Or will you get a segfault, or worse, a security vulnerability?

      Pointer math is both more tedious and less safe than the alternatives. There are very few sane reasons to use it.

      I think a major problem with modern CS education is that students are taught that pointer math is "unsafe", and end up afraid to even try it.

      GOOD. That makes the world safer.

      Now, I agree that they should try it, and learn how it works, and then never use it themselves -- much as they should do with data structures. After learning to write a hash table once, pretty much every language I'm ever going to use, forever, is going to have it built-in.

      Maybe this is why so much software ends up getting written in java or c#, and my 3 GHz Core 2 doesn't feel any faster then the 2ghz Athlon I had 8 years ago...

      Unlikely, partly because Java can often be faster than C, especially when people in C want to manually malloc/free everything. Turns out garbage collection, or at least memory pooling, is much faster than malloc/free -- and in fact, garbage collection can often be faster than anything else we've tried.

      Leaving that aside for the moment, even if everyone went insane and used Ruby for everything, I doubt it would have nearly as much of a difference as the algorithms and data structures chosen. In other words, those who paid attention to their data structures and algorithms courses can write decently-fast code in any language -- if Ruby is a tenth the speed of Java, their Ruby script will run ten times slower. That's not good, but someone who didn't pay attention will manage to write Java code that runs n times slower than the smart person's Ruby script, where n is a very large number that gets larger as you try to do more things.

      Pointer arithmetic is about the last place I would look if I wanted serious performance improvements.

      --
      Don't thank God, thank a doctor!
    150. Re:older developers... by Lord+Ender · · Score: 1

      You recruit from schools with bad programs. Nobody forces you to do that.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    151. Re:older developers... by Ohio+Calvinist · · Score: 1

      You could make the argument that a programming student should be comfortable with the command line, but that is not always the case. Students whom have never used any *nix variant (except maybe OS X unknowingly) have to learn to navigate around a shell, learn the compiler arguments, the language all at once in a very small window in a 101 class.

      I teach introductory computer courses and find the vast differences in skill to be a significant challenge. There are some who need to start at "power button" even if the class has no formal pre-requisite and there are some I offer to take the final and if they get an A I'll let them go on to better things. A lot of students had a hard time installing the JDK on Windows, and using the java compiler from the command line. Computer science is a steep learning curve for the uninitiated and I think would benefit well from a pre-entry exam to ensure if you need start somewhere in the series of Computers 101, Basic Application Software 101 or Introduction to UNIX 101 before getting to programming so they don't get smashed the first few weeks and miss important foundational things.

      --
      Forgive my spelling from time to time. I'm often posting during short breaks.
    152. Re:older developers... by Anonymous Coward · · Score: 0

      Woot! I know what is a hash table, and I am not a CS but a Bio guy, so the concept of binary trees is much easier to grasp, even if i know that Python has a hash table built-in... Can I have the job?

    153. Re:older developers... by linuxpyro · · Score: 1

      I dislike the 'why would you want to do that attitude as well, but I've found this to kind of be a universal problem, not just Linux related.

      And I know this is a bit of a tangent, but what you probably want (ie, what the Linux guy probably should have told you about) is FTP over SSL. Something like ProFTPd can do this. It's just like a normal FTP server other than the encryption, you can set up virtual users and everything.

      --
      Saying "I'll probably get modded down for this" in a post is the best way to get it modded up.
    154. Re:older developers... by PastaLover · · Score: 1

      Binary sort:
      return a < b ? [a b] : [b a];

      What?

    155. Re:older developers... by Anonymous Coward · · Score: 0

      The other problem is that US companies will out-source to other countries; but if the person, lives in the US they better be willing to move to where "WE" are. This can not always be done by large portions of the talent population. With the internet making communication so easy. And guess what those inside the US speak the SAME language.

    156. Re:older developers... by Greyfox · · Score: 1
      I don't think I've been to an interview in the past decade that hasn't asked about some form of those data structures. So to answer your question in your "Show me the money" terms, they should be teaching their students enough about those things that they can answer basic questions about those structures if they expect those students to be able to get past the interview portion of getting a job in the field.

      Really, that's not going to be what kills you in the interview. It's a pretty good indicator, but what really kills you is when we get to the bit where I ask you to design a function to reverse a string or whatever simple function I decide to pull out of my bag of tricks today. That's the question that tells me if you're going to be able to gather requirements, understand and follow instructions and be able to communicate with the team. If all CS is these days is glorified vocational training, they should damn well teach you to handle that question better.

      One final word of advice for those folks going through the glorified vocational CS programs: I can get a web monkey for peanuts anywhere in the world. If you want to do this for a living and want to live on more than peanuts, you might want to consider bringing some additional value to the table.

      --

      I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    157. Re:older developers... by Alex+Belits · · Score: 1

      While you definitely can create accounts that will have FTP but not shell access, the only use for those I have ever seen was warez distribution.

      --
      Contrary to the popular belief, there indeed is no God.
    158. Re:older developers... by Alex+Belits · · Score: 1

      SFTP is FTP over SSL.

      --
      Contrary to the popular belief, there indeed is no God.
    159. Re:older developers... by rdnetto · · Score: 1

      I think a major problem with modern CS education is that students are taught that pointer math is "unsafe", and end up afraid to even try it. Maybe this is why so much software ends up getting written in java or c#, and my 3 GHz Core 2 doesn't feel any faster then the 2ghz Athlon I had 8 years ago...

      Any program is going to be slow if the programmer is an idiot, regardless of the language used. Written properly, C# (I'm not going argue that Java isn't bloated) can achieve near native speeds, and it does support pointers (it just doesn't use them most of the time). For example, pointers are generally required if you're working with images on the pixel level, since the 'safe' methods have way too much overhead associated with locking.
      What it really comes down to is that students aren't getting taught the fundamentals. Before if you didn't understand the basics you'd get a segfault - now you can actual stumble along because the more modern languages have runtime checks in place.

      --
      Most human behaviour can be explained in terms of identity.
    160. Re:older developers... by rdnetto · · Score: 1

      You don't need to look so far back. I'm young enough that my first system ran DOS+Win3.1, which is a little closer to the bare metal then Win 9x.
      I'd say the closest analogue to the C64 is the graphic calculator. In my area (Vic, Aus) all students need them for their math exams. Most, if not all, of them can be programmed in variants of BASIC. More importantly, said programs can be used in exams, which provides students with an incentive to write/use them. The manual for my TI-89 Titanium had a fairly comprehensive reference section in the back that explained all the constructs (loops, ifs, etc.), so I can easily see someone getting into programming like that.

      --
      Most human behaviour can be explained in terms of identity.
    161. Re:older developers... by linuxpyro · · Score: 1

      From Wikipedia:

      FTPS (also known as FTP Secure and FTP-SSL) is an extension to the commonly used File Transfer Protocol (FTP) that adds support for the Transport Layer Security (TLS) and the Secure Sockets Layer (SSL) cryptographic protocols.
      FTPS should not be confused with the SSH File Transfer Protocol (SFTP), an incompatible secure file transfer subsystem for the Secure Shell (SSH) protocol. It is also different from Secure FTP, the practice of tunneling FTP through an SSH connection.

      --
      Saying "I'll probably get modded down for this" in a post is the best way to get it modded up.
    162. Re:older developers... by Anonymous Coward · · Score: 0

      does not invite exploration of concepts embedded in the current software architecture, let alone ways to identify entry points into interesting sub-components.

      True, yet FOSS is not necessarily viewed by all its participants as a substitution to education, and is less to blame IMHO that the so called "CS" (does not deserve that name anymore if it's just about googling for API xyz...) programs you are denouncing just above.

      Of course it would be great for FOSS to be also that, but if i'm on to dreaming, i would indeed prefer for a coming back of real CS instead. (both would also be cool ;)

    163. Re:older developers... by linuxpyro · · Score: 1

      I've used FTPS and virtual accounts a lot for working on projects with other people who I wouldn't want to have a shell account. Good way to collaborate without giving people access to your box who would not otherwise need it.

      --
      Saying "I'll probably get modded down for this" in a post is the best way to get it modded up.
    164. Re:older developers... by Anonymous Coward · · Score: 0

      At least in my town It looks like the quality of developers is not the same as it was about 10 years ago.
      But I think, complexity also has grown - a lot more stuff to master.

    165. Re:older developers... by plasmacutter · · Score: 1

      Give me a place to mail a CV.

      My coursework included all the "hardcore CS" fare, and my program stressed teaching students the ability to "RTFM" and self-teach API's on their own.

      its been 1.5 years since i've graduated and the "walled fortress" feel to the whole field is beginning to irritate me.

      --
      VLC FOR MAC IS DYING! IF YOU DEVELOP, PLEASE SAVE IT!!
    166. Re:older developers... by Deosyne · · Score: 1

      You're absolutely correct that it has nothing to do with age, as we've had a couple of "industry vets" roll in who administrate like they are applying bandages in a war zone. I can usually tell when we get one of those when I refer to root cause analysis in support tasks or use-cases for architectural design and they smirk when like I'm just trying to impress them with an impromptu session of Buzzword Bingo. It's like paper cert thinking, that every issue has a single fix and once the fix is in place, everything is hunky-dory.

    167. Re:older developers... by Anonymous Coward · · Score: 0

      As a "21st century" BSCS grad, I have to make a few points...
      1. Not all CS programs are created equal. Mine was almost entirely theory: 5 data structures and algorithms courses, Theory of computation (Turing machines, push-down autonoma, regular grammars etc) Discrete Math, etc. This was combined with the essentials of OSes, Networking, and software engineering requirements/design principles.
      2. I'll agree that the problem in hiring, which in turn results in improper CS curricula, is the focus on skills rather than talent. I haven't encountered a single HR rep that knows the difference, but qualifications for a real software engineer are (in this order): Talent, Education, Professionalism, Experience, and Skills (stolen from http://brucefwebster.com/2008/01/10/the-wetware-crisis-tepes/).
      3. While a good CS grad / real software engineer should certainly be familiar with a hash table (just another data structure) and various sorting algorithms, I fail to see the value in asking questions 1 & 2 above. If they can look it up on Wikipedia in 5 seconds, how is that a measure of talent? Question #3 above is more like it; To me, talent is the ability to learn and can be measured by looking at a candidate's abilities to conceptualize new structures/algorithms and identify inefficiencies in existing ones.
      4. The obsession with certain design artifacts (pointers in C, particulars of a given file system, in-depth knowledge of this or that library) by older programmers has to stop. Those artifacts were the result of applying the theory (see item #1) to your generation's computational problems; not ours. If they were applied more effectively, our generation wouldn't have to reinvent the wheel / re-solve these same problems. Since when was abstraction and modularity a bad thing? Sure, CS grads need a computer architecture class that starts with transistors and gates and registers, and ends with some memory management concepts (to be continued in an OS class), but if someone can write out a simple program in 8086 assembly, a firm grasp of how pointers work is a mute point until one has to actively use them.

    168. Re:older developers... by tsm_sf · · Score: 1

      Thanks, Alex, but auditions will be held later.

      --
      Literalism isn't a form of humor, it's you being irritating.
    169. Re:older developers... by LeotheQuick · · Score: 1

      Sounds like you are in the market for computer science professors, not employees. Who in the real world ever needs to write a binary search? And even if I could do it in a snap 5 years ago, who says my value as a programmer has decreased because it takes me more time, or a glance at a book? The human brain is not a computer hard drive, you can't expect people to retain this type of information to be recalled at a moment's notice. What you will get if you ask these questions is nothing more than the guy who took it most recently, or the guy who recently refreshed on this material - not the most intelligent, or most innovative, or most productive programmers.

    170. Re:older developers... by Anonymous Coward · · Score: 0

      There's nothing unsafe about pointer arithmeticp

      Clue train, last stop is YOU.

      The GP is not making a value judgment on pointers, you dolt. That's the TERM used in computer science for working in languages / platforms / or modes where raw memory access is allowed.

    171. Re:older developers... by FreakAlienJobEater · · Score: 1

      All of you please email me. I'm sure to find a place to all of you immediately if you know what glibc is.

      hyboucher [at] gmail.com

    172. Re:older developers... by Xabraxas · · Score: 1

      I wish I had mod points. This is so true. C is such a huge step backward from Lisp. It's like going from a TI-89 to an abacus.

      --
      Time makes more converts than reason
  2. bad attitudes by Anonymous Coward · · Score: 5, Insightful

    Maybe it's because a lot of devs from the 90s were and are quite rude due to their lack of social skills. Most people don't put up with that kind of crap.

    1. Re:bad attitudes by mc+moss · · Score: 5, Insightful

      I know a few people who have been turned away from Linux whenever seeking help online from linux users. The whole "you're stupid if you can't figure it out" attitude by some users is really off-putting.

    2. Re:bad attitudes by AdmiralXyz · · Score: 1, Interesting

      Current college student ("young developer") speaking: I second this absolutely. I've contributed to a few open-source projects and once thought about getting involved with the kernel, but took one look at lkml and said "Fuck that". Maybe I just need to approach it again with an open mind, but it seemed to me like an endless battle of egos to get $PET_SEGMENT_OF_CODE approved. The fact that the kernel has a very poorly designed set of interfaces and is a nightmare to program for (at least, this is what I've heard- feel free to enlighten me if I'm wrong) doesn't help.

      --
      Dislike the Electoral College? Lobby your state to join the National Popular Vote Interstate Compact.
    3. Re:bad attitudes by briggsl · · Score: 1, Informative

      I've tried to get involved in the development of the kernel and been hounded out because I asked questions.

      What sort of development community is it if you can't ask someone who's written a section of code "What does this function do?"

    4. Re:bad attitudes by Anonymous Coward · · Score: 2, Insightful

      Good grief, what a little asshat you are. You say kernel has "very poorly designed set of interfaces and is a nightmare to program for.." but then you go on to explain you really have no idea what the fuck you are talking about? Maybe you should learn how to write code before you comment on writing code? Fucking noob.

    5. Re:bad attitudes by Nekomusume · · Score: 2, Insightful

      I made some forays into linux a while back for an ftp box, and dealing with the community could be rather painful.
      The community has managed to develop a rather vocal core of self-righteous twits, in addition to the more subdued sane people, who probably outnumber them.

    6. Re:bad attitudes by Anonymous Coward · · Score: 0

      right on!

      I've been driven off some open source projects based on this kind of attitude.

    7. Re:bad attitudes by Anonymous Coward · · Score: 0

      And maybe the earlier devs were equally rude and equally lacked social skills, but since there was such a small hierarchy of hackers at the time, there was no expectation of respect. In other words, there wasn't anyone to not "put up with that kind of crap" yet.

      Of course, another idea would be that it's more fun to build up a smaller simpler kernel than a larger, more complicated kernel.

    8. Re:bad attitudes by ushering05401 · · Score: 1

      To be fair, if you are trying to get in on kernel development you probably should be able to profile the function yourself. I think the more productive approach is to research on your own until you understand the subject matter, then focus on comparative analysis such as what does this function do inefficiently, or is this function future-proof.

    9. Re:bad attitudes by Aladrin · · Score: 1

      You're rated -1 because you have a sense of entitlement. The developer that wrote that function has no responsibility to you whatsoever. Read the documentation. If that's not enough, read the code yourself. If you still can't understand it, and you think it's because it is crazily complicated, you can -ask-, but to -expect- a response is wrong.

      Also, you have no sense of scale. 1 person asking a dev what his code does is interesting. Millions of people asking what it does is harassment. The Linux kernel is used by many millions of people.

      --
      "If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
    10. Re:bad attitudes by Anonymous Coward · · Score: 0

      There aren't "interfaces" per se, and that's a problem

      And you're right, there's very little regard paid to the most correct way of doing something, just the most popular. Benchmarks are one way to gain popularity because if it's faster, it's better right? Even if it breaks thousands of interfaces that uncover hundreds of bugs all over the place.

      Basically there's no design, which makes it a nightmare to work in

    11. Re:bad attitudes by Anonymous Coward · · Score: 0

      In all honesty there is a kernel of truth to this. I've always had an interest in all things technical and the thought of being involved in creating an operating system or working at low level architecture is very exciting... however, there really is an insular attitude in these communities. I never understood it, but there is a tendency for older "more experienced" people to treat younger "noobs" with disdain or belittle them for lack of knowledge. If you try to learn something new and someone makes fun of you because you're inexperienced, it certainly doesn't reinforce their desire to learn. Not sure how we can go about fixing that, unfortunately, it's pretty ingrained in our CS culture... :-/

    12. Re:bad attitudes by Anonymous Coward · · Score: 2, Funny

      Linus, is that you?

    13. Re:bad attitudes by AdmiralXyz · · Score: 3, Interesting

      I know I shouldn't be feeding the troll (who is showing exactly the kind of attitude I try to avoid), but in case anyone is genuinely confused by what I said before, I want to clarify: I've taken a look at only small portions of the kernel code, and have not (yet) make a concentrated effort to know more about it. The interface complaints are just what I keep hearing from programmers on various tech sites, including Slashdot, every time a story comes up regarding filesystems or somesuch. If kernel development doesn't, in fact, suck, then maybe there needs to be a better PR campaign to get the word out, because I've heard nothing but bad things.

      --
      Dislike the Electoral College? Lobby your state to join the National Popular Vote Interstate Compact.
    14. Re:bad attitudes by $RANDOMLUSER · · Score: 1

      What a genius meta-troll!!


      Mod parent +10 Insightful - he has perfectly answered the question "Why Linux Is Not Attracting Young Developers".

      --
      No folly is more costly than the folly of intolerant idealism. - Winston Churchill
    15. Re:bad attitudes by Anonymous Coward · · Score: 0

      "Old Marty" on the mod_security team is one of those. I received numerous "lamer!!" replies from that prick. He kept repeating "it's in the docs"..but it wasn't; there was NO reference to the error anywhere except the source code and I didn't have all day to analyze it to see what it involved. Thankfully there were other people there to point out the real problem. If it weren't for them, I'd have dropped mod_security like a rock.

      Marty also claimed to be close to 50, which is funny that he kept using "lamer" like a 12 year old wannabe hacker.

    16. Re:bad attitudes by Manip · · Score: 3, Insightful

      This. You ask for help they direct you to a generic one page man page without the information you requested. You offer a suggestion and they tell you to provide a patch, fair enough, and then when you ask for assistance with making a patch you cannot get any (even documentation).

      If you are lucky enough to actually provide a patch they often don't even want to import it into the main codebase because the feature isn't useful to them or it would just take too much work. All you get is "branch it off."

      Frankly and depressingly I find closed source developers to be much more helpful and even willing to accept suggestions and help than elitist open source jerks.

    17. Re:bad attitudes by Anonymous Coward · · Score: 0

      Good grief, what a little asshat you are. Maybe you should learn how to sign in with an actual name instead of commenting AC before you comment on writing code? Fucking noob.

    18. Re:bad attitudes by dbcad7 · · Score: 1

      My experience has been that for the most part, whenever I needed an answer the answer was available online somewhere.. It's probably more a matter of dealing with repeated questions where answers are already out there, that cause some "rudeness". This is also not limited to Linux.. any tech sector has groups of users who have obtained a level of knowledge that required some effort and time.. when other users who haven't learned some basics attempt to have all there problems solved for them by someone else, without learning anything on their own, you can see how the users who have spent the time might become annoyed.. It's simple, newbies have to go for answers where newbies questions are answered.. when they obtain a level of understanding of advanced users, then their questions will be answered by advanced users..

      --
      waiting for ad.doubleclick.net
    19. Re:bad attitudes by Anonymous Coward · · Score: 0

      Maybe it's because a lot of devs from the 90s were and are quite rude due to their lack of social skills. Most people don't put up with that kind of crap.

      Bwahahahaha. You've never tried dealing with teenage "techs" via IRC/email/forums then! Being direct and to the point is life, get over it. Rude is calling you a twat for not knowing what you are talking about, being direct is pointing out your errors without politically correct everyone is a weaner, again, that's real life, get past it.

    20. Re:bad attitudes by jadedoto · · Score: 2, Insightful

      The life of software is very much in its documentation and how the future programmers who touch it will use it. If millions of people are "harassing" the programmer, maybe that speaks volumes about their code. Good code is self-documenting, and where necessary, accompanied by verbose commenting. An superbly fast algorithm is near useless to anyone but the original coder if it is so obfuscated and ill-documented that nobody else can understand it.

    21. Re:bad attitudes by Anonymous Coward · · Score: 0

      Are you a TOTAL fucking asshat, such that the resonse to your sad sad post went RIGHT THE FUCK OVER your head? Good grief.

    22. Re:bad attitudes by turgid · · Score: 4, Interesting

      To be fair, in the real world (i.e. working for a living), if you come across an obscure function written in a "clever" way it is sometime a far better use of everyone's time to ask the person that wrote it what it does.

      Otherwise you risk missing some subtlety about why it needed to be that way (and not another) and spending lots of time and effort writing a solution to the problem in hand that may work superficially but not in detail.

      The Linux kernel isn't fun any more. It's corporate now. It's mature. It has nowhere left to go. We need something new.

    23. Re:bad attitudes by Fantom42 · · Score: 1

      Maybe it's because a lot of devs from the 90s were and are quite rude due to their lack of social skills. Most people don't put up with that kind of crap.

      This is it. There have been some very high profile cases of Linux kernel developers acting like complete assholes and basically getting away with it, too. Anyone remember Con Kolivas or Hans Reiser?*

      * Yeah, Hans Reiser obviously had some serious problems. But his ideas were sound. Probably why many devs were hungry to discredit him and obtain the credit. This kind of behavior is more common in the F/OSS community than people like to admit, by the way.

    24. Re:bad attitudes by h00manist · · Score: 1

      I know a few people who have been turned away from Linux whenever seeking help online from linux users. The whole "you're stupid if you can't figure it out" attitude by some users is really off-putting.

      I see that in numerous groups, not just Linux, and indeed it doesn't seem to be very good for newcomers. Some encouragement usually helps new people stick around longer and get to know things better. Yes talking to newcomers takes patience, but it pays - if you can't do it at least don't make things worse for them, just say you're busy, or nothing.

      --
      Build your own energy sources from scratch. http://otherpower.com/
    25. Re:bad attitudes by ushering05401 · · Score: 1

      Sure, at my small office I can shout down the hall and get a pretty quick answer. This article is about the Linux kernel. Matters of scale make me averse to contacting anyone without significant research to make sure that I am not part of a DDOS on the coder who was unlucky enough to have some clever code signed off by a maintainer.

      If you aren't familiar enough with the function and the relevant landscape you shouldn't be emailing kernel devs. And if the function is that clever I guarantee there is a conversation about it somewhere.

    26. Re:bad attitudes by martyros · · Score: 4, Interesting

      Frankly and depressingly I find closed source developers to be much more helpful and even willing to accept suggestions and help than elitist open source jerks.

      Every time you ask a question, you are asking someone to donate time to you. A lot of people are either volunteers, or they're working for a company with their own priorities and schedule. So turn it around. Why do you expect people to just give you time for free?

      If you'd ever seen e-mail after e-mail of someone wanting to contribute something / get into coding on a project, and spent hours of your life (via e-mail) trying to help them hobble along, only to find out that they are completely incapable of doing simple debugging, or sometimes even of interpreting a very plain gcc warning ("It says, variable X may not be initialized." [I glance at the 20-line function.] "What happens if Y is false? What will variable X be set to?" "Oh, good catch!") you'd understand why people are short on mailing lists.

      I genuinely want to help people become developers for my project. But I don't have the time or emotional energy to teach basic OS primitives (like, what a spinlock is and how to use it), much less teach people basic debugging skills. Often you'll spend a lot of effort trying to describe something (say, 20-30 minutes writing an e-mail) and the person asking for help will only write 2 lines back asking for more, without any evidence of having spent at least 20-30 minutes trying to get it working themselves. So where I am now is this: spend no more than 5 minutes, and give them just enough hints to get them to the next question. If they manage to sort out how to do X on their own, and to ask the next question, I'll give them another 5 minutes. If they've shown evidence that they're really stuck and have tried a bunch of different things, I'll spend more time, but not more time than I think they've spent.

      But the fact is, the vast majority of time, the interaction eventually shows that the person is not (at this point, perhaps ever) capable of contributing to the project. And rarely does the person asking acknowledge the time they're asking me to commit to helping them. I'm a natural optimist, and I naturally love to teach people. So at the moment, hope (plus a handful of positive interactions) keeps me trying, even in the face of overwhelming defeat. I can easily understand why people of a different character come to despise those kinds of questions.

      My experience is, if you make it clear that you respect someone's time, and have spent a reasonable amount of effort trying to figure it out yourself before asking for help, people are more than willing to give you a hand.

      --

      TCP: Why the Internet is full of SYN.

    27. Re:bad attitudes by Anonymous Coward · · Score: 1

      Every time you ask a question, you are asking someone to donate time to you.

      And that's exactly the problem.

      Open Source projects need to find a way to raise the necessary money to pay people in order to provide support. If you rely purely on volunteerism, you get horrible documentation and people with terrible senses of community, either because they lack in social grace or because they are too burned out or busy to deal with it.

      The fact that you expect people to invest in a project that is nigh-impossible to get into is why there are fewer younger developers. Documentation and community is so awful on the whole that the young developers are more likely to start a new project from scratch than waste months of their lives trying to get up to speed on a project where existing developers berate them and scoff at their struggle.

      It's not talent, it's just experience. You're familiar with the ridiculous corners of the code--but you can't expect people to have that same familiarity starting out. Your reaction is, "that's not my problem" and you're right, but just adding to the cycle.

      Someone needs to step up to the mantle in terms of management and developer support (i.e. recruiting and "evangelism") or the projects will die when the developers do, unless they've managed to become so important that someone is willing to take over. Increasingly, that someone is a corporation (who will then inevitably be blamed for "destroying the culture" of the original project, despite saving it from oblivion).

      With terrible documentation, no "getting started" literature, and awful availability of developer support resources (including yourself--while you may "love to teach", it's clear that you have neither the time nor the inclination to do so effectively. It's easy to teach people who have already taught themselves--that's not education, it's peer correspondence), it's amazing most projects can attract new developers at all.

    28. Re:bad attitudes by scamper_22 · · Score: 1

      You'd also have to throw in the possibility that young people's interest in the field has declined.

      If you're in the western world, you'd be a little naive to dive into the field. The people who are doing it are doing it a very shallow level, even if they're capable of serious development work. It's not wroth the time or investment of knowledge. Probably the brigtest guy in my uni-class went on to found an e-store.
      If you're in one of the outsourcing countries, you're not rich enough to waste your time coding for free. You're doing it for a job.

      Pardon my generalizations here, but it's what I see everyday. Those young bright eyed young excelling nerds are just not going into the field. We can't find them to hire. I can't blame them either. They're smart enough to do anything else (law, medicine, public sector...).

      So it might not be a linux kernel development issue, but a problem with the field in general. Another personal anecdote, the last serious embedded place I worked at had almost no one under 37... except me. The overseas team (india) was full of young people. And no... it wasn't that we weren't looking to hire here.

      Just my thought. I know that even though I absolutely love software, I probably wouldn't go into the field today... It's not worth pursuing as a serious career. And so, why would I think spend countless hours in the core details of an open source project?

    29. Re:bad attitudes by IntlHarvester · · Score: 1

      Truth - and I think there's a real generational difference here. Twenty years ago, the internet was a rough and tumble place where flame wars were the norm. If you wanted to win an argument, you were expected to play rough, and the Linux/BSD development culture reflected that.

      The facebook generation does not like to be confrontational online. If they can't block someone with a touch of the button, they'll simply check out of the conversation.

      --
      Business. Numbers. Money. People. Computer World.
    30. Re:bad attitudes by Bengie · · Score: 1

      I find if you set your consumer threads to high priority and spin-lock while waiting on your producer threads which are idle priority, it makes your code fast.

    31. Re:bad attitudes by hkgroove · · Score: 1

      Bad attitudes suck, but I can understand. When I go to one of my co-workers to talk about a problem I'm having, it's more to discuss and figure out the answer for myself. I know that logically, I have the answer (just may not realize it), but sometimes it's that response back to me during a brief discussion that might not be correct, but inadvertently leads me to the correct course of action.

      I think that most people have an idea of what the answer is, it just hasn't manifested itself in an obvious way.

    32. Re:bad attitudes by b4dc0d3r · · Score: 1

      On the other side, the guy asking a question. I've downloaded code that is supposed to compile and run, but it doesn't because some undocumented dependency wasn't in the package, and wasn't in the build doc. (note the general use of 'you', not you in partuclar) If your component has a very simple test driver or unit test code, it should be simple to get running. If you're getting a lot of questions that aren't answerable by "google these two words, then read the following sentence" then maybe your design is a little unorthodox.

      Make clean and make all before releasing, and try building from your own packages in a clean, newly made directory. If that works, then "build it, use a source-level debugger and step into the program if you can't otherwise find main()" is a reasonable response, followed by "I didn't write gdb so I can't take you through it but here's one of my favorite references."

      There's a balance between short, reasonable, and personal tutor, and it's easy to go heavy to one side or the other. Of course if you don't have one of your favorite references because it's all in your head, it better be someone else's code.

    33. Re:bad attitudes by Anonymous Coward · · Score: 0

      Your "patch" was rejected because you are yet another in a sea of "me toos" - clueless.

      The way to get a clue is to "warm up the chair" and read, read, read. Then experiment. FAIL. Read some more. Fail. Read more. Fail again. Think. Think. Think. Try. Succeed.

      Chances are, after all that, you won't be a clueless "me too" any more. Now provide a patch.

    34. Re:bad attitudes by shutdown+-p+now · · Score: 1

      Sure, at my small office I can shout down the hall and get a pretty quick answer. This article is about the Linux kernel. Matters of scale make me averse to contacting anyone without significant research to make sure that I am not part of a DDOS on the coder who was unlucky enough to have some clever code signed off by a maintainer.

      See, you shouldn't be wondering about such things in the first place, because any "clever" code shouldn't be signed off without extensive comments explaining what it does!

      If a developer gets hit with questions of "what this function does" dozen times every day, it means that he didn't do his job properly - writing the code is half of it, and the other half is documenting the intent, purpose, and any "here be dragons" that might occur along the way.

    35. Re:bad attitudes by syousef · · Score: 1

      Frankly and depressingly I find closed source developers to be much more helpful and even willing to accept suggestions and help than elitist open source jerks.

      Every time you ask a question, you are asking someone to donate time to you. A lot of people are either volunteers, or they're working for a company with their own priorities and schedule. So turn it around. Why do you expect people to just give you time for free?

      Because they put themselves in the position of being an expert on a publicly available tool. If you don't want to answer the question, just don't answer. Far better than abuse.

      If you'd ever seen e-mail after e-mail of someone wanting to contribute something / get into coding on a project, and spent hours of your life (via e-mail) trying to help them hobble along, only to find out that they are completely incapable of doing simple debugging, or sometimes even of interpreting a very plain gcc warning ("It says, variable X may not be initialized." [I glance at the 20-line function.] "What happens if Y is false? What will variable X be set to?" "Oh, good catch!") you'd understand why people are short on mailing lists.

      So assess their skills as an end user, point them to some documentation on what technical skills are needed, then tell them to come back and you will be happy to help when they have acquired those skills.

      I genuinely want to help people become developers for my project. But I don't have the time or emotional energy to teach basic OS primitives (like, what a spinlock is and how to use it), much less teach people basic debugging skills.

      Explain that as politely as you have here (no abuse, reasonable terms) and then stop helping them.

      Often you'll spend a lot of effort trying to describe something (say, 20-30 minutes writing an e-mail) and the person asking for help will only write 2 lines back asking for more, without any evidence of having spent at least 20-30 minutes trying to get it working themselves. So where I am now is this: spend no more than 5 minutes, and give them just enough hints to get them to the next question. If they manage to sort out how to do X on their own, and to ask the next question, I'll give them another 5 minutes. If they've shown evidence that they're really stuck and have tried a bunch of different things, I'll spend more time, but not more time than I think they've spent.

      Fair and reasonable but after the first question or two you should let them know that's your approach so they aren't getting frustrated or thinking of you as unhelpful.

      But the fact is, the vast majority of time, the interaction eventually shows that the person is not (at this point, perhaps ever) capable of contributing to the project. And rarely does the person asking acknowledge the time they're asking me to commit to helping them. I'm a natural optimist, and I naturally love to teach people. So at the moment, hope (plus a handful of positive interactions) keeps me trying, even in the face of overwhelming defeat. I can easily understand why people of a different character come to despise those kinds of questions.

      If it's a developer question, it's very different to an end user question. Not everyone's going to be able or willing to help at every level. You can expect a lot from a developer, and if they aren't cutting it you can tell them to go do some learning. But the end users are different - they just want to solve their problem well enough to use the product. You can't expect them to contribute. They're the ones when told to RTFM that will promptly insert a Windows CD and chalk it up to Linux being unusable.

      My experience is, if you make it clear that you respect someone's time, and have spent a reasonable amount of effort trying to figure it out yourself before asking for help, people are more than willing to give you a hand.

      That's not been my experience at all I'm afraid. And not just with Linux. There are reasonable people. Then there are real arrogant sods. Unfortunately the later outnumber the former.

      --
      These posts express my own personal views, not those of my employer
    36. Re:bad attitudes by Anonymous Coward · · Score: 0

      That's not been my experience at all I'm afraid. And not just with Linux. There are reasonable people. Then there are real arrogant sods. Unfortunately the later outnumber the former.

      The problem is almost certainly you, not the so-called "real arrogant sods". My experience has been uniformly positive.

      They are not your nursemaid. They are often world-class coders dealing with large numbers of people trying to get as much done as possible and wasting time on people who blame everybody but themselves is not a sensible thing to do. In particular if you expect to have everything handed to you on a plate then I'd suggest you head down to the local computer shop where, if the salesdroid smells money, they will fawn all over your fragile ego if that's what pulls your chain. On the other hand if you're serious about getting the problem fixed and realize it's a two way exchange you may accomplish a lot.

      Developers are not salesdroids (thank god) and it's not reasonable for you to expect them to act that way. They are busy people with objectives different from yours. If you are a beginner there are any number of intermediate level experts willing to help on numerous forums. And like the saying says "God helps those who help themselves."

    37. Re:bad attitudes by syousef · · Score: 1

      The problem is almost certainly you, not the so-called "real arrogant sods".

      That's called denial. You don't know me. You don't know the circumstances, yet you're happy to jump to conclusions about both because you don't want to deal with the possibility of a different reality.

      My experience has been uniformly positive.

      Good for you. And yet mine aren't. What makes yours more valid?

      They are not your nursemaid. They are often world-class coders dealing with large numbers of people trying to get as much done as possible and wasting time on people who blame everybody but themselves is not a sensible thing to do.

      World class coders are still capable of being rude and arrogant. If you're telling me you've never met a world class coder that is rude or arrogant, I'd say you're lying. We've all read about world class coders behaving like jackasses. If you're saying that doing something well excuses bad behaviour, I'd disagree with that too.

      In particular if you expect to have everything handed to you on a plate then I'd suggest you head down to the local computer shop where, if the salesdroid smells money, they will fawn all over your fragile ego if that's what pulls your chain.

      ...and again we have a whole bunch of assumptions about the circumstances, my abilities and my competence that have nothing to do with the argument. Until you know me and the situation I'm thinking of, such speculation is baseless.

      On the other hand if you're serious about getting the problem fixed and realize it's a two way exchange you may accomplish a lot.

      Developers are not salesdroids (thank god) and it's not reasonable for you to expect them to act that way. They are busy people with objectives different from yours. If you are a beginner there are any number of intermediate level experts willing to help on numerous forums. And like the saying says "God helps those who help themselves."

      This is just a crazy rant, pure and simple. "Sales droids" don't behave well either. The fact that they have objectives or skills isn't in question. That you think this either excuses bad behaviour or implies my incompetence is laughable. It's hard to argue with someone with so many straw men in the way.

      --
      These posts express my own personal views, not those of my employer
    38. Re:bad attitudes by tokul · · Score: 1

      My experience is, if you make it clear that you respect someone's time, and have spent a reasonable amount of effort trying to figure it out yourself before asking for help, people are more than willing to give you a hand.

      Depends on who you are working with. In my case I've lost my time, when developer repeatedly claimed that I am applying wrong patch. Eventually I learned myself that standard package compilation procedure was broken, because SAME developer did not update patch used during compilation. I've said exact commands used to compile package. Any sane person should have noticed that their own package compilation scripts work differently. Filed bug report about it. Result - not a bug.

      Or when people say that problem is in iconv and code in question does not have any iconv calls.

    39. Re:bad attitudes by HermMunster · · Score: 1

      This is disingenuous, bullshit. Even if he allegedly knows someone it doesn't mean it is prevalent Linux-wide.

      What can easily be read from this is that he's claiming that because his friend(s) had a problem that this is the way it is. That's like saying my car was having a problem and the repair shop I called told me to take it and shove it so all mechanics suck--they are socially incapable of providing what anyone asks for.

      I know this is a big fib because I support people online when I get the chance. I spend time in the chat rooms helping, and watching others help. Often the amount of energy spent assisting people goes far beyond most anything you get for free in the Windows world. Another reason we know this isn't accurate is because his friends aren't stating their own experiences here. His comments are pure hearsay.

      His fib also implies that it is just the Linux world that has the bad attitude. My experience, as a result of owning a small business where I repair computers, is that his accusation is not unique to the Linux world, but is vastly more prevalent in the windows world. In fact, sometimes to ask for free support in the windows world is like asking a brick wall over and over for help and not getting any responses.

      In my experience in the online forums I find that there often will be people come in and spam the chat rooms in order to disrupt it while making false statements about Linux being crap and how bad the OS is. They come in and spam repeatedly until they are banned, and then reenter as someone else spamming again until the system completely shuts them down. This isn't a rare occurrence and it isn't an accident. That means that someone with a lot of spite is doing this purposefully with malicious intent, with the intent of poisoning the waters for new users.

      In the past year I have encountered zero instances where someone told another person to shut up and read the man pages. In fact, there's absolutely been no time that I can recall that anyone directed a single person to a man page, period. I have seen people direct others to web pages, wiki articles, and to Google search results. This is common even in the Mac OS X and Windows worlds.

      My experience shows that there is vastly less depth in supporting people in Windows than Linux. It is far more common to encounter a support page for Windows that has no depth, misleads the user, sending them on wild goose chases to completely incorrect inapplicable web pages--that wastes a lot of users time.

      Here's generally what happens in Linux. Someone announces they are a noob to Linux and want help on such and such a problem. Now, granted these people are good people and may have some knowledge about computers. Some fail to understand that this is a new OS to them, that they have to abandon the idea that Linux is a clone of Windows. They just want to know how to make it happen the way they know how to make it happen in Windows--which isn't always appropriate.

      Most of the support people try to give the users an answer. It is quite frequent that the users haven't even attempted to solve their own problem or they've just given it a superficial try. What they don't understand is the complexity of their problem. There are simple problems, there are modest problems, and there are also complex problems.

      If someone has a simple problem sending them to a web or wiki page is the right thing. It helps free their time so they can assist others with more complex problems. Basically, what I'm reading is that there are a lot of simple problems that the users don't put the effort into resolving themselves, so they go to get support in order to keep from thinking through it themselves, and when they are directed away they take offense. Their selective memory keeps them from remembering that they'd have the same response from the OS X and the Windows crowd. If they'd think back they'd realize that it happens that way more frequently there.

      Of those with intermediately difficult and complex pro

      --
      You can lead a man with reason but you can't make him think.
    40. Re:bad attitudes by HermMunster · · Score: 1

      I couldn't help laugh out loud when I read your first premise.

      You need to pay for your support guy. You, personally, won't be happy any other way. I certainly hope you pay for everything that happens in life where you consume someone's time. You should be donating to those people that post answers on web pages that you search for and find with Google.

      --
      You can lead a man with reason but you can't make him think.
    41. Re:bad attitudes by shaitand · · Score: 1

      But you have raised a fallacy of your own. You admit:

      "The fact that they have objectives or skills isn't in question."

      But make arguments that assume those objectives depend on or include you being able to meet your objectives (or anyone else being able to meet their objectives). Without this false premise, all your arguments collapse.

    42. Re:bad attitudes by shaitand · · Score: 1

      True enough. I've known very few 'advanced' technical people who aren't willing to shoot the shit on a problem with other 'advanced' technical people.

    43. Re:bad attitudes by syousef · · Score: 1

      But you have raised a fallacy of your own. You admit:

      "The fact that they have objectives or skills isn't in question."

      What does my admitting that these people have technical skills have to do with it? I did not say they had people skills.

      But make arguments that assume those objectives depend on or include you being able to meet your objectives (or anyone else being able to meet their objectives).

      If you put yourself up as an expert and willing to help that simply isn't an assumption.

      Without this false premise, all your arguments collapse.

      You're just hand waving and talking jibberish and hoping I won't notice. You haven't made any kind of coherent argument here.

      --
      These posts express my own personal views, not those of my employer
    44. Re:bad attitudes by shaitand · · Score: 1

      "What does my admitting that these people have technical skills have to do with it? I did not say they had people skills."

      Your point being? I spoke regarding your admission of varied objectives not skills.

      "If you put yourself up as an expert and willing to help that simply isn't an assumption."

      You do realize that one does not automatically include the other right? Putting oneself up as an expert and/or being generous enough to release code to the community does NOT equate to 'willing to help'. Such an individual has no obligation to assist further and may well participate IRC channels, message boards, mailing lists, etc primarily to further their own goals and discuss issues with their peers.

      "You're just hand waving and talking jibberish and hoping I won't notice. You haven't made any kind of coherent argument here."

      Always the best tatic. Ignore the arguments presented, raise up your own strawmen and bash them down, and last but not least toss in some petty insults.

    45. Re:bad attitudes by rdnetto · · Score: 1

      We need something new.

      How about cold fusion?

      --
      Most human behaviour can be explained in terms of identity.
  3. Maybe.. by seth_hartbecke · · Score: 3, Funny

    Maybe we should drop the code requirement.

    Oh wait, that's HAM radio.

    --
    END
    1. Re:Maybe.. by Anonymous Coward · · Score: 1, Insightful

      > Oh wait, that's HAM radio.

      It's ham radio. Ham is not an acronym.

    2. Re:Maybe.. by taoye · · Score: 1

      is the radio is made of ham? mmmm... delicious

    3. Re:Maybe.. by rubycodez · · Score: 1

      yes it is an acronym, Haggard Aged Men.

      the elmers killed the hobby.

    4. Re:Maybe.. by Anonymous Coward · · Score: 0

      the code requirement WAS dropped.

    5. Re:Maybe.. by Nethead · · Score: 1

      So if I Worked All States, I don't need code?

      w7com

      --
      -- I have a private email server in my basement.
    6. Re:Maybe.. by shaitand · · Score: 1

      I don't know which shows greater ignorance. Your sense of humor or your belief that ham is delicious...

  4. Proprietary App Platforms Won by Anonymous Coward · · Score: 5, Funny

    Dear Old People,

    We're busy building iphone, android, facebook and twitter apps, with the delusion of a multi-million dollar payday.

    BTW, thanks for all the open source stuff we're using.

    Signed,

    Young Developers

    1. Re:Proprietary App Platforms Won by clang_jangle · · Score: 1, Flamebait

      Dear Old People,

      We're busy copying and pasting together iphone, android, facebook and twitter apps, with the delusion of a multi-million dollar payday.

      BTW, thanks for all the open source stuff we're using.

      Signed,
      Young Developers

      Fixed.

      --
      Caveat Utilitor
    2. Re:Proprietary App Platforms Won by Anonymous Coward · · Score: 0

      Crap, they're on to us...

    3. Re:Proprietary App Platforms Won by Anonymous Coward · · Score: 0

      Dear Young People,

      Back in the day... what was I saying now? Well, anyway, get off my lawn!

      Sincerely,

      Old People

      PS: Punch cards! We did it all on punch cards!

    4. Re:Proprietary App Platforms Won by jim_v2000 · · Score: 1

      It's actually not that delusional these days. There's a huge market for software that has never existed in the past. A stupid little app might actually end up making you a good chunk of money.

      --
      Don't take life so seriously. No one makes it out alive.
    5. Re:Proprietary App Platforms Won by sourcerror · · Score: 1

      We're busy building data mining algorithms for day-trading , with the delusion of a multi-million dollar payday.

      I fixed that for you.

    6. Re:Proprietary App Platforms Won by Anonymous Coward · · Score: 0

      ...and by the way, in case you haven't noticed, upper management wants results, cheap and fast. Current frameworks make it easier for us to deliver what they want, within weeks, not years.

    7. Re:Proprietary App Platforms Won by Bigjeff5 · · Score: 1

      Indeed, my local paper did an article on a few 20-somethings in my city who were pulling in six figures easy after banging out a couple moderately successful iPhone apps. My city is not exactly a hotbed of software developement.

      Why the hell would you tackle a massive, convoluted kernel project for not even so much as a little recognition, let alone any sort of monetary reward, when you could bang out a couple iPhone apps and pull in a hundred grand a year?

      Seriously, what moron chooses the former?

      --
      Security is mostly a superstition... Avoiding danger is no safer in the long run than outright exposure. - Helen Keller
    8. Re:Proprietary App Platforms Won by Bigjeff5 · · Score: 1

      No, I don't think you did.

      --
      Security is mostly a superstition... Avoiding danger is no safer in the long run than outright exposure. - Helen Keller
    9. Re:Proprietary App Platforms Won by Blakey+Rat · · Score: 1

      I suppose you're insinuating (or trying to) that there's something wrong with "copying and pasting together" code, hm?

    10. Re:Proprietary App Platforms Won by Anonymous Coward · · Score: 1, Insightful

      Your code just went tits up. Where is it broken? Oh its in that cut&pasted blob that you do not know how it works.

      I have worked with people who do just that. They keep c&p'ing code until it works. MASSIVE mess that has tons of side effects. You become afraid to change anything as you have no way to properly test it. Fix one bug 3 come crawling out of the woodwork because that 1 bug was there on purpose because it made the other 3 not happen. Yet you do not know that as the guy who did it left 3 years ago.

      THAT is what is wrong with cut and pasting code. You end up with code that you have no idea how it works. That is fine for a prototype. But put it into production and you will hate every second of it someday. I assure you this. Code reuse becomes nill and you end up with bugs cut and pasted 20 times in your code.

      Cut and paste is your friend and enemy use him with care.

    11. Re:Proprietary App Platforms Won by Anonymous Coward · · Score: 0

      Parent should be +5 informative.

      And no, I'm not the same AC. :)

    12. Re:Proprietary App Platforms Won by Anonymous Coward · · Score: 1, Insightful

      It's delusional because these anecdotes are about as useful as hearing that someone won the lottery, and an entire generation of students being taught that they should make themselves into professional lottery players.

    13. Re:Proprietary App Platforms Won by tyrione · · Score: 1

      Dear Old People,

      We're busy building iphone, android, facebook and twitter apps, with the delusion of a multi-million dollar payday.

      BTW, thanks for all the open source stuff we're using.

      Signed,

      Young Developers

      All those iPhone apps aren't relying on FOSS for app development. Neither is Java relying on it's existence due to FOSS. FOSS has been very useful for corporations needing a built-in testing pool, for free. However, money off of services only tends to be limiting.

    14. Re:Proprietary App Platforms Won by bar-agent · · Score: 1

      And no, I'm not the same AC. :)

      That's exactly what I'd EXPECT the same AC to say!

      --
      i'd hit it so hard, if you pulled me out you'd be the king of britain [bash.org]
    15. Re:Proprietary App Platforms Won by Anonymous Coward · · Score: 0

      Let the kids have their dreams. Nobody is sitting around wishing for the day when they write line-of-business .NET applications to pay their mortgage.

    16. Re:Proprietary App Platforms Won by Anonymous Coward · · Score: 0

      Darwin isn't FOSS? Java isn't FOSS? You better go correct those wiki pages then.

    17. Re:Proprietary App Platforms Won by jim_v2000 · · Score: 1

      So when's the year of the Linux desktop again, and how much money to all the devs get when that happens?

      --
      Don't take life so seriously. No one makes it out alive.
    18. Re:Proprietary App Platforms Won by kwerle · · Score: 1

      And gcc, gdb. Or maybe those fall under darwin - but I think of darwin as just the OS.

    19. Re:Proprietary App Platforms Won by Anonymous Coward · · Score: 0

      "Indeed, my local paper did an article on a few 20-somethings in my city who were pulling in six figures easy after banging out a couple moderately successful iPhone apps. My city is not exactly a hotbed of software developement."

      "Why the hell would you tackle a massive, convoluted kernel project for not even so much as a little recognition, let alone any sort of monetary reward, when you could bang out a couple iPhone apps and pull in a hundred grand a year?"

      "Seriously, what moron chooses the former?"

      The kind of moron that had you for a parent :)

      Disclaimer: I am not a kernel developer.

      The kind of moron that doesn't like to "bang out" a couple apps that will be gone in 5 years when your phone no longer functions because the powers-that-be want you to upgrade to the newest model?

      The kind of moron that gets sick of rewriting the same crap year after year, only to have it thrown away (and another group gets hired to create the replacement) down the road because the original was done in such a hurry and with so many shortcuts to get it to market that it is easier to start from scratch than even attempt to whip the original into shape (or, *gasp* port it to the latest platform, something the original developers never ever thought would happen! or something management didn't deem cost efficient x years ago)?

      The kind of moron who's not in it for (only) the money?

      The kind of moron who's looking to gain experience and knowledge instead of fly-by-night, one-shot, take it and run development?

      I would like to think you are not so shallow and are just trolling, but experience tells me otherwise.

      Even still, if I must stoop down to your level, have you seen how much money embedded or kernel developers make?

      Not that it matters, or that I am anybody special, but I got told all through school that "noone uses Linux" and "there's no jobs or money in Linux" only to be hired specifically *because* I "was the one person who knew linux". Oh, and "We are looking to hire one more person, do you know anyone else you went to school with you'd recommend"?.

      What a shocker.

      Oh, and some of the people who discouraged me so much were so proud of me for how much I was making years later (*yawn*). Not that it was hardly anything, but that is all those shitheads understand.

      I am just really really glad I stuck to my guns and didn't listen to certain people, such as yourself.

      And I truly hope anyone you are trying to scare off of doing something they love because "there's no money it" proves you assholes wrong (doing it for themselves, not to prove you wrong, but proving you wrong is a nice side effect of that).

      In fairness, I hope anyone into iphone development doesn't get put off by my comments, and proves my statements wrong too.

      I'd like to think you were trolling all along, but experience tells me otherwise. (*yawn*).

      P.S. Noone gives a shit about your new house or car! Nor do they care about my new computer(s)!

    20. Re:Proprietary App Platforms Won by VGPowerlord · · Score: 1

      Java is FOSS now, but that's a recent development, 12 years after Java was first released (1995-2007).

      You would have done better to bring up the more popular apps and frameworks. I can name a lot that are open source:
      Apache Struts (Apache 2.0), Spring (Apache 2.0), Hibernate (LGPL 2.1), Apache Tomcat (Apache 2.0), Jetty (Apache 2.0), Glassfish (dual CDDL 1/GPL 2)...

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    21. Re:Proprietary App Platforms Won by shaitand · · Score: 1

      The one who actually enjoys what he does and works toward internal rather than external rewards.

      I do what I do because I love to do it. I do it for someone else to get paid. In that order.

  5. reverence and awe by LordHatrus · · Score: 5, Interesting

    I've seen a lot of promising college-aged open source devs that seem to have an overwhelming reverence and awe towards the kernel, thinking it far too complicated for them to work on with their own programming abilities. In reality, most of them could pick up the kernel and figure it out quite quickly, but they'll never convince themselves of that.

    1. Re:reverence and awe by Anonymous Coward · · Score: 0

      That's how I feel :(

      I think I need to figure out where to start and what exactly I can do

    2. Re:reverence and awe by Neuroelectronic · · Score: 1, Informative

      The 2.6 kernel contains approximately 4 million lines of code.

    3. Re:reverence and awe by Anonymous Coward · · Score: 1, Interesting

      I've seen some dev threads which make me think it's not very fun dealing with the existing priesthood of maintainers, so I could sympathize with any young developer who would just say "f*ck it, I'll work on something where I can determine commit access myself rather than spending weeks trying to convince somebody who thinks they're god on earth that they should accept my humble patch to 'their' project."

      While not technically the kernel, I think this might illustrate some of the issues (I like Linux a lot and use it, but Linus himself has been like this at times as well.)

    4. Re:reverence and awe by jellomizer · · Score: 1

      That is kinda a good point... But I think it is a difference in attitudes too. Back in them Good Old Days. During the tech boom CS grads were treaded like Gods and got the huge salaries and perks for stupid jobs. We were meant to believe that we could do anything. We can run a company better then an MBA we could do it all... Then the bubble popped, we realized that we sucked at business (Yep I guess selling the product less then what it cost for us to make it was a bad idea) Also that 100+k a year Microsoft Front Page developer had to come to the understanding that he really isn't worth that much... From being a wealthy job went straight down to a middle class job.

      New developers who do this and study this do it because I like the topic, not because it will make them rich or make them seem like they are the super intelligent person. Now the down side of that is we feel self conscious about taking on something big. Where before it would be self empowering, Hey I am a god, Ill prove it by tackling 4 millions of lines of code and fix the problem.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    5. Re:reverence and awe by mwvdlee · · Score: 1

      And if you change one of those lines you have to check all the other 3,999,999 lines? Or could you just focus eforts on a smaller set of nicely modularized code?

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    6. Re:reverence and awe by compro01 · · Score: 4, Informative

      It's a lot less indimitating than it sounds.

      that 4 million lines is spread across about 22 different architectures, a couple dozen file systems, and thousands of device drivers. The actual amount of that which one needs to understand to work on something is vastly smaller.

      --
      upon the advice of my lawyer, i have no sig at this time
    7. Re:reverence and awe by stephentyrone · · Score: 1

      Shrug. I was put in charge of a project with 4 million lines of source my second year out of school. You carefully analyze the code paths that you need to work on at any given point in time, you write good thorough tests, you make your changes, you re-run your tests, and fix any regressions. The killer isn't the number of lines of source, its the interdependency between different modules (and the Linux kernel really doesn't have the best reputation in that department, though I don't know how much of its bad rap is deserved).

    8. Re:reverence and awe by IamTheRealMike · · Score: 3, Interesting

      Trust me. It's not that.

      I celebrated my 26th birthday yesterday. Some years ago I was involved with Linux and open source, so I guess that made me a "young developer". I mostly worked on Wine, because it was a technically demanding project but which had a pretty mature and ego-free set of developers who were willing to tutor me (even though I didn't have a good grasp of C when I started).

      I wrote a kernel patch once too. It was a waste of time. The code wasn't too hard to figure out, but the general nature of kernel development with its constant reboots was annoying. And the patch I sent predictably got some snarky comments and then vanished. With Wine, it was clear who made the final call - Alexandre. He wasn't always informative, but when push came to shove you could jump on IRC and talk to him about it. How the hell does one even contact Linus? The kernel project has this complicated structure in which some stuff is "owned" by some guys, but it's never really clear whom, and everyone weighs in with an opinion even if they don't own that area. Very frustrating.

      Anyway. I long since lost interest in Linux after it became clear that it missed its opportunity to have an impact on the desktop. OS X blew it away, and now computing seems to be moving onto whole other paradigms based on mobile or web operating systems. What motivation is there to do kernel hacking anymore?

    9. Re:reverence and awe by dgatwood · · Score: 1

      Depends on which one line of code. Add one line in a ubiquitously included header file along the lines of "#define int uint64_t" and see how many of those four million lines expect an int to be 4 bytes long. Sure, that's an extreme example, but you get the idea.

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

    10. Re:reverence and awe by CAIMLAS · · Score: 1

      I had the same outlook about the Linux kernel, but the opposite: I thought it was an understandable fiend, and started to delve in.

      This was when 2.6 was in development, and 2.4 was the main branch. And then 2.6 came out, and all was lost...

      --
      ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
    11. Re:reverence and awe by shutdown+-p+now · · Score: 1

      Many commercial projects have more than that. Windows has several times more than that, and also does Office.

      In fact, many OSS projects, even - IIRC, kdebase is bigger, and OO.org is definitely much bigger. I wouldn't be surprised if Firefox was as well.

      And, guess what, the people who work there are your average folk - some brighter than average, but definitely not all geniuses, and they do just fine.

    12. Re:reverence and awe by bit01 · · Score: 1

      Sure, that's an extreme example, but you get the idea.

      There are standard techniques for dealing with such things. e.g. ramp up the compiler warnings and see what they're complaining about or replace a type with a deliberate dud to see where it's used and inspect it. It's not magic or hard, it just requires routine developer expertise. Usually in modular code the side effects of new code (e.g. device driver) are minimal, even more so for a beginner engaged in an introductory project. The large kernel code can actually be a benefit in that it provides enormous numbers of examples to learn from with some examples likely to be very close to what you want to do.

      It is true that there are many developers who think they're expert but aren't that would find this impossible (see dailywtffor many examples) however nobody wants those people anywhere near the kernel code. Or any code for that matter.

      ---

      Insisting on absolute safety is for people who don't have the balls to live in the real world.

      -- Mary Shafer, risks researcher, NASA

    13. Re:reverence and awe by NotOddManOut · · Score: 1

      But why does a developer have to work on the kernel? I believe the mindset of older, "more experienced" developers of Linux that new developers must know the kernel is exactly the reason why new blood isn't being injected into the ranks of Linux developers.

    14. Re:reverence and awe by dgatwood · · Score: 1

      It's true that it isn't hard, but it is a large, painstaking process that would require changing at least tens of thousands of lines of code. The point was that there are changes that would require at least partially understanding the entire core of the kernel, albeit not necessarily a thorough understanding.

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

  6. Depends on young.. by Anrego · · Score: 1

    If you're talking high school and university students.. then yeah.. probably..

    If you're talking people working as programmers.. then I think a big part of it is the scarier and scarier policies big (and sometimes even small) dev shops are putting on what people do with their free time.

    And if it's not that.. it's the fear of legal action and who owns ideas and skills. There is often a lot of overlap in what people do at work and what people contribute to at home.. and this is becoming a thinner and thinner rope to walk across.

    And I know a whole bunch of people are going to reply with their interpretation of what you own vs what your employer owns.. but when it comes to your career.. a lot of people start getting wary even if they probably are in their right.. and I think that takes away a lot of the fun and leads to people simply "not bothering"

    1. Re:Depends on young.. by Anonymous Coward · · Score: 0

      I have seen this personally for applying for work. Companies (especially the temp agencies and contract gig places) want to own everything you do, even on your own time. So if someone signs this, and then works on a module for the Linux kernel at home on their own time, on their own computers, their workplace could claim ownership to it and even sue the employee for giving away company assets.

      In fact, I've even have companies demand I sign a contract giving them all IP I have that I work on now, and up to 2 years after I quit, even if they didn't find me work. Of course, I decline that and recommend they hand me a contract when they hand me an employee badge, but the rats are out there and attempting this.

      Of course, this bullshit is short sighted, but right now in most firms, PHBs are in charge who only care about what the next quarter numbers are. Nothing more. And this attitude propagates throughout a company.

      So, one reason that there are fewer good developers that are able to work on the Linux kernel is that companies want to tie their hands and steal ownership to their work, even if the company does not provide any income.

  7. Linux? Yawn... boring... by itsybitsy · · Score: 2, Interesting

    Could it be that the Linux Kernel isn't state of the art anymore? Linux is boring... it's bloated... it's no wonder that young blood aren't interested in developing it, they want to do something really cool and cutting edge to light their careers on fire!

    1. Re:Linux? Yawn... boring... by demonlapin · · Score: 4, Insightful

      Or perhaps that there are opportunities - the Android and iTunes app stores - that weren't available ten or fifteen years ago.

    2. Re:Linux? Yawn... boring... by abigor · · Score: 1

      Are you joking? I can't tell.

    3. Re:Linux? Yawn... boring... by confused+one · · Score: 1

      Mod this guy insightful. This is exactly what I was thinking... There are more exciting mobile platforms available now, which likely attract the attention of the younger crowd. Damn, I'm getting old too...

    4. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      what do you mean 'or perhaps'.

      you literally provided an example for the parent, not a counter argument.

    5. Re:Linux? Yawn... boring... by Angst+Badger · · Score: 4, Interesting

      Could it be that the Linux Kernel isn't state of the art anymore? Linux is boring... it's bloated... it's no wonder that young blood aren't interested in developing it, they want to do something really cool and cutting edge to light their careers on fire!

      I can't speak for the "young blood", being about to turn 40 in a few months and well past the age when I thought "lighting my career on fire" was a worthwhile goal, but I'd certainly agree that the kernel is boring. Part of it is definitely the emphasis on business applications; my interest in free software was always driven by what I wanted to do with it on my own time for my own edification, not to pursue wealth for myself or my employer. An even greater part of it, though, is that operating systems just aren't that damn interesting by themselves as long as they do what they're supposed to do, which is to provide a platform for actual applications. No one owns a computer to run an operating system any more than anyone owns a car to use tires. The OS is incidental to what users (and most programmers) want to use a computer for.

      To be perfectly frank -- and to expand the scope beyond the operating system -- the thing that I have found increasingly unattractive about FOSS in general is that it all too often becomes an exercise in cliquishness and faddishness to the exclusion of actually serving users, to say nothing of just plain rudeness. The lkml is notorious for its rudeness (though it's a garden of civility compared to its OpenBSD counterpart). Any number of application projects are focused more on being proving grounds for a particular design methodology and/or programming language of the week than on delivering a good application to end users -- witness the gazillion projects whose name prominently features its implementation language, a detail that only the developers or would-be developers could possibly care about.

      The end result is that FOSS projects all too often go out of their way to diminish their value and degree of interest to anyone outside their current circle of developers. Add to this the other common flaws of FOSS -- lack of decent (or any) documentation and poor or eccentric user interfaces -- and it's no wonder that, despite considerable strides over the last twenty years, most FOSS projects, Linux included, remain niche products at best.

      Scratching an itch is fine, but when that itch is so narrowly defined as to be your itch and no one else's, no one else can be blamed for not giving a hoot. Follow that with an insistence that it would scratch someone else's itch if only they were hip and smart enough to itch like you, and you have a perfect methodology for achieving irrelevance.

      --
      Proud member of the Weirdo-American community.
    6. Re:Linux? Yawn... boring... by node+3 · · Score: 0, Redundant

      Mod this guy insightful. This is exactly what I was thinking...

      Mod this guy insightful...

    7. Re:Linux? Yawn... boring... by TheRaven64 · · Score: 4, Insightful

      Probably not. Of all of the open source kernels available, Linux is the one that I'd be least interested in working on. For interesting features and clean design, I'd look at FreeBSD. For code quality, I'd look at OpenBSD. For interesting research type things I'd look at something like Coyotos or HURD (which does exist, is doing cool stuff, can run most POSIXy code, but isn't a mainstream OS), or something more esoteric like SqueakNOS. For something with a beautiful design that's relevant to modern platforms, I'd look at Symbian (nice kernel, shame about the userland).

      Linux? It's become the antithesis of the UNIX idea of doing one thing and doing it well. For any given problem, Linux is probably okay. It's probably not the best solution, but it will do, and it has the advantage that it's a workable-but-not-ideal solution everywhere you want to use it. But exciting to work on? Absolutely not. The code is good in places, but horrible in others. There's no overall coherent design, bits are tacked on, different architectures implement the same thing in different ways without bothering with any kind of platform-independent abstractions.

      --
      I am TheRaven on Soylent News
    8. Re:Linux? Yawn... boring... by pspahn · · Score: 1

      Yeah, you're right.

      --
      Someone flopped a steamer in the gene pool.
    9. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      Isn't state of the art in what regard? I'd say it's probably too state of the art as far as kernels go and that's a big part of the problem. In the 1990's if you could simply make something work you could contribute to Linux. The benchmark is high now, simply banging out some support for some stupid block device isn't enough, it has to be good, elegant AND play with the rest of the system.

      As a whole, developers seem to be less willing to learn the lay of the land these days before they just start churning on some code. They've got 20 years of experience with people abandoning contributions or trying to graft them in ad-hoc style.

      Where are the low hanging fruit? I know people have been saying it's "out of date" or something but what's an example of a kernel task it doesn't do pretty damn well or best in class? It's not a microkernel but they seemed to lose, maybe it's time to address that discussion again, but Linux and BSD will never be that.

    10. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      So you haven't actually looked at the Linux source code?

    11. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      Or it could be why I have chosen not to work with the Linux kernel:

      1. The interface is an enigma. It's hard to find examples of kernel tutorial code that actually compile with current kernels, let alone good documentation.

      2. The kernel is not well documented. The fact that the kernel is in constant flux wouldn't be so bad if there were decent documentation available. The general recommendation is to "dive in" to see how things work. How many hundreds of millions of lines of code are there now? The dummy drivers are pretty pathetic. Essentially, there is a huge learning curve before you can do anything. Contrast this with Solaris or FreeBSD.

      3. Why bother? Everything you need is there, for the most part. Are there better file systems on the way? Yes. Can you do what you need to today? Unless you're Google or the like, yes. The work that needs to be done is in userland, not the kernel.

      4. People want to get paid; people on Slashdot people lose sight of that fact sometimes. Maybe people won't make that million dollar iPhone app, but if they make $10 they're about $10 ahead of where they'd be if they contributed to the kernel.

      All of these issues can be addressed, but so far no one has. Anyone that wants to tinker with kernels as a hobby is much better breaking open FreeBSD (a microkernel architecture reduces the learning curve since there are well-defined, stable interfaces between the subsystems) rather than working on Linux. There may be a lot of corporate interest in Linux, but there's no significant push to better the documentation.

      If you're working with the Linux kernel and go back to an old project (say, 2 or 3 years old) as I have, you're in for a lot of rework. Contrast that to other operating systems (including the dreaded Microsoft one).

      Linux has always been more flexible in allowing design changes than other operating systems. There are distinct advantages to that (no need to carry bad ideas forward *ahem* Win32 *ahem*) and disadvantages (getting up-to-speed on kernel programming and keeping current is much more difficult). There may be a misconception that all you need to do is recompile old code since Linux is open source, but that's not the case. This may be an unpopular thing to say, but anyone that's worked with the kernel knows it's true.

      If you're working full-time on the kernel, you're past the learning curve. If you're getting acquainted with the kernel for the first time, it's because someone's paying you to that has their own agenda (RedHat, IBM, etc). If you're a hobbyist and kernel programming interests you (the "young developers") then you'll ultimately skip Linux.

    12. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      I heartily agree. I am not a programmer merely a user. Having 'migrated' from Winslop to Kubuntu three or four months ago, I had (unfounded) great expectations that I was going into a fresh, courageous community - or at least the software written by such. What I have actually entered is something more akin to pre-windows, back in the early eighties, when one needed to call-in (read: hire at some expense) the services of an expert to help with anything barring actual data-entry; sorry Maam, you cannot simply change to another database, let me write a doohicky to do it for you.

      Today, it seems that the attitude in the Kubuntu-version-of-Linux is pretty much the same: I, mere mortal, cannot be trusted to use my machine. BALLS. If only the programmers are enabled then they need to consider the end-user. At first I thought the instant feedback of crash-info was a great idea. But it always displays the message that "This information is not adequate. You need to install some software to get better info". OK, install it. "Sorry, you don't have the right 'dependencies'" Well FOR FUCK's SAKE, why have you wasted my time with such banal sh1t? I repeat IANAP, I am not a programmer and have no intention of learning to be one (at 66 years old) just to peer through your veils of secrecy.

      Come back Mr Gates, I expected such crap from You.

      Geoff

    13. Re:Linux? Yawn... boring... by kgo · · Score: 1

      Low level kernel development will always be a bit of a niche thing. But...

      You do realize that ten-to-fifteen years ago, there was this exciting new thing called the world-wide-web that provided a lot of opportunities. And many people were writing stuff for that in perl/php/java/whatever. Writing things like google and amazon and heck even imdb. There were a lot more opportunities to change the world and get rich than writing iBestSushiInAlberquerqie.app or for the iPhone or FreeCell10000 for Android.

      --
      Can you construct some sort of rudimentary lathe?
    14. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      He sounds like most other people I know who've worked on the kernel, so I don't know why you'd get that impression.

    15. Re:Linux? Yawn... boring... by kamochan · · Score: 1

      It's probably not the best solution, but it will do, and it has the advantage that it's a workable-but-not-ideal solution everywhere you want to use it.

      According to the Unix Hater's Handbook, that's basically the definition of unix.

    16. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      Wow, there's not a single point in this comment that I agree
      with. That's impressive!

    17. Re:Linux? Yawn... boring... by Cyberax · · Score: 1

      OpenBSD? "Clean code"? In the same sentence?

    18. Re:Linux? Yawn... boring... by demonlapin · · Score: 1

      You can write, and get paid for, iPhone apps in your spare time. You'll probably not get fantastically rich, but a few hundred bucks never goes amiss.

    19. Re:Linux? Yawn... boring... by kgo · · Score: 1

      Slashdot was written in someone's spare time... All I'm saying is there were plenty of shiny new things back then in the ancient olden times before smart phones that were sexier than kernel hacking. A lot more shiny new things and opportunities between 1995 and 2000 than there are now. It's just silly to say that the dot-com-mania era didn't have anything more exciting to offer than today's smartphones.

      --
      Can you construct some sort of rudimentary lathe?
    20. Re:Linux? Yawn... boring... by Bigjeff5 · · Score: 4, Insightful

      ...the thing that I have found increasingly unattractive about FOSS in general is that it all too often becomes an exercise in cliquishness and faddishness to the exclusion of actually serving users...

      (emphasis mine)

      You've just hit the nail on the head - FOSS comes from a Unix culture, and Unix has never been concerned about the end user. In the Unix world, the System Administrator is the end user, so the entire thing is geared toward making things easier from an administrative point of view. This is why everything is command line based, everything is kept in plain-text config files, etc. Linux obviously inherited this from Unix, and FOSS has inherited this from Linux. Only the rare project like OO.org and others that are plainly and obviously intended for people who are not going to be willing or able to modify the software have any kind of focus on serving the user.

      Case in point, look at GUIs in Linux. KDE gives you a billion options, GNOME gives you three. For heaven's sake, is there no middle ground? And neither one of them look as nice as OSX or Windows, though they do now seem to be competing with a version of Windows that is almost a decade old.

      Seriously, this is why only nerds and masochists use Linux. For anybody who doesn't feel like spending all of their time tweaking the operating system, they just use Windows or OSX. There is nothing Linux can do that either of those can't, am I supposed to torture myself just to save 50 bucks on the price of a computer? Get real.

      That turned into a bit of an anti-Linux rant, but it all comes down to the fact that people are going to develop for the systems they use. If more people want to use Windows, more people are going to develop for Windows. Add to that a barrier to entry of 4 million lines of code, and it's no wonder new developers are shunning the Linux kernel.

      --
      Security is mostly a superstition... Avoiding danger is no safer in the long run than outright exposure. - Helen Keller
    21. Re:Linux? Yawn... boring... by Nethead · · Score: 1

      No, mod THIS guy insightful!

      --
      -- I have a private email server in my basement.
    22. Re:Linux? Yawn... boring... by Guy+Harris · · Score: 1

      Anyone that wants to tinker with kernels as a hobby is much better breaking open FreeBSD (a microkernel architecture reduces the learning curve since there are well-defined, stable interfaces between the subsystems)

      If so, then why are you recommending FreeBSD, which has a monolithic kernel?

    23. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      > ...to the exclusion of actually serving users...

      A moment of devilish advocacy here: wow. Massive entitlement issues for someone else's project?

      Actually, the nature of open source projects - all the code is right there for the taking - suggests to me that these mythological awesome UI developers being shunned by rude cliquish developers might not actually exist. Else they'd have taken the mostly-working code and forked it, fixing the UI side. It's weird that projects get forked for plenty of other reasons, but never for UI. (Further evidence of the scarcity of knowledgeable UI developers would probably be in how horribly sucky a lot of paid corporate stuff looks. If qualified people can't be found to do something for money, qualified people willing to do it for free are probably even more rare...)

    24. Re:Linux? Yawn... boring... by TheRaven64 · · Score: 1

      The grandparent gave IMDB as an example. This was written by a student at Cardiff university as a final-year student project. He sold it for enough money never to need to work again a few years later (and now farms sheep in Australia and doesn't own a computer). He also worked on setting up arXiv.org, using a lot of the same ideas as IMDB.

      A decade earlier, there was the microcomputer revolution, when people were developing games and other software in their spare time and making a lot of money. Some, like Bill Gates, made really huge amounts.

      --
      I am TheRaven on Soylent News
    25. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      For heaven's sake, is there no middle ground?

      It's a free market, Choose the one you like.

      am I supposed to torture myself

      You're a bigot. Linux is just as usable as Windows once set up. Some things Windows does better, some things Linux does better.

    26. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      Case in point, look at GUIs in Linux. KDE gives you a billion options, GNOME gives you three. For heaven's sake, is there no middle ground?

      Sure. XFCE. Next question?

    27. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      You're a bigot. Linux is just as usable as Windows once set up. Some things Windows does better, some things Linux does better.
      (emphasis mine)

      That's what OP was talking about. You need to spend time setting up the computer. I've been a Linux user from 1999-2008 when I decided I had more to do than solve issues with dependencies almost every time I've upgraded Ubuntu (yeah, the user-friendly distro) and switched to OS X.

      A few weeks ago I switched my brother's laptop do Windows 7. Wanna know how many hours I've spent setting up it? No more than the usual 20-30min installation. SRSLY.

      All shit was already configured the way I wanted it to be. I'm sure Ubuntu is like that already but it's the little things that count and that's where Linux falls short. Just take software installation as an example of something Linux users think is one of the solutions for the world: central repository. Awesome. Except that it never took off outside Linux (maybe now with App Store and Android Market and whatever MS is selling). Do you know what users want? ANOTHER USER FEEDBACK'S not a freaking review by the packager. It's not easier if it's irrelevant.

    28. Re:Linux? Yawn... boring... by Anonymous Coward · · Score: 0

      Oh look, astroturf.

    29. Re:Linux? Yawn... boring... by shaitand · · Score: 1

      An example for the parent would have been a sexier kernel, the examples provided were higher level platforms.

    30. Re:Linux? Yawn... boring... by Americano · · Score: 1

      You're a bigot. Linux is just as usable as Windows once set up.

      Which is to say - not all that usable?

      Some things Windows does better, some things Linux does better.

      You're right - Windows is hands down the best in running spyware, antivirus software, and blue screening. Linux definitely takes the lead in having difficult-to-understand user options and "almost" supporting a lot of common peripheral hardware in a way that doesn't *totally* break.

    31. Re:Linux? Yawn... boring... by aBaldrich · · Score: 1

      Zoom in anywhere in the screen, use "pencil" tool to highlight, window transparency, maximumize, shaded or animated windows and menus, multiple workspaces, desktop cube and nice eyecandy. It's all one click away in my linux desktop. And if you want, you can tweak it and make it look like Mac or Windows.

      --
      In soviet russia the government regulates the companies.
  8. users not programmers by Anonymous Coward · · Score: 0, Troll

    What I am noticing in general is that young computer users are just using computers (games, chat, internet), not programming them.

  9. Microsoft Dreamspark by Nimey · · Score: 2, Insightful

    if you're a CS student at many .us universities, Microsoft will give you free-as-in-beer software, including but not limited to Visual Studio and Windows Server.

    First one's free, etc. Good way to get them hooked.

    --
    Hail Eris, full of mischief...

    E pluribus sanguinem
    1. Re:Microsoft Dreamspark by negRo_slim · · Score: 1

      They give the software to any student; CS or otherwise.

      All you need is a valid student e-mail...

      --
      On the Oregon Cost born and raised, On the beach is where I spent most of my days
    2. Re:Microsoft Dreamspark by chaosite · · Score: 1

      I get MSDNAA at the Technion (.il ... )

      Visual Studio, Windows 7, Server, and so on...

    3. Re:Microsoft Dreamspark by Nimey · · Score: 1

      Heh. Evidently possessing a .edu email address is all you need. I'm not a student anymore and just got accepted into their program.

      --
      Hail Eris, full of mischief...

      E pluribus sanguinem
    4. Re:Microsoft Dreamspark by Anonymous Coward · · Score: 0

      First hit is always free.

    5. Re:Microsoft Dreamspark by shutdown+-p+now · · Score: 1

      But wait, Linux is free as well, always was. Same for all development tools. Something is missing from your argument there.

    6. Re:Microsoft Dreamspark by mehrotra.akash · · Score: 1

      Even later you can use the Express editions for free and they can be used for commercial software as well

      Dreamspark software cannot be used for commercial projects

    7. Re:Microsoft Dreamspark by Anonymous Coward · · Score: 0

      The missing component might be "people who'll support your software without being assholes about it."

    8. Re:Microsoft Dreamspark by pspahn · · Score: 1

      My basic and fundamental 200 level programming class ended this week. We write pseudocode and learn concepts. The final project, that we were supposed to be spending our time on, was not an actual application, but an outline of the concepts with fake code.

      Last night I downloaded VS 2010 Pro and wrote a fully functional program that does exactly what our final is supposed to do. The 2.2 Gb download took an hour and a half, and getting the application built took another hour or two.

      If all I care about is instant gratification, why should I bother learning fundamentals, if I can just whip something up in VB code and call it done?

      /relevant sarcasm

      --
      Someone flopped a steamer in the gene pool.
    9. Re:Microsoft Dreamspark by Anonymous Coward · · Score: 0

      Just so you know, MS can check your "currently enrolled" status.

      If you are found not to be a student/staff anymore they can cause headaches for you.

    10. Re:Microsoft Dreamspark by Nimey · · Score: 1

      FWIW I pulled the same stunt with the $30 student edition of Win7 in December.

      --
      Hail Eris, full of mischief...

      E pluribus sanguinem
    11. Re:Microsoft Dreamspark by $RANDOMLUSER · · Score: 1

      Nimey@AdmiralAckbar.edu ?

      --
      No folly is more costly than the folly of intolerant idealism. - Winston Churchill
    12. Re:Microsoft Dreamspark by Hatta · · Score: 1

      But you can't contribute code to those free as in beer Microsoft projects. How does that draw people away from coding for the Linux kernel, who I assume are interested in learning and doing systems programming?

      --
      Give me Classic Slashdot or give me death!
    13. Re:Microsoft Dreamspark by Bigjeff5 · · Score: 1

      Linux dev tools are a pain in the ass to use compared to MS's Visual Studio line. You're either dealing with a glorified text editor or you've got an IDE that's so complicated and convoluted you won't master it even after using it every day for 5 years. No useful tool should be that complicated, because it's the code you should care about, not the tool itself. Contrast that with VS, where you can crank out good code fast without an absurd learning curve, and it's pretty easy to see why MS products are more popular, particularly among new programmers.

      And if you really really want to go the text editor route, MS gives away all its compilers and runtime libraries for free. They only sell the IDE.

      --
      Security is mostly a superstition... Avoiding danger is no safer in the long run than outright exposure. - Helen Keller
    14. Re:Microsoft Dreamspark by shutdown+-p+now · · Score: 1

      DreamSpark is non-commercial, yes, but there's also BizSpark, which is for startups (students or not) - signing up doesn't cost you a cent, you get pretty much the equivalent of MSDN subscription with all the software, and also the license to run servers in production, and you only have to start paying for the licenses when your annual revenue is $1M. Or, if you fail to get there in 3 years, all you owe is $100 - so effectively that's how much the program costs.

    15. Re:Microsoft Dreamspark by Dragoniz3r · · Score: 1

      People interested in learning and doing systems programming are wholly out-of-place trying to contribute code to the Linux kernel. The very first time they submit a patch they'll be on the receiving end of a few of the entrenched developers telling them they're stupid for even thinking that whatever they did was better than $other_mechanism.

      For that matter, it can be difficult getting into FOSS application development too. I saw recently several of the amarok devs reaming some guy a new asshole because he proposed adding menu items for shuffle and repeat (which can currently only be accessed by a small, easy to overlook button in the corner of the window). The picture I've gotten of FOSS development is of a bunch of established devs with their pet features, code, and design, defending them to the last, and abusing anyone who proposed an alternative.

      Seems to me that the only way for an inexperienced developer to get involved with "contributing" to projects is to either endure the abuse until he/she learns what they're doing, or to fork the project and maintain it themselves so they can get their features implemented immediately. And who wants to maintain their own branch?

    16. Re:Microsoft Dreamspark by Anonymous Coward · · Score: 0

      Ahh thanks, didn't know about this one.

    17. Re:Microsoft Dreamspark by jeremyp · · Score: 1

      But you can't contribute code to those free as in beer Microsoft projects.

      Yes you can. You can apply for a job with Microsoft, and, if you get in, they'll pay you for your contributions too.

      How does that draw people away from coding for the Linux kernel, who I assume are interested in learning and doing systems programming?

      By drawing them in to the Microsoft world. You can't write Linux kernel code using the Microsoft tool chain. On the other hand, you can write GUI applications that most of your friends can use.

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    18. Re:Microsoft Dreamspark by Bigjeff5 · · Score: 1

      Damn, that's good to know. Visual Studio + MSDN usually runs about $600 minimum. $600 is still a pretty good deal considering you get a half dozen pieces of software that cost around $5k each included. It's only for development purposes, of course *ahem*.

      --
      Security is mostly a superstition... Avoiding danger is no safer in the long run than outright exposure. - Helen Keller
    19. Re:Microsoft Dreamspark by h00manist · · Score: 1

      Microsoft stuff has always been free. For students now, it's free with official approval and marketing. For others it still requires finding a serial number or patch and shrugging at the law. Not a lot actually changed, besides the marketing.

      --
      Build your own energy sources from scratch. http://otherpower.com/
    20. Re:Microsoft Dreamspark by h00manist · · Score: 1

      Instant gratification is even more instant with drugs. And a gun, or even electronic crime, can provide very fast enrichment too. No need to bother with study, degree, job, career, etc.

      --
      Build your own energy sources from scratch. http://otherpower.com/
    21. Re:Microsoft Dreamspark by shutdown+-p+now · · Score: 1

      I know what you mean, but this has changed recently - Qt Creator is a surprisingly decent RAD environment on Linux - lets you jump right into the fray, single-button build & run, visual UI designer, acceptable code completion, etc. It looks rather inspired by VS, actually. Also, it's pretty good even on Windows, if you want RAD with C++ - VS has a better code editor, sure, but MFC is so dated compared to Qt...

      It's rather ironic that it took a corporation (Trolltech - and I believe that Creator was mostly developed after Nokia takeover?) to do this for Linux, while similar community-driven attempts (e.g. KDevelop) don't seem to fare anywhere nearly as well, even though they've been developed for much longer.

    22. Re:Microsoft Dreamspark by jisatsusha · · Score: 1

      Any student can get Visual Studio, Server 2008, etc, but only CS students can get Windows 7 for some reason. Not that it really matters all that much, Windows 2008 R2 is virtually the same thing, it just requires some tweaking to use it as a desktop OS.

    23. Re:Microsoft Dreamspark by NJRoadfan · · Score: 1

      Whats the deal with *nix and makefiles? Finding any decent documentation on how to build the code you wrote into an executable file is a chore, it only gets worse when you have library dependencies. GNU automake has terrible documentation, its almost like they don't want you to program for the platform.

      Meanwhile, the one thing bloated IDEs get right is... well... building executable files, after all that is the point. You point it to the directories where your dependencies are stored and click "build". No fighting with makefiles, no wondering why the configure script broke, no hassles.

      People talk alot of crap about Microsoft's shoddy products. The one thing they have always gotten right is their dev tools. They are polished, mature, competitive in features, and usually "just work".

  10. Considered a solved problem? by Geirzinho · · Score: 5, Insightful

    Could it be that since Linux has become somewhat mainstream kernel developement is considered a "solved problem" to young programmers looking for an interesing project? Maybe new programmers are tackling other open source problems instead.

    1. Re:Considered a solved problem? by TalmerS · · Score: 1

      Yes, the kernal is stable, but it's the GUI and other user friendly stuff that are now required to make Linux mainstream. Kids used to Windoze expect GUI based apps in Linux, and if such as app doesn't exist then perhaps they write one.

    2. Re:Considered a solved problem? by jellomizer · · Score: 4, Insightful

      In a way but, I think it is a case Linux isn't as "Sexy" as it use to be. Back in the days of the 90's When Linux first came out. A lot of its young developers were looking for more of an adult OS to work with. DOS and Windows 3.1 were quite flimsy in the OS Department. Even WIndows 95 and 98 were just a slight better. For real computing you needed Unix or VMS. Linux offered us a way to use a Unix like system, and we found that compared to the Windows and Mac platform at the time it was that much better in terms of stability, security and performance and it being free (as in beer) helped. And so they Loved their new found OS and wanted to support it and make it grow.

      However nowadays Windows for consumer use is running with the NT Kernel, making it much better in stability and performance even in security, windows is now a grown up OS. (if it is better or worse then Linux is an other debate)

      As well durring the past 10 years. When Microsoft was still stuck with XP. Linux development didn't really do to much to get ahead. They had a chance to trounce the evil Microsoft and in my opinion they blew it. The timing of the GPL 3 was one thing, For linux to grow and be more popular we needed TiVoization we should have a bunch of Linux enabled smart phones, Linux developers didn't understand end users... They made it good for Grandma and Advanced Users but left out a big middle. Still troubles with Sound, and Video Drivers heck even Cut and Paste are still a problem.

      When commercial development came across to Linux such as IBM it changed the shape and direction for Linux. It moved to a cheap way for big companies to run their servers, and get some good press at the same time.

      Young programmers are interested in Games, Mobile Devices, Internet based applications and social media... Young programmers during my day were interested in Games, Web Sites, Server Side applications, and Desktop software. So my generation we a better fit for Linux then the current one is.

      Also with all the stuff that is we are bombarded with on the media getting outraged that software is free or not just doesn't seem like a big thing to put a fuss about anymore. And in a bad echonomy kids are focusing on jobs that will make them money... If they want experience don't wast your time supporting open source get an internship heck you may get paid and it looks better on your resume.

      Employers today don't care to much about open source development... At my place we often use it as a way to weed out people for hiring, (And this is from a C level boss who chose to have Linux as his only OS) Why because you have to do code that isn't fun or interesting all the time.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    3. Re:Considered a solved problem? by retiarius · · Score: 1

      Writing as a old fart, Unix (not the warmed-over clone called Linux)
      was *itself* declared dead by Rob Pike in 1991, infamously with
      the flip "Unix is not only dead, but it's starting to smell really bad".
      Yet young whippersnapper Torvalds didn't listen, nor did
      Sun Microsystems listen to Bill Joy and kept hacking on the
      kernel (yes Solaris was already a solved problem called BSD).

      All while the likes of Apple took the best extant Unix and built
      something interesting upon it. Although already retired from
      Unix/Linux world, trading all my shares in the likes of
      SUNW / RHAT and their ilk for AAPL was "technically sweet",
      (old term from J. Robert Oppenheimer).

      Ideas that survive are ones which stand on the shoulders of
      giants, in this case Ritchie and Thompson, not a bunch of
      mere acolytes.

    4. Re:Considered a solved problem? by VojakSvejk · · Score: 1

      When I was a younger fellow, I did a bit of work on kernel, xfs tools, mplayer, coreutils, and a few other things. Now, chances are, when I buy New Laptop X, my fave Linux distro goes right on with little trouble (except maybe for #@*!(*@ proprietary NVidia driver), so there's not much incentive to work on it.

      That said, for a huge pile of source, it's pretty damned easy to use a tool like grep to find a problem and fix it when I need to.

    5. Re:Considered a solved problem? by reallyjoel · · Score: 1

      No, it's marketing that is required to make it mainstream. Sorry, next isn't going to be The Year of Linux either.

    6. Re:Considered a solved problem? by Eravnrekaree · · Score: 1

      You make a lot of good points. I think one of the big mistakes as to why Linux ois still the desktop niche it is, is lack of a binary stable driver interface to make it easier for hardware manufacturers to support it. So hardware support remains crappy, and people really dont want an OS that they are never sure if it will work with hardware. An OS will just never catch on like that.

      Linux is used on servers because its free, and IT people can put up with all of the useability nightmares that would drive off grandma. Linux however is a time consuming system to use. I admit even at the server end, Windows is faster to set up because of the GUI. Its easier to learn a GUI than configuration files. Ive wasted a lot of time trying to coax some arcane config file when something can be done in 1/20th the time on Windows. Id bet if Windows didnt cost so much there would be more uptake of it than Linux.

      The economic reasons are also interesting. Unfortunately we do not live in a socialist utopia. Ideally people would make software to contribute to and make the world a better place. But we live in a world that has a capitalist mentality and where money is involved in everything, that encouraged closedness and all the ill behaviours that we see, the things that open source software has been so opposed to.

      In the past in the 90s we had an economy different from today. There was perhaps less job security anxiety and people felt relaxed enough to spend spare time on the open source projects. The present economy has created a desperate mentality that has diminished altruism. The economic situation today is bad and I believe it is worsening for several reasons (peak oil, overpopulation, and increased greed and wealth consolidation by the elite).

      Things look a lot bleaker than they did in the 90s.

    7. Re:Considered a solved problem? by Eli+Gottlieb · · Score: 2, Insightful

      Linux is at a local maximum. You can't really make it much better at being a Unix-workalike general-purpose system in any hugely interesting ways, and if you want to do really interesting operating-systems work you have to go for a radical redesign that breaks with the Unix Way and abandons backwards compatibility.

    8. Re:Considered a solved problem? by Anonymous Coward · · Score: 0

      Young programmers are interested in Games, Mobile Devices, Internet based applications and social media... Young programmers during my day were interested in Games, Web Sites, Server Side applications, and Desktop software. So my generation we a better fit for Linux then the current one is. [...] And in a bad echonomy kids are focusing on jobs that will make them money...

      You've hit the nail on the head. For example, Linux (and the world wide web) was a strong emerging technology 15 years ago, but it has matured and become mainstream in IT shops. Being mainstream, people need to have X years of experience, which correlates to their current age, in hindsight. Any job hardly "reachable" becomes a hobby not sought after; the newer tech you mentioned doesn't yet require as big a learning curve to get hired. It is also fresh and devoid of kernel complexity baggage and bureaucracy (sad how many bug reports for quirks are marked "won't-fix" or stamped as "kernel guys think app devs should implement this and vice-versa." ie: how Gnome's NetworkManager can't natively handle ipv6)

      I think that a big part of the issue is that the CS / IT field is relatively young. Picture the technologies the Parent Post mentioned as an ice-cube tray with water being poured to fill dozens of cube's tech. Other careers already have all of their cubes filled up with hobbyists / jobs and defacto requirements except for PhD level stuff. IT had many more unfilled cubes 15 years ago, and you older programmers went and "solved" problems and raised the bar to entry by filling the available cubes / slots / empty code trees. Younger devs can't learn enough to get hired or drafted / submit code into these veteran's spots without defacto experience levels that are clearly set (after 15 years of figuring most everything out.)

      So what is being left? The empty ice cube areas are still improving slowly, and have more lax rules (have you seen the crapware iPhone apps out there? they're the equivalent of 1990's incomplete shareware.) E-commerce website development is pretty much a finished area, so companies don't need to pay people for something that was completed by other devs years ago. They do pay newish devs who are in touch with these new devices and enjoy the tech first hand. The young devs' job is to create a facebook or twitter module that will put them out there to new customers. If you're one of the aforementioned kernel devs, think how your enthusiasm to play with linux and work / fill up the tray is similar to the younger devs, and how you probably don't like their new tech as much as they do (and vice versa.) Matter of fact, older devs probably could easily get into many of these new jobs, but the mindset of using the apps requires that you enjoy social media, and we all know how that endangers our privacy... the young devs don't much care, and they have that advantage.

      Also, /. seems to not notice that social media, games and mobile devices are all for FUN (in a mainstream, point of view --no Linuxes fit here.) Linux, Websites / webapps and Win32 Desktop apps were all meant for "serious business," and is compensated pretty well if you have the serious interest required. Our young devs are more focused on fun, movie downloads and doing cool fun stuff. Win32 had a very cryptic API that people avoid for .NET's, so barebones C++ development is also dying as a hobby.

    9. Re:Considered a solved problem? by garphik · · Score: 1

      Spot on. I am aligned to this view point, OS pool seems to be full and they all do the same things, no innovation coming out from there means its a solved problem. Thus there will be less people attracted towards it trying to create a problem and then try to solve it. I also think the current study curriculum has hit a wall, until they have open ends there would be no new stuff in OSs.

    10. Re:Considered a solved problem? by NJRoadfan · · Score: 1

      Linux is at a local maximum. You can't really make it much better at being a Unix-workalike general-purpose system in any hugely interesting ways, and if you want to do really interesting operating-systems work you have to go for a radical redesign that breaks with the Unix Way and abandons backwards compatibility.

      I hear the GNU Herd project is looking for developeres.

  11. Talent by Nerdfest · · Score: 4, Insightful

    Could it be that there's not as many young coders that have the skills required? We've been trying for years to dumb down development and this may be part of the result. Perhaps if the kernel was written in PHP and javascript ...

    Wow, I sound like a cranky old man.

    1. Re:Talent by AnonymousClown · · Score: 1
      CS students are still learning 'C', OS & compiler development, datastructures, etc....

      Now, let's hurry up and get some pudding before they run out and Matlock comes on!

      --
      RIP America

      July 4, 1776 - September 11, 2001

    2. Re:Talent by Anonymous Coward · · Score: 0

      Perhaps if C# or Java were comprehensive enough to write OSs... OK. lets give bleeding edge technology a break.. how about C++? How about abstracting out C and using something that delivers productivity?

      P.S. You can commute to work on your tractor all day long, cranky old man:)

    3. Re:Talent by mechanyx · · Score: 1

      I don't know anything about C# but I thought Java was: http://jnode.org/

    4. Re:Talent by Anonymous Coward · · Score: 0

      Could it be that there's not as many young coders that have the skills required? We've been trying for years to dumb down development and this may be part of the result. Perhaps if the kernel was written in PHP and javascript

      Don't give em' any ideas.....

      Linux has gotten big and boring, but I don't think it's just community:

      These days you find the community centered on the BSD'ish projects, DragonFlyBSD is a good one for community, FreeBSD isn't quite as tight-knit, but it's still a better community.

      The BSD people tend to be older than linux punks, I don't think it's strictly a community thing.

      I observe the kids don't remember the days of DOS "pr. processor" licensing as well as the other Microsoft hand-cuff shenanigans (or IBM's for that matter) because of this, it's not as strong a motivator.

      Much like feminism, Open source has become the "norm", you don't see many young women burning bras either.

    5. Re:Talent by JKDguy82 · · Score: 2, Interesting

      It's true. I hate programming in C, much less moving down to assembly. On top of that, kernel programming is just not that interesting to me.

      Sure, poo-poo PHP and JS. They have their place, and some really interesting stuff is being built with them (especially with PHP >= 5.3, or server-side JS). Quite frankly, I'll program in any language that gives me the tools to *easily* create what I've constructed in my head.

      And if something I build happens to run slowly to the point where I have to drop down and code something in C, I'll pay one of you "cranky old men" to do it for me. But most of the time it's just an architectural problem that wouldn't have been created any differently with a different, lower level, language (for example, caching). After all, it's not like I'm crunching the latest numbers that come out of CERN.

      Not that I don't value kernel development, trust me, I do.

    6. Re:Talent by b4k3d+b34nz · · Score: 4, Interesting

      Back when that kernel was first written, it was done by a bunch of young coders that learned kernel development by developing the kernel. They didn't have some huge insight right off the bat, they learned from experience, like the rest of us. As the kernel became mature, coding maturity and experience became more of a requirement (in theory) as well.

      There are plenty of young coders with a lot of passion, intelligence, and problem solving abilities that haven't been spoiled by the admittedly poor quality formal education system. Are they developing a Linux kernel? No, but they're in the garage tinkering with their language of choice, becoming smarter.

      As the field of software development has opened up, there are a lot more dummies that joined the ranks that need their hands held, but that certainly doesn't preclude very smart developers from joining in.

      P.S. I've met a lot of really stupid old coders twice my age that can't answer basic problem solving and programming questions during interviews.

      --
      Grammar Lesson: you're is a contraction of "you are"; your means you possess something; yore means days gone by.
    7. Re:Talent by Anonymous Coward · · Score: 0

      I'd help. I can code decent PHP and javascript. Can't code much else. (No "whooshes", please. I got the joke, I'm just sayin'...) Posting anonymously out of shame...

    8. Re:Talent by Anonymous Coward · · Score: 0

      Or Java. Seriously, when I went to Uni 6-ish years ago now, it was Java-and-you're-supported, or C/C++-if-you-already-know-it. C/C++ took up half of my main programming lectures for half a semester, and was basically "here's C++ for Java devs". No proper OO, no assignments that needed more than simple integer math and cout/printf, no pointers other than a brief mention. Forget structs and unions/malloc and free, etc. etc. They weren't even mentioned.

      I actually learned more C theory as asides in my OS lectures than my programming ones.

    9. Re:Talent by Anonymous Coward · · Score: 0

      D should do the trick. It's basically a new take on an object-oriented language with brackets-notation that:
        * builds to native code (at least current compilers),
        * includes optional inline-assembly,
        * allows you to use pointers and manual memory-management (but also has a garbage-collector by default)
        * performs roughly at level of C++, some things faster than C, some things slower

      It should probably work for a systems/kernel-level language, but still has many of the features of higher-level language such as C#.

    10. Re:Talent by synthesizerpatel · · Score: 1

      While this is probably written sarcastically.. It's worth noting that anyone who wants to donate time to open source can usually find some work to do. In process, you can learn about things you wouldn't otherwise encounter. You'd be surprised how helpful people can be once you've helped them first.

      Back when OpenBSD started out I can't remember but I did something for Theo and in return he walked me through installing it over the phone.. (true story)

      You never know what gestures that may seem easy to you will reap rewards later on.

    11. Re:Talent by Anonymous Coward · · Score: 0

      I think you hit the nail on the head here. Most of the college graduates we get these days took a semester of C++ and remember something about C not having classes. They did most of their college work in either Python or Java and the very idea of learning assembly scares them. These kids have trouble reading well documented, well organized C code, let alone the kind of code the kernel features.

    12. Re:Talent by Anonymous Coward · · Score: 0

      I for one welcome our javascript kernel overloards

    13. Re:Talent by VGPowerlord · · Score: 1

      I don't know about Java, but I thought C# was: http://research.microsoft.com/en-us/projects/singularity/

      Granted, this is by Microsoft...

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
  12. linux should be like HURD by Zurk · · Score: 1, Interesting

    linux should become more modular ... dare say like HURD where individual contributors can own their own slice completely and implement it the way they want as plugin modules rather than monolithic blocks. yes i know about the whole kernel wars but linux grown up. its time for it to be a microkernel and attract developers for long term viability. a monolithic block of code was fine to bootstrap it but not anymore. we have multicore processors with fat pipes ... things microkernels were built for. ipc overhead is negligible if your ipc is your L3 cache.

    1. Re:linux should be like HURD by CRCulver · · Score: 1

      On one hand, if Linux is seen as old school and people are choosing to develop projects that offer some new technical innovation, than it is a pity that HURD isn't getting more lovin'. On the other hand, I've always been turned off to getting involved in HURD because the current lead developers don't seem to have any direction. How many times have they changed the microkernel since doing away with GNU Mach?

    2. Re:linux should be like HURD by Anonymous Coward · · Score: 0

      you mean linux should be more like plan 9, where file servers
      (in the kernel or otherwise) can be added by anybody with a
      simple, consistent file-base interface. bonus: kernel file servers
      can pass data with no copy.

    3. Re:linux should be like HURD by Max+Littlemore · · Score: 1

      Yeah. L4 FTW!!!

      --
      I don't therefore I'm not.
    4. Re:linux should be like HURD by Anonymous Coward · · Score: 1, Insightful

      Well what are you waiting for? Grab the Linux kernel source and get crackin' sonny.

    5. Re:linux should be like HURD by CRCulver · · Score: 1

      Except that the GNU Hurd developers are no longer passionate about L4. From the Wikipedia article:

      From 2004 onward, various efforts were launched to port the Hurd to more modern microkernels. The L4 microkernel was the original choice in 2004, but progress slowed to a halt. Nevertheless, during 2005, Hurd developer Neal Walfield finished the initial memory management framework for the L4/Hurd port, and Marcus Brinkmann ported essential parts of glibc; namely, getting the process startup code working, allowing programs to run, thus allowing the first user programs (trivial ones such as the hello world program in C) to run. Since 2005, most of the developers' time has gone into thinking about Coyotos (EROS successor). In 2006, Marcus Brinkmann and associates met with Jonathan Shapiro (a primary architect of the Coyotos Operating System) to aid in and discuss the use of the Coyotos kernel for GNU/Hurd. These discussions continued into 2007, but progress was slow. In April 2009, Shapiro announced that work on the Coyotos project had ceased. As of 2008, Neal Walfield is working on the Viengoos microkernel as an alternative to GNU Mach or L4.

    6. Re:linux should be like HURD by Compaqt · · Score: 1

      Yeah, I'd love for HURD to pick up steam.

      For those who don't know, HURD is the official GNU kernel.

      http://www.gnu.org/software/hurd/hurd.html

      I've been checking into the status of HURD for ever since I heard of free software. It's been slower than watching paint dry.

      But I still hold out hope for rapid progress when it starts to get a footing. The one big advantage is its modularity and extensibility. I'd like to think that would mean we'd get a more responsive free desktop one day without the burdens of big-iron Linux.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    7. Re:linux should be like HURD by cduffy · · Score: 1

      Meh. If I were going to work on a microkernel-based OS, I'd rather it be something like QNX or FMI/OS (formerly VSTa); something small and focused on embedded space rather than trying to be a general-purpose OS, with all the work and headaches that implies. HURD's system requirements (32MB RAM?!) and the project's general lack of direction makes it poison to anyone who wants to go out there and use what they've learned to build an embedded product.

      There's lots of hobbyist-targeted embedded hardware around, and qemu's gdb support provides development capabilities that previously would have meant shelling out thousands for an Abatron; embedded space is a good place for a budding hobbyist to be, and also provides ample opportunities to use less-mainline operating systems (after all, unless your hardware is network-attached, the set of external interactions is finite and straightforward to test; also, advantages of microkernel operating systems -- being able to restart subsystems whose failures would be kernel panics in a monolithic kernel -- can be argued as a substantial advantage in end-to-end system robustness).

      So -- microkernels good, HURD meh.

    8. Re:linux should be like HURD by Exitar · · Score: 3, Insightful

      And how many young developers does HURD attract?

    9. Re:linux should be like HURD by TheRaven64 · · Score: 1

      HURD is becoming a bit more active recently. I'm registered to mentor students for the GNU project's GSoC submission this year, and four of the students in the 'pending acceptance' category are applying to work on HURD. Architecturally, I like HURD and it's got a really nice community. If it weren't for the license, I'd probably be quite actively involved.

      --
      I am TheRaven on Soylent News
    10. Re:linux should be like HURD by TheRaven64 · · Score: 1

      Four are 'pending acceptance' for the GSoC this year. I'm not sure how this compares with Linux.

      --
      I am TheRaven on Soylent News
    11. Re:linux should be like HURD by Anonymous Coward · · Score: 0

      HURD is poised for massive growth - I predict 2011 will be the year of the HURD desktop.

  13. It's because Windows IS easier for a greenhorn by Necreia · · Score: 0, Troll

    Young developers are typically interested in Game Development of some form. C# & DirectX[XNA] is worlds easier than the (usual) counterpart of C++ & OpenGL. It's a sad direction, but it's the result of 'path of least resistance'. They are typically not aware of the engines/options actually available when they are newbies.

  14. Where did they go, George? by nhytefall · · Score: 4, Interesting

    Could it be that the massive code base and declining sense of community from corporate involvement has driven young open source programmers elsewhere?

    Nah, they have all just decided to get paid, rather than work for free... (end.sarcasm)

    In all seriousness, a lot of the new generation of programmers are starting out in large corporations, as a means to repay student debt, get themselves established - and are able to do that code work in the open-source world, as corporate acceptance and utilization of OSS for application development grows. This, unfortunately, comes with a flipside - those same developers are not available to do the work the hobbyists were doing a few years back, leading to the perception that the OSS movement is losing developers. The movement actually isn't losing developers - more and more of them are just being absorbed by NDA's :)

    Either that, or they have all decided to start writing flash games for Adult Swim.

    --
    0100010001101001011001 0100100000011010010110 1110001000000110000100 1000000110011001101001 0111001001100101
    1. Re:Where did they go, George? by Anonymous Coward · · Score: 1, Insightful

      as corporate acceptance and utilization of OSS for application development grows

      I wish I worked for one of those.. FOSS has pretty much been declared the enemy where I work.. with a company wide initiative to destroy anything FOSS without even bothering to consider it might be ok to use. The rational being that even if we are 99% sure we are good to use it.. it's not worth it due to the risk...

      This suing big companies over GPL violations sounded awesome on the outside.. but I think has done a lot of damage to acceptance of FOSS at large companies. Smaller companies can still roll the dice.. but if you're a big juicy enterprise with lots of money to lose.. just not worth it.

    2. Re:Where did they go, George? by Anonymous Coward · · Score: 0

      The NDA thing is not very far off. I am not exactly a "young" developer anymore but the company I work for claims to own anything I develop during my tenure there.

    3. Re:Where did they go, George? by init100 · · Score: 1

      but if you're a big juicy enterprise with lots of money to lose.. just not worth it.

      Big enterprises usually have lawyers available. Any semi-competent copyright lawyer should be able to tell them what they can and cannot do. Besides, it's not like the GPL is hard to understand, it's much simpler than the usual EULA.

    4. Re:Where did they go, George? by Anonymous Coward · · Score: 0

      Big enterprises usually have lawyers available. Any semi-competent copyright lawyer should be able to tell them what they can and cannot do. Besides, it's not like the GPL is hard to understand, it's much simpler than the usual EULA.

      I've worked for a couple of Fortune 500 companies that had corporate mandates to prohibit the use of any open-source software. They don't care whether it's good or not, they don't care whether it's right or not, they only care that they won't have someone to blame if they get sued for using it.

    5. Re:Where did they go, George? by Anonymous Coward · · Score: 0

      > it's much simpler than the usual EULA.

      Most EULAs: Customer loses almost all rights and recourse for bad product, and gains no other obligations, and has clear case law, but is checked by a known adversary (BSA).

      MIT/BSD: Customer gains almost unlimited rights, loses recourse for bad product, and gains no other obligations, and has clear case law, but is not checked by any adversary.

      GPL: Customer gains some rights, but not others, which vary with how the software interacts with other software and with the intended use of the software, and may incur additional obligations under non-obvious circumstances, and will likely create case law in resolving potential disputes from known and unknown adversaries.

      Two of the above are easy to create corporate policy around, and are known quantities with respect to risk and ambiguity. The other... not so much.

      -M5B

    6. Re:Where did they go, George? by flatulus · · Score: 1

      The last company I worked for brought in an intellectual property attorney for a one-day seminar - to educate we developers on how "open source" works (from a legal perspective).

      I asked him about the legal aspects of using code "in the public domain." (I had a body of code I wanted to incorporate that was so marked.)

      He instructed us that there is no such thing as "public domain."

      I didn't (still don't) know whether to be amused at how ridiculous this statement was, or worry that maybe he's right!

    7. Re:Where did they go, George? by _Sprocket_ · · Score: 1

      This suing big companies over GPL violations sounded awesome on the outside.. but I think has done a lot of damage to acceptance of FOSS at large companies. Smaller companies can still roll the dice.. but if you're a big juicy enterprise with lots of money to lose.. just not worth it.

      I ran in to this attitude that "freeware" was dangerous back in the 90s. It has nothing to do with going after GPL violations back then. If it has anything to do with GPL violations today, then we have a serious case of management not understanding how licensing works (which wasn't the issue back in the 90s).

    8. Re:Where did they go, George? by Weezul · · Score: 1

      You know, the GPL v2 was never relevant to web service companies, desktop application companies, custom software companies, games companies. In fact, the only companies seriously effected were embedded systems, but they've always had many choices, yet still chosen Linux.

      --
      The Christian religion has been and still is the principal enemy of moral progress in the world. -- Bertrand Russell
    9. Re:Where did they go, George? by Anonymous Coward · · Score: 0

      That's a very arrogant and silly opinion..

      Big companies have large teams of competent lawyers.. and it's those lawyers that are coming back and saying the GPL is ambiguous from a legal perspective and using it is very high risk.

      Reading something and understanding it is completely different than legally analyzing something. Language like derived work .. while seemingly spelt out in the license and generally agreed upon by everyone.. can be interpreted differently and gets torn to shreds when held under the magnifying glass.

      If you are a small company .. who cares.. no one is going to come after you if you are following the interpretation that most people agree with.

      If you have millions to lose though.. it's a huge risk and almost never worth it if you can find a company who will basically write you up a "no strings attached" license.. which basically says "you give us a whole bunch of money.. you do whatever the hell you want with out stuff..".

    10. Re:Where did they go, George? by BitZtream · · Score: 1

      Does not compute.

      Since the NDA can't prevent them from meeting the requirements of GPL ... which would make it obvious they are working on the kernel ... making the numbers match up.

      Unless you're implying there are a whole bunch of people writing Linux kernel code that they are never going to distribute outside their company.

      In which case, I'm gonna have to call bullshit.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    11. Re:Where did they go, George? by Bungie · · Score: 1

      Actually I think thats more of a case of the "what if it breaks something, who can we go after?" mentality.

      --
      The clash of honour calls, to stand when others fall.
    12. Re:Where did they go, George? by _Sprocket_ · · Score: 1

      Actually I think thats more of a case of the "what if it breaks something, who can we go after?" mentality.

      That's one concern. Although I've also had plenty of experience with vendors who can't or won't fix issues. And management who didn't understand what support contract they paid for and what it did or did not cover.

      Then there was the belief that "freeware" couldn't be trusted because if it were worth using, people would charge for it.

    13. Re:Where did they go, George? by init100 · · Score: 1

      He instructed us that there is no such thing as "public domain."

      Here in Sweden, there is not really a public domain, since you cannot sign away all copyrights to a work. I don't know where you live, but obviously it is possible.

      IANAL though.

    14. Re:Where did they go, George? by LordNimon · · Score: 1

      The lawyer was right. The only way to get something into the "public domain" is to let its copyright expire, which at this point takes about 95 years. This means that there is no code in the public domain. All code is copyrighted and licensed, but the license may be as permissive as the public domain is.

      --
      And the men who hold high places must be the ones who start
      To mold a new reality... closer to the heart
    15. Re:Where did they go, George? by Americano · · Score: 1

      The problem is that not every software download & use is run by the copyright lawyers. Some young, enterprising engineer sees "It's open source, of course I can use it!" and builds a critical component of $COMPANY's new product, incorporating F/OSS code in a way that violates the GPL. He never ran the decision by legal, he just grabbed a copy from gnu.org - it's all free software, so what's the problem, right?

      There's a pretty big risk exposure there, so it's easier to simply say, "This is entirely prohibited."

  15. The Young want results by Anonymous Coward · · Score: 2, Interesting

    Linux is now mature and nearly unchanging. A young programer isn't going to be able to leave any mark on it. Mobile is the active space where new things are being designed and developed. In enough time that will mature and they will move somewhere else.

  16. I'm Mac. I'm PC. I'm Linux. by Anonymous Coward · · Score: 0

    This sums it up nicely, methinks.

    http://ajayu.memi.umss.edu.bo/rho/files/21/143/im-linux.jpg

  17. Younger people are not as intelligent. by Anonymous Coward · · Score: 0

    In my experience the US educational system just keeps declining. Kids are not very intelligent these days. I couldn't C code my way out of a wet paper bag, let alone create a kernel device driver for a peice of hardware.

    1. Re:Younger people are not as intelligent. by imikedaman · · Score: 2, Funny

      How did anyone make Linux in the first place if they didn't learn about it in school? You know what, I'm not even sure why I bothered replying to this...

    2. Re:Younger people are not as intelligent. by flatulus · · Score: 2, Funny

      So if it isn't taught in school, it's unlearnable? Wow!

    3. Re:Younger people are not as intelligent. by 0123456 · · Score: 1

      How did anyone make Linux in the first place if they didn't learn about it in school?

      In case you hadn't noticed, Linus went to school in Finland.

  18. The real reason is... by Anonymous Coward · · Score: 1, Insightful

    All the snotty elitest attitudes you find in 'linux communities'.

    Add in that windows and macos are 'good enough' and not nearly as much of a problem as they used to be.

    And it's really no suprise that nobody wants to help out the linux devs do anything.

    The older linux communities and devs... For so long they acted like THEY were the only ones that matter. Hey the world ignored your brilliance and you're now largely irrevelant. Good job!

    But hey... at least you got to be rude and talk down to alot of people for not having your experience and skills. That's something right?

    1. Re:The real reason is... by Anonymous Coward · · Score: 0

      Awesome example of the linux zealotry in action.

      The flat truth was marked troll. ^^

  19. Nope... by Anonymous Coward · · Score: 1, Insightful

    Nope, it's RMS' involvement and the insane GPL, Linux, and anything-else zealots that make, at the surface, the Linux kernel appear to be a group of crazy nutjobs.

    Seriously, mark me troll, but as a young developer, I can tell you that's why myself and at least 10 other people I know didn't get involved - that isn't to say the kernel really IS maintained by a bunch of crazy nutjobs, but having those people as part of the community reduces the legitimacy of it and makes it seem like it's no fun to contribute to.

    Just my $0.02

    1. Re:Nope... by chaosite · · Score: 1

      ... WTF does RMS have to do with the kernel?

    2. Re:Nope... by Anonymous Coward · · Score: 0

      Not his involvement with the kernel - with the community. Believe it or not, people who just get introduced to Linux don't get that the community isn't all part of the entire process. So no, RMS doesn't write the kernel, but have you seen some of the crap he says? Do you think his flames might not chase off a few young developers?

  20. Age is the reason by taleman · · Score: 5, Insightful

    Perhaps age difference itself is the reason. Young persons may not like the 20 years older hackers. And old wizened developers may dislike young whippersnappers.

  21. facebook devs by Anonymous Coward · · Score: 0

    Here's a question to anyone who works at facebook and is willing to reply (even anon):

    What is the ratio of engineers at facebook who could work on low-level internal and open source code like HipHop, Thrift, memcached, etc., to engineers who work on features like Superpoke and other higher-level features/systems?

    Is there much crossover, if so how, if not why?

  22. Experienced developers = mature code. by khasim · · Score: 2, Insightful

    If you're right out of college, would you have the experience to work on the kernel IN ITS CURRENT STATE?

    The kernel has come a LONG way since Linus first started it back in his college days.

    The real question should be whether developers how have never touched the kernel before are joining the kernel team. Not how old they are.

    1. Re:Experienced developers = mature code. by Richard_at_work · · Score: 1, Insightful

      Experienced developers can also equate to engrained behaviours and beliefs, styles and approaches and isn't necessarily always the best thing.

    2. Re:Experienced developers = mature code. by Anonymous Coward · · Score: 0

      If you're right out of college, would you have the experience to work on the kernel IN ITS CURRENT STATE?

      Emphasis yours.

      That's a highly ambiguous statement to an outsider. Please clarify. I'm a very experienced embedded programmer with over 15 years of experience working on life-dependant software, but I am not familiar with the current state of the Linux kernel.

      Are you suggesting that it's too complex and not sufficiently modularized and documented for a reasonably competent college grad to understand a given component with some effort and guidance (in which case it is too big to not fail), or is it so deep and messy and poorly documented that only a grizzled old developer with a decade's worth of Linux kernel dev experience can support it (in which case it's too big to support and bound to fail)?

    3. Re:Experienced developers = mature code. by eonlabs · · Score: 1

      I think you're probably right on. I suspect frustration has a reasonable amount to do with it as well. Linux has grown unwieldy. It suffers one of the main issues with the C programming language: it's been around for so long, and the wheels have been reinvented so many times, that determining which APIs, applications, or packages to use in a given instance are, in themselves, an effort in yak shaving. This is the main reason I've avoided modifying the kernel code. I see the OS as having some systemic issues that, despite effort on my part, will not be resolved. And yes, my primary machine is a Linux box.

      --
      I wouldn't consider the mad hatter mad. Just reality impaired. He sure can make a mean cup of tea.
    4. Re:Experienced developers = mature code. by cyphercell · · Score: 1

      I'm gonna go with "yes", my opinion is neither objective nor intimate, but from the outside looking in, I think administrative issues look incredibly political. I'm certain this indicates a struggle to implement new methodologies or possible better thought methodologies while retaining previous talent. This is also, generally, a logical extension of a pragmatic philosophy where what works works. Contrast this attitude with say Theo de Raadt's, which is often considered to be unpragmatic with regards to certain functionalities and preferring a more deliberate methodology.

      --
      Under the influence of Post-Cyberpunk Gonzo Journalism
    5. Re:Experienced developers = mature code. by spiffmastercow · · Score: 1

      And how are these noobs expected to gain that experience? That's the problem. All developers are human, and all humans are mortal (so far, anyway). Without younger developers learning the ropes, Linux will just become an incomprehensible legacy app nobody wants to patch for fear of breaking something.

    6. Re:Experienced developers = mature code. by jonsmirl · · Score: 1

      The kernel is getting mature. The x86 portion is getting very mature. I'm been working on OSes for 30 years and I don't want to work on Linux memory management or scheduling - it is too much work. Same for networking and file systems.

      However, there are some large, untapped areas with lots to do. Graphics - AMD and Intel have released their 3D documentation. Kernel graphics support is no where near completion. It will be several years before this code is mature. It is also likely that someone will create a replacement for X in the next five years.

      An IR subsystem is being created right now. It should go into the next kernel release. Only a few types of remote controls are supported. There are lots of protocols left to work on. Takes about five days work to support a new protocol.

      Wireless sensors. Support for 802.15.4 6lowpan and ROLL is missing from the kernel. This is important for smart energy. We don't have RF4CE support either.

      Embedded CPUs - there is an endless pile of work writing drivers for embedded CPUs. Even common embedded CPUs are missing half of their drivers.

      I'm sure other people can expand on this list.

    7. Re:Experienced developers = mature code. by dgatwood · · Score: 2, Insightful

      That's certainly a big part of it. The Linux kernel is moderately mature, so there's not a lot of low hanging fruit for a new developer to pick. Things like embedded hardware drivers require special hardware that most people don't have/want/need, which tends to put a damper on people doing work in that space (again, unless they work for Montavista or somebody). The graphics subsystem requires fairly specialized knowledge that most new devs (and most old devs who don't work for ATI, NVIDIA, or Intel) don't have and can't feasibly get, so that's not likely to be a big draw. And so on. It's all about working on a small niche of a niche, which is fine as long as you care about that particular niche, but most people aren't particularly into making Linux run on a toaster or microwave, so....

      Another big reason is that Mac OS X took a lot of the wind out of Linux's sails. In years past, most of the laptops I saw at geek conferences were random PCs running Linux. These days, though their server boxes still run Linux, their development laptops are often Macs running Mac OS X, maybe with Linux in a VM, but usually not. A lot of those same sorts of people used to be occasional Linux kernel dabblers back when they ran Linux. Now, not so much. Similarly, a lot of the young CS students are often running Mac OS X in their dorm rooms instead of Linux, which means there's less exposure. Fewer geek users = fewer new potential developers.

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

  23. What about the barrier to entry? by krelian · · Score: 5, Insightful

    Contributing to and old and large code is much more difficult than contributing to a small one. Getting your head around a large code base is no small task and documentation is often lacking. Even if the code is well commented it could be very difficult to understand the overall design of the software and how things interact with each other.

    1. Re:What about the barrier to entry? by jadedoto · · Score: 5, Funny

      This is the reason I don't contribute. It's like suddenly being handed the US economy and saying "fix it!"

    2. Re:What about the barrier to entry? by Anonymous Coward · · Score: 0

      Exactly. Monolithic kernel doesn't really seem to be the best idea.

    3. Re:What about the barrier to entry? by Hrunting · · Score: 4, Insightful

      I know from my limited work patching the kernel, this is the biggest barrier for me (and I'm an experienced C programmer). The code is clean. Individual parts are relatively self-documenting, but there's little documentation about subsystems. There's little documentation about why things are done certain ways. Many kernel systems (e.g. network drivers) are part of larger abstracted systems designed to reduce the amount of duplicate logic, but these abstract systems either aren't documented at all or, due to the rapid pace of kernel development, have out-of-date documentation. Furthermore, when people do have questions, they're directed to the kernel mailing lists, which are overwhelming and, dare I say, unfriendly to the new developer. The mailing list archives are littered with unanswered questions and reprimands from older developers to newer developers just trying to contribute.

      Some on the kernel development team may like it that way because it keeps out the uneducated and let's them maintain their way of doing things. I think that's why we're also seeing the fragmentation of Linux development as larger corporations that count on Linux pull the source in house where they can introduce new staff to it in a more friendly way. Of course, when they do that, oftentimes, the work doesn't make it back into the mainline kernel, so that's really a detriment to the kernel itself.

    4. Re:What about the barrier to entry? by Anonymous Coward · · Score: 0

      This kind of trial by fire is common. You can look at it as a sign that the old guard is unfriendly, or perhaps it's always been this way, and newbies haven't the skill, self-esteem, or gumption to piss in the high grass with the big dogs.

      Or, less denigrating, it's simply just more fun to go work at a company like facebook with happy go lucky peers right after school.

    5. Re:What about the barrier to entry? by node+3 · · Score: 4, Insightful

      This is the reason I don't contribute. It's like suddenly being handed the US economy and saying "fix it!"

      Are you kidding? Everybody seems to think they are more than qualified to tell you what's wrong with the US economy and that they know exactly how to fix it.

    6. Re:What about the barrier to entry? by Anonymous Coward · · Score: 0

      I obviously can't speak for the younger people out there, but even as a 30 year old I know that I'm perfectly capable of knocking out a dvd burning application, or a twitter client, or a music player... but the kernel is something I just won't dive into.

      It's intimidating. It's written in a language I don't really write in. It does things that I shouldn't be messing with and someone at IBM is being paid to work on instead.

      Beyond that, I'd barely know where to begin and the kernel dev community is its own bureaucracy. A big one at that.

    7. Re:What about the barrier to entry? by Anonymous Coward · · Score: 0

      I hear you, brother.

      I've had numerous opportunities and requests to do board support packages and specific drivers for Linux but I can't make money doing it. There is either no documentation or poor documentation and that makes it really difficult to execute a contract that pays the bills. I can't afford to spend time looking at thousands of lines of code because the original developers couldn't be bothered to provide decent docs. All that free code isn't worth anything if you can't use it. Water, water, everywhere and not a drop to drink!

    8. Re:What about the barrier to entry? by Anonymous Coward · · Score: 0

      Mailing lists are a hell. Piles of useless information held on a completely meaningless, where useful information is hidden in such a way that it requires a lot of patience to be found. And I believe the reason is that developers today are trained to deal only with high-level languages, and generally using frameworks that hide the complexity, and with superficial knowledge of how the hardware works. A developer who thinks pointers "are evil" and "GOTO" is obsolete (funny, Assembler uses it all the time) is unable to develop a kernel.

    9. Re:What about the barrier to entry? by Anonymous Coward · · Score: 0

      It's easy to make outlandish claims about something you'll never be given authority to actually try to do.

      Not so many people make the same boasts about open source things like the linux kernel, because it's trivially easy to call their bluff: "Yeah? Ok, well, here's the source then. Get to it."

    10. Re:What about the barrier to entry? by bar-agent · · Score: 1

      You can look at it as a sign that the old guard is unfriendly, or perhaps it's always been this way, and newbies haven't the skill, self-esteem, or gumption to piss in the high grass with the big dogs.

      People expect more professionalism these days. We weren't raised in a barn, there's no need for pissing contests in the high grass. The big dogs gotta chillax.

      --
      i'd hit it so hard, if you pulled me out you'd be the king of britain [bash.org]
    11. Re:What about the barrier to entry? by AK+Marc · · Score: 1

      Aside from the Libertarians, they are mostly right. If the system was simplified, it would be much better. But there are so many on all sides that like the status quo, it will never happen. But no matter what, it would be hard to make the system worse than what it is right now (I mean make it fail faster than it is now, as it's bad and getting worse, and making it worse than that failure line is hard). So they may not be qualified, but that doesn't mean they are wrong.

    12. Re:What about the barrier to entry? by nahdude812 · · Score: 1

      I was one of two lead authors on a relatively small open source project for a few years. As a result of our role, we were the gatekeepers on what community-provided patches we'd incorporate into the core. As our community built up steam, this task became daunting. We would get 30-40 submissions per week, some of them small, and some of them huge. Some of them were simple things like typo fixes, while others were attempts to reinvent major subsystems.

      We tried hard to give all the patches a fair shake. Some of these developers were very green, and we tried to explain why we'd reject their patch, while also trying to be encouraging. Some of these developers were very experienced (and indeed I learned a lot in this role just from people fixing my stupidity again and again), but some of these experienced guys really wanted to fundamentally change something which would have far-reaching consequences (it's all well and good to invent a replacement subsystem, but someone has to do the tedious work of going and modifing all the existing code to utilize the new subsystem and so forth).

      The volume was overwhelming. Neither my co-author nor I had any time left to write code of our own. We were always either reviewing patches, tweaking patches, or communicating with the community. For a project that began as scratching the itch of a need for creative outlet, eventually it stopped being that for either one of us.

      We tried to get the community to help out where we could. There were a few developers out there who we trusted to do some of the review, but neither my partner nor I ever successfully found anyone else who we felt had the skill to trust their final decision who also was willing to take on that work. Plus there was only one other person who had an install of the software on a similar scale to my partner and I, so even our best community developers simply failed to identify performance bottlenecks (for them the neck was wide enough, for us we would have crashed and burned).

      There was a certain temptation to try to raise the barrier to entry just to discourage the green developers, who took by far the most of our time. We tried not to succumb to this, but as our systems grew more complex, the number of useful patches compared to fundamentally broken patches decreased. There were also a lot more just-because-I-can patches submitted, and our finding was that the greenest developers were the most ready and willing to aggressively defend their patch. Senior guys were a lot less personally invested in the success of their code (anyone who's worked on big projects knows sometimes you're going to write something that's never used, and stops taking it personally when that happens or they burn out).

      My co-author and I both ended up burning out on this project around the same time. The reason we had both gotten into this project had been lost a long time ago. In retrospect, I wish I had taken a harder and stronger approach to dealing particularly with the green developers. Although being leading, gentle, and kind with the newbies was fantastic for them, it was terrible for us. Because we were so welcoming to first-time contributors, we ended up with a lot more chaff than wheat, and too-often these first-time contributors were one-time contributors (so it's not like we typically built out our community by helping them).

      In the end: not every contribution is valuable. Some just plain suck. Some are a decent idea but the contributor just came up with the idea and left the gruntwork undone. Some would destroy performance, some would fundamentally break something, and some are themselves fundamentally broken. I think we needed a more darwinian environment - either you produce quality thought out and complete code and take it on yourself to figure out what that means, or we kick you to the curb. If you want to contribute, you'd better actually want to contribute, not have spent an afternoon dabbling then move on.

    13. Re:What about the barrier to entry? by Anonymous Coward · · Score: 0

      Obama, is that you? O.o))

    14. Re:What about the barrier to entry? by Fri13 · · Score: 1

      I know what is wrong in US economy but I have no comment for how to fix it. It is almost impossible to fix it because of greed people and those who are not willing to give the power away what the people gave to them.

      History has lots of nice examples what told what is going to happened. But because media control and greed people, no one is wanting to sit down and listen what has happened in the history.

      Same thing is with Linux. To know how to actually develope it, you need to understand the history. But young people are too lazy and erregant to spend time to learn stuff, before they can get their hands dirty.

      Welcome media overlords, thanks for burning our young peoples minds with all kind crappy media, so they can not think by themselves.

      Whem they are older, they might start understanding what actually is happening and then it is already too late.

    15. Re:What about the barrier to entry? by Fri13 · · Score: 1

      Well, at least it is such what works. Until that... theory is not same a empire studies.

  24. Complexity. by Anonymous Coward · · Score: 3, Interesting

    I'm an intermediate-level programmer, with more than 4 years of practical experience coding C, even more experience learning theoretical computer science concepts, have been using linux for 9 years, AND my top leisure-time activity is to devote time and energy towards learning more about computers and important software systems.

    The linux kernel is super complex. This is not due to poor design (comparatively to other popular OS's, anyway) but a programmer must still contend with this. The level of uberness one must achieve (still considerably above my capacity) to participate in kernel hacking is intimidating to say the least.

    Documentation, while plentiful, is almost always in ascii form (vastly inefficient to illustrate such things as dependencies and the form and use of data structures) and mostly found in the code. There are decent enough books, but most of those I've read always provide a narrow window into individual concepts, as opposed to bird's eye views, or surveys of overall architecture. Maybe I'm out of the loop with the best books (pretty likely) but the interest has certainly been there, and every time I've bent towards the possibility of playing around with the kernel, the sheer complexity of the task and difficulty in finding information to answer my questions has made me shy away and towards simpler things. It's not 'too' hard, but it certainly is 'definitely' hard, even for enthusiasts with a healthy mind and great curiosity.

    If effort was as widespread in making documentation as it is in making top code, I'm sure many more people would dabble, and talk about it.

  25. Times have changed by achten · · Score: 1

    There must be higher number of people in the field as compared to like 1990 or so, but there is a greater choice available. Coupled with the spin/hype it leads people towards popular fields/technologies. I do not think linux/kernel people do the kind of "evangelism" that gets done elsewhere.

  26. Linux is new? by johnsonlam · · Score: 1

    Anyone notice Linux share the same syntax of UNIX? Do you know how old UNIX is? To start Linux even old people like me need to know some history of XENIX, UNIX, SCO, NFS ... some of those things remain unformatted text base, console type (not VT100). GUI is good, but the back is still those things, that why Mac OSX hide them all. Linux need to clean up those history and simplified those things.

    --
    Hong Kong - International Joke Center (after 1997-06-30)
    1. Re:Linux is new? by corychristison · · Score: 4, Interesting

      Anyone notice Linux share the same syntax of UNIX?

      Yup.

      Do you know how old UNIX is?

      Yup. Developed in 1969; making it 41 years old. Linux was developed in 1991.. Linux today is a far cry from Linux back then.

      To start Linux even old people like me need to know some history of XENIX, UNIX, SCO, NFS ... some of those things remain unformatted text base, console type (not VT100). GUI is good, but the back is still those things, that why Mac OSX hide them all. Linux need to clean up those history and simplified those things.

      I don't know if you are referring to using a Linux distro or programming on the Linux kernel.

      I use Gentoo Linux every day. I use the tools provided in portage daily to do the computer-y things I like to do. I use XFCE for my desktop environment, Firefox (mostly) for web browsing, various text editors, etc. etc... but my favorite tool is the command line. I can do so many more things in a lot less time at the command line than with a GUI - even web browsing (love links).

      I was born in 1988; 21 years of age. I've been using Linux since 2001 or so.

      My fiancee also uses Gentoo Linux, as I got fed up with supporting WinXP and all the junk that accumulated on it. She's been using it fine for the past few years, running a very similar setup to mine. We are the same age.

      I don't do any kernel programming, however I do various application- and web-level programming. Never anything past user-space... and that is simply because that is where my interests lay... I've always been more into building programs that do stuff for me, rather than kernel programming / hardware interfacing (at the kernel level).

    2. Re:Linux is new? by corychristison · · Score: 1

      Augh. I borked that link pretty bad. Should have been as so:

      I use Gentoo Linux every day. I use the tools provided in portage daily to do the computer-y things I like to do. I use XFCE for my desktop environment, Firefox (mostly) for web browsing, various text editors, etc. etc... but my favorite tool is the command line. I can do so many more things in a lot less time at the command line than with a GUI - even web browsing (love links).

    3. Re:Linux is new? by Guy+Harris · · Score: 1

      Anyone notice Linux share the same syntax of UNIX? Do you know how old UNIX is? To start Linux even old people like me need to know some history of XENIX, UNIX, SCO, NFS ... some of those things remain unformatted text base, console type (not VT100). GUI is good, but the back is still those things, that why Mac OSX hide them all. Linux need to clean up those history and simplified those things.

      I'm not sure what you mean by the "syntax", but:

      1. Mac OS X shares the same libc-level syntax as UNIX (even if it's called libSystem on OS X);
      2. it shares the same command-line interface as well;
      3. the GUI user, and the developer using Cocoa, doesn't have to see that - but to what extent does somebody using, or developing for, say, GNOME or KDE on Linux have to see that?
    4. Re:Linux is new? by Blakey+Rat · · Score: 4, Insightful

      I can do so many more things in a lot less time at the command line than with a GUI - even web browsing (love links).

      1) You can do a tiny subset of the things you can with a GUI in less time
      2) But the things the GUI can do that the CLI can't, you can't do at all
      3) And the things you can do on the CLI faster, you can still do in the GUI pretty damned fast (assuming you're adept at using one)

      When people say "oh the CLI is great, it's all I need", that's a good way to tell that that person doesn't compose music, edit photos, layout pages, edit video, etc etc etc. If all you do with your life is copy and rename text files, then sure: use the CLI. But that's a pretty sad life.

    5. Re:Linux is new? by Anonymous Coward · · Score: 0

      So you're one of these guys?

      http://funroll-loops.info/

    6. Re:Linux is new? by johnsonlam · · Score: 1

      Sorry I'm not very good in English, I know in US or Canada college got lot of UNIX like computers, that's why people get used to it, but for non-English speaking countries, the _NIX is a great difficulty to learn though it's powerful, for most of the DEVELOPERS like you, command line seems is the "default", I don't hate command line since I start from Apple ][ and PC-DOS 2.0, but I still have difficulty learning all the _NIX things. Now I can did some HTML with notepad but I'm still unable to develop anything, even I can read very simple C. If Linux want more users and developers, try to simplified and have more standards that people can focus on. There's lot of developers around, but when I want serious application like "Adobe Audition" I have to stick to Mac and buy commercial like "Logic" (OSX). Someone still argue between GUI and command line, but I like both, just depends on situation, I didn't like a 100 character command line, it's almost the length of a script, why not drag and drop? But when come to batch jobs command line serve the best ... I'm using Ubuntu but I want more, Linux need to be more mature (for user) and a faster pace of application development, otherwise M$ will be conquering the market with it's strategies.

      --
      Hong Kong - International Joke Center (after 1997-06-30)
    7. Re:Linux is new? by corychristison · · Score: 1

      Your experience differs from mine. It always will. I like what I like and you can't change that. Making an ordered bullet list of things doesn't make me want to change my ways, either.

      I don't compose music. I listen to it via MPD with key-combo's set to change the song, seek, set random, etc. etc.
      I don't edit photos, only to resize/scale them to fit my digital picture frame better, which I do via batch command line. I run it once on a directory and it does all the photo's in one run. Try doing that in pure GUI in GIMP (not using script-fu or python-fu).
      I do layout pages as I develop websites/web applications/software in my spare time. I write that all in code to form the visual-goodness. I don't use a WYSIWYG to build it. I rarely use anything like OpenOffice or AbiWord (although I have both installed).
      I do not edit video. I do transcode it from time to time when I rip movies for playing on my Media Center (which also runs Gentoo).. of which I have a set of tools written in bash that do that all for me.

    8. Re:Linux is new? by darku · · Score: 1

      When people say "oh the CLI is great, it's all I need", that's a good way to tell that that person doesn't compose music, edit photos, layout pages, edit video, etc etc etc. If all you do with your life is copy and rename text files, then sure: use the CLI. But that's a pretty sad life.

      Wasn't the whole idea supposed to be about "the tool for the job"?

      --
      Just the Programmer P.O.V.
    9. Re:Linux is new? by Blakey+Rat · · Score: 1

      I don't compose music. I listen to it via MPD with key-combo's set to change the song, seek, set random, etc. etc.

      Ok... how is this relevant at all?

      I don't edit photos, only to resize/scale them to fit my digital picture frame better, which I do via batch command line. I run it once on a directory and it does all the photo's in one run. Try doing that in pure GUI in GIMP (not using script-fu or python-fu).

      There are a hundred photo tools that do that using a GUI. GIMP just doesn't happen to be one of them.

      And if you did anything even slightly more advanced than cropping and/or scaling, you'd need a GUI tool. Maybe you could do them using some retarded CLI abomination, but what would be the point?

      I do layout pages as I develop websites/web applications/software in my spare time. I write that all in code to form the visual-goodness. I don't use a WYSIWYG to build it. I rarely use anything like OpenOffice or AbiWord (although I have both installed).

      Ok so you waste a lot of fucking time using inferior tools. That's your prerogative, but it's a stupid way to do work.

      I guess I was technically wrong when I said it *couldn't* be done, so let me modify it to: it's fucking stupid to do it.

      I do not edit video. I do transcode it from time to time when I rip movies for playing on my Media Center (which also runs Gentoo).. of which I have a set of tools written in bash that do that all for me.

      Ok... how is this relevant at all?

    10. Re:Linux is new? by Blakey+Rat · · Score: 1

      Look, what I'm saying is that stating "the CLI is a superior interface" is kind of a dumb thing to say when it only applies to the network administration-type tasks it's actually superior for, and not the vast majority of things the average normal user wants to do with their computer.

      It only makes sense when qualified. "The CLI is a superior interface *for X*."

      Unqualified, is like saying, "the F-18 is a superior aircraft." Well, sure, it's superior for some small set of tasks-- dropping bombs on someone, or going really fast upside-down. But I wouldn't want to cross the Pacific on one, and you sure as hell can't use it to haul the space shuttle back to Florida from Texas. (To name two of the millions of tasks an F-17 is incapable of doing.)

    11. Re:Linux is new? by Anonymous Coward · · Score: 0

      When people say "oh the CLI is great, it's all I need", that's a good way to tell that that person doesn't compose music, edit photos, layout pages, edit video, etc etc etc. If all you do with your life is copy and rename text files, then sure: use the CLI. But that's a pretty sad life.

      If you've ever had to crop a large number of photos, convert a library of music, or clean up a directory, then you've probably written a script to do it in batch, instead of doing it by hand in the GUI. Besides, we're talking about programmers, who mostly manipulate text files. Regardless of whether it is a sad life, or not.

    12. Re:Linux is new? by Anonymous Coward · · Score: 0

      If all you do with your life is copy and rename text files, then sure: use the CLI. But that's a pretty sad life.

      I suppose Shakespeare had a "pretty sad life" then?

    13. Re:Linux is new? by Blakey+Rat · · Score: 1

      If you've ever had to crop a large number of photos, convert a library of music, or clean up a directory, then you've probably written a script to do it in batch, instead of doing it by hand in the GUI.

      No, I use a tool like Graphic Converter which does that much, much better than anything on the CLI. Well, I used to... not sure what I'd use now, Graphic Converter is getting pretty creaky. But that's not the point-- the point is there are GUI apps that do batch image processes better than anything in the CLI. You might be ignorant of them, but that doesn't mean using the CLI to do that task is a good idea.

      Besides, we're talking about programmers, who mostly manipulate text files. Regardless of whether it is a sad life, or not.

      Yes, but I do it from within an IDE, which uses GUI features to make the process a shitload less painful.

      And it's also not the *only* thing I do.

    14. Re:Linux is new? by Anonymous Coward · · Score: 0

      I think any efficient person needs both.

      Basically, use the CLI for anything that is naturally expressed in text, and use the GUI for things that are, well, graphic.

      It's like saying "which is better, a hammer or a screwdriver?"

    15. Re:Linux is new? by Nivag064 · · Score: 1

      You can write a bash script to automate command line actions, and remotely apply them to other Linux boxen. You can remotely use GUI's to do things on other Linux boxen, but only one at a time. With a script you can do the same thing to lots of boxen at the same time.

      With a script, once you have got it working, you can invoke it several times reliably. However, with a GUI, you have to ensure that you follow the correct steps in the correct order, and there is much greater chance of getting the steps out of order, or not doing the right steps.

      Also with a script you can document each step, so that someone else can understand it, and make modifications.

      Plus it might take several minutes to work your way through several GUI screens, even if the there are no noticeable delays at any stage. Whereas, a script for the same thing could run in seconds or less. But consider something that might take 12 hours to run, don you want to sit there in front of the GUI making changes every hour or so, or just run a script and check it when it finishes? So in some case you could fire off the script go home, and come back to find the job done - with a GUI, someone would have to stay overnight to babysit the job!

    16. Re:Linux is new? by Blakey+Rat · · Score: 1

      Shakespeare directed and acted in plays, he didn't just write.

      I mean, you could have made a compelling argument here if you had, for example, used Edgar Allen Poe as an example-- to the best of my knowledge, he only wrote. But you didn't, so I dismiss it out-of-hand.

  27. Now that this has come up, by mehrotra.akash · · Score: 1

    Could someone suggest where should one get started off from?
    I have an average level of experience with simple c/c++ , Java and Python programming, but how should I apply that knowledge towards OS development,etc
    Any suggestions?

    1. Re:Now that this has come up, by SETIGuy · · Score: 1

      If you're really serious, the best thing you can do is write a small multitasking OS kernel that you can run under a VM or under an emulator like QEMU or Bochs. Read some reference material, design it, write it, and make it work. Then figure out what you did wrong and how you'd make it better. Think about what you would need to do to implement more advanced features (demand paged VM, threading, modular device drivers).

      Then you're ready to start reading kernel code for Linux and the BSDs.

    2. Re:Now that this has come up, by wireshark · · Score: 1

      I'd recommend starting with a problem you are confronted with on a day to day basis. For example if your laptops usb port is flaky & connecting an external device works only after five or six tries take a look at the kernel code for usb or even a usb driver. Utilize your c/c++ skills to read the code. From there you will probably have a better insight into why your usb port isn't working & it will place you in a position to modify a small piece of the kernel code if needed. I'd refer to this method as hacking to learn. Have fun!

    3. Re:Now that this has come up, by TheRaven64 · · Score: 1

      For a toy kernel, I'd really recommend Xen as a target. The hypercall interface and paravirtual device drivers are intentionally similar to real hardware, but much simpler.

      --
      I am TheRaven on Soylent News
  28. Several reasons by nawitus · · Score: 1

    One reason is that Linux is mostly written in C, which is not something that most young developers are familiar with. They're usually familiar with higher level languages like Java or Python. Another is that developing the linux kernel requires high technical knowledge on things that young developers are not familiar with anymore, as programming tends to be more and more abstracted nowadays.

  29. exactly. more exokernish. by Zurk · · Score: 1

    right. it should be something between an exokernel and a microkernel. abstract out device drivers but keep core stuff in the microkernel like cpu drivers and memory access. something where people can own the device but not screw around with the machine itself. the usb userspace driver model is a great example. now if we can only abstract out everything without ending up with HURD like idiots running the show.

    1. Re:exactly. more exokernish. by CRCulver · · Score: 1

      If CPUs can be hotpluggable, then why put their drivers in the core instead of treating them like any other device?

    2. Re:exactly. more exokernish. by Anonymous Coward · · Score: 0

      because there is a tradeoffs between abstraction and unnecessary complexity.

  30. Motivation to not do Linux development by Anonymous Coward · · Score: 0

    I would have loved to help out, but unless there is an IDE and platform that will make Linux development rapid, it is a waste of my time. At this point, I will become a Windows or Mac OS developer and not a Linux developer because:
    - I produce twice as much functionality with better quality in the same amount of time using Windows and Mac OS development tools
    - Windows and Mac OS are already easier to develop for, easier to install, and more stable as a development environment. I do not need to rebuilt my stuff and waste hours for 15 different versions of the same platform. I do not need to do custom builds and rebuilds of hundreds of components that I would be using and waste weeks.
    - I will actually enjoy using the product that I am working on
    - Configuration will not feel like a waste of time
    - Lack of third level development support for components will not make tough problems waste months, but would rather take a day or two to resolve
    - I will deal with a community that seeks to answer tough technical questions, rather than ignore them and look for easy ones to make fun of
    - I will get payed more

    1. Re:Motivation to not do Linux development by Cheesy+Fool · · Score: 1

      Have you actually ever developed anything before?

      Because you're having a laugh if you think that developing on Windows or Mac means that you won't run into any of the problems you mention.

      --

      Hail to the king, baby!
    2. Re:Motivation to not do Linux development by NormalVisual · · Score: 1

      Having spent about 20 years doing professional Windows development, and about 10 years of paid Linux work, I think he's made some reasonable points.

      --
      Please stand clear of the doors, por favor mantenganse alejado de las puertas
  31. Kernel Boys Club by Anonymous Coward · · Score: 0

    The few steps I've taken in that direction were met with skepticism and arrogance. The Kernel Boys Club is hard to break into and they've headed in the same direction for years. It's time for some fresh blood and fresh ideas. They remind me of the guy that's always at Karaoke Night carrying a handkerchief like he's Pavarotti.

  32. I have an easier explanation by aepervius · · Score: 4, Insightful

    25 years ago when I started it was a literal *TURN* in technology. We got personal computer (Amiga, Comodore, Thomson, Atari) to not only to play , but also to *program* and show off other. Heck even on my first PC I cracked Ultima 5 because the disk stopped working , and found out which instruction NOP to go on (it had a very weak encryption using a XOR increased by 3 every byte). I digress but let us see basically many nerd, and by that I mean a lot of nerd, even non-nerd, started programming took a taste of it, then went on open source etc... Alot of oldies from mainframe are also part of that group. Nowadays ? *ALL* system are either closed , or too complicated to really go on (remember how easy it was to use CGA or even later mode 10h?) , and among the young nerd I know not many really start programming. There you have it. That in my opinion is alone to make people which would be interested into programming less numerous. And tehrefore less young people interested into open source. Naturally I might be wrong and just be a grumpy old man "it was better inmy old day, now off from my lawn".But it looks that way to my anecdotal viewpoint.

    --
    C. Sagan : A demon haunted world:
    http://www.amazon.com/gp/product/0345409469/
    visit randi.org
    1. Re:I have an easier explanation by tftp · · Score: 3, Interesting

      Nowadays ? *ALL* system are either closed , or too complicated to really go on

      It's nowhere that bad, you just have a case of selective memory. Recall "Hello, World!" in Windows 3.1? It's 100+ LOC, with derived window classes done by hand, in C. Remember RS-232? You had to do it *all* by hand, probably in assembly language. Sure, a simple console application was easy - but it's still easy today; it's just nobody wants them.

      And recall how marvelously easy was it back then to put together a multithreaded UI with shaped windows and dockable/floating toolbars. Windows 3.x had only one thread for everything, and had no RAD tools; VB was the first one, IIRC - you had to code pixels and create your widgets programmatically. Today - in WPF or in Android - you do that in XML.

      What happened is that the inner workings of the computer are farther away, better hidden. Libraries got developed that changed software from an individual, unique, handcrafted project to a generic, common, and heavily automated process. For example, if you need an application that receives a challenge over the network, shows it to you, gets your response and sends it back, it could be put together (not even written!) in minutes. So things changed indeed, but not all that change is for worse.

    2. Re:I have an easier explanation by BitZtream · · Score: 1

      You realize you can still do all of those things right? You can still go doing CGA poking in Windows command prompts, it'll still emulate it.

      A PC is still a PC. It may not be a C64 or Amiga, but thats irrelevent. Nothing that was being done back then CAN'T be done today from a software perspective ... unless you feel that you must write for hardware that no longer exists, in which case you've probably got a reason and real hardware to work with.

      There are also plenty of SoC solutions and microcontrollers that allow you to do this kind of stuff.

      I'm not writing bits to a CGA display anymore, now its done over SPI to a 4" LCD from an AVR microcontroller. Neat part is, everything to do so, the dev kits, and hardware ... all cost me less than my first TRS-80 ... Sadly, I have a couple AVRs that are more powerful too :/

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    3. Re:I have an easier explanation by Bungie · · Score: 1

      or too complicated to really go on (remember how easy it was to use CGA or even later mode 10h?)

      I think things unfortunately have to become more complex as they grow in capability. Remember how much of a pain it was to poke bits into mode 12h? They wanted a 640x480 display mode but they had to deal with things like segment boundaries and the memory limitation of VGA (256K). I'm sure they would have loved to have it as easy to manipulate as the planar modes, but instead they had to come up with a complex scheme of splitting it across planes.

      When you think of it, manipulating a pixed with GDI is probably less complex than working with screen modes and video memory.

      --
      The clash of honour calls, to stand when others fall.
    4. Re:I have an easier explanation by evilviper · · Score: 1

      Nowadays ? *ALL* system are either closed , or too complicated to really go on (remember how easy it was to use CGA or even later mode 10h?) , and among the young nerd I know not many really start programming. There you have it. That in my opinion is alone to make people which would be interested into programming less numerous.

      While hardware interfacing may be more difficult, the number of kids who have written decent applications in, say, Python, is likely vastly more than the number who have ever done CGA programming. In short, there should be more to interest young people, since they can get started, and doing useful things, quicker and easier.

      And I seriously doubt all the Linux kernel developers started where you expect they "should have" (where you did...).

      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  33. Programming job bad reputation by The+Abused+Developer · · Score: 5, Insightful

    that's all folks - the youngsters are much more socially connected and skilled than we were at their age; also, they get the clue of the social context much better than we did 15 years ago. And what they see is a career in an unregulated domain, totally havoc and chaotic, where the abuse and the overwork is the norm. there is no career path marks to follow and nobody can tell you where you going to be in 2 or 3 years. A continuously changing professional knowledge baggage is not attractive, its consequence is obvious - your whole time life should be allocated for keeping up. The dreamland of computing is not anymore there - the harsh reality has taken its place and young people are not stupid; they want to be able to enjoy their life normally instead to enslave to the corporate. 15 years ago the Linux and the Open Source was started with lots of fuel from people keeping strong to a beautiful idealism - this is gone; they are not to blame - myself I have respect for a generation who has the power of the dignity and the will to say NO! STOP! this is my life! - we should all do the same.If a profession takes away your life - forget it, it's just not wort it.

    1. Re:Programming job bad reputation by halo8 · · Score: 1

      I'll attest to this, I had a bright CS future ahead of me, working at Compaq, moved on to IBM and Microsoft in the big city, but I kept loosing jobs to India.
      Then I realized that if wanted to stay in the CS game it meant more time more money to getting more skills, certs, pieces of paper.

      A "A continuously changing professional knowledge baggage is not attractive"
      well.. it is for some people, thats what separates the people that LOVE CS, and those that like it or are good at it. I packed up my bags 4 years and went off to University to learn about history and poli-sci, (i want a government job) thats what I am passionate about, computers for me were just a hobby that paid the bills.

      --
      The More Knowledge you have the Luckier you Get- J.R. Ewing
    2. Re:Programming job bad reputation by straponego · · Score: 2, Interesting

      I wish I had mod points right now; this is the most interesting post I've seen in a long time. It gives credit to social networks and current 20-somethings in a way I hadn't quite considered... thanks. Now that I think about it, this "conscious slacker" slacker attitude is a very green one as well. It fits with current realities (concentration of wealth, resource exhaustion) while turning many of its downsides to advantages.

      Kudos, kids.

    3. Re:Programming job bad reputation by Digital_Liberty · · Score: 1

      I'm 40 years old. It was obvious to me from the beginning (even before college) that being a programmer meant being on a treadmill of continous learning and "keeping up". That was actually part of the appeal - it was never going to get boring. Always something new to learn and figure out. I know people who do treat it as a "job". They've been COBOL programmers for who knows how many decades, working on the same accounting and payroll systems. Yuck.

      I also understood early on that ANY salary position means you'll be expected to get the job done regardless of how many hours it takes - you don't punch a clock when you're salary. There is nothing about that peculiar to programming or IT. And unless you want to get into management, very few companies know how to create a decent career path for technical people of ANY kind. My brother is an electrician and is facing the same thing - he can either manage other electricians or continue to climb the electrical polls himself. He became an electrician because he enjoys doing the eletrical work, not because he was following a career path. Same for me and programming.

    4. Re:Programming job bad reputation by Americano · · Score: 1

      A continuously changing professional knowledge baggage is not attractive, its consequence is obvious - your whole time life should be allocated for keeping up.

      This is where you lost me. There is NO "professsion" where keeping up and learning new things is not demanded of you except at the very bottom of the job chain.

      Want to be a janitor? Great, you'll never have to "learn new things," because you just have to push a broom & empty trash bins all day. Want to be a lawyer? You're going to have to keep up with current case law and evolving precedent.

      Want to be a day laborer? Great you can work the same fields year after year, picking oranges and lettuce for slave wages. Want to be a doctor? You damn well better be prepared to stay current by reading current medical literature and networking with your peers.

      Want to work at a car wash? Great, you can splash soap on a car and hose it off all day. Want to be a mechanic? You damn well better be able to learn how to work on new types of engine control modules, new safety systems, and new brands of vehicles.

      There is no "profession" where you are not going to need to continuously learn new things to keep up. If you don't want to do that, then you are relegating yourself to the role of manual labor, where the same motion is performed countless times in repetition without any critical thought whatsoever.

      No employer should be burning its employees out by overloading them with demands and then not supporting them. But claiming that what's ruining any profession is this infernal need to "keep up" with the state of the art is foolish.

    5. Re:Programming job bad reputation by The+Abused+Developer · · Score: 1

      Well, this forever-enslaved profile maybe was appealing to you and somehow you got the smell of it early - but this is particular to you; the never getting bored factor is attractive as long as at some age it doesn't come in conflict with other social responsibilities you naturally get into like a family, children etc. And for sure many programmers do the coding with pleasure and are learning new things with the same pleasure - but are not pleased when they are forced to do it at the detriment of their personal and family life. Me and for sure others have an opposite understanding of what a salary is and for sure is not *that ANY salary position means you'll be expected to get the job done regardless of how many hours it takes*. This is just dumb, have you ever seen a lawyer or a doctor doing it? This is sweatshop mentality. Your whole posting smells of the hidden message that you represent exactly the ones enslaving the coders and you outline your expected submissive attitude towards your wealth creation process. If the industry silently promotes antisocial personalities of obsessive, compulsive workaholics - this is discrimination toward the other ones and a strong case for review by the work legislation .

    6. Re:Programming job bad reputation by The+Abused+Developer · · Score: 1

      Foolish is to compare any other profession in sense of the keep-up effort with the programming domain. just give me a single example where the domain change is so heterogeneous and fast paced as the IT/programming is and would suffice. exactly because of this crazy fast paced change rate the cheapest solution for the employers is to switch the onus on the employee. of course, only the very young ones without any social commitments besides themselves or the same category but seasoned ones or the ones ignoring these commitments will make it - but for the other ones is a discriminatory practice.

    7. Re:Programming job bad reputation by Americano · · Score: 1

      Foolish is to compare any other profession in sense of the keep-up effort with the programming domain.

      I'm sorry - why is that foolish? Because you have a preconceived notion that "programming r harder"? Your assertion that programming is the only profession which requires constant study & "keeping up" doesn't make it a fact.

      just give me a single example where the domain change is so heterogeneous and fast paced as the IT/programming is and would suffice.

      I cited 3 examples of professions which require significant amounts of learning, retraining, and continuous self-development. I'll repeat them: Law. Medicine. Auto mechanic. Any other sort of biotech / biomedical field. Anybody entering into any of these professions is going to need to continuously study and learn the new "state of the art" to stay current. Programming is not unique in this regard.

      exactly because of this crazy fast paced change rate the cheapest solution for the employers is to switch the onus on the employee.

      Given that learning is an active process which requires effort on the part of the employee, I don't see why this is cause for alarm or why you'd expect this to be any different. If you need to learn to stay current, it *is* your responsibility to do so, the company can encourage you to do so, but ultimately it's your responsibility to do the learning. They can't "make you" learn new technologies, methods, and practices.

    8. Re:Programming job bad reputation by The+Abused+Developer · · Score: 1

      see, obviously you are just a manager who thinks he knows programming - your argumentation is typical, like copy and paste of the code, I seen it multiple times for many years :-); just comparing the amount of information and the absorption speed and effort required from a programmer with the same process required from a professional in the fields of medicine, law or auto mechanic points to it; there is nothing to compare here. only looking into the dynamics of the fields is sufficient to see why there is no comparing. This is what makes programming unique in this regard. I don't argue about the need to learn - it is normal and expected, I argue about using the process of learning as an excuse to overwork the employees for hitting the maximum bang with no other consequences but negative for them: burning, family and social ties rupture, health damages - mental and physical etc. You can fight how much you want and have time on this thread, but this is not going to change the reality; the outside world knows already enough about the abuse in this industry and very few youngsters in North America - less and less, are going to take the school and enter the field. for sure, for some time the need will be covered with young slaves in the modern colonies of Asia, but this one too is not going to last for long time when the society will become rich enough so that the youngsters will find other niches where they will fell more inclined to take on :-). Medicine, law - and even auto industry engineering have a long existence and life because they promise long term vision for their professionals - which is not the case for IT, and this makes it doomed if no change will be adopted.

    9. Re:Programming job bad reputation by Americano · · Score: 1

      see, obviously you are just a manager who thinks he knows programming.

      You are wrong. But I can play this game too: You are obviously just a code drone who thinks he knows programming, and so he thinks it must be the "hardest thing in the world" to learn new languages, new systems, new architectures, and new external packages and interfaces. It's also clear that you think that you should be treated like a rock star because you have a couple years of Java programming experience. Whoop-de-fucking-doo, get some perspective.

      Your vapid and senseless assertions about programmers being the equivalent of slave labor because they need to learn new things constantly to stay current with the state of the art are just that: vapid, and senseless. It's a common phenomenon - people like to assume that they have it worse than anybody else. It's generally not the case.

    10. Re:Programming job bad reputation by The+Abused+Developer · · Score: 1

      huh :-) - your answer proves my point - nothing makes me more happier - the same stereotype answer learned for counter attacking the point I support - how lame and standard, couldn't you find something new, not copied - always blame back the lazy programmer? Hehehe, i do programming since before C++ was born; till 2000 I did only C/C++ - I never touched VB or else; since 2000 I have Java on my baggage and since 2005 I do equally well C#. I guided my fellow students who where not very skilled at getting the guts of the code - and now I'm a proud father of two. I see the evolution of the profession for almost 20 years - and, I see the job requirements of today comparing with what was not so long ago - 5,6 years. in the name of the business streamlining - which, of course, I bet you are a big fan, the demands have become crazy; just look on monster - most of the programmer jobs require all possible major programming languages(Java/C#/C/C++/VB) and domain specific (SQL/JavaScript) plus a gazillion of frameworks and platforms; all the friends I have in the industry curse when hear about letting their children follow in the steps - and I'm with them; If you go to a hospital for a brain tumor surgery would you like to have the manager assigning an orthopedist to do it just because they streamline, or to have the same surgeon doing two or three operations - maybe different at thee same time? Or, supposedly you are charged with crime and the death penalty expects you but the judge tells you that in the name of the streamlining a tax-law lawyer is going to take care of your case - and of course, they going to proceed at the same processes in parallel with other 2 convicted? Give me a break, go and smoke your management bonus, or enjoy alone at the pub your salary - your position shows obviously you are not doing programming for a living for a family with children. Does Java have pointers? How does .NET compare with Java in method arguments passing? How about C++ virtual functions vs anonymous classes in Java or delegates in .NET? Is OOP inheritance supported in JavaScript? What is the difference between the RModel and OOP paradigms? Can you answer these questions in 1 min without googling? Of course - it is rhetoric - I can never check if you did it or not.

    11. Re:Programming job bad reputation by Americano · · Score: 1

      Quick, without looking at wikipedia:

      Can you tell me what the important differences are between mitochondrial DNA and nuclear DNA? Can you tell me what standard chemotherapy protocol is for stage 2 adenocarcinoma of the lung?

      Can you tell me how maintenance of a Continuosly Variable Transmission would differ from maintenance of a standard manual transmission?

      Can you give me a quick summary of the current laws regarding possession of a firearm in Boston, Massachusetts?

      The key to having a successful professional career is not in walking around with a set of facts glued into your skull. The key to having a successful professional career is in being able to learn, adapt, and understand new technologies and research, and apply those things to your work. This is not unique to software engineering.

      I'm sorry you think learning the syntax and nuances of a new programming language is inordinately more difficult than staying current with case law relevant to your field of law, or medical research & treatment best practices relevant to your medical specialty, or the functional details of new automotive technologies like gas-electric hybrid engines and electronic control systems.

      Perhaps software engineering just isn't a profession you're cut out for. Since medicine, law, and auto repair all seem to be much easier in your estimation, perhaps you'd find more satisfaction in those fields.

    12. Re:Programming job bad reputation by The+Abused+Developer · · Score: 1

      gush, the wheel turned ... clearly u the young generation software/manager guy who learned about doin' aka *software engineering* with java summer camps ... the typical deviation strategy ... whatever ppl in mngmt layer would like to believe ... software engineering IS and WILL remain ... engineering ... which is HARD ... the rest is bullshit; quality, good and correct/expected behaving code comes from the hands of ppl ... if these ppl have to enslave for getting the job done - they will not be pleased and will deliver shit; others, will not care and will deliver it continuously for making the mngt guys - u - happy for one hour. of course, this can't live long - and it is obvious, just look at the statistics of enrollment in CS ... nobody buys anymore into the bullshit of the marketed cool profession as IT/Programmer ... other areas of engineering required many decades to mature and become established professions - the it biz steve jobs/bill gates style - tried to grow like the miracle kid. Learning a new language is not difficult - become really proficient on the platform is. Without showing proficiency in applying the language accordingly to the platform/domain&paradigm - knowing it is useless. I may know C/C++ as language perfectly - but without hands-on on platform/domain specific APIs/libs - is is useless; pretending that u do it just because ur code compiles at a certain point in time has no value as long as the same code is going to be a pain in the ass in long run just because u learned the lang over the night by googling and reading couple of mins some api hello world samples - it is the equivalent of masturbation - becomes addictive and makes u think u do it for real - but when u face the real challenge all u can deliver is just premature ejaculation ...

  34. Sam by res2216firestar · · Score: 1

    Well, as a young dev myself, I'm more interested in coding apps, and in reaching stable platforms that real people use, like Windows. I'm no open source purist, although I do put everything I make under GPL because I think people should have the freedom to improve on my ideas. I'm not one of those lured by iPhone development: I do object to their awful restrictions on apps and totalitarian management of the development ecosystem, but I'm not bothered by a platform being closed source. For some additional insight, I'm kind of glad 80's computer nerds working at Red Hat are coding the OS: If Linux development was anything like one of my projects, it would broken every few revisions, have something major wrong that I don't really care about each release, requiring a major fix by a second rate coder within a few days, which happens to be when I'm out with friends and can't commit a new release. Leave the platform to the professionals.

    1. Re:Sam by Cheesy+Fool · · Score: 1

      If you applications are like your comments, I'm glad you don't develop for Linux.

      --

      Hail to the king, baby!
    2. Re:Sam by res2216firestar · · Score: 1

      haha yep, me too. slashdot apparently has a learning curve for a mind used to wordpress. I'll get it down soon

  35. Now YOU may be on to something.... by AnonymousClown · · Score: 1
    It may be a generational thing.

    I was watching a documentary about FOSS and they talked about Stallman and interviewed him. The dude's a hippy: plane and simple. A lot of the FOSS/Linux guys are from the late 60s early 70s generation.

    Colleges are still teaching C, OS, compiler development, etc... but the what the young folks are interested in are the iPhone/iTouch applications, social networking, and other modern problems and ideas. Younger folks are interest in handheld devices because that's what they're using. Desktops are for office drone work. Servers are commodity old hat technology that's been done to death already.

    Unix/Linux is an old antiquated idea. Sure, Linux is the metal interface right now but when technology permits it (quantum computing for one), Linux will become irrelevant to future hardware, along with Windows.

    Kids are looking to the future. Linux is really the past.

    --
    RIP America

    July 4, 1776 - September 11, 2001

    1. Re:Now YOU may be on to something.... by Charan · · Score: 1

      While servers may be "old hat," the new breed of social networking and cloud computing sites are still innovating in this area. The traditional idea of large, fast machines running big relational databases is dying. Check out the recent rise of Bigtable, MapReduce, Memcached, and especially NoSql among service providers.

      There's real innovation happening on the server side to enable the current generation of mobile devices. The handheld clients may be the sexy part of computing right now, but they couldn't do much without data centers backing them up.

    2. Re:Now YOU may be on to something.... by Anonymous Coward · · Score: 0

      Unix/Linux is an old antiquated idea. Sure, Linux is the metal interface right now but when technology permits it (quantum computing for one), Linux will become irrelevant to future hardware, along with Windows.

      Kids are looking to the future. Linux is really the past.

      I really love ignorant little shits mouthing off about things they know nothing about. So future is handheld eh... and there's absolutely no unix/linux in the those futuristic gadgets... right ?
      Right ?

      What do you think keeps that shiny GUI on iPhone/Android phones running ? fairies... ? elves... ?

      Fucking noobs.

  36. A couple of things going on here by PPH · · Score: 5, Insightful

    First, it takes a certain amount of financial security before most people are willing to contribute their time to any effort. I think this is true for everything from the Linux kernel to Habitat for Humanity projects.

    Second, this greybeard phenomena is occurring throughout not only the entire s/w industry, but other technical fields in the USA as well. Not enough CS majors, engineers, scientists, etc. Math literacy is suffering and practically every company is screaming for more H1B visas. Or just sending the work offshore.

    Finally, some of the noteworthy exceptions to this trend (Microsoft, for example. But also many other big corporations) have an ulterior motive behind keeping their staff green. Hire CS grads straight out of college, put them on a couple of projects and get them built. Once your developers start to get some industry experience and a peek at the big picture of the company, they'll start to second guess management decisions. Out the door with them and bring in some fresh meat.

    --
    Have gnu, will travel.
    1. Re:A couple of things going on here by Blakey+Rat · · Score: 1

      Finally, some of the noteworthy exceptions to this trend (Microsoft, for example.

      I'm guessing you've never worked at Microsoft.

      The reason Microsoft recruits at colleges and supports H1B visas has nothing to do with them wanting to shed older programmers. (In fact, quite the opposite: experienced programmers are treated really well by Microsoft, much better than the average company.) The real reason is that the demand for talent from MS is so great they they've pretty much already hired everybody who wants to work for them and lives in the northwest. This isn't new; Bill Gates has been telling this to Congress for half a decade.

    2. Re:A couple of things going on here by Anonymous Coward · · Score: 0

      Welcome to idoicracy

    3. Re:A couple of things going on here by Anonymous Coward · · Score: 0

      Good ol' HACKERS used to find all the required finacial security in their parent's basements. What has changed?

    4. Re:A couple of things going on here by Anonymous Coward · · Score: 0

      Really it's just a question of time. Who has the time these days to put in 10+ hour work days, then sit at home hacking out Linux kernel code?

  37. Alright, I'll be the mean one.... by alexschmidt · · Score: 2, Insightful

    Who the *&^% wants to work for free?? The motivated young developers I've met lately want to code games (XNA et al) or mobile apps, especially the iPhone. I've met very very few young developers who are really motivated to develop open source programs. I can't say I blame them. Regarding Linux the OS, what's left to be solved? Does the core Linux group really need any help? Can anyone really make a meaningful contribution to Linux anymore? People want to go where the action is. And that isn't Linux.

    1. Re:Alright, I'll be the mean one.... by Anonymous Coward · · Score: 0

      Another issue is that these economic times don't allow for coding for free. We are lower on Mazlow's Pyramid than we were in the 1990s, where people could do a day job to keep the lights on then code OSS works for fun at night. These days, people have to code in order to survive (and are competing against a lot more people worldwide who can work for a lot less), so they will be heading to the projects that give immediate financial benefit for them so they can survive, as opposed to benefit of a community or project as a whole.

      Apps on mobile devices are perfect for this. First, there is the lure of writing the next Tetris or Bejeweled, just like the lure of bands becoming the next Rolling Stones. Second, even apps which are mediocre will be purchased. Third, piracy isn't something that is an issue, so more downloads are paid [1]. Fourth, the barrier of entry to the marketplaces is low. $25.00 gets you into Google's, and a C-note gets you into Apple's. Once there, it is a matter of learning the platform and writing the code.

      [1]: Three reasons that piracy is really not an issue. First is that a lot of users don't care to root or jailbreak their phones and gamble with having their $400-$600 device being bricked. Second is that apps are inexpensive unlike PC or console games. For a small bit of money, one can download a game and play it, which is a lot easier for most people to just buy on impulse than paying $60 for a game that gives little play value. Fourth, there is little to no intrusive DRM on Android or the iPhone. Yes, some programs may check for a /bin/su, or the presence of the Cydia executable and refuse to work, but there are no apps that require you have your 3G connection always on else they force close immediately. So, once someone buys an app on the phone, they can play it without worry.

      Don't forget that the modding community on Android really doesn't like pirates because they don't want phone makers and cellular carriers to make it impossible to root newer devices. Everyone knows that is would be very easy for Google to drop something in Android to permanently disable people's Market accounts or even access to the cellular network who have a rooted phone, drop in some type of daemon that looks for unauthorized processes (/bin/su) that are not on a signed manifest and kill them immediately, or other Draconian items. If Android gets a rep for piracy, this will put pressure on Google, phone makers, and cellular carriers to completely kill the modding community.

  38. The Linux devs don't consider it solved by judeancodersfront · · Score: 1

    hence Greg KH's hope that retired boomers will help them out.

  39. It's in the distributions by hessian · · Score: 1

    Linux itself is well established and basically a fulfillment of the UNIX idea, borrowing from other flavors of UNIX (yes, I know Linux is not UNIX). The real world is going on with specialized distributions, and distributions specialized for tools like FreeNAS (which is BSD, but you get the idea).

  40. What does Linus always say? by khasim · · Score: 2, Insightful

    "Show me the code!"

    Experienced developers can also equate to engrained behaviours and beliefs, styles and approaches and isn't necessarily always the best thing.

    Who cares how they got there as long as their code can be demonstrated to be as good or better than the other approaches?

    It's the results that matter.

    If some college kid can get better results than coders who have been working on the kernel for 20 years, then that's great.

    1. Re:What does Linus always say? by Bigjeff5 · · Score: 4, Insightful

      If some college kid can get better results than coders who have been working on the kernel for 20 years, then that's great.

      Thing is, that is very rare at this stage of Linux maturity.

      Hence fewer and fewer young new developers working on the Linux kernel each year. At this point, most of the new kernel developers who actually contribute are going to be experienced developers from other areas who have decided to work on the kernel, and young developers will need to work on smaller, less complicated projects to build experience.

      Linus was able to start the Linux kernel because he was bright and nobody else was doing it. He got it to work, and work pretty well, but it was nowhere near as good as it could have been. Every year since then the experience needed to be able to work on the kernel has grown. This is not some arbitrary level they are setting; as the quality of the code improves, the quality needed in order to contribute to the project increases. Quality code generally comes from experience in dealing with the myriad of programming pitfalls one experiences throughout the years. Linus and the other early kernel developers have simply grown with the project; they are much better programmers than they were when they started out, so they move right along with it.

      --
      Security is mostly a superstition... Avoiding danger is no safer in the long run than outright exposure. - Helen Keller
    2. Re:What does Linus always say? by flajann · · Score: 1, Insightful
      I've been writing code for over 30 years, and there is no way some fresh college grad can come even close. Nope. They may be more up on the latest whiz-bang pattern or "programming methodology", or can work "wonders" with the latest IDEs or what not, but when it comes down to what counts, they are *lost*.

      I still use Emacs and the command-line proudly. I find big bloaty IDEs like Eclipse get in the way and demand a lot of attention to themselves, taking away from the development process. And why? Just so I can get some silly name-completion? BFD. If you know the code, the name-completion crap won't really add much to your productivity.

      I can (and do) configure web servers from command-line all the time. I create wonderful scripts that do specific routine tasks for me. And you know what? It works. It's lightweight. And easy for me to maintain. And document for someone else to use.

      Most of the young developers and sys-admins I've been running into lately are completely clueless about the command-line. They expect bloaty web interfaces and resource-consuming IDEs to "hold their hand" and do what they otherwise cannot do.

      What a waste. And what a loss.

    3. Re:What does Linus always say? by moogied · · Score: 1

      Hey! I take offense to this. I am a 23 year old IT Guy and I program everything in CL. Embedded systems? Command line. Stupid python based interfaces? Command line. Assembly modules for both of those? Command line. I haven't actually used a monitor on my unix box since I installed it. I just putty in and go from there.. please don't group all of us together. I agree, most new IT guys are frigen in love with there pixel candy.. but some of us(IE the good ones you want on your team) still crack stuff out in black and white. The only time I even look at graphics is when I am building out an interface for my robots control systems on my custom remote(LCD + ARM chip + Xbee transmitter/receiver).

      --
      So basically, -1 troll/offtopic is really slashdots way of saying "I hate that you thought of something before me."
    4. Re:What does Linus always say? by SanityInAnarchy · · Score: 1, Troll

      I haven't actually used a monitor on my unix box since I installed it. I just putty in and go from there..

      While that sets you apart from many of us, it also reveals Windows on your desktop. Why?

      I don't use monitors on my Unix servers...

      The only time I even look at graphics

      Yeah, I know it's hyperbole, but after your "putty" comment above, it's a fail.

      I actually did work with a commandline only for a week or so while I was trying to fix my X. At least five or ten years ago, and I hope no one still needs to do that, but if you really want to say you "never look at graphics", try dealing with that with only Lynx for a browser.

      I'm also 23, but I boot Windows when I want to play games -- and there, only the games I can't run on Linux.

      --
      Don't thank God, thank a doctor!
    5. Re:What does Linus always say? by ShinmaWa · · Score: 5, Insightful

      I still use Emacs proudly. I find big bloaty IDEs like Eclipse get in the way

      Really, the only thing you are saying here is that you like YOUR big, bloaty thing over someone else's big, bloaty thing. There's really nothing insightful about that at all.

      You have a set of tools you are comfortable with, and others have theirs. Each have their merits and each have their drawbacks. What is new is not necessarily an improvement and what is old is not necessarily the best. To discard either out of hand on their "whiz-bangedness" or "tried-and-truedness" rather than on its merits is the mark of a fool.

      --
      The /. Effect: Thousands of users simultaneously accessing a site to not read its content.
    6. Re:What does Linus always say? by Anonymous Coward · · Score: 5, Insightful

      You are confused. One minute you claim long winded text entry for 30 years beat tools designed to replace the drudgy or trivial stuff is better, then you claim you write noddy script to toy server duties. A developer, as it a real developer and not some perl dweeb, doesn't touch server admin. So what is it? I suspect you're a low skilled UNIX package user that's been using packages for your job, but you dabble in code for trainee level work.

      IDEs have a place, they can get the cruft out of the way, if you're development time is cheap, you're not a real developer. Get back to your 10 line "scripts".

    7. Re:What does Linus always say? by Cyberax · · Score: 3, Interesting

      Yeah, sure.

      Recently, I was able to rewrite a piece of SHIT in several days which an 'old school' developer wrote in VIM for half of year. It was absolutely unstructured (all files in a same package), full of commented-out 'print' statements used for debugging and generally ugly (who needs a debugger?).

      Modern development tools _really_ give a productivity boost. If you know how to use them.

    8. Re:What does Linus always say? by Anonymous Coward · · Score: 0

      I still use Emacs and the command-line proudly. I find big bloaty IDEs like Eclipse get in the way and demand a lot of attention to themselves, taking away from the development process.

      * Head explodes *

      Did you seriously just complain about bloated IDE's and your love for Emacs at the same time? Sounds like you have been wasting your time for the last 30 years.

    9. Re:What does Linus always say? by Bigjeff5 · · Score: 1, Insightful

      While that sets you apart from many of us, it also reveals Windows on your desktop. Why?

      I don't use monitors on my Unix servers...

      I don't know if you know this, but nobody puts monitors on Windows servers either. A dedicated monitor for a server of any kind is generally absurd. Usually the most you can expect is a KVM console in a server rack, for those cases where you're troubleshooting a network issue or something else has gone very wrong.

      Yeah, I know it's hyperbole, but after your "putty" comment above, it's a fail.

      I don't see why, putty is a pretty popular remote terminal app, I work with a few guys who use a windows port to remote into DCS machines from their windows boxes. Or are you saying it's a fail because he might be accessing a CLI from a GUI? That's pretty retarded, GUIs are wonderful things for certain things, CLI is just more efficient if you know the commands and their syntax.

      Since we're playing the age game for some reason, I'm 26, and I don't play games any more. ;) I gave up Linux because I didn't need it for work, and the GUI is still utter shit compared to a version of Windows that is a decade old, never mind trying to compare it to a modern version of Windows or OSX.

      --
      Security is mostly a superstition... Avoiding danger is no safer in the long run than outright exposure. - Helen Keller
    10. Re:What does Linus always say? by Anonymous Coward · · Score: 0

      Most of the young developers and sys-admins I've been running into lately are completely clueless about the command-line. They expect bloaty web interfaces and resource-consuming IDEs to "hold their hand" and do what they otherwise cannot do.

      Back when I was paid to make sure everything would run as long and as smoothly as possible I would craft well written scripts, config files, and documentation. My last employer didn't care about that kind of stuff and wanted things done quickly, so you can be damn sure we used Windows.

      Right clicking to add a DNS zone, virtual hosts, or firewall rule is often faster than adding lines to a config file. It may not have the same level of precision, but it's fast.

    11. Re:What does Linus always say? by plasticsquirrel · · Score: 1

      Well, I'm 24 and I used the command-line only for years on old 14-inch monitors when I was in high school, and only had a stack of old 486's (1991 HP Vectra ftw!). I primarily used Slackware, Debian, and NetBSD. After I got a 14.4k serial modem, I wrote PPP scripts for dialing into my ISP, and I was cruising the web in style at 14.4kbps on Lynx, also using Links sometimes for its better table handling. When you're just an everyman with a 14.4k connection, you really curse the huge page loads of modern websites. 150k for one webpage? Really?

      If there are those who are curious about whether it's difficult or not to only use text, it really isn't, and it's so much less distracting. In fact, when you get bored, the natural thing to do is to play around with programming, just because there aren't all the shiny distractions to go bury yourself in. It forces you to learn the basic filesystem structure, and where important files are located. In this regard, the simplicity of Slackware was really excellent to work with. Ultimately, though, it won't make you a big Unix hacker to never use a GUI. It's just one interface that some people may happen to prefer.

      I've used Unix systems since I was 13 or so, but to be honest I've never really hacked open source C programs, despite knowing C. I feel ashamed of that, and that I would be a better programmer if I took the time to figure out some other programs, but when I was younger I always assumed it was over my head. Now in retrospect, I realize that the C language really is as simple as K&R taught it to be, and the only difficult things are the libraries and styles used for coding. I wonder if many other young people are like me in this regard -- long-time Linux users who know the traditional Unix command-line tools inside and out, but never get their hands messy with C?

      --
      Systemd: the PulseAudio of init systems
    12. Re:What does Linus always say? by BitZtream · · Score: 1

      Linus was able to start the Linux kernel because he was bright and nobody else was doing it.

      Linus was able to start because he started from the beginning.

      Building a system from scratch is almost always easier than working on an existing system if you ignore the time lost (which of course you really can't ignore).

      When Linus started, he was writing pretty simple code. Basic 386 based multitasking and memory management is REALLY easy. The initial Linux kernels weren't the finely tuned beasts of today where every little detail gets scrutinized by lots of people and tweaked so that its very very integral to everything else.

      I could do the first few years of the Linux kernel in a few months (not because I'm special, just because copying it from scratch is easy for those first few years) because there was a lot of nothing happening as Linus was figuring out what he was doing (that is after all one of the reasons he started in the first place). I've got the advantage of already having already learned what he (and a few others) worked on and gathered the first few years.

      I agree with your post, but I think the fact that he was starting from scratch made it a whole hell of a lot easier for a younger less experienced developer to get the task done. I'm by no means capable of working on current generation kernels at this point. It take me months to feel comfortable with them if ever ... but I'm done my fair share of the initial crap that goes into a basic kernel, its not that hard when you're working on the individual bits and don't have to worry about their interactions with a seemingly unrelated million lines of code elsewhere, or worry about the effect of that change on applications that run under the kernel.

      Starting is easy.

      Polishing is a bitch, as is obvious as this is were 99% of most OSS projects fail. The fun easy part is over where you turn out a bunch of cool code every time you type. Now there is a bunch of code that has to be written before you even get to start thinking about a new implementation of something in most cases.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    13. Re:What does Linus always say? by BitZtream · · Score: 5, Insightful

      A developer, as it a real developer and not some perl dweeb, doesn't touch server admin.

      The best C developers I know, are or were admins at one point.

      Writing software for servers is a fuckton easier when you actually understand what a server does and what goes on from the admin point of view.

      A decent developer that understands administration if FAR better than some hot coder that doesn't have the security insight of a gnat.

      You know at those 'BIG' sites you see on the Internet ... facebook, wikipedia, myspace, google ... guess what ... All of their senior level developers ... regularly play admin as well to deal with large problems.

      I'm going to have to wager that you are a developer with no admin experience and little actual development experience since you don't recognize something thats pretty common.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    14. Re:What does Linus always say? by thaig · · Score: 1

      There are lots of situations where a debugger is no use and only log output is. I wonder what you would do when you found that your standard way of doing things didn't work?

      --
      This is all just my personal opinion.
    15. Re:What does Linus always say? by Cyberax · · Score: 1

      There are cases where logging is the only way to find problems, sure.

      However, it that was not the case in my project.

    16. Re:What does Linus always say? by Americano · · Score: 1

      Yeah, because emacs is the epitome of "lean and stripped down," right?

      I've been writing code for about 14 years. For some things, command line, vim, and a quick terminal session are great. For other things, IDEs like Eclipse and Netbeans are absolutely wonderful. Sometimes that multi-view GUI is just right, especially on a bigger (or dual) monitor setup. My usual workflow involves opening half a dozen putty windows to the servers I need to access, and an Eclipse window for the Database, ClearQuest, ClearCase, and perl work I'm touching.

      Big & bloaty? Perhaps. But I'm not getting paid to minimize processor & memory usage on my laptop. I'm getting paid to deliver business solutions, and so I choose the toolset that is appropriate to my workflow and my requirements. Your condescension about the command line likely puts off quite a few people you work with - what a shame you'll find yourself relegated to maintaining the equivalent of legacy mainframe code because "that guy knows command line stuff like this, and nobody wants to work on projects with him anyway..."

    17. Re:What does Linus always say? by NormalVisual · · Score: 1

      While that sets you apart from many of us, it also reveals Windows on your desktop.

      Well, not necessarily - PuTTY runs on more than just Windows, but your point still stands that the parent poster is using a GUI *somewhere*...

      --
      Please stand clear of the doors, por favor mantenganse alejado de las puertas
    18. Re:What does Linus always say? by NormalVisual · · Score: 1

      full of commented-out 'print' statements used for debugging and generally ugly (who needs a debugger?)

      Maybe the guy was forced to choose between print statements and gdb? :-)

      --
      Please stand clear of the doors, por favor mantenganse alejado de las puertas
    19. Re:What does Linus always say? by Anonymous Coward · · Score: 0

      A developer, as it a real developer and not some perl dweeb, doesn't touch server admin.

      *BUZZ*

      Wrong answer.

      In the days of yore, the sysadmin was often a top "real developer" for the company. You know, hard core C (and maybe C++, after it came out) guys. Because in those days, patching a kernel meant doing a lot more than running RPM. Ahhh...SunOS.

      But I'm afraid those days are behind us now, and probably lost forever. But it was a Golden Age, and I'm honored to have been part of it.

    20. Re:What does Linus always say? by dpilot · · Score: 1

      > While that sets you apart from many of us, it also reveals Windows on your desktop. Why?

      I have putty on Windows machines to talk to Linux machines. I have putty on Linux machines, because every now and then I need to talk telnet to some other machine. I don't run telnet, I don't have telnet installed on my machines, and I'd just as soon not have the binary present, at all. I know it's silly, since I can simply not start the server, but I'll go ahead a be a bit silly about it.

      Putty is the simplest way to get a telnet client, for those rare occasions when I might need one, given that I'm usually running X on my desktops, anyway.

      --
      The living have better things to do than to continue hating the dead.
    21. Re:What does Linus always say? by Anonymous Coward · · Score: 0

      Agreed that any good developer should choose his own fav tools. However, I think there is a correlation between tools and competence. In my admittedly limited data set, I have encountered several middling Eclipse users, where emacs or vi users are usually very good. IDEs when used by the competent are good time savers. However, IDEs are also often used by newbies and pretenders. This being slashdot, here's a car analogy: Eclipse is a Hummer and emacs is the Volvo. Hummers are driven by some true road warriors, but mostly douchebags. Volvos are almost exclusively driven by successful, family-oriented folks.

    22. Re:What does Linus always say? by flajann · · Score: 1

      Hey! I take offense to this. I am a 23 year old IT Guy and I program everything in CL. Embedded systems? Command line. Stupid python based interfaces? Command line. Assembly modules for both of those? Command line. I haven't actually used a monitor on my unix box since I installed it. I just putty in and go from there.. please don't group all of us together. I agree, most new IT guys are frigen in love with there pixel candy.. but some of us(IE the good ones you want on your team) still crack stuff out in black and white. The only time I even look at graphics is when I am building out an interface for my robots control systems on my custom remote(LCD + ARM chip + Xbee transmitter/receiver).

      That's cool to hear. I want you on my team!

    23. Re:What does Linus always say? by turbidostato · · Score: 1

      "Yeah, I know it's hyperbole, but after your "putty" comment above, it's a fail.
      I don't see why, putty is a pretty popular remote terminal app"

      Because that obviously means that he is sooooo fluent on Linux... he uses Windows on his desktop.

    24. Re:What does Linus always say? by flajann · · Score: 1
      I do mixed mode. I do run Gnome, but use it for launching multiple Konsole sessions. Since I am doing web development, I do need to run the big 3 browsers. Etc.

      I am not totally adversed to GUI, as I was a GUI developer for many years in the 90's. Writing GUI code is inordinately complex and you still can't get all the functionality that you can from command-line, except, of course, for those applications that are GUI-intensive, like animation and ray tracing. But many have written such engines without a GUI front-end.

      I'm just annoyed at those who *only* know GUI, only know one programming language, and have a hard time dealing with basic data structures and can't tell a LIFO from a FIFO. I wrote an operating system when I was 18, back in 1980, and it was a lot of pure fun. It was preemptive multitasking, ran in 64K of RAM, and on the bigger machine it did paging. All that WITHOUT college.

      So I may be a bit jaded when I look at today's college grads that only know a couple of high-level languages and would have no clue what an interrupt is. Obviously, that's not always the case, and is definitely not the case with the crowd on /., but it's what I come across all the time when I hunt for candidates.

    25. Re:What does Linus always say? by flajann · · Score: 1

      I still use Emacs proudly. I find big bloaty IDEs like Eclipse get in the way

      Really, the only thing you are saying here is that you like YOUR big, bloaty thing over someone else's big, bloaty thing. There's really nothing insightful about that at all.

      You have a set of tools you are comfortable with, and others have theirs. Each have their merits and each have their drawbacks. What is new is not necessarily an improvement and what is old is not necessarily the best. To discard either out of hand on their "whiz-bangedness" or "tried-and-truedness" rather than on its merits is the mark of a fool.

      You calling me a fool? :-)

      And even though Emacs is "bloaty", it's bloaty by 1980 standards. Not by today's standards.

      Having said that, I do like the class browser features of some of the more current IDEs, Something that Emacs could use some improvement on. But I love the overall power Emacs has that the other IDEs never will, such as its keen macro abilities, limitless configurability, small memory footprint by today's standards, and it's wonderful ability to run in a text console as well as a GUI window.

      But I don't want to start an IDE RWar. Just ranting, basically. I've used Eclipse, Visual Studio, and a couple of others in the past, and I still think Emacs beats most of them in a number of areas.

      When doing Java development, especially when dealing with J2EE, you are probably better off using Eclipse or other IDEs specifically geared to deal with that (over) complexity. But Java is quickly loosing ground to some of the other solutions available.

      I always say, use the best tool for the job. But beware if the tool itself becomes a millstone around your neck. I've seen that happen way too many times in the past. Probably the worst of the lot was Microsoft's MFC framework, where you had to go around it every time you wanted to get something useful done. Don't know what .NET is like, nor do I really care too, really. I left Microsoft development for Linux many moons ago and I am not looking back.

    26. Re:What does Linus always say? by flajann · · Score: 1

      You are confused. One minute you claim long winded text entry for 30 years beat tools designed to replace the drudgy or trivial stuff is better, then you claim you write noddy script to toy server duties. A developer, as it a real developer and not some perl dweeb, doesn't touch server admin. So what is it? I suspect you're a low skilled UNIX package user that's been using packages for your job, but you dabble in code for trainee level work.

      IDEs have a place, they can get the cruft out of the way, if you're development time is cheap, you're not a real developer. Get back to your 10 line "scripts".

      Really? You are wrong. Very wrong.

      My career got kicked off with writing an operating system from scratch back in 1980 when I was 18. Since then, I have done just about everything -- systems development, middleware, and applications. From software architecture to database architecture. Network programming, number crunching stuff, and more to boot.

      Do YOU know what a "real developer" is? How many languages you know? Let's see -- do you know C++, C, Java, assembly, Ruby, Python, Forth, Lisp, PHP? Have you ever written a driver, let alone a complete OS? How are you with multithreading? Know the difference between a semaphore and a critical section? Spin locks? Do you know what a coroutine is? First class functions? Can you handle C's pointer arithmetic without bringing the entire system crashing down to its knees?

      And you think I'm just a "low-skilled perl dweeb". Right.

    27. Re:What does Linus always say? by flajann · · Score: 1

      A developer, as it a real developer and not some perl dweeb, doesn't touch server admin.

      The best C developers I know, are or were admins at one point.

      Writing software for servers is a fuckton easier when you actually understand what a server does and what goes on from the admin point of view.

      A decent developer that understands administration if FAR better than some hot coder that doesn't have the security insight of a gnat.

      You know at those 'BIG' sites you see on the Internet ... facebook, wikipedia, myspace, google ... guess what ... All of their senior level developers ... regularly play admin as well to deal with large problems.

      I'm going to have to wager that you are a developer with no admin experience and little actual development experience since you don't recognize something thats pretty common.

      Wouldn't surprise me, since he thinks I'm just a dumb perl dweeb.

      And oh yes, I've dealt with doing database admin for a major social site that saw 60,000 simultaneous users daily. Not exactly the size of Facebook, but definitely way beyond some small-time mom-and-pop operation.

      What really helped was having a deep understanding of the OS architecture and of software in general. Understanding WHAT the database does at the low level, like IO to the disk, was *critical* in making that site work and reliable. And it's just not the sort of thing they teach in college, I don't think.

    28. Re:What does Linus always say? by flajann · · Score: 1

      There are lots of situations where a debugger is no use and only log output is. I wonder what you would do when you found that your standard way of doing things didn't work?

      Yeah, like debugging a multithreaded application. Way back when when I was doing that in Java development, I actually found JDB command-line far more useful than the debugger in the big bloaty IDE of the time.

      It's all about the right tool for the job. Someone who couldn't handle command-line would be hamstrung by the limitations of the IDE. When I run up against those, I ALWAYS have options around.

    29. Re:What does Linus always say? by flajann · · Score: 1

      Most of the young developers and sys-admins I've been running into lately are completely clueless about the command-line. They expect bloaty web interfaces and resource-consuming IDEs to "hold their hand" and do what they otherwise cannot do.

      Back when I was paid to make sure everything would run as long and as smoothly as possible I would craft well written scripts, config files, and documentation. My last employer didn't care about that kind of stuff and wanted things done quickly, so you can be damn sure we used Windows.

      Right clicking to add a DNS zone, virtual hosts, or firewall rule is often faster than adding lines to a config file. It may not have the same level of precision, but it's fast.

      I wrote web interfaces to do that sort of thing, and it's not only fast, but it's precisely what I needed, done the way I needed at the time.

    30. Re:What does Linus always say? by flajann · · Score: 1

      Yeah, because emacs is the epitome of "lean and stripped down," right? I've been writing code for about 14 years. For some things, command line, vim, and a quick terminal session are great. For other things, IDEs like Eclipse and Netbeans are absolutely wonderful. Sometimes that multi-view GUI is just right, especially on a bigger (or dual) monitor setup. My usual workflow involves opening half a dozen putty windows to the servers I need to access, and an Eclipse window for the Database, ClearQuest, ClearCase, and perl work I'm touching. Big & bloaty? Perhaps. But I'm not getting paid to minimize processor & memory usage on my laptop. I'm getting paid to deliver business solutions, and so I choose the toolset that is appropriate to my workflow and my requirements. Your condescension about the command line likely puts off quite a few people you work with - what a shame you'll find yourself relegated to maintaining the equivalent of legacy mainframe code because "that guy knows command line stuff like this, and nobody wants to work on projects with him anyway..."

      When you are managing a hundred servers (or more) for a high-profile, high-traffic, high-availability web site, good luck with your GUI tools. Unless they were written *specifically* for that operation, they are NOT going to be a good fit.

      I'm not putting down GUI entirely -- as I am all for using the right tool for the job. If you are doing Java apps, Netbeans or Eclipse is probably the best way to go. But Java is not the best choice for everything, and there are many different environments out there. Rare is the luxury of designing the environment from the ground up. Usually, you are thrown into the middle of a failing mess that someone else created. I too got paid to deliver, and deliver I did.

      Oh, and my people were very happy to work with me, as well as other departments who always came to me for "all the answers".

    31. Re:What does Linus always say? by Anonymous Coward · · Score: 0

      I can (and do) configure web servers from command-line all the time. I create wonderful scripts that do specific routine tasks for me. And you know what? It works. It's lightweight. And easy for me to maintain. And document for someone else to use

      BFD, Me too and I can't program to save myself. Congrats on becoming competent at using google.

    32. Re:What does Linus always say? by b4dc0d3r · · Score: 1

      And the biggest problem is that if you are a hotshot developer, the only real experience you are often allowed to have playing server admin is in a virtual machine for local development. Everything else is handled by the infrastructure team, and depending how Fortune 500 you are, the coders package all releases and never touch the box at all.

      Taking courses and playing with virtual machines is fine, but there are things that you will never be prepared for until emergency strikes. Learning when copy/paste works through remote sessions, and when you have to move a file, can save tens of minutes on a machine, and I see the *infrastructure* people save, move, copy remotely, File/Open, find the folder again... the system is down, just open it locally, copy, ALT-TAB, paste, F5. You have to solve the problem quickly and correctly.

      Making a person admin their own app is the best way for them to learn - either they write good code, or they get calls at night or on holidays. Of course you need some backup with that plan, unless it's not an important server.

      You just don't get that much experience, especially if your employer has well-defined roles.

    33. Re:What does Linus always say? by Anonymous Coward · · Score: 0

      Geek fight, everyone! Next on, fight about who can live in a basement without light the longest. Dude I use a 20 years old monochrome monitor. I mean, who needs more than that??

      Now on the serious side, as a professional embedded linux developer, I have to say I am pretty happy that my "trying to fix X for a week" are over because when I get home from work, I just want everything to work so I can watch a movie. Yes my home pc is windows only

    34. Re:What does Linus always say? by shaitand · · Score: 1

      The GPP was claiming he never touches a gui. Putty uses a gui by definition. Generally a windows gui is implied since very distro will install telnet and ssh for you by default but that really isn't the point.

      Dude failed, he uses a gui as his desktop which means 90% of the time.

    35. Re:What does Linus always say? by shaitand · · Score: 1

      True emacs is a little bloated but I'd use nothing else to handle my home automation system. Oh, and to run my coffee maker, and to do my taxes of course.

      About the only thing I don't find emacs to be suited for is editing text. I'd use something more targeted like vi for that.

    36. Re:What does Linus always say? by Americano · · Score: 1

      When you are managing a hundred servers (or more) for a high-profile, high-traffic, high-availability web site, good luck with your GUI tools.

      Frankly, when you are managing a hundred servers (or more) for a high-profile, high-traffic, high-availability web site, your job is more correctly termed "operations" or "system administration," not "development." I'll be honest, it sounds like you spend your days writing 100-to-500-line shell scripts, and trying to pass that off as "development."

      I don't know a single developer I've ever worked with who would say "Yes, debugging on the command line without a GUI is far preferable." Sure you can do it, but it's a pain in the ass, and the GUI makes it a lot easier to understand what's going on.

      The code-completion feature you dismiss with a sarcastic "BFD" is often quite helpful when you are working on very large systems that require you to collaborate with other developers. If you didn't write the methods and object code you're calling, and instead are relying on code written by other members of your team (or third-party libraries), that code completion feature is a huge time-saver when you can't remember the name of the methods you're trying to call.

      You may be very skilled at administering systems, but your commentary indicates that you have very little experience writing significant amounts of code as part of a large project. In light of that, I'd suggest that your endorsement of "emacs and the command line" as the best way of doing things is based on a very narrow set of development experience.

    37. Re:What does Linus always say? by Americano · · Score: 1

      I would argue that there are much better, FAR more maintainable ways of collecting varying levels of log in put than "s/^#print/print/g".

      I've run into the situation that the GP post refers to: Self-taught "old school" guy who writes complete shit code and has no idea what he's doing. As a small example, I once inherited a suite of command-line tools that "had been written in shell, but were ported to Perl by one of our developers." He had, for all intents & purposes, "ported" to perl by wrapping just about every shell command in a system( ) call.

    38. Re:What does Linus always say? by SanityInAnarchy · · Score: 1

      I don't know if you know this, but nobody puts monitors on Windows servers either.

      Neither do I, but I don't have any Windows servers. I don't know what Windows servers have to do with this.

      I don't see why, putty is a pretty popular remote terminal app,

      Yes, and it is good for what it is. I just don't see the point unless he's running a Windows desktop -- Linux and OS X both have decent native ssh clients.

      And he was bragging about how good he is with Linux and the CLI, which makes it odd that he'd need Windows, especially at work.

      I agree, GUIs are wonderful for certain things. I just don't see why he'd prefer a Windows GUI.

      I gave up Linux because I didn't need it for work, and the GUI is still utter shit compared to a version of Windows that is a decade old, never mind trying to compare it to a modern version of Windows or OSX.

      Does Windows have sloppy focus? Does OS X? Have any of them, ever?

      How about keyboard shortcuts for moving and resizing windows?

      OS X has finally added Spaces, which is a pale imitation of virtual desktops on Linux. I think nVidia has something like that on Windows, but I have no idea how well it works.

      Interestingly, multi-monitor support is worse on Windows. Easier to configure, but every time I want to run anything fullscreen (including a game), it insists on running on the "primary" monitor -- which is also where Windows insists on putting the task bar and start menu. I want those on my other monitor, which is smaller, but has more vertical space, so I can use my larger "primary" monitor for games. I haven't tried that since XP, though -- maybe it's changed.

      How about you provide an actual example of what's wrong with the Linux GUI, especially when we're talking about sysadmin work.

      --
      Don't thank God, thank a doctor!
    39. Re:What does Linus always say? by SanityInAnarchy · · Score: 1

      Now on the serious side, as a professional embedded linux developer, I have to say I am pretty happy that my "trying to fix X for a week" are over

      Mine too! Let's compare:

      my home pc is windows only

      I guess that works -- now you can try cleaning viruses and spyware for the week instead!

      I fixed the same problem by upgrading to a modern Ubuntu. I can still have everything "just work", I can still just watch a movie.

      Yes, I realize that a modern, well-admin'd Windows can be reasonably secure, but you also have to realize that a modern, well-admin'd Linux can be reasonably friendly. I honestly haven't had X break randomly since Gentoo. Far more often, I have Windows decide my copy isn't genuine, or it just isn't going to resume from hibernate this time.

      --
      Don't thank God, thank a doctor!
    40. Re:What does Linus always say? by flajann · · Score: 1

      vi! You must me more of a systems guy. I'm more of a software dev guy and therefore like Emacs better. I always get tripped up by how to exit from vi -- many utilities like svn automatically drops you in a vi session. Ouch.

    41. Re:What does Linus always say? by flajann · · Score: 1
      I tend to wear many hats at wherever I work, and sometimes have to swap between dev and systems (or ops if you prefer). I prefer dev, of course.

      I hear you on the name completion on large projects, but I always find properly done documentation to be a better approach -- because name completion doesn't really do much to help you understand what the function is supposed to do.

      But, reality as it is, programmers typically hate to document their stuff, so I wind up looking at their source instead. And well, at that point, everything is there in front of me.

      And yes I've done large scale development. Others used the fancier IDEs; I used Emacs. Just as productive, if not more so.

  41. I forgot to finish off by aepervius · · Score: 1

    Now consider again from my previous post about barrier of entry that you go from being a young programmer to programming into the linux kernel (no docs etc...). That is even a worst situation. IMHO we will only see medium to older programmer into the linux kernel.

    --
    C. Sagan : A demon haunted world:
    http://www.amazon.com/gp/product/0345409469/
    visit randi.org
  42. Design choices by Wowsers · · Score: 0, Offtopic

    Speaking for myself, I grew up mostly with Windows, did some machine language programming, C, and C++, Pascal, and eventually settled on Delphi RAD (souped up Pascal). The problem with Linux is there are many languages to choose from, who knows which GUI would help out for the GUI side of application design and make design a bit simpler for a newbie (like Delphi or Visual Basic), choice of QT, Gnome or KDE and so on.

    As Linux is different to Windows, being able to pick one to start with would be good. At that point I will hear someone shout Mono, but that's in some small part mixed up with Microsoft and don't want any part of that any more.

    It's the range of choices and thinking about it, the possibility of ending up designing something with dependencies which as a newbie you've never encountered.

    It's all really daunting to a new comer to programming in Linux, and why I've not really progressed in it, even though I have an idea for an application to design.

    --
    Take Nobody's Word For It.
    1. Re:Design choices by Anonymous Coward · · Score: 0

      On Windows you have just as much choice. For one, all of the open-source tools are also available on Windows. If you discount those, there is basically MFC and the .NET stuff (which offer you a wide range of languages to work with). Oh, and Java and Delphi. And you'll want to use anything but MFC, because MFC is horrible, so that leaves .NET. But which version? And WinForms or WPF?

      Granted, I'll give Microsoft credit for Visual Studio, since their WYSIWYG editor is solid. Then again, Qt's WYSIWYG editor is solid, too and it doesn't constrain you to a .NET languages only (default is C++, but there are bindings for Ada, .NET, Lisp, Lua, Perl, Ruby and that's all I can remember off the top of my head). Oh, choice was bad, wasn't it? Just pick one! Qt is default C++ and Qt Creator is sweet.

      But if you have an idea for an application -- just make it! Why the hell not? The tools are available and all completely free, just reach out and grab them.

    2. Re:Design choices by Bungie · · Score: 1

      RealBasic is a decent RAD tool (similar to VB) which can compile across platforms (Linux, Windows, MacOS). It's not free but it definitely makes developing apps easier and removes the need to choose.

      --
      The clash of honour calls, to stand when others fall.
  43. Linux is but a piece of the puzzle by wayward_bruce · · Score: 1

    Let's not forget that Linux is just a component of the entire GNU/Linux (I know, I know) system. The accompanying software has grown considerably: GNOME, KDE, browsers, various programming languages and environments, utilities, networking tools, etc. all siphon the interest of a young developer into other areas. Linux is, for all its good and bad sides, stable and feature-full. It's not very tasty to hack on unless you have specific interest in OS internals. So while Linux might be losing the influx of fresh blood, there's still lots of energy around it.

  44. Maybe because the kernel is "done" by DalDei · · Score: 1

    Ok I know thats a teaser. No software is ever "done" ... but really, whats left in the kernal that *has* to be done? Sure there can be improvements and tweeks and supporting new devices, but thats all hard work and "engineering". Its not "sexy". I do agree that more people coming out of collage are more focused on higher levels of software, which I dont really think is 'a good thing' but OTOH is not to be unexpected. Much like people dont focus on building their own hardware or improving the C compiler much anymore. Whens the last time you heard the masses asking to make the assembler better ? When I was in collage (80's) it was an exciting challenge to write my own device driver or kernel module ... why ? I think because thats where the "edge" of development was. There were not a lot of "apps", if you wanted to do something new you had to go all the way down to the kernal level. Just to get a file to copy from one system to the other I had to write a network driver ! Nowadays the edge has moved. If your working on a GUI app you dont have to hack the kernel, if you working on a new Web (N+1) App you dont need to write your own device driver. Its already done.

  45. Ballcrushers by SgtChaireBourne · · Score: 1

    And at most junior colleges, there are posers on the engineering staff and IT departments manning the labs that actively hunt down students that aren't toeing the Microsoft line. They come down on those students softly at first increasingly hard until the student knuckles under or quits. Often it's just simple bullshit that is enough, such as putting it off indefinitely with kindly sounding blow-off phrases: "sure, we'll look at linux later, if there is time", ensuring that there never is time. Or other bullshit like "start with Windows and when you have proved yourself, you can try other systems", or still more shit like "why, yes, we teach both Windows and Linux" while actually cutting out all non-MS systems and languages except for leaving a handful of electives with NO hands-on lab work. They also find all kinds of ways to break any non-MS packages that the faculty forced them to install. "Oops, sorry, that last upgrade must have erased it. We'll get right on that next month."

    Some places even relegate all non-MS technologies to a tiny handful of elective course, only available in the final year, which the student might not even have time for even if the interest and motivation have not been rubbed out.

    The problem is not a joke. It's not just kernel developers we are not producing, but programmers, system administrators and software engineers. There are almost no new people coming into the workforce with even a basic knowledge of correct design or methods. Even the big names are noticing this, but they're isolated far enough at the top that they miss sight of the fundamental staffing problems that have allowed Microsoft products anywhere near campus.

    --
    Beta is broken and the link to classic doesn't work. Stop wasting our time or there won't be anybody left here.
    1. Re:Ballcrushers by b4k3d+b34nz · · Score: 1

      The sad part is that the author of that ACM article complaining about bad developers is also the inventor of C++, the impending doom of students who need to learn how to program through problem solving, not fiddle with language-specific configs and compiler BS. Why is it that CS professors feel like C++ should be the very first language students should dive into? Are they trying to destroy their passion?

      And no, I'm not recommending VB as a replacement.

      --
      Grammar Lesson: you're is a contraction of "you are"; your means you possess something; yore means days gone by.
    2. Re:Ballcrushers by gbjbaanb · · Score: 1

      perhaps because if you can do it in C++, you can do it in any other language with ease. We're hiring C# devs at the moment, but if you have C++, we'll take you on more readily (partly because we have a legacy C/C++ codebase, but mostly because you'll be good enough to work with C#). the trouble with hiring .NET devs is that too many of them are just web developers.

    3. Re:Ballcrushers by b4k3d+b34nz · · Score: 1

      If you're looking for somebody with lower level experience, than yes, you would look for someone with C, C++, even ASM experience. But that's not what a college student needs in order to learn fundamentals of programming. They should start high, and work their way back to the lower level once they know how to use a text editor and a compiler. Have you seen college students when they see C++ for the first time? It's always the same: scribble or type everything down madly, then all of the sudden they hit their first WTF with a C++ idiosyncracy, and their eyes glaze over for the rest of the lecture. Or best case, they try to figure out what went wrong. C++ has its uses, and it can be powerful, but C++ on your first day is like learning to drive in the Batmobile minus the fun.

      --
      Grammar Lesson: you're is a contraction of "you are"; your means you possess something; yore means days gone by.
    4. Re:Ballcrushers by Bigjeff5 · · Score: 1

      Damn, what kind of shit-hole school are you going to? I go to a small tech school, and yeah it's primarily Microsoft, but they do teach a little Linux (required for all CS courses) and the Linux classes are very good. They are more network engineering focused rather than programming, so there aren't many programming classes, it's mostly Windows, hardware, and an crap-load of Cisco.

      --
      Security is mostly a superstition... Avoiding danger is no safer in the long run than outright exposure. - Helen Keller
    5. Re:Ballcrushers by gbjbaanb · · Score: 1

      but that's why they're at university - to learn/be taught how top use these tools. They can figure out how to write their own PHP apps by themselves.

    6. Re:Ballcrushers by b4k3d+b34nz · · Score: 1

      What I'm saying is that C++ and .NET (for example), as language and development environments, are too overarchitected and require way more setup than 1st year students need in order to get started with programming. In my opinion, they should be learning programming concepts first, not fighting with setup. It's far easier to teach a student Python, Ruby, Smalltalk, or even Lua to get their feet wet writing code and exploring Object Oriented language. They can learn how to use more complex tools and architectures like those required for .NET and C++ in the 3rd and 4th year.

      I'm not disagreeing that they should at some point learn these tools, I just think it's a disservice to start a brand new student out with them.

      --
      Grammar Lesson: you're is a contraction of "you are"; your means you possess something; yore means days gone by.
    7. Re:Ballcrushers by gbjbaanb · · Score: 1

      ah, now that's clear I agree with you. I started university with Pascal, but I already had learned Basic from my schooldays.

      I'd say that university students still need more exposure to different languages (they don't need to be experts, just understand what's going on). Maybe my idea of university student's capabilities is different from what I was familiar with, and today's students though :)

  46. My take by Andrew+Sterian · · Score: 1

    I'm not young but I tried to get into kernel driver development (out of necessity, not so much itch-scratching) and was thoroughly frustrated by:

    1) Lack of useful documentation
    2) Constant churn in the kernel

    I wanted to allocate memory in a driver. Lots of memory (64MB on an embedded system). I read all of LDD (latest revision) and tried everything: memory mapping, kalloc, vmalloc, ioremap, etc. etc. Nothing worked, and the book was so i386-centric that on my ARM system the explanations didn't really make sense. Eventually (we're talking several DAYS) I made something work using mmap.

    And don't get me started on interrupts. Where do they even start? Where's the interrupt handler? WTF is the difference between a hard interrupt, a soft interrupt, and a virtual interrupt? I spent DAYS trying to figure out the exact sequence of code that represents travel from the hardware event to the final driver code (because it was necessary in this case) and had to give up. Interrupts are just magic.

    And yes, I can read source (and I did).

    As for churn, it seems like every week there's a new scheduler, a new memory allocation strategy, a new filesystem, etc. etc. QUIT IT! Is it really improving things that much? Every major system that gets replaced in the kernel obsoletes a bunch of code that now has to be rewritten to keep up. Worse, it makes whatever documentation there is (e.g., LDD) out of date. It was no fun reading parts of LDD only to look at the actual 2.6.24 source and see that parts of the book were already out-of-date (I can't remember what now).

    If the kernel devs are only interested in itch-scratching then their numbers will continue to dwindle and Linux will fade in favor of a system where people actually do hard work: proper documentation.

    1. Re:My take by Anonymous Coward · · Score: 0

      I don't mind so much what you call "churn" in the kernel. It's evolution - a chaotic and messy fight to the finish where only the best survives. But the lack of useful documentation is a real deal-breaker for me. The lack of design documents makes my teeth hurt!

  47. IPhone? by Anonymous Coward · · Score: 0

    Wouldn't you rather be writing code for the latest sexiest thing rather than your father's OS?

  48. it's apples fault by Anonymous Coward · · Score: 0

    all the young kids are using apple products that just work and don't require
    them to hack or fix anything so they don't even know where to begin
    as far as programming for a operating system.
    Unlike the older generation that cut their teeth on punch cards and basic.

  49. The real work needed isn't in the kernel. by anethema · · Score: 2, Informative

    I'm a veteran Linux user but have moved to OSX some time ago, since it gives me the UNIX I need, and the GUI I so sorely crave.

    BUT recently, I was trying to get someone's computer up and running, and Linux was the only thing that would install due to some bug or other, so I temporarily put an Ubuntu install on their computer. Decided it would be a nice experiment for a non power user, to see how well they could cope.

    He hated it. He couldn't get flash going, so it wouldn't work with certain sites. He was having trouble doing basic navigation of the OS, and had no idea which programs really did what beyond the basic.

    There were a host of other issues I can't really remember now, but it was a very frustrating experience for him, and he was very happy when he got his Windows 7 back.

    I sat him down with my macbook and he seemed to figure out OSX handily.

    The Kernel works well. The OS handles many things very well internally, but the overall user experience, while MUCH MUCH improved over how things used to be, just is not as easy to use as a Mac or Windows computer.

    The real work needs to be done by UI designers with coders to support them. Even connecting to a wireless network can be a chore. God forbid a driver doesn't work or something along those lines and you need to open a terminal.

    While you'd think the 'many eyeballs' thing would take care of something like that, it seems all these eyeballs and the heads behind them just want their OS to work, and for a non power user right now, I wouldn't call it ready.

    --


    It's easier to fight for one's principles than to live up to them.
    1. Re:The real work needed isn't in the kernel. by shutdown+-p+now · · Score: 3, Insightful

      Most software development on Linux is driven by developers - they are the guys in charge. If UI designer tells them to do such and such, and they do not like it (excuses vary; e.g. "this is dumbing down to idiot level", or "this is not elegant"), they tell him to GTFO. Knowing this, UI designers often don't even bother.

    2. Re:The real work needed isn't in the kernel. by Anonymous Coward · · Score: 0

      How is this related to TFA?

    3. Re:The real work needed isn't in the kernel. by Digana · · Score: 2, Interesting

      If it's anecdotes you want, I can provide a counteranecdote.

      My mom runs Debian. She learned how to use a mouse about a year and a half ago. She was getting pretty fed up with Windows, antivirus popup this, ad over here, Sony Vaio crapware all over the place.

      With Debian, her experience has been much more pleasant, in her own words "a lot less bullshit", and she doesn't miss the ads I adblocked for her in Iceweasel.

      Sure, she didn't install or configure Debian... I did that for her, but someone else took the chore of installing and configuring OS X for the hardware it's running on. If you were to install a half-assed version of OS X on some unfamiliar hardware, your user would have the same experience. I chose what the default apps would be, I chose default formats that would be the least hassle for her, I was her one-time sysadmin, and have forgotten about it since. She now uses her Debian laptop mostly for Facebook, email, and opening MSFT Office attachments her friends send her. All works without a hitch. If you or someone else had taken the time to config Ubuntu for your friend, I think your anecdote would be different.

      You could argue that it should just work "out of the box" for all possible hardware, but given the scope of Linux and free software in general, this is an impossible task. There are too many boxes out there.

    4. Re:The real work needed isn't in the kernel. by outZider · · Score: 2, Insightful

      You know, I can hate Linux with the best of them, but.. I know that in Ubuntu, when you are in Firefox, and the first time you browse to a Flash site, it goes, "hey, want to install flash?", and it installs Flash once you click yes.

      I'm failing to see the difficulty of that.

      --
      - oZ
      // i am here.
    5. Re:The real work needed isn't in the kernel. by Anonymous Coward · · Score: 0

      My experience with Linux is that the learning curve is much steeper than with other OSes. Either stuff works automagically, or you need to read dozens of pages of documentation, a few forums, tweak some config files, and run a few terminal commands.

      So a new user has two paths. The first is that everything works and they learn virtually nothing. The second is that stuff breaks and they get a trial by fire that either causes them to leave Linux or spend a pretty solid chunk of time learning and eventually become adept.

      With other OSes there's more consistency between applications and UI paradigms are universal (this is becoming less so in Windows). So once a user solves a small problem in one application, they've learned how to do a little bit more in every application. Many Windows "Power Users" learned nearly everything this way, but this strategy doesn't translate well to Linux.

    6. Re:The real work needed isn't in the kernel. by Anonymous Coward · · Score: 0

      Windows user prefers Windows, news at 11.

      Another anecdotal story. I knew an old lady who lived in a shoe who used her computer for email and web. She started with Windows and moved on to Ubuntu, then wound up with OS/X because MacBooks are so sexy. All 3 OS's were just fine, though the security risks of windows were something of a crime and thus the first switch since that anxiety aint worth it just to surf and email.

      No OS is perfect, they all have their warts and frustrations, and bitching about Linux because it isn't Windows or OS/X is dumb. Any OS is probably fine for your mom, though if it's Windows make sure she knows how to update her virus scanner regularly.

    7. Re:The real work needed isn't in the kernel. by BitZtream · · Score: 1

      Don't confuse your mom not wanting you to feel bad with her actually liking it.

      And if you're going to use someone as an example 'just learned how to use her mouse a year ago' is not a good way to start off.

      You can argue that 'if someone had put a bunch of work into it would have been better' but the reality of it is, he didn't have to put a bunch of work into something else and it was better.

      If you can't recognize the Linux distros have seriously shitty usability, you're just a blind fanboy.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    8. Re:The real work needed isn't in the kernel. by owlstead · · Score: 1

      And then it doesn't work. Sorry, I'm typing this on 64bit Ubuntu, and flash may work now and then. No guarantees. There are problems with Firefox interaction, sound and video (e.g. try it with compiz).

      Some shithead is of course going to argue that this is all me. Well, I've been using computers since MSX, have got 8 slackware CD's distro's, numerous versions of RH/fedora and Suse and I cannot get it to work reliable. I'm both a power user and a programmer.

      So if flash is high on your list of must have features (and for many people it is, using youtube/flashy newssites or tuning in to a flash based radio station is common use), don't install 64 bit Ubuntu or you'll be sorry.

      Desktop Linux has a long way to go, unfortunately that requires even more industry support.

    9. Re:The real work needed isn't in the kernel. by Anonymous Coward · · Score: 0

      Looks like astroturf to me. An emotional story about failure in linux usage? Check. Competently written? Check. Doesn't have anything to do about the actual discussion? Check. Anyone who can write that well is perfectly capable of understanding that their comment is completely beside the point of the technical discussion here.

    10. Re:The real work needed isn't in the kernel. by ajlisows · · Score: 1

      While Linux is certainly still better in terms of security/popups/viruses/malware, a properly configured Windows 7 machine is pretty solid these days. If instead of installing Debian you had loaded a fresh install of Windows on her Sony laptop, installed Firefox, and set her up with a good AV solution (Microsoft Security Essentials would be fine) she would have had a lot fewer problems I suspect. One of the bigger issues with new Windows computers....the crapware...is a manufacturer issue. Not a Windows issue.

      As far as "Linux doesn't work" anecdotes, I get the feeling that a lot of these "Setting up my wireless card was impossible" are told by people who were messing with Linux a decade or so ago. The first laptop that I owned (Toshiba Tecra 9100) was an absolute headache when it came to Wireless networking in Linux. I can't remember which distro I was using at the time...either Red Had or Mandrake. In the last 5 years I've gone through quite a few laptops and I can't recall a single case where wireless networking didn't work out of the box...and I've owned Toshiba, HP, Acer, and IBM laptops.

      My feeling is that right now we have three pretty decent OS options in Windows 7,. OSX, and Linux (Most distros, anyway). It is more matter of personal preference than one or the other sucking too bad to even use.

    11. Re:The real work needed isn't in the kernel. by anethema · · Score: 1

      How does it not involve the discussion?

      No one is working on the kernel because the kernel is 'good enough' for now, and the UI is what needs real work. Can't really make it more clear.

      --


      It's easier to fight for one's principles than to live up to them.
    12. Re:The real work needed isn't in the kernel. by anethema · · Score: 1

      Well that isn't really the case here. The hardware all worked, but he just found the UI frustrating and really craved going back to Windows. This really was not the case when he tried the Macbook.

      I don't really believe it is personal preference. I believe the UI of even the best Linux distros is fundamentally worse than either Windows or OSX.

      For me? If I was choosing between Windows and Linux, I would (and did for many years) chose Linux. But in terms of basic usability for newer users, I just don't believe it is at the level of the 'competition'.

      --


      It's easier to fight for one's principles than to live up to them.
    13. Re:The real work needed isn't in the kernel. by anethema · · Score: 1

      He did this, he's not completely stupid. It just didn't work. Considering it was only meant to be for a few days it wasn't delved deeper into, but the point remains that it didn't just work, and in OSX or Windows, it does.

      --


      It's easier to fight for one's principles than to live up to them.
    14. Re:The real work needed isn't in the kernel. by anethema · · Score: 1

      Fully agree with this. I'm not a great writer so am not always able to articulate my thoughts well on "paper" but yeah, basically, you said it.

      --


      It's easier to fight for one's principles than to live up to them.
  50. Inexperience with C by kabloom · · Score: 4, Insightful

    I think it's the fact that students these days are now first taught to program in Java, and very few spend any time gaining experience in C. I'm TA'ing a class in database internals this semester, and the class project is to implement a simple DBMS in C/C++, and about half the class is having a hard time because they're unfamiliar with the C++ programming. (And if you ask them to eschew OOP to program in straight C, there are probably even less people who could handle it.) The skills just aren't as common as they once were.

    1. Re:Inexperience with C by porkThreeWays · · Score: 1

      I'm not sure I agree with this. I go to FAU in Florida and they've pretty much standardized on C++. We have to learn microprocessor programming on the 68k. I've had a couple of my professors that graduated in the 80's note that a CS degree at FAU is more comprehensive than it was 25 years ago. They said back then they would essentially learn a bunch of programming languages and now we learn CS concepts once reserved for a masters degree. Our core courses are all in C and C++ (except for the assembly language exceptions). We are allowed 3 electives and many people use those to learn other languages (and honestly 3 electives isn't very much at all). From what I've heard this is more a request of their accrediting body (ABET) than a decision by the university but who knows. I guess it all depends the school because I know my friends at UCF learned their course content in Java.

      --
      If an officer ever threatens to taze you, say you have a pacemaker.
    2. Re:Inexperience with C by GPSguy · · Score: 1

      I taught a summer OS class a couple of years ago, with 5 graduating seniors. I asked what everyone's favorite language was, and then, what other languages they knew well enough to program in.

      Three claimed they did all their current work in Python. One, Java. And one, Visual Basic. Yeah, really. Yes, the class was that small, we made the class to accommodate graduation at two universities.

      None had any exposure to Fortran. Now, before you all get wrapped up in this, I generally write and run numerical analysis codes and weather models, and Fortran is well suited to this application. In the case of three of the students, I think I know why: Fortran hasn't been offered here for 6 years.

      One of the kids claimed proficiency with C, and another said she had experience with C++. The other three claimed C# as an equivalent, and what they had learned.

      Assembly? Oh, really. Give me a break. The first (and last) day I showed an assembly language routine, it was obvious they couldn't follow what I was saying: The logic just wasn't there. And, none had been required to take a class in assembly language for any processor.

      ALL had been exposed to Visual Studio, and had been assured that this was the superior tool for programming at all levels.

      On the positive side, all were comfortable with threads and grasped OpenMP. None, however, had any concept of why we might use MPI for distributed computation.

      --
      Never ascribe to malice that which can adequately be explained by tenure.
    3. Re:Inexperience with C by owlstead · · Score: 1

      That's because programming C++ is hard. Lessons start in Java for a good reason. BTW, I've not seen that problem with switching to C unless you are talking about designing a large software package in C. Of course, when I started, many persons still knew how to program assembly and basic and other non-OOP languages.

      I'll never forget the compiler and linker errors I got when I started learning how to program using C++. That almost made me quite straight away. If that (and makefiles) was required for app. development, I could not see me pursuing a career in it. (oh, and programming had to be done in VI or Emacs of course with CLI compilers and linkers, just to make the experience even more fun).

    4. Re:Inexperience with C by Anonymous Coward · · Score: 0

      Current student here. (I'm about half way through my degree)

      My papers for this semester are as follows:

      Object Oriented Principles
      Object Oriented Programming Java
      Data Management Principles
      Software Analysis and Design

      Most of what I learn is about abstract business systems.
      I would love to learn about how machines actually work, write some C, maybe even some assembly, but the tutors have this idea about what the market is like and they teach that.

      I can't blame them though, head to any job site and you can't help but notice the typical "Java Developer for Business System" type of deal.

      Every day I worry about whether I'm actually going to cut it in the industry with what I'm learning.
      I mean, I can throw together a Java app using NetBeans, when I get to a problem I hit the Java documentation and check out the examples, but It just feels so "empty".
      Don't get me wrong, I love it, I really enjoy this type of "Software Construction", but sometimes I would just like to learn something a bit more low level.

  51. Linux has lost its "elite" status. by SexyKellyOsbourne · · Score: 5, Interesting

    One only has to remember what things were like with Linux 10 years ago, in the year 2000, to know why the interest just isn't as strong today.

    At the time, it had a massive advantage over the Windows 98 platform, which was the common desktop at the time -- it crashed constantly and required formatting every few months, and was vulnerable to total crap like TCP/IP flooding, running unlimitedly powerful .vbs scripts, typing "con con" into a console, and giving IE basically Admin access to your system through ActiveX. Doing anything from zipping a file to hex editing to writing code to making simple video and sound files required outright piracy and the use of horrible freeware -- friendly, open source, cross-platform apps and web apps weren't common. Winamp was a shining example of a great, free program back then, and it wasn't open source and came bundled with AOL crapware.

    Linux, on the other hand was rock solid. It didn't crash, it had anything you needed readily available and installable. Need a web server, an IDE, a hex editor, an image editor more advanced than mspaint, PERL, an audio player, an IRC client or anything else? It was there, no running keygens or installing adware. Same with using existing things like ICQ, IRC, the web, usenet, etc. And they were actually competitive in terms of friendliness compared to what was on the Windows platform. You could also script them no problem from a totally OP command line.

    But it was a terrible pain to install for a young amateur compared to just popping a LiveCD today. Have fun partitioning your HD with raw fdisk (cfdisk if lucky) and setting up XFree86 by hand to see any graphics. Try setting up non-PNP ISA devices with screwy drivers -- often you had to go hardware swapping for something specific, like a $10 Crystal Sound card. Try rebuilding the Kernel with an ALSA patch to get that to run. Try not using a packaging system for anything -- RPM was terrible at the time, you were better off just compiling things.

    But socially, if you could pull it off, you were pretty elite. You had a solid, invulnerable, insanely powerful OS with every tool you'd want at your hands. It was rebellious against the suits and it had the promise of an open source world. The programming was much better -- OpenGL was way, way easier to write for than DirectX 6, which was just nasty, and was cross-platform to boot. The internet population was far more technical at the time and also respected it. Social networking / multimedia was years away from being mainstream at the time. Anyone who ran Linux wasn't a 'n00b' or a 'lamer' on primitive web forums, Usenet, IRC, etc.

    Today? Windows XP/Vista/7 has been comparatively stable and isn't nearly as vulnerable, unless you're just stupid. There's mountains of OSS software out there for every task that runs under Windows, if it wasn't built to run under Windows. No one cares that you run Linux, and will just get frustrated if you can't run the 10% of things a PC can. Ten years ago, the biggest PC game -- Quake 3 -- ran great under Linux, but try getting MWF2 to run under it today.

    So there's no real motivation to get into it now -- it doesn't have the appeal comparatively it did 10 years ago.

    1. Re:Linux has lost its "elite" status. by Anonymous Coward · · Score: 0
    2. Re:Linux has lost its "elite" status. by Anonymous Coward · · Score: 0

      Dude, everyone with a clue ran either windows nt or windows 2000 (later).
      Windows nt 4.0 was an excellent system with great multitasking, stability, apps and gui. And it ran smoothly on 486 with 16mb ram.
      Linux never come close. It terms of functionality, sure; but that was 15 years later, and it required at least 512 mb of ram to run as smoothly.
      (kde 3.x).
      I'm not even talking about lack of applications.

      Windows 9x WASN'T meant to be stable or secure; the main goal was to provide a nearly perfect compatibility with dos applications. That goal was met and the system was a financial success.
      Windows nt* line goal was to be stable, multitasking, secure os, both for servers or workstations. It was also met and windows nt was a great success also, in different market segment; it nearly wiped out unix on servers.
      It was a great developing machine also; you had two computers, one for developing (nt 4.0 workstation), one for testing (windows 95). And everything was great.

    3. Re:Linux has lost its "elite" status. by Interoperable · · Score: 1

      But socially, if you could pull it off, you were pretty elite.

      You and I come from different social circles, I think.

      --
      So if this is the future...where's my jet pack?
    4. Re:Linux has lost its "elite" status. by BitZtream · · Score: 1

      Just for reference, the Q3 server ran fine under Linux. If you think the game itself ran great, you and I have different ideas of what great is. Lets not forget that the state of 3d accel in Linux today is STILL relatively shitty. Do you remember what it was like back then?

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    5. Re:Linux has lost its "elite" status. by CAIMLAS · · Score: 1

      But it was a terrible pain to install for a young amateur compared to just popping a LiveCD today. Have fun partitioning your HD with raw fdisk (cfdisk if lucky) and setting up XFree86 by hand to see any graphics. Try setting up non-PNP ISA devices with screwy drivers -- often you had to go hardware swapping for something specific, like a $10 Crystal Sound card. Try rebuilding the Kernel with an ALSA patch to get that to run. Try not using a packaging system for anything -- RPM was terrible at the time, you were better off just compiling things.

      That was closer to 12-14 years ago than it was 10 years ago. Ten years ago there was Debian, Progeny, and Stormix. There were G400 cards, and ALSA didn't exist yet.

      --
      ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
    6. Re:Linux has lost its "elite" status. by Vexorian · · Score: 1

      It seems almost as if the slashdot post intentionally got a misleading title... Please note: The stuff about "Linux not attracting young developers" is about the Linux KERNEL. KERNEL. This got nothing to do about the remaining parts of the OS. So please don't bring bull about how windows7 is now stable and that's the reason developers don't make apps for linux anymore, because it is not true that young devs are less attracted now into making APPLICATIONS that run on linux-based systems. APPLICATIONS used in Linux-based OS are as healthy as ever if not more healthy. This is related to the KERNEL not being attractive to young developers anymore.

      --

      Copyright infringement is "piracy" in the same way DRM is "consumer rape"
    7. Re:Linux has lost its "elite" status. by Anonymous Coward · · Score: 0

      This is total revisionist bullshit. I'm not even going to bother setting the record straight in detail. But you obviously have no clue what the perception or reality of Linux was like back then. The same exact complaints about Linux being unusable vs the user friendliness and ease of use of Windows were there as there are now. And the reasons for using Linux are basically the same today as they were ten years ago.

    8. Re:Linux has lost its "elite" status. by VGPowerlord · · Score: 1

      Windows NT 4 was a pain to set up, too, thanks to things like the lack of PnP support until Service Pack 5 or 6. There were some Windows applications (including most games) that simply wouldn't run on NT.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
  52. Programming is no longer cool by jandersen · · Score: 1, Interesting

    I don't think it is Linux as such - it is just that programming no longer new and exciting. When I was young, computers were "electronic brains" far beyond the reach of common people; making electronics was exciting back then. I learned programming in high school - and it was incredibly exciting to sit up a whole night transferring a BASIC program to cards with a pencil. Programming Windows 1.x and 2.x was exciting because it was, again, something new and inspiring. Then finally Linux introduced a lot of what computing was all about - preemptive multitasking, full access to all aspects of the system etc etc, which you've never had in Windows.

    But now, I think we have come to the end of the new and exciting things, at least in programming. It is a bit sad, but it had to come to an end, eventually. I've enjoyed it, but it is no longer the hottest of the hot.

    1. Re:Programming is no longer cool by gestalt_n_pepper · · Score: 1

      Um, parallelization? Artificial intelligence? Genetic algorithms? There's still plenty there. The obvious stuff has been pretty well worked though.

      --
      Please do not read this sig. Thank you.
  53. You have to solve one myth. by sam0737 · · Score: 0, Flamebait

    Do I get paid working for the kernel? How do I get company backing me up? I am interested, but I still need a job have to pay for the bills and pizza!

  54. makefiles and pointers by postmortem · · Score: 2, Insightful

    It is simply that they follow path of less resistance.

    Neither dealing with makefiles or coding in low level language that uses pointers are too interesting to young developers, in fact most younger developers/ new grads struggle with makefiles. At best they know how to write make file that compiles single project without external dependencies.

    Same with pointers, less and less courses offer C/C++ coding. Even if they do, it is not sufficient to get involved in huge project.

    So environment is not too interesting, it is actually too difficult for most young developers as these things are not covered too much at class. Let's not forget other thing - laziness - learning all this is not easy. There are other easier devel. env. that do most of work for the developer.

    1. Re:makefiles and pointers by Vexorian · · Score: 1

      Ok, this is a dejavu, but let me put it again: The article is about the kernel.- You will have to deal with C and pointers, and even ASM if you are coding the linux kernel (or any other kernel for that matter). Regarding apps, it is not just C++ anymore, things like python and Java are very suitable for development of linux applications and are already used extensively by young developers interested in such. There is also the travesty that is Mono and many other languages. There are a lot more options than C/C++ now.

      --

      Copyright infringement is "piracy" in the same way DRM is "consumer rape"
  55. Numerous reasons by thetoadwarrior · · Score: 1

    It's not new and exciting any more, they have debt which needs a paying job and they're working too hard in that job because they haven't realised yet to not allow their employer screw them and there are so many open source projects and indie development options that may offer a quicker option to cash than kernel development as far as they're concerned.

  56. Different learning environment. by Anonymous Coward · · Score: 1, Insightful

    When I started using computer it was with 8 bit processors. You had to drop down to assembly code if you wanted to do anything useful, at least for the high performance parts of your program. Even the normal environment you had to give cryptic low level commands to load or save a program from tape/disk.

    Now the hardware is hidden under 20 layers of abstractions so that you can go a day without even seeing a command, just pointing and clicking and using applications.

    And it seems that all the schools are teaching now are applications. I guess it is easier.

    I think that every person that takes computer science in school should have to build and program a simple little computer, learn how even a simple little computer is useful. They could use a pic or arduino processor as the CPU. They should also have to build and / or / xor gates from discrete components and build them upto at least a half adder. This could be done with some software.

  57. Monolithic Kernel = Death of Self-Teaching by mosel-saar-ruwer · · Score: 5, Insightful

    Have any of you guys ever looked at a picture of the Linux kernel?

    My best guess [and I am not trying to be facetious] is that unless you were in on kernel development in the very early days [so that you had some hope of learning it when it was still tractable], then the thing has gotten so big now [what is it - like 20,000 files which get compiled in the basic kernel?], and the learning curve has gotten so steep, that no new developers have any realistic hope of grokking it anymore.

    Seriously - at this point, just learning the kernel would be akin to a 6- or 8-year PhD project [in something like a Department of Archaeology, studying ancient Egyptian hieroglyphics].

    1. Re:Monolithic Kernel = Death of Self-Teaching by Twinbee · · Score: 1

      I wonder what percentage of the kernel is 'bloat' or code that's needed to maintain backwards compatibility.

      --
      Why OpalCalc is the best Windows calc
    2. Re:Monolithic Kernel = Death of Self-Teaching by Athanasius · · Score: 5, Informative

      ...the thing has gotten so big now [what is it - like 20,000 files which get compiled in the basic kernel?]

      But that's counting each and every file system, each and every architecture and most significantly each and every hardware driver. The amount of code you need to understand to be able to, for instance, write a new network driver, is substantially less than the totality of the Linux kernel source.

      Out of ~25k *.[ch] files I count ~9k in drivers alone, plus ~1k in sound. There's ~1.5k in fs and kernel has ~200. Although arch has ~10k only ~700 of those are for x86. Yes, this is a very rough and ready, not to mention incomplete, set of figures, but you get the idea.

    3. Re:Monolithic Kernel = Death of Self-Teaching by david.given · · Score: 5, Interesting

      My best guess [and I am not trying to be facetious] is that unless you were in on kernel development in the very early days [so that you had some hope of learning it when it was still tractable], then the thing has gotten so big now [what is it - like 20,000 files which get compiled in the basic kernel?], and the learning curve has gotten so steep, that no new developers have any realistic hope of grokking it anymore.

      Not to mention the lousy documentation. The kernel docs for Linux are stunningly poor, verging on non-existent --- most of the design appears to live only in people's heads.

      I have a project that involves lots of grubby work with the Linux system call interface (<plug> LBW, a tool for running Linux binaries on Windows <plug/>). The man pages are of very little use here. Not only do they not go into enough detail, but they're frequently horribly out of date. futex(2) now bears very little resemblance to what the futex man page actually does. I eventually had to resort to groping through the Linux kernel code simply to try and figure out how what structures were used where --- and to determine the layout of struct stat I actually had to start comparing hex dumps to find the binary layout (tip: gcc's alignment attribute does not work the way you think it does).

      What's worse is that there appears to be very little recognition that this is a problem. Asking on the newsgroups about futex(), for example, I just got pointed at a years-old PDF entitled 'Futexes are tricky'. I don't believe that any proper spec for what futex() does actually exists. Without prescriptive and definitive documentation, how do you know if it's working correctly?

      Compare to BSD culture: OpenBSD's man pages are a joy to behold --- everything is documented in copious detail, including internal kernel functions!

    4. Re:Monolithic Kernel = Death of Self-Teaching by Yaa+101 · · Score: 1

      uhm... nobody, except for a very few work on all of the kernel code, most developers only have their own small niche within that development.

    5. Re:Monolithic Kernel = Death of Self-Teaching by phantomfive · · Score: 4, Informative

      It's not that bad. If you are interested in getting into it the easy way, here is a very nice book. O'Reilly has another good book about drivers, if you just want to write drivers. The kernel is also well organized so if you want to work on the USB section, for example, it is not hard to figure out where to look. I've seen projects with 20,000 lines of code that were harder to understand.

      It's true that there are ~30,000 files in the Linux kernel, but 25,000 of those are either driver code or architecture specific code, so if you only care about the x86 and aren't interested in drivers, you really only have 6,000 files you need to worry about. If you are interested in a specific part of the kernel, it is even easier: for example, if you are only interested in the ext3 filesystem, that's around 160 files. Which is very manageable.

      --
      Qxe4
    6. Re:Monolithic Kernel = Death of Self-Teaching by kgo · · Score: 2, Insightful

      So did you write a new manpage for futex(2). ;-)

      (Maybe that'd be a good way for a newbie to start contributing. Adding documentation and updating manpages as they get to know the kernel, and scoring cred that way. Of course most developers hate writing docs.)

      --
      Can you construct some sort of rudimentary lathe?
    7. Re:Monolithic Kernel = Death of Self-Teaching by Anonymous Coward · · Score: 0

      Given that the backward compatibility stuff is maybe 100-150 megs uncompressed, and the entire kernel source since 2.4 has gone from 300 megs to 600 megs, I'm inclined to think that backwards compatibility is NOT where the bloat is coming from.

      (Hint: devfs from 2.4 has been dropped since 2.6.8 or so, and udev's kernel/userspace apps are version specific, IE kernel 2.6.19 and udev version 130 say don't work together, only 2.6.29 and 130, and if you don't update both at the same time maybe x-windows won't come up, or your input devices stop responding because dbus/hald can't start.)

    8. Re:Monolithic Kernel = Death of Self-Teaching by Angst+Badger · · Score: 4, Funny

      Seriously - at this point, just learning the kernel would be akin to a 6- or 8-year PhD project [in something like a Department of Archaeology, studying ancient Egyptian hieroglyphics].

      This is totally off-topic, but Egyptian hieroglyphs are actually substantially easier to learn than modern written Japanese or Chinese, at least for Middle Egyptian, which is the version of the language one usually starts with. (Late Egyptian in many ways devolved into a deliberately complex secret code for the priesthood, but still involves knowing fewer signs than the average Japanese office clerk.)

      I only mention this in case you're actually interested in learning ancient Egyptian -- I was put off by its complexity for many years until I started to tackle written Japanese and realized that I was attempting something much more difficult than Egyptian, at which point I attacked Egyptian with fresh vigor. That said, fluency in Japanese will get you further in a Shibuya nightclub than fluency in Middle Egyptian will get you anywhere. ;)

      --
      Proud member of the Weirdo-American community.
    9. Re:Monolithic Kernel = Death of Self-Teaching by DesScorp · · Score: 2, Insightful

      "My best guess [and I am not trying to be facetious] is that unless you were in on kernel development in the very early days [so that you had some hope of learning it when it was still tractable], then the thing has gotten so big now [what is it - like 20,000 files which get compiled in the basic kernel?], and the learning curve has gotten so steep, that no new developers have any realistic hope of grokking it anymore. "

      One of my problems with Linus Torvald's "Linux Rules Everything" goal was that this is precisely what would happen. The Linux kernel, in trying to make it all things to all people, would become huge, bloated, and lose the performance edge it once had. The problem with making Linux a desktop kernel AND a server kernel AND an embedded kernel AND... hell, whatever other job you want to throw it at... is that it becomes a big, bloated jack of all trades, and master of none.

      In addition, Linux was born in an era where Unix was super expensive... well beyond the means of a home user... and so was revolutionary if you wanted a powerful, other-than-Microsoft OS. Now Apple has largely stolen whatever thunder desktop Linux was building in the early 2000's. By the time OS X 10.2 rolled around, I saw as many iBooks and Powerbooks at Linux gatherings as I did Linux itself. Apple really IS desktop Unix now, not Linux. There's a lot of money in Apple products and services. Apple is also cooler to an audience that's more broad. Doing Apple software... for the Mac, iPhone, whatever... is something that rings with both geeks and the general gadget using public. Linux? Outside of a LUG, people are going to go "What?". When OS X went big, Linux lost whatever chance it had in gaining general mindshare.

      --
      Life is hard, and the world is cruel
    10. Re:Monolithic Kernel = Death of Self-Teaching by Anonymous Coward · · Score: 0

      I haven't been using Linux for a while so I wasn't aware that they dropped devfs. I'm honestly curious why they got rid of it?

    11. Re:Monolithic Kernel = Death of Self-Teaching by Anonymous Coward · · Score: 5, Insightful

      Yeah... sorry. In-depth documentation written by a novice is worse than no documentation at all. Not only that, it will take about one hundred times the amount of time to write. Kernel developers should be writing the majority of it. It's simple work ethic, little different from maintaining code quality, and is beneficial for other reasons, such as aiding in design (documentation before code).

    12. Re:Monolithic Kernel = Death of Self-Teaching by micheas · · Score: 2, Insightful

      I wonder what percentage of the kernel is 'bloat' or code that's needed to maintain backwards compatibility.

      almost none.

      the vast majority of the bloat is the device drivers.

    13. Re:Monolithic Kernel = Death of Self-Teaching by Anonymous Coward · · Score: 0

      Seriously - at this point, just learning the kernel would be akin to a 6- or 8-year PhD project

      Well you gotta do something for your PhD.

    14. Re:Monolithic Kernel = Death of Self-Teaching by BitZtream · · Score: 1

      No ... 160 files to support ext3 ... thats not really manageable to 'figure out'. The very idea means your time is far less valuable than mine.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    15. Re:Monolithic Kernel = Death of Self-Teaching by phantomfive · · Score: 1

      lol actually it is manageable to figure out, because it is well organized. If you have problems with it, especially if you have problems with just the number and not even having looked at the code, then it actually means you need to improve your programming skill.

      --
      Qxe4
    16. Re:Monolithic Kernel = Death of Self-Teaching by jonsmirl · · Score: 1

      There is very little bloat and compatibility code in the Linux kernel. Look at vmlinuz-* in /boot. That's your kernel. Mine is 2MB. Do 'lsmod' - add in another 3-4MB for device drivers (ignore the 11MB Nvidia driver). Your OS is under 10MB of code.

      Much of the kernel is hardware specific. If you don't have the hardware, it doesn't load. The size of the kernel is a reflection on all of the varied hardware it supports, not bloat.

    17. Re:Monolithic Kernel = Death of Self-Teaching by Bodrius · · Score: 4, Insightful

      I don't get why this is marked as 'Troll'.

      I don't quite agree with the AC, but he has a legitimate point: design documentation *should* be written by the developers who authored and understand the design, and not by someone reverse engineering the system after the fact.

      When we are talking about a large uncodumented system-level codebase, any newcomer is by defintion a 'novice', will spend an inordinate amount of time trying to determine *intent* out of the code, and will likely get many such guesses wrong. On most software shops, this would be discarded as a horrible idea because you simply have better options.

      Still, I'd disagree with the poster that for OSS documentation-by-API-user "is worse than no documentation at all".

      Having a novice contribute such documentation could force developers more experienced on that area to review it, encourage them to correct it or even replace it with their own, and at the very least highlight the fact there is a documentation gap.

      --
      Freedom is the freedom to say 2+2=4, everything else follows...
    18. Re:Monolithic Kernel = Death of Self-Teaching by Anonymous Coward · · Score: 0

      IMO, from what I've looked at, OpenBSD actually includes less documentation for kernel functions. The difference is that, whatever there is, it isn't completely outdated and/or terribly wrong.
      Also, OpenBSD kernel code is a bit more readable than Linux's. But Linux code isn't bad at all, has anyone ever looked into GNU tools?

    19. Re:Monolithic Kernel = Death of Self-Teaching by Anonymous Coward · · Score: 0

      I think you have the right idea, to force developers to peer review submitted documentation. As you point out, documentation crafted by an unfamiliar outsider is subject to critical mistakes made by false assumptions and lack of perspective. It would be outright dangerous to rely on, and lazy of developers to endorse without careful examination.

    20. Re:Monolithic Kernel = Death of Self-Teaching by david.given · · Score: 1

      Still, I'd disagree with the poster that for OSS documentation-by-API-user "is worse than no documentation at all".

      It's a tough call.

      One of the worst examples of this is the NSLU2 wiki. This is the official place where documentation is kept. Unfortunately there's no editorial oversight, which means the contents of the wiki is badly sorted, out-of-date, incomplete, and frequently just plain wrong. Actually finding anything is a nightmare because there aren't any proper indices (and MediaWiki's search function is pretty bad, but that's another rant), and once you've found it it usually doesn't help.

      Is this better than none at all? I dunno. The information is in there, usually, but in order to extract the signal from the noise you usually have to know enough that you could figure it out on your own anyway...

    21. Re:Monolithic Kernel = Death of Self-Teaching by AusIV · · Score: 1

      I would agree with this. A friend of mine did his masters thesis on a new concept of mandatory access control. I tried to help implement this in the Linux kernel, taking charge of the Linux Security Module. I spent an entire summer doing researcher and worked on it for large parts of the adjacent school years, and I could never really get a grasp of how to write an LSM. There was some documentation from early on, but that was from when Linux Security Modules were actually modules, not statically compiled into the kernel as they are today. Everywhere I looked, the sentiment seemed to be that the only LSMs that anyone had written were part of the main stream kernel, so there was no reason for it to be modularized. All of the documentation was out of date, and nobody seemed to be interested in helping some newbie find his way through the kernel. After a while, interest in the project waned and I gave up on it.

    22. Re:Monolithic Kernel = Death of Self-Teaching by onefriedrice · · Score: 1

      Have any of you guys ever looked at a picture of the Linux kernel?

      You could create a visualization similar to that for any moderately complex piece of software. I think other factors are more important when it comes to learning a new project than the size of the tree. If you're already intimately familiar with the language and general patterns used in the source, the rest is just getting adjusted to the style and becoming familiar with the architecture you need to be concerned about. To do that, you just gotta take the plunge and get your hands dirty. In any event, if the software is architected reasonably well, there shouldn't be any reason to be overwhelmed with the size of the tree.

      --
      This author takes full ownership and responsibility for the unpopular opinions outlined above.
    23. Re:Monolithic Kernel = Death of Self-Teaching by LingNoi · · Score: 1

      So what you are saying is that because Apple has managed a successful advertising campaign that they will now control nix operating systems forever? Yeah, I can see how the "me too" apple fan club might see it that way but back in reality it's pretty even turf with no clear winner. Apple advertises a lot, Linux has 0 advertising and is on tons of embedded systems and desktops. Just because you don't know it's there doesn't mean people aren't using it.

    24. Re:Monolithic Kernel = Death of Self-Teaching by nahdude812 · · Score: 1

      160 source files is a lot to you?

      Aside from number of files being a terrible predictor of code complexity (splitting into multiple files often decreases the intuitive complexity), this is still a really tiny number of files to be complaining about.

    25. Re:Monolithic Kernel = Death of Self-Teaching by Strudelkugel · · Score: 1

      I am currently listening to the Teaching Company lecture series History of Ancient Egypt which is quite interesting. Bob Brier is also a fantastic lecturer.

      I'm not so sure your post is that OT. The manner is in which ancient/lost civilizations are studied is very process oriented, and of course the study of the languages requires understanding of abstraction and the context in which they were created. I think software development has a number of similarities. Maybe CS 101 should be the study of an ancient language. Egyptian writing would actually be a great candidate.

      --
      Imagine how much harder physics would be if electrons had feelings! -Feynman, maybe
    26. Re:Monolithic Kernel = Death of Self-Teaching by Americano · · Score: 1

      So you want to attract new people to the development by asking them to write documentation, which you then go on to admit is a task "most developers hate"?

      Not a likely scenario. If the developer writing the code can't be bothered to document it, why would a newbie - who has to struggle just to understand what the code does, much less the design intentions - write documentation for it? They will likely get a thousand design points *wrong* because they will make assumptions about intent that were not present in the original developer's design, and that were not documented in any way, other than a cryptic comment like:

      /* Sean Connery gambit. LOL. Come back and document this later. */

      WTF is a Sean Connery gambit? Who knows. Only the developer who left that flavor text, and it's likely he doesn't even remember anymore.

    27. Re:Monolithic Kernel = Death of Self-Teaching by Anonymous Coward · · Score: 0

      I agree with the above. I was amazed at the quality of the BSD man pages in relation to Linux's the first time I saw them.

      That aside I believe there is a worse, major, related issue that the above is just a symptom of. Since the advent of 2.6.x there is no stability in the kernel code base. And I'm not talking about system stability, although I found that quite common in many of the initial versions of 2.6.x. Linus decided that other kernel developers and him were just not disciplined enough to do work on a "stable" kernel. They would always work on the experimental one. Few wanted to fix anything in the stable kernel tree. And the stable kernel tree would grow stale in features as it took them so long to release a new stable version.

      His vision above might have been correct but I believe his solution has had a detriment on Linux. For example:

      Up to early 2.6.x we had one "Linux device drivers" book where an aspiring kernel writer could turn to to learn how to write for the kernel. With the kernel interfaces constantly changing from version to version keeping such a book up to date is now impossible and I haven't seen any update since the 2nd revision covering only early 2.6.x.

      Time, energy, manpower, and your computer resources have been spent doing an ideological cleansing the kernel that would have been impossible had there been a requirement towards kernel interface stability. i.e. the module licensing code addition to kernel module writing.

      Many binary, semi-binary, or even sourced modules just cannot keep up. VMware 3.x's kernel modules is at best able to compile to 2.6.16.x. Any release higher than that would not work. And the patched version of the modules floating on the internet, from sources unknown (ALERT possible back doors), don't really work very well. I had/have to maintain VMWare servers on an ancient kernel. Even 4.x isn't much better in this regard. And while the company will be blamed, with some good reason, Linux interface instability have made the situation much worse. Furthermore decent performance requires playing with a bunch of kernel, system, and vmware options. Windows is literally install and play as far as this goes.

      The above applies to those possible Linux developers, including me (I have done kernel writing in the past). There is no stability in the kernel interfaces to work off of. Things could change every 6 months as new versions are released. This should not happen. Its an additional unnecessary burden on the developer and quite frankly discourages many from even starting.

  58. One factor by Dracos · · Score: 1

    Kids today don't have no desire for accomplishment. They don't want to make anything, or do anything, they just want to have stuff. Stuff which requires only a minimum of effort.

    1. Re:One factor by mswhippingboy · · Score: 2, Insightful

      Kids today don't have no desire for accomplishment. They don't want to make anything, or do anything, they just want to have stuff. Stuff which requires only a minimum of effort.

      I don't buy this.
      I heard the same thing from older folks when I was growing up and yet, my generation managed to produce the likes of Bill Gates, Steve Jobs, Larry Ellison and many of today's biggest ego-maniacal douche-bags.
      I think it's quite natural for young people to not find their way until they are in their mid to late twenties.
      Often it takes holding their first born child in their arms to shock them into the reality that life is hard and they better get on the stick or their kids won't have the luxury of -

      no desire for accomplishment. They don't want to make anything, or do anything, they just want to have stuff. Stuff which requires only a minimum of effort.

      --
      Sometimes the light at the end of the tunnel is the headlight of an oncoming train.
  59. Everyone wants in on that open-source cash cow. by billsayswow · · Score: 1

    Because we all know there's so much money to be made in developing for Linux, especially compared to apps for the iStore, or, hell, even flash games... -sigh- It doesn't help that you have recent generations of developing students realistically going through childhood never exposed to Linux proper, or don't realize they're using something Linux-based. Most developers want to play with the things they've used their whole lives, things that their friends or family can appreciate. You could make a Linux application, and have most people never hear of it... or you could develop the next Facebook or Twitter, and become billionaire talk-show-material.

  60. Stupid Java... by Exry · · Score: 2, Insightful

    I want to learn C, but I must teach myself as there are no available classes to take in my school. And this is troublesome, especially when I need some sort of push on the back to actually do these tedious learning-tasks... My school only offer courses in Java...

    1. Re:Stupid Java... by evilWurst · · Score: 1

      Have you asked your friendly local CS faculty? Your school might not have an explicitly "How To Program In C" class, but may still have classes that CS students should take that also happen to cover some C, like a general class about programming languages and compilers. For example, you probably have to learn an assembly language, but it probably happens as part of a computer architecture class, not in a class called explicitly named "x86 assembly 101". (And, IMO, you'll probably find the stuff you learn in that architecture/assembly class useful when you try C).

      Aside from that, I've noticed lately that I seem to have grown my own technique for picking up new languages. There's a loose set of programs that I end up rewriting in the new language - they provide me with just the right amount of motivation, feedback, and guided learning to figure out how to do common things. What works is probably different for every individual. You may find re-implementing common data structures and sorting algorithms useful. Or perhaps a simple project that happens to force you to learn however the new language handles regular expressions, or database access, or web access. If you're a CS major, you might try rewriting projects from your previous classes in the new language.

    2. Re:Stupid Java... by Exry · · Score: 1

      I appreciate your good tip. I didn't really think of it that way before. But now when you are mentioning it, I will go and ask. Somebody would have told me that before if they knew they had a similar course as of what you described, at least in my own world.

      It actually looks like yo have a quite good technique for learning. I will really try to use that when I have more programs to actually rewrite.

  61. Speaking as a "young developer" by file_reaper · · Score: 1

    It's not that we're not interested in the kernel, it's that the kernel moves so rapidly along with the sheer size of the kernel, where's one supposed to start?
    I've seen some Google tech talks from Andrew Morton and Greg Kroah-Hartman, they both recommend that patching the kernel is the best way of learning it.

    Most universities that I know of either use OS161 [http://www.eecs.harvard.edu/~syrah/os161/] , Nachos [http://inst.eecs.berkeley.edu/~cs162/sp10/] or Minix from Tanenbaum. These kernel's are small enough that a student can know all of it, but is that any good for "real" kernel's like Linux, BSD, etc...?

    I don't think systems programming has lost it's "cool", any respectable university still has a low level operating systems course where they either work on simulated hardware like SYS161 or work on actual real hardware where they have to get their hands dirty with assembly for context switches/interrupt handlers/low level IO (UART's and Serial/Parallel) and do Processes/Multiprogramming/VM in C.

    And no, we're not given any IDE's like Visual Studio, it is still just a text editor (vi or emacs, pick you weapon) along with Makefiles and gcc/gdb. And yes, we were taught Java/.NET/Scheme, and we know when and where to use these languages/tools appropriately.

    Its more about transferring these experience from the "Ivory Tower" world of academia to the real world, and we have no idea how to start that.

    How did you experienced developers start? Did any of these academic kernel's help at all?

    1. Re:Speaking as a "young developer" by Anonymous Coward · · Score: 0

      Maybe by trying to write an own device driver or improve a existing one?

  62. Why? Because it's no fun by Animats · · Score: 1, Troll
    • Too much bloat and churn. The Linux kernel should have settled down by now. After using QNX (80% of the functionality of the Linux kernel with 1% of the code size), I see the Linux kernel as just being too big. One of the side effects of open source development is that you get a slightly different driver for every device, instead of generic drivers. Why? Because no one Linux developer has, for example, every device in a category. Windows has WHQL and hardware standards. Apple has a limited set of supported devices. Android is struggling with "write once, debug everywhere".
    • All the action is on mobile devices, and Linux on a mobile device is like pounding a screw.
    • The Linux GUI is still ugly. There's still a "non-graphical mindset" in the Linux community. This is totally alien to anybody under 30 (40? 50?)
    • Linux failed on the desktop. (There was a real opportunity when Windows XP was late.) Linux failed in netbooks. (Remember Linux netbooks? Try to buy one now.) Only on servers is it a real success. And who wants to work on server architecture? It's like becoming a plumber. (What with the renewed interest in data center water cooling, it is becoming a plumber.)
  63. Get off my lawn by Anonymous Coward · · Score: 0

    Looks like we forget the "getoffmmylawn" tag on this one. Selective memory I take it?

  64. Why? by khasim · · Score: 1

    The interface complaints are just what I keep hearing from programmers on various tech sites, including Slashdot, every time a story comes up regarding filesystems or somesuch. If kernel development doesn't, in fact, suck, then maybe there needs to be a better PR campaign to get the word out, because I've heard nothing but bad things.

    Who cares? There will always be people who complain about something whether or not there is any factual basis for their complaints.

    And there will always be people who repeat those complaints even if they have not taken the time to verify them themselves.

    Meanwhile, there are hundreds of projects that run on Linux. From Apache to Samba to KDE.

    Does Linux really need developers who have to be told that Linux is easy?

    1. Re:Why? by shaitand · · Score: 1

      Just because undeserved reputations exist doesn't mean all or even anything near a majority of reputations are undeserved.

      I am not a kernel hacker it could be a much maligned codebase that is in truth full of coding bliss. It could be that when you've parsed a few hundred lines of kernel code your eyes cross and the hidden comments pop out in 3D, angels sing and play harps, and nymphs appear and give you blowjobs.

      But then again, probably not.

      "Meanwhile, there are hundreds of projects that run on Linux. From Apache to Samba to KDE."

      Coding something to run on top of linux is not the same thing as coding linux.

  65. You say it like it's a bad thing by melted · · Score: 1

    Let the young uns blaze their own trail. Linux is not the pinnacle of technical achievement, and will be even less so within the next decade. There need to be modern alternatives to it, and I'd prefer if they were open source.

  66. As a young developer... by Bri3D · · Score: 1

    My take as a "young developer" isn't that the kernel is too complex or that I don't like developing for the kernel (although it certainly does have its issues) as that the drawbacks outweigh the benefits. I've written device drivers for some stuff I've got laying around as well as done some board support and bringup and the experience isn't any worse than one could expect from such a task. However, working on the *mainline* Linux kernel:

    a) Doesn't get me paid.
    b) Isn't "hip" - you don't see kernel developers speaking at media conferences or hanging out with celebrities, like you do "web 2.0 kids." The no-e-fame aspect is actually appealing for me but not for many of the people I've met.
    c) Involves dealing with a lot of douchebags.
    d) Involves wasting my time convincing an old-hands crowd self-assured of their relative place in the development world that my ideas have merit (also see c).

    I "develop for the kernel" just fine, but I have no interest or desire in getting my patches to mainline - they benefit few people, Git makes it easy to track trunk while keeping my own code around, and I don't want to waste my time dealing with the douchebaggery and politics involved in reaching the mainline kernel.

    1. Re:As a young developer... by mswhippingboy · · Score: 1

      douchebags

      Now be respectful to your elders young man!
      One day you'll get to be a douchebag yourself.

      --
      Sometimes the light at the end of the tunnel is the headlight of an oncoming train.
  67. doesn't make me giggle by Anonymous Coward · · Score: 0

    1) Modify the source.
    2) Make it.
    3) RPMify it.
    4) Install your RPMs on a machine.
    5) Boot it.
    6) Test it.
    7) It doesn't work.
    8) Debug it.
    9) Go to step 1.

    All that's fine, and it's really rewarding when your kernel is fixed or you make a driver, but making something in Perl/Python/Ruby is actually fun.
    I know RPMs aren't required, but we have 'process' here, it's required, and it takes at least half an hour to complete a build. And you may not be able to get test time today, unless you'd prefer 2:00AM. Makes me want to melt on my keyboard.

    And all this because I wanted to prove I could do it. Well, ok, now what.

  68. Linux isn't sexy enough - try Mac by mfnickster · · Score: 1

    ...I heard Mac OS X 10.7 'Cougar' will attract lots of young developers... :)

    --
    "Slow down, Cowboy! It has been 3 years, 7 months and 26 days since you last successfully posted a comment."
  69. That's Right by Anonymous Coward · · Score: 1, Funny

    The kids have all moved on to FreeDOS.

  70. Language problem by gilesjuk · · Score: 1

    These days the Internet is big focus for people and web applications development isn't done in the sort of languages people write kernels in.

    C was a big thing when I started coding, I've not done any in about 10 years.

  71. Re:Why? Because it's no fun by cpghost · · Score: 2, Insightful

    The Linux GUI is still ugly. There's still a "non-graphical mindset" in the Linux community. This is totally alien to anybody under 30 (40? 50?)

    Eh.. Pardon me? What exactly has the GUI to do with the kernel? Most kernel development I've been involved with in embedded devices and all kinds of different kernels and microkernels used a serial console for development... to hardware-test stuff that was written on an emulator. Even writing to something like memory mapped video (e.g. 0xb8000 on PC-like hardware) is luxury at this level, and VESA-consoles is nearly unheard of! Sorry, but GUI is something for application developers, and simply doesn't belong in the kernel. If good ole text / serial consoles are alien to young people, maybe those young people should learn to use them, before even considering writing system software. That's the easiest part of the learning curve anyway.

    --
    cpghost at Cordula's Web.
  72. Is there anything at that layer.. by Junta · · Score: 1

    That *does* seem to attract new people? I.e. *if* you think there are newcomers that would hypothetically be drawn to OS-level function that are somehow uninterested in the linux kernel, what do people see them go for?

    I would theorize that there simply exists a large majority of young developers that are at the least disinterested to downright intimidated by low level workings of platforms. They are taught at an increasingly abstract level, where little things like explicitly freeing memory just aren't part of their vocabulary. I don't know what the course load is today, but when I went through, we were forced to take 'software engineering' (I still have a large degree of doubt over the value of that class, it seemed far too susceptible to fads) sorts of classes that focused on what the market seemed to be demanding at the time, but also chip-level engineering and assembler classes to not view most of the stack as a scary, untouchable black box. I would be fearful the latter parts (arguably less 'practical' for 99% of the career field) would risk being omitted.

    --
    XML is like violence. If it doesn't solve the problem, use more.
  73. The kernel needs better vertical integration by Burz · · Score: 1

    Therefore, it "needs work". As far as I can tell, the only outside group that has real sway with the kernel developers are the webserver crowd. Conversely most of what the kernel group have tried to address on the desktop (scheduling, audio and video issues) has been FUBAR.

    Why the difference? Because the kernel devs are good at satisfying the wants of people who normally deal with technical complexity (like sysadmins), but are clueless when the technology has to integrate with an elegant, straightforward and still powerful UI. That is where designers come in, start to implement their goals, and then send emails to the kernel group saying X and Y need to be tweaked in a certain way to facilitate the designer's vision for the UI. This work well in a corporation like MS or Apple, but the dynamic that would allow this in FOSS is broken. First off, Linus says he doesn't want Linux to compete with MS and that's that; designers are relegated to being whiners instead of being in charge.

    Second, discussing and pushing "Linux" for the desktop is a mass delusion in FOSS circles. Linux is a kernel, and if Apple tried to sell customers on XNU (and Hey Kids!! Mix and match any GUI you want and don't bother me!!) they would also have a vanishingly small market share. Google understands this problem which is why Android is simply "Android" with its own high-level SDK and not "Google's version of Linux -- go learn Linux + misc libraries on your own kiddos and cook us up some nice apps" (yeah right... that's not gonna happen very often).

    1. Re:The kernel needs better vertical integration by Blakey+Rat · · Score: 1

      Keeping this more relevant to the topic, there's also the issue that smart young coders who previously might have gone into kernel development, well, look what they're seeing in the market right now.

      UI is the exciting part, it's driving Google's growth, it's driving Apple's growth, the most interesting work Microsoft is doing (Project Natal on the Xbox, the Surface table, the Office 2007 UI research) is all based around improving the user interfaces of established devices.

      Working on the kernel is about as far away as you can get from the really interesting work going on right now. Project Natal developers don't give a flying whit whether the Xbox 360 runs Linux or BSD or Windows kernels, that's completely irrelevant to their work.

      Note also: this is a really, really, really good thing! Computer UI is finally getting some much-needed attention! Programmers are finally learning that if their features are hard-to-use, they might as well not even exist to the average user! Dancing Bear-ware is finally and at long last going away! Exciting times.

  74. Is youth the problem? by EnglishTim · · Score: 1

    If it was really anything to do with youth, I'd expect to see older developers joining the project but not younger ones. Is that really the case, or is it just that *nobody* new is joining the project now?

  75. You don't have to learn the whole kernel by Junta · · Score: 3, Insightful

    I'm not a kernel developer, but I've poked around specific parts of the kernel for various reasons. You do not have to even think about the existence of most of the code to work an a particular segment. Hell, I've created small kernel modules that compiled against a kernel without even having kernel source on my system.

    It might be strictly monolithic in overall architecture, but from a development standpoint much of it isn't meaningfully that different from a modular implementation. Most of the differences manifest at runtime, not at development time.

    --
    XML is like violence. If it doesn't solve the problem, use more.
  76. Huh? by X.25 · · Score: 1

    Well, because they are young (and scared of kernel)? Or because they're spoiled, and are choosing to program in some shitty language/framework where they don't have to understand a thing?

    It has nothing to do with Linux kernel. Most "young" developers I meet these days are nowhere near (in terms of quality, and 'curiosity') the "young" guys I was meeting 15 years ago.

  77. Huge learning curve. by arcelios · · Score: 1

    There is such a huge learning curve, there is simply no way for your average young developer to get into it. Some say that it's good that only older, more experienced people are getting into it. I would argue that when today's youth are older and more experienced, they still won't be working on it.

    1. Re:Huge learning curve. by elnyka · · Score: 1

      There is such a huge learning curve, there is simply no way for your average young developer to get into it. Some say that it's good that only older, more experienced people are getting into it. I would argue that when today's youth are older and more experienced, they still won't be working on it.

      That's because the average reflects the lowering of standards. Average CS student 15-20 years ago was expected to do Pascal/Ada, C, a full-course on assembly (and not just a few weeks), Lisp/Prolog, create multi-threaded/multi-tasked applications from scratch (and if lucky to be at a good university, create a bootloader or mini-os or an embedded app from scratch as well) by the time of graduation. Some even were lucky to learn how to create primitive calculators with hardware in their computer org classes.

      Average CS student now is expected to know how to create a dynamic web site in Java or whatever without ever having to learn how all of this shit works from the moment they press the "power on" button on their computers. Mind you, I do Java for a living, so it's not like I'm a C-enamored freshman bashing Java development for the heck of it.

      So to say that the learning curve is too great for the average developer is just a reflection of the averages TODAY (and an indictment of our CS education nowadays.)

  78. Anonymous Coward by Anonymous Coward · · Score: 0

    Coming from a guy who went from Computer Science, to Computer Engineering, to Civil Engineering and graduating a year ago, Linux programming is unpaid and there are so many damned programming languages out there to learn. Some eventually become obsolete, liek 4TRAN. Didn't you see the article on Oracle and Java? They are having the same problem attracting young talent.

    Also, I'M AN ENGINEER! GIVE ME A JOB! Oh wait, they aren't needed anymore. The economy went to **** and I have to go back to grad school to look attractive in industry again.

    Plus, you forgot the one goal about corporations..."MAXIMIZE PROFIT WITH CHEAPER LABOR!" You put your foot down and say enough, they say STFU we go for cheaper labor. You open a business with some buddies, make a really good product, and get bought out for millions. The American Dream.

  79. No. Youth is more disillusioned with everything by unity100 · · Score: 2, Interesting

    I see it everywhere, in every aspect of life. Back when i was a teenager (18-20 ish years ago) there was still the illusion that you could 'make it' if you pushed it hard enough. you know, good education, good career, a decent, higher middle life etc. and it was true by then here too (turkey). there were many career paths open, there was a demand for many high profile jobs in many sectors. it was good back then.

    but naturally, after 20 years, the market saturated. there isnt a noticeable demand for any high profile engineering, computing etc jobs. not enough to meet the supply that is being pumped out. youth was noticing that as time went by in that two decades. salaries got lower, evened out, promotions and management positions lessened. they also discovered that everyone couldnt be managers, or entrepreneurs and so on.

    so, they have increasingly let go. they are trying to find ways to 'make it' or live a life that will not necessitate them to exert themselves too much while getting little back.

    from what i see, this is no different in other countries in the west too. similar situations, as dog eat dog corporatism pushes forth and sectors are consolidated, more work is being done by less people. and ironically, people who are employed are made work more and more - back 20 years ago it was natural for workday to end at 17.30 or 18.00, now everyone is being worked until at least 19.00 even in top profile jobs. working on saturday became a norm, with the exception of europe - weekends still a reality in usa though.

    so youth see these prospects, and get disillusioned. noone wants to slaver away their life with pitiful number of management jobs, promotion opportunities with little time to spare for themselves.

    this is a direct result of the system we are in and its irreversible for any sector, unless system and our approach changes.

    one exception though, is scandinavian countries. in these countries where there is strong reassurances of future due to a solid social security system working for over 40 years, youth are going for whatever they want to chase. and they are productive too. leaving aside the ones that go to africa or similar places to volunteer for feeding the people etc for u.n., there is a good deal of contribution to both linux kernel and other open source projects from these countries. there are a lot of web apps that are coded and released open source too.

    the contrast clearly proves history right again ; back near the end of roman republic, big farm holders consolidated farm sector by flooding market with produce by employing slave labor, lowering prices, and causing the small farm holders to go into debt. in the end these small farmers had to sell their farms to big farm holders and move to cities. since they didnt have anything to root for in life, any aims, middle class of the society wasnt so keen on the country anymore, they just let it go for free bread and circus games. in the end rome declined and declined in culture, leading to many weaknesses that led to its downfall.

    today is no different. big companies consolidate sectors and make people work for endless hours for slavering wages. in the end, youth either let go, or just refuse to enter the system and become drones in the first place.

  80. Yes and no. by SanityInAnarchy · · Score: 1

    I'd like to draw a hard distinction here between cases where someone is actually being an asshole (see some of the other responses), and cases where you're wasting someone's time because you couldn't figure out how to just fucking Google it.

    I try to be a bit more helpful and offer to Google it for them, but seriously, there are a lot of questions by people who need to follow this flowchart before asking questions.

    The attitude comes, I think, from the fact that this is an ongoing problem. There are enough real questions and real problems, and enough real work to be done, that it's infuriating to see dozens of people asking the exact same questions (which are right there in the FAQ)...

    Eventually, you end up with a situation where, consciously or not, the community has learned that it's more productive to be antisocial and drive away a few good people (and hopefully get a few people who learn to ask better questions) so we can get things done, than to have to deal with the unwashed masses.

    I'm trying not to be elitist here -- again, I present it moderately gently, and I do try to offer an actual response. However, keep in mind that this is not the help desk, but a community. Meet us halfway, and we're generally quite helpful and friendly, though there are obvious exceptions. But if you're not willing to do your homework, don't expect us to go out of our way, either -- in that case, you're the one being rude.

    --
    Don't thank God, thank a doctor!
    1. Re:Yes and no. by The+Abused+Developer · · Score: 1

      Socially wrong - and you just don't see it - even now; however right you are from a nerdy point of view - for the outside world you are the RUDE ASSHOLE if you behave like that even if the right answer is typed HUGE AND CLEARLY ON THE FIRST LINE OF THE ONLINE HELP :-) - yeah I yelled :-). I am a programmer and I feel piss off till the verge of my fingers when the dumbest question hits my ear but I don't forget that being rude doesn't change something positively for anybody but for sure is changing me being perceived as a rude asshole. If we thought that programming is holy art where only enlightened monks will read its secret codices between the walls of monastery and practice its rituals hidden by the stupid, not smart enough ordinary ones - we doomed ourselves. This attitude dissociates socially - and we see it; this is what give success to Microsoft and took it from IBM & Co. This is the result of a fake elite industry where the lucky ones with a tremendous genetic baggage, the powerful social connections and historically timed decisions got the control of it. This poisoned the industry with the spirit of being god-like and disrespecting the mortals - guess what, the mortals kill rude gods who don't fit their needs; the history is plenty of examples - but it requires to read history too and not only computer books and code for getting to it.

    2. Re:Yes and no. by SanityInAnarchy · · Score: 1

      for the outside world you are the RUDE ASSHOLE if you behave like that

      Maybe. One point I was trying to make is that sometime it is better for an open source project to be perceived as a bunch of rude assholes (but who actually get stuff done) than to waste tons of time and energy dealing with all the rude assholes who can't be bothered to Google it.

      I am a programmer and I feel piss off till the verge of my fingers when the dumbest question hits my ear but I don't forget that being rude doesn't change something positively for anybody but for sure is changing me being perceived as a rude asshole.

      Done right, it changes two things: First, I don't have to deal with that question anymore. Second, the person has either given up, or has been sufficiently embarrassed that the next time they have a question, they'll find the answer themselves before asking.

      But again, I try to be gentle about it -- I try to say, "Look, here's what you wanted, but you could've found this yourself. It's generally considered rude to be lazy when asking questions."

      By the way: Maybe I'm weird, but I'd much rather have a decently well-written (but insulting) comment than a comment which runs on and on with no commas periods or breaks that makes me feel out of breath just from reading it not even out loud just reading makes me want to take a deep breath when you finally put that period down.

      Now, if it's a helpdesk, the situation is different. If I'm actually being paid to deal with users, I'll try to educate them, but it's my job to deal with those who refuse to learn. But the open source community is not a helpdesk, it's a collaborative effort. I'm willing to work with you to help you out, but I'm not willing to do your work for you.

      If we thought that programming is holy art where only enlightened monks will read its secret codices between the walls of monastery and practice its rituals hidden by the stupid, not smart enough ordinary ones...

      I never said that, and in particular, I'm not trying to be elitist. Anyone can learn to Google first, then ask, but they have to be told that.

      Again, I'm not calling the person stupid, I'm calling their question stupid, and (hopefully) giving them some valuable advice for the next time they have such a question.

      And there is this crucial little point -- remember how I said "maybe" it makes us a rude asshole? Even the outside world should be able to understand, when it's explained to them -- I'm not the one being rude. If you asked a question that wasted thirty seconds of my time (and everyone else's time on the list, adding up to possibly a few man-hours), and then several minutes of my time looking up the answer and typing a response, when you could've looked it up yourself in ten seconds, you are the one being rude.

      I can still try to be helpful in my reply -- that is, I'll send you to letmegooglethatforyou, instead of justfuckinggoogleit, and I'll offer some other suggestions, and generally won't act offensive (aside from the lmgtfy link) -- but again, meet me halfway and I'll be much more willing to help.

      --
      Don't thank God, thank a doctor!
    3. Re:Yes and no. by The+Abused+Developer · · Score: 1

      see, this is the problem - and I have to acknowledge that I did the same mistake myself many times - you develop a long, logical argumentation for defending your scope; this is just useless in the real world - you still remain with the RUDE stamp for ever after; the best strategy is - just don't do it, or accept that you will pay the consequences :-).

    4. Re:Yes and no. by SanityInAnarchy · · Score: 1

      this is just useless in the real world

      Define "real world". And I've been there, held down a job, and been perceived as friendly and helpful by non-techies, so I do understand how it works.

      But again, you come to my pet project, demand support for something you got for free -- in other words, demand that I take more of my time to help you -- and you don't bother to do your homework? If you want to talk about "what works", what works is for me to ignore you, because I don't owe you anything, and any time I spend dealing with you would be better spent improving the project.

      In light of that, some amount of generosity and genuine desire to help will prompt some sort of response -- but that there was even a response is useless.

      I'm not arguing that I should actually do that, but your argument fails both from a utilitarian point of view ("useless in the real world") and a common decency point of view (do your homework, so I don't have to).

      you still remain with the RUDE stamp for ever after;

      I can deal with that.

      Let me put it this way: It's considered mildly irritating, but generally socially acceptable, for people to approach me out of nowhere -- on the street, in my house, wherever -- and ask if I've been saved. No one really seems to have a problem with people telling me that I'm going to hell because I don't believe whatever they believe. Hell, "In God We Trust" is on all our currency -- added relatively recently, but it's there -- and no one seems to mind. "Under God" was snuck into the Pledge of Allegiance to set us Christians apart from the Atheist Communists, never mind being unconstitutional and uncomfortable for a large portion of the population.

      Yet as soon as I say anything about being an atheist, or about finding their beliefs to be foolish, I'm seen as rude. When Michael Newdow tries to get "Under God" removed from the Pledge, he's the rabble-rouser, the one who couldn't leave well enough alone, the "rude" one.

      In short, people are quick to take offense at anyone, for any reason, especially someone who is different than them in some way. Rudeness is based on weird societal norms, the sort which, on close examination, most of us would not agree with.

      If you want a clear example of this, look at Richard Dawkins. Religious people tend to see him as arrogant, obnoxious, and offensive. Nonreligious people tend to see him as intelligent, polite, well-spoken, and a genuinely nice guy. James Randi is about as polarizing -- either you love him as almost a grandfatherly figure, or you hate him because he called something you believe in and are passionate about "Woo-Woo", but probably for good reason.

      What would your suggestion be, here? Should Dawkins have to become an absolute sycophant in order to be seen as "normal"? Would that even work for him? After all, many people are still going to view him as rude simply for existing.

      Or, bring it back to me -- no matter how polite I am, and it would take a significant amount of work, there are some people who will be offended, even by a legitimate attempt to help -- and note that there are many people, including Taylor himself, who still think that situation was handled poorly. The first email, maybe, but look at the second one.

      accept that you will pay the consequences :-).

      If the consequence is that someone thinks I'm rude, that's OK. But this standard needs to change. It needs to not be rude to call people on things like this -- people need to be a lot more self-sufficient, and a lot more humble, when entering a new field. Otherwise, you end up with stuff like this.

      --
      Don't thank God, thank a doctor!
    5. Re:Yes and no. by The+Abused+Developer · · Score: 1

      Gosh, this is long ... in the real world nobody is going to buy the time to argue about it :-). you can live with it, but the consequences will be against the scope :-), the reality shows it - myself I would like to live in a world where developers are all humble, clear minded and hard working guys - but it is not like this unfortunately and it is a sad experience for me too, but I learned to live with it so that I can move my agenda further :-) otherwise my scope will fall and I will be nothing else but the rude nerd nobody wants to work with me :-)

    6. Re:Yes and no. by SanityInAnarchy · · Score: 1

      myself I would like to live in a world where developers are all humble, clear minded and hard working guys

      There's a difference between humility and humiliation.

      What's more, the fact that some developers are ambitious is why projects like Linux exist. I'm glad I don't live in a world where all the developers are humble, because that would just mean all the marketers would be bold, and we have marketing driving development too much already.

      --
      Don't thank God, thank a doctor!
    7. Re:Yes and no. by The+Abused+Developer · · Score: 1

      good, then go and live in a capitalist society with your proud attitude and see how can u make-it without the sell guys - the subject of the topic shows it - u can't, just like that. i would like seeing the it driven as an engineering field not as a market commodity - this was the idea i dreamed about when i went to uni - when win95 didn't existed yet - but billy and steve took it over and here we are - i was a big linux fan and still i am from an engineering perspective - but the tux as a commodity it is done. the capitalist society dynamics kicked its ass - maybe it will still make an impact in the societies where the NA capitalism is not well received/perceived - but not here, where the money are :-). for making the money showing attention/coming to u - u have to be a commodity - which the tux isn't anymore. M$ was extremely smart in the last decade leaving the tux/OS grow and make waves - has helped them loose the image of the unique Master Of Evil - now, they share the title together with Google, Oracle, IBM but what they gained - they show their products are a real commodity ppl buy for driving and getting done personal and biz tasks -and, for the last KO kick they can point the finger to the alternative. hasta la vista tux - without being happy about it, but really sad; the core ppl attitude did the damage, they didn't get it that after the initial enthusiasm and success for keeping the pace and continuous evolution just waiting for benevolent idealist contributors will not last long - they didn't got the ecosystem clues. who doesn't adapt - leaves the niche to the better adapted - this is the dinosaurs history.

    8. Re:Yes and no. by SanityInAnarchy · · Score: 1

      see how can u make-it without the sell guys

      I never said I wanted to live without them. I said I don't think they need to be in charge. When marketing people are put in charge, who don't understand the technology, we end up with bullshit like this.

      i was a big linux fan and still i am from an engineering perspective - but the tux as a commodity it is done. the capitalist society dynamics kicked its ass

      Erm, what? By what measure is Linux not successful? Seems there are plenty of very capitalist companies which rely on it daily, and contribute to it daily.

      M$ was extremely smart in the last decade leaving the tux/OS grow and make waves...

      So wait, doing nothing is considered "smart"?

      I suppose it would have been smarter than what they actually did. Remember SCO?

      has helped them loose the image of the unique Master Of Evil - now, they share the title together with Google, Oracle, IBM

      Please explain how Linux helped this happen.

      Well, actually, don't. I'm not sure how much more of your rambling I can take. At least learn to spell and use paragraphs.

      hasta la vista tux - without being happy about it, but really sad; the core ppl attitude did the damage...

      Again, what damage? Linux desktop usage is growing, though tiny as ever. Linux server usage is massive, and it's also huge in supercomputing, embedded systems, etc.

      I mean, are you astroturfing, or do you just have no clue what you're talking about?

      just waiting for benevolent idealist contributors will not last long

      ...which is why they haven't. Most of the current Linux development is commercial.

      --
      Don't thank God, thank a doctor!
    9. Re:Yes and no. by The+Abused+Developer · · Score: 1

      *seems* - is just ... seems :-). what is today doesn't warrant the tomorrow ... and this tomorrow looks gloom for tux as there is no tux without young, fresh blood ... i don't know on which planet u live but m$ moved strong on the enterprise development domain not only on the desktop - and on the desktop tuxi is and will be a no-no. there is no market dominance without the desktop ... rest is just silence ... in the last 7 years i haven't seen even one enterprise deployment on linux, all j2ee or .net was win server. on tux i seen only couple of crappy php sites, basta ... wake up, Johny the user-looser gives no crap on couple of supercomputers or what is running his 4x4 automatic guzzler ... what he cares is seeing his porn nice and smooth without the need to swear why his box doesn't play the latest f[u]c*katlon mpg ...

    10. Re:Yes and no. by SanityInAnarchy · · Score: 1

      what is today doesn't warrant the tomorrow

      Yes, yes it does. The way the world is today does determine what happens tomorrow. Burden is on you to show why the future looks different.

      there is no tux without young, fresh blood

      You again assert things without evidence. The reality is that, first, Tux is a mascot, and it's really grating when you use it as a synonym for Linux -- Tux the mascot will exist as long as Linus wants him to exist, as Linus holds that trademark. Second, Linux the kernel will exist as long as people have a use for it, because as long as people have a use for it, it will financially make sense to contribute to it.

      i don't know on which planet u live

      This one.

      m$ moved strong on the enterprise development domain not only on the desktop

      On the desktop, they have a near-monopoly. On the server, not even close -- not even half.

      on the desktop tuxi is and will be a no-no.

      Tuxi is a word you just made up. Please stop.

      And I run Linux on the desktop. Linux desktop marketshare is growing. Slowly, but it's growing.

      there is no market dominance without the desktop

      Bullshit. IBM dominates the mainframe market. When was the last time they dominated the desktop?

      in the last 7 years i haven't seen even one enterprise deployment on linux

      You clearly haven't been looking very hard.

      on tux i seen only couple of crappy php sites, basta

      Johny the user-looser gives no crap on couple of supercomputers or what is running his 4x4 automatic guzzler

      And why is Johnny relevant to this discussion? I thought we were talking about whether Linux is dead or dying, and it obviously doesn't need this one particular user, nor the unwashed masses. Never has.

      what he cares is seeing his porn nice and smooth

      Nope, clearly he cares about more than that. If that's all he cared about, Linux will do it smoother and without the spyware.

      I don't often see someone be wrong more than once per sentence...

      --
      Don't thank God, thank a doctor!
  81. Re:Why? Because it's no fun by mswhippingboy · · Score: 3, Insightful

    All the action is on mobile devices, and Linux on a mobile device is like pounding a screw.

    Umm.. better tell that to the Android developers. Android 1.5 is based on Linux Kernel 2.6.27.

    --
    Sometimes the light at the end of the tunnel is the headlight of an oncoming train.
  82. Perhaps... by Anonymous Coward · · Score: 0

    Perhaps it's because (in my experience) linux developers are pompous, arrogant assholes.

  83. Re:Why? Because it's no fun by Junta · · Score: 2, Insightful

    One of the side effects of open source development is that you get a slightly different driver for every device, instead of generic drivers.

    This is the case for every OS. Some things are done generically (i.e. AHCI driver can support a number of SATA chips without a lot of drawback), others that could be done generically are generally crappy when accessed via generic interfaces (i.e. VBE graphics vs. specific GPU drivers), and others are simply impossible to write generic drivers for once firmware services stop (i.e. most SAS controllers, sound cards, etc). WHQL does *not* limit the number of drivers, and simply formalizes the 'write once, debug everywhere' reality that any platform of that variety endures at the driver level. Apple's approach alleviates them of a lot of that, but their drivers are no less specialized than anyone else, just fewer of them.

    All the action is on mobile devices, and Linux on a mobile device is like pounding a screw

    While I could see QNX and the like as appropriate for the embedded space, Linux is very popular and viable in the embedded space. The vast majority of non-iPhone smartphones are Linux based. That's not to say they all do it well or in a manner that would fit with many people's view of embedded systems, but it's not Linux that causes that parting from the sensibilities of embedded, it's attracting app developers that are too bad/lazy to write good code in an embedded context.

    The Linux GUI is still ugly.

    *The* Linux GUI is an interesting statement. GUIs on Linux range from Android, to Xorg, to Luna in WebUI, to Tivos. If you want to be strict about it,*Linux* isn't about GUI development, it's about the foundation an entire system including a GUI needs. This isn't anti-GUI, this is simply a matter of platform prerequisites. FYI, I'm under 30 and I very very very much appreciate the CLI and not having to carry the burden of GUIs on thousands of headless systems I manage day to day.

    Linux failed on the desktop.

    It didn't fail on *my* desktop. It didn't fail on the mobile device market (it has an order of magnitude larger share than Windows Mobile). In terms of who wants to work on server architecture, the answer would be obviously some people, as a lot of critical effort and money is invested in that space software-wise.

    --
    XML is like violence. If it doesn't solve the problem, use more.
  84. Don't kid yourself by Anonymous Coward · · Score: 0

    The reason more young people are working now with mobile, facebook, etc is because they can, I'm pretty sure the developers from the 90's would have also done the same, had they been able to.

  85. Young people use Macs, they escaped MS that way by gig · · Score: 1

    I meet college-age people all the time and they have an iPod and a MacBook. I met some from Texas recently and I thought they would have Dells, but no: iPods, iPhones, and MacBooks. One literally told me "my mom has a Dell."

    All is not lost for open source. All 3 of the above devices has open source Unix core systems and open source WebKit HTML5 browser out-of-the-box. And the Mac has Apache and PHP, Perl, Python, Ruby. And the young coders I've met are building on top of Apache.

    Linux doesn't do enough on its own for most young people. And they weren't indoctrinated a decade ago when Linux still tried to supplant Windows. So dual-booting Linux/Windows is a drag and PC hardware is a drag. They're working at a higher level than that. They expect a computer to have video editing and iTunes. They expect it to work for 3 years straight while they build websites. The priorities of Linux aren't the priorities of this generation. They're not trying to escape Microsoft through Linux (like Linus), they escaped through Apple.

    So it's partly the sickness of the PC platform, partly the limited utility of Linux for modern tasks, partly that this generation is working further up the stack, partly that they're (rightly) spoiled by the Apple Store, and partly that whoever Linux is made for, it's not for iGeneration.

    1. Re:Young people use Macs, they escaped MS that way by VGPowerlord · · Score: 1

      I meet college-age people all the time and they have an iPod and a MacBook. I met some from Texas recently and I thought they would have Dells, but no: iPods, iPhones, and MacBooks. One literally told me "my mom has a Dell."

      All is not lost for open source. All 3 of the above devices has open source Unix core systems and open source WebKit HTML5 browser out-of-the-box.

      2 of the above devices have a locked ecosystem with Apple acting as the gatekeeper, so I'm not sure what your point was there.

      If I take Linux and embed KHTML into it, but don't let you put apps onto it without my express permission, how exactly is that open even if it does use open source?

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
  86. Didn't I read this 10 years ago? by kroyd · · Score: 2, Insightful
    Browsing through this thread I can't help but recognise the same old arguments: "It is too hard to use for casual users", "it is no fun", "windows is good enough", "developers want to make money", "the gui is ugly" and so on. These arguments are not new, you would find the exact same arguments if you look at old slashdot stories.

    The reality is (as usual) quite different, and the old arguments have nothing to do with the kernel anyway. Look at the latest statistics of who actually writes the kernel: http://www.linuxfoundation.org/publications/whowriteslinux.pdf. From this paper it is clear that the rate of changes has increased quite a bit, and that the latest Linux release probably had something like 1800 different contributors. If you go back 5 years that number is just 400, so the assumption that there are "no new developers" is clearly false. What the first article is really about is that there are "no new subtree maintainers", but that should hardly surprise anyone. The Linux kernel is a huge pyramid (similar to a big corporation in a way), the people on the bottom of the pyramid are not the ones who get sent to the kernel summit, and the people on the top tend to like it there. I doubt that the _average_ age of all the Linux kernel developers have changed all that much in the last 5 years, it might even have gone down a bit, as more of the development is done in China, Japan and India these days.

    Linux on the desktop might not be growing as quickly as some might hope, but it keeps growing faster and faster in almost every other market segment. When was the last time you heard about a new mobile phone, set-up box, web-service or computer science project which was not based on Linux? Sure, Microsoft and Apple might launch their new products now and then, but they are tiny compared to the rest of the market.

    1. Re:Didn't I read this 10 years ago? by ClosedSource · · Score: 1

      "Browsing through this thread I can't help but recognise the same old arguments: "It is too hard to use for casual users", "it is no fun", "windows is good enough", "developers want to make money", "the gui is ugly" and so on. These arguments are not new, you would find the exact same arguments if you look at old slashdot stories."

      Sometimes the old arguments reappear because they are still valid.

  87. The Linux Revolution never happened by noewun · · Score: 1

    I think one reason is all of the extravagant promises made for Linux--the nth Year of Linux on the Desktop--never happened. Linux didn't make any serious inroads into Windows or Mac market share, and, in fact, OS X has been the OS which is steadily gaining share. Millions of users didn't throw up their hands in frustration and switch to Linux desktops, and on and on. Even worse, the future of app development now seems to be remain on Windows and OS X, and the mobile web: iPhone/iPad/Android, etc. And, while the Andriod OS is based on Linux, it's owned by a consortium of large corporations, and is definitely not an community-based, open source project. So, what is to attract young developers to Linux? Where are the jobs?

    That said, I think it's important to draw a distinction between the technology of Linux and cultural aspect of Linux. The technology has clearly been a success, as its domination of the server space, and Android, shows. But that doesn't necessarily translate into a larger societal effect, and that's what I'm getting at. There has been no explosion of the user base, and therefore no need for a huge increase in needed developers. I don't think Linux is going anywhere. But I also don't see the Linux user base expanding and driving the need for more developers and, more crucially, I don't see Linux driving the creation of a lot of jobs to draw younger developers into the fold.

    It's easy to sit back and blame younger developers lack of skill. But, if you were coming out of college with a CS degree, and needed a job, what would you do?

    --
    I am a believer of momentum and curves.
  88. CROSSPOSTED! APOLOGIES! n/t by kgo · · Score: 1

    n/t

    --
    Can you construct some sort of rudimentary lathe?
  89. Know the machine by Anonymous Coward · · Score: 0

    Graduating in 2004, my school made you take MIPS 2000 assembly as well as fundamentals of operating systems which included processor, disk, and memory management. I hope any true CS degree includes classes that are similar. Yes I AC poo poo those lesser beings and would rather if they just wrote their web applications for target audiences less than 20 people.

    As for young maintainers, I'm betting it will be a new *nex grassroots.

  90. Windows Won - by Anonymous Coward · · Score: 1, Insightful

    Unless you're running an old clunker or an extremely low-power portable, or you don't have any other OS available, there's no good reason for Average Joe Sixpack to run Linux.

    Now, Linux is seen as an antiquated, arcane operating system - because it is. The codebase is an incomprehensible train wreck that just keeps getting bigger. There's still no real cohesion to the whole thing. And guess what? To all you 'rebel without a clue' types, it will never, ever be popular no matter how free it is.

    Ten years ago there was a real risk at Microsoft that Linux could displace Windows as a major desktop operating system. As a server operating system (one of the only things Linux does well) it already had. The stability of Windows was lagging miles behind pretty much every breed of Linux, and projects like Wine threatened to bring Windows applications to the platform. Usability was also improving by leaps and bounds, and a lack thereof has always been a major obstacle to Linux adoption. It really seemed like Linux was going to have an impact on the desktop market.

    But ten years later, Windows has improved dramatically. Windows emulation is a joke. Improving usability resulted in a too-little-too-late scenario where it was only after Linux had been definitively beaten that it became usable enough for someone with almost zero prior knowledge of the operating system to install and run it, and it's still very, very far from where it should be in that arena. The best part is how the drive to make Linux more usable caused so much friction between people that actually wanted a usable OS and script kiddies that wanted to be 'elite'. (In every single area of the Linux community, snobs have always been a huge obstacle to progress.)

    Windows won. OSX isn't far behind. Both of them leave Linux in the dust because they know what's important. The extra effort that has to be committed to get most programs working isn't worth it for everyday use. The OSS community has zero expertise in interface building and user friendliness, nor do they have any interest in it. There are no standards, and any attempt to implement them would be seen as draconian, 'corporate', and wrong. Everything that could possibly make Linux competitive as an operating system has and will continue to be ignored by people who have no idea what the average user wants out of an operating system, because they're so used to working with crippleware that they no longer see it as a handicap. The only reason you will ever want to run Linux is if you have no other option. Full stop.

    And this is why the developer base is aging and dwindling like it is now. It has no future. The project is far, far past its prime. Academics will still use it as a cheap substitute for UNIX, and it will still have a home on your repair discs, but the year of the Linux desktop will never arrive. If you guys were smart, you'd abandon it and start over, or maybe migrate over to a project with a sensible kernel architecture.

  91. Hard work deserves to be paid by bettodavis · · Score: 1

    I don't know about that whole "generational" thingie, but what I see is that the minimum skills for entry into kernel development has grown. A lot. And as rule, anything that becomes complex enough to require a lot of effort to learn, it's done only if you get paid for it. The Linux kernel is nowadays a very complex beast, that most young developers prefer not to waste their time getting into and even less for free. Don't get me wrong: Linux is still very much alive and evolving, also, some young developers now in college surely will end up working on supporting Linux, or other open source projects, but they end doing this only because they can get a living out of it. College, girlfriends/boyfriends, mortgage and eventual marriage+kids are costly endeavours. Idealism alone does not feed you or your family (as Erasmus in his Praise of Folly, already knew very well). The time of martyr developers, churning out device drivers for the general good, acclaim and nerd fame is very much gone. And that's fair, as all the effort required to develop Linux kernel code is worthy of earning you a living.

  92. Assholes mostly Re:older developers... by mrmeval · · Score: 1

    Someone reports a bug and goes to great lengths to set their system up to do debugging, run GDB, provide hardware specs and outputs etc. This is a show stopper for the user and several commenters yet the devs will ignore it or put 'won't fix' on it and close the bug with little or no explaination. Yea that's you newsfox.

    That's mild in comparison to some of the developers egoism. Gaim worked very well until the developers decided to defeature it. There was a fork for a time and that did force the developers to add the features back in just long enough to strangle the fork. Then they renamed it pigden and started defeaturing it again.

    In forums too numerous to mention there are old developers convincing new coders NOT to touch linux or free software development as it's becoming a sewer.

    --
    I'd go on a Vegan diet but the delivery time from Vega is too long. --brownkitty
    1. Re:Assholes mostly Re:older developers... by michaelhood · · Score: 1

      That's mild in comparison to some of the developers egoism. Gaim worked very well until the developers decided to defeature it. There was a fork for a time and that did force the developers to add the features back in just long enough to strangle the fork. Then they renamed it pigden and started defeaturing it again.

      As someone suffering from this at the moment (on Pidgin, in particular) are there any worthwhile Pidgin alternatives for win32?

  93. At the same time slashdot growd does not grow much by demiurg · · Score: 1

    While kernel team is getting older, the time does not seem to affect the Slashdot crowd - it still seems to be ruled by teenagers :)

  94. The platform isn't what it used to be by KangKong · · Score: 1

    The young developers have move up one level of abstraction, the platform these days are one level higher it used to be. People have move up with it, the same way as people moved from working with their own hardware, wrote their own software for the hardware, wrote their own drivers, etc.
    People are now developing applications or applications inside applications (web apps in particular). OS-level development is considered as low-level as writing your own application that ran directly on the hardware without an OS.

  95. young developer here by Anonymous Coward · · Score: 0

    I am a college age programmer, and my major problem with working on projects like this are the fact that I'm not sure where to go to even begin learning. My usual strategy for learning something is to poke around at it myself, break it, fix it, and repeat. I'm not interested in buying a huge tome to read for weeks while trying to memorize everything. If i cant figure it out myself after a few good shots, without anywhere to go to learn about it i usually just give up and say "maybe I'll try again later." This is probably why i failed so badly at 3D programming, because there are so many things that you NEED to memorize and know how they function to understand even the basic way it runs, and with all the materials out there to help, not a one is worth its weight in....well....paper

  96. Just my 2 cents by Anonymous Coward · · Score: 0

    Wikipedia (the content, not the source of the mediawiki project), is what most people experience as 'open development', even though it's not programming, and when people's first experiences are "your changes aren't welcome" aka "not-notable" that pretty much paints the picture that OSS projects are snobby elitists.

    Seriously, I add content to wikipedia, or file bug reports to OSS projects knowing full well that someone may simply flag it as "not notable" or "won't fix"

    And as a developer I don't submit bug fixes to OSS projects for the same reason. They either never get integrated or they just get thrown away.

    So I'm done, no more OSS involvement. If people want developers for their projects, they need to actually have a history of accepting or providing feedback on why the proposed solution is a bad one. Not petty arguing about coding styles.

  97. At what rate of payment? by ClosedSource · · Score: 1

    Let's face it. The time that individuals can make the big bucks from Linux is long past. Now that the early contributors have grown a bit older I'll bet some of them wonder why Linus is a multi-millionaire while they received nothing.

  98. it's the jobs stupid. by Anonymous Coward · · Score: 0

    As someone whom has gone down that path, most programmer jobs (especially for those with not large amounts of experience) is in Java, .Net applications, or website design. If the market will not pay for it, people are less likely to put in the effort to learn it.

  99. No Big Bad by naoursla · · Score: 1

    Back in the 90's Microsoft was dominating the OS industry. There wasn't really a choice. The Linux kernal joined forces with GNU to provide an alternative out of necessity. Today there is a lot more choice (largely due to Linux) and the driving necessity just isn't there any more. Young developers don't see a crusade they can join and wave their flag. They see just another career option (and one that seems to not pay as well as other options).

  100. Operating systems are Done by selven · · Score: 1

    There isn't much more that can be done with operating systems. Once the kernel works reasonably well, and the interface works reasonably well, there's no way left to improve (see: new versions of Windows improving the UI mainly with flashy graphics, GNOME and KDE starting to do the same). All the development going on right now is in applications and on the internet.

  101. New breed by elnyka · · Score: 1

    Purely anecdotal - younger generation of developers are more geared/equipped towards making web pages (and usually suck at it) than dealing with low-level interesting (and, at least, be decent at it.) They could be working on Java or C# for 8 years (or say they know C/++) and not know who Gosling, Hejlsberg, Stroustrup or K&R are (which is like looking for a job as a Physicist and not know who Newton is.) Don't know who they are after working on their stuff for years, chances are you suck at it. Purely anecdotal so that it for what it is if your mileage has varied when it comes to this.

  102. Lack of commercial application by Anonymous Coward · · Score: 0

    What are developers doing these days - commercial ones at least? Learning things like WPF, Silverlight, and C#. Most are moving away from C/C++ because they realise that the job market are not that interested in C/C++ developers these days. There only seems to be a couple of reasons why a development shop would use C/C++ these days,

    a) They have a legacy product, which is often ancient and thus not very nice to work with.
    b) They are developing something that wont perform well enough in C# - not that many things these days.

    I am 31, and I moved away from C/C++ in the commercial world 5 years ago because I realised I would be left for dead. I am very happy I did that or else I would still be stuck in the same job I was 5 years ago.

    So why would I want to spend my time getting back into C/C++ to develop a kernel? It is just not appealing to me as it wont further my career. I only have so many minutes in every day, so I have to make a choice. I suspect that young developers are being sucked in by things that look / appear more appealing, most notibly Silverlight and WPF. Microsoft are always pushing the boundaries of new technologies.

  103. Revolutionary enthusiasm fades comrade. by gestalt_n_pepper · · Score: 1

    I mean, it certainly couldn't be about lack of money, eh?

    --
    Please do not read this sig. Thank you.
  104. Deja Vu from the ol' mainframe days by mswhippingboy · · Score: 1

    This reminds me of the way things were many years ago when mainframes were still king. There used to be a very clear distinction between system programmers and application programmers.
    Systems programmers worked on issues dealing with the OS and getting it to talk to the hardware, while application programmers worked strictly on applications - payroll, accounting and the like. In most cases neither had a clue about the others domain of expertise.
    Then it seemed we went through a period where the OS provided more and more functionality on it's own so that not much tweaking of OS itself was needed, and all hardware interfaces (drivers) were supplied by vendors, so the systems programmer's job was relegated to more of an administrator/maintainer role.

    Higher and higher levels of abstraction were made available to application developers which removed them further and further away from low level programming details and enabled them to, in effect, create applications by wiring together the various APIs.
    Very few opportunities were available for systems programmers that enjoyed that experience of working on the "bare metal".

    The advent of microprocessor based systems (later to be called PCs), provided an outlet for all the pent-up desires for system programmer types to be able to code to the metal again.
    A few lucky systems programmer types were able to land jobs working on OS development and a few went out on their own to try and develop something radically new, but with marketing not being their strong suit, after a few years, through an evolutionary process, the only viable OS left standing with broad acceptance was from MS (please table the requisite debate on why that was for another discussion).
    Once again, the system programmers role was quickly becoming one of an administrator with the exception of niche areas like driver development, unless you happened to work for MS (or Sun, or any number of lesser used OSs).
    Finally, with the advent of OSS in general, and projects like BSD and Linux in particular, the door was opened again for a few motivated souls who still relished the thrill of working below the API level.
    There were opportunities to participate from the ground up on the development of new OSs and the excitement was enough to change the IT industry forever.
    The problem is, after a few years, those systems programmers of bygone years are getting long in the tooth and thinking more about their grandchildren, than setting the world on fire with their now 15 year old OS. The sad thing is, most young developers today were educated as application programmers, not systems programmers. A single semester course in OS design and a semester on "C" development is hardly preparation for digging into kernel development.
    Today's myriad of rapidly changing APIs and technologies is plenty to keep a young developer challenged (and hopefully employed) without them having to dig into the gory details of OS design.
    My hope is that innovation will come to the rescue again as it has in the past (although it seems not as frequently as it once did) and present a new opportunity for fresh ideas for OS design and ignite a new generation of systems programmers to bring us into the 21st century instead of continuing to refine the 20th century OSs we have now.

    MESSAGE to aspiring young developers:

    C'mon kids. Get off the couch, put down that Wii/Xbox/PS3 controller, and play the most challenging video game you could imagine. Immerse yourself in C, or even better, in assembler and when you think your're ready, pick up a copy of Minux sourcecode (or some other "small enough to get your arms around" OS) and dig in. You're generation is going to need you as us "graybeards" migrate into the background. If you don't, you'll be at the mercy of the corporations to control your computers. I firmly believe that if open source OSs go by the wayside (or become insignificant enough to ignore) due to apathy, corporations won't make the mistake of letting the

    --
    Sometimes the light at the end of the tunnel is the headlight of an oncoming train.
  105. Good programmers are a dying breed by bl8n8r · · Score: 1

    It takes a certain type of individual to get his/her kicks out of crawling around in kernel code. Besides that, C isn't as sexy as it was 15 years ago. I ran a LUG for a few years in mid 2000 after being a member for about 5 years. There just wasn't the enrollment in the later years; New people showing up were looking to talk web development, not really anything else. There just isn't the interest in programming these days that there was in the early 90's. Back then, if you had a comp, you were coding - Pascal, Basic -something. I don't know many young people with an interest in writing code these days. The ones that are doing it, are using PHP, not C or assembly.

    --
    boycott slashdot February 10th - 17th check out: altSlashdot.org
  106. Why TFA is using suggestive questioning by Hurricane78 · · Score: 1

    The whole article is wrong, since the premise (the title) is wrong.
    Linux is actually the favorite platform of young developers. But your definition is off.
    The thing is, that the younger generation expects quicker results. We have solved memory management, exceptions, garbage collection and data structures decades ago. And so modern people really see no point in re-inventing that wheel again, and again, using an outdated language.

    But that’s exactly what coding in C/C++ is. Sorry to tell you (who love those languages) that. The programming style is not efficient and contemporary. (Execution may be efficient, but that’s something for experienced people like us, not for your developers who first have to become good enough for this to matter.)

    Here, scripting languages like Python, Ruby, JavaScript, Bash (!) and functional languages like Haskell and Erlang shine.
    And when working with those languages, Linux shines even more.
    Everybody can get quick cool results with some JS, (X)HTML5/SVG etc. Or Python and Bash on the shell. It’s very rewarding. It’s useful and fun.

    Then, later, one can move on to Haskell & Co, C and C++, if needed.

    In one sentence: Linux is the ideal testbed for new developers. But Linux as in GNU/Linux the OS. Not as in Linux the C kernel that is a messy PITA even to experienced developers.

    --
    Any sufficiently advanced intelligence is indistinguishable from stupidity.
    1. Re:Why TFA is using suggestive questioning by BitZtream · · Score: 1

      Ahhh spoken like someone who has never developed anything professionally in their lives.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
  107. How sophomorish by elnyka · · Score: 1

    There isn't much more that can be done with operating systems. Once the kernel works reasonably well, and the interface works reasonably well, there's no way left to improve (see: new versions of Windows improving the UI mainly with flashy graphics, GNOME and KDE starting to do the same). All the development going on right now is in applications and on the internet.

    It looks like that *to you*. But the fact is that about 70%-75% of all development going on today IS NOT for internet applications. Automotive and manufacturing, medical devices, military industry, consumer electronics, that's where the bulk of development goes. Ever open that computer of yours and see all those boards in it? Ever seen all those little, strange and mysterious black square thingies, then one called "chips"? Guess what goes on them? Software, and not the internet application type.

    Sorry, but that statement is so wrong on so many levels, it is embarrassing.

    Furthermore, there will always be improvements on how we create things, operating systems included, not unless all of the sudden we stop making advances in computer electronics, solid state devices and network/communication technologies. Are you so naive so as to think operating systems of today will be capable of handing ever increasing challenges in file systems, networking, larger RAM, larger disks, greater bandwidth and greater parallelism? Seriously, what the hell?

  108. Re:Monolithic K warning car analogy ahead by Anonymous Coward · · Score: 0

    Why can't people take copies of the kernel source code from 10 years ago, and scrounge up some old hardware and practice on that to get a feel for how the whole is put together?

    If you want to learn the basics of auto mechanics, you go scrounge up a 1978 ford whatever, put it in the backyard, grab a set of wrenches, and start pulling apart stuff. Fix it, break it, take it all apart, put it back together again.

  109. Dear Young People by Anonymous Coward · · Score: 0

    No, we don't want you to be skilled in digging into murky depths of complicated code and spending time to learn how the low-level stuff works. We just want you to "Git 'R Dun" by pasting off-the-shelf stuff together using scripting languages that don't require you to sit down and resolve things before they even compile (because they won't even be compiled until someone tries to use it). We care about reliable, clean functions doing the kind of complex things that the real world wants, we just want to see GUI displays in a hurry. After all, if the GUI's there, then it's almost all done, right? Forget about those nasty things that don't even have a GUI. They don't count.

    And we want it fast, and we want it pretty and we want it now or there's people in India who say they'll gladly do it in 12 days for $75.

    Signed,

    The Management

  110. Because everybody thinks Linux is everything by Anonymous Coward · · Score: 0

    I think the Linux kernel has become less popular among young would-be developers because of the confusion surrounding the term. Linux has become synonymous with the whole free and open source ecosystem. Developers think they are already contributing to Linux even if they have merely written a simple Python-based frontend to a command-line program or designed a pretty new wall paper. This in itself isn't a bad thing, but it gives young developers a lower mark to claim bragging rights as a "Linux" contributor. Why should I bother understanding or even contributing to the Linux kernel, when I'm already contributing to "Linux" (the whole GNU/X/etc OS)?

    It's like the difference between being a sub-orbital "astronaut" and a NASA astronaut (or Russian cosmonaut) who has spent more than a couple of minutes in outer space. Why reach for the stars, when you could soon touch the sky by becoming a sub-orbital space tourist?

  111. Heres why ... by BitZtream · · Score: 1

    For the last 10 years there have been 2 things happening in the Linux community.

    A small (compared the next group) group of very dedicated developers have been beating the living shit out of each other to make a pretty awesome kernel.

    A very large group of people sat around screaming 'This is the year of the Linux desktop!!!!@$!@#^@3$^@#$&$%*$' rather than actually fixing the shit that preventing the year of the Linux desktop the year before, rinse repeat.

    What that really means is 'all those young kernel developers' you're referencing weren't actually a bunch of young kernel developers who were working on the kernel itself. They were just a bunch of fad followers who weren't actually useful and have sinse moved on. During that time, Linux lost its edge and reason for running it.

    When Linux was started, that winter long long ago ... Your choices were Mac OS 8 (was it 7 still?) and Win95. You were more likely to step out your back door, pick up a rock, and throw it hard enough to hit the space shuttle as it orbitted than to have a stable Mac or Windows machine at that point.

    Within a few years, Linux was big enough to be useful for the basics so a bunch of geeks jumped on the fanboy wagon (I was there too). But no one really contributed. I mean yes, some people did obviously, but the majority didn't.

    The people who did contribute ... still are. The people who didn't, moved on.

    Now those young fad followers are iDevice or Android developers this week. Its far easier for them to make their mark getting posted to the Android market place than getting committed to the Linux kernel. Todays need for instant confidence reenforcement in kids means they are going to go for that rather than actually making a contribution that takes effort.

    Its not really any different today than it was then, except Linux has grown up considerably and isn't the fad anymore.

    BeOS did the same thing, although much smaller and much much much shorter lived, and it died (okay, technically its not dead, but it might as well be). Not expecting Linux to die, but its time in the spotlight is long over, now its just one of the boys and will have to act like one if it wants to stay relevant.

    --
    Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    1. Re:Heres why ... by BitZtream · · Score: 1

      I guess technically it was Mac OS 6 and Win3.1 to the public, I started futzing with Linux during the Chicago Betas I think, my mistake.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
  112. Myself excluded by doublebackslash · · Score: 1

    I'm not a kernel hacker, just yet, but it is a personal goal that I've been working towards for a while now. I don't get a chance to work on anything deeply linux at work, but I've seen some shortcomings in the kernel that I'd like to rectify. One example is the lack of a "Ready Boost" like cache, but a bit beefier, utilizing SSD's to alow large databses to run at SSD speed for writes and cached reads while gaining the benefit of cheap spinning disk storage. This is a LOT of theory work and deep kernel driver stuff that I'm glad to learn on my own time.
    I might be unique, or perhaps the fact that I'm not actively DOING it makes me another statistic, but i think the kernel is a worthwhile cause.

    --
    md5sum /boot/vmlinuz
    d41d8cd98f00b204e9800998ecf8427e /boot/vmlinuz
  113. People want to build useful apps by Luke+has+no+name · · Score: 1

    This may have been said already, but I'll say it anyway. The kernel isn't new, as many have pointed out. It does a good enough job at what it does for most people not to care.

    What people need are useful applications to increase business and life efficiencies. Information systems, bioinformatics, solving life's issues. The kernel is fun for some people, but many don't see the excitement in the project.

  114. the bright youth of today by alienzed · · Score: 0

    including myself, know that reinventing the wheel is pointless. Until the Von Neuman model is succeeded, there's no point in trying to go back and code an OS with all the healthy competition out there today. Unless you are a programmer, Linux is useless for the most part.

    --
    Never say never. Ah!! I did it again!
  115. Chinese by Anonymous Coward · · Score: 0

    Many, soon to be most developers only speak a dialect of Chinese. Most of the kernel comments are in English the last time I checked. There's really no need for developers in free-market countries, it's simply not a valuable skill.

    --edfardos

  116. Re:Why? Because it's no fun by Bungie · · Score: 2, Informative

    Windows has WHQL and hardware standards.

    WDM does divide drivers into class drivers that handle the common device functionality. You then can develop minidrivers or filter drivers which provide device specific functionality. This creates a set of generic driver classes and sort of controls the types of drivers you can create, but you aren't restricted from creating monolithic or legacy drivers which don't fall under the that model. I'm sure about WDF, it may be more standardized.

    I do agree that WHQL is a good thing and probably catches a large amount of buggy drivers. Microsoft also includes the verifier.exe tool with Windows which you can use to perform the same tests as WHQL.

    --
    The clash of honour calls, to stand when others fall.
  117. ehm late addition by Anonymous Coward · · Score: 0

    man bash | format | lpr

    just read it

  118. Reason by nwmcsween · · Score: 1

    Reason for me at least is that Linux isn't interesting as a kernel when there's formally proven kernels like the se:l4 microkernel or a vm based / language verified (read: everything runs in ring0) such as Microsofts Midori. I don't want to dedicate my time to something that is good enough when theres something much better being created right now.

  119. Fact by Anonymous Coward · · Score: 0

    Young programmers who want the advantages of Linux without the drawbacks have shifted to Mac OS X (although not necessarily Apple hardware).

    FACT.

    1. Re:Fact by Ash-Fox · · Score: 1

      Young programmers who want the advantages of Linux without the drawbacks have shifted to Mac OS X (although not necessarily Apple hardware).

      FACT.

      Source?

      --
      Change is certain; progress is not obligatory.
  120. Linux was still a young movement 10 years ago by judeancodersfront · · Score: 1

    now it's less interesting and more corporate. Sure there are a lot of contributers but they are mostly working for companies like Red Hat and IBM. Linux used to be mostly a project of young volunteers so of course the average age of contributers has gone up. Greg KH is also the one who wrote that report you linked to and he is the same person that is placing hope in retiring baby boomers.

  121. Layers Happen by Tablizer · · Score: 1

    For good or bad, that's been a natural progression of technology for quite a while. More layers are added, and each component becomes a complex machine requiring a dedicated specialty in itself. It's not likely to change. Fix-it-yourself Model-T-like objects are increasingly a thing of the past.

    1. Re:Layers Happen by AaronLawrence · · Score: 1

      Yes, in the same way even the programmers of the 80's didn't usually build their own computer out of ICs, let alone build the logic out of discrete transistors... and very few people ever made their own transistors :)

      The only thing that concerns me about this is, the pool of people working on those lower levels becomes ever smaller to the point where there can't be much diversity, so you get (e.g.) the Intel, AMD and ARM CPU teams doing 99% of the CPU design in the world and they can't talk to each other...

      --
      For every expert, there is an equal and opposite expert. - Arthur C. Clarke
  122. Pain by Anonymous Coward · · Score: 0

    While I know how to write Linux drivers, I certainly don't know how to reverse engineer Windows ones. Developing without any documentation is too painful for me to bother with when someone else can do it a whole lot faster.

  123. That's a good point by judeancodersfront · · Score: 1

    Linux was oversold on the desktop and who knows how long it will take for it to even get 5% share. Compare this to 10 years ago when everyone thought Linux would be a major contender on the desktop by now. There's no more revolutionary spirit. Linux is well established on phones and servers and doesn't need any help there.

  124. DragonFlyBSD has actually attracted a lot of devs by judeancodersfront · · Score: 1

    in the past few years which is impressive for how young the project is. I suspect the main reason is similar, it's simply more interesting than Linux. Linux is a big messy monokernel and the people behind it can never agree on what it should be optimized for. It's a jack of all trades kernel that doesn't impress in any single area.

  125. Senial old farts by salemboot · · Score: 0

    Colleges have always looked for an easier way to teach basic computer science to individuals. You can teach data structures in python, visual basic or any other language. The reason they wait to teach C++ later is that you have to get the basis down for the ideas behind the languages. This is a simple rule to life in any area of study. "You build a simple model of a complex idea." "You break down a complex problem into simple pieces." C++ has too much overhead to begin with. Students get stuck in the language and not the idea.

    I like to refer to novice developers as Harry Potters. They learn a new technique and have to cast that spell in every situation. Take the Virtual function for instances, you don't really need it. Just somebody got the idea that it's great to enforce prototyping. Which brings up my current problems with my workplace. You'll get the experts who are really just novices trying to cast every spell in the C# discipline. Most the time because Microsoft has enforced the use of their magic incantations.

    Colleges hardly teach a student what he will need for the working career. I'd say 83% of the jobs at the moment are ASP.NET/C#. 15% are JSP. 2% are Linux related. If you are a student then you had better be learning C# if you want to make a living and have a job upon graduation. GET A COOP JOB BEFORE YOU GRADUATE. That way you have experience upon graduation. I know many graduates that probably think just because they got their degree and certification that they are cadidates for a job. Truth is there is a whole science behind project management you only learn upon working.

    The only Real linux jobs I can think would be tuned for the young people right now are Android developement. 25$ start up fee and you don't even have to own a fone. Sprint also offers something similar. Free SDK. Back to the subject, #1 reason nobody is interested in Linus development is that Ubuntu works well enough at the moment people figure there is no need. That and everbody is playing too much Xbox. Microsoft is giving away all their goodies.

    The Zen version of Linux is the way ahead. They include patches normally passed over such as the Brain F### Scheduler (BFS).

  126. Statistics can be (ab)used to lie by nikanth · · Score: 2, Informative

    It is just that who ever has got into Linux Kernel Development never quit. I am a Linux Kernel developer since 2.6.25 or roughly for the past 2+ years. I see plenty of new young people getting involved/addicted with Linux. The point is those who are aging are not retiring which isn't a bad thing at all.

    1. Re:Statistics can be (ab)used to lie by kuzb · · Score: 1

      Actually it's because young people find the Linux community distasteful, and far too difficult to break in to with all the attitudes. The Linux community can be downright hostile to the uninitiated.

      --
      BeauHD. Worst editor since kdawson.
    2. Re:Statistics can be (ab)used to lie by Anonymous Coward · · Score: 0

      Lol. It's that lots of people aren't using Linu in the capacity that people would like to believe. Why should I develop for Linux, when I'll never use it? Why should I care.

      Linux had more than enough time to do what OSX did. Instead, they were busy working on 4-5+ Window Managers/Desktop Environments, and forking shit left and right.

      Linux on the desktop is an unpolished piece of shit, and it's 2010... I don't code in a fucking terminal, and its development tools/environments are terrible.

      Developers have to eat, too. With the Linux Culture, there is little to no money to be made on that platform as a Software develop outside of being a paid corporate shill whose sole purpose is to hack some corporate sponsored OSS project.

      That's not what I see in my future.

  127. Dinosaur book by salemboot · · Score: 0

    You can get the basics of an operating system from the Dinosaur book. The you use deduction and figure out what files hold the piece you are learning. You don't start by just trying to encompass the entirety of the kernel. You just say that one day you are going to learn how the scheduler works. You start perusing the code. Make some logical assumptions and move to a different file. You write down in your notes which files hold what purpose. Eventually you'll have a general idea of how it all fits together.

    I doubt any of the developers know everything about every subsystem. Not even Linus can possibly keep up with everything. I maintain a pretty complex application at my job. So many people have added to it that when it breaks it takes me a day to just go through and understand the logic. If I get tasked to another application developed by others then it will take me almost a week to move through the logic of the application before I can truly determine the problems. I can in fact make some assumptions but they are only opinions from experience.

  128. What? by darku · · Score: 1

    It's about 7:20 in the AM here, so bare with me.

    To answer the direct question asked by the original poster:
    1. The "you can't make money by kernel level programming" or, even worse, "you can't make money by open-source programming" ideas
    2. The lack of patience new developers have to search for something inside code not google
    3. The fact that most new developers do not understand the idea of hacking because they are developers, not hackers
    4. Lack of documentation and other excuses listed above in other replies 5. The fact that the code base is already stable enough in most circumstances and does not require modification in order for something to be programmed on top of it

    POV: One can create userland code to maximize the efforts of the kernel and one can tune the userland available options in the kernel. I, for one, don't try to mess around with something that works. And another thing. When you try to understand how to kill a userland daemon (ie PulseAudio) and fail miserably only to find that most people will tell you that in Ubuntu it is better, for your purposes, to remove it completely, you start to get a sense that you're using Windows. Ubuntu and friends make the user lazy. I'm not trying to start a flame war (does it even exist anymore?) but, with the introduction of HAL and PulseAudio and the other crap that you need to print the tree to in order for you to find out how your OS works, everything has, more or less, gone sideways.

    --
    Just the Programmer P.O.V.
  129. young hackers dig other things... by Anonymous Coward · · Score: 0

    ... like worms viruses and malware...

    Back in the 90's when I was in high school, we wrote virus-like malware for fun.

  130. Why? by Anonymous Coward · · Score: 0

    Let's see. If you are not coding device drivers, the Linux core is a pretty pretty stable (in terms of changes) code base. Architectural changes to the core are rare, and are monopolized by the subsystem maintainers. Good luck in Linus accepting your code, when the maintainer NACK it. Maintainers are "politically" linked and lobby together to make them the only ones that can effectively change the critical parts they maintain. If you think that Linux is politically free and meritocracy driven, think again. Linus, with his careless management system, happily allowed this to happen, effectively keeping new potential talent out of project. This worked for him since it achieved his goal of remaining the head of the project for all these years, by being part of the lobby.

  131. Because young people never programmed MSX or C64 by Foske · · Score: 1

    People who programmed the 8 bit machines back in the 80's had to understand the hardware, had to push the hardware to the max to get anything serious done. Young people with even the most basic hardware related programming skills are hard to find these days. Since your PC/MAC is so fast and complete, people don't see the urge to start programming it. anymore And of course, hardware has become so damn complex that understanding the functionality of only one chip in your PC is a nightmare already.

    Embedded developers ? Please give me a 30+ year old !

  132. Who wants to start their career as a bug fixer by LostMyBeaver · · Score: 1

    Open Source software is often developed based on need. Individuals looking for something to do in an open source project are simply hard pressed to figure out what they should do next in the kernel.

    At this point in time, the areas where the kernel can benefit most are simply off limits due to political or religious issues. A stable ABI for driver and module development is a clear example of this.

    Additionally, the other tasks are simply too overwhelming for an individual or a small group of part time developers to undertake. A new make system is an example of this. Even if an individual managed to pull this off, the commitment to maintain this type of code is beyond the boundaries of trust of a single relatively unknown individual to make the change permanent. After all, if a new guy pops up and says "here's my new build system for Linux", it would never make it into the main tree since no one knows the coder well enough to know if they can be trusted to own the project over a long term.

    There are sometimes places such as the Video4Linux project or Alsa where the projects were developed externally for an extended period before being integrated into the kernel. But, it would be hard to find a new project to do the same with.

    I'm sure that somewhere there are some truly talented and creative individuals that are young who will find the next big area for improvement, but these days, the kernel is mostly about bug fixing and adding drivers or file system modules. And drivers are most often being developed by the companies who produce the hardware and file system drivers are either corporate sponsored tasks or hacker experiments. Thanks to projects like Fuse, kernel mode file system drivers are even far less relevant than they once were.. well unless you were intending to make a replacement boot level file system.

    Fact is, that developers with the talent required to actually work on the Linux Kernel are drawn to other projects where they aren't simply starting off from day one as a bug fixer. Great programmers who are creative and talented are more likely to find projects where they feel they can make a difference and make something new and exciting.

    I might also lean in the direction of believing that the truly talented youth in operating system development might instead be looking towards the future to an operating system which is designed to function in a virtual machine using technologies such as .NET, Java (heaven forbid) or LLVM type architectures. Linux has become so stable now, that "revolutionary new technologies" would turn it into something else entirely. For most guys, working on the "next great thing" means working on something nearly entirely new.

    To conclude, Linux is a great operating system. It has completely taken over the UNIX market and has even taken over many areas of the Windows world. The only other UNIX with such a large following is Mac OS X and that is a truly limited platform in comparison. I'm looking forward to seeing what the next best thing is, after all, wouldn't it be cool to get a new OS kernel that would compile itself for the best performance and functionality possible on the system it is running on? Even better, imagine doing it with a compiler present on the machine. That would be a great "user" OS.

  133. Social networking is to blame. by Anonymous Coward · · Score: 0

    Most of these kids have an attention span of 140 characters, and the mental skills of a 4th grader. Why would you expect any of them to be able to grasp anything even slightly complex?

  134. The *REAL* reason by Anonymous Coward · · Score: 0

    Linux users who act like assholes.

    They see the computing world as two groups.

    1. The Linux "elite"
    2. Grandmothers

    If you dumbasses had acted like decent human beings, maybe answered a question now and then from a noob, you'd be better positioned by now. But you all acted like fucking assholes, dripping with contempt at any who dared question your Path Of Enlightenment, and making a religion out of OSS complete with witch hunts and holy wars.

    So let the kernal die a slow death now. Good fucking riddance.

    1. Re:The *REAL* reason by Ash-Fox · · Score: 1

      If you dumbasses had acted like decent human beings, maybe answered a question now and then from a noob, you'd be better positioned by now. But you all acted like fucking assholes, dripping with contempt at any who dared question your Path Of Enlightenment, and making a religion out of OSS complete with witch hunts and holy wars.

      In all honesty, I don't see that happen much on all the support channels I sit on. Majority of times I see people saying "RTFM" tend to be people who aren't proficient themselves and usually get told off for it.

      So, where exactly does this happen? Because I can assure you this is not the case of the majority of channels on Freenode and Mozilla.

      --
      Change is certain; progress is not obligatory.
  135. Microsofters in the staff by SgtChaireBourne · · Score: 1

    Bigjeff5, you describe the shithole small tech schools I complain about. It's not just one school, but an epidemic across many, many schools like the one you describe going to.

    --
    Beta is broken and the link to classic doesn't work. Stop wasting our time or there won't be anybody left here.
  136. coding is not fun by Anonymous Coward · · Score: 0

    for the NON fainted hearted

    they go bars, singing around, flirting around
    just not sitting around like ducks without mating

    young guys need a life
    not a line of code

    XD
    though i m a guy need code but giving up my life

  137. Complexity by LinuxAndLube · · Score: 1

    The people are more complex. The code is more complex. We have stuff getting in now that we would have run away from 10 years ago.

    This is one obvious reason why it's harder for juniors to step in now compared to ten years ago. I wonder, is this complexity necessary? Isn't some refactoring or redesign in order?

  138. Everybody dies... by Anonymous Coward · · Score: 0

    And what happens then?
    Especially as the stereotypical kernel hacker is likely to die sooner than the average person.

  139. I don't like being shouted at. by Anonymous Coward · · Score: 0

    Seriously. People tend to get put off by being called stupid.

  140. Usability people are unfriendly to code monkeys by jonaskoelker · · Score: 1

    If UI designer tells them to do such and such, and they do not like it, they tell him to GTFO. Knowing this, UI designers often don't even bother.

    If the ui guys came to the code monkeys with data about user acceptance and comparative task success rates, instead of "complies with usability principles" and "will make it easier for granny" when their suggested changes indeed do remove features from the code monkeys (who tend to be expert users), they code monkeys might object less.

    When you need to take someone's cake away from them, at least have the decency to admit "yes, I'm taking your cake". If you can say "here's the purpose it serves, and here's why it works", you might be greeted with less contempt.

    And please make sure your answer to "how do you know what users want?" isn't "because I can tell you what to do!"

    1. Re:Usability people are unfriendly to code monkeys by mjeffers · · Score: 1

      Those studies cost money. For a comparative study you want probably a minimum of 12 users and you probably won't get them in a room for an hour for less than a $20 incentive. If you want them to be at all representative you're also looking at either buying access to an existing list of pre-screened users from a research company or spending a good 100 hours on the phone doing surveys. Think another few hundred minimum. A cheap comparative study, starting from scratch could maybe be done for $1000 but more likely is about $2500. You can do friends and family studies and pay nothing but you can never be sure about the data. In my experience developers also tend to want much larger sample sizes to "trust" results (think 1000-3000, political poll sample size). Not saying this is you but it shows how far the gap is between what some developers expect to see in user research and what user research does.

      Aside from the costs of research, in the corporate world as a designer I don't have to do a study to justify every design decision to the developers. I understand why you want more than "because I told you so" but showing my stuff will work takes a lot more time and money than showing yours will so it's cheaper and faster if you can work on trust for some things. This is not to say you aren't justified in wanting more, especially from someone new and unproven but just to show that the open source community has at least the cost and trust issues if it wants to attract good designers.

      There's also an incentive thing. If you want to make your name as a programmer open source experience can demonstrate skills, wide interests and passion to potential employers. If a young designer wants to design software and demonstrate skills, wide interests and passion they can do something in print, create a web site or small app by themselves. Something that will show off their design as they intended. "I got the XXXX team to agree to make slight changes to their configuration UI to make it easier to understand" may actually be a more useful and relevant skill to show in an interview but the poster, web site, or flash app you did will probably do more to get you hired.

    2. Re:Usability people are unfriendly to code monkeys by mjeffers · · Score: 1

      This is not to say you aren't justified in wanting more, especially from someone new and unproven but just to show that the open source community has at least the cost and trust issues to deal with if it wants to attract good designers.

      damn fast typing

    3. Re:Usability people are unfriendly to code monkeys by natsacks · · Score: 1

      If the ui guys came to the code monkeys with data about user acceptance and comparative task success rates, instead of "complies with usability principles" and "will make it easier for granny" when their suggested changes indeed do remove features from the code monkeys (who tend to be expert users), they code monkeys might object less.

      And that makes it pretty hard to improve FOSS UIs without company backing all the usability testing that needs to get done. Where as the coding part can be done reasonably cheaply, usability testing starts to cost as it's pretty hard trying to find anyone to participate for free. Essentially any usability expert would need to put in his own money in addition to his own time to contribute.

  141. swccman by swccman · · Score: 1

    It's one word, Integration. Most of our young developers are Xbox users as well. Xbox and Windoze integration make for some mighty tempting code to write. I could be full of it, who knows. I've been on Linux since the Red Hat 6.0 days, but heck, I still use W7 for my real entertainment stuff, it's cheaper than buying a Roku box for DRM issues.

  142. It's no fun any more by Anonymous Coward · · Score: 0

    I think one of the biggest problems is that contributing to the Linux kernel is simply unpleasant. So you go off and write some code to do something wonderful? Great, now you're 10% done because the other 90% is spent dealing with the patch process and the bullies who run it. They'll berate you and call you incompetent if you ask too many questions (visible in this thread already), but also berate you if you fail to ask enough questions and accidentally reinvent something that was already hidden in some obscure corner of some other subsystem, then berate you again for changing your code to use that thing because it's in another subsystem. Developer A will berate you for doing things this way, and developer B will will berate you for doing it that way, because A and B hate each others' guts and have neither the social skills nor the professionalism/maturity not to take it out on you. Then *everyone* will get on your case if you say "screw it" and decide to maintain your stuff out-of-tree. I've been a kernel programmer for twenty-plus years, but if I had to start now as a Linux kernel hacker I'd give BSD or any of the newer alternative kernels some pretty serious consideration as a better way to spend my time.

    (written anonymously because my company employs many of the worst offenders)

  143. Seems obvious to me by Anonymous Coward · · Score: 0

    The Linux kernel team is mostly composed of curmudgeons, socially maladjusted nerds, and outright misanthropes. They aren't particularly welcoming to anybody new. I can only imagine this is much worse for anybody who tries to help out who doesn't have years of experience to prop up their self-image. If you even casually browse the LKML, you'll see these "leaders" of the kernel team constantly attacking anybody who tries to contribute to the kernel that's not already a member of their elite club.

  144. Kernel seems handled by Anonymous Coward · · Score: 0

    I guess I'm getting past the age where anyone would consider me young, but compared to many of the kernel devs I still am. At any rate, I think a lot of folks feel like this stuff is already handled pretty well. Now this may not be true, but it's my perception and I would guess a lot of other folks would feel the same way. When I want to contribute to open source I usually help out on something Java related, as I feel more at home there.

    If they want more fresh meat in the Linux kernel circle they're going to have to step up and advertise that there's more room at the party, it's as simple as that. Most of us are intimidated by those guys and don't think they can really use our help, if this is not true, fairness aside, they're the folks who have the greatest ability to change it.

  145. It's not whether it fails, but how it fails. by SanityInAnarchy · · Score: 1

    Wrong code is wrong.... *any* bad code is undesirable (for a litany of reasons).

    True, but also unavoidable.

    Let me put it this way: You will dereference a null pointer at some point. Now, would you rather get a nice stacktrace and an instant failure, or a random segfault, or worse, a security hole?

    Similarly, it's very likely you'll have something like a buffer overrun -- and the steps to avoid this are ridiculous -- so would you rather do all that extra tedium, much of it absurdly inefficient, and then if you get it wrong, you've got a security hole? Or would you rather do none of the tedium, and if you somehow get it wrong, you've got a DoS (a crash) at worst?

    --
    Don't thank God, thank a doctor!
    1. Re:It's not whether it fails, but how it fails. by jesset77 · · Score: 1

      Joel (whom you link too) would rather start CS folk off at the bare metal. :3

      This is why my view of teaching is that first year CS students need to start at the basics, using C and building their way up from the CPU. I am actually physically disgusted that so many computer science programs think that Java is a good introductory language, because it's "easy" and you don't get confused with all that boring string/malloc stuff but you can learn cool OOP stuff which will make your big programs ever so modular. This is a pedagogical disaster waiting to happen. Generations of graduates are descending on us and creating Shlemiel The Painter algorithms right and left and they don't even realize it, since they fundamentally have no idea that strings are, at a very deep level, difficult, even if you can't quite see that in your perl script. If you want to teach somebody something well, you have to start at the very lowest level. It's like Karate Kid. Wax On, Wax Off. Wax On, Wax Off. Do that for three weeks. Then Knocking The Other Kid's Head off is easy.

      --
      People willing to trade their freedom of expression for temporary entertainment deserve neither and will lose both.
    2. Re:It's not whether it fails, but how it fails. by SanityInAnarchy · · Score: 1

      Yeah, and I guess that's the same article I linked to.

      I'm actually ambivalent about this. I don't agree with everything Joel says, and in fact, I think it's probably vitally important to start CS students on something easy, like Python or Ruby, so that they're still interested in programming by the time they have to learn the harder, bare-metal stuff.

      In that sense, it could be kind of like using trigonometric facts we know without proving them, or understanding their relationship to calculus -- just hitting the "log" function on our calculators without having any idea how infinite series work.

      On the other hand, there's something to be said for doing it the hard way first, then sharing the epiphany of abstracting all of that away -- showing the limit of the difference quotient, then introducing rules of differentiation.

      Either way has the potential to introduce bad habits. Both should be required for a well-rounded degree.

      --
      Don't thank God, thank a doctor!
  146. Poor introduction of open source world to students by blackgod · · Score: 1

    The first reason it seems to be "the geeky look and feel" of open source world, which stops them to communicate with the community project. See all these mailing lists - if any noob asks some basic question, how he would be treated? we know.... The projection of vi and emacs as the only editors to do all these stuff... rude behaviour of many geeks keep the young programmers away... there is no updated docs on kernel tree... In this scenario, if a young programmer is interested in kernel dev, it is great - he is **really** interested to hard core stuff - may be the geek's world consider all these as entrance test to kernel dev :-) :-)

    Second reason could be market value. I have supported a few college projects. IMHO the most students don't want to work in a project which does **not have any job market value** compared to VC++, .Net, Java, Web programming kind of stuff. When I tried to mentor development of a linux based communication framework project to one of the top most university's (in India) students as a project, It happened to me that I had to do complete coding and explaining them the code flow. I made them to understand the project.

    Third reason could be development tools. The above mentioned students were very much interested in VB :-) Because the user interface is the one which attracted them towards it.

    Though I am not a kernel programmer, occasionally I make my hands dirty... I hacked a modem driver to make my ISP provided modem to work in linux - it was around 10 years before - this was my first kernel look - I didn't get any materials to guide on code... just hours and hours of debugging, at last got it done. That is the reason when it was happened to dig through a network card driver, I just documented it for beginners (like me) like this http://karuppuswamy.com/wordpress/2006/07/31/linux-ethernet-network-device-driver-a-flow-of-code/. This kind of simple overview documents should be enough all modules in kernel will be more helpful for young developers.

    --
    bits and bytes of life should serve the needy - My bits and bytes
  147. Re:Poor introduction of open source world to stude by blackgod · · Score: 1

    >This kind of simple overview documents should be enough all modules in kernel will be more helpful for young developers.
    Correction: This kind of simple overview documents **for all modules** in kernel will be more helpful for young developers.

    Why the Google Chrome Browser 5.0.366.2 dev behaves strange while I am typing in text box? often cursor is absconded :-) :-)

    --
    bits and bytes of life should serve the needy - My bits and bytes
  148. Do CS undergraduates learn assembly anymore by mrflash818 · · Score: 1

    When I went to school for CS, there was a mandatory assembly language proramming course.

    If colleges still require learning assembly, then there is hope a pool of CS graduates would be able to understand pointers, registers, interrupts, and such?

    --
    Uh, Linux geek since 1999.
  149. It is not the size of your tool that matters... by mrflash818 · · Score: 1

    ...it is what you can do with it :)

    vi/vim/emacs/eclipse -- It's all good.

    --
    Uh, Linux geek since 1999.
  150. x86 Maybe by tmzt · · Score: 1

    While the core parts of the kernel are difficult for a beginner to understand, especially one without the background in computer science, there are some things that you can do with the kernel that pretty much anybody with programming experience (in C) can do. For instance, starting a port to a new ARM device. Anybody who wants to join #htc-linux on freenode I'd be happy to give an early lesson sometime.

  151. Ignorance of the Law killed it. None need Licenses by Anonymous Coward · · Score: 0

    FCC acknowledges in the legislative enactment that anyone can transmit and receive on the radio waves if they need "help." That is a very broad reason for non-licentious conduct through any tranceiver, and yet there is the reason why everyone is expected to need a license: everyone has been presumed to be having idle discussion as they always do, and that anticipation is evident on phones. A license gives grace to those people to use HAM radio and the bands for idle discussion. If you have an immediate need of help where you contact someone monitoring, then you don't need a license and you don't need a station callsign derived from such license.

    The intent of'course is to keep solicitations and commerce away from radio waves because that would overwhelm the more secure means of conducting business away from the States.

  152. Your FUD tears tast goooood. :-) by Anonymous Coward · · Score: 0

    If you don't know what Linux is about, then you are WEABOO about how you missed the boat and are blaming a transparent minute kernel as compared with all the non-Linux software that makes it what it is.

    Linux is nothing more than thread, and all the programs are nothing more than fabric. If you have no ability as a system administrator to bring it all together tailored to another's or your needs then you simply are in the wrong business and can't see past the diagrams to tailor it all together.

    GNU/Linux doesn't need to be, as all my uses have been pushing the limits of embedded consoles for public uses. There are many non-distributable components that are superior than what you get out of the box for desktops. Consider documented off-standards that optimize for better usage, like something composed through a component from DirectFB with WINE. That wasn't too hard. What else do you want to be optimized with almost no need for administration? With a couple mount-points, that simple sandbox can extend to a full-fledged desktop or development console simply because of the versatility of the filesystem.

    Don't let it bother you. I've abandoned Linux before because I didn't know what it was good for, and then when I couldn't do something where I needed I walked back to Linux thankfully. Of'course, I made some donations because after-all Linux is composed by others like you and I that just need something to be done and can trade someone else with functionality into a cost-free pool. Keep the corporations out and we are fine. The more moochers we get into GNU/Linux will assure it's development trend will continue and popularity will rise. BSD's shoot theirselves in the foot is why they don't catch-on.

  153. wrong contribution and development model? by Anonymous Coward · · Score: 0

    Have you ever tried to submit a patch to the LKML?

    33% chance that you get ignored
    33% chance that 'your code sucks'
    33% chance that your patch gets rejected for a 'political' reason

    Shouldn't the kernel community think of a much 'relaxed' and informal contribution and development model?

    Several 'young' developers simply do not 'dare' to send their contributions to mainline: it takes too long and too much pain ...

  154. Flash by jprupp · · Score: 1

    Many of them just want to work on Flash and .NET. Sad.

  155. 80% of schools, and 99% of business by Anonymous Coward · · Score: 0

    Want to get a job? You go where the jobs are: That's Microsoft! After all - 90% of better of the world's personal computers & servers can't be too far wrong (since they use MS' Windows NT-based OS' mostly) + especially on the most utilized hardware platform in servers &/or personal computing there is, in x86...

    Thus, it appears that most future-minded young people also doubtless tend to think along those lines also apparently, per this article's topical material.

    (Still - It doesn't HURT to learn some *NIX via Linux (or BSD's etc./et al) but, you concentrate the majority of your efforts where your livelyhood's most likely to be served more, & currently (as well as for the past 30 yrs. now, has been on Windows)).

  156. young devs are most likely lazy by ladykreiznah · · Score: 1

    They simply want to gain profit with their work and get instant famous because they ride with what's the latest. I still go for Linux because it has the fundamentals and is the foundation to the basics of OS. I'm sure if Windows did not exist, it will be up and still well-known to the public. Besides, we can do everything we want! That's enough by me.

    --
    http://techykikay.blogspot.com