Dude, federal loans alone will cover up to 47,000 of an independent undergraduate's student loans over the course of four years. The remainder is quite doable with some other kinds of aid and a part time job.
Well, sort of. See, the first year is capped aroun $3k, the second around $4k, then you can max out near $6k per year until about 180 semester hours (after which ALL federal financial aid, including grants, is gone until you graduate). (These numbers are for a state school, perhaps the ceilings go up for a private school.)
So the first two years she'll need to either work full-time, go to community college, find a very lucrative housing situation, or be creative in other ways.
Ironically enough, if she ever does graduate and decide to go on to graduate school, she can get $20k for every year. That plus research salary is a frugal but comfortable living.
In other words, the system provides greatest support (largest loans) to the people who need it less: freshman will generally be unhirable for anything but McDonald's wages, yet as they get further along they can co-op/intern to make real money and the federal loans open up to better support them in school.
Yes, it's doable. But still quite difficult if your family can't do much (like mine was) even with maximum federal support.
There is a world of difference between the spec defining a language being an open standard, and the reference implementation being Open Source.
Except when the spec itself defines compliance to the open language standard as "implementing all the features of the closed reference implementation".
Education is inexpensive, especially for those of moderate incomes.
Hardly. Look up the ceilings for the federal Stafford loan programs sometime, see how they are stacked against the first-year student. If you are 18, just out of high school, and have $0 help from your parents, your best bet is to live in a shack with a roommate, work two years at $7-10/hr taking night courses at a community college, then transfer to university and take out max student loans. You can hope for grants/scholarships, but you'll still need a job that allows you to study in the downtime. You'll get out eventually with only about $30k debt. (Oh yeah, move to a city with good public transportation too because there is no way you'll be able to afford car insurance during all this.)
And anyone who decides (or has it decided for them) that a 7-year plan to get a 4-year degree isn't worth it is lazy to boot.
First i'm going to asume your listening to those ultra wacko professors who think the inocent civilians who dies in 9/11 are worse then the nazi's
Those professors were actually just one professor, his name is Ward Churchill, and his statement, even when taken out of context, was not nearly so severe as you make it out to be.
Churchill's original statement likened the implicit approval Americans give our government's foriegn policy to the "good German" stereotype of WWII: middle-class people going about their business, making no trouble, enjoying their lives, and being hideously self-deluded about what their government was doing (killing Jews, invading foreign lands). (I vaguely recall the stereotype coming from a middle-aged man who had suvived somewhat comfortably through the war saying something like, "I'm no Nazi, I didn't support any of that! I'm a good German!" and the protagonist being shocked that the man would try to exonerate himself in that way.)
My opinion, having worked for IBM for several years (a company that indeed gets it in terms of OSS) on a project with large business users, academia for a couple years on code whose official ownership is somewhat fuzzy (depending on who funds it), and actually gotten my very own OSS project to beta (with very few users): I like GPLv3, I'll switch my own code to it when it's finished, and as time moves on I see that RMS has been entirely correct in his predictions of typical human behavior.
The only reason businesses play nice with OSS is the GPL and the FSF's absolute insistence on compliance. Want to create a new computer language but re-use large parts of GCC? GPL your code. Want to incorporate library FOO into your application? GPL your code. Want to take MY code and lock it down? PAY ME for a non-GPL license.
GPL is what the old shareware concept is really all about. You can take the code, run it, see how it works for you. If you want to play with it, fine. If you want to own the code (source), PAY ME. If you don't want to pay me, buy someone else's, see if there's a non-GPL open-source equivalent, or write your own.
I think that it is entirely legitimate to fork a "V2 or later" file and make the fork "V2 only", "V3 only", "V3 or later", etc. The original "V2 or later" source file is still available from the original project, and a new fork could retain the "V2 or later" license.
More generally, I think the intention of the DRM clause in GPLv3 is dead on. I DO write GPL code, and it is "V2 or later", but when V3 is out my code will move to "V3 or later". Simply put, if someone wants to take my public code and lock it down, they'd better pay me for it.
Don't believe me. Try and remember that the other side in WWII engaged in "morale defeating excercises" even worse than those mentioned above. Their societies are still living in shame. Forever burdened with the crimes their countries have committed.
Do you want that to happen to the United States?
The United States has already done similar activities and no one seems to care. In fact, most Americans think that the atrocities committed in their name were ultimately good things.
The solution to this environmental problem is not social. The solution lies in allowing people to live as they want without destroying the environment in the process.
Both of these statements can't be absolutely true because "allowing people to live as they want" IS a social solution!
I agree that we need to push forward in technology, but we also need to address the social problems: 1) There simply aren't enough jobs that fund a suburban lifestyle that are physically close to the suburbs already. 2) There aren't enough jobs to fund a suburban lifestyle for the millions of people who already live in the cities and would love to live in the suburbs someday. #1 is changing already as "ex-urbs" develop outside the large cities, but it's not enough to make a serious dent in gasoline consumption. I've heard zero constructive suggestions from any economists (right and left) regarding #2 -- apparently we neither know how to create jobs nor care about the people who don't have them.
Regardless of technology, our global economy is not sustainable. At some point we need to make a real decision regarding the question: when is enough enough? Why can't we get by on a 30-hour work week, or even a 20-hour week? Is leisure more or less expensive in terms of raw resources than work? How can we make a transition from a scarcity-based economy (classical economy) to technological semi-utopia (Star Trek)? I think answers can be found, but they will come out of sociology and psychology, not engineering.
So how am I, as a CS graduate with three years' experience in the software industry (I worked in software in college as well) with a 3.5 GPA and some post-graduate work, supposed to convince a potential employer that they should pay me what I'm really worth...?
You're right, you don't. Instead you should do two things:
1) Stop worrying about "what you're worth" and focus on "what you need to pay bills and get out of debt (if you have any)." I'm not pulling the "jobs don't come on trees" argument, I know the system is gamed to hell against you. It's not a meritocracy, and complete idiots often get promoted to six figures within five years out of school. But you need to stop focusing on that stuff and instead just worry about getting your own life in order. Be above the argument, just keep your bills in line and have a nice life outside the 8-5.
2) Change the way you think about the code. Code isn't holy or sacred, it's just one piece of a larger problem you're paid to solve. Look at industries outside the mainline of CS (i.e. avoid IBM/Sun/HP/etc. and the Fortune-500 IT shops). Right now my former employer -- an oceanography research group at a state university -- has a paid position (around $40K in a cheap semi-rural area (2 hours from a large city, but still has its own major stores)) and cannot find qualified applicants, I think because the pay is too low (but could still support a middle-class family). (Here is the actual work: TinyLinux on an embedded 486/100MHz processor, 32MB RAM, existing codebase is Perl, C, and shell script, needing frequent changes and three new large pieces still unwritten, with a GUI in VB6 and a visualization web site in PHP. PLUS you get to work with the electronics and occasionally go offshore to deploy the things. You get to actually build these machines and put them to work, and your name appears on published reports. Includes medical, pension, paid vacation time, and flexible office hours.) I know the job search is tough, but there are dozens of industries that need programmers that CS students just never seem to apply to.
Not trying to preach, but these two things helped me a lot, and might help you.
But RMS rejects a free market in software. He rejects the private ownership of software, and rejects the freedom to buy and sell closed software. RMS would not grant me the right to sell a program without its source code.
Wow, talk about wrong. RMS does want software to be free, true, because he believes that sharing code is morally right. Oh, and it also improves the situation for everyone as an added bonus. He has never pushed for draconian laws passed to enforce sharing, unlike his competition who passed the DMCA and routinely lobby the government to shut him down.
Instead, he has spearheaded an effort to create a complete software stack out of free software parts, and is competing for mindshare on the open market. It's the other side who is playing dirty, trying to take parts of that free software stack and build their own proprietary systems out of it. They erroneously think that because they CAN see the source then they are entitled to do whatever they want with it.
His ideal is a socialism of software.
His "ideal" is a software ecosystem which supports free software in any fashion at all. In order to get that, we have to create the entire shebang, because if only one piece isn't free the whole thing isn't free. It so happens that the free software stack is now of equal or better quality in certain domains than the proprietary software, and now the proprietary vendors are trying to steal code.
The GPL prohibits this. Sounds unlikely? BadCorp is Sony, their box is the Playstation 2 (their signing system has been resoundingly defeated, but the intent was there and the Playstation 3 will probably have a harder version). You can boot linux on that thing, because it's GPLv2. If linux were GPLv3, there would be no playstation port of it. Sony will never release those keys and they will never care because they don't make any GPLed software.
GPLv3 would definitely prohibit ApostleCorp from releasing a Sony PS3 that includes a signed Linux. ApostleCorp can't provide the hardware key, so they can't guarantee users can recompile the kernel. However, we know that selling PS3's modified in certain ways is already illegal for anyone (DMCA et al).
So: if ApostleCorp makes a full-featured Linux distribution that boots directly from PS3 DVD, and has it blessed by Sony so they can even box it up and sell it at Best Buy, how would GPLv3 relate? I think GPLv3 would indeed prevent the ApostleLinuxPS3 distro. And I'm somewhat divided over the rightness of it.
On the one hand, a Linux-based PS3 media center would be neat, and I do have a GPL program out there and I'd enjoy more exposure for it. However, I would be pissed as hell if I couldn't get ApostleLinuxPS3 to compile and execute my own code. I think there is a real possibility that Sony would say "you can provide no compilers and you cannot execute unsigned binaries, or you get no top-level signature to start the boot sequence" (to protect their business model) so ApostleLinuxPS3 would be a kiosk-type unmodifiable system, so perhaps the media center would be impossible anyway. But I always have the option to use a non-GPL product as my media center OS.
Really it comes back to the hardware vendors. If Linux goes GPLv3, will they stop using it?
Conversely: why should we care if they switch to another OS? Linux has officially never been about market share, right? So why are we even having a debate that seems (to me) to be driven by a desire to retain/expand a hardware market? Has adoption by Linksys et al really been the reason Linux has gotten so good?
Outside of consumer devices, there are plenty of very legitimate use cases for such restrictions. Any embedded medical device should not allow unsigned code to be executed. Any embedded saftey control system should not allow unsigned code to be executed. Same goes for things such as power station control systems, automobile control systes, etc. To a degree, you could also argue the case for consumer devices. Once you allow unsigned code to be run, you open the door for unknown errors to be seen. This could potentially raise support costs for the manufacturer.
This is the only post I've seen making a coherent argument in favor of vendor-locked devices. But I think the manufacturer of these legally-controlled safety devices already have other ways (outside DRM) to enforce their systems' integrity:
1. They can physically lock down the hardware with a custom opening mechanism (key, screws, etc.). No opening the device, no updating the firmware. The user can still get in, but they have to break the lock and run the risk of destroying the device in the meantime.
2. They can make explicit the expectation that the firmware will not be updated by the user. User updates firmware, they lose access to the warranty and they incur liability for any damages that occur (which in the case of power control systems would include immediate criminal violation of the law).
I've seen both methods used with success in cars, calculators, and computer-controlled industrial hardware. These don't require DRM at all, so GPLv2 OR v3 would be fine. They can even retain the ability to conveniently update firmware by sticking with #2 only.
So again, I don't see how DRM even helps the hardware manufacturer. They create a more complicated system, with greater chance of failure, and still get less legal cover than if they used a signed EULA.
While I appreciate the discussion, if you want a serious reply please don't use something I didn't say as a silly strawman. This doesn't advance the discussion whatsoever.
Considering that you say it again, I see no strawman the first time:
And no, it doesn't take concrete action to relicense it. The key point that you're missing is that the final arbitrer of copyright is a judge. If a judge finds that the copyright holder either was aware, or should have been aware of, the intention of relicensing, and that silence implied consent, then there are indeed reasonable grounds for acceptance of the relicensing.
See: "...silence implies consent...". You just said again what I said doesn't happen. I can't take a copy of book published in 1950, whose author+estate is not legally reachable, and get a judge to toss the copyright. If that were the case, all instances of "abandonware" would have already reverted to public domain (I'd be able to distribute my copies of old 80's DOS software for instance).
Suing someone to prevent them from re-assigning MY copyright is just as unnecessary as suing them not to steal my car.
Computers in general, and the 'models' that are simulated on them, have become the modern, socially acceptable incarnation of the crystal ball---a way for people to disguise their agenda under the cloak of divination. 'Look! Behold your impending doom and change your ways before it's too late!!!' No thanks. I'll stick with science, myself, which consists of facts and figures, equations and postulates,
Minor problem: you already depend on simulations of "chaotic" systems with margins of error you'd find laughable in other disciplines. I'm referring to molecular simulation, which is one of the three major bases for modern pharmacology (the others being experimental trials and organic synthesis).
The molecular simulations are very complex. They *can* be based on fundamental quantum principles (ab initio programs), but most simulations will require experimental parameters to run within the limits of current technology (DFT programs), i.e. without simplifying some things we don't have enough time in the universe to run the model. "Molecular Simulation (MS)" is what these quantum models are called, and generally they are used to explore possible reaction pathways where molecular bonds can change. "Molecular Dynamics (MD)" are even more inaccurate Newtonian models (ball-and-spring force fields) that are used to find likely minimum-energy conformation of a molecule (what shape is it in, which determines how it can physically move/react in a larger system). There is absolutely no way to find the actual (global) minimum-energy of a molecule bigger than about 100 atoms (which is practically everything biological) due to the number of calculations required. Finally, both kinds of simulations use time steps in the femtosecond range and can rarely run beyond a few nanoseconds (1 ns = 1e6 fs). Yet despite these limitations, these models -- when *combined with experimental data* -- can yield enormous results.
So in recap: if you get sick, you will be given medicine that was originally modeled as a Newtonian indestructible ball-and-stick thing, and we only know how it *might* behave for a couple nanoseconds, and our best guess as to *why* it works (how it reacts) is based on an approximation of a quantum model. Yet there is a whatever-% chance that the medicine will do exactly what it is expected to do once it enters your body.
Ever see legal notices in the paper? The same principle applies.
So Linus can put a classified ad in the Bay Area paper (whatever it is) to the effect "I, Linus Torvalds, am about to change the license on the Linux Kernel version 2.9.x to the BSD license. Anyone who has code they contributed must respond within 14 days or it's a done deal!" and that's it?
Somehow, I don't think so. The code put in by IBM, SGI, etc. etc. belongs to them, not Linus, and stays with them for life + forever years, and passes to their estate upon their death, just like anything else.
It takes concrete action from the copyright holder to relicense it. And any one of those developers (or their descendants) who says "no, it stays GPLv2" has final say on their code. If you want a GPLv3 kernel, you have to throw that code away, there is no "the default is to assume it was re-licensed unless they sue you otherwise" option.
Your advice is essentially "The world is tough, so what! Get ruthless." I've been down that road too, and I think ultimately it is self-defeating. Ruthless is associated with "cunning and ambitious" more than "determined and painfully honest," even if you think you are [acting] honorably and fairly. You're not being honorable, you're just being expedient, and one wonders if that attitude really is only confined to the workplace.
There comes a time when you don't get the upper hand in the fight, yet you can't afford to move on immediately afterwards, and chickens come home to roost.
And the real economy does indeed follow Econ 101, right? We all have perfect information (including the salaries of our peers in the same company) and only make fully rational decisions. Uh-huh.
"3) no decent command line. Some things are much easier to do in the command line; for example, searching for files, then selecting some of them due to search criteria, then zipping and sending them to a specific folder. Doing this in Windows is not as easy and intuitive as in Linux."
Searching for files is done by pressing Winkey-F. If you need to hunt down specific files by another special search creiteria, you can click one of the search options. If you need greater control over that, then you probably need a better organization system.
But how can the OP search for files and "[zip] and [send] them to a specific folder" with Windows-F?
"6) drive letters are problematic. I have setup my projects to drive E:, but somehow Windows decided to give the drive a different drive letter once I reconfigured the partitions. Then my project broke. I had to replace all drive references in all the project files."
Settings -> Control Panel -> Administrative Tools -> Computer Management -> Storage -> Disk Management -> Right Click F: -> Change Drive Letter and Paths.
That seems at least as complex as "man mount ; edit/etc/fstab".
(Irony, much? Given that the entire driver model for the Linux kernel is based on an ugly work around to allow it to use closed drivers while still being "Free")
At least with windows I can just pop a cd (or download the binary dirver), install it, and expects it to work 99% of the time.
Wow, that's definitely not my experience. When I last tried to install vanilla Windows 2000, the DVD wouldn't work in WMP (I'm supposed to buy software for it?) and during the hardware setup phase (detect hardware, insert disk, reboot, detect more hardware, insert disk, reboot, etc.) something caused Win2k to get stuck in a reboot loop and I couldn't get past that point at all. Safe mode didn't help either. Fortunately I was able to dig up some restore CDs for this particular system that got it to a bootable state, but was stuck with a bunch of factory-added garbage (AOL, RealPlayer, some kind of CD-R DRM-style driver, etc.)
Frankly I'm amazed the people at the factory manage to get Win2k/WinXP on anything at all after that experience.
Pension funds (including traditional pensions, 401K, etc.) are controlled by the employer, not the employee. Employees get to pick between a fixed number of investment options, and (surprise) most of those options involve some percentage of stock. (In my last job, there was only ONE option out of a dozen that had no stock component.)
Furthermore, the any fund/401K/IRA (you did know your IRA is managed by someone else right?) is opaque to the wishes of its alleged beneficiaries; one can neither explain to the fund managers why they moved their money between investment plans nor pick the individual companies whose stock they want to be invested in.
With the object model we have now, absolutely. All we have is a stack, instruction pointer, and list of offsets in the file for each function name (and then only if we compile it that way). There is zero metadata telling the OS things like "this block of code is a loop, and these variables are variants, and that variable is the loop counter". Without that kind of information parallelization can't be done automatically.
Not the job of the operating system?
As what we mean when we say OS now, it's certainly not its job. If you made your chip run a Java VM, or a Lisp VM, or a.Net VM, then it could do that.
You mention a new programming language, but Linux doesn't even really support languages outside of C very well.
An operating system *could* compact and garbage collect an application's memory when it is blocked on IO. An operating system *could* do this with another CPU if there's a single-threaded program running (perhaps the algorithm in use doesn't allow for parallelism, for example a priority queue). An operating system *could* use a single memory map, so multiple processors could work in parallel at a finer-grained level more efficiently (ie without TLB flush overhead). An operating system *could* have a 50-cycle task switch instead of a 1200+ cycle task switch. An operating system *could* spend idle time specially-optimizing hotspots and critical paths for what the user is having the code actually do.
Good idea! Let's make a new kind of workstation that uses as its primary language one with garbage collection built in, that encourages application developers to use object-oriented and advanced meta-programming techniques. It could be Lightweight, Interactive, and Stupendously Powerful. We could call it a LISP machine.
Dude, federal loans alone will cover up to 47,000 of an independent undergraduate's student loans over the course of four years. The remainder is quite doable with some other kinds of aid and a part time job.
Well, sort of. See, the first year is capped aroun $3k, the second around $4k, then you can max out near $6k per year until about 180 semester hours (after which ALL federal financial aid, including grants, is gone until you graduate). (These numbers are for a state school, perhaps the ceilings go up for a private school.)
So the first two years she'll need to either work full-time, go to community college, find a very lucrative housing situation, or be creative in other ways.
Ironically enough, if she ever does graduate and decide to go on to graduate school, she can get $20k for every year. That plus research salary is a frugal but comfortable living.
In other words, the system provides greatest support (largest loans) to the people who need it less: freshman will generally be unhirable for anything but McDonald's wages, yet as they get further along they can co-op/intern to make real money and the federal loans open up to better support them in school.
Yes, it's doable. But still quite difficult if your family can't do much (like mine was) even with maximum federal support.
There is a world of difference between the spec defining a language being an open standard, and the reference implementation being Open Source.
Except when the spec itself defines compliance to the open language standard as "implementing all the features of the closed reference implementation".
I assume you're talking USA...
Education is inexpensive, especially for those of moderate incomes.
Hardly. Look up the ceilings for the federal Stafford loan programs sometime, see how they are stacked against the first-year student. If you are 18, just out of high school, and have $0 help from your parents, your best bet is to live in a shack with a roommate, work two years at $7-10/hr taking night courses at a community college, then transfer to university and take out max student loans. You can hope for grants/scholarships, but you'll still need a job that allows you to study in the downtime. You'll get out eventually with only about $30k debt. (Oh yeah, move to a city with good public transportation too because there is no way you'll be able to afford car insurance during all this.)
And anyone who decides (or has it decided for them) that a 7-year plan to get a 4-year degree isn't worth it is lazy to boot.
First i'm going to asume your listening to those ultra wacko professors who think the inocent civilians who dies in 9/11 are worse then the nazi's
Those professors were actually just one professor, his name is Ward Churchill, and his statement, even when taken out of context, was not nearly so severe as you make it out to be.
Churchill's original statement likened the implicit approval Americans give our government's foriegn policy to the "good German" stereotype of WWII: middle-class people going about their business, making no trouble, enjoying their lives, and being hideously self-deluded about what their government was doing (killing Jews, invading foreign lands). (I vaguely recall the stereotype coming from a middle-aged man who had suvived somewhat comfortably through the war saying something like, "I'm no Nazi, I didn't support any of that! I'm a good German!" and the protagonist being shocked that the man would try to exonerate himself in that way.)
What's *your* opinion?
My opinion, having worked for IBM for several years (a company that indeed gets it in terms of OSS) on a project with large business users, academia for a couple years on code whose official ownership is somewhat fuzzy (depending on who funds it), and actually gotten my very own OSS project to beta (with very few users): I like GPLv3, I'll switch my own code to it when it's finished, and as time moves on I see that RMS has been entirely correct in his predictions of typical human behavior.
The only reason businesses play nice with OSS is the GPL and the FSF's absolute insistence on compliance. Want to create a new computer language but re-use large parts of GCC? GPL your code. Want to incorporate library FOO into your application? GPL your code. Want to take MY code and lock it down? PAY ME for a non-GPL license.
GPL is what the old shareware concept is really all about. You can take the code, run it, see how it works for you. If you want to play with it, fine. If you want to own the code (source), PAY ME. If you don't want to pay me, buy someone else's, see if there's a non-GPL open-source equivalent, or write your own.
I think that it is entirely legitimate to fork a "V2 or later" file and make the fork "V2 only", "V3 only", "V3 or later", etc. The original "V2 or later" source file is still available from the original project, and a new fork could retain the "V2 or later" license.
More generally, I think the intention of the DRM clause in GPLv3 is dead on. I DO write GPL code, and it is "V2 or later", but when V3 is out my code will move to "V3 or later". Simply put, if someone wants to take my public code and lock it down, they'd better pay me for it.
Don't believe me. Try and remember that the other side in WWII engaged in "morale defeating excercises" even worse than those mentioned above. Their societies are still living in shame. Forever burdened with the crimes their countries have committed.
Do you want that to happen to the United States?
The United States has already done similar activities and no one seems to care. In fact, most Americans think that the atrocities committed in their name were ultimately good things.
The solution to this environmental problem is not social. The solution lies in allowing people to live as they want without destroying the environment in the process.
Both of these statements can't be absolutely true because "allowing people to live as they want" IS a social solution!
I agree that we need to push forward in technology, but we also need to address the social problems: 1) There simply aren't enough jobs that fund a suburban lifestyle that are physically close to the suburbs already. 2) There aren't enough jobs to fund a suburban lifestyle for the millions of people who already live in the cities and would love to live in the suburbs someday. #1 is changing already as "ex-urbs" develop outside the large cities, but it's not enough to make a serious dent in gasoline consumption. I've heard zero constructive suggestions from any economists (right and left) regarding #2 -- apparently we neither know how to create jobs nor care about the people who don't have them.
Regardless of technology, our global economy is not sustainable. At some point we need to make a real decision regarding the question: when is enough enough? Why can't we get by on a 30-hour work week, or even a 20-hour week? Is leisure more or less expensive in terms of raw resources than work? How can we make a transition from a scarcity-based economy (classical economy) to technological semi-utopia (Star Trek)? I think answers can be found, but they will come out of sociology and psychology, not engineering.
So how am I, as a CS graduate with three years' experience in the software industry (I worked in software in college as well) with a 3.5 GPA and some post-graduate work, supposed to convince a potential employer that they should pay me what I'm really worth ...?
You're right, you don't. Instead you should do two things:
1) Stop worrying about "what you're worth" and focus on "what you need to pay bills and get out of debt (if you have any)." I'm not pulling the "jobs don't come on trees" argument, I know the system is gamed to hell against you. It's not a meritocracy, and complete idiots often get promoted to six figures within five years out of school. But you need to stop focusing on that stuff and instead just worry about getting your own life in order. Be above the argument, just keep your bills in line and have a nice life outside the 8-5.
2) Change the way you think about the code. Code isn't holy or sacred, it's just one piece of a larger problem you're paid to solve. Look at industries outside the mainline of CS (i.e. avoid IBM/Sun/HP/etc. and the Fortune-500 IT shops). Right now my former employer -- an oceanography research group at a state university -- has a paid position (around $40K in a cheap semi-rural area (2 hours from a large city, but still has its own major stores)) and cannot find qualified applicants, I think because the pay is too low (but could still support a middle-class family). (Here is the actual work: TinyLinux on an embedded 486/100MHz processor, 32MB RAM, existing codebase is Perl, C, and shell script, needing frequent changes and three new large pieces still unwritten, with a GUI in VB6 and a visualization web site in PHP. PLUS you get to work with the electronics and occasionally go offshore to deploy the things. You get to actually build these machines and put them to work, and your name appears on published reports. Includes medical, pension, paid vacation time, and flexible office hours.) I know the job search is tough, but there are dozens of industries that need programmers that CS students just never seem to apply to.
Not trying to preach, but these two things helped me a lot, and might help you.
But RMS rejects a free market in software. He rejects the private ownership of software, and rejects the freedom to buy and sell closed software. RMS would not grant me the right to sell a program without its source code.
Wow, talk about wrong. RMS does want software to be free, true, because he believes that sharing code is morally right. Oh, and it also improves the situation for everyone as an added bonus. He has never pushed for draconian laws passed to enforce sharing, unlike his competition who passed the DMCA and routinely lobby the government to shut him down.
Instead, he has spearheaded an effort to create a complete software stack out of free software parts, and is competing for mindshare on the open market. It's the other side who is playing dirty, trying to take parts of that free software stack and build their own proprietary systems out of it. They erroneously think that because they CAN see the source then they are entitled to do whatever they want with it.
His ideal is a socialism of software.
His "ideal" is a software ecosystem which supports free software in any fashion at all. In order to get that, we have to create the entire shebang, because if only one piece isn't free the whole thing isn't free. It so happens that the free software stack is now of equal or better quality in certain domains than the proprietary software, and now the proprietary vendors are trying to steal code.
Scenario P:
The GPL prohibits this. Sounds unlikely? BadCorp is Sony, their box is the Playstation 2 (their signing system has been resoundingly defeated, but the intent was there and the Playstation 3 will probably have a harder version). You can boot linux on that thing, because it's GPLv2. If linux were GPLv3, there would be no playstation port of it. Sony will never release those keys and they will never care because they don't make any GPLed software.
GPLv3 would definitely prohibit ApostleCorp from releasing a Sony PS3 that includes a signed Linux. ApostleCorp can't provide the hardware key, so they can't guarantee users can recompile the kernel. However, we know that selling PS3's modified in certain ways is already illegal for anyone (DMCA et al).
So: if ApostleCorp makes a full-featured Linux distribution that boots directly from PS3 DVD, and has it blessed by Sony so they can even box it up and sell it at Best Buy, how would GPLv3 relate? I think GPLv3 would indeed prevent the ApostleLinuxPS3 distro. And I'm somewhat divided over the rightness of it.
On the one hand, a Linux-based PS3 media center would be neat, and I do have a GPL program out there and I'd enjoy more exposure for it. However, I would be pissed as hell if I couldn't get ApostleLinuxPS3 to compile and execute my own code. I think there is a real possibility that Sony would say "you can provide no compilers and you cannot execute unsigned binaries, or you get no top-level signature to start the boot sequence" (to protect their business model) so ApostleLinuxPS3 would be a kiosk-type unmodifiable system, so perhaps the media center would be impossible anyway. But I always have the option to use a non-GPL product as my media center OS.
Really it comes back to the hardware vendors. If Linux goes GPLv3, will they stop using it?
Conversely: why should we care if they switch to another OS? Linux has officially never been about market share, right? So why are we even having a debate that seems (to me) to be driven by a desire to retain/expand a hardware market? Has adoption by Linksys et al really been the reason Linux has gotten so good?
Outside of consumer devices, there are plenty of very legitimate use cases for such restrictions. Any embedded medical device should not allow unsigned code to be executed. Any embedded saftey control system should not allow unsigned code to be executed. Same goes for things such as power station control systems, automobile control systes, etc. To a degree, you could also argue the case for consumer devices. Once you allow unsigned code to be run, you open the door for unknown errors to be seen. This could potentially raise support costs for the manufacturer.
This is the only post I've seen making a coherent argument in favor of vendor-locked devices. But I think the manufacturer of these legally-controlled safety devices already have other ways (outside DRM) to enforce their systems' integrity:
1. They can physically lock down the hardware with a custom opening mechanism (key, screws, etc.). No opening the device, no updating the firmware. The user can still get in, but they have to break the lock and run the risk of destroying the device in the meantime.
2. They can make explicit the expectation that the firmware will not be updated by the user. User updates firmware, they lose access to the warranty and they incur liability for any damages that occur (which in the case of power control systems would include immediate criminal violation of the law).
I've seen both methods used with success in cars, calculators, and computer-controlled industrial hardware. These don't require DRM at all, so GPLv2 OR v3 would be fine. They can even retain the ability to conveniently update firmware by sticking with #2 only.
So again, I don't see how DRM even helps the hardware manufacturer. They create a more complicated system, with greater chance of failure, and still get less legal cover than if they used a signed EULA.
While I appreciate the discussion, if you want a serious reply please don't use something I didn't say as a silly strawman. This doesn't advance the discussion whatsoever.
Considering that you say it again, I see no strawman the first time:
And no, it doesn't take concrete action to relicense it. The key point that you're missing is that the final arbitrer of copyright is a judge. If a judge finds that the copyright holder either was aware, or should have been aware of, the intention of relicensing, and that silence implied consent, then there are indeed reasonable grounds for acceptance of the relicensing.
See: "...silence implies consent...". You just said again what I said doesn't happen. I can't take a copy of book published in 1950, whose author+estate is not legally reachable, and get a judge to toss the copyright. If that were the case, all instances of "abandonware" would have already reverted to public domain (I'd be able to distribute my copies of old 80's DOS software for instance).
Suing someone to prevent them from re-assigning MY copyright is just as unnecessary as suing them not to steal my car.
Computers in general, and the 'models' that are simulated on them, have become the modern, socially acceptable incarnation of the crystal ball---a way for people to disguise their agenda under the cloak of divination. 'Look! Behold your impending doom and change your ways before it's too late!!!' No thanks. I'll stick with science, myself, which consists of facts and figures, equations and postulates,
Minor problem: you already depend on simulations of "chaotic" systems with margins of error you'd find laughable in other disciplines. I'm referring to molecular simulation, which is one of the three major bases for modern pharmacology (the others being experimental trials and organic synthesis).
The molecular simulations are very complex. They *can* be based on fundamental quantum principles (ab initio programs), but most simulations will require experimental parameters to run within the limits of current technology (DFT programs), i.e. without simplifying some things we don't have enough time in the universe to run the model. "Molecular Simulation (MS)" is what these quantum models are called, and generally they are used to explore possible reaction pathways where molecular bonds can change. "Molecular Dynamics (MD)" are even more inaccurate Newtonian models (ball-and-spring force fields) that are used to find likely minimum-energy conformation of a molecule (what shape is it in, which determines how it can physically move/react in a larger system). There is absolutely no way to find the actual (global) minimum-energy of a molecule bigger than about 100 atoms (which is practically everything biological) due to the number of calculations required. Finally, both kinds of simulations use time steps in the femtosecond range and can rarely run beyond a few nanoseconds (1 ns = 1e6 fs). Yet despite these limitations, these models -- when *combined with experimental data* -- can yield enormous results.
So in recap: if you get sick, you will be given medicine that was originally modeled as a Newtonian indestructible ball-and-stick thing, and we only know how it *might* behave for a couple nanoseconds, and our best guess as to *why* it works (how it reacts) is based on an approximation of a quantum model. Yet there is a whatever-% chance that the medicine will do exactly what it is expected to do once it enters your body.
Ever see legal notices in the paper? The same principle applies.
So Linus can put a classified ad in the Bay Area paper (whatever it is) to the effect "I, Linus Torvalds, am about to change the license on the Linux Kernel version 2.9.x to the BSD license. Anyone who has code they contributed must respond within 14 days or it's a done deal!" and that's it?
Somehow, I don't think so. The code put in by IBM, SGI, etc. etc. belongs to them, not Linus, and stays with them for life + forever years, and passes to their estate upon their death, just like anything else.
It takes concrete action from the copyright holder to relicense it. And any one of those developers (or their descendants) who says "no, it stays GPLv2" has final say on their code. If you want a GPLv3 kernel, you have to throw that code away, there is no "the default is to assume it was re-licensed unless they sue you otherwise" option.
I'll respond instead of mod this time...
Your advice is essentially "The world is tough, so what! Get ruthless." I've been down that road too, and I think ultimately it is self-defeating. Ruthless is associated with "cunning and ambitious" more than "determined and painfully honest," even if you think you are [acting] honorably and fairly. You're not being honorable, you're just being expedient, and one wonders if that attitude really is only confined to the workplace.
There comes a time when you don't get the upper hand in the fight, yet you can't afford to move on immediately afterwards, and chickens come home to roost.
And the real economy does indeed follow Econ 101, right? We all have perfect information (including the salaries of our peers in the same company) and only make fully rational decisions. Uh-huh.
"3) no decent command line. Some things are much easier to do in the command line; for example, searching for files, then selecting some of them due to search criteria, then zipping and sending them to a specific folder. Doing this in Windows is not as easy and intuitive as in Linux."
/etc/fstab".
Searching for files is done by pressing Winkey-F. If you need to hunt down specific files by another special search creiteria, you can click one of the search options. If you need greater control over that, then you probably need a better organization system.
But how can the OP search for files and "[zip] and [send] them to a specific folder" with Windows-F?
"6) drive letters are problematic. I have setup my projects to drive E:, but somehow Windows decided to give the drive a different drive letter once I reconfigured the partitions. Then my project broke. I had to replace all drive references in all the project files."
Settings -> Control Panel -> Administrative Tools -> Computer Management -> Storage -> Disk Management -> Right Click F: -> Change Drive Letter and Paths.
That seems at least as complex as "man mount ; edit
(Irony, much? Given that the entire driver model for the Linux kernel is based on an ugly work around to allow it to use closed drivers while still being "Free")
u nce/browse_thread/thread/4cb37b4dc331c483/0b79340c 26382aa8
Huh? Where the hell were you when linux transitioned to loadable modules? We're talking 1994 timeframe: http://groups.google.com/group/comp.os.linux.anno
At least with windows I can just pop a cd (or download the binary dirver), install it, and expects it to work 99% of the time.
Wow, that's definitely not my experience. When I last tried to install vanilla Windows 2000, the DVD wouldn't work in WMP (I'm supposed to buy software for it?) and during the hardware setup phase (detect hardware, insert disk, reboot, detect more hardware, insert disk, reboot, etc.) something caused Win2k to get stuck in a reboot loop and I couldn't get past that point at all. Safe mode didn't help either. Fortunately I was able to dig up some restore CDs for this particular system that got it to a bootable state, but was stuck with a bunch of factory-added garbage (AOL, RealPlayer, some kind of CD-R DRM-style driver, etc.)
Frankly I'm amazed the people at the factory manage to get Win2k/WinXP on anything at all after that experience.
Talk about missing the point.
Pension funds (including traditional pensions, 401K, etc.) are controlled by the employer, not the employee. Employees get to pick between a fixed number of investment options, and (surprise) most of those options involve some percentage of stock. (In my last job, there was only ONE option out of a dozen that had no stock component.)
Furthermore, the any fund/401K/IRA (you did know your IRA is managed by someone else right?) is opaque to the wishes of its alleged beneficiaries; one can neither explain to the fund managers why they moved their money between investment plans nor pick the individual companies whose stock they want to be invested in.
Don't like it? Don't invest; that will certainly clean things up in corporate board rooms.
And just how are we supposed to get our pension funds to respond to our preferences? Oh wait, we can't.
Are you suggesting this is impossible? Too hard?
.Net VM, then it could do that.
With the object model we have now, absolutely. All we have is a stack, instruction pointer, and list of offsets in the file for each function name (and then only if we compile it that way). There is zero metadata telling the OS things like "this block of code is a loop, and these variables are variants, and that variable is the loop counter". Without that kind of information parallelization can't be done automatically.
Not the job of the operating system?
As what we mean when we say OS now, it's certainly not its job. If you made your chip run a Java VM, or a Lisp VM, or a
You mention a new programming language, but Linux doesn't even really support languages outside of C very well.
Bullshit.
Which industry is that?
An operating system *could* compact and garbage collect an application's memory when it is blocked on IO. An operating system *could* do this with another CPU if there's a single-threaded program running (perhaps the algorithm in use doesn't allow for parallelism, for example a priority queue). An operating system *could* use a single memory map, so multiple processors could work in parallel at a finer-grained level more efficiently (ie without TLB flush overhead). An operating system *could* have a 50-cycle task switch instead of a 1200+ cycle task switch. An operating system *could* spend idle time specially-optimizing hotspots and critical paths for what the user is having the code actually do.
Good idea! Let's make a new kind of workstation that uses as its primary language one with garbage collection built in, that encourages application developers to use object-oriented and advanced meta-programming techniques. It could be Lightweight, Interactive, and Stupendously Powerful. We could call it a LISP machine.