PDA

View Full Version : so if I wanted to contribute to the linux kernel



imachavel
January 5th, 2012, 05:25 PM
but I am a total programming newb, I mean I know what

<body>

<header>

is. That is about it. I've build a few pc's, tower, psu, mobo, processor in socket, heatsink, ram, cd rom drive, hard disk drive, some raid installs, understand the concept of onboard devices or installed devices in expansion slots such as pcie. probably about the same as most people here I'm not going to claim I'm an expert. worked with windows, mac once or twice, ubuntu, linux mint, a few other distros. I know some things for example windows would use files like .net framework, open gl, direct x, system 32. I know 'terms' like interrupt request. I know what a .iso is. A flash drive. Anyway I'll stop here just wanted to get very very basic for a moment.

I figure someone who has almost no programming experience might not know how to contribute to the linux kernel, and I barely know the terminal commands but know things such as sudo su and sudo apt-get install and ifconfig etc.

What could I do besides installing linux and enjoying it's use as a free server freely distributable operating system, to contribute to the kernel. I love things such as android phones, which I hear the OS were formed from the linux kernel at one point. I even hear that at one point mac os (way before hfs) was written from a linux model. I know Linus Tourvald attended MIT? Is that correct? in 1969? What could I do to improve this OS, bug testing? Reverse engineering windows apps to work with linux drivers? Anything? I'd love to help, and know that people to contribute to the linux kernel work for free. I am currently downloading a windows 8 beta(32 bit version) and will install in virtual box.

Otherwise I know very little about programming, I know there is java, c++, .php, apache web apps, html, ports, root files, bash command shell. etc. etc. ext file system. Umm, what could I do today, if I wanted to begin on a path contributing to the team. I'll be honest, some linux apps I hate, for example thunderbird and evolution, I like outlook better, I know they both use pop(incoming) and smtp(outgoing) but don't particularly like thunderbird or evolution as open source apps. But I respect open source apps. I use open source or open trial apps even, I use microsoft security essentials and malware bytes(not developed of course by a linux team). I respect open source, and if I thought there was a way to make open source work better, I'd love to contribute. Anything anyone wants to hit me up with, go ahead. I'd rather do this all day then work at best buy on the geek squad. I love building pc's, starting with the mobo and working up, but hate dealing with corporate restrictions. I've had my qualms with windows viruses, bugs, bsod, reactivation problems, drivers, etc. I don't want to reinvent the wheel but anyway just shoot me a pm or reply here. I'll work on anything even if it's something tiny especially if it will help me improve my knowledge of working operating functioning operating systems and all their network and program/application usability abilities. make sense? ;)

also don't make me lead you to believe I know a thing about flash. I know that flash is always Java right? But then Java is not always flash. html5 makes the use of flash moot right? Otherwise, smart phone devices would not be able to use flash would they?

2F4U
January 5th, 2012, 05:43 PM
If you know little about programming it is out of discussion that you contribute to the kernel as a programmer. However, there are a lot of other areas where you could contribute. This page shows just a few options available to you

http://www.ubuntu.com/community

Among these options are documentation and bug tracking, which can be done with no programming knowledge. And of course, there is the forum, which always needs people to help others.

Grenage
January 5th, 2012, 05:49 PM
Indeed, don't think that contributions other than code are any less significant. Many people will wave their hands in the air when things don't work, but few take the time to try and work out why, and file bug reports.

If coding is really where you want to go, then pick a language, any language; learn, practice, and make a few programs. When you're at a point where you feel you are competent, join up with some small projects that look interesting.

oldos2er
January 5th, 2012, 06:35 PM
Moved to Community Cafe.

Lars Noodén
January 5th, 2012, 07:40 PM
You'll need good C programming skills to contribute to the Linux kernel. From what I've read and seen in interviews, if you show some working code, you'll get their attention.

imachavel
January 5th, 2012, 08:00 PM
I really hate the language. Not that it's not easy to understand, I don't know I just hate the code, seems to trip over itself quite a bit. Ok I understand, start slow and easy. Well, anyone want to pm me? If anyone is interested in sending me some programs to test and report bugs, I'm all ears

cariboo
January 5th, 2012, 08:53 PM
I really hate the language. Not that it's not easy to understand, I don't know I just hate the code, seems to trip over itself quite a bit. Ok I understand, start slow and easy. Well, anyone want to pm me? If anyone is interested in sending me some programs to test and report bugs, I'm all ears

There is a bug in the latest kernel release ( 3.2.0-7-generic #13) that affects Intel Atom 270+945 graphic causing a kernel panic, you're welcome to help fix this bug. The bug# is 905606

forrestcupp
January 6th, 2012, 02:26 AM
I really hate the language. Not that it's not easy to understand, I don't know I just hate the code, seems to trip over itself quite a bit. Ok I understand, start slow and easy. Well, anyone want to pm me? If anyone is interested in sending me some programs to test and report bugs, I'm all ears

You hate C, yet you want to be a kernel contributor? Do you like to torture yourself, or something? :)

Why not find something you would enjoy doing, and work on that? If you hate C, then you're definitely not going to enjoy kernel programming. There are a lot of important areas you can contribute to, and even if you want to code, it doesn't all require C. You just need to think about other areas than the kernel.

imachavel
January 6th, 2012, 03:25 AM
There is a bug in the latest kernel release ( 3.2.0-7-generic #13) that affects Intel Atom 270+945 graphic causing a kernel panic, you're welcome to help fix this bug. The bug# is 905606

intel atom 270+945 intel on board gpu? to fix the bug would I need to have a mobo with the intel atom 270+945 chip set? Anyway sure I'd love to start fixing stuff and writing small bits of code. But umm, any ideas how to do so?? sounds like a blast, plus I'd be honored to serve the team that wrote in my opinion the best os kernel in the world. Let me know

imachavel
January 6th, 2012, 03:28 AM
You hate C, yet you want to be a kernel contributor? Do you like to torture yourself, or something? :)

Why not find something you would enjoy doing, and work on that? If you hate C, then you're definitely not going to enjoy kernel programming. There are a lot of important areas you can contribute to, and even if you want to code, it doesn't all require C. You just need to think about other areas than the kernel.

I'm sorry. I think I was under the impression that there were ways to write root file code other then c+ or c++. I don't have visual basic installed. Ok well what do I download visual basic for linux?

And yes I'd love to fix java code if you knew how I could do it. Also, any people know video format code for linux, I would assume this would be the equivalent of direct x or open gl for windows. I suppose the monitor display drivers would have something to do with directories this code is installed in? I'm not quite sure. I guess I'm a real newb. Oh well. reply back if you have any more input.

forrestcupp
January 6th, 2012, 01:34 PM
I'm sorry. I think I was under the impression that there were ways to write root file code other then c+ or c++. I don't have visual basic installed. Ok well what do I download visual basic for linux?

And yes I'd love to fix java code if you knew how I could do it. Also, any people know video format code for linux, I would assume this would be the equivalent of direct x or open gl for windows. I suppose the monitor display drivers would have something to do with directories this code is installed in? I'm not quite sure. I guess I'm a real newb. Oh well. reply back if you have any more input.

The kernel is programmed in C and Assembly language, which is even harder and lower level than C. People don't use Visual Basic in Linux. That is a Microsoft language that only works well in Windows. Not only that, Visual Basic is used for very basic GUI based apps, definitely not low level stuff.

The truth is, you have your sites set a little too high to begin with. If you don't have any programming background at all, and you hate low level programming languages, then you need to start with more basic, easy stuff. You should check out Python. It's a pretty good, easy language to start off with. Maybe if you learn the basics of Python and start learning PyGTK, you can start creating some simple apps that work in Linux. You can even use a GUI designer with PyGTK, just like in Visual Basic. I think that will be more gratifying and attainable for you in the short run.

Then if you still have interest in going deeper, later on after getting some experience with more enjoyable programming, you'll have to bite the bullet and get into low level stuff. Just know that being a kernel programmer isn't what makes you a real programmer.

But trying to jump right into kernel programming without any knowledge or even desire to learn the programming languages that it takes is kind of like wanting to jump off the high dive into the deep end of the pool without wanting to learn how to swim first. You need to start smaller and easier with something you will enjoy more.

imachavel
January 6th, 2012, 06:08 PM
ok, anyway about the debugging thread. how would I go about trying to debug certain things? It would be a great place to start. I'm very interested in that.

if I downloaded Python, then would you pm me about some stuff I could contribute? Small packets of code? If that's not possible it's ok. But anyway if there is anything I could do, even simple, let me know, I'm not against it.

MG&TL
January 6th, 2012, 06:18 PM
ok, anyway about the debugging thread. how would I go about trying to debug certain things? It would be a great place to start. I'm very interested in that.

if I downloaded Python, then would you pm me about some stuff I could contribute? Small packets of code? If that's not possible it's ok. But anyway if there is anything I could do, even simple, let me know, I'm not against it.

Like C, and contribute to the kernel, or don't like C, and don't-simple as that. The kernel does not have Java or VB. :D

If you really want a programming mentor that desperately, PM me your email and I offer to take you through basic to intermediate python. However, Python is not going to make you a kernel programmer. There's a whole load of stuff on launchpad in python, for instance, to contribute to. But it really would be better to learn about it yourself, if not faster.

I'm still learning a lot, so if someone else offers, go with them. :)

imachavel
January 6th, 2012, 06:40 PM
hey I pm'd you.