He called it a "unix workalike", not a "unix". Simply picking the right terms. Also, he wrote everything himself, and I don't think you can copyright API's (the UNIX syscalls in this case).
I understand that you want to give something back to the community that gave you linux (as do I with verious open source projects), but it seems that an "open source" book might be too easy to steal. Imagine that you truly post the source to the book (LaTeX or something), and someone latexs it and prints off a thousand copies at Kinko's, has it bound, and sells them for $10 on eBay. You'll have to use something like GPL, but does GPL really apply to books? This is pretty new area, so be very careful (if your book is pretty good, and worth real money) -- there's always some asshole that wants to make a buck at someone else's expense.
[You could say the same thing about Linux distros though. The difference is that good distros give something back. In the book example, maybe someone writes a few chapters and sells printed copies of your book with the extra chapters, but then gives you the copyright on the extra chapters. It's really hard to say...]
But you're not using PDA's for the PDA feature. I use my Palm m125 for my date book, todo list, addresses, assignemnts, project management, etc. I could not in my wildest dreams improve upon the basic interface. You don't need a huge screen! You don't need color! You need small programs that get the job done. Case in point, the date book program. Press the date button, click the nearest time to my event, a dialog comes up and i pick my exact time, then i type the event. The schedule compresses itself so it only shows times where I have events (when the screen fills up). I can also choose a view that gives me a todo list and appointment list. So in the morning i press one button and see what I need to do today.
That is what a PDA is for. Not taking digital pictures and uploading them to the internet.
Couldn't you get around this by adding extra functions or something... say your program is this:
int main(int argc, char **argv){
printf("Hello, World!\n");
// do work
return 0;
}
you could change it to:
int work(int argc, char **argv){
printf("Hello, World!\n");
//do work
return 0;
}
long int factorial(short int n){
// calculate a factorial, recursively:)
}
int main(int argc, char **argv){
int r = 0;
factorial(16);
r = work(argc, argv);
return r;
}
--
Would this get through the cheating detector? With that added factorial and work call, it doesn't look at all the same (and it uses more CPU;). But the end result is the same; the program prints "Hello, World" and exits with status 0.
And if your teacher asked "why the extra factorial", you'd say "i just wanted to try recursive functions! The program still works, right? And it completes the assignement."
And she would say "ah yes! what a wonderful student."
They should teach "dead" and "live" languages. I've learned C/C++ and Perl, but also Lisp and Scheme. All of them have their uses, and once you know one, the rest are easy. What I don't like are a bunch of C++ people that can't read C code... "printf? what's a printf!?". That would be everyone at my school though (high school, so it's sort of "okay");)
This is the same C++ course that neglects pointers, classes, templates, operator overloading, etc. So why don't they just teach C!?
That's why Microsoft has failed so miserably, right. We know that they'd never think of using anyone else's code. Nothing like the BSD TCP stack. No never.
Illegal? No. Colaborating? Yes.
Not to mention all the potentially GPL'd code in some programs (I just assume they do this; I have no proof).
Okay, the Apple menu *has always* been able to open programs (and documents), control panels, and anything else you can put in System Folder::Apple Menu Items (this includes scripts to log out [with AtEase or whatever] or shut down).
Now the Start button does the exact same thing, right? What I'm asking (since I've never owned a windows machine) is what the start button can do that the Apple Menu with a bit of AppleScript can't do.
Funny thing is, I rarely watch TV or see movies. There are other ways to spend my time, like reading,computer-stuff, going out with friends, taking a walk, etc. I'll grant you though, that watching AOLTW doesn't actually do anything for them;) Unless I have a Nielsen box or whatever, which I don't.
The point is, there are other places to be entertained (see a play or something, although I hate those:), or get news. Slashdot is pretty good:-D
Sun and Netscape would be very happy to control your life. They just haven't gotten there, yet.
You know, they only control your life if you let them. They don't make anything essential for life; I can still eat, sleep, work, learn, have sex (heh), etc. My life is just fine without AOL or MS products.
I very seriously doubt that things will come to, say, Microsoft getting the USGovt to pass a law forbidding software development by unlicensed, uncertified developers, and then fixing the game so only Microsoft developers can be easily certified.
And something to consider -- there are other countries on this earth. America isn't the great country that we make it out to be. I mean, it's not bad but it's FAR from perfect. Worse, we _think_ we're perfect. I would not be surprised that things like this (companies 0wn1nG the gov't) lead to a downfall of the American marke, or way of life. In 20 years, I bet that China is going to be SERIOUSLY competitive with the United States. If things like this happen, the talent is going to leave the country (I know I will, and I'm 16 -- I have plenty of years ahead of me). Heh, I guess I'm being a bit arrogant, but I'm a pretty good programmer;)
Hmm.. I'm going to Japan for a year on an exchange program, anyone know if society is more/less free, more/less company owned. It's probably not any better, is it...
Naturally, to prevent you from firing up GCC and doing a rogue compilation of DeCSS or Lame or other unauthorized code, the operating system will have to stop you from running anything that isn't written in its language for its virtual machine.
This is just wrong. Hardware is hardware and has no idea what seqences of instructions do. They execute an instruction, then another, then another. You put your code in memory and feed the CPU the address of the code. You can always go under the operating system (stick in a boot disk that loads the OS on top of something else). There's no way a machine could block "illegal code".
Now, maybe a chip that only executes signed bytecode could do something like this. But then development would be essentially impossible and there would be no programs for that achitecture (and if you give developers the private key, it will be public in seconds; hell I'd do it!!).
Not if Phillips puts out an ad campaign saying something like "accept only REAL CD's, the other ones can break your equipment [which the copies could]"
And they're _still_ really fun. Just because it's not new (heh.... or GNU) doesn't mean you can't use it. That having been said, I use Linux/PPC and my graphics card doesn't support DRI. Oh well. Mario is fun too (and it's 17 or so years old).
So let me get this straight. The people (windows users) who can't stop clicking on attachments that say "this is a virus, don't click" can write perl scripts? Wow.
I'm going to agree with you here. If there's no pattern in the data, how can you find one and compress it. The reason things like gzip work well on c files (for instance) is because C code is far from random. How many times do you use void or int in a C file? a lot:)
Try compressing a wav or mpeg file with gzip. Doesn't work too well, becuase the data is "random", at least in the sense of the raw numbers. When you look at patterns that the data forms, (i.e. pictures, and relative motion) then you can "compress" that.
Here's my test for random compression:)
$ dd if=/dev/urandom of=random bs=1M count=10
$ du random
11M random
11M total
$ gzip -9 random
$ du random.gz
11M random.gz
11M total
$
no pattern == no compression
prove me wrong, please:)
Okay, then you fork the linux tree and make your own perfect operating system. Easy for someone as smart as you, right?
He called it a "unix workalike", not a "unix". Simply picking the right terms. Also, he wrote everything himself, and I don't think you can copyright API's (the UNIX syscalls in this case).
I understand that you want to give something back to the community that gave you linux (as do I with verious open source projects), but it seems that an "open source" book might be too easy to steal. Imagine that you truly post the source to the book (LaTeX or something), and someone latexs it and prints off a thousand copies at Kinko's, has it bound, and sells them for $10 on eBay. You'll have to use something like GPL, but does GPL really apply to books? This is pretty new area, so be very careful (if your book is pretty good, and worth real money) -- there's always some asshole that wants to make a buck at someone else's expense.
[You could say the same thing about Linux distros though. The difference is that good distros give something back. In the book example, maybe someone writes a few chapters and sells printed copies of your book with the extra chapters, but then gives you the copyright on the extra chapters. It's really hard to say...]
Great. So you can make more money at my expense? Thanks. I'll be sure to help you, your highness.
I bet that if Microsoft offered Alan Cox a job for $800,000 a year he wouldn't take it. All about the money right?
Yeah, and we all know that Asian people aren't taught/can't learn English. And the fact that paint programs need a lot of text, right?
Windows sure as hell ain't "very good" but it sure makes a shitload of cash!
But you're not using PDA's for the PDA feature. I use my Palm m125 for my date book, todo list, addresses, assignemnts, project management, etc. I could not in my wildest dreams improve upon the basic interface. You don't need a huge screen! You don't need color! You need small programs that get the job done. Case in point, the date book program. Press the date button, click the nearest time to my event, a dialog comes up and i pick my exact time, then i type the event. The schedule compresses itself so it only shows times where I have events (when the screen fills up). I can also choose a view that gives me a todo list and appointment list. So in the morning i press one button and see what I need to do today.
That is what a PDA is for. Not taking digital pictures and uploading them to the internet.
Couldn't you get around this by adding extra functions or something... say your program is this:
// do work
//do work
// calculate a factorial, recursively :)
;). But the end result is the same; the program prints "Hello, World" and exits with status 0.
int main(int argc, char **argv){
printf("Hello, World!\n");
return 0;
}
you could change it to:
int work(int argc, char **argv){
printf("Hello, World!\n");
return 0;
}
long int factorial(short int n){
}
int main(int argc, char **argv){
int r = 0;
factorial(16);
r = work(argc, argv);
return r;
}
--
Would this get through the cheating detector? With that added factorial and work call, it doesn't look at all the same (and it uses more CPU
And if your teacher asked "why the extra factorial", you'd say "i just wanted to try recursive functions! The program still works, right? And it completes the assignement."
And she would say "ah yes! what a wonderful student."
Heh heh heh.
They should teach "dead" and "live" languages. I've learned C/C++ and Perl, but also Lisp and Scheme. All of them have their uses, and once you know one, the rest are easy. What I don't like are a bunch of C++ people that can't read C code... "printf? what's a printf!?". That would be everyone at my school though (high school, so it's sort of "okay") ;)
;)
This is the same C++ course that neglects pointers, classes, templates, operator overloading, etc. So why don't they just teach C!?
Or Scheme. There's a fun language
That's why Microsoft has failed so miserably, right. We know that they'd never think of using anyone else's code. Nothing like the BSD TCP stack. No never.
Illegal? No. Colaborating? Yes.
Not to mention all the potentially GPL'd code in some programs (I just assume they do this; I have no proof).
Okay, the Apple menu *has always* been able to open programs (and documents), control panels, and anything else you can put in System Folder::Apple Menu Items (this includes scripts to log out [with AtEase or whatever] or shut down).
Now the Start button does the exact same thing, right? What I'm asking (since I've never owned a windows machine) is what the start button can do that the Apple Menu with a bit of AppleScript can't do.
Nothing like the, uh, Apple menu?
I'm going to Japan, not China. There's a difference, you know
Funny thing is, I rarely watch TV or see movies. There are other ways to spend my time, like reading,computer-stuff, going out with friends, taking a walk, etc. I'll grant you though, that watching AOLTW doesn't actually do anything for them ;) Unless I have a Nielsen box or whatever, which I don't.
:), or get news. Slashdot is pretty good :-D
The point is, there are other places to be entertained (see a play or something, although I hate those
You know, they only control your life if you let them. They don't make anything essential for life; I can still eat, sleep, work, learn, have sex (heh), etc. My life is just fine without AOL or MS products.
And something to consider -- there are other countries on this earth. America isn't the great country that we make it out to be. I mean, it's not bad but it's FAR from perfect. Worse, we _think_ we're perfect. I would not be surprised that things like this (companies 0wn1nG the gov't) lead to a downfall of the American marke, or way of life. In 20 years, I bet that China is going to be SERIOUSLY competitive with the United States. If things like this happen, the talent is going to leave the country (I know I will, and I'm 16 -- I have plenty of years ahead of me). Heh, I guess I'm being a bit arrogant, but I'm a pretty good programmer
Hmm.. I'm going to Japan for a year on an exchange program, anyone know if society is more/less free, more/less company owned. It's probably not any better, is it...
How about interperted languages atop that "trusted language". I'm sure someone could/has write/(written :) a DeCSS in scheme.
This is just wrong. Hardware is hardware and has no idea what seqences of instructions do. They execute an instruction, then another, then another. You put your code in memory and feed the CPU the address of the code. You can always go under the operating system (stick in a boot disk that loads the OS on top of something else). There's no way a machine could block "illegal code".
Now, maybe a chip that only executes signed bytecode could do something like this. But then development would be essentially impossible and there would be no programs for that achitecture (and if you give developers the private key, it will be public in seconds; hell I'd do it!!).
Not if Phillips puts out an ad campaign saying something like "accept only REAL CD's, the other ones can break your equipment [which the copies could]"
Yup. Lots of critical hardware not supported by Linux. Important things like, well I can't think of any right now. Oops, sorry.
I have an iMac of all things, and Linux runs flawlessly. Even on the supposed ultra-proprietary hardware.
> Quake3 and UT are nearly 3 years old.
And they're _still_ really fun. Just because it's not new (heh.... or GNU) doesn't mean you can't use it. That having been said, I use Linux/PPC and my graphics card doesn't support DRI. Oh well. Mario is fun too (and it's 17 or so years old).
So let me get this straight. The people (windows users) who can't stop clicking on attachments that say "this is a virus, don't click" can write perl scripts? Wow.
Yeah, sorry. I didn't want to wait a week to collect entropy for my slashdot comment :-D
I'm going to agree with you here. If there's no pattern in the data, how can you find one and compress it. The reason things like gzip work well on c files (for instance) is because C code is far from random. How many times do you use void or int in a C file? a lot :)
:)
:)
Try compressing a wav or mpeg file with gzip. Doesn't work too well, becuase the data is "random", at least in the sense of the raw numbers. When you look at patterns that the data forms, (i.e. pictures, and relative motion) then you can "compress" that.
Here's my test for random compression
$ dd if=/dev/urandom of=random bs=1M count=10
$ du random
11M random
11M total
$ gzip -9 random
$ du random.gz
11M random.gz
11M total
$
no pattern == no compression
prove me wrong, please