Tinkering with Linux code

Posted on 2003-12-07
Last Modified: 2010-04-22
Hi I am new to the Linux environment but am wondering if anyone can tell me where is the best place to go in order to find out how to edit the LINUX source code in particular the graphical User Interface. And what should I be aware of when doing so...
Question by:myleseven2
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
LVL 44

Expert Comment

by:Karl Heinz Kremer
ID: 9893655
It depends ...

First of all, you have to understand where the different parts come from. "Linux" is just the kernel. You can download the source code here:
If you want to learn about kernel hacking, check out this site:

The graphical user interface is based on XFree86. You can find more about this project at

What you usually see when you look at a Linux system is a desktop environment like KDE or Gnome. If you want to learn more about this, go to or
Both environments have documentation about how to program for their respective systems.

Author Comment

ID: 9893847
So does this mean that xfree86 is the interface for KDE?
If I wanted to learn how to remove things from the Desktop or customize what appears from the desktop should I go to learn from or
For example I would like to develop a very simple interface environment for my grandfather to allow him to load up his computer and then just be presented with 1 or 2 buttons to take him to eg Email or Write a letter etc, and then maybe have a big Turn Off button on the screen to allow him to turn off the computer easily.
Can I hide menus and things like that that only confuse him?
LVL 44

Expert Comment

by:Karl Heinz Kremer
ID: 9893925
All the things you've listed can be done with just some configuration of KDE. There is no need to start programming. Just visit and read the user documentation.

If you look at the KDE interface, you will see that most of the things you want to do are already on the UI (e.g. the button for EMail or Write). The menus can be confusing, but you have full control over what gets displayed, so you can remove the ones you don't need.

You are right, KDE is built on top of XFree86, so XF86 is the interface that KDE (or Gnome) uses to paint on the screen.
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 9894053
Wow all that info looks great to get started with...
 if I wanted to develop a simple email or word program for him, would you recommend starting from scratch or from making adjustments to someone elses source code?
I have expereince in Borlands Delphi and have heard that there is version of this that can be used for Linux called Kylix, do you know of this and if using Kylix would be a good way to begin programming in Linux, from what I have read though I need to know C++ or java... what do you think?

thanks heaps
LVL 44

Accepted Solution

Karl Heinz Kremer earned 120 total points
ID: 9894082
Before you start to develop a mail application or an editor, please take a look at what's already available.

If you really think that none of the existing applications does what you need it to do, you should seriously consider modifying an existing application. Doing this from scratch is a lot more work. You also have to solve all the problems other applications have already solved. Good user interface design is something that requires a lot of experience. We can probably assume that an application that's used by a number of people is better than something that you can come up with for one user (please don't get me wrong. I have no idea about how good you are and it's certainly possible that you have a huge experience in human factors, but chances are that you don't,a nd this is a potential problem).

If you decide to start from scratch, you can probably work with Kylix. I've never used it. All I know about it is that it's a distant relative of the old Turbo Pascal.

Author Comment

ID: 9894278
I think modifying an existing application would be the best way to go, thanks heaps for your help that was awesome :)

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
shell script help 1 157
CentOS 6.6 Port opening question 1 139
awk sed 8 136
php56-php-mcrypt for rhel7 php56 1 173
The purpose of this article is to fix the unknown display problem in Linux Mint operating system. After installing the OS if you see Display monitor is not recognized then we can install "MESA" utilities to fix this problem or we can install additio…
The purpose of this article is to demonstrate how we can upgrade Python from version 2.7.6 to Python 2.7.10 on the Linux Mint operating system. I am using an Oracle Virtual Box where I have installed Linux Mint operating system version 17.2. Once yo…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
In an interesting question ( here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question