Unfortunately, in any large commercial project you'll still spend much of your time chasing down memory leaks that other people have put there.
In practice for me, this is simply untrue even in bare C without bounds checking or garbage collection (though there's usually little reason not to use those features in most projects, even in C). Time spent chasing memory violations and leaks is trivial compared to time spent chasing bugs in programming and business logic.
I still stick with higher-level languages for the vast majority of my code, but the reasons aren't greatly related to memory safety--using Python saves me a few percent on debugging time there, but huge amounts of time on development and debugging of real problems vs. Java, C or other lower-level languages.
And if they aren't rare, how would you know? That was my point. A leaky application that allocates 3MB on startup, leaks 1KB an hour, but never gets run for more than 5 days at a time, will probably never get fixed, because it's likely nobody will ever notice there is a problem.
OTOH, if they're never noticed then they really aren't a problem, are they?
I could have a program that runs frequently and exits, without ever bothering to free memory (relying on the OS to do so)--for my application, that could be fine but the startup cost of the available JVM could kill me even though it's more correct wrt memory usage.
You could have a long-running application, where using a good GC (in C or in Java) is paramount.
Pick the right tool for the job.
That's great, but gcc4 is not the same thing as C++
And there are conforming JVMs out there with memory leaks. Indeed, the language never specifies if memory will ever be freed. That's not an argument against using Java, though.
For a lot of projects (the vast majority, in fact) I can rely on being able to pick my development toolchain in order to use the tools that let me get the job done the best.
And it still costs me more to hire programmers who don't generate memory leaks than to use their less-qualified peers and a JVM
Okay, I'm a big proponent of high-level languages (my current project is about 200,000 lines of Python, with maybe 500 lines of C mixed in). But I can't agree with that; in my experience, you'll save money by hiring fewer skilled programmers--the kind for whom on C/C++ projects, memory leaks would be a fairly rare problem that didn't represent a large portion of debugging time. If your programmers are sloppy enough that it'd be a major issue, they're also sloppy enough that real logic bugs are going to explode to the point where time spent debugging easily outweighs the cost-per-hour savings that you're getting.
Obviously it's not 100% true; it's possible to find good, careful entry-level programmers, and you take them whenever you find them. But overall, getting good programmers should be a cost savings.
But yes, even with good programmers you don't want them to spend more effort than required. Limit the use of low-level constructs to where it's required (those few hundred lines of C that we do have are certainly performance-critical). Sometimes that means using hybrid systems (a mix of high- and lower level languages). Sometimes it means using garbage-collected memory allocation in low-level languages. Sometimes it means using low-level libraries from high-level languages. Mostly, it means picking the right tool for the job.
CPython, Stackless, and Jython are real production implementations.
PyPy is rapidly headed that way (and already self-hosting and passes more than 95% of the Python compliance tests). One of the primary developers is Armin Rigo, who did psyco (the specializing dynamic Python compiler that achieved speedups of up to a factor of 100 for numeric code).
It is widely accepted that the 2 most influential superhero titles from the past 50 years were Watchmen and Dark Knight Returns (from which "Batman Begins" was derived).
Your timeframe or perspective is way off on something here. Or you're limiting yourself to limited long book-format comics or something (and at any rate I wouldn't mention those 2 titles without also mentioning Sandman as well).
I'm pretty sure you don't mean to imply that those 2 are more influential than, say, Spider Man, the Fantastic Four, X-Men, the Hulk, or tons of other widely read mainstream superhero titles from the last 50 years.
Betamax WAS the superior format: picture quality, longevity of media
Those are the only two areas it was superior, and on picture quality the advantages were purely theoretical (and, indeed, in real life systems VHS often won side-by-side comparisons).
Meanwhile VHS had dramatically better sound quality. Not to mention run time, including being over the critical 2 hour point where most movies fit on 1 tape and you can actually record a movie while you're out without having to be in the house and switch tapes.
Really the only area that Beta ever had a significant edge for more than a couple months was on media longevity, which just wasn't enough to overcome it's clear inferiority in other areas.
Yes and a swastika is a harmless religious symbol and it has been for longer than it has been a symbol of hate. But, it doesn't get used by the general public or big business a whole lot these days because language is a part of culture and so it changes as the people and culture do
Wow, Godwin'd already.
There's a massive diffence here.
We're a word that has a slang meaning that people over 60 probably wouldn't even know, and where it's pretty obvious from context that the program doesn't want to call itself "crippled" or "B&D slave"--it's an image manipulation program.
It's exactly analagous to "spic and span", which is a fine name for a product even though you won't see many people under 40 using the phrase, nor the word spic in any non-derogatory context.
Number one, while you can point to some obscure and -to be blunt- bizarre definition of the word, people who are decision makers are not going to think of the word you mean; they are going to think of the meaning which the word "GIMP" currently has in popular vocabulary
Thankfully people tend to be more rational than you, and cooler heads have historically prevailed (e.g. in the "niggardly" case I mentioned).
Especially when the definition I'm using is not only not bizarre, but was the _only_ definition for the generation or two before ours; if you ask my mom, let alone my grandmother, she'd take it to mean that (or as a highly specialized embroidery term). And she's not 60 yet.
And even more especially when the context of the program makes it highly likely that this definition was meant; it makes no sense to call an image manipulation program "handicapped". It makes plenty to call it "beautiful".
Secondly, the target audience which I'm referring to are people who already endure the stigma of either mental illness, chemical dependencies or physical challenges
Nice. Go for nonexistant rationales and bogus sympathy points. When has gimp ever applied to the mentally ill or chemically dependent? The negative slang connotations are for people who limp or B&D subs.
It's worse than that. While I'm usually not a fan of changing things around for the sake of being PC, calling a program "The Gimp" is downright offensive.
You sound like the people calling for firing the official in DC who used the word "niggardly".
Do you also object to the phrases "spic and span" and "a chink in the armor"?
"gimp" means beautiful or attractive, and has meant that for far longer than it's been used as slang for the handicapped. Presumably the makers of an image manipulation program had that meaning in mind.
How do you figure limes a modern addition. Ships carried limes, hence the nickname for british sailors, limeys.
That doesn't mean it was in part of the grog, though. You can add lime to grog, and that's been done some, most commonly in modern times.
Traditional grog is just rum and water, though apparently lime was suggested as an addition earlier on than I thought:
As wikipedia says, "Grog is an alcoholic beverage made with water and rum. It was introduced into the Royal Navy by British Vice Admiral Edward Vernon on 21 August 1740. Modern versions of the drink sometimes include lemon juice, lime juice, cinnamon or sugar to improve the taste....Until the grog ration was discontinued in 1970, Navy rum was 95.5 proof, or 54.6 per cent alcohol; the usual ration was an eighth of a pint, diluted 2:1 with water (3:1 until World War II).
But the Contemplator's History of Grog says:
"By Vernon's time straight rum was commonly issued to sailors aboard ship - and drunkenness and lack of discipline were common problems. On August 21, 1740, Vernon issued an order that rum would thereafter be mixed with water. A quart of water was mixed with a half-pint of rum on deck and in the presence of the Lieutenant of the Watch. Sailors were given two servings a day; one between 10 and 12 AM and the other between 4 and 6 PM. To make it more palatable it was suggested sugar and lime be added. In 1756 the mixture of water and rum became part of the regulations, and the call to "Up Spirits" sounded aboard Royal Navy ships for more than two centuries thereafter..."
The rum kept the sailors happy, it also kept the water potable at sea, also the lime juice was a source of vitamin C, to prevent scurvey
1. Grog didn't have lime in it; that's a modern addition. 2. There wasn't enough rum to keep the water potable for long. Indeed, the main reason for serving grog instead of neat rum was that grog spoils after a couple days, so sailors couldn't save up their rum rations for the week and get out-of-control tanked like they could with straight rum.
I find that having 1 drive live and one as backup works fine as long as the live drive isn't over 95% full, but most of my large content is pretty static--for me, there's a lot of churn (and backup size) in email/source code/etc, not much in music/videos/images, and the majority of the disk space is used by the latter.
Interestingly enough, Microsoft has had people known as "Evangelists" for certain technologies for a long time. I didn't realize other companies were using this job title.
It's a very old usage, Bell Labs had evangelists and I don't think they were the first.
It's important not to open yourself up to liability (eg "He told us about it and we were working on it, then he went ahead and told the public!"), and also important to disclose quickly in case you weren't the first one to discover the problem. Even if it's not fixed, there are often steps administrators can take to avoid being hacked (turn off a service if noncritical, switch to a backup service, limit exposure to internal users, etc).
I'm basically in favor of the approach of letting the vendor know, and at the same time telling them that you're disclosing the problem in 1 week. And then sticking to that timeframe.
Perhaps my terminal optimism is sweetly naive, but I sincerely hope and expect X to go from being "just-about-ok" now to leaving Mac OX smoking dead in the dust in the next few years.
I agree. I think we're reaching a level of critical mass where the X developers actually are seeing limitations with X on the desktop. Historically, many of the X developers were either embedded guys or server/cross-network guys, and things they found to be problems got fixed rapidly.
Personally I've never had problems with X graphics limitations or sluggishness, and I have with Windows and MacOS, but my usages tend to align with the historical X core competencies.
My PDA (a 4-5 year old ipaq) runs an X server in a small amount of RAM, and handles display and stylus input just fine.
My music visualization kiosk runs an X server handling output to a couple large display screens; it does a lot of compositing of various images no problem.
My desktop runs an X server, and often runs development versions of both my PDA interface and my music viz stuff; the PDA stuff is often run remotely from the PDA. It also runs all of my standard desktop apps snappily with no problems (except for sluggishness in Firefox and other application-side problems). The window manager is far more responsive than the Windows desktop I'm stuck with at work (on a machine of the same vintage)--granted I don't use Enlightenment or one of the other heavier-weight solutions.
My servers have many useful X clients. All of them work, and work well, and integrate seamlessly when run cross-display or otherwise(running a seperate desktop in a window hardly counts as seamless integration).
Now are there areas where MacOS and Windows are ahead? Certainly. But I suspect that for a lot of the core X developers, they've put a ton of effort into some of the areas I outlined above because those are the ones they use--Keith Packard, who did XRender and some other stuff, was one of the main ipaq X developers, as was Jim Gettys. Both of them are on board with the X.org developments currently ongoing.
It's not that X is behind. It's that X is ahead in areas where developers have found useful to themselves, and behind in areas that they haven't found useful.
In the absence of any credible international initiative to create a reliable permanent archive format, I'd say print it to acid-free paper
I still have source code (BASIC) I wrote in 1983 or so, along with old IBM Word Processor documents, etc.
It's just not that hard to copy your old files to your new computer when you get one. I mean, CDs may go obsolete, but there will be an interim period when you have a CD-ROM drive and a new whizz-bang drive.
Though it's been 12 years since I actually used removable media to do this, I just mirror directories across the network. The filesystems, storage hardware, and networking protocols have all changed in that period, but the files themselves just keep on coming along with me.
The only important thing to remember is to view your data as a library: any time you change storage formats, you need to copy the WHOLE library over. Luckily that's pretty trivial if you have any sort of organization for your files.
Why would you ever want to eject your remote control? And yet I bet you use the eject button on your DVD player's remote control and not the eject button that's on the front of the player.
The eject button on the remote is equally stupid and is mocked for much the same reasons. But at least it's in addition to the one next to the door, not in place of it.
Certs are good for the following: 1. Getting past HR screening to actually talk to the people on the back-end. This is especially useful if you're going after a first job in the field; you may be using a headhunter who can put you into contact with good, clueful employers but won't do so without seeing the right keywords.
A lot of time these headhunters are truly independent of the companies they send applicants too, so the cert is circumventing a somewhat mindless criterion but it's not sending you to work at a mindless company. 2. Getting raises/promotions in bureaucracies 3. Learning the background knowledge for an area you have no experience in if you can get paid time to take cert courses, etc.
Like all educational items, they're a lot less useful once you're established in the field and have a good resume of work experience and lots of contacts who trust your work.
Just how much music do you need on your portable device?
All of it. Not because I need to listen to it all, but because I don't know what I will/won't use. I frequently find myself out with a friend after a movie saying "there's a cover of that title song that's completely different on Album X"--but I don't know beforehand what's going to pop up.
(In addition, my riocar empeg has the nice advantage of built-in FTP and HTTP servers, so I can just shove whatever other files I want on there as a sneakernet. That's been handy a couple of times. It holds 2 laptop drives, standard drives whatever size you want.)
I bought my riocar empeg because of easy expandability. It's just a StrongArm running Linux, and I still haven't used the 2nd laptop drive bay (I have a single 40GB drive in there now).
So, fine, I'll give you that corporate purpose might not matter in the case of a sale of a for-profit corporation. But barring a sale (which requires shareholder approval among other things), it still is the primary concern of the directors.
No, it isn't. Maximizing shareholder value is the primary concern, and it's illegal for the company to fail to do so. They are _not_ obligated to maximize short-term share prices, but they must act in the interest maximizing value to the shareholders (meaning long-term share values, or end-game share values in case of sales/mergers/etc).
The corporate purpose is a statement of how to achieve that goal--it is illegal to have clauses in it actively working against shareholder value, and if there are such clauses then the company must choose share value over corporate purpose.
However, in practice it would be very unusual for a company to have clauses that had no reasonable interpretation that coordinated with this standard--and in the absence of unreasonable clauses, the courts will typically let the purpose stand.
The _only_ reason that company sale is any different is because there is no need to figure out if a particular course of action is a reasonable one to maximize share prices; you know absolutely from the offers what the share values are. When there's a bright-line test that the courts can look at (such as offer sheets) then are much more willing and able to make the call that a corporate policy has failed the core obligation to maximize share value.
But the general principle that maximizing share value is the preeminent concern stands even in non-sale cases*--it's just that the courts are unlikely to intervene unless a company has unreasonably acted against that goal.
*Things are slightly different in states (e.g. Pennsylvannia) which have constituency clauses, but Delaware, Nevada, and other common states of incorporation are not constituency states.
But the corporate purpose is irrelevant once a sale decision has been made, anyway. The director's duty is to maximize sale value even if it means acting contrary to the corporate purpose, and doing otherwise would be illegal.
The thing is, exactly the opposite is true. The director's duty is to ensure that the corporation does whatever the corporate purpose says it should do, and doing otherwise would be illegal.
You can keep stating that all you want, the courts have ruled otherwise consistently over the last 20 years. See Paramount v. QVC for another statement of the theory.
Unfortunately, in any large commercial project you'll still spend much of your time chasing down memory leaks that other people have put there.
In practice for me, this is simply untrue even in bare C without bounds checking or garbage collection (though there's usually little reason not to use those features in most projects, even in C). Time spent chasing memory violations and leaks is trivial compared to time spent chasing bugs in programming and business logic.
I still stick with higher-level languages for the vast majority of my code, but the reasons aren't greatly related to memory safety--using Python saves me a few percent on debugging time there, but huge amounts of time on development and debugging of real problems vs. Java, C or other lower-level languages.
And if they aren't rare, how would you know? That was my point. A leaky application that allocates 3MB on startup, leaks 1KB an hour, but never gets run for more than 5 days at a time, will probably never get fixed, because it's likely nobody will ever notice there is a problem.
OTOH, if they're never noticed then they really aren't a problem, are they?
I could have a program that runs frequently and exits, without ever bothering to free memory (relying on the OS to do so)--for my application, that could be fine but the startup cost of the available JVM could kill me even though it's more correct wrt memory usage.
You could have a long-running application, where using a good GC (in C or in Java) is paramount.
Pick the right tool for the job.
That's great, but gcc4 is not the same thing as C++
And there are conforming JVMs out there with memory leaks. Indeed, the language never specifies if memory will ever be freed. That's not an argument against using Java, though.
For a lot of projects (the vast majority, in fact) I can rely on being able to pick my development toolchain in order to use the tools that let me get the job done the best.
And it still costs me more to hire programmers who don't generate memory leaks than to use their less-qualified peers and a JVM
Okay, I'm a big proponent of high-level languages (my current project is about 200,000 lines of Python, with maybe 500 lines of C mixed in). But I can't agree with that; in my experience, you'll save money by hiring fewer skilled programmers--the kind for whom on C/C++ projects, memory leaks would be a fairly rare problem that didn't represent a large portion of debugging time. If your programmers are sloppy enough that it'd be a major issue, they're also sloppy enough that real logic bugs are going to explode to the point where time spent debugging easily outweighs the cost-per-hour savings that you're getting.
Obviously it's not 100% true; it's possible to find good, careful entry-level programmers, and you take them whenever you find them. But overall, getting good programmers should be a cost savings.
But yes, even with good programmers you don't want them to spend more effort than required. Limit the use of low-level constructs to where it's required (those few hundred lines of C that we do have are certainly performance-critical). Sometimes that means using hybrid systems (a mix of high- and lower level languages). Sometimes it means using garbage-collected memory allocation in low-level languages. Sometimes it means using low-level libraries from high-level languages. Mostly, it means picking the right tool for the job.
Python has ONE (ok, one and a half if you count Jython) implementation
I'm not disputing your basic point, but there are many Python implementations. Off the top of my head:
CPython (aka "standard" Python)
Jython
Stackless Python
IronPython
PyPy
CPython, Stackless, and Jython are real production implementations.
PyPy is rapidly headed that way (and already self-hosting and passes more than 95% of the Python compliance tests). One of the primary developers is Armin Rigo, who did psyco (the specializing dynamic Python compiler that achieved speedups of up to a factor of 100 for numeric code).
IronPython looks to be abandoned.
I ran both commands many times. It's perfectly repeatable, and the results don't vary based on the run order.
Not even close to true here. Linux 2.6, up-to-date Fedora distro, 1 Ghz P3.That's 2.3 seconds slower for just under 2000 files.
It is widely accepted that the 2 most influential superhero titles from the past 50 years were Watchmen and Dark Knight Returns (from which "Batman Begins" was derived).
Your timeframe or perspective is way off on something here. Or you're limiting yourself to limited long book-format comics or something (and at any rate I wouldn't mention those 2 titles without also mentioning Sandman as well).
I'm pretty sure you don't mean to imply that those 2 are more influential than, say, Spider Man, the Fantastic Four, X-Men, the Hulk, or tons of other widely read mainstream superhero titles from the last 50 years.
Those are the only two areas it was superior, and on picture quality the advantages were purely theoretical (and, indeed, in real life systems VHS often won side-by-side comparisons).
Meanwhile VHS had dramatically better sound quality. Not to mention run time, including being over the critical 2 hour point where most movies fit on 1 tape and you can actually record a movie while you're out without having to be in the house and switch tapes.
Really the only area that Beta ever had a significant edge for more than a couple months was on media longevity, which just wasn't enough to overcome it's clear inferiority in other areas.
Yes and a swastika is a harmless religious symbol and it has been for longer than it has been a symbol of hate. But, it doesn't get used by the general public or big business a whole lot these days because language is a part of culture and so it changes as the people and culture do
Wow, Godwin'd already.
There's a massive diffence here.
We're a word that has a slang meaning that people over 60 probably wouldn't even know, and where it's pretty obvious from context that the program doesn't want to call itself "crippled" or "B&D slave"--it's an image manipulation program.
It's exactly analagous to "spic and span", which is a fine name for a product even though you won't see many people under 40 using the phrase, nor the word spic in any non-derogatory context.
Number one, while you can point to some obscure and -to be blunt- bizarre definition of the word, people who are decision makers are not going to think of the word you mean; they are going to think of the meaning which the word "GIMP" currently has in popular vocabulary
Thankfully people tend to be more rational than you, and cooler heads have historically prevailed (e.g. in the "niggardly" case I mentioned).
Especially when the definition I'm using is not only not bizarre, but was the _only_ definition for the generation or two before ours; if you ask my mom, let alone my grandmother, she'd take it to mean that (or as a highly specialized embroidery term). And she's not 60 yet.
And even more especially when the context of the program makes it highly likely that this definition was meant; it makes no sense to call an image manipulation program "handicapped". It makes plenty to call it "beautiful".
Secondly, the target audience which I'm referring to are people who already endure the stigma of either mental illness, chemical dependencies or physical challenges
Nice. Go for nonexistant rationales and bogus sympathy points. When has gimp ever applied to the mentally ill or chemically dependent? The negative slang connotations are for people who limp or B&D subs.
But don't you mean" Ring around the rosies, Pocket full of posies, Ashes,Ashes, we all fall down!
http://www.snopes.com/language/literary/rosie.htm
It's worse than that. While I'm usually not a fan of changing things around for the sake of being PC, calling a program "The Gimp" is downright offensive.
You sound like the people calling for firing the official in DC who used the word "niggardly".
Do you also object to the phrases "spic and span" and "a chink in the armor"?
"gimp" means beautiful or attractive, and has meant that for far longer than it's been used as slang for the handicapped. Presumably the makers of an image manipulation program had that meaning in mind.
How do you figure limes a modern addition. Ships carried limes, hence the nickname for british sailors, limeys.
That doesn't mean it was in part of the grog, though. You can add lime to grog, and that's been done some, most commonly in modern times.
Traditional grog is just rum and water, though apparently lime was suggested as an addition earlier on than I thought:
As wikipedia says,
"Grog is an alcoholic beverage made with water and rum. It was introduced into the Royal Navy by British Vice Admiral Edward Vernon on 21 August 1740. Modern versions of the drink sometimes include lemon juice, lime juice, cinnamon or sugar to improve the taste....Until the grog ration was discontinued in 1970, Navy rum was 95.5 proof, or 54.6 per cent alcohol; the usual ration was an eighth of a pint, diluted 2:1 with water (3:1 until World War II).
But the Contemplator's History of Grog says:
"By Vernon's time straight rum was commonly issued to sailors aboard ship - and drunkenness and lack of discipline were common problems. On August 21, 1740, Vernon issued an order that rum would thereafter be mixed with water. A quart of water was mixed with a half-pint of rum on deck and in the presence of the Lieutenant of the Watch. Sailors were given two servings a day; one between 10 and 12 AM and the other between 4 and 6 PM. To make it more palatable it was suggested sugar and lime be added. In 1756 the mixture of water and rum became part of the regulations, and the call to "Up Spirits" sounded aboard Royal Navy ships for more than two centuries thereafter..."
The rum kept the sailors happy, it also kept the water potable at sea, also the lime juice was a source of vitamin C, to prevent scurvey
1. Grog didn't have lime in it; that's a modern addition.
2. There wasn't enough rum to keep the water potable for long. Indeed, the main reason for serving grog instead of neat rum was that grog spoils after a couple days, so sailors couldn't save up their rum rations for the week and get out-of-control tanked like they could with straight rum.
http://www.mikerubel.org/computers/rsync_snapshots /
for one decent incremental backup solution.
I find that having 1 drive live and one as backup works fine as long as the live drive isn't over 95% full, but most of my large content is pretty static--for me, there's a lot of churn (and backup size) in email/source code/etc, not much in music/videos/images, and the majority of the disk space is used by the latter.
It's a very old usage, Bell Labs had evangelists and I don't think they were the first.
It's important not to open yourself up to liability (eg "He told us about it and we were working on it, then he went ahead and told the public!"), and also important to disclose quickly in case you weren't the first one to discover the problem. Even if it's not fixed, there are often steps administrators can take to avoid being hacked (turn off a service if noncritical, switch to a backup service, limit exposure to internal users, etc).
I'm basically in favor of the approach of letting the vendor know, and at the same time telling them that you're disclosing the problem in 1 week. And then sticking to that timeframe.
Perhaps my terminal optimism is sweetly naive, but I sincerely hope and expect X to go from being "just-about-ok" now to leaving Mac OX smoking dead in the dust in the next few years.
I agree. I think we're reaching a level of critical mass where the X developers actually are seeing limitations with X on the desktop. Historically, many of the X developers were either embedded guys or server/cross-network guys, and things they found to be problems got fixed rapidly.
Personally I've never had problems with X graphics limitations or sluggishness, and I have with Windows and MacOS, but my usages tend to align with the historical X core competencies.
My PDA (a 4-5 year old ipaq) runs an X server in a small amount of RAM, and handles display and stylus input just fine.
My music visualization kiosk runs an X server handling output to a couple large display screens; it does a lot of compositing of various images no problem.
My desktop runs an X server, and often runs development versions of both my PDA interface and my music viz stuff; the PDA stuff is often run remotely from the PDA. It also runs all of my standard desktop apps snappily with no problems (except for sluggishness in Firefox and other application-side problems). The window manager is far more responsive than the Windows desktop I'm stuck with at work (on a machine of the same vintage)--granted I don't use Enlightenment or one of the other heavier-weight solutions.
My servers have many useful X clients. All of them work, and work well, and integrate seamlessly when run cross-display or otherwise(running a seperate desktop in a window hardly counts as seamless integration).
Now are there areas where MacOS and Windows are ahead? Certainly. But I suspect that for a lot of the core X developers, they've put a ton of effort into some of the areas I outlined above because those are the ones they use--Keith Packard, who did XRender and some other stuff, was one of the main ipaq X developers, as was Jim Gettys. Both of them are on board with the X.org developments currently ongoing.
It's not that X is behind. It's that X is ahead in areas where developers have found useful to themselves, and behind in areas that they haven't found useful.
In the absence of any credible international initiative to create a reliable permanent archive format, I'd say print it to acid-free paper
I still have source code (BASIC) I wrote in 1983 or so, along with old IBM Word Processor documents, etc.
It's just not that hard to copy your old files to your new computer when you get one. I mean, CDs may go obsolete, but there will be an interim period when you have a CD-ROM drive and a new whizz-bang drive.
Though it's been 12 years since I actually used removable media to do this, I just mirror directories across the network. The filesystems, storage hardware, and networking protocols have all changed in that period, but the files themselves just keep on coming along with me.
The only important thing to remember is to view your data as a library: any time you change storage formats, you need to copy the WHOLE library over. Luckily that's pretty trivial if you have any sort of organization for your files.
Why would you ever want to eject your remote control? And yet I bet you use the eject button on your DVD player's remote control and not the eject button that's on the front of the player.
The eject button on the remote is equally stupid and is mocked for much the same reasons. But at least it's in addition to the one next to the door, not in place of it.
Certs are good for the following:
1. Getting past HR screening to actually talk to the people on the back-end. This is especially useful if you're going after a first job in the field; you may be using a headhunter who can put you into contact with good, clueful employers but won't do so without seeing the right keywords.
A lot of time these headhunters are truly independent of the companies they send applicants too, so the cert is circumventing a somewhat mindless criterion but it's not sending you to work at a mindless company.
2. Getting raises/promotions in bureaucracies
3. Learning the background knowledge for an area you have no experience in if you can get paid time to take cert courses, etc.
Like all educational items, they're a lot less useful once you're established in the field and have a good resume of work experience and lots of contacts who trust your work.
Just how much music do you need on your portable device?
All of it. Not because I need to listen to it all, but because I don't know what I will/won't use. I frequently find myself out with a friend after a movie saying "there's a cover of that title song that's completely different on Album X"--but I don't know beforehand what's going to pop up.
(In addition, my riocar empeg has the nice advantage of built-in FTP and HTTP servers, so I can just shove whatever other files I want on there as a sneakernet. That's been handy a couple of times. It holds 2 laptop drives, standard drives whatever size you want.)
I bought my riocar empeg because of easy expandability. It's just a StrongArm running Linux, and I still haven't used the 2nd laptop drive bay (I have a single 40GB drive in there now).
So, fine, I'll give you that corporate purpose might not matter in the case of a sale of a for-profit corporation. But barring a sale (which requires shareholder approval among other things), it still is the primary concern of the directors.
No, it isn't. Maximizing shareholder value is the primary concern, and it's illegal for the company to fail to do so. They are _not_ obligated to maximize short-term share prices, but they must act in the interest maximizing value to the shareholders (meaning long-term share values, or end-game share values in case of sales/mergers/etc).
The corporate purpose is a statement of how to achieve that goal--it is illegal to have clauses in it actively working against shareholder value, and if there are such clauses then the company must choose share value over corporate purpose.
However, in practice it would be very unusual for a company to have clauses that had no reasonable interpretation that coordinated with this standard--and in the absence of unreasonable clauses, the courts will typically let the purpose stand.
The _only_ reason that company sale is any different is because there is no need to figure out if a particular course of action is a reasonable one to maximize share prices; you know absolutely from the offers what the share values are. When there's a bright-line test that the courts can look at (such as offer sheets) then are much more willing and able to make the call that a corporate policy has failed the core obligation to maximize share value.
But the general principle that maximizing share value is the preeminent concern stands even in non-sale cases*--it's just that the courts are unlikely to intervene unless a company has unreasonably acted against that goal.
*Things are slightly different in states (e.g. Pennsylvannia) which have constituency clauses, but Delaware, Nevada, and other common states of incorporation are not constituency states.
The thing is, exactly the opposite is true. The director's duty is to ensure that the corporation does whatever the corporate purpose says it should do, and doing otherwise would be illegal.
You can keep stating that all you want, the courts have ruled otherwise consistently over the last 20 years. See Paramount v. QVC for another statement of the theory.