Domain: acm.org
Stories and comments across the archive that link to acm.org.
Comments · 1,502
-
Techniques generator
I didn't know what one of these is until google helped.
The basic idea appears to be that you bounce a signal off the enemy radar array to jam it or generate false images in it, and use genetic algorithms to optimize the signal (a waveform based on a genetically controlled polynomial it seems) based on what it returns.
The fighter jet would include an "ECM Library" of algorithms from which the radar man and the genetic algorithms presumably can select functions to create new waveforms.The way the article is written, it looks like fighter jets would also be somehow wirelessly hacking into enemy networks but I haven't seen anything in google about that. If there is anything like that, it would be cool if they could somehow "take over" enemy computing systems maybe via induced voltages somehow but the reality is probably more like hacking into a linksys router like some people have mentioned, i.e. war driving at Mach 1. You would have to be able to detect pretty sensitive return signals to know if you're having any effect and would seem like a pretty subtle mission for a fighter jet.
Military ECM concepts
Electronic Combat SystemsBasic concept
Development of successful electronic countermeasure (ECM) techniques against target track radars is a time-consuming and expensive process. Recently, Nunez et al. reported a genetic algorithm (GA) optimization method for ECM techniques generation; this paper outlines the current effort to implement the approach with an operational radar system and to establish a methodology for arbitrary ECM signal generation in a closed-loop system. While this effort employs GA, the method applies equally to other optimization techniques. After defining the GA fitness function for a generic range gate pull off (RGPO) technique, the ECM signal is implemented with a very fast digital arbitrary waveform generator. The RGPO signal is injected into the radar environment, and the tracking radar response is measured and scored for optimization. The method is suitable for more sophisticated ECM signals and will be studied in future work.
Improvement of ECM Techniques through Implementation of a Genetic Algorithm
Abstract : This research effort develops the necessary interfaces between the radar signal processing components and an optimization routine, such as genetic algorithms, to develop Electronic Countermeasure (ECM) waveforms under a Hardware-in-the-Loop (HILS) architecture. The various ECM waveforms are stored in an ECM library, where an operator selects the desired function to use with a particular system. This optimization works with modular components, compared to previous research that embedded a genetic algorithm into the Range Gate Pulloff (RGPO) waveform optimization loop, which can be interchanged based upon the operator's desired hardware/software testing setup. The ECM library's first entries contain the RGPO and Velocity Gate Pull-off (VGPO) signals, developed mathematically for multiple polynomial profiles representing realistic moving false targets. The Lab-Volt training system and jammer pod provided a validation medium for the developed RGPO and VGPO waveforms. These waveforms were optimized using a Simulink model of the Lab-Volt radar system and the MATLAB Genetic Algorithm (GA) and Direct Search toolbox, contained in Version 7.4 (R2007a), using a defined parameter set, specified for the RGPO
-
Or you'd just pay Chipworks to do it for you
Or you'd just pay Chipworks to do it for you
If they can put back together an EEPROM from a data recorder from the Swissair 111 crash where the chip was partially destroyed, they should have no problem whatsoever taking apart a USB key fob to get the data out. Plus their prices for something like this are generally less than the prize that was offered.
http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=00922915
...or if not the Canadians, give it to the Australians:http://portal.acm.org/citation.cfm?id=1363217.1363243
Or trojan the machine they plug it into and wait for it to be unlocked.
-- Terry
-
Re:Early preorders are already in from
Connelly Barnes at Princeton University, who did the "PatchMatch: A Randomized Correspondence Algorithm for Structural Image Editing" SIGGRAPH paper used by Photoshop:
http://www.cs.princeton.edu/gfx/pubs/Barnes_2009_PAR/index.phphas some nice video research here:
Video puppetry: a performative interface for cutout animation:
http://portal.acm.org/citation.cfm?id=1409077 -
Re:Ray tracing vs. RasterizationHere is the citation:
http://ieeexplore.ieee.org/Xplore/login.jsp?url=http://ieeexplore.ieee.org/iel5/4625376/4634600/04634631.pdf%3Farnumber%3D4634631&authDecision=-203I can look for you, but it would be on one of a half dozen drives sitting on my shelf.
I was surprised they took it out of public circulation. Now you have to pay for it, or be associated with an institute that has access of the above IEEE digital library.
You should check if you have a document delivery service at your college or university, since they tend to be able to find most anything.
In regards to your comment, divergence is only a problem for ray tracing due to branching with SIMD. But the upcoming GTX 300 is going to have a MIMD hardware architecture, and we will then enter the world of photorealism. There may be some issues for CUDA at first, but I gather OpenCL is more than sufficient for the task at hand.
Here are some good papers on the subject by NVidia:
http://www.tml.tkk.fi/~timo/publications/aila2009hpg_paper.pdf
http://portal.acm.org/citation.cfm?id=1413968The second link requires access through a university network or personal account.
In regards to your last comment, I believe light fields are more significant for volumetric displays. The day I get to play with an interactive volumetric display is the day I die a happy man.
If you are interested in light fields, check out:
http://gl.ict.usc.edu/Research/3DDisplay/
http://scripts.mit.edu/~raskar/lightfields -
Re:Way to stick it to the man!
Or "inet" or even more common, "Inet" which some BBSers insisted upon, because the word "Internet" was considered a proper noun.
Here is an article from 1995 from the ACM: http://www.acm.org/crossroads/xrds2-1/inet-history.html.
It's an article on Internet History. Notice the filename contains the word "inet" meaning "Internet".
Was Apple's first use of the "i" trademark before 1995? -
Ray Tracing Jell-O
They missed Paul Heckbert's classic SIGGRAPH 88 paper, "Ray Tracing Jell-O brand Gelatin".
-
Re:Oh, HIM
It is fine to argue with Jeff's software philosophy, his use of buzz words in his blog, or his politics. But he is not an idiot MBA who doesn't know his way around a PC. He is a Fellow of the ACM and IEEE (for his technical contributions in algorithms and computer networks). He was a researcher before he became a corporate exec (see his publications at http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/j/Jaffe:Jeffrey_M=.html/ and http://portal.acm.org/results.cfm?coll=portal&dl=ACM&query=Jeffrey+M.+Jaffe&short=1/).
-
Isn't he the guy who defends using goto statements
I do not think I could trust this guy with anything programming related. He surely would not have passed computer science 101 with my instructors.
-
Re:Use RAID6 not RAID5
I would definitely use RAID 6 and sleep easier at night. As disks increase in size the chances of a read error increase. It won't be long before RAID 6 is obsolete and we will be using triple parity RAID.
-
quite a bit of work on this
-
Let's do something even more useful
In addition to sending human-controlled robots to the moon, lets send along refineries and factories to produce solar panels. Then we can build thousands of square kilometers of the stuff on the moon from local materials at a very low cost and beam the energy back to Earth. Covering roughly 1% of the moon's surface area with present-day solar tech would yield on the order of 20TW, worth tens of trillions at today's energy rates and capable of meeting the world's energy needs.
I'm not sure how good this paper is, but it has some more details on the basic idea: http://www.acm.org/ubiquity/views/v7i28_kumar.html Certainly a more detailed study would be needed before really doing this to ensure there weren't any show-stopping problems (such as the one DOE/NASA undertook on the solar satellite idea, where they concluded it was not economically worthwhile with the lifting costs http://www.nss.org/settlement/ssp/library/doe.htm).
This path would be even better for science too, as it would create a permanent human presence on the moon instead of probably being a one-off mission. There would also be interest in creating a self-sufficient lunar economy so that Earth wouldn't have to keep supplying it. A robotic lunar colony capable of launching solar satellites and other craft would be of great value to both science and the economy.
We can do this with today's technology, as it's essentially a different approach to the old solar satellite idea.
-
I outperform any search engine
Low Cost High Performance Uncertainty Quantification
http://portal.acm.org/citation.cfm?id=1645421&jmp=cit&coll=portal&dl=ACM&CFID=62671076&CFTOKEN=92670385#CITKeywords:
Inverse Covariance Matrices, Stochastic Estimation, Iterative
Renement, Iterative Solvers, Quadratic Cost, Massive
Parallelism -
Here's the actual paper.
"Low cost high performance uncertainty quantification", full text available in PDF.
And, here's the abstract:
Uncertainty quantification in risk analysis has become a key
application. In this context, computing the diagonal of in-
verse covariance matrices is of paramount importance. Stan-
dard techniques, that employ matrix factorizations, incur a
cubic cost which quickly becomes intractable with the cur-
rent explosion of data sizes. In this work we reduce this
complexity to quadratic with the synergy of two algorithms
that gracefully complement each other and lead to a radi-
cally different approach. First, we turned to stochastic esti-
mation of the diagonal. This allowed us to cast the problem
as a linear system with a relatively small number of multiple
right hand sides. Second, for this linear system we developed
a novel, mixed precision, iterative refinement scheme, which
uses iterative solvers instead of matrix factorizations. We
demonstrate that the new framework not only achieves the
much needed quadratic cost but in addition offers excellent
opportunities for scaling at massively parallel environments.
We based our implementation on BLAS 3 kernels that en-
sure very high processor performance. We achieved a peak
performance of 730 TFlops on 72 BG/P racks, with a sus-
tained performance 73% of theoretical peak. We stress that
the techniques presented in this work are quite general and
applicable to several other important applications. -
Re:Clarification?
The conference proceedings are not online yet. So I am not sure. I could not even find the title of the talk on the conference web page
I know people who are at SIAM PP and they are all : "why are they talking about PP on slashdot ?". There was no major anouncement. I'll check the proceedings again next week, but I believe there is no major improvement. IBM is probably just trying to get some more light.
We can find the following IBM talks in yesterday page :
http://meetings.siam.org/sess/dsp_programsess.cfm?SESSIONCODE=9507
The paper have the same author and name than this paper published last year :
http://portal.acm.org/citation.cfm?id=1645413.1645421So they are probable publishing an improvement on their 2009 work.
-
Re:just trying to be relevant
Did you actually read the article?
Well, that's hard to do since there was no reference. But the guy seems to be talking about "Massively Parallel Low Cost Uncertainty Quantification". This is probably the same work as this:
http://portal.acm.org/citation.cfm?id=1645413.1645421
The work has nothing to do with energy savings, it's just about a fast, approximate algorithm for a fairly common operation.
Common sense tells you that spending 20 minutes to do something takes less energy than taking up to a day doing the same thing.
My point exactly. The whole press release is analogous to saying that you save a lot of energy by compiling with "-O0" instead of "-O4".
-
Re:Hardware?
TFA fails to state whether they used existing memory types or if they intend to use a custom piece of hardware on board.
My guess would be custom though not completely different from everyday stuff. I was familiar with "metastability" from my college courses where it was mentioned as a classic problem in electronics. I suppose there could be a way to harvest this data from hardware before it gets corrected. I never thought of this before but if you had a long length of optical fiber cable (longer than what it's rated for use) then you could send messages through that and collect them on the other end. I mean, we implement parity to remove these random flips of bits through transmission, couldn't we also use this to increase randomness of random numbers? I think I've read of the network guys fighting metastability so their incorrectly implemented hardware could probably be exploited as sources of random bits.
-
Other groups...
There are other professional groups that have insurance programs.
For instance, the ACM has insurance programs, though I don't know much about the cost or coverage. The IEEE has a similar set of programs, though it does not look like they have a straight health insurance offering. If you are going on your own, it might help to start a formal business - you might be able to get a small employer program.
You will spend a fair amount on medical care for kids, even if you just do the normal preventive care. The cost of a whole-family plan will reflect that. If I had a young family now, I would seriously consider a high-deductible plan. You pay for most of your own care, but the insurance is there in the event that you have major expenses.
-
Other groups...
There are other professional groups that have insurance programs.
For instance, the ACM has insurance programs, though I don't know much about the cost or coverage. The IEEE has a similar set of programs, though it does not look like they have a straight health insurance offering. If you are going on your own, it might help to start a formal business - you might be able to get a small employer program.
You will spend a fair amount on medical care for kids, even if you just do the normal preventive care. The cost of a whole-family plan will reflect that. If I had a young family now, I would seriously consider a high-deductible plan. You pay for most of your own care, but the insurance is there in the event that you have major expenses.
-
My boss gave me this...
201 principles of software development http://portal.acm.org/citation.cfm?id=203406 I found this useful. Cheers, and good luck!
-
Here's one
Build a JVM in it.
-
Jiaotong university topped the ACM
"Four Chinese teams and four Russian teams dominated the top 10 rankings of the 2010 ACM International Collegiate Programming Contest (ACM ICPC). Shanghai Jiaotong University took first place followed by Moscow State University in second place, and National Taiwan University in third place. "
From http://www.acm.org/press-room/news-releases/2010/icpc-2010
No wonder why they are so good.
-
foundations and attitude
In my experience the biggest problems are caused by self-taught programmers who lack the humility to realize that computer science and computing a large field, in which they are not domain experts of all of it. Seriously, I'm saying this not to be an insult, but as a plea for self-taught programmers to take their blinders off, and admit to themselves there is a lot of knowledge about computer science and computing (or IT), which has a rich if relatively short history. The ones who get pass the chip-on-their-shoulder defense often become very good to great programmers. The ones who don't tend to become isolated, confrontational, unable to handle constructive feedback or criticism, and tend to be poor team players.
The other big weakness they can have, is they seem more apt to have problem with NIH-syndrome (not invented here). Anything they didn't do or create is crap. Again this seems to be a self-defense mechanism gone astray.
If these two psychological factors are dealt with, the technical knowledge gaps are in comparison trivial to deal with.
In your case, exposure to higher education including post secondary mathematics, helps with the building the experience of abstract thinking which is a excellent trait or training for programmers, to deal with programming in both the concrete and abstract terms.
A programmer who knows and understands the fundamentals of computer science, including data structures, algorithms, number systems, boolean logic, at least a basic understanding of computer architecture in my experience tends to be more flexible and adaptable to change in computing / IT in general as well as able to less stressful to change development environments including languages. Structure and Interpretation of Computer Programs, Structured Computer Organization, and Introduction to Algorithms are excellent resources for any self-taught programmer looking to fill gaps in the knowledge.
Also professional computing / IT society memberships might be worth considering (especially if your employer will pick up the tab), for example the ACM, and the IEEE Computer Society. Both have a bent towards academia, but they largely due to the self-interest of authors in academia to publish (for their own career success), as opposed to a conscience focus away from the "real-world" programming in the trenches.
For any new professional programmer, texts like The Pragmatic Programmer, Code Complete, Peopleware, and The Mythical Man-Month are strongly recommended reading matieral.
-
Some suggestionsI was learning and coding on my own steam for about 15+ years. Then I joined the ACM (two years now) and my eyes opened. I am now about 1/3 though a B.Sc in CS (part time) and I'm also following a CPD program at another University. I have also joined the IEEE as I required access to more material for my studies. What I realized was that I should have done it from the start. So my advice is simply this: start to follow some part time programs and get the theory as well. I have learned in the last two odd years a lot on subjects like modelling, quality assurance, frameworks and architectures which I otherwise would not have known. I also found that the quality of my code has greatly improved since I now work in a much more structured way.
Experience helps, but the real killer deal is experience backed by a CS/Eng. degree.
-
Read And Love
Check out the excellent article Code Spelunking Redux: Is it getting any easier to understand other people’s code?, and learn to love Doxygen and DTrace (if your language is supported).
-
Re:Does he back up anything he says
Does your speaker have anything concrete with citations to back his assertions up, or is he happily dismissing one of the few genuine advances in software engineering in the last decade?
we found that the code developed using a test-driven development practice showed, during functional verification and regression tests, approximately 40% fewer defects than a baseline prior product developed in a more traditional fashion. The productivity of the team was not impacted by the additional focus on producing automated test cases. This test suite will aid in future enhancements and maintenance of this code.
-- http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.129.7992&rep=rep1&type=pdf
A Spring 2003 experiment examines the claims that test-driven development or test-first programming improves software quality and programmer confidence. The results indicate support for these claims
-- http://portal.acm.org/citation.cfm?id=949421
Experimental results, subject to external validity concerns, tend to indicate that TDD programmers produce higher quality code because they passed 18% more functional black-box test cases.
We observed a significant increase in quality of the code (greater than two times) for projects developed using TDD compared to similar projects developed in the same organization in a non-TDD fashion.
-- http://portal.acm.org/citation.cfm?id=1159733.1159787
My apologies for the rough and ready citations, I only picked the ones I could find on the first fucking page of Google search results.
-
Re:Does he back up anything he says
Does your speaker have anything concrete with citations to back his assertions up, or is he happily dismissing one of the few genuine advances in software engineering in the last decade?
we found that the code developed using a test-driven development practice showed, during functional verification and regression tests, approximately 40% fewer defects than a baseline prior product developed in a more traditional fashion. The productivity of the team was not impacted by the additional focus on producing automated test cases. This test suite will aid in future enhancements and maintenance of this code.
-- http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.129.7992&rep=rep1&type=pdf
A Spring 2003 experiment examines the claims that test-driven development or test-first programming improves software quality and programmer confidence. The results indicate support for these claims
-- http://portal.acm.org/citation.cfm?id=949421
Experimental results, subject to external validity concerns, tend to indicate that TDD programmers produce higher quality code because they passed 18% more functional black-box test cases.
We observed a significant increase in quality of the code (greater than two times) for projects developed using TDD compared to similar projects developed in the same organization in a non-TDD fashion.
-- http://portal.acm.org/citation.cfm?id=1159733.1159787
My apologies for the rough and ready citations, I only picked the ones I could find on the first fucking page of Google search results.
-
Re:Chop features.
Make sure to read Orson Scott Card's How Software Companies Die (commonly known as "Programmers and Bees"). This sort of over-refinement of estimation is not only pointless (in that it presumes far greater association between the past and the future than is likely to exist), it's destructive to the goal of making good software in a reasonable time-frame (if that is still the goal).
Some element of the planning and development process has to bake down to trust and awareness. If a dev says that something will take an unreasonable amount of time, a good project manager should be able to smell the BS and, more importantly, recognize that the dev might be sand-bagging a feature he/she hates. That dev might, in turn, actually take that long to do it. If you have cultural and motivational problems, no amount of process refinement is going to help. It's just going to drive the competent developers away and leave you with a slow death-spiral of longer estimates and crappier software.
High, low, medium risk? When I hear people baking things into categories, that's fine. When I see them plan schedules from the information reduced into categories (instead of cycling back and asking devs), the bozo-bit gets flipped. Aggregability is NP-hard, and it's important to remember that you're not going to be able to bake something as complex as software down into a weekend management seminar. If I could give one piece of advice to managers and devs looking to get better estimates, I'd say: "Go with your gut. As you get better at it, and your team gets better at working together, your intuitive estimates will get an order-of-magnitude better than the estimates that would have been derived from an over-simplified system. If you try to commoditize software, you get whatever the market will bear."
-
Re:How do you know when it's decrypted?
You made the contention that additional traffic is added to prevent traffic analysis. That simply is not true in any of the typical military encryption setups. Not for networks, radio coms, or any other communication methods I work with.
I can believe this, and my initial claim that you didn't know what you were talking about was clearly wrong. But, just because the systems that you have worked with are not designed to resist traffic analysis does not mean that no there are no such systems.
A couple of examples (the idea of link encryption to defeat traffic analysis is textbook stuff, but sadly none of the authors that I checked actually included references). The application that sprang to mind originally is Xor-Trees designed to resist traffic analysis and provide data secrecy for command and control links. A weaker example that tries to prevent analysis without full utilisation of the link is the randomised approach in FreeNet.
Another example that I can't find a citation for is some VPN products max out the link constantly to avoid traffic analysis. My own background used to be the telecoms world, so I'm using a slightly difference meaning of link level to you. In that world you do actually encrypt the circuit, either padding with random values, or relying on a cipher that doesn't reveal the presence of an empty stream (e.g AES in CBC).
-
Counter-argument by Vixie in ACM Queue
The argument against this proposal appeared in Paul Vixie's "What DNS Is Not" published in ACM Queue. See
http://queue.acm.org/detail.cfm?id=1647302
The section heading "Stupid DNS tricks" sums up the article.
Paul is the long-time maintainer of BIND, the most popular DNS server. -
What DNS Is Not
This all sounds totally crazy if you're Paul Vixie and have written a little article titled What DNS Is Not which specifically mentions that it shouldn't be used for this.
How quickly we forget.
-
Re:Are nerds not aware
-
Re:Traceability
It sounds they need to be using AML (Argument Markup Language). In fact, maybe we all need to be using AML. The world would be a better place.. http://portal.acm.org/citation.cfm?id=1430079
-
Re:Intel and LG Team Up For x86 Smartphone
Part of the plan would surely involve getting into the IP core business, like ARM. AMD are doing it, and some Intel researchers already have a prototype.
-
We Need Geek Culture
The problem with anecdotal evidence, is that people arguing the exact opposite point can pull out a dozen examples too. In this article John Derbyshire pulls out a dozen examples of why Obama is trying to kill science in the United States. It's not convincing to anyone who knows about National Lab Day, Educate to Innovate STEM initiative, Computer Science Week, data.gov, and the Policy Forum on Public Access to Federally Funded Research... but this is all anecdotal too, a better resource would be an overview of all the projects being funded by the stimulus package or trends in government funding of scientific research.
However, I do completely agree that Tyson is being unfair to the American government. In fact, this is the same guy who previously argued Republicans were doing a great job of funding American science. The real issue here, and the one we are dealing with most in computer science, is American Culture's antipathy and outright contempt for science and academia. Kids aren't going into Computer Science, Physics, Chemistry, etc, because they are afraid of being associated with "geeks." The kids all want to be gangsters, models, and sports stars... not realizing how unrealistic those dreams are and that only a miniscule percentage of people succeed in those arenas.
We need a culture change, we need to be proud geeks and make others envy us. It'll help us out in the long run.
-
Prior art, surely...With half a minute of google searching, I found half a dozen references to experiments already using Electromyography to drive computer behaviour.
I remembered that most of the new work on prosthetic arms these days focuses on using EMG to drive the arm behaviour (including Dean Kamen's new bionic arm), and there's a bunch of stuff done (and papers released) with driving the mouse for people with disabilities.
Surely this patent application has to be thrown out, and isn't Microsoft just wasting the Patent Office (and our) time with applications that are so easily shown to have been demonstrated before?
Look Ma, No Pen! Electrical Impulses Can Reproduce Handwriting
SmartHand: Merging Mind and Machine
Application of facial electromyography in computer mouse access for people with disabilities
Demonstrating the feasibility of using forearm electromyography for muscle-computer interfaces
Electromyography sensor based control for a hand exoskeletonWhat's the original part here? The patent application does not specify any specific software application (just talks about interpreting the signals), so all the prior art should hold.
-
Try Scratch
It's visual, promotes imagination, and has a fantastic online community where your kid can share his project, get feedback, ask for advice, etc. http://scratch.mit.edu/ great article from ACM to whet your appetite: http://cacm.acm.org/magazines/2009/11/48421-scratch-programming-for-all/fulltext good luck!
-
Re:Ask.com
I don't think their search boxes not being big enough is the main improvement they need to work on.
In fact, there is empirical evidence that supports your idea: the average web search query is about 3 words long (depending on which search engine was examined, this varies +- 1 or so).
For example, see this paper: http://portal.acm.org/citation.cfm?id=281250.281253&coll=ACM&dl=ACM&CFID=68253875&CFTOKEN=24736044
-
Google Scholar
I went to google scholar, typed in "museum technology children" and this link:
http://portal.acm.org/citation.cfm?id=503376.503430&type=series
was on the first page. The second and third pages have more interesting potential as well. There's a whole area of research on museum education as well as journals both practical and theoretical. I'm sure there's stuff out there that can help.
Posts on slashdot are all exciting and interesting and stuff, but journal articles and other sources are peer-reviewed and typically written by people with real expertise in the field (e.g., Ph.Ds)
-
a few related works
The debate 'overlapping vs tiling' is as old as window managers [1]... And novel interaction techniques have been explored in 2001, though we are far from the ideas presented in the second paper [2], check the video http://open-video.org/details.php?videoid=8280
...cheers.
[1] Myers, B. A. 1988. A Taxonomy of Window Manager User Interfaces. IEEE Comput. Graph. Appl. 8, 5 (Sep. 1988), 65-84. DOI= http://dx.doi.org/10.1109/38.7762
A taxonomy for the user-visible parts of window managers is presented. It is noted that there are actually very few significant differences, and the differences can be classified in a taxonomy with fairly limited branching. This taxonomy should be useful in evaluating various window managers, and it will also serve as a guide for the issues that need to be addressed by designers if future window-manager user interfaces. The advantages and disadvantages of the various options are presented.[2] Beaudouin-Lafon, M. 2001. Novel interaction techniques for overlapping windows. In Proceedings of the 14th Annual ACM Symposium on User interface Software and Technology (Orlando, Florida, November 11 - 14, 2001). UIST '01. ACM, New York, NY, 153-154. DOI= http://doi.acm.org/10.1145/502348.502371
This note presents several techniques to improve window management with overlapping windows: tabbed windows, turning and peeling back windows, and snapping and zipping windows.
http://open-video.org/details.php?videoid=8280 -
Re:I'm not convinced at all
Okay, as the person who wrote that tutorial, I'd like to let you in on a few things. First -- I wrote it for my non-CS (third-year university student) majors who, in the course of 16 weeks, were able to use Rev to make interactive multimedia and computer games, and that, far superior to what their CS major colleagues were able to create. Second -- Try that with C++ or Java. Or even Flash. Goodluckwiththat. 16 weeks. Third -- Show me what your typical "geek" does after an introduction to programming in 16 weeks. Oh, and it needs to be cross-plat. Doublegoodluckwiththat. And they need to learn how to use audio editors, video editors, image editors... how to do animation... basic game and interactive system design, and user interface basics, all in the same 16 weeks. Right. Not happening, my friend.
Secondly, in terms of learning to program, you are clearly ignorant. Go through the ACM literature on the subject. Here -- let me help you: http://portal.acm.org/dl.cfm Here's a few references:
Mayer, R. (1981). The Psychology of how novices learn computer programming. ACM Computing Surveys 13(1), 121-142.
Smith, D., Cypher, A. & Schmucker, K. (1996). Making programming easier for children. ACM Interactions 3(5), 58-68.
Bonar, J. & Soloway, E. (1983). Uncovering principles of novice programming. Proceedings of the 10th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages, 10, 10-13.
Green, T. (2001). Instructions and descriptions: some cognitive aspects of programming and similar activities. Proceedings of the working conference on advanced visual interfaces, 21-29.;
Barr, M., Holden, S., Philipps, D. & Greening, T. (1999). An exploration of novice programming errors in an object-oriented environment. SIGCSE Bulletin 31(4), 42-46.
Neal, L. (1989). A system for example-based programming. CHI'89 Proceedings, 63-68.
Guzdial, M. (1995). Centralized mindset: a student problem with object-oriented programming. SIGCSE'95, 182-185.
Ramadhan, H. (1992). An intelligent discovery programming system. Proceedings of the 1992 ACM/SIGAPP Symposium on Applied Computing: technological challenges of the 1990's, 149-159.
Decker, R. and Hirshfield, S. (1990), A Survey Course in Computer Science using Hypercard. Proceedings of the twenty-first ACM-SIGCSE technical symposium on computer science education 22(1), pp. 229-235.
-
How about the Turing award instead?It is the most prestigious award in Computer Science. Here is what it is given for:
It is given to an individual selected for contributions of a technical nature made to the computing community. The contributions should be of lasting and major technical importance to the computer field.
It isn't as famous as a Peace Prize, but it does recognize real accomplishment.
-
Re:Go!
He published in "Annals of Mathematics and Artificial Intelligence" and it's cited in the ACM portal. Who cares what Wiki has or doesn't have.
This wasn't some geocities page with talk about a language that was never developed.
-
It's not about basic politeness
Google did this out of ignorance about a language that doesn't look like it's been updated in over 2 years. From the looks of it, the guy hasn't publicly updated his code for Go! in over two years. Do a google search for "Go! programming language" and the only result for his work in the first two pages (where most people look) is a single ACM citation.
You know what Google should do? Offer him an interview with the presumption of being hired to work on their version unless he proves unqualified (unlikely, given the cover similar spaces) and maybe a cool wad of cash to smooth out any IP issues. For a language that has apparently never risen above a research project, even $25k would be sufficiently just compensation for him to renounce any IP claims against Google and go about his merry way. -
Re:Google search "Go"
There's already a Go! programming language for that matter. You'd think Google would have Googled Go. http://portal.acm.org/citation.cfm?id=998367 http://www.lulu.com/content/paperback-book/lets-go/641689
-
Re:"Go" name already taken for programming languag
No, his is simply "Go!" with an exclamation. See: http://portal.acm.org/citation.cfm?id=998367
Google is screwed, they'll need to change their name for this language or buy this guy off. If they ignore this guy they'll look like a bully.
It's amazing no one at Google did a search go "Go Programming Language"
-
Re:bad design
The real issue I have with the NoSQL people is they're a bunch of whiny babies, who haven't even taken the time to understand the problem before lashing out at the first thing they see.
Yeah, some NoSQL advocates are certainly like that, but do you know what's even worse? The whiny ACID-babies who haven't taken the time to understand the problems that most NoSQL systems are really trying to solve, and are just deathly afraid of having to learn something besides their comfortable RDBMS-tweaking ways. Things really do get a bit different when you have petabytes spread across multiple sites, where even millions spent on Oracle licenses won't really yield a solution. A lot of this work is based on Eric Brewer's CAP Theorem, which was presented as a keynote at PODC in 2004 and has since been formally proven. How's that for a bunch of folks who didn't know what's already out there? Brewer's work was in turn informed by Lamport's (e.g. vector clocks and eventual consistency), who in turn built on others going back at least as far as Codd and the relational model. The simple fact is that you can't have all of C/A/P, some people legitimately value A/P more than C, and C (consistency) in this context includes the I (isolation) of which you seem so enamored. Stonebraker already made the point that this has nothing to do with SQL, and much better than you, but it does have to do with ACID and ACID is simply irreconcilable with some needs. Raising facile objections to the name is a poor substitute for tackling the real issues.
I've written about the cargo cult mentality myself, even in this particular context, anticipating your remarks by at more than a month. Someone here has indeed not taken time to understand the problem before lashing out: you. Please get over the puerile attitude that different knowledge must be inferior knowledge, and educate yourself a little.
-
Re:Bill Gates is a geek?
Perhaps, but it doesn't compare with "A Unified Approach to Program Optimization", which is cited by 161 papers and books, including, BTW, the Dragon Book.
-
Re:This is great !
Oops, wrong link, Megiddo's paper is here.
-
Re:This is great !
There is actually an entire model of computation dedicated to parallel computation: the PRAM model. Lots of nifty algorithms have already been designed for the PRAM model of computation (O(log n) sorting, for instance). What's even cooler is that some of these algorithms have given insights that have then been used to provide speed ups in the RAM model (eg. read Megiddo's "Applying Parallel Computation Algorithms in the Design of Serial Algorithms").
-
Re:DNS is the problem
It gets worse. In 2007, Paul Vixie wrote an article in ACM Queue basically praising the vagueness of the DNS protocol specifications:
From this overview, it is possible to conclude that DNS is a poorly specified protocol, but that would be unfair and untrue. DNS was specified loosely, on purpose. This protocol design is a fine example of what M.A. Padlipsky meant by “descriptive rather than prescriptive” in his 1984 thriller, The Elements of Networking Style (Prentice Hall). Functional interoperability and ease of implementation were the goals of the DNS protocol specification, and from the relative ease with which DNS has grown from its petri dish into a world-devouring monster, it’s clear to me that those goals were met. A stronger document set would have eliminated some of the “gotchas” that DNS implementers face, but the essential and intentional looseness of the specification has to be seen as a strength rather than a weakness.
Correlation does not imply causation.
DNS didn't grow to be huge because it was designed loosely, it happened to grow big because coincidentally the Internet took off and become huge, and the Internet happened to use DNS. It would be a bit of a stretch to say that the Internet become the size it is today because one of the many underpinning protocols and standards was loosely specified.
The Internet could have used any number of alternate name lookup systems, and it would have grown to its current size just fine. The only element of DNS design that really helped at all was its hierarchical nature, which helped it scale.