You have a great domain name that can be used to highlight this issue in general. Elsevier is only one part of the problem and it might be better to expand the list to beyond Elsevier. To have a wider impact, consider publicizing this issue on other forums as well. Here are some random suggestions:
Add some identity verification; Maybe facebook/twitter signup etc.
I suspect many in the HN community are associated with the IEEE and ACM. You might want to consider adding these two orgs to the list. (Disclosure: I am an IEEE member and a past ACM member). Both these orgs have great digital libraries and I have no idea why they are so expensive to access. Can someone with some experience serving on IEEE/ACM committees share some info on the financials?
Consider posting and starting a discussion on Chronicle.com. You might get support from a lot of people in the Arts & Humanities as well.
Why should the general public care about this issue? They pay for this indirectly through college tuition fees. Try to share this information with some parent bodies and ask them to pressure universities.
Get some alumni bodies to sign up. They have a lot of clout in Universities.
I suspect many in the HN community are associated with the IEEE and ACM. You might want to consider adding these two orgs to the list. (Disclosure: I am an IEEE member and a past ACM member). Both these orgs have great digital libraries and I have no idea why they are so expensive to access. Can someone with some experience serving on IEEE/ACM committees share some info on the financials?
What do you consider expensive? ACM offers unlimited online access for $200/year. I haven't had trouble pulling that much money together on a grad student income (though I only pay about half that for my membership as a student). Given the salary numbers I see people talking about here, I'm not convinced ACM is prohibitively expensive.
My perspective is that we should be sharing this knowledge with people who cannot afford even that kind of money. $200/year is a lot for many people in many parts of the world.
I do understand that there is some cost involved in maintaing such vast libraries and I am not saying that it should be ignored. As I mentioned above, I would like to know more about how they arrive at these values.
The people who write these papers don't do it for the money. The people who review them don't do it for the money. So why can't we come up with something that makes these works more affordable and accessible to everyone on the planet? This debate is an opportunity to start exploring other such possibilities.
So why can't we come up with something that makes these works more affordable and accessible to everyone on the planet? This debate is an opportunity to start exploring other such possibilities.
I agree, but that's also why I don't want to lump the ACM and IEEE in with Elsevier. That is, the ACM and IEEE are professional organizations. Their main purpose is to represent the interests of the community of professionals in computing. If they stop charging for articles, they can still exist as an organization. Their members just need to elevate the issue to the point that the larger organization changes its policy.
Elsevier, on the other hand, will cease to exist if they stop charging. Their main purpose - their business model - is to charge for access to their journals. This business model is no longer necessary, and these companies will eventually die.
Ignoring the backing-up data issue, this seizing of sites raises a couple of questions. I had never used Megaupload and I don't have a clue about what that site did. Assumming, I had stored a bunch of files on Megaupload:
1. Shouldn't the Feds return my files? After all those files are my property. Irrespective of whether or not I had back ups, what gives the Feds the right to seize my property indefinitely.
2. Does seizing the site, give the Feds the right to read through my files? what if I had been working on the next big super-duper idea, and they steal my ideas?
3. Would the 'unreasonable search & seizure' amendment apply to people's files?
These questions would apply to all cloud-storage companies. Can someone with more legal experience shed some light?
> 2. Does seizing the site, give the Feds the right to read through my files? what if I had been working on the next big super-duper idea, and they steal my ideas?
Regardless of precise laws (it will take years to make a precedent) it would seem extremely naive to assume that anything you upload could and will not be read by the federal authorities, or others (megaupload owners, some guy at your ISP, etc.)... This is one of the major issues with using 'the cloud' as a platform for anything sensitive, and doesnt get enough attention.
As a side note I can see several people in this discussion refer to files as 'property'. While you may have intellectual property rights over the content of the files the only actual property is servers and HDDs which you certainly do not own. I don't think the FBI has taken anyone's property except Megauploads.
Would the 'unreasonable search & seizure' amendment apply to people's files?
I would speculate: no. Once something was uploaded to megaupload, it was made available for download to anyone with the url for the file.
If the file is public, its going to be very very hard to successfully argue that a LEO looking at it constitutes an unreasonable search.
There may have been no comfortable file navigation tools built into megaupload, but I believe they would still be considered 'public' by nature of the fact anyone could download them.
edit: I'm assuming that the public nature of the files would be the best choice to argue that it is not a unreasonable search. Of course there may still be reasonable searches if they're not public, but I think one could make a case that the files were public. Is this what you're disagreeing about?
I made an additional donation to Wikipedia because of their stand on this issue.
Seth Godin was right when he said "If the user supports it, she owns it. If support comes from anonymous government money, or some corporate sponsorship, then the interactions don't matter so much, and it's more distant from you."
I have never felt closer to Wikipedia than today.
What makes you think that the engineering teams in companies like Siemens, Rockwell Automation, Mitsubishi, GE etc. are "a long way behind in terms of 'software engineering'"? It is extremely misguided to think that all the thousands of engineers working in the Industrial Automation field are somehow behind others. I guess most of the HN crowd has very little exposure to the technologies in this field and most people probably consider this field uncool. But that doesn't mean the engineers working on these technologies are dumb and lagging behind others.
> What makes you think that the engineering teams in companies like Siemens, Rockwell Automation, Mitsubishi, GE etc. are "a long way behind in terms of 'software engineering'"?
I was in a class taught by this guy and I seem to recall him saying that a large (20-40%) of embedded developers he surveyed reported using noversioncontrolsoftware.
and look at some of the responses in that thread!
"I think that gcc -Wall -Wextra can be subtituted by lint tool (if you use gcc)."
"I was in a class taught by this guy and I seem to recall him saying that a large (20-40%) of embedded developers he surveyed reported using no version control software."
Yeah, but that's a vendor issue; it's not that the Engineers don't want to use version control.
We'd like to, for example, but we usually can't. All of the file formats for these PLC tools are binary blobs, and since the language is usually a graphical language (ladder logic) the conventional idea of diff is pretty meaningless unless someone writes a proprietary version control to handle the binary blobs + representing ladder logic through diffs.
We still try to use it, but we lose most of the benefits. I suppose you still get a changelog, but you can't ever merge branches since merging binary blobs with binary blobs will not go well for you.
It's not really as useful as you make it out to be, since PLC code doesn't exist in isolation; there is __usually__ corresponding hardware. Unless you plan on magically "rolling back the hardware" changes as well, rolling back the software isn't all that useful in practice. Even if you can, changes are not made by any one vendor. Plant modifications happen all the time, so it's more often the case that you just end up uploading directly from the controller itself to see what the latest code is. I don't really have a good solution to that.
The exception of course is some very large companies that do everything in house.
There's a science to this, it's called "change management". How do you think Boeing manages a plane with several 1000s of engineers, hundreds of systems and everything needs to work together...
> a large (20-40%) of embedded developers he surveyed reported using no version control software.
that's obviously bad, but is it higher than developers across disciplines? i'm sure you guys all use version control, but if you surveyed all web devs, how many of them use version control? i'd bet its a similar number
I'm an embedded consultant at a small firm of young guys. We use subversion, git and mercurial internally. We have project management tools, bug tracking and issue management, scheduling and time tracking and version control. We use VMware and VirtualBox to keep versioned installs of operating systems and toolchains. We're up to speed on the latest languages and frameworks, and we use whatever is right for the task at hand.
Our customers do not, in general, have any of those things. Many of them have no central version control (independent teams sometimes have subversion setup for themselves). Those who have it are usually using CVS, and usually don't use it very well.
Embedded is a field of "old fogeys" still. It isn't taught in school, it isn't advertised very well, and the companies who do it don't offer the cool perks that web companies do. A lot of these companies are running into problems where a large portion of their engineering force is retiring, and nobody is available to replace them.
This is more likely to be the case with our big customers than the smaller ones. The small ones usually have at least have some people pushing for modern project management, though it's often not implemented across the whole company.
Many of them got into the field when microcontrollers were extremely limited and C compilers were unreliable -- most of them learned assembly and used it for most of their career. There is still a tendency for the older ones to not believe us when we say their project can be written in C. Ten years ago, they would have been right.
Obviously, you can't generalize an entire industry as being "way behind", but many embedded firms just haven't progressed the same way those in other industries have.
Also, it's critical to realize that it has nothing to do with the engineers not being smart. They tend to be quite brilliant, in fact. But many of them are electrical engineers with a background in analog electronics, physics, and math, instead of modern software development.
What makes you think that the engineering teams in companies like Siemens, Rockwell Automation, Mitsubishi, GE etc. are "a long way behind in terms of 'software engineering'"?
A bit of personal experience, stuff like Stuxnet as well as seeing bits of security research that confirm that notion.
Besides, not all control engineering is done by large corporations. There are tons of customizations done by smaller companies, whose competence varies.
You're right, I should have quantified that statement a little better. The PLC manufacturers I'm sure have good software engineering practices. I'm just not sure the rest of the ecosystem is as developed as for instance the "web development" ecosystem, atleast from my experiences.
Mind you, I do live in the Netherlands, and it seems lots of PLC systems are designed by electrical engineers who started out in that or something else and don't know about much on the Joel Test. But I can be proven wrong.
A contributing factor is probably that each vendor has his/her toolkit which in some sense is proprietary, and so the market for general tools is smaller, and it's an enterprise market making it harder to sell to.
"PLC systems are designed by electrical engineers who started out in that or something else and don't know about much on the Joel Test. But I can be proven wrong."
That's probably true, given that PLCs were originally for electrical engineers as means of having "software relays". The concept of computer engineers came much later, and for computer science, they typically have zero electrical background which means that even if they program really well, it can be the case that they don't understand the physical implications of the code that they've just written.
In computer science, writing True might mean it's magically on, but in real life, a valve actually has a small delay before it physically is open. So a time delay has to be placed on the output. That's a simple example, but there are other such nuances of electrical/physical devices. Also, much of PLC programming (especially in process control) is control theory (PID controllers, essentially differential equations so that devices actuate "smoothly" instead of in a "jerky" manner). This also seems to not be covered in a CS curriculum.
It's not really that big a deal to grasp the physical implications of code and timing. Any network code will have the same issue, i.e., any web coding.
The industrial controls industry has a very 1980s/1990s attitude for cybersecurity. I don't envy the public-facing engineers working for the vendors.
> I guess most of the HN crowd has very little exposure to the technologies in this field and most people probably consider this field uncool.
I'm always reminded of a conversation with a fresh Google hire wherein she said "How can you stand working at a utility, don't you want your work to affect PEOPLE?", as if utilities don't have hundreds of thousands or millions of customers that we provide an essential service to.
Siemens has quite a peculiar bit of software; it is the only product that I have seen that requires you reboot BEFORE installation of every single Siemens product.
I think installing all of the Siemens software requires something like 15 reboots, at last count. And I have no idea why.
I guess it is not surprising anymore, but I couldn't help wondering about Microsoft being left out of consideration. Would love to here thoughts about how, and if, MS will compete among these companies.
Agreed. While clearly not leaders in hardware, Microsoft's entrenched position in the enterprise means you can never count them out. They have a history of arriving very late to a game, getting it wrong a few times, but finally getting it right to gain the #1 position. I guess it's just hard to see now given some of the recent high profile failures like Zune and the meager gains in Bing market share after spending so many billions. But what about expanding upon their strong foothold in the living room with Xbox and Kinect?
I don't have much to add to the discussion. I just want to vent a bit of frustration. I came in this morning and found out that 7 of my co-workers were just laid off. We are a 30 people company so thats quite a big deal. And some of my good co-workers in QA were axed. I guess some management guy thought QA was unnecessary. Oh this seems to start to look like 2008 all over again!
I have heard similar restaurant stories happen to some of my friends. Jonathan's card is also a good idea.
However, I can't help wondering that with all this technology we are ending up in a situation where the Haves help the Haves and they all feel better for a little while. What can we do to make it easy to help the really needy? Wouldn't it be wonderful if we could just as easily drop $10 to help someone eat a few meals a day? I am aware of all the real world problems and constraints, but I hope these examples inspire some of HN community to build stuff that will help those that really need it.
This is an efficient way of buying fuzzies, for a really cheap price, and it's important to buy fuzzies or you start to fade. If you want to buy utilons, find a maximally effective charity (this means you either check Givewell or pick your favorite existential risk reduction org) and donate more than $10. Do not confuse the two problems, and do not attempt to solve them both at the same time!
Interesting links and comments. I did not want this discussion to morph too much in to an argument about economics and/or politics. That's why I glossed over them saying "I am aware of all the real world problems and constraints". patrickyeon captured my thoughts well with his comments below about how the system was selecting beneficiaries. That's the point I was trying to highlight.
The good thing about random altruism, i.e. giving stuff to people regardless of whether they need it or not, is that it doesn't encourage welfare dependency.
When you give free stuff to "those in need", you have to be extremely careful not to just wind up changing the balance of incentives in a way that just encourages them to stay "in need". Otherwise you're harming them, not helping them.
At the same time, if a few people riding the system that way is the price you have to pay to help the people who truly need it, isn't it really worth it?
I think what the grandfather post meant was that Jonathan's card is meant to be scanned from a cell phone. If things like this are restricted to people with a cell phone (or a facebook account, or an iphone app...), the system selects for beneficiaries who are already above a certain level of need.
Text MEALS to 90999 to give $5 to the Chicago Food Depository. I do it quite frequently when some joyous happenstance comes my way or when I spend a bit too much on myself.
Another important 'hardware' that doesn't get enough attention is the chair & desk. I believe that having an ergonomically designed and adjustable chair and desk is as important as the PC specs to programmer productivity. In my current job I have a bad chair/table and it is breaking my back. Probably this issue also gets worse with age. Investing in good furniture might also save the company on health care costs. From personal experience I have spent quite a bit on fixing my back.
Reminds me of Dev Dutt's TED Talk: http://www.ted.com/talks/devdutt_pattanaik.html