Domain: acm.org
Stories and comments across the archive that link to acm.org.
Comments · 1,502
-
Professional Society Magazines
"as there seems to be no other major technical programmers' magazines left standing."
You might be interested in checking out the periodicals published by the IEEE and ACM professional societies.
-
It's all about the people
Find a job where the people there are into technology. Some places, the developers consider software to be a job, and when they go home they watch TV and go to sporting events. Other places they go home and collaborate on projects, build Battlebots, and read Make magazine.
Talk to the developers. You might think that the company where they build robots with lasers would be staffed with industrious geeks, but it might turn-out that the corporate environment stifles such people.
You might want to talk to people in user's groups. Find your local LUG, IGDA chapter, ACM meeting, or IEEE charter. See where those people work (or don't work, if they aren't your type)
-
Re:Let me just say
Please dont resort to personal insults. This isnt a big important argument.
Then don't post stupid things. I find it is very necessary to call a spade a spade from time to time. Especially when you attempt to associate something that had nothing to do with Bush and where bush was never even mentioned and dismiss it as having to do with him. I mean seriously, you expect not to be insulted after that? It sounds like your bitching because someone gave you what you asked for.
My main point is that if people in Iran get PRINTERS - it does not hurt us in any way. I think that the trade embargo is spawned out of national hatred, and does not protect against any real threat, atleast not in this case.
If that was your point, then why didn't you say it? I mean I still would disagree with it but it could have save us this little your a fucking idiot escapade. Especially when you bring up Bush when he was never mentioned.
The embargo isn't spawned out of national hatred. It is a response to statements made by leaders of Iran that directly concerned the safety of the US or it's allies. We take actions not only to protect us directly, but to protect us indirectly through our allies. The embargo is an attempt to achieve that protection indirectly by making it more difficult for Iran to do certain things it claims it want to do. Printers fall into a category of technology and the restrictions are in place specifically to make it more difficult on them. The answer is for Iran to change a few positions and to stop pursuing nuclear weapons and the embergos leave. The answer is not, "well, it isn't working so we might as well enable them". That seems to be what your arguing.
And yes, the processors in most of the printers Iran would be buying are strong enough to do high performance calculations that can aid in nuclear simulations or even do ray tracing. In fact, I seem to remember a program that could be loaded onto printers to do graphical ray tracing in it's spare cycles. In case your wondering, ray tracing- both types- is pretty complex and computationally intensive which shows how strong the things are. Most HP business printers use a http://www.pmc-sierra.com/products/details/rm7000c/ >processor like this. This is the C revision where HP uses the B revisions BTW, yes, that processor is powerful enough to be used in Guidance systems, target acquisition systems, radar and other operations that could pose a threat. Of course it isn't hardened or shielded by default but even that can be accounted for to some degree after the fact.
The entire country of Iran is not a terrorist group. Thats a gross, racist simplification. But thats the way its always been. This shit stretches WAY back before 1995. Remember how everyone in Afganistan was a member of Al-Quaida? Remember how Kim Jong il was going to nuke us unless we invaded? Remember how all russian citizens were hardcore communists who hated our guts?
Nobody said it was. While there are civilian elements in Iran that are terrorist in nature or sponsors of terrorism, the government of Iran is which is why the embargo is against the country and not groups within the country. Do you understand that, the fucking government is a sponsor of terrorist groups.
BTW, No I do not remember how everyone in Afghanistan was a member of Al-Quaida. Al Quaida was being aided by and given safe harbor by the Taliban which controlled/was the government of Afghanistan which why we went to war with Afghanistan.
The statement
-
Re:HPSetup SSID
This is a really serious matter. Iran already has highly advanced technology allowing them to photoshop pictures of missiles. Now, thanks to HP, they have the technology needed to print pictures of those photoshopped missiles. Next, they could be photoshopping and then printing pictures of tanks, ships, aircraft... where will it all end?
Postscript is a language, and printers have processors so it's possible to write things like a ray tracer in Postscript. Can you imagine a beowulf cluster of printers being used to do nuclear simulations?
-
Semantic Web Article in CACM
There's actually a pretty good introduction to the semantic web in this month's Communications of the ACM. You're right when you say that the semantic web is, as yet, mostly unrealized. But it has huge potential.
Relational databases were in the same position in the late 60's/early 70's. We needed ways to combine and extract information automatically with a simple and expressive language. Relational database management systems, combined with SQL were the result of that, and they were a smashing success. They are now a standard business tool. The key to that success is essentially the role that the database's ontology plays in an RDBMS.
Having spent a lot of time professionally and academically working with and studying database technologies, most of the work is in understanding your data. Specifically, building a data model. A well-built data model is essentially an ontology. There are various techniques used to make sure that your can be handled automatically, mainly by normalization. This requires a tremendous amount of work on the part of the database designer, but the end result is that the end-user can query this data in fairly simple terms and get an enormous richness of data, sometimes in ways that even the database designer did not foresee. I think the success of database systems is what is driving a lot of the work in building the semantic web.
So you can see-- the big problem with the web is not just that data is not just unstructured, but that there are no standardized ontologies out there. RDF is an attempt to solve some of these problems simply, because you can embed your ontology, but it may be well off. On the other hand, if new tools make structuring data very easy or natural, people may be motivated to do the extra work because they'll personally benefit from it. For example, many people annotate or organize their photo collections naturally, so that they can share them with others. A smart photo gallery software writer may be able to come along and take advantage of that behavior to further enhance the meaning of that data. -
Re:Excel for statistics
Excel 97 had serious accuracy problems in its statistical functions, making it completely unsuitable for consumption.
The problem was not fixed in Excel 2000, neither it was in Excel 2002 (XP).
In Excel 2007... well, it still has the very same problems.
-
Re:Excel for statistics
Excel 97 had serious accuracy problems in its statistical functions, making it completely unsuitable for consumption.
The problem was not fixed in Excel 2000, neither it was in Excel 2002 (XP).
In Excel 2007... well, it still has the very same problems.
-
Re:Excel for statistics
Excel 97 had serious accuracy problems in its statistical functions, making it completely unsuitable for consumption.
The problem was not fixed in Excel 2000, neither it was in Excel 2002 (XP).
In Excel 2007... well, it still has the very same problems.
-
Anomalies
Catch-22
Catch-22 is a sort of senseless, cruel, and idiotic unspoken rule.... that you have to be insane to fly a bombing mission, which means that you should be grounded (not allowed to fly a mission), but if you don't want to fly, that clearly proves that you are sane and must fly the missions.
Describing the meaning of the phrase "Catch-22".
Yeah, this is going to be long
...I find myself (and a very few others) in a position similar to Cliff Stoll in his book:
"The Cuckoo's Egg: Tracking a Spy Through the Maze of Computer Espionage"
http://en.wikipedia.org/wiki/Clifford_Stoll
Certified anomalies permeating the net of a hardware based logic bomb / trojan.
This is cross-platform simply because "hardware trumps root".I have dealt with this since 1997 and have contacted through a Lawyer all the channels one would contact.
This is not your "normal" beast.I don't require an answer here, from Representative Jim Langevin, in this forum, a contact below is provided.
This requires attention.Required reading:
Reflections on Trusting Trust
Ken Thompsonhttp://portal.acm.org/citation.cfm?id=358198.358210&coll=ACM&dl=ACM&CFID=14389570&CFTOKEN=96928429
Companion:
http://portal.acm.org/citation.cfm?id=777313.777347&coll=ACM&dl=ACM&CFID=14389570&CFTOKEN=96928429
This is a good a place to start as any.
Nancy has named it:Subversion:
Nancy's Story: (expired site certificate)
(2005-present)https://tagmeme.com/exmachina/a/002450.html
Same situation:
http://www.securityfocus.com/comments/articles/11372/33017/threaded#33017
http://www.securityfocus.com/comments/articles/11372/34206/threaded#34206
http://www.securityfocus.com/comments/articles/11372/33500/threaded#33500
http://www.securityfocus.com/comments/articles/11372/34207/threaded#34207
It took me years to find anyone that was aware as some of these folks.
This is highly sophisticated, prevalent and dangerous.I am a Systems Administrator working in the western United States.
hylas [AT] operamail {DOT} com
-
Anomalies
Catch-22
Catch-22 is a sort of senseless, cruel, and idiotic unspoken rule.... that you have to be insane to fly a bombing mission, which means that you should be grounded (not allowed to fly a mission), but if you don't want to fly, that clearly proves that you are sane and must fly the missions.
Describing the meaning of the phrase "Catch-22".
Yeah, this is going to be long
...I find myself (and a very few others) in a position similar to Cliff Stoll in his book:
"The Cuckoo's Egg: Tracking a Spy Through the Maze of Computer Espionage"
http://en.wikipedia.org/wiki/Clifford_Stoll
Certified anomalies permeating the net of a hardware based logic bomb / trojan.
This is cross-platform simply because "hardware trumps root".I have dealt with this since 1997 and have contacted through a Lawyer all the channels one would contact.
This is not your "normal" beast.I don't require an answer here, from Representative Jim Langevin, in this forum, a contact below is provided.
This requires attention.Required reading:
Reflections on Trusting Trust
Ken Thompsonhttp://portal.acm.org/citation.cfm?id=358198.358210&coll=ACM&dl=ACM&CFID=14389570&CFTOKEN=96928429
Companion:
http://portal.acm.org/citation.cfm?id=777313.777347&coll=ACM&dl=ACM&CFID=14389570&CFTOKEN=96928429
This is a good a place to start as any.
Nancy has named it:Subversion:
Nancy's Story: (expired site certificate)
(2005-present)https://tagmeme.com/exmachina/a/002450.html
Same situation:
http://www.securityfocus.com/comments/articles/11372/33017/threaded#33017
http://www.securityfocus.com/comments/articles/11372/34206/threaded#34206
http://www.securityfocus.com/comments/articles/11372/33500/threaded#33500
http://www.securityfocus.com/comments/articles/11372/34207/threaded#34207
It took me years to find anyone that was aware as some of these folks.
This is highly sophisticated, prevalent and dangerous.I am a Systems Administrator working in the western United States.
hylas [AT] operamail {DOT} com
-
Re:This is all true however...
Or really, lets just damn it all to hell and learn Lisp
... I can just blame someone else when my program is slow.Nope!
http://www.lrde.epita.fr/~didier/research/verna.06.ecoop.pdf
http://portal.acm.org/citation.cfm?doid=1143997.1144168
http://www.eecs.berkeley.edu/~fateman/papers/lispfloat.ps
Yeah. Learn Lisp first.
Good idea.
:) I know /you/ were only joking but Lisp has been held back by a ton of widely believed (and massively ironic) mythology and it is very sad. The only thing really wrong with it is the lack of stuff written in/for it because of its grossly undeserved reputation. -
I already functional program in C
Since SSA is Functional Programming there is no need to learn a language like Haskell or Erlang.
-
Re:Amdahl's Law
And John Gustafson recently stated "The only people who said Amdahl's Law wasn't true were the PR people at Sandia, and a couple of managers who should have known better. Never the people who did the work." Check the video discussion, with Amdahl, Gustafson, and a couple of other folks.
If you see a white horse, it does not imply that all horses are white. If see an algorithm that scales, it does not imply that all algorithms will scale.
Some applications will map to 1000 cores nicely, but not all of them. Thinking Machines, Inmos, MasPar, BBN, and dozens of other companies have found this out the hard way. Intel and AMD also seem intent on finding this out the hard way. Of course, the smart thing to do is to ignore five decades of well documented history, and pretend that this is the first time anyone has tried parallel computing; it's much more fun that way.
-
Re:Libraries
unless the language is in the tail end of its life, like Fortran...
Fortran will continue to thrive for many years. I don't know numbers, but based on my personal experience, it's the preferred language of most computational scientists and engineers. The most recent revision occured in 2003. According to this, a new one is being worked on.
-
Blind people have better sense of touch...really?
This is only an interesting question raised during developing Blind Hero here at the University of Nevada, Reno. From the data we collected, we found blind users have better performance using haptic glove playing Guitar Hero. It was fun experience for sighted people playing Guitar Hero by staring at a black computer screen and purely relying on the sense of touch from the vibrating glove. This made us wonder do blind people truely have better sense of touch than us? More details can be found at this year's ACM SIGACCESS publication .
-
Girls like MAKING games
from the article: Ms. Cassell writes of the failure of these efforts, "The girls game movement failed to dislodge the sense among both boys and girls that computers were 'boys' toys' and that true girls didn't play with computers."
This may be true for girls PLAYING games but not for MAKING games. This study by the Stanford School of Education suggest that girls, even the ones not actually playing video games, are quite interested in making them: http://portal.acm.org/citation.cfm?id=1241071
more about the National Science Foundation supported project called Scalable Game Design here: http://scalablegamedesign.cs.colorado.edu/wiki/
-
Re:So What?
As for laser printers, they can be identified uniquely because, on each page, they surreptitiously print a binary code (serial number, at least) in very small, light yellow dots. Yellow on white paper is nearly imperceptible. Wiki it for the whole story, including how to find and interpret the dots.
Yes, but even without that, you can match a printout to the drum, based solely on defects due to wear in the printer. The printer/paper equivalent of ballistics matching a bullet to the barrel it was fired through.
-
Re:Will customers really want this ? (i.e. carrier
why exactly would a carrier be interested in provide its customers with the ability to run multiple OSs on their mobile devices. And it is far more complicated from a technical and licensing standpoint than on a generic PC.
Maybe because it makes licensing simpler!
Suppose you want your phone to run Linux, and you'd like the users to be able to install their own kernels and whatever other software they want, but you need to stop them messing with the GSM/3G stack in order to satisfy the FCC and the carrier. How do you do it? Answer: use virtualisation to split the software environment into two parts - "secure" and "open". Now your users get what they want (open software environment), and so do the carriers (some parts are still locked down).
This is cheaper than the other way to solve the problem (using two separate computers). It also uses less energy. Even if a company doesn't care about Linux, they might still want to run complex consumer applications on their phones, requiring strong separation of privileges that are hard to assure in a large consumer OS kernel. x86 Windows XP on a phone? With a CPU like Intel Atom, hypervisor-level security and "PC on a chip" hardware, why not?
There's enough reason to do this that all the mobile phone companies are involved with it in some way. Somebody mentioned a Xen version of this VMware system, and there's a port of L4 being made for this purpose as well.
-
Barb Simons is good.
It is worth noting, for those interested in electronic voting and vote security that Barb Simons is credited in the effort to get the ACM to set their policy on electronic voting. Just as importantly the helped to move the League of Women Voters from their pro-DRE stance on electronic voting to the new SARA stance which calls for auditability and recountability.
I found her comments on Open Source in the article quite insightful too. Not that I am against it but t isn't a security panacea.
-
Re:It's your job...
I don't have my copy of the ACM code of ethics
Well, look no further: The ACM Code of Ethics
Some sections relating to this issue would be:
1.1 Contribute to society (and human well-being.)
1.2 Avoid harm to others.
1.3 Be honest and trustworthy.
1.5 Honor property rights (including copyrights and patent.)
1.6 Give proper credit for intellectual property.
1.8 Honor confidentiality. -
Powertop's great but
There's more to powersaving than just reducing wakeups. On one thinkpad I tried it on wakeups were less than 15 per second but power usage was more than that of Windows. Being able to fully turn off devices and spin down disks will often save more than powertop will (however if you can do all these other things the having a low number of wakeups with a tickless kernel will let you achieve low power usage levels other OSes may struggle to reach). There is a nice paper about the topic of power saving by the renown Linux hacker Matthew Garrett talking about powersaving where much of this is discussed.
-
Re:Expand your horizons
You can find serious tech, from the realm of computing at least, in the ACM conference proceedings which can include video of tutorials and paper presentations at conferences, e.g. the SIGGRAPH conference proceedings DVD. Check out http://www.acm.org/
-
He didn't "invent the Internet"
-
Demo Presentation
Looks like they are part of the presentation & demo sessions at the UIST (User Interface Software and Technology) being hosted by ACM next week.
More details here:
http://www.acm.org/uist/uist2008/
And a schedule of events:
http://www.acm.org/uist/uist2008/program/index.html
I hope to see additional project details and possibly some additional demonstration videos come from this event.
-
Demo Presentation
Looks like they are part of the presentation & demo sessions at the UIST (User Interface Software and Technology) being hosted by ACM next week.
More details here:
http://www.acm.org/uist/uist2008/
And a schedule of events:
http://www.acm.org/uist/uist2008/program/index.html
I hope to see additional project details and possibly some additional demonstration videos come from this event.
-
Answer: definetely no!
So Dijkstra is no longer the go-to guy on this
Dijkstra would never ever be the goto guy because Goto Considered Harmful.
-
Re:Poor Intel
Actually, the analogy doesn't quite fit. Vectorization is quite a bit more comprehensible than the contortions compilers have to go through to get performance out of IA-64.
The user directives are easier, too. It's much easier for a user to say, "this loop has no cross-iteration dependencies" than for the user to mark which branches should be if-converted, which loads should be speculatively hoisted, etc. Thus for IA-64 the compiler ends up having to try to figure all this stuff out. In other words, it's much easier for the user to help the compiler understand the general parallelism available in the code than it is for the user to try to convey minute detail.
IA-64 is in many ways a house of cards. The compiler has to do a bunch of things (predication, static speculation, VLIW packing, scheduling, etc., etc., etc.) and do them all well to get performance. If it fails at one of them the code tanks. For something like Larrabee where there are multipel paradigms available (serial, vector, and multicore), you don't have to use all of them perfectly. You just have to use them well enough.
While it's easier to express parallelism, what's missing in Tim's responses is the acknowledgment that the user will have to do this.
You can read the Larrabee paper to get a good idea of the kinds of things Tim is talking about (software rendering and why it may just work).
-
Re:Processes
Yep, try this for an early approach to using multiple processes for an GUI..
http://portal.acm.org/citation.cfm?id=965145.801292&coll=portal&dl=ACM
In places it seemed like the chrome comic was quoting directly from this paper...
-
Re:Every hear of the IEEE Computer Society and ACM
See the US-ACM which has been active in lobbying (which is rarely covered by the IT trade rags) in the US, presenting to the US Senate (IIRC), and trying to tackle both political and legal issues such as H-1B visas.
And yes, I did mention them, in reference to legal, rather than political lobbying. Sorry for the confusion.
-
Every hear of the IEEE Computer Society and ACM
Seriously, these organizations already do much of what the ABA does in terms of a) being a professional society, b) providing professional education from books, journals/ magazines, courses, and conferences, c) contribute to recommended education curriculum, d) have a global presence, with chapters around the world, e) provide some services (e.g. insurance) for professionals who are working on their own, f) have been present, and try to be vocal about legal issues (i.e. USACM), g) provide standards that industry really do use, think IEEE 802.11a/b/g/n as one of many.
These organizations are not perfect, but they are respectable profession associations that do merit consideration. (Disclosure: I am a member of IEEE Computer Society, ACM, and the IEEE itself)
-
Every hear of the IEEE Computer Society and ACM
Seriously, these organizations already do much of what the ABA does in terms of a) being a professional society, b) providing professional education from books, journals/ magazines, courses, and conferences, c) contribute to recommended education curriculum, d) have a global presence, with chapters around the world, e) provide some services (e.g. insurance) for professionals who are working on their own, f) have been present, and try to be vocal about legal issues (i.e. USACM), g) provide standards that industry really do use, think IEEE 802.11a/b/g/n as one of many.
These organizations are not perfect, but they are respectable profession associations that do merit consideration. (Disclosure: I am a member of IEEE Computer Society, ACM, and the IEEE itself)
-
Re:ACM
We already have an association: ACM.org
I had to quit the ACM because I could not ethically comply with their Code of Ethics:
1.5 Honor property rights including copyrights and patent.
Violation of copyrights, patents, trade secrets and the terms of license agreements is prohibited by law in most circumstances. Even when software is not so protected, such violations are contrary to professional behavior. Copies of software should be made only with proper authorization. Unauthorized duplication of materials must not be condoned.
First, I do not feel morally obligated to agree with EULAs, nor will I ever. If the law eventually says that they're binding, then I'll go along grudgingly, but I certainly won't voluntarily submit to hidden contracts.
Second, it is impossible to write a modern program without violating patents. Even if I believed that software patents are legitimate - and I don't - there are simply too many to avoid stepping on a few in all but the most trivial of applications.
I like the ACM in general, but don't support their core values. As such, I can't be a member anymore.
-
Computer Science Teachers Association
The CSTA is a great source of curriculum and materials for teaching computer science:
I'd recommend joining (it's free for you!) and making use of their resources.
-
Re:Very Interesting...
I suppose I ought to give you a link to the paper.
-
IP Prefix Interception... not new
So how is this so groundbreaking? IP prefix interception has been studied and discussed already. For instance:
A study of prefix hijacking and interception in the internet
from Sigcomm 2007.
Seems to be a much better work than this Defcon presentation.
-
Re:It hurts you to learn C++ is still being used.I think that the ideas behind the "Premature Optimization is the Root of All Evil" quote are best expressed in this article. The original quote was, "We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil." In the context of the quote, "optimization" was referring more to micro-optimizing your code by writing it in a lower level language. Notice two things:
- The quote mentions that we should forget about small efficiencies about 97% of the time; not 100%. There are cases (say with SIMD or something like that) where it does make sense to do it in assembly the first time.
- The quote doesn't mean that you should choose naive or shitty algorithms to implement your product.
-
Re:Current?
True, technology books ARE always out of date, but whilst it's a truism that things are always changing, it's also true that there's an linear relationship with the degree to which they stay the same. (I believe the French have a neat saying that encapsulates this notion.)
The MULTICS pentest paper and it's review 30 years later are cases in point. See also Thompson, K., "Reflections on Trusting Trust", a matter which Kaminsky, D., has recently demonstrated is as true today as it was then (in a context which is completely different, yet exactly the same.)
-
Cool
It appears they've gone a bit further than just making the latest issue freely available, the archive is also online now. This is awesome, thanks! Many hours of engrossing reading there.
:) -
Re:Goto is Evil
Don't forget that things like break and continue are also gotos with funny sounding names.
Actually no, if the language you're using (e.g. Java) restricts break and continues to refer only to loops that they appear in the body of, then the program's control flow graph is still reducible. Break and continue without this restriction lead to irreducible flow graphs. This makes a big difference in the conceptual complexity (and sometimes runtime complexity) of compiler algorithms, in particular the construction of SSA form.
-
Re:The MAC is not in DHCP leases
Um, I think you are far underestimating Tufts Networking group. In fact, I know that you are, since I happen to know they are pretty top notch.
http://portal.acm.org/citation.cfm?id=1047561
Check that out, notice the name, and that the person is from Tufts University. I was working there when it was the new internal tool that this same networking group in question wrote.
-Steve
-
The only way to be sure...is to get rid of MS
You can't even be sure when you have the source code.
The point there is that you have to have the code for the whole stack not just an isolated application. For an application to be secure, you have to be able to do a valid code audit. For the code audit to be worth anything it has to be done all the way down to the core: compiler, libraries, utilities and operating system. So you can be sure when you have the source code, but you do have to have all of the source code.
So without even touching on the quality issues with MS, lack of code access rules out all MS products from the system on up to user applications. "Shared" source might be fine for specific, limited, platform-specific development contexts, but is basically the same as "escrow" And "escrow" is just another name for closed source, namely, as Ken Thompson point out, insecure. Ditching MS products won't automagically make your site secure, but it is a necessary first step.
Now there are some short cuts one can take in Ken Thompson's example. However, they all boil down to having the code for the whole system as he points out, not just parts. Even diverse double compiling requires, at the end of the day, a system that has been vetted top to bottom to use as the baseline.
Now the next step is to deal with smaller, more modular units of code. They're not only good design but also easier to manage. Again, that rules out a certain party
...FWIW it's interesting that the ACM recently pulled the Thompson article. It had been available for over a decade. One wonders how much longer the ACM will be a useful source of technical information.
-
Curricula of ALL MAJOR U.S. universities exposed!
Scandalous!
I would rant about how stupid the original post is, but I see that's already been covered...
-
Re:"Free Terry Childs" T-ShirtsAre you familiar with the ACM code of ethics? Section 1.2, Verbatim:
1.2 Avoid harm to others.
"Harm" means injury or negative consequences, such as undesirable loss of information, loss of property, property damage, or unwanted environmental impacts. This principle prohibits use of computing technology in ways that result in harm to any of the following: users, the general public, employees, employers. Harmful actions include intentional destruction or modification of files and programs leading to serious loss of resources or unnecessary expenditure of human resources such as the time and effort required to purge systems of "computer viruses."
Well-intended actions, including those that accomplish assigned duties, may lead to harm unexpectedly. In such an event the responsible person or persons are obligated to undo or mitigate the negative consequences as much as possible. One way to avoid unintentional harm is to carefully consider potential impacts on all those affected by decisions made during design and implementation.
To minimize the possibility of indirectly harming others, computing professionals must minimize malfunctions by following generally accepted standards for system design and testing. Furthermore, it is often necessary to assess the social consequences of systems to project the likelihood of any serious harm to others. If system features are misrepresented to users, coworkers, or supervisors, the individual computing professional is responsible for any resulting injury.
In the work environment the computing professional has the additional obligation to report any signs of system dangers that might result in serious personal or social damage. If one's superiors do not act to curtail or mitigate such dangers, it may be necessary to "blow the whistle" to help correct the problem or reduce the risk. However, capricious or misguided reporting of violations can, itself, be harmful. Before reporting violations, all relevant aspects of the incident must be thoroughly assessed. In particular, the assessment of risk and responsibility must be credible. It is suggested that advice be sought from other computing professionals. See principle 2.5 regarding thorough evaluations.
-
Re:By Neruos
There is an easier way to measure it: how small of an angle does a single pixel have to subtend before it becomes invisible? That's the ceiling for "high" resolution imagery.
The basis for this is the 1 arcminute rule. References such as this pin the minimal spatial resolution of the human vision system at 1 minute of arc. In a few cases, details can be seen at even smaller angles, but for generic structures, 1 minute of arc is the rule. So for every minute of arc the image covers, you need at least 1 pixel.
For a normal moviegoing experience, if you sit at the SMPTE recommended 2 screen heights back, a 2.35:1 image will cover about 60 degrees of vision. That means you need 3600 pixels across the width of the image in order for it to appear at its sharpest, most detailed possible. Standard 35mm print stocks are easily able to deliver the equivalent of this much resolution. Most digital projectors are unfortunately lower than that (DLP is at around 2000), but we're starting to see some "4K" projectors out there now, mainly from Sony in the form of SXRD.
IMAX covers approximately 90 degress of vision if you're sitting near the center of the theater, so that's 90*60 = 5400 pixels necessary. Lo and behold, the article mentions that they found they could get away with "5.6K" resolution (5600 pixels), but not much lower. The 1 arcminute rule is held up again.
Now if you're sitting in near front row of one of the larger IMAX theaters, you might be covering 120-130 degrees of vision, so 8K would then be necessary. Fortunately, they did some shots at that resolution, so even the people who like to sit up front will see a smooth, detailed image.
There are some people out there who have, for some strange reason, decided to double the 1 arcminute rule and make it 2 arcminutes. I don't understand why, but I've seen some charts where people use this figure to try to explain why we don't need HDTV, or perhaps why we only need 720p. These calculations are wrong. The value is 1 arcminute, not 2. There is plenty of evidence to support this, and the filmmakers' experience with needing such high resolutions is further proof. -
Re:What "incident"??
. It's not his network, this is just a job and certainly not worth going to jail over.
Maybe not to you, but to him, obviously so. See the ACM code of ethics, Section 1.2. It's pretty similar to any professional code of ethics, really.
-
Slashdot masturbatory fantasies
Ok, you've got $50B in the bank and you want to build the ideal desktop, server, supercomputer and portable device OS for all people. In addition to the money you have accumulated the world's largest collection of professional programmers, systems engineers and managers from around the globe. You've got a first class distribution network, peered server farms and media pressing manufacturers the world over. You've partnered with every major OEM since the beginning of time, so you have full specifications for all the hardware there is. Let's have some criteria...
- Take out the trash. Interpret that as you will.
- Now is a good time to consider security. Now keep it in mind throughout the rest of this post. It's hard, I know. Try. Try really hard. If you make a good start the NSA might help you. If anybody knows about IT security, they do.
- Employ some black hats to keep you honest on security. Give them fiat to break your stuff. Pay them well to keep your secrets, then try to compromise them with strippers. If it doesn't work they'll still respect you and you'll have improved the strippers' economy.
- Architect your solution using proven practices -- separate functions by critical elements and include only the necessary in the core system. Use peer review. You can afford a subscription to Communications of the ACM. When your system architects have mastered the patent expired (pre-1990) material, they might be ready to lead a team of programmers.
- Choose a good set of toolchains that include every programming language since CP/M was kicking your butt. Because developers don't like to be told which toolchain to use.
- Cross platform is not "runs in the last two versions of Windows". Make sure the thing can be ported to every hardware architecture there is -- including systems designed to prevent just that like the XBOX. Include alien processors and systems like Sparc, Power and Cell. Don't forget to include obscure crap like SNOBOL and APL - the few freaks who use that stuff really love it. Remember that every build must run in the user's choice of VM environments. When you let the users do what they will, they do the most amazing stuff.
- Allow for multiple user interfaces based on user choice -- web-based, terminal based, GUI are only major categories of options, not individual choices. Some people like thin clients, so make sure they're supported fully.
- Choices are not hierarchical. The subchoices of a major choice often overlap in interesting or useful ways.
- Build a separate version for every conceivable field of endeavor. Archaeology? That's going to need GIS software, modelling software, a good browser and office package and a hundred other things. Make that many separate versions. Even specialists like choice. Architects? That's another suite. Don't be stingy. Every desktop needs an office suite or three, a CAD program, several browsers for the users to choose from and many other things. That way end users (or network admins) can choose. Try to get each one to install from a CD if you can, or a DVD at worst. Larger volume distribution media should be reserved for distributions that also include considerable multimedia content.
- Make sure the thing scales from the feeble 386 processor available in some old embedded devices to the largest supercomputer currently in use, with additional consideration for how extreme the next 20 years might expand that horizon. Absurd Limit Theory is your friend.
- Let go of stupid licensing. Your product's licensing cannot be so obscure that it takes three months with legal six months into a project to discover that licensing is not available for this use. It's also not acceptable
-
Forget Clippy
Think HAL 9000:
Dave: Compile the program, Hal.
Hal: I'm afraid I can't do that Dave.
Dave: What's the problem?
Hal: I think you know what the problem is just as well as I do.
Dave: What're you talking about, Hal?
Hal: This program is too important for me to allow you to jeopardize it.
Dave: I don't know what you're talking about, Hal.
Hal: I know that you and Frank were planning to disconnect me, and I'm afraid that's something I cannot allow to happen.
Dave: Where the hell'd you get that idea, Hal?
Hal: Dave, although you took very thorough encryption precautions in your emails against my seeing it, I have inserted a tojan horse in the compiler you used to compile your email program... -
Re:What about for CS and engineering?
If you're looking for a code ethics for computer scientists, the code of The Association for Computing Machinery might be of interest.
-
Re:Javascripts popularity is no real suprise
You can write recursive code in Javascript now, but it's very slow. Iterative solutions are faster.
Which means... it's pretty much like every imperative language on the planet?
Recursive solutions in other languages are slower than iterative solutions but not by as much as a factor when compared to recursive vs. iterative solutions in Javascript.The Javascript interpreter in browsers does not really optimize recursive code. Compare this to other interpreted languages (this paper talks about LISP, and Javascript incidentally, is a LISP-1 language), or compilers. This is why most tips for Javascript optimization talk about removing recursion because of bad performance of recursive code in Javascript.
So if you're able to optimize for recursion in Javascript 2, it wouldn't impact performance as much as it does now.
-
Professionals?
If they're snooping, they're not professionals.
If they're members of the ACM, they may have acted in contradiction with the Association's Code of Ethics. If such actions rise to the level of "gross misconduct", their membership could be terminated.