Innovation on the Edge? 229
MCassatt asks: "It's a truism in many fields that breakthroughs come from the edge: the scandalous Impressionists become pretty pictures for posters and umbrellas; the world of science fiction becomes the world of science.
The wonderful, the fantastic, and the mad of today are tomorrow's mainstream. Are there examples of this in computer science? Not extreme programming, but extreme programs?"
Extreme programs (Score:5, Insightful)
Bit Torrent [bitconjurer.org]
Freenet [sourceforge.net]
Reiserfs [reiserfs.org]
Linux Kernel [kernel.org]
Open SSH [openssh.org]
Encrypted Filesystems [sourceforge.net]
GnuPG [gnupg.org]
At least in my opinion p2p and crypto are the edges in coding right now. Both can be hugely successful if you succeed in writing them properly. They can also be a huge failure if done improperly. Personally, I'm amazed that there aren't more p2p worms/remote exploits out there. Every now and then there are a few breaks in crypto from a weird angle, but in general they have been very successful as well.
Re:Extreme programs (Score:5, Insightful)
Re:Extreme programs (Score:2, Insightful)
When I look for innovative, I look for something no one has done before.
Re:Extreme programs (Score:2)
Re:Extreme programs (Score:2)
Examples of what I consider "mainstream": Until my brother and sister routinely send me PGP/GPG encrypted email, it's not mainstream. Until my In-Laws routinely send recipies via Bit Torrent, it's not mainstream. Until I can OpenSSH from work to my home computer (banned by my ISP, Comcast), it's not mainstream. Note that
Minesweeper. (Score:5, Funny)
Re:Minesweeper. (Score:2)
err...
Clippy!!!
hello...? hellooo?
Google Labs (Score:5, Interesting)
DMS (Score:5, Interesting)
DMS is the US Government's international secure email implementation. At a glance it looks like a bunch of crappy obsolete code and operating systems trying to do email, but when you stop and think about what is DMS is doing, it is pretty damned impressive.
That's what theoretical CS is all about (Score:5, Insightful)
Re:That's what theoretical CS is all about (Score:3, Interesting)
In most cases it was a huge leap between research and the implementation that made it actually useful. Innovations in the course of a "simple matter of programming" are more often intuitive understanding that only later is justified by research, sometimes prior but unknown research.
Meantime, 99.9% of what comes out of theoretical labs is c
Re:That's what theoretical CS is all about (Score:2)
Note to such: if you think you're a crazy genius, recall that the former outnumber the latter by about 400 to 1
That's about a 3-4 orders of magnitude understatement, at least
Re:That's what theoretical CS is all about (Score:3, Insightful)
Computer scientists don't live in a vacuum. Most of the computer science researchers I know have particular real-world problems that they are trying to solve. Sometimes they also have intent of directly commercializing the stuff, sometimes they leave that to others .. but in almost every case I know of, they are aware of the problems they are trying to solve and are very aware of at least some of the potential real-world applications.
Re:That's what theoretical CS is all about (Score:2)
All the innovation I see come from people who actually write code instead of talking about it. Many of these people have no formal
Virii (Score:5, Insightful)
Re:(computer virii == program) != life; (Score:2)
A virus (organic one) has no bowel. It digests nothing. It doesn't eat, it just replicates. That's all it is - a self replicating genetic code. You could just as well argue that a virus isn't alive, and that would be a reasonable argument. There is no clear definition of life. Some people have even argued that crystals are alive. Whether a computer virus is alive or not depends on your definition of li
Re:(computer virii == program) != life; (Score:2)
By the same reasoning a computer virus should not be considered as alive, since they need a external host to replicate themselves. In this case the computer, or being yet more specific a
Re:Virii (Score:5, Informative)
Re:*BZZZZ* Wrong! (Score:2)
Palladium (Score:3, Insightful)
The question of what is on "the edge" can be answered by how much controversy the thing recieves - Something accepted by all will be mainstream, "the edge" denotes a radical departure and whenever there's a radical departure there's going to be quite a few people complaining about it.
It would seem to me that this whole palladium situation is the most controversial software project in a while, so it could probably be termed "on the edge", too.
computer science is weird (Score:3, Interesting)
Computer Space (Score:5, Informative)
Re:computer science is weird (Score:2, Insightful)
Yes you do! Examples?
1) Pointless to mention that a lot of, if not all CS is based on mathematics/logic/physics...
2) OOP: the concept of classes and specialization is a standard in semantic analysis at least going back to Aristotle. The hierarchy of classes was developed by the semioticians of the middle ages (or Bertrand Russell in the beginning of the 20th century...). Gottlob Frege (modern logic and class the
Re:computer science is weird (Score:2, Informative)
Huh? There are thousands of researchers working dilligently every day to figure out how "computer space" works. Computer science is a very young field, and at present, we are unable to answer even the most basic of questions concerning the nature of computation and its relation to time, space, information, rand
Voice recognition (Score:2, Insightful)
Re:Voice recognition (Score:2)
It would be more efficiant and natural to have a system that detects a specic movement/action and turns that into an event.
example: instead of saying lights on, you would just make a flicking motion in the air, and the light come on.
Studies are starting to show the people find it uncomfortable and un natural to speak into the air.
Of course giving a computer cammands via voice in an office enviromant would just drive everyon
Re:Voice recognition .... CTS? (Score:2)
Foes tha anology hold.... (Score:4, Funny)
I dunno... impressionist programing? It would only look like code from far away.
Besides, Microsoft already makes programs that look useful from far away but crappy close up.
Re:Foes tha anology hold.... (Score:2)
I dunno... impressionist programing? It would only look like code from far away.
Ohh that would mean PERL!!!
Isn't it where all the innovation comes from? (Score:3, Insightful)
Re:Isn't it where all the innovation comes from? (Score:3, Insightful)
Look at if from a couple different levels (Score:2)
Fundamental DIfference (Score:2, Insightful)
Conway's Life - Turing Machine (Score:5, Interesting)
Sweetcode [sweetcode.org] often has interesting pieces of programming too.
Computing on the edge (Score:2)
(I'm joking. I have a firewall and I am actually getting portscanned right now - wheeee)
Re:Computing on the edge (Score:2)
Kai's Power Tools & User Interface (Score:3, Interesting)
Our philosophy while writing those programs was based on the observation that existing UI paradigms were created for processors hundreds of times slower than current machines; why not leverage that power to create interfaces beyond the standard buttons, menus, and 16x16 pixelated cursors?
Say what you will, the OSX Dock (for example) is indisputably Kai-like. I think that's a good thing.
Re:Kai's Power Tools & User Interface (Score:2)
Clustering software (Score:4, Interesting)
The best examples of "Extreme Programs"? (Score:4, Insightful)
My votes would be for the following
Re:The best examples of "Extreme Programs"? (Score:2)
What about GCC itself shaped anyone?? (Score:2)
Re:The best examples of "Extreme Programs"? (Score:2)
GCC?!?!?!? You are aware that it wasn't the first C compiler right? That at it's introduction, others were clearly superior? That, while some might argue it, it's a pretty tough sell that it has ever been the best at what it does. The advantage is the license. The program is a reimplementation of something that already existed.
Re:The best examples of "Extreme Programs"? (Score:2)
Xtreme Programz! (Score:5, Interesting)
Avalon, Aspect Oriented Programming (Score:5, Informative)
Check out the Avalon [apache.org] project. If is a framework encompassing the ideas of Component Oriented Programming [apache.org] and Separation of Concerns [apache.org].
Also, read about Aspect oriented Programming [aosd.net], which "modularize[s] crosscutting aspects of a system" by allowing a programmer to specify "aspects" of a class or component such as logging, security, remotability, and more.
Re:Avalon, Aspect Oriented Programming (Score:2)
As a matter of fact, I would argue the opposite. Any experienced programmer who is not using a "framework" or thinking about design patterns is a hack who is shortchanging his management and/or customers. Without the "meta-coders" you so malign, the software industry would be in a much worse state than it already is.
Oh, and I am a committer on the Apache XML-RPC [apache.org] project, which is written in Java.
Re:Avalon, Aspect Oriented Programming (Score:2)
Generics are planned for Java 1.5, and a beta compiler is already available.
Re:Avalon, Aspect Oriented Programming (Score:2)
It may not be a new idea, but it is being used in new [jboss.org] and interesting [utwente.nl] applications.
Re:Avalon, Aspect Oriented Programming (Score:3, Interesting)
Combine this with Pascal Costanza's rather recent (he just revealed it this week) discovery [google.com] that dynamically bound functions (it's not a CL standard, but he p
Re:Avalon, Aspect Oriented Programming (Score:2)
I do a lot of Java programming, and I can say with some confidence that people who think that Java is the best OO language ever need to get out more.
But I can deal with Java because I understand its basic theory. The notion is that the people who made it are so much smarter than you or I that they needed to keep what they thought of as danger
Re:Avalon, Aspect Oriented Programming (Score:2)
I'm dubious anything can possibly put a lower bound on code quality. In any case, I've dealt with a couple of big Java projects where the code quality was significantly under the "easier to throw it away and rewrite it" threshold, below which it really doesn't matter.
Assuming it's an actually running code base, I'd rather it be in C++. The original programmer might have been too briliant for his own (or my) good, but there's much less c
Re:Wath about Java ? (Score:2)
The one application that comes to mind. (Score:3, Insightful)
Once Personal computers came out, and Lotus came up with 1-2-3, the economics of volume production became powerful enough that costs dropped to the point that personal computers became useable for other activities (word processing was already being done on mini and main frames, so it doesn't count, databases have been on mainframes for a very long time, etc.)
Eventually costs got to the point where users could afford a computer simply to play games on. Of course then Games got to the point where a good gaming machine costs more than an excelent business grade PC.
-Rusty
Re:The one application that comes to mind. (Score:2)
Some people may argue that PDA's are a significant inovation. All a PDA is, and really ever will be, is a portable computer that is capable of presenting a Personal Information Manager of some sort. PIMs have been around since at least the early 80s.
Variations on the PIM concept existed as notes a programmer would put in his own source code to do certain things at certain times, as well as calander and address book applications on various OS's including Unix from the e
Re:The one application that comes to mind. (Score:2)
Hmm. I would only add that having run Spreadsheet courses at the time, in between PC support / programming / etc, the reaction of people was "I want one of these (PC) cos these spreadsheet things are so useful", but what they really meant was "I want one of these PC things because they are so much fun, and spreadsheets gives me an excuse to put to my wife." Rationalisation, that fueled an industry ... but hey, I was guilty of it myself.
I'd say (Score:3, Insightful)
David Brin's Earth (Score:2)
The WWW and Net were information systems I lusted over in David Brin's Earth, and 10 years later I'm living in the middle of it. I'm not saying the Earth is going to wake up and talk to us, but the did anticipate the Net well. Now if only we could implement his idea that you have to subscribe to a news feed to get the vote...
Similar
Simulating the human psyche (Score:2)
"The Sims" is a very crude glimpse of this, but there's almost no 'psychology' in The Sims, and the sorts of science you learn in psychology class are almost entirely useless for this purpose.
So one extreme 'fringe' involves wrestling with the literary side of behavior, trying to analyse and classify the real behaviors people d
my psychic predictions... (Score:2)
As far as mindless tasks go, there are plenty of applications for computing all around us: automating our work, controlling our living environments, checking what's in the fridge. A lot of this will be networked microchip stuff that will tie into a central computer somewhere to visualize them. A lot of it will be
The edge is *beyond* these suggestions (Score:4, Insightful)
These are known by mainstream techies today.
Think instead of what these techies do *not* know.
Remember when you first saw email or a web browser?
These apps changed *so* much in our world.
Think in that arena.. what could change so much?
Cheers, Joel
Extreme programs? (Score:5, Insightful)
Let's review, shall we?
VisiCalc ...and its successors spawned a trillion dollar industry, made Steve Jobs a billionaire, and almost singlehandedly eliminated the profession of "bookkeeper".
WordPerfect ...ditto for the profession of personal secretary. Only executives use them now.
Mosaic ...let's see. Trillion dollar industry, hundreds of business models, hundreds of thousands of businesses, millions of lives and careers changed... seems pretty extreme to me.
I could go on, but you get the idea...
WordStar, not WordPerfect (Score:2)
WordStar was the big killer app when word processing first became a big deal. WordStar killed themselves through some stupid decisions. (They admited their interfaced sucked, and built a better one, but didn't provide a good migration path. Since everyone then had to migrate they looked around and decided wordPerfect was better)
Mind you there were other word processors at the time. I doupt wordStar was first.
Re:Extreme programs? (Score:2)
I think this list is interesting from two directions. First, because of the way that I would classify the apps from the users' perspective: smart paper, smart paper, and smart notebook/magazine. What other broad classes of killer app are there? Games and several other things go in the category of "smart TV". Besides paper and TV, what other "smart thing" do
They're Everywhere (Score:5, Insightful)
How about an operating system written as a substitute for massive commercial systems, written initially by one guy, then by a bunch of people collaborating, without direct compensation, via email? (Linux)
How about a system to allow anyone with a computer and a pipe to publish structured hypertext and images for all the world to see? (Mosaic)
How about a system for independent individuals to type to each other in real time? (talk, IM)
How about a system for people without a static IP to share files? (P2P)
How about a system for people to contribute spare CPU cycles to a collective social work? (Distributed.net, SETI@Home, Folding@Home)
The Future:
What's on the edge now that will be huge tomorrow? If I knew that I'd be in angel capital. (speaking of equity, how about online stock trading systems?)
What's on the edge and either hasn't found a niche or isn't sufficiently advanced yet (and may never be)? 3DUIs, Freenet, Complex Adaptive Systems, Face Recognition; and those are less than a cube in the iceberg.
Re:They're Everywhere (Score:2)
How about a family of operating systems that has managed to capture over 90% of the small computer market?
Re:They're Everywhere (Score:2)
How about a family of operating systems that has managed to capture over 90% of the small computer market?
I actually agree with this 100%. Microsoft got there because they were one of the revolutionaries in the 1980s, when feathered hair and skinny leather piano ties were the rage. But what have they done for me lately?
Re:They're Everywhere (Score:2)
But what have they done for me lately?
Given you a standard desktop market?3DUIs (Score:2)
I have been playing Neverwinter Nights for the last week. And even in Linux I still try to move the cursor to the window edge to rotate my view to see any other docs or interesting events. It is a pretty natural interface. It would be interesting to see a similar window manager that allowed a 360 panorama with stairs going down or up .. and locked doors heh heh ... hmmm yeah ... really warming to the idea. No don't include the quake like one , I don't want to have to go into combat with files in order to de
Dance Dance Revolution and Squeak (Score:2)
One of the keys to its success is user-prompting... an interface where visual and audio cues (the arrows and the music) indicate what the user should do next to achieve a goal without rote memorization or exhaustive trial and error. This is something that will revolutionize UI design once it is better understood... a graphics program walking you through the steps need
AI, GP, Emergent Behavior (Score:3, Insightful)
I'm talking about stuff like Genetic Programming [amazon.com] and evolutionary algorithms.
For instance, check out these guys [amazon.com] who built an evolving neural network that plays checkers. Neither of the coders even really knew how to play checkers when they first started breeding this thing. The latest evolved version became a world-class top ranked player on the Zone [zone.com]. They never "taught" it a single thing about checkers, it learned everything it knows on its own - playing in a winner-survives-to-breed soup of competing neural networks.
In my opinion this tech has incredible potential for the future of software, as processing power outstrips our ability to program to it. Genetic programs, evolutionary algorithms, and evolved neural networks are able to search an almost unlimited problem space (using the most efficient hill-climbing algorithm ever devised... thanks mother nature!)
paulb
How about Emacs? (Score:2, Interesting)
Re:How about Emacs? (Score:2)
Code editors in Unix are WAY behind what you can get on a windows box. I loved Coderite in its day, now the visual development environments are much better at what emacs does, without the overhead of having to learn a new operating environment.
Watching karma go down by the minute
Re:How about Emacs? (Score:2)
Thus speaks someone who can't use emacs. Not surprising - emacs is opaque and hard to learn. But once you have learned it you'll never go back.
Re:How about Emacs? (Score:2)
The Windows editors do not take a learning curve, they just open documents, and let me type away, giving context sensitive help, coding tips, variable expansion, Debug, edit, continue support, and much much more.
I don't want to spend time learning an editor (yes, that is what I am doing now unfortunately) to be productive, I want my editor to make me productive
My nominees (Score:3, Insightful)
extreme applications have to be mind opening (Score:3, Insightful)
Lets talk about extreme applications, those which changed our views and methods to act. I do not believe that any application has ever been created without some examples been existent before, but there is often one specific version that got used widely and opened the eyes of a lot of people.
Spreadsheets: Visicalc was not the first, but the first on personal computers. These tools allow you to play with a number of different scenarios in a way you could never handle without them and therefore give a chance to see into the future.
1st person shooters: Doom (and Wolfenstein and hundreds of followers) realized least some of the promises of virtual reality. A artificial world, created in real time, in a way that was realistic without to much burden on your own fantasy, dense and moody enough to really immerse yourself into that world. A copy of our real world as an interface to a computer, more coming.
Communication (Email/News/Chat): The video text system Minitel pushed by France Telecom during the 80s and early 90s by giving away the (primitive) terminals for free. This is most likely the first electronic mass medium that existed with up to 35 million users, more than 50% of the whole population of France. Was used massively for mail and chat (and porn), but also included a micro payment system and was a huge ecommerce success more than a decade before the web became popular. Communication is the killer app of all killer apps.
ebay: ebay is its own category (and, of course, it's an application), everything else is a copy. First worldwide successful C2C business, could not exist without the web, but has proved that the low cost of a medium can generate markets where there was no margin before. Removed the costs for advertising, customer service, handling etc. by reducing its own function to a mere communication enabler.
Search engines: Google comes in mind, but Google is just a very clever version of Altavista, I do not remember who started it. Whenever you search in a text with your preferred text processor, you're using its search engine to run a full text search, so it's not really new. But applied to an enormous body of data (unsorted, in contrast to classical databases) gave us a kind of 'instant knowledge' unthinkable before. I own dozens of dictionaries and never leave without my Encyclopaedia Britannica (on my iBook), but nothing can compete with billions of pages of unstructured information at my fingertip.
web browsers: Mosaic was for many people the first look into the computer interface of the near future. A system, easy to use from a consumer and producer perspective, at low cost, to enable exchange and access anything that can be squeezed into HTML and some pictures.
bioinformatics tools: BLAST (Basic Local Alignment Search Tool), a dedicated database for storing, comparing, finding and annotating sequences of DNA etc., to be run at home (if you want to) or in your lab or easily accessible on the web. Enabled researcher worldwide to get immediate access to the most current findings, therefore increasing the speed in which the humane genome could be decoded (and stealing Celeras show). This kind of technology will speed up our acquisition of knowledge in many ways.
When you look at this list, there are some common themes:
Chriss
Embedded systems? Anyone? (Score:3, Insightful)
- DVD video, Dolby Digital audio
- Fly-by-wire aviation
- CAT, PET, MRI
- Automobile controllers
- Routers and switches, to say nothing of ESS and its descendants
- Toys
- Credit card readers, ATMs
Plus a dozen others on the tip of my tongue, and those are just the ones I'm aware of. Anyone care to post something about power grids and other infrastructure? How about applications in manufacturing, business, medicine, art, military, construction?
More generally, the well-known When Things Start to Think [amazon.com] generally illustrates the kind of dramatic effects that can occur when you add just a bit of intelligence into a mundane object (or process).
--
Dum de dum.
It's all about copy (Score:4, Insightful)
When ever you use the "copy" program you are accomplishing the oldest and dearest dream mankind has ever had - you are both having your cake and eating it too.
The ability to infinitely replicate something, each copy being absolutely identical to the first, but also infinitely distributable to however many desire it, is earth shaking.
This is the major thing human kind must learn to deal with into the future. More then any other single event or "discovery" the lowly copy program (and it's brother "paste") will have greater effect on the way we view our world then any other thing.
Getting computers to 'understand' language... (Score:3, Insightful)
Arcade games and early PC games (Score:4, Interesting)
These machines and programs jammed an enormous amount of programming functionality into incredibly tight spaces. Many of the old arcade programs ran on 4K, 8K, or 16K 8 bit computers, and ran on machines with clock speeds of under 1 MHz, and effective instruction rates of mere hundreds of thousands per second. Even a fully loaded Apple II gave you under 32K of actual program space to work with, once you subtracted the low RAM, the hires graphics areas, and the BASIC ROM space, and people did a whole lot with that 32K.
The last two games I've purchased (Simcity 4 and C&C Generals) require minimums of 500 MHz and 800 MHz processors respectively and 128M of RAM. Of course, they do a lot more, but they are certainly not 500, or 800, or 8000 times as entertaining as the Cocktail Space Invaders machine that graces my hall entryway and is such a hit when we throw parties.
Early arcade games were heroic, wildly successful efforts. Truly examples of extreme programming.
video motion detection (Score:3, Interesting)
Quantum computers, or molecular (DNA) computers. (Score:2)
The only radicaly different, as in 'different axioms' different, approaches to C.S. I've come accross are quantum computing and molecular (as with using DNA to solve NP-hard problems) computing:
Both, if ever implemented, will not only increase our capabilities, but will also change (actually have somewhat changed) our conception of what calculation actually is.
In fact, quantum computing has evolved from trying to apply different laws and axioms (quantum laws) to computer science.
Now that is what I call
Re:Quantum computers, or molecular (DNA) computers (Score:2)
It won't, of course, but will enable solving problems you cannot (unless P=NP
As an example, look at SAT, all you have to know is wether there _IS_ an input satisfying a certain circuit.
By running all the possible options in parallel, and measuring only the outcome, you'll have the answer; this is enough to solve all and any NP problem.
(of course, this is all still theory in it's infan
Copmuters themselves. The whole lot. (Score:2)
Then books are going to start to go away. Degrading 500 years of means of information storage from pole position to #2 or 3 within a few years is quite a breakthrough if you ask me.
Gathering information an
Copmuters. Yeah, really... (Score:2)
That's what I wrote, no?
Ah, well, forget it....
kinda (Score:2)
I do research in this area and I can't begin to tell you how many things can go wrong. The paint on the walls, the kind of lighting you use (quick mental experiment: halogen light cycles brightness at ~60Hz, video streams come in at say, ~15Hz. Think you can get them to synchronize? Good luck.), shadows, reflections, etc. etc. etc. are all a huge problem so large that I still have a job. Yes, there are cheap (
Re:kinda (Score:2)
Re: Bricoleur ? (Score:3, Informative)
Re: Bricoleur ? (Score:3, Funny)
To illustrate, maybe I shall say that Linux is a bricoleur's dream OS, for example?
Re: Bricoleur ? A definition...This is taken from (Score:2, Informative)
bricoleur (French):
A person who constructs things by random messing around without following an explicit plan. [noun]
I have often heard it applied to people who use objects or systems in ways the original designers did not anticipate; Levi-Strauss also defines it as someone who plays with objects and technology in order to gain a deeper understanding of them. Or, in short, a hacker (in the original sense).
Re: LEGALIZE IT (Score:2, Funny)
That's a Windows flaw. (Score:2, Interesting)
-uso.
Re:That's a Linux flaw. (Score:3, Insightful)
"Smart quotes" are "standard ASCII"!?! WTF!? What are they teaching kids in school these days? Get an education, man. Smart quotes were a Microsoft violation of ISO character set standards (hint: nothing to do with ASCII whatsoever, apart from some not-coincidental overlap of the standards). Microsoft said, "hey, we're putting these characters there and we're calling it ISO even though its not. The rest of the world will have to fall in line with us because we're Microsoft". Standard embrace/extend stuff, a
Re:So in other words... (Score:2)
Very funny. However, since MS themselves stated that the purpose of Embrace / Extend was the third 'E', Extinguish, then the Improve is just your Ignorance.
Re:Hellow World (Score:2, Funny)
"Goodbye World"
AAAAAAAAAAARGH!
SPLAT!
Re:Spreadsheets && word processors (Score:2)
But these weren't 'edgy' or 'scandalous' or 'rebellious'. These were conceptualized and designed specifically for the purpose of becoming the widespread commercial productivity tools that they are now. Their success wasn't a spin-off; it was already commercially focused.
Re:not the newest thing in the world, but hear me (Score:2)
Yes. Imagine that. Bwahahahahahahahaaaaaa!
Re:Try sweetcode.org (Score:3, Interesting)
From their site...
what is sweetcode?
Sweetcode reports innovative free software. "Innovative" means that the software reported here isn't just a clone of something else or a minor add-on to something else or a port of something else or yet another implementation of a widely recognized concept. (These are all perfectly fine and useful things, they're just not what this site is for.) "Free software" means "as in speech". Software reported on sweetcode should surprise you in some
Re:Anyone think this "Internet" thing will stay? (Score:2)