Re: Introducing Myself, Looking to Learn

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2013/9/3 Robert P. J. Day <rpjday@xxxxxxxxxxxxxx>:
> On Tue, 3 Sep 2013, Valdis.Kletnieks@xxxxxx wrote:
>
>> On Wed, 04 Sep 2013 02:05:42 +0530, Varad Gautam said:
>> > Hi Vladis! Thanks for replying. I think I would be fine with
>> > writing real code once I figure out what goes where.
>>
>> Well, assuming you have a background as a professional or very
>> serious amateur programmer, *and* you have a *particular* drive to
>> do something specific.  There's still a lot of code being added by
>> amateurs who have some weird USB device that doesn't have a driver
>> and so on - but there's less and less room for beginners that just
>> want to hack code and don't care where.  Data structures and
>> algorithms have gotten more complex, the locking is more
>> fine-grained and subtle - gone are the days you could just take the
>> Big Kernel Lock and not worry, now you ofteh have to understand
>> stuff like RCU locking.
>>
>> So you might want to stop and ask yourself *why* you want to write
>> code for the kernel. :)
>
>  i'm going to jump in here since i see this question annoyingly
> frequently -- "i'm new to the kernel and i want to get involved and
> write code; how do i start?"  to be blunt, if that's your starting
> point, you're not ready to write code for the kernel. period.
>
>  as vladis quite correctly points out, gone are the days when there
> was piles of simple coding to be done. most of the kernel is well
> established, solid and stable, and ongoing development is *very*
> advanced. in other words, there's less and less room for enthusiastic
> beginners. but there's more.
>
>  at the very least, you should have an idea of what part of the kernel
> interests you most. if you can't even identify which major subsystem
> -- networking, USB, video, etc. -- you want to work on, you aren't
> even *remotely* ready to start writing code.
>
>  it's somewhat absurd to say you want to get involved in kernel
> development, then ask *others* where you should start. it's like
> saying, "i really want to write a book, but i have no idea what i
> should write about. can you give me some ideas for a plot? and
> characters? and possibly an ending?" yes, it's that silly.
>
>  if you're a beginner, then the obvious starting point is to start
> reading. and read. and read. and when you're done reading, read some
> more. and slowly, you'll figure out what interests you most. and
> that's where you then spend your time.

Basically my answer to this kind of questions is, to start reading
LDD3 [1] try to figure out what have changed and try to get the source
code examples work with a newer kernel [2].

[1] http://lwn.net/Kernel/LDD3/
[2] https://github.com/martinezjavier/ldd3

Cheers,
Matthias

>
> rday
>
> --
>
> ========================================================================
> Robert P. J. Day                                 Ottawa, Ontario, CANADA
>                         http://crashcourse.ca
>
> Twitter:                                       http://twitter.com/rpjday
> LinkedIn:                               http://ca.linkedin.com/in/rpjday
> ========================================================================
>
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies@xxxxxxxxxxxxxxxxx
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies



-- 
motzblog.wordpress.com

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies




[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux