PDA

View Full Version : [xubuntu] Making and OS more convenient



Rambler92
November 15th, 2008, 03:32 AM
I'm working on an entrepreneurship project in which I've decided to make a more convenient and easy to use OS, as opposed to Windows Vista or Leopard OS X. Given that it's a school project, I can't just take Xubuntu (which i happen to like very much from what I've seen of it) and turn that in, meaning i have to learn a little about programming an operating system. Have I taken on to big of a task as a beginner? I've programmed robots and written a few programs but that's it. I'm not even sure that the operating system is what needs to be programmed, could i write an app that could increase functionality? Basically, what I'm trying to accomplish is an Operating system that an older person who dosn't use computers on a regular basis, or a young child could use. Also, i'll be running Linux on an old computer without a hard drive so i'll have to boot it off on an external.

Sorry about the organization of the questions, or lack there of, so here is a rundown of the questions i need answered.

Is it ridiculously difficult for a Linux beginner to learn how to program it?
How do i go about editing the Linux OS?
If i should write an application, how do i write one for Linux?
How do i go about installing and booting Linux off of an external hard drive?


Thank you in advance for any help.

kingbilly
November 15th, 2008, 03:44 AM
My first thought is you are in way more over your head than you think. If you don't know how to boot from an external hard drive yet, how would you go about creating an operating system that would?


I think you should alter your project to creating some sort of apps suit tailored to these "older" people you describe, who haven't used a computer before, and run that on top of an existing operating system. Your trying to re-invent the wheel when your real goal was to create a new dashboard, paint job :)

Rambler92
November 15th, 2008, 03:49 AM
Thanks for the advice, after i posted this i went and started doing more research and i think the apps are most likely the way I'll go. Mabey write them so that they start up when the computer does?

chrisod
November 15th, 2008, 03:54 AM
If you have to ask those 4 questions you are not even in the neighborhood of being capable of what you are proposing. I would rethink your project towards something that does not require deep technical skills, or maybe something that does not require technical skills at all.

kingbilly
November 15th, 2008, 03:56 AM
yes you can definitely do that

Mardoct909
November 15th, 2008, 04:08 AM
1. Is it ridiculously difficult for a Linux beginner to learn how to program it?

Program what? Kernel upgrades? An Office suite? A program that keep track of how many times you press the shift button? There are many, many programming languages to choose from, and some make more sense than others for different tasks. Python is rather easy to learn, but is only good for smaller programs. Certainly not good for daemons or a kernel. C/C++ is great for kernel programming, but rather hard to learn. etc.

2. How do i go about editing the Linux OS?

Linux isn't an OS, just the kernel. You'd edit that by reviewing the source code, choosing a feature you want to install or bug to fix, and write some code that does what you want. Most likely in C or C++.

3. If i should write an application, how do i write one for Linux?

The same way you do for Windows. Learn a programming language, get an IDE to help you out and write off some code. Maybe you could use Py-gtk or Glade to help you with the interface. When it's done, compile.

4. How do i go about installing and booting Linux off of an external hard drive?

Get a bootable linux OS on it, with the bootable flag and all, make sure the BIOS is set to boot from the USB drive and turn the thing on.

But as was said before, you're in way over your head. I CAN answer all these questions, but I'm still far from ever programming for the kernel or making a program. A decent program, anyways.

I could boot from an external hard drive, though.

AndrewTheArt
November 15th, 2008, 05:22 AM
If you're serious about learning how to develop your own OS, you'll probably need to learn programming languages C and Assembly backwards and forwards. You will probably also need to review fundamental concepts of computer science like loops, recursion, etc. For this, you might want to take a class (looks like you already are) Once you have those things under your belt, it's time to learn how to develop an operating system. There are books and books written on the topic. However, few people actually just write OS's from scratch because of the vat implied knowledge you need and the sheer difficult of the task. If you want an easier start, there's an interesting project called Linux from Scratch that might get you started. (Google it).

Good luck.

Vunutus
November 15th, 2008, 05:58 AM
Not to rain on your parade but you're in WAY over your head. The goals you set for youself are things that should really never be attempted by somebody with almost no coding knowledge.

Trust me, when I first started programming I always set huge goals for myself. I've discovered one thing: if you don't have a really good idea how you are going to accomplish your programming goal, don't start. You'll only end up discouraged and frustrated. Start with small and manageable projects and work your way up from there, and eventually your goals will become manageable.

Rambler92
November 15th, 2008, 06:33 PM
Thanks for everyone who posted. This forum is a lot more helpful than others are. I've looked into alot of what i would have to do and researched what you all said, and I will definately turn to writing smaller apps for the operating systems.

InfectedWithDrew
November 15th, 2008, 06:41 PM
If I may offer some suggestions on how to go about writing those apps...

I suggest using the Python language. It's very powerful, yet easy to learn. I'm using it as my first real language. Ubuntu can run Python's interpreter, IDLE, easily.

Perhaps you ought to create a sort of launching application as your first attempt.

crjackson
November 15th, 2008, 06:47 PM
Thanks for everyone who posted. This forum is a lot more helpful than others are. I've looked into alot of what i would have to do and researched what you all said, and I will definately turn to writing smaller apps for the operating systems.

Rambler, I admire your ambition but it's a wise choice to start with some useful applications and then work your way up the ladder to the bigger projects.

That said, don't get discouraged. Linus Torvalds and Bill Gates were Very young and had little experience in the start. I hear python is an easy programming language to learn quickly. I would consider starting there with your convenience apps.

ugm6hr
November 15th, 2008, 07:43 PM
I'm working on an entrepreneurship project...

Is writing an application going to help with this kind of project? If this is not an IT / programming class, then I suspect what you are proposing to do will take a lot of effort, while not contributing a great deal to your grade.

Creating and marketing an OS for a niche market with a (X)ubuntu base can be done (legally) with a little bit of knowledge about Ubuntu, repositories and packages. No actual programming knowledge will be required.

manikavasagam
February 5th, 2009, 08:00 PM
I need Kernel Program full package. Please send me quickly Sir.