It's not "steal ideas", it's "copy ideas". And, as far as I am concerned, it is a Good Thing. I have also been told that patents were invented specifically to promote publishing ideas so that they might be copied. Skimming the article, I didn't see any place where someone is asking the USPTO to "help one small company steal ideas from others". In short, I don't know what you're talking about.
What I do know is that many small companies (as which I don't think Red Hat qualifies, by the way) fear software patents. Not because patents prevent them from "stealing ideas" or even copying ideas, but because, as the article puts it: "there are hundreds of thousands of software patents, with tens of thousand more granted each year. Many are so vague that it's impossible to ensure that a new piece of code doesn't infringe on one of them, somehow. This in turn places a big fat bullseye on the back of all software developers, as infringement lawsuits cost millions to defend, let alone actual damages or injunctions." If that sounds like software patents are a great tool for wealthy companies to discourage, slow down, halt, or even destroy competitors or would-be competitors, you've got the right idea.
``So you are advocating people not being compensated enough for their efforts?''
I don't think that's what the parent was saying. In fact, he said that more compensation is better.
This is not directed at you personally (your post just happened to be the drop in the bucket), but I think the debate about copyright would be more productive if we stopped putting words in each other's mouths and stopped the hyperboles and exaggerations.
Unauthorized copying is NOT piracy and is NOT theft. Saying this is NOT the same as advocating unauthorized copying. Criticizing current copyright law and the way it is enforced is NOT an outright rejection of the concept of copyright. People are doing such criticizing are NOT necessarily in favor of enforcement of the GPL, and even if they are, that is NOT necessarily inconsistent. On the flip side, people who are in favor of copyright do NOT necessarily approve of the current laws and the way they are enforced.
Not all of the above applies to your post, but I see a lot of posts that (accidentally or purposely) jump to false conclusions in every discussion about copyright. In fact, I see more fallacies and name-calling than productive discussion. At least as far as I am concerned, that makes whatever valuable idea you might have had get lost in shouting matches or "that wasn't what I said" conversations that aren't about the main point. Do us all a favor: save yourself the keystrokes and everybody the time, and concentrate on the point you are trying to make and what someone _actually_ said.
``The problem is that the penalties are not severe enough to stop the behavior.''
I don't think that penalties do very much to discourage people from doing things. The reason people text while driving isn't that the potential consequences aren't severe enough, but rather that they think that it won't go wrong. "Sure, people get into accidents while texting. And if the police spot it, you'll get a fine. But I'll just do this quick text; it'll only take a couple of seconds and I'll keep half an eye out for the road..."
In my case, watching videos was very instructive. I watched some videos about alcohol and driving. They had interviews with people, kept track of how much they drank, and then had them drive, like they were used to do... only this time, it would be on a track or in a simulator, and they would comment on their overall performance, as well as cause unexpected situations and see how people reacted. All the people who were interviewed seemed like pretty normal people with very normal attitudes towards drinking and driving. Certainly they weren't the kind of idiots who would get behind the wheel so drunk you'd be surprised they even managed to drive at all, and then smash into something at twice the speed limit. They knew they had their limit, they knew drinking and driving was against the law, and they would go slow on the booze and drive carefully, like they had done many times before. They felt and seemed sensible and responsible. Yet almost all of them crashed when the unexpected situation happened. They weren't major, families-and-innocent-children-killing accidents, but they were accidents, nonetheless. There goes the shiny paint job on your new car, and your no-claim bonus on your insurance, and it will be recorded that you were involved in an accident after drinking alcohol.
I think that, every once in a while, we need to be reminded that driving is serious business and involves serious danger. No matter how comfy your car is, it can still go horribly wrong. It doesn't even have to be your fault. But staying alert is necessary to prevent major damage and/or injuries. Don't reduce your and your fellow road user's chances by piling on impediments until you can barely keep on the road.
Actually, the first part of your post is correct. When you run a jewelry store, you take a (hopefully) calculated risk that it will be robbed. You can hire security and/or take out insurance to protect against losses from robbery, but this eats into your profits. You can make it harder for people to get into or out of your store, and this will make the store harder to rob. It will also make it harder for legitimate customers, and they might decide to do business with some other store, instead. Also, some people will not buy your jewelry.
To a certain extent, this parallels the situation with software and piracy. There is one major difference, and that is that software has zero marginal cost, whereas jewelry doesn't. If you lose a copy of your software, you can replace it with another copy at essentially zero cost (you do have working backups, right?). If you lose a piece of jewelry, replacing it will cost you. This makes a world of difference, but many things are still the same: when you run a software company, you will (hopefully) take into account that your software will be used without your authorization. You can erect barriers to unauthorized use or shift the risk by getting paid for development rather than per copy sold, but this will eat into your profits. You can do things like making the software get authorization from the server before working, and this will make unauthorized use harder. It will also cause trouble for legitimate customers, and they might decide to do business with some other store, instead. Also, some people will not buy your software.
Before someone misinterprets my words: I do not condone software piracy, nor robbing jewelry stores. I am only saying that, when you run a jewelry store or a software company, you should be aware of the risks, and decide how you will deal with them.
``You can get 32-bit microcontrollers for about $20. If you want to run Linux on those you do need the ROM and RAM of course.''
Right. Being able to run Linux would be a nice bonus, but isn't really what I'm thinking about. What I have in mind is more like a "build your own C64" kind of project, except that it doesn't need to be a C64 and doesn't have to have a case. Just the board will be fine, but I do want to be able to be able to use it like a desktop computer, so keyboard (preferably USB or PS/2) and video out (something I can hook up to a PC monitor or TV, preferably VGA), and, if at all feasible, Ethernet.
``You could certainly buy a good 32-bit microcontroller for under $20, but to make it work you would need... <lots of stuff and skills>
That's why the manufacturers sell dev-boards that work out of the box.''
Right. I'm not against having to spend some money to get started, but, after I get the first one working, I would like to have the cost of an additional unit under $20.
``My advice is to get started with Arduino. It won't do the stuff that you want to do, but you will learn lots of useful stuff and hopefuly have fun.''
That has the sound of good advice, and I think I should take it. Just because it isn't the board I'm looking for doesn't mean it won't be great fun and a great learning experience. Thanks!
Interesting that this story would pop up now. I have recently been thinking about getting into tinkering with microcontrollers. I've always had deep respect for what people used to be able to do with, say, a 6502 and a few kB of code. I think it would be great fun to try my hand at that. However, I have some special requirements that seem to be difficult to meet:
First of all, I would like to interface with hardware I already have. Particularly, video, input, and Ethernet. So it would be really great if I could get a board with VGA out, USB host or on-the-go, and Ethernet, although other combinations are possible (e.g. Ethernet not on the board, but via a USB device).
Secondly, I have virtually no experience with electronics, so I need something that is really easy to get started with. Of course, I am doing this in part because I want to learn, so if it's better to do a few simpler projects first to get the needed skills, I am open to that, too.
Thirdly, I want the device that will be running things to be _cheap_. I am thinking max 20 USD. That's for being able to run some simple software (doesn't need a lot of RAM or ROM, as long as more storage can be added) with video output, keyboard input, and network access. If I need some extra expenses to bootstrap things (e.g. some extra hardware to write the ROM), that's ok, but I want to basically be able to tell my friends "for under 20 dollars, you can get one of these computers and run all this great software, too".
Within these constraints, I would like to get the most bang for the buck that I can get. It doesn't have to be an 6502. If I can get an 68k or an ARM or an FPGA (given enough gates, of course), that would be grand.
I am really excited about the Beagle Board, but that's far outside my budget. I've looked at DigiKey's catalog, and there are many chips there that look promising, but frankly, I'm drowning in information, choices, and unfamiliar terminology for the moment. Perhaps one of the Arduino knock-offs will fit the bill. Uzebox looks really exciting, too. I feel that what I have in mind is out there somewhere, I just haven't found it yet. If someone could help me on my way, I would greatly appreciate that.
I'm from the Netherlands, where we have a parliamentary democracy with multiple parties and proportional representation. I haven't heard anyone propose a one-party system, but I've certainly heard proposals for a two-party system. Why people think that is better than what we have now, I don't know. Still, I wouldn't be surprised if this idea had some support in Sweden, as well.
``Nazis? They are actually more Israel friendly than most established parties, and one of their MP:s is jewish.
While their ideological platform is built mainly on restricting immigration, that hardly qualifies as nazism.''
I guess that very much depends on the definition of nazism one uses. I don't personally think it matters much if the party is antisemitic or anti-some-other-ethnic/cultural/whatever-group.
In the end, though, I don't think it matters what definition of nazism one uses and whether or not a political party fits that definition. What matters is what the party actually proposes, and how beneficial or harmful that is. It's easy to brand a party as nazist or fascist or communist or even left or right, but that isn't very helpful. We need to evaluate and address ideas on their merits, and not based on what labels we can attach to them and how people feel about those labels.
``Symbian's origins are nearly 20 years old now.''
Linux is nearly 20 years old, too. Arguably, its origin is in Unix, which is about 40 years old. Out go the Linux-based Android, Maemo and Meego. Mac OS X and iPhone OS trace their origin back to NEXTSTEP from 1989. Over 20 years old, so out they go. Palm's webOS is, depending on your point of view, based either on Linux or on World Wide Web technology - both of which are about 20 years old, so that one is obsolete, too. That leaves Blackberry OS and Windows Mobile, both of which originate from 1996.
Or perhaps "old" doesn't mean "not good enough" after all.
Personally, I think that the fact that, after 40 years, we have systems implementing the Unix APIs on everything from embedded systems to supercomputers, and from specialty devices that virtually nobody has ever heard of to consumer devices like desktop computers, phones, and televisions, means that those APIs are good and one could do worse than continuing to use them.
I just got a Nokia N900, which has Maemo, and I'm very happy with it. Finally, a phone I can code for using my extensive experience with Unix programming.
I don't know. I've always found Symbian quite impressive. I also prefer having a choice in the languages I can use for development, which neither iPhone OS nor Android seem to want to give me. Maemo has been a breath of fresh air: no hoops to jump through, and I can use the *nix development knowledge I already have. But between Maemo and Symbian, I'm not sure which is actually the better system for phones. While modern phones aren't really limited in computing resources by my reckoning, there is still something to be said for a real-time, microkernel OS engineered for devices with limited resources.
``Mr. Henderson is an idiot, no offense to the intellectually challenged out there.''
I'm not sure who is the real fool here. Is it the man who spouts the lies, or the people who fall for the rhetoric?
We have a similar situation in the Netherlands: we pay a levy on blank media, which is used to compensate rights holders for the copying we are allowed to do. Downloading of music and video is included among the things you are allowed to do. Yet, our copyright watchdog, BREIN, has issued statements and publications where they have called such downloading illegal. Does that make them idiots? Perhaps, but almost everybody I have asked actually believes that downloading music and video from the Internet is illegal. People will even say they have "illegally downloaded" something if they downloaded it from the Internet. I think the real fools are all those people who believe that what they do or want to do is illegal, even though it isn't. Also, I am really, really pissed off at BREIN for propagating these falsehoods.
``Why should you have to know some arcane, difficult to remember internal routing ID of a phone subscriber just to call them? It's like, instead of having DNS, you have to put in every IP address manually for any server/website you wish to visit.''
Incidentally, this is one of my favorite arguments against the idea that computer programs have to be simple to operate before they will gain widespread acceptance. Given the widespread acceptance of dial telephones back in the day, it's obvious that people will put up with quite a bit of complexity and technicalities.
``How does the machine know you're a man? That's scary.''
That's why I don't use self checkout. Not that the machines here know I'm a man, but they do require the use of a debit card. I prefer to pay cash, because there's more than enough tracing of my whereabouts and actions going on as it is.
No, I'm quite serious. But I might have led a few people astray by not stating my point more clearly.
Let me start by saying that I am *not* claiming Windows is more secure than your favorite Linux-based OS. Nor am I claiming it's the other way around. I believe the relative security of these systems is undeterminable. If anyone does come up with a good definition of relative security, and a test that yields meaningful scores and rules out bias, I'm all ears. For now, I am just going to say that I don't know which of two complex systems is more secure.
Now, since I believe it is impossible to determine whether or not Windows is more secure or less secure than whatever OS you would like to compare it to, I think words like "the winslow assholes that don't understand shit about security and somehow think that this means that GNU/Linux is insecure and as bad as their shitty system" are uncalled for. Especially considering that Microsoft has been hard at work to improve the security of Windows, while popular Linux distros are making absolutely no haste with including security solutions that have already been developed. That is the point I was trying to make.
Maybe it's fun to point and laugh at the poor Windows-using sods and ridicule the poor security track record of their system, but, without a good security culture on our side, I'm afraid we might end up looking mighty foolish when the exploits start coming our way. And frankly, if our security culture consists of pointing and laughing and ignoring security solutions that _even Windows_ has adopted, I think we're in very bad shape. I don't care if we're doing better than someone else, I care that we aren't doing as well as I feel we should.
``assholes that don't understand shit about security and somehow think that this means that GNU/Linux is insecure''
It _is_ insecure. There are plenty of vulnerabilities being found and reported, and there are several things that many distributions could do to improve security. To name a few examples, many distros ship with stack smashing protection and address space layout randomization disabled, and allow pages to be writable and executable by default. Also, usually, many operations are reserved to the root user, and the root user can do everything which means that more programs than necessary run as root, and root has more power than necessary. These are not the properties of secure systems; it's not even close to state of the art security.
``as bad as their shitty system''
I am not sure that such derogatory language makes the world a better place. I'm not even sure comparing the security of Linux with that of Windows is useful. If you do compare them, you will find that, at the very least, Microsoft has improved the security picture on Windows a great deal. In some cases, such as running with reduced privileges by default and only elevating privileges for programs that need it, they have merely caught up with Linux systems. But since Windows Vista, Windows ships with address space layout randomization and non-executable pages (Microsoft calls it DEP) enabled for many libraries and executables. Newer versions of Internet Explorer (certainly 8, but also newer versions of 7 if I'm not mistaken) are among those applications, and also include a "protected mode" where most of the program can't do very much at all, and all potentially harmful operations are concentrated in a small, trusted kernel running in a separate process. These are the sort of security measures taken by a vendor who takes security seriously. On the *nix side, you will find this kind of stuff in OpenBSD and a few specialty hardened Linux distros, and that's about it. Ubuntu has AppArmor, but hardly uses it.
If you look at vulnerabilities, like the privilege escalation vulnerability in the story, I would not be surprised to find that more of these are being found and reported in Linux than in Windows these days. What that means about the relative security of Linux and Windows, I don't know. But clearly, serious security flaws are being found in Linux. As far as I am concerned, Linux's security track record is far from stellar, and there certainly isn't a strong security culture that will make this better in the near future. Easily applied security measures (see first part of my post) are being left on the table, and we have far too much code running in all-powerful kernel mode for me to be comfortable with (just one data point: I have over 100 MB of kernel modules on my system, and on the order of tens of megabytes in the running kernel image).
Considering all the above, I would certainly refrain from calling names or making derogatory remarks against users of non-Linux systems. I don't profess to know which system is the most secure, all things considered, but I'm a firm believer in not needlessly stepping on people's toes.
I am sorry, I completely neglected to address your point about dependencies. And it's a good point, because dependency handling makes all the difference between software that is easy to install and software that is a royal pain to install.
To answer your question: I don't usually deal with dependencies. Generally, I don't install software until there is a package available for my Linux distribution. Then, I let the package manager deal with dependency resolution. If I really want to install some software that isn't available as a package for my distro and need to install the necessary dependencies by hand, I usually don't have a lot of trouble figuring out what I need from the error message, installing a package named similarly to what is mentioned in the error message (e.g. if it can't find lib(name).so.(someversion) I probably need to install lib(name)(something)). If that doesn't help, I search the web for answers, and if I don't find them quickly enough, I give up. Still, I want to emphasize that this rarely happens to me: I have everything I _need_ on my computer, and few things are worth the hassle of installing non-packaged software to me, knowing that if I wait a while, a package will likely be available.
In a few cases, I actually end up creating a distro package myself. I used to do this a lot for OpenBSD, and I've made a few packages for Debian and Ubuntu, as well. The advantage I get out of that is that when I'm done with the software, I can use the package manager to cleanly remove it.
Honestly, I don't really believe in large scale migrations of existing Windows infrastructure to Linux. Large migrations are hard to do at the best of times, always cause a lot of resistance and frustration, and take a long time before they start paying off, if that even happens at all.
Migrations from some Unix to Linux are a bit easier because you usually get similar and often better software than what you had.
Migrating from the Microsoft stack of Windows, Exchange Server, Active Directory, Office, and, ceiling cat forbid, SharePoint or BizTalk is a different story: I would go as far as to say that exactly none of these have equivalents on the Linux side that are compatible but better, so your users will simply not be able to do things the way they were used to doing them. This is where you hit your biggest resistance: they will have to re-learn things, which will take time, effort and money. People will get upset, they will hate the new system, and they will complain about it, loudly, and to anyone who will listen. And for good reason: they had a work flow that worked, and then management came and pulled the rug from under them and they had to re-learn things for no good reason. Think of all the stories on Slashdot, where supposedly computer literate people who aren't afraid of a little tinkering complain about Linux not doing this or that as well as Windows, or not in the same way. Now imagine what happens if you _force_ a few thousand users who have no affinity with computers, don't want to tinker with computers, and actually rather wouldn't work with computers at all to make the switch. That's what you're up against.
Now, for a different scenario, consider an organization that is just getting started. There are only a few people there, and the whole IT infrastructure still has to be set up. This, I think, is a scenario where free software can be very successful. It's also an interesting scenario to think about. Suppose you wanted to set up the IT infrastructure for at least a few hundred users, most of whom would have jobs where they have to use computers, without necessarily having any affinity for computers themselves. Assume you would need some common infrastructure: e-mail for everyone, calendaring would be very useful, and at least some desks will have computers that any among a group of people will have to be able to log into and get to work with (i.e. they won't have their own desk and their own computer). How would you do it?
For those who prefer a quick human translation over a state-of-the-art Google Translate result, here is what I gleaned from the article. German is not my first language; corrections and other improvements welcome.
Short summary:
- The project wasn't going well from the beginning
- The project definitely failed, but you can't entirely blame that on Linux
- Lack of organizational talent definitely played a role in the failure
- In a survey, about 80% of employees stated they were satisfied with the new environment, 10% complained about issues they thought would be resolved over time, and only 10% were really dissatisfied
- The media played a large role in the perception of the project by eagerly latching on to every bit of bad news about the project
Partial translation, paragraph by paragraph:
Nine years after the decision to migrate the computers of the Solothurn kanton to Linux, a radical reversal has come today: all desktops will be converted to Windows 7. Did Linux fail?
The project wasn't a great success from the beginning; those who followed the media must have gotten the impression that it was a sequence of failures and bad luck.
Problems during the migration, software than wasn't ready yet, angry employees who set up a homepage to vent their frustrations and who couldn't get any work done because of Linux - all of this suggests that tax money was being spent on a project doomed to fail. And it has failed now. But to blame it all on Linux would be short-sighted. When you look further, you will see that many factors were responsible for the failure.
The decision to convert to Linux came in 2001. The goal was to have completed the conversion by 2007. However, that goal was unattainable, because some invitations to bid were only sent out in 2006. The choice for the Scalix web interface wasn't a good one: even in June, the webmail interface lacked a task list and some of the comforts of native e-mail clients.
Many special applications could not easily be replaced by Linux solutions. This was compounded by problems with the Konsul database employed by the kanton of Solothurn for editing council decisions: the data file of this Windows software was not so easy to migrate. Project Ambassador was meant to allow interoperability with OpenOffice.org et al, but was postponed until end 2010 because of performance problems. As a result, none of the council members worked with Linux systems.
An internal inquiry among employees showed that about 80% of them were satisfied with the new environment. Ten percent complained about "childhood diseases" of the software, and only 10% were really unsatisfied. But that is still 100 employees, and they were a very vocal minority.
The Swiss media seized every opportunity to bring news of even the most insignificant frustrations in the kanton: a temporary printer problem that was solved quickly became "lasting printing problems". Quotes from employees who claimed to work more productively at home than at the office were gladly printed.
If there wasn't any bad news, the media simply manufactured some. When the state attorney's office held a conference for attorneys in 2009, they neglected to prepare a Windows system for displaying the PowerPoint presentations. The kanton police, who, according to the Berner Zeitung had "successfully defended itself against Linux" helped out and saved the attorney's office from embarrassment. Of course, there are many things you can blame on Linux, but lack of organizational talent of the conference organizer isn't one of those.
``When will they use the common installer system?''
Which common installer system?
The way I see it, software release and packaging works like this:
1. Developers release the software, preferably in a format that is as OS-neutral as possible
2. Distributors create packages for their distribution
Considering that, Adobe have done the right thing here:.tar.gz is about as universal as it gets when releasing software for Linux. Now it's up to Debian to create Debian packages, Fedora to create packages for Fedora, and so on.
In any case, I much prefer a.tar.gz over a developer-made package for a specific distro (unless it happens to be for the distro I use, and have the quality I expect from my distro), or even distro-agnostic packaging formats like 0install. In my experience, both of these actually cause me more work than the plain.tar.gz, and, by causing more work and hassle, actually delay the availability of a proper distro package.
It's not "steal ideas", it's "copy ideas". And, as far as I am concerned, it is a Good Thing. I have also been told that patents were invented specifically to promote publishing ideas so that they might be copied. Skimming the article, I didn't see any place where someone is asking the USPTO to "help one small company steal ideas from others". In short, I don't know what you're talking about.
What I do know is that many small companies (as which I don't think Red Hat qualifies, by the way) fear software patents. Not because patents prevent them from "stealing ideas" or even copying ideas, but because, as the article puts it: "there are hundreds of thousands of software patents, with tens of thousand more granted each year. Many are so vague that it's impossible to ensure that a new piece of code doesn't infringe on one of them, somehow. This in turn places a big fat bullseye on the back of all software developers, as infringement lawsuits cost millions to defend, let alone actual damages or injunctions." If that sounds like software patents are a great tool for wealthy companies to discourage, slow down, halt, or even destroy competitors or would-be competitors, you've got the right idea.
``So you are advocating people not being compensated enough for their efforts?''
I don't think that's what the parent was saying. In fact, he said that more compensation is better.
This is not directed at you personally (your post just happened to be the drop in the bucket), but I think the debate about copyright would be more productive if we stopped putting words in each other's mouths and stopped the hyperboles and exaggerations.
Unauthorized copying is NOT piracy and is NOT theft. Saying this is NOT the same as advocating unauthorized copying. Criticizing current copyright law and the way it is enforced is NOT an outright rejection of the concept of copyright. People are doing such criticizing are NOT necessarily in favor of enforcement of the GPL, and even if they are, that is NOT necessarily inconsistent. On the flip side, people who are in favor of copyright do NOT necessarily approve of the current laws and the way they are enforced.
Not all of the above applies to your post, but I see a lot of posts that (accidentally or purposely) jump to false conclusions in every discussion about copyright. In fact, I see more fallacies and name-calling than productive discussion. At least as far as I am concerned, that makes whatever valuable idea you might have had get lost in shouting matches or "that wasn't what I said" conversations that aren't about the main point. Do us all a favor: save yourself the keystrokes and everybody the time, and concentrate on the point you are trying to make and what someone _actually_ said.
``The problem is that the penalties are not severe enough to stop the behavior.''
I don't think that penalties do very much to discourage people from doing things. The reason people text while driving isn't that the potential consequences aren't severe enough, but rather that they think that it won't go wrong. "Sure, people get into accidents while texting. And if the police spot it, you'll get a fine. But I'll just do this quick text; it'll only take a couple of seconds and I'll keep half an eye out for the road ..."
In my case, watching videos was very instructive. I watched some videos about alcohol and driving. They had interviews with people, kept track of how much they drank, and then had them drive, like they were used to do ... only this time, it would be on a track or in a simulator, and they would comment on their overall performance, as well as cause unexpected situations and see how people reacted. All the people who were interviewed seemed like pretty normal people with very normal attitudes towards drinking and driving. Certainly they weren't the kind of idiots who would get behind the wheel so drunk you'd be surprised they even managed to drive at all, and then smash into something at twice the speed limit. They knew they had their limit, they knew drinking and driving was against the law, and they would go slow on the booze and drive carefully, like they had done many times before. They felt and seemed sensible and responsible. Yet almost all of them crashed when the unexpected situation happened. They weren't major, families-and-innocent-children-killing accidents, but they were accidents, nonetheless. There goes the shiny paint job on your new car, and your no-claim bonus on your insurance, and it will be recorded that you were involved in an accident after drinking alcohol.
I think that, every once in a while, we need to be reminded that driving is serious business and involves serious danger. No matter how comfy your car is, it can still go horribly wrong. It doesn't even have to be your fault. But staying alert is necessary to prevent major damage and/or injuries. Don't reduce your and your fellow road user's chances by piling on impediments until you can barely keep on the road.
Actually, the first part of your post is correct. When you run a jewelry store, you take a (hopefully) calculated risk that it will be robbed. You can hire security and/or take out insurance to protect against losses from robbery, but this eats into your profits. You can make it harder for people to get into or out of your store, and this will make the store harder to rob. It will also make it harder for legitimate customers, and they might decide to do business with some other store, instead. Also, some people will not buy your jewelry.
To a certain extent, this parallels the situation with software and piracy. There is one major difference, and that is that software has zero marginal cost, whereas jewelry doesn't. If you lose a copy of your software, you can replace it with another copy at essentially zero cost (you do have working backups, right?). If you lose a piece of jewelry, replacing it will cost you. This makes a world of difference, but many things are still the same: when you run a software company, you will (hopefully) take into account that your software will be used without your authorization. You can erect barriers to unauthorized use or shift the risk by getting paid for development rather than per copy sold, but this will eat into your profits. You can do things like making the software get authorization from the server before working, and this will make unauthorized use harder. It will also cause trouble for legitimate customers, and they might decide to do business with some other store, instead. Also, some people will not buy your software.
Before someone misinterprets my words: I do not condone software piracy, nor robbing jewelry stores. I am only saying that, when you run a jewelry store or a software company, you should be aware of the risks, and decide how you will deal with them.
``You can get 32-bit microcontrollers for about $20. If you want to run Linux on those you do need the ROM and RAM of course.''
Right. Being able to run Linux would be a nice bonus, but isn't really what I'm thinking about. What I have in mind is more like a "build your own C64" kind of project, except that it doesn't need to be a C64 and doesn't have to have a case. Just the board will be fine, but I do want to be able to be able to use it like a desktop computer, so keyboard (preferably USB or PS/2) and video out (something I can hook up to a PC monitor or TV, preferably VGA), and, if at all feasible, Ethernet.
``You could certainly buy a good 32-bit microcontroller for under $20, but to make it work you would need ... <lots of stuff and skills>
That's why the manufacturers sell dev-boards that work out of the box.''
Right. I'm not against having to spend some money to get started, but, after I get the first one working, I would like to have the cost of an additional unit under $20.
``My advice is to get started with Arduino. It won't do the stuff that you want to do, but you will learn lots of useful stuff and hopefuly have fun.''
That has the sound of good advice, and I think I should take it. Just because it isn't the board I'm looking for doesn't mean it won't be great fun and a great learning experience. Thanks!
Thanks! The Ardweeny looks really interesting.
Interesting that this story would pop up now. I have recently been thinking about getting into tinkering with microcontrollers. I've always had deep respect for what people used to be able to do with, say, a 6502 and a few kB of code. I think it would be great fun to try my hand at that. However, I have some special requirements that seem to be difficult to meet:
First of all, I would like to interface with hardware I already have. Particularly, video, input, and Ethernet. So it would be really great if I could get a board with VGA out, USB host or on-the-go, and Ethernet, although other combinations are possible (e.g. Ethernet not on the board, but via a USB device).
Secondly, I have virtually no experience with electronics, so I need something that is really easy to get started with. Of course, I am doing this in part because I want to learn, so if it's better to do a few simpler projects first to get the needed skills, I am open to that, too.
Thirdly, I want the device that will be running things to be _cheap_. I am thinking max 20 USD. That's for being able to run some simple software (doesn't need a lot of RAM or ROM, as long as more storage can be added) with video output, keyboard input, and network access. If I need some extra expenses to bootstrap things (e.g. some extra hardware to write the ROM), that's ok, but I want to basically be able to tell my friends "for under 20 dollars, you can get one of these computers and run all this great software, too".
Within these constraints, I would like to get the most bang for the buck that I can get. It doesn't have to be an 6502. If I can get an 68k or an ARM or an FPGA (given enough gates, of course), that would be grand.
I am really excited about the Beagle Board, but that's far outside my budget. I've looked at DigiKey's catalog, and there are many chips there that look promising, but frankly, I'm drowning in information, choices, and unfamiliar terminology for the moment. Perhaps one of the Arduino knock-offs will fit the bill. Uzebox looks really exciting, too. I feel that what I have in mind is out there somewhere, I just haven't found it yet. If someone could help me on my way, I would greatly appreciate that.
I'm from the Netherlands, where we have a parliamentary democracy with multiple parties and proportional representation. I haven't heard anyone propose a one-party system, but I've certainly heard proposals for a two-party system. Why people think that is better than what we have now, I don't know. Still, I wouldn't be surprised if this idea had some support in Sweden, as well.
``Nazis? They are actually more Israel friendly than most established parties, and one of their MP:s is jewish.
While their ideological platform is built mainly on restricting immigration, that hardly qualifies as nazism.''
I guess that very much depends on the definition of nazism one uses. I don't personally think it matters much if the party is antisemitic or anti-some-other-ethnic/cultural/whatever-group.
In the end, though, I don't think it matters what definition of nazism one uses and whether or not a political party fits that definition. What matters is what the party actually proposes, and how beneficial or harmful that is. It's easy to brand a party as nazist or fascist or communist or even left or right, but that isn't very helpful. We need to evaluate and address ideas on their merits, and not based on what labels we can attach to them and how people feel about those labels.
``Symbian's origins are nearly 20 years old now.''
Linux is nearly 20 years old, too. Arguably, its origin is in Unix, which is about 40 years old. Out go the Linux-based Android, Maemo and Meego. Mac OS X and iPhone OS trace their origin back to NEXTSTEP from 1989. Over 20 years old, so out they go. Palm's webOS is, depending on your point of view, based either on Linux or on World Wide Web technology - both of which are about 20 years old, so that one is obsolete, too. That leaves Blackberry OS and Windows Mobile, both of which originate from 1996.
Or perhaps "old" doesn't mean "not good enough" after all.
Personally, I think that the fact that, after 40 years, we have systems implementing the Unix APIs on everything from embedded systems to supercomputers, and from specialty devices that virtually nobody has ever heard of to consumer devices like desktop computers, phones, and televisions, means that those APIs are good and one could do worse than continuing to use them.
You mean like Maemo?
I just got a Nokia N900, which has Maemo, and I'm very happy with it. Finally, a phone I can code for using my extensive experience with Unix programming.
I don't know. I've always found Symbian quite impressive. I also prefer having a choice in the languages I can use for development, which neither iPhone OS nor Android seem to want to give me. Maemo has been a breath of fresh air: no hoops to jump through, and I can use the *nix development knowledge I already have. But between Maemo and Symbian, I'm not sure which is actually the better system for phones. While modern phones aren't really limited in computing resources by my reckoning, there is still something to be said for a real-time, microkernel OS engineered for devices with limited resources.
Thank you for clarifying that.
Does anybody know how this works in Canada?
``Mr. Henderson is an idiot, no offense to the intellectually challenged out there.''
I'm not sure who is the real fool here. Is it the man who spouts the lies, or the people who fall for the rhetoric?
We have a similar situation in the Netherlands: we pay a levy on blank media, which is used to compensate rights holders for the copying we are allowed to do. Downloading of music and video is included among the things you are allowed to do. Yet, our copyright watchdog, BREIN, has issued statements and publications where they have called such downloading illegal. Does that make them idiots? Perhaps, but almost everybody I have asked actually believes that downloading music and video from the Internet is illegal. People will even say they have "illegally downloaded" something if they downloaded it from the Internet. I think the real fools are all those people who believe that what they do or want to do is illegal, even though it isn't. Also, I am really, really pissed off at BREIN for propagating these falsehoods.
``Why should you have to know some arcane, difficult to remember internal routing ID of a phone subscriber just to call them? It's like, instead of having DNS, you have to put in every IP address manually for any server/website you wish to visit.''
Incidentally, this is one of my favorite arguments against the idea that computer programs have to be simple to operate before they will gain widespread acceptance. Given the widespread acceptance of dial telephones back in the day, it's obvious that people will put up with quite a bit of complexity and technicalities.
``How does the machine know you're a man? That's scary.''
That's why I don't use self checkout. Not that the machines here know I'm a man, but they do require the use of a debit card. I prefer to pay cash, because there's more than enough tracing of my whereabouts and actions going on as it is.
I am not an expert on this matter, but perhaps Wikipedia can help. Apparently,
Colorless green quarks spin charmingly!
Congratulations and a big thank you to all PostgreSQL developers!
I'm especially excited about the new replication features. The new trigger functionality looks exciting, too; I will have to look into that.
Keep up the great work!
``Are you a troll?''
No, I'm quite serious. But I might have led a few people astray by not stating my point more clearly.
Let me start by saying that I am *not* claiming Windows is more secure than your favorite Linux-based OS. Nor am I claiming it's the other way around. I believe the relative security of these systems is undeterminable. If anyone does come up with a good definition of relative security, and a test that yields meaningful scores and rules out bias, I'm all ears. For now, I am just going to say that I don't know which of two complex systems is more secure.
Now, since I believe it is impossible to determine whether or not Windows is more secure or less secure than whatever OS you would like to compare it to, I think words like "the winslow assholes that don't understand shit about security and somehow think that this means that GNU/Linux is insecure and as bad as their shitty system" are uncalled for. Especially considering that Microsoft has been hard at work to improve the security of Windows, while popular Linux distros are making absolutely no haste with including security solutions that have already been developed. That is the point I was trying to make.
Maybe it's fun to point and laugh at the poor Windows-using sods and ridicule the poor security track record of their system, but, without a good security culture on our side, I'm afraid we might end up looking mighty foolish when the exploits start coming our way. And frankly, if our security culture consists of pointing and laughing and ignoring security solutions that _even Windows_ has adopted, I think we're in very bad shape. I don't care if we're doing better than someone else, I care that we aren't doing as well as I feel we should.
``assholes that don't understand shit about security and somehow think that this means that GNU/Linux is insecure''
It _is_ insecure. There are plenty of vulnerabilities being found and reported, and there are several things that many distributions could do to improve security. To name a few examples, many distros ship with stack smashing protection and address space layout randomization disabled, and allow pages to be writable and executable by default. Also, usually, many operations are reserved to the root user, and the root user can do everything which means that more programs than necessary run as root, and root has more power than necessary. These are not the properties of secure systems; it's not even close to state of the art security.
``as bad as their shitty system''
I am not sure that such derogatory language makes the world a better place. I'm not even sure comparing the security of Linux with that of Windows is useful. If you do compare them, you will find that, at the very least, Microsoft has improved the security picture on Windows a great deal. In some cases, such as running with reduced privileges by default and only elevating privileges for programs that need it, they have merely caught up with Linux systems. But since Windows Vista, Windows ships with address space layout randomization and non-executable pages (Microsoft calls it DEP) enabled for many libraries and executables. Newer versions of Internet Explorer (certainly 8, but also newer versions of 7 if I'm not mistaken) are among those applications, and also include a "protected mode" where most of the program can't do very much at all, and all potentially harmful operations are concentrated in a small, trusted kernel running in a separate process. These are the sort of security measures taken by a vendor who takes security seriously. On the *nix side, you will find this kind of stuff in OpenBSD and a few specialty hardened Linux distros, and that's about it. Ubuntu has AppArmor, but hardly uses it.
If you look at vulnerabilities, like the privilege escalation vulnerability in the story, I would not be surprised to find that more of these are being found and reported in Linux than in Windows these days. What that means about the relative security of Linux and Windows, I don't know. But clearly, serious security flaws are being found in Linux. As far as I am concerned, Linux's security track record is far from stellar, and there certainly isn't a strong security culture that will make this better in the near future. Easily applied security measures (see first part of my post) are being left on the table, and we have far too much code running in all-powerful kernel mode for me to be comfortable with (just one data point: I have over 100 MB of kernel modules on my system, and on the order of tens of megabytes in the running kernel image).
Considering all the above, I would certainly refrain from calling names or making derogatory remarks against users of non-Linux systems. I don't profess to know which system is the most secure, all things considered, but I'm a firm believer in not needlessly stepping on people's toes.
Kind regards,
Your friendly neighborhood Linux guy
I am sorry, I completely neglected to address your point about dependencies. And it's a good point, because dependency handling makes all the difference between software that is easy to install and software that is a royal pain to install.
To answer your question: I don't usually deal with dependencies. Generally, I don't install software until there is a package available for my Linux distribution. Then, I let the package manager deal with dependency resolution. If I really want to install some software that isn't available as a package for my distro and need to install the necessary dependencies by hand, I usually don't have a lot of trouble figuring out what I need from the error message, installing a package named similarly to what is mentioned in the error message (e.g. if it can't find lib(name).so.(someversion) I probably need to install lib(name)(something)). If that doesn't help, I search the web for answers, and if I don't find them quickly enough, I give up. Still, I want to emphasize that this rarely happens to me: I have everything I _need_ on my computer, and few things are worth the hassle of installing non-packaged software to me, knowing that if I wait a while, a package will likely be available.
In a few cases, I actually end up creating a distro package myself. I used to do this a lot for OpenBSD, and I've made a few packages for Debian and Ubuntu, as well. The advantage I get out of that is that when I'm done with the software, I can use the package manager to cleanly remove it.
Honestly, I don't really believe in large scale migrations of existing Windows infrastructure to Linux. Large migrations are hard to do at the best of times, always cause a lot of resistance and frustration, and take a long time before they start paying off, if that even happens at all.
Migrations from some Unix to Linux are a bit easier because you usually get similar and often better software than what you had.
Migrating from the Microsoft stack of Windows, Exchange Server, Active Directory, Office, and, ceiling cat forbid, SharePoint or BizTalk is a different story: I would go as far as to say that exactly none of these have equivalents on the Linux side that are compatible but better, so your users will simply not be able to do things the way they were used to doing them. This is where you hit your biggest resistance: they will have to re-learn things, which will take time, effort and money. People will get upset, they will hate the new system, and they will complain about it, loudly, and to anyone who will listen. And for good reason: they had a work flow that worked, and then management came and pulled the rug from under them and they had to re-learn things for no good reason. Think of all the stories on Slashdot, where supposedly computer literate people who aren't afraid of a little tinkering complain about Linux not doing this or that as well as Windows, or not in the same way. Now imagine what happens if you _force_ a few thousand users who have no affinity with computers, don't want to tinker with computers, and actually rather wouldn't work with computers at all to make the switch. That's what you're up against.
Now, for a different scenario, consider an organization that is just getting started. There are only a few people there, and the whole IT infrastructure still has to be set up. This, I think, is a scenario where free software can be very successful. It's also an interesting scenario to think about. Suppose you wanted to set up the IT infrastructure for at least a few hundred users, most of whom would have jobs where they have to use computers, without necessarily having any affinity for computers themselves. Assume you would need some common infrastructure: e-mail for everyone, calendaring would be very useful, and at least some desks will have computers that any among a group of people will have to be able to log into and get to work with (i.e. they won't have their own desk and their own computer). How would you do it?
For those who prefer a quick human translation over a state-of-the-art Google Translate result, here is what I gleaned from the article. German is not my first language; corrections and other improvements welcome.
Short summary:
- The project wasn't going well from the beginning
- The project definitely failed, but you can't entirely blame that on Linux
- Lack of organizational talent definitely played a role in the failure
- In a survey, about 80% of employees stated they were satisfied with the new environment, 10% complained about issues they thought would be resolved over time, and only 10% were really dissatisfied
- The media played a large role in the perception of the project by eagerly latching on to every bit of bad news about the project
Partial translation, paragraph by paragraph:
Nine years after the decision to migrate the computers of the Solothurn kanton to Linux, a radical reversal has come today: all desktops will be converted to Windows 7. Did Linux fail?
The project wasn't a great success from the beginning; those who followed the media must have gotten the impression that it was a sequence of failures and bad luck.
Problems during the migration, software than wasn't ready yet, angry employees who set up a homepage to vent their frustrations and who couldn't get any work done because of Linux - all of this suggests that tax money was being spent on a project doomed to fail. And it has failed now. But to blame it all on Linux would be short-sighted. When you look further, you will see that many factors were responsible for the failure.
The decision to convert to Linux came in 2001. The goal was to have completed the conversion by 2007. However, that goal was unattainable, because some invitations to bid were only sent out in 2006. The choice for the Scalix web interface wasn't a good one: even in June, the webmail interface lacked a task list and some of the comforts of native e-mail clients.
Many special applications could not easily be replaced by Linux solutions. This was compounded by problems with the Konsul database employed by the kanton of Solothurn for editing council decisions: the data file of this Windows software was not so easy to migrate. Project Ambassador was meant to allow interoperability with OpenOffice.org et al, but was postponed until end 2010 because of performance problems. As a result, none of the council members worked with Linux systems.
An internal inquiry among employees showed that about 80% of them were satisfied with the new environment. Ten percent complained about "childhood diseases" of the software, and only 10% were really unsatisfied. But that is still 100 employees, and they were a very vocal minority.
The Swiss media seized every opportunity to bring news of even the most insignificant frustrations in the kanton: a temporary printer problem that was solved quickly became "lasting printing problems". Quotes from employees who claimed to work more productively at home than at the office were gladly printed.
If there wasn't any bad news, the media simply manufactured some. When the state attorney's office held a conference for attorneys in 2009, they neglected to prepare a Windows system for displaying the PowerPoint presentations. The kanton police, who, according to the Berner Zeitung had "successfully defended itself against Linux" helped out and saved the attorney's office from embarrassment. Of course, there are many things you can blame on Linux, but lack of organizational talent of the conference organizer isn't one of those.
``When will they use the common installer system?''
Which common installer system?
The way I see it, software release and packaging works like this:
1. Developers release the software, preferably in a format that is as OS-neutral as possible
2. Distributors create packages for their distribution
Considering that, Adobe have done the right thing here: .tar.gz is about as universal as it gets when releasing software for Linux. Now it's up to Debian to create Debian packages, Fedora to create packages for Fedora, and so on.
In any case, I much prefer a .tar.gz over a developer-made package for a specific distro (unless it happens to be for the distro I use, and have the quality I expect from my distro), or even distro-agnostic packaging formats like 0install. In my experience, both of these actually cause me more work than the plain .tar.gz, and, by causing more work and hassle, actually delay the availability of a proper distro package.