Kuro5hin.org: technology and culture, from the trenches
create account | help/FAQ | contact | links | search | IRC | site news
[ Everything | Diaries | Technology | Science | Culture | Politics | Media | News | Internet | Op-Ed | Fiction | Meta | MLP ]
We need your support: buy an ad | premium membership

[P]
Can we (please) have the Next Great Thing Now?

By costas in News
Sat Jun 17, 2000 at 02:41:45 AM EST
Tags: Software (all tags)
Software

I was just at MetaFilter, where someone posted this article/manifesto by David Gelernter, on the future of computing. Go read it; it's an interesting article and ties in well with some past posts on K5. But that is not the reason I am submitting this story. The reason is that I am pissed.


Lately people have been talking about this Next Great Thing in software, be that LifeStreams, ubiquitious computing or what have you. I don't know about you, but when I hear about a coming Wave, about the Revolution that's around the corner, I think that a breakthrough just happened: if we're gonna beat cancer, someone has to have found the drug; if we're gonna colonize Mars, someone better have those terraforming machines ready.

Yet, all these prophets (and don't get me wrong, I mean no disrespect to someone of the caliber of Gelernter) are talking about things that are doable now. Really, things that were doable yesterday, if someone was so inclined. Let me summarize Gelernter's manifesto in two sentences for the lazy ones amongst you that did not click that link: Gelernter says that: a) computers will be omnipresent and omniscient (the latter meaning interconnected rather than God-like), and b) that the current WIMP paradigm sucks, and computers should organize information better than in the old file/folder/file cabinet/desktop paradigm. He proposes the idea of a "lifestream", i.e. of a system that stores information by date and can sort it by content and context.

Well, I don't agree with him on WIMP (how else are you gonna type up a document, if not with a keyboard and a mouse?), and I don't necessarily like the idea of a lifestream, but that's not the point. The point is: we have the technology to make computers better right now, yet noone is doing it!

Think about it: Being able to store data in a 'soup', rather than a stupid-ass hierarchical system is doable now --Google can do it for the Web, why isn't anybody doing it as part of the OS itself? Making machines more intuitive can be done now, with current technology. Yet each new piece of software that comes out just keeps adding features, rather than making the older ones work better. It isn't technology we're missing: it's inspiration and motivation.

Can at least the people that work with Open Source software, the ones that can directly affect a change, work towards that end instead of chasing the taillights of systems whose design and features are not inspired by necessity or 'goodness' but by the rules of the market and profit? Microsoft (or Windows Inc, or whatever it will be) will never be able to afford a massive change in the underlying philosophy of their system; market pressure will not allow it. OSS can do it: we have an open foundation, a foundation that can be used to built something better, something different, not something that looks like the monsters that history and commercial competition created.

Sponsors

Voxel dot net
o Managed Hosting
o VoxCAST Content Delivery
o Raw Infrastructure

Login

Related Links
o Google
o MetaFilter
o this article/manifesto
o Also by costas


Display: Sort:
Can we (please) have the Next Great Thing Now? | 30 comments (30 topical, editorial, 0 hidden)
Yes, can we? :P... (3.00 / 2) (#4)
by Velian on Fri Jun 16, 2000 at 09:21:44 PM EST

Velian voted 1 on this story.

Yes, can we? :P

So many thinks are possible, howeve... (4.00 / 2) (#5)
by Aztech on Fri Jun 16, 2000 at 09:47:55 PM EST

Aztech voted 1 on this story.

So many thinks are possible, however companies only concentrate on the projects that will net them consumer appeal (i.e. their $$/), the rest of the ideas are either viewed as being before their time and misunderstood by the majority, our capitalists systems tend to make people short-sighted. David Ditizels' original vision for the Transmeta chip was to make the physical chip "simple" again (mobile lowpower chips certainly wasn't their only vision right from the start), the processing of adding transistors and shrinking only has finite possibilities.

the current WIMP ... (none / 0) (#7)
by PresJPolk on Fri Jun 16, 2000 at 10:36:50 PM EST

PresJPolk voted -1 on this story.

the current WIMP paradigm sucks

I hate it when people just dismiss designs and ideas that have been used quite successfully by many people.

Being able to store data in a 'soup', rather than a ... hierarchical system

Personally, I find that a big benefit of computers is to bring organisation, not to lose it!

Google can do it for the Web, why isn't anybody doing it as part of the OS itself?

grep "some stupid phrase" `find ~/myproject/`



Re: the current WIMP... (none / 0) (#14)
by Anonymous Hero on Sat Jun 17, 2000 at 05:44:29 AM EST

I hate it when people just dismiss designs and ideas that have been used quite successfully by many people.

Really? I hate it when because something's entrenched it's considered in a certain light rather than looking at the thing in question.

--Matthew

[ Parent ]

People don't want "something differ... (none / 0) (#6)
by h2odragon on Sat Jun 17, 2000 at 12:00:36 AM EST

h2odragon voted 1 on this story.

People don't want "something different." Real people, that is, not marketing flacks who are being paid to come up with the new angle. Most folks don't view computers as and end in themselves (I find the idea hard to understand too); they are complex tools that they rely on to do their jobs... and they don't want their tools changed. They're comfortable with what they're doing, the way they're doing it, and see all these great ideas you mention as much effort for little return.

How many of us are still supporting old, outdated systems that could and should have been replaced years ago, because the users demand it and won't hear of any change, no matter how beneficial?

I like the lifestreams idea myself, but even for us geeks, is it a worthwhile change? There's a couple of implementations of the idea out there, I think, but how much use have they seen? I haven't played with any of them.

I like your rant, very interesting.... (none / 0) (#2)
by skim123 on Sat Jun 17, 2000 at 12:03:44 AM EST

skim123 voted 1 on this story.

I like your rant, very interesting. I would tend to agree that such a soup-like organization of data is better than this hierarchical organization, at least for those who aren't very familiar with computers. I have seen a lot of novices poke around through "My Computer," trying to remember in what directory they stored their Word document.

Money is in some respects like fire; it is a very excellent servant but a terrible master.
PT Barnum


Sounds interesting to me. I'll hav... (none / 0) (#8)
by roXet on Sat Jun 17, 2000 at 12:56:34 AM EST

roXet voted 1 on this story.

Sounds interesting to me. I'll have further comments after I read the link

It's a rant, but a rant I have a co... (none / 0) (#3)
by fluffy grue on Sat Jun 17, 2000 at 01:37:57 AM EST

fluffy grue voted 1 on this story.

It's a rant, but a rant I have a comeback for.

I happen to LIKE hierarchal classification systems. I think better that way. That's probably why I also prefer OOP to imperative or functional/logical programming, and why I turned Hobbes from an information soup to a deeply-hierarchal classification system. I hate information soup. It's hard to find your way around, it relies too much on knowledge of dates, and it's linear - and VERY imprecise - thinking. It's for the same reason that I hate the horribly-arbitrary taxonomic classification scheme (why the HELL are dogs and wolves in completely different genii when they're the same damned SPECIES?!) and I really hate things like, say, DOS, and the standard UNIX filesystem layout (though the latter I begrudgingly accept because at least it's systematic).

What we REALLY need for a storage system, IMO, is a semantic network, like Everything2 - say, have a collection of files, and links between collections. You can make it hierarchal and nested, you can make it cyclic, you can make it soup-like, you can make it any of all of those! You can (badly) fake that with symlinks in UNIX, though maintenance becomes a nightmare, but by having a file-storage mechanism designed with that in mind from the ground up, it's not such a problem.

Need to find a file but you can't remember which collection you put it in? Run a spider. Have a distributed filesystem like that with lots of shared documents which you need to have easy access to from some project 'folder'? Make a semantic link. And so forth.

I can actually dig something like that. It's like a weak hierarchy, like how a lot of Everything2 has become. I wonder if this sort of mentality would mesh in well with Plan9... hrm.
--
"Is not a quine" is not a quine.
I have a master's degree in science!

[ Hug Your Trikuare ]

Re: It's a rant, but a rant I have a co... (none / 0) (#9)
by Frigorific on Sat Jun 17, 2000 at 02:46:41 AM EST

I recall there was a program for windows that browsed the filesystem based on associations you made. I think it was called The Brain or something equally silly...
Who is John Galt? Rather, who is Vasilios Hoffman?
[ Parent ]
Re: It's a rant, but a rant I have a co... (none / 0) (#13)
by Anonymous Hero on Sat Jun 17, 2000 at 05:27:18 AM EST

TheBrain went all stupid intellectual property on everyone's arse. They claimed ownership for something they didn't make and got a patent who's wording was particularly vague so as to encompass all major relational databases (well, practically).

Read about it at Technocrat: Patent Issued for Natrificial's "The Brain"

[ Parent ]

Re: It's a rant, but a rant I have a co... (none / 0) (#15)
by costas on Sat Jun 17, 2000 at 12:02:24 PM EST

Ha! we happen to agree there; what you describe as a hierarchical system, I would describe as a 'soup'. OK, 'soup' is a bad word, smacks of disorganization. Mesh would be a better one I guess.

At any rate, I am basically talking about a database-like filesystem (and so is Gelernter; a 'lifestream' is nothing more than an 'order by date' query; his substream based on context, are 'selects') and so are you: organize by different attributes, in different categories: that's a database, not a file system.

BTW, if something can belong to more than one 'categories', i.e. a file to more than one directories, that structure is no longer a 'hierarchy'. Hierarchy is strictly one-to-one, top-down, much like the ranks in the army (or the Church, which is actually the origin of the word).


memigo is a news weblog run by a robot. It ranks and recommends stories.
[ Parent ]
This 'sea change' is gonna happen a... (4.00 / 1) (#1)
by Pelorat on Sat Jun 17, 2000 at 02:16:32 AM EST

Pelorat voted 1 on this story.

This 'sea change' is gonna happen at its own pace. The most obvious new thing: Napster and Gnutella are bringing distributed file storage and sharing and searching into the mainstream.

The real problem with looking for the Next Great Thing is that it's only visible through hindsight. The mouse? Scoffed at when it was introduced. Windowed OS? Xerox PARC disowned that golden-assed goose. The Internet? Took several years to really hit its stride. The personal computer? Damn, that one took forever to become the Next Great Thing. Free Love? Ok, so that one didn't last too long.. =)

You won't find it today. You won't find it tomorrow. It sneaks up on us, and we don't recognise it as being a 'big thing' till it's widely accepted, mainstream, and a part of daily life. Kinda like the phonograph. And the light bulb. And the telephone. And the...

Heck, most Next Great Things aren't even single items, but *combinations* of ideas and products over time. People are working on the Next Great Thing, and several after that, rest assured. They just don't yet know what they're creating!

Re: This 'sea change' is gonna happen a... (none / 0) (#20)
by Anonymous Hero on Sat Jun 17, 2000 at 05:47:39 PM EST

What on earth does napster have to do with it? Please.. it's not a technical advancement by any means...

[ Parent ]
Sigh (none / 0) (#22)
by Pelorat on Sat Jun 17, 2000 at 07:07:39 PM EST

No, Napster by itself is not a 'technical advancement'. I didn't say it was. I said it's changing the way people view, access, and store information. It's making the average Joe Bonehead more comfortable with the concept of distributed file storage, etc. I wasn't talking about the *program* Napster, but rather the *concept* of it. The methodology it uses. The way it's getting people familiar with the concept of files not necessarily being on a local disk. I could have said 'my.mp3.com', it'd be the same thing.

Please read my post again - you missed the point of it entirely.

[ Parent ]

It'll happen (none / 0) (#10)
by abe1x on Sat Jun 17, 2000 at 03:17:27 AM EST

I think were about to see an explosion. Over the past decade a huge amount of programming effort has been focused on synthesising all the OS work done over the previous decades and make it all work together on a desktop machine. Basically to make an OS that is a stable and networkable as unix, but with a easy to use gui on top. And now all the major players are pretty close the goal. Once that occurs, there's no were to go except to innovate.

Personally I'd like to see it all start with autolinking. Hotlinks are all fine and dandy, but they require a ton of work, research, etc. To properly create links is extremely time consuming, and assumes you know what you are looking for. Autolinking would find appropriate links for you, making it way easier to make an informative k5 post. In fact you could probably learn a ton just reading your own posts! I guess Alexa and some other plug ins are trying to do this already, but its going to take a ton of work (and processing power) before this becomes useful.

Arrrr! Alternative UIs be ye answer! (4.00 / 1) (#11)
by Anonymous Hero on Sat Jun 17, 2000 at 05:09:02 AM EST

Regarding your idea that you'd require WIMPs to do things like type up a document~keyboard~mous~etc...

WIMP is one way of doing stuff in a GUI but there are better alternative concepts. Most alternatives still recommend Keyboard/Mouse. A keyboard probably is the best way to input characters (a bit of dvorak would be nice though - they do work). A mouse could be replaced with touch screens I guess. If it was abstracted away enough in just being an X/Y chooser with buttons you wouldn't have to choose. That handheld button keyboard seemed quite nice though - is it efficient enough to be a replacement and worth learning?

One alternative UI that comes to mind is the deskspace UI. In which you have a x/y plane of a desktop that can be scaled/zoomed. One such implementation has the entire dictionary laying open on the top left of the work area in microfiche form - just zoom out and zoom into the area you want. A date planner open, a few post-it[tm] notes laying about.

On a purely selfish level i'd like an abstraction of interface from software. Software that gives the GUI the final choice in how to render the software. The software thesedays that compiles with the entire UI... and skins... arghh!

Say for example you have a list of actions, and a generic title for those actions - the GUI decides whether it should make those a DropDownMenu on the top left or leave the list expanded in a left pane.

Other menus concepts like the wheel, where you select an option from a pie-chart - that was impressive. By having a multi-choice in a pie-chart it was shown that three times more users knew instantly that it was a multi-choice - as each segment was a part of the greater whole.

People can improve the WIMP model by thinking a bit more about the conventions they use. Convention says it's the top-left most drop-down menu that you use to close your software - There's a bit of text-editing software I use that has an icon in the top-left I mean WTF? It's like people don't even think about the titles they give their drop-down menus. A much better dropdown menu would be PROGRAM|options,quit FILE|open,save,etc.. instead of kludging your program options into the TOOLS menu, and closing your software from the FILE menu.

Mostly it's all tiny steps. Trying WIMP, realising it's not so good but is entrenched and has all the benefits of that (A la MS Windows). Hell, if software was decently abstracted from the UI people could choose.

Unfortunately, unless you've got a billion dollars the future won't get here any quicker.

--Matthew

Re: Arrrr! Alternative UIs be ye answer! (none / 0) (#12)
by Anonymous Hero on Sat Jun 17, 2000 at 05:15:31 AM EST

ps.

EDIT menu... lets see what it contains. Why, I have FIND TEXT STRING.. what does that have to do with editing?

Fucking imbeciles.

-- Matthew

[ Parent ]

Let me clarify... (4.00 / 5) (#16)
by costas on Sat Jun 17, 2000 at 12:35:06 PM EST

Replies to my post, seem to think that I am anti-WIMP or pro-"lifestream". Not really, on either count. I happen to agree with Gelernter's rationale, his motivation for his proposals, but not with his conclusions.

My point in that rant above (and I think I did a bad job of expressing it) is that today's systems seem to immitate each other, to make incremental improvements that really are not solving the underlying problem. And that commercial systems *cannot* make the quantum leap ahead without facing market pressure (and then there's Apple :-)...

  • For example: my personal nemesis, /etc: that directory is pretty close to being the heart, the nexus of a Unix system. It's organized ad hoc, without a standard, with different fileformats: it's a mess, it's 40 years of incremental changes to an original bad design. /etc should go away: I ain't advocating a Registry, so put down your flamethrowers. But a standardized file format (XML-based maybe?) would be nice. A way for every program to introspect and find out what else is installed and how it is configured, would be great. Why do we except as a given that we can, say do a portscan and find out things about a remote machine, when our own Unix system can't tell how itself is configured? OOP isn't just for programming languages... And, BTW, RPM is not an answer: RPM is a band-aid over the gaping wound that's Unix's configuration and maintenance.

  • What about documentation? Why have documentation in man pages these days? why not HTML/XML so we can actually truly search through documentation, instead of the dumb-ass 'man -k's and 'apropos's? 'man' could be a damn XML->troff link for all I care; The documentation on my machine can be more searchable than the one on the Web, yet we've all resigned to go on google.com/linux instead of our own PCs... And this is the 21st century: let's tie this documentation to the internet; 'errata' belongs to a hyperlink on the stuff on our own systems, not on some Web server somewhere...

  • A hierarchical file system is a rigorous classification method: yet, today when we store large amounts of information we store them in 'soups'. They are called databases, where each piece of information has *several* attributes, not just its place on the filesystem and a filename. Does K5 store its stories and the comments attached to them on the filesystem? No, I am betting it's using a database. So, why are we storing our valuable personal works on some backwards, obsolete data store?

    As I hinted above, the one company that has taken the leap is Apple --OS X looks like the answer to my prayers (if only they didn't force you into proprietary hardware)... OSS *can* go further than OS X and it *should* go further than OS X.

    Alright, I've ranted enough :-)...



    memigo is a news weblog run by a robot. It ranks and recommends stories.
  • Re: Let me clarify... (none / 0) (#18)
    by Anonymous Hero on Sat Jun 17, 2000 at 02:48:04 PM EST

    The main reason why you only get things happening in increments is because every bright hacker has his or her own "all-encompassing" solution and everyone wants to be the architect. As a result, you end up with a whole bunch of over-generalized, half-worked out solutions instead of building a consensus and THEN working out a solution. This is exactly what IETF does, which is why the Internet works so well.

    However, AFAIK, there is no mutually agreed upon GUI. There is no mutually desired interface. Even the Linux folks are split between KDE and GNOME (not to mention the fragmented efforts of the various window managers) and even replacements for X (Berlin, for example) are all over the place. Then you have things like Motif, Athena... all these different widget sets and then the applications based on them (i.e. DDD relies on LessTif for libraries), Konquerer needs KDE, ad nauseum.

    It would be great if you could organize everyone. However, the typical response on finding out that there is no organization is to create a new one.

    [ Parent ]
    3d GUI? (3.70 / 3) (#17)
    by Tr3534 on Sat Jun 17, 2000 at 02:20:40 PM EST

    this reminds me of an idea i had when the quake1 source was released. It's gpl, now, right?

    it's the ideal option for creating a 3d confrencing system. the graphics are still pretty good, the engine is very flexable, multi-player doesn't use too much bandwidth. just add simple real time voice communication with it and there you go...

    or a gui, for that matter. just make one large room for each directory and have files appear as objects which could be manipulated in some way.

    it wouldn't be too hard, would it? i would have started already if i knew any of the programming skills that are needed.
    Sigmentation Fault: Post Dumped.
    Re: 3d GUI? (none / 0) (#21)
    by mwa on Sat Jun 17, 2000 at 06:32:57 PM EST

    You may want to start with Doom as a tool for System Administration. Each system process is represented by a monster. You can renice a process by wounding it or kill a process by, well, killing it.

    The page talks about using different rooms to represent different hosts, etc.

    [ Parent ]

    Want a cookie? (4.00 / 1) (#19)
    by 3than on Sat Jun 17, 2000 at 03:41:53 PM EST

    I have to say that, while nearly everything this guy said is accurate, you sure don't have to be a Yale research scientist to figure it out. The shit that he said is what any intelligent computer user can see coming, plus a good solid helping of academic self-importance. I liked his bio-he forecasted the internet. Gee, that must have been difficult in fucking 1992. C'mon-this guy has obviously appropriated Marshall McLuhan's methodology, while eliminating his original insight.
    Maybe I'm being too tough on him. Maybe it's important that he say this stuff-but I think we know who's going to be doing all the things that he says-open source/free software programmers, donating their time. There are some changes that should be made to the unix filesystem and directory structure-we all know it. It will change. But I think that home machines will always be more hierarchical than the new thing, huge distributed systems, many of which are never explicitly conceived. Let's face it: the www does a lot of the things that he's talking about now. In the future, the www will conform to what people want, more or less automatically, in a sort of economic darwinism. We've seen it change, and like Bob Dylan says, it doesn't take a weatherman to know which way the wind blows. So excuse me for being unimpressed when some Yale professor tells me what's going to happen. I mean, we both figured it out in the same place-but good for him. He gets paid to surf the web.

    Re: Want a cookie? (none / 0) (#24)
    by Anonymous Hero on Sat Jun 17, 2000 at 07:41:52 PM EST

    Yeah, I wondered about that too.

    The Internet had been around for ages by 1992, so I guess they must have meant the web.

    But then the idea of hypertext was described in olde day books from at least 1930 - so seeing the web isn't particularly smart. Even so, in 1930 they saw the importance of 2way linking.

    This guru seems full of it, really. I agree with him when he says what's wrong with current 'paradigms', but as for that time stream crap?

    I mean please, I don't know when I moved house when I was about 1-5 years of age. Knowing that it was in The Past isn't going to help me track down a file. Dragging that file to present day to edit it doesn't make sense to me. An entirely time based system doesn't make sense to me.

    --Matthew

    [ Parent ]

    So go do it. (5.00 / 1) (#23)
    by Anonymous Hero on Sat Jun 17, 2000 at 07:25:28 PM EST

    Figure out what you want, fire up a compiler and a SourceForge account, and make it happen.

    As a coder, I've been waiting 20 years for the Nex (4.00 / 1) (#25)
    by porkchop_d_clown on Sat Jun 17, 2000 at 10:07:43 PM EST

    There hasn't been a single advance in software that wasn't thought of by 1980 - if not well before then. Face it, even Java is an evolutionary enhancement to OO languages - it's a great language, but it's still SSDD: Programmers are still wrestling with the same kinds of debugging and development issues we faced in 1980. Heck, 1970. The only difference is that Moore's law has ensured that now we have to maintain gigabyte sized C++ apps instead of 4k assembly language programs.

    And yes, I've read the patterns books, the structured programming books, the OO books. But all those things do is put sets of labels on things programmers were already doing! Even stuff like JavaDocs is actually old news! In 1985: the Amiga ROM Kernel Manuals were generated from the comments in the ROM source code. And I don't think that was the first time someone did it.

    JavaBeans, EJBs, those are standards that help programmers exchange and reuse code - but they still aren't anything new. New labels on old ideas.



    People who think "clown" is an insult have never met any.
    Re: As a coder, I've been waiting 20 years for the (none / 0) (#30)
    by dto on Sun Jun 18, 2000 at 11:09:11 PM EST

    Even stuff like JavaDocs is actually old news! In 1985: the Amiga ROM Kernel Manuals were generated from the comments in the ROM source code. And I don't think that was the first time someone did it.

    It was Knuth's concept of Literate Programming which first codified this, I believe., in the 1970's.
    --- @@@ dto@gnu.org @@@ GNU OCTAL @@@ http://www.gnu.org/software/octal
    [ Parent ]

    OS using soups (none / 0) (#26)
    by mdxi on Sat Jun 17, 2000 at 11:03:41 PM EST

    The Newton OS has used soups for data storage since its introduction in 1993.

    I'd wager that other parts of your Next Big Thing have been around for a while as well; you just don't know it because of various marketing forces.

    --
    SYN SYN NAK
    A rebuttal of sorts (5.00 / 1) (#27)
    by mbrubeck on Sun Jun 18, 2000 at 01:38:15 PM EST

    This article was intereresting and thought-provoking, but held little concrete information, and I don't think it was very well connected to actual current trends and research in computing. Here are some arguments for a different view on the evolution of technology.

    Change is Local

    In computer technology, The Next Big Thing simply isn't going to happen all at once. Computer science, software engineeering, and computer engineering may be closely tied together, but they are very different fields, and each is internally diverse. The computer may seem to its user to be a single unit, but from a research perspective it comes from a wide range of disciplines which are only loosely working together toward common goals.

    Therefore, revolutions are localized. An advance in programming languages gives programmers new tools to work with, but they still have to dream up the systems they can create with those new tools. A breakthrough in 3D hardware creates new possibilities for human-computer interaction, but these remain just possibilities until someone realizes and creates them.

    Changes to the computer as a whole are made possible by advances in each of its subsystems. Developers in each field must take advantage of new technologies from other fields as they become available. Creating entire new computer systems requires finding new ways to combine existing technologies. It is necessarily an incremental process, built on previous advances.

    Comparing technology development to scientific research gives only part of the picture. Once a new technology has been invented, there is still the engineering task of producing it, and then the job of making it available to thousands of users worldwide, and convincing them to use it. For another (equally flawed, but contrasting) analogy, consider the US interstate system. After one freeway is completed did people complain, "The technology to build a nationwide freeway system is obviously here today, so why isn't it done yet?"

    Revolution is Under Your Nose

    Another writer pointed out that revolutions are easy to see through hindsight. But because changes in computer tech are incremental and spread across many fields, many people never notice drastic changes happening all aroud them.

    In addition, technologists can be very myopic. If your work only involves personal computers, you may never hear about new I/O technologies for enterprise-level mainframes, or new RTOS developments for embedded systems. PCs revolutionized the computing field, but no one in the former computer mainstream even noticed it until they were already nearing ubiquity.

    Right now, Boeing electrical workers are assembling airplanes with the help of augmented reality: visual overlays created by transparent heads-up displays connected to wearable computers with wireless position-tracking equipment. Only forty years ago, "small" computers were refrigerator-sized, graphical displays were an obscure rarity, and the electronic positioning technology was science fiction at best.

    Today, J. Random Mac User can buy an iMac and an off-the-shelf DV camera, and do nonlinear editing on high-quality digital video. Twenty years ago, low-end film editing systems cost ten times more and were slower, harder to use, and did less. Compters that could produce film-quality video barely even existed then; now they are being marketed to middle-income families and students.

    Thanks to orders-of-magnitude increases in network bandwidth, global connectivity, and processing power in just the past decade, my computer is now my primary tool for audio, video, and telecommunication. Just one decade ago almost none of this was possible. These are whole new technologies, and new ways of interacting with technology. We may have been building toward them for years, but that makes them no less revolutionary.

    If You Build It, They Will Come

    The author voiced specific ideas about more fluidly-organized data storage. The WikiWikiWeb, The Brain, the MIT Media Lab's Remembrance Agent, and Everything are just a few of the existing programs working in this direction.

    Note that the requisite database technology is already in place for projects like these, and is perfectly at home within existing operating systems. This is really a problem of human-computer interaction and not of systems research. Computer programs are perfectly comfortable dealing with each other in highly-structured forms; it's the user who wants more flexible ways to view and edit information. The real challenge here is not the low-level technology, but finding usable and useful ways to present it to humans.

    In my experience, those who complain about things like current computer interfaces are good at pointing out problems, but bad at providing specific solutions. Vague ideas are floated around, but are rarely implemented or even prototyped.

    Costas seems to have some idea of where computer systems should go next. Given that costas is a programmer and that Kuro5hin is a site about technology from the trenches, I was a bit surprised that the story didn't end like this: "Therefore, please read about and contribute to <a href="somewhere">my project>, which I've designed to achieve some of the goals I talked about above."

    Don't wait around for someone else to make your vision into reality. Do it yourself.

    Re: A rebuttal of sorts (none / 0) (#29)
    by costas on Sun Jun 18, 2000 at 09:05:01 PM EST

    You've touched on what I think is the core of the issue: technology is progressing on some fronts (I do data-mining at work and high-performance Beowulf clusters for fun; so I have seen the breakthroughs you're talking about) but there is no integration; no unifying vision to tie in everything together in a coherent platform. It seems that it takes a benevolent dictator, Steve Jobs, to try anything like a disruptive change (I am holding my breath for OSX; this from an ex-Mac admin and Mac critic).

    So sure, I guess I could start a SourceForge account --as another poster suggested-- and start on New Unix (Newnix? Nunix? yuck! :-) but that would not solve the problem, at least the problem as I see it. We are not suffering from lack of software, we're suffering from a lack of vision.

    Now, you said I am a programmer; that's true, but I wasn't trained as a programmer. I am an aerospace engineer who stumbled on this coding thing when the Wall fell. Let me draw you a rough sketch of the process of designing an aircraft, to give you an idea of what concerns me:

    * You start with a mission: what's that aircraft gonna be used for? Well, let's say for our purposes that it will be a commercial jet. What do you need in a commercial jet? Dependability, dependability, efficiency and efficiency (no, I aint stattering).

    * So you design around your goals: you make every critical system double- and triple-redundant. You built in failover systems and robustness till you can't think of anything else. Example: say an aircraft engine fails; the hydraulics and power systems, anything that depends on that engine for power will route to another engine. Say *all* your engines fail; a battery bank kicks in. Say your batteries run out; a little rotor pops out from the belly of the jet and powers the radio and the cockpit (no, I aint making this up). Where the hell is robustness in any operating system today? Linux is better than Windows, but it's not built from the ground up for robustness. Its an ad hoc architecture, a bazaar not a cathedral (which lasts longer? which inspires people?).

    * You built for efficiency: meaning you try to re-use as much structure and power as you can. You use as many standard parts as you can, so your customers can find them without coming directly to you. You build for maintainability: you put the engines as low as possible (at the danger of FOD) to make them accessible to the mechanics. You *design* for failure, so that the people that know how, can fix your plane as fast as possible. No operating system today is designed like this. Linux again comes close (thank open source), but no cigar: lack of introspection, inspection, standardized maintenance systems, and for the love of God, standardized configuration (can you imagine maintaining an aircraft where every airline --read: Linux distro-- used their own units, their own gauges, probes and tools?

    The same holds for hierarchical file system storage et al. The fact that there are applications that slap on that functionality (which I was aware of, BTW) doesnot address the fact that no platform has integrated the idea that information should not be a file (what Gelernter suggests, and one the few points that I do agree with) but just another 'blob' of data. Com'on, who would use anything like 'the Brain' when you'd have to maintain both the OS's idea of what a piece of information is (i.e. a file) and the organizer's (the Brain in this case)? To me this makes the system transparent to the user; he wouldnot have to worry about what drive to store his information on, what format it is, etc. Transparency means robustness. When the user isn't screwing around in the underlying structure of the drive, the system will be more robust.

    So you still think that we can address all this with a SourceForge account? If so, mail me (you can get the address from my web page).


    memigo is a news weblog run by a robot. It ranks and recommends stories.
    [ Parent ]
    Linux is good, but has some problems (none / 0) (#28)
    by Anonymous Hero on Sun Jun 18, 2000 at 04:29:19 PM EST

    This idea of another way to organize files is good, but not completely. We still need some way to sort and filter files to get them faster. But that's not what this message is about: if linux ever wants to destroy, or even damage, microsoft, it has to change. As my friend said, the only part of linux that's real high-quality, standardised and used by everyone is the kernel. If as similar system was used for the rest of the components (shell, programs) and a standard was made so that everything worked together, it would be a lot better. I'm not saying there should be one shell and one text editor and one image editing program. What we need is a standard, so everything runs together. Another thing we need is a component architecture - my personal opinion is that everything should be a component (for example, a UI might have a desktop component, toolbar components, windowframe drawing components and so on, as long as they all follow the same standars), but even without going that far, you still need to have a component architecture, so you can "swap" different parts of the system.

    Right now every shell is basicly incompatible will all other linux products, but if there were standards for a component architecture - a standard for a "shell coordinator" that puts it all together, a standard for toolbars, a standard for window drawing components - then everything could be a component that would be compatible with everything else. You could have the red hat shell coordinator with the debian taskbar, the mandrake status display bar, the caldera desktop, and so on.

    After getting a standardized component architecture, you have a great operating system, but you still need to get it to the consumers. This means easier installs - and even making every component compatible with an installation standard, so anyone can, for example, download a "distro list" that will list all the components, and the installer of choice will download them and install them. There are three main types of installations: OEM, advanced home installation, and beginner home installation. For OEM installation, whoever doing it had better know computers, or they get fired fast, so it's safe to assume they could use the current installers (although no one argues against simplicity and automation, as long as they stay in control). advanced home installation is people like you and me, who know how computers work and want to install linux on their new computer, install beside windows, or replace windows. They know how it works, but they need an easy way to get the components and install them, without writing down all the settings to use in linux. Another problem is configuration - i've tried a few UMSDOS distros, and WinLinux set everything based on my windows settings, but with DragonLinux, being a linux newbie, i had no idea how to set anything. It took me days to get KDE running at the resolution i wanted, by disabling all others. We need a standard configuration structure and utility. Beginner home installation would be done by people who know "that thing is the mouse, and pressing the button there is called clicking". For them, we need an installer that will detect all their windows settings (they won't be installing on a clean disk) and configure linux for them - it could even suggest components that are easy for ex-windows users. The installer would have to come as one EXE file that they could run, and it would download all the necessary files.

    For beginners, another useful idea would be customisable interfaces with built-in learning. The idea is that you start with a simple interface that any windows user can understand, and then every time they run, you give them one tip about more advanced use. The tips would all be rated in experience level, and there would be some system to find the user's current experience level, so as they learned all the simpler functions, they could be given more advanced tips. The tips would also be able to modify the interface. One tip might have the actual tip, then a button to "add this function to my UI" (with built in help and dictionary), "show me how to do this" and "give me an example of how this is useful". So the beginner would start with a simple windows-like interface, and then it would teach them the more advanced functions and add them to the UI as the user learns, ending with a fairly advanced UI. This system could be canceled or paused at any time, and the user could also take "courses", where they take half and hour to learn a few functions instead of just getting one every time they start the computer.

    The last thing necessary (well, helpful, but it could be fairly important) to introducing linux to beginners is a company that would develop and market the main components for the beginner-ui. The actual standards i mentioned above could be managed by a review board, but developping some components, especially the beginner ones, would require a lot of work, so a company with full-time workers could go a lot faster. They could also market the product to beginners and earn money, which could be used to fund the further development of open source software (though if you can start this company, you're already doing enough, so no one could really say you "should" give the money to OSS).

    One final idea before i post this: the beginners, and more advanced users, could be introduced to alternative file structures. It would be similar to my idea for teaching a beginner how to use the UI: they would start with the well-known heirarchy (although they could specify some directories to be created in easily-accessible places at installation, so they don't lose files), and then be gradually moved to the new system, at their choice. It could start by introducing new attributes for a file, they allow sorting, and even heirarchy based on these attributes, and then finally move to the new system, explaining everything to the user along the way. All these teaching systems would have to have customisable speed, so it doesnt' go too fast or too slow for the user.

    Can we (please) have the Next Great Thing Now? | 30 comments (30 topical, 0 editorial, 0 hidden)
    Display: Sort:

    kuro5hin.org

    [XML]
    All trademarks and copyrights on this page are owned by their respective companies. The Rest 2000 - Present Kuro5hin.org Inc.
    See our legalese page for copyright policies. Please also read our Privacy Policy.
    Kuro5hin.org is powered by Free Software, including Apache, Perl, and Linux, The Scoop Engine that runs this site is freely available, under the terms of the GPL.
    Need some help? Email help@kuro5hin.org.
    My heart's the long stairs.

    Powered by Scoop create account | help/FAQ | mission | links | search | IRC | YOU choose the stories!