The Importance of Communication

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
Post Reply
User avatar
JackScott
Member
Member
Posts: 1031
Joined: Thu Dec 21, 2006 3:03 am
Location: Hobart, Australia
Contact:

The Importance of Communication

Post by JackScott »

Hi all.

I'd just like to raise a bit of discussion about a thought I've had in the back of head for a while. That is, that the most important thing an operating system has to do is allow users to communicate with each other. If you designed an operating system that did nothing else but allow humans to communicate, it would still fill a lot of need.

The thought came across me when I sat down to use my computer after work one day. I turned it on, logged on, and then started opening applications: MS Outlook, MSN Messenger, Skype, mIRC. The first four applications I opened were all communication programs. I noticed that night that the only other program I opened was iTunes. I didn't use anything else. The last couple of weeks, this has been pretty much the case. I've also opened Internet Explorer quite a lot too (also, when you think about, a communication program), but apart from that nothing else.

So, for starters, I'd like to know if anybody else uses their computer like this (at least some of the time). Do you just open an IM client and sit there all day?

That got me thinking. Can this (and should it be) integrated into the operating system at a lower level than it is currently? For instance, on my system I have three or four IM programs, all with individual controls, interfaces, and so on. IM clients such as Pidgin can integrate some of the protocols into a single client with a consistent interface, but this still doesn't integrate into Windows (or GNU/Linux) very well. When I lock the screen, for instance, I want my IM program to mark me as 'away'. Or use the Sidebar in Vista to monitor IRC channels and new instant messages. I'd also like to be able to track email contacts and IM contacts the same way in the same list, and have a consistent log file for both types of communication. Basically, I want integration.

So my second question is this: Is anybody planning to put increased emphasis on integration between applications in their operating system, and if so, will that emphasis include communication programs?

One day I'd love to see an API included in an operating system that you could just drop new IM protocols into, and have them supported by all the clients and other programs on that machine, and have the OS integration work flawlessly for all of them. Is anybody else planning this sort of thing?

To me, communication with other human beings is the most important thing my computer does, and I want it to do it well.
JohnnyTheDon
Member
Member
Posts: 524
Joined: Sun Nov 09, 2008 2:55 am
Location: Pennsylvania, USA

Re: The Importance of Communication

Post by JohnnyTheDon »

Pidgin integrates pretty well with on Ubuntu (and maybe Gnome in general?). When you lock the screen or set Gnome's away state it adjusts your status accordingly. Also, IIRC tracker indexes your chat logs and emails.

But yeah, it would be nice if OSes had some more support for this kind of integration.
User avatar
JackScott
Member
Member
Posts: 1031
Joined: Thu Dec 21, 2006 3:03 am
Location: Hobart, Australia
Contact:

Re: The Importance of Communication

Post by JackScott »

I didn't know about either of those things, thanks for letting me know. I don't use Linux as a desktop operating system (due to lack of working support for my wireless and sound chipset), but knowing this makes me think twice.
User avatar
01000101
Member
Member
Posts: 1599
Joined: Fri Jun 22, 2007 12:47 pm
Contact:

Re: The Importance of Communication

Post by 01000101 »

I wouldn't quite say that Ubuntu and Pidgen work well together as it locks up randomly on both the 32-bit and 64-bit version on my hardware.

JackScott: I 110% agree with you on the human need for communication (and in this case, via technology). While it may seem a bit hypocritical of me to speak on communications behalf (as I am making a filter), I think that it would be a great idea to integrate well-known protocols and such at very low levels.
User avatar
piranha
Member
Member
Posts: 1391
Joined: Thu Dec 21, 2006 7:42 pm
Location: Unknown. Momentum is pretty certain, however.
Contact:

Re: The Importance of Communication

Post by piranha »

I do most of my communications through firefox (Gmail+AIM, and facebook) as well as an IRC client.

But yes, communications is very important, I just wish there was a program to do AIM, Gmail chat, facebook, and email and IRC all in one...

-JL
SeaOS: Adding VT-x, networking, and ARM support
dbittman on IRC, @danielbittman on twitter
https://dbittman.github.io
JohnnyTheDon
Member
Member
Posts: 524
Joined: Sun Nov 09, 2008 2:55 am
Location: Pennsylvania, USA

Re: The Importance of Communication

Post by JohnnyTheDon »

01000101 wrote:I wouldn't quite say that Ubuntu and Pidgen work well together as it locks up randomly on both the 32-bit and 64-bit version on my hardware.
Weird, I actually can't remember Pidgen ever crashing.
User avatar
kasper
Posts: 19
Joined: Sun Apr 27, 2008 7:59 am
Location: The Netherlands, Amersfoort
Contact:

Re: The Importance of Communication

Post by kasper »

Hi all,

I plan to use IM (specifically the XMMP protocol) in my operating system. The OS will use it in three ways: as communication mechanism among (intelligent) processes; among end-users; and as a shell to allow communication between users and processes, in this case it's combined with NLP (think chatbots etc.).

In this vision the user can interact with processes in a similar way as he or she interacts with friends, collegues, etc.

For process to process communication, I'll probably transparently wrap internal messages in XMMP+RDF when the processes reside on different machines. The more XML, the better the program, right :lol: ?

I'll use the presence part of XMMP to implement a directory service.

But it might take me some time (years, I guess) before my OS will be that far along, since I just started with the very basic things like interrupt handling.


Kasper
User avatar
JackScott
Member
Member
Posts: 1031
Joined: Thu Dec 21, 2006 3:03 am
Location: Hobart, Australia
Contact:

Re: The Importance of Communication

Post by JackScott »

JohnnyTheDon wrote:Weird, I actually can't remember Pidgen ever crashing.
On Windows (using v2.5.3), it's been crashing consistently for me. At least 4 times a day, every day, for no good reason. For the moment I've stopped using it until they sort the bugs out.
kasper wrote:I plan to use IM (specifically the XMMP protocol) in my operating system. The OS will use it in three ways: as communication mechanism among (intelligent) processes; among end-users; and as a shell to allow communication between users and processes, in this case it's combined with NLP (think chatbots etc.).
While I can imagine how the first two of these might work, I'm not quite sure how you plan on implementing the third. I've never heard before of a natural language processor being reliable enough to trust it with communication between a user and an application.

I've had a talk with a researcher on this subject at the University of Sydney (James Curran), and he mentioned that the problem with NLP is that current human languages are ambiguous and context-based. He used a good example involving a girl on a hill with a telescope, but I can't remember the detail. Basically, the gist was we don't have the techniques for dealing with this.

Any attempt to limit the human languages so we can correctly parse them turns the language into a dialect of BASIC, basically.
berkus wrote:This is exactly one of the ideas in Metta. "Ambient communication" is what I call it. You don't really have "programs" for communication, the protocol handlers will install at lower level and communicate using a low-level Common Protocol similar to Telepathy-on-top-of-DBus.
Great idea! I had another idea like this last night while I was going to sleep. Compression. KDE and Gnome do this well, Mac OS X does it reasonably, but Windows is crap. They implemented (IMHO really nice and usable) support for .zip files into Explorer, but no other compression formats. Why? If you've put in support for one, why not make it expandable so it can do them all?

As for your other ideas (contexts and the address book), I really like the sound of these too. It's the sort of integration between applications that I want to see in the user interfaces of the future! The most important thing though IMHO is not to limit this to the programs written for the user interface by the designers of the OS, but by everybody else as well. They have to have some way to tap into these things via an API, and preferably force the users of your GUI to use it.

In my opinion one of the greatest failures of Microsoft is that they limit the integration between Vista (with a folder for Contacts, Windows Mail, and a really nice iCal-like Calendar app) and Outlook (with everything shoved into a .pst file). If there was more integration between the two (so, say, I could view my Outlook contacts in the Vista folder view). I know there is a court order preventing them from working too closely, but in my opinion this is a shame: it would have resulted in a much better interface if they could.
M-Saunders
Member
Member
Posts: 155
Joined: Fri Oct 27, 2006 5:11 am
Location: Oberbayern
Contact:

Re: The Importance of Communication

Post by M-Saunders »

JackScott wrote:Great idea! I had another idea like this last night while I was going to sleep. Compression. KDE and Gnome do this well, Mac OS X does it reasonably, but Windows is crap. They implemented (IMHO really nice and usable) support for .zip files into Explorer, but no other compression formats. Why? If you've put in support for one, why not make it expandable so it can do them all?
I wonder if this has something to do with competition. There appears to be a small but solid market out there for compression/archiving software, and if Microsoft were to make it an integral part of Windows, those vendors selling third-party tools could kick up an anti-competition fuss. Microsoft would be stamping all over their patch, so to speak. This appears to be a perennial problem for the company...

M
MikeOS -- simple, well-documented x86 real-mode OS written in assembly language
http://mikeos.sourceforge.net
User avatar
stephenj
Member
Member
Posts: 140
Joined: Wed Jul 23, 2008 1:37 am
Location: Canada

Re: The Importance of Communication

Post by stephenj »

There appears to be a small but solid market out there for compression/archiving software, and if Microsoft were to make it an integral part of Windows, those vendors selling third-party tools could kick up an anti-competition fuss...
There may already be legal reasons for this.
Any attempt to limit the human languages so we can correctly parse them turns the language into a dialect of BASIC, basically.
You may want to look at Lojban
In my opinion one of the greatest failures of Microsoft is that they limit the integration between Vista (with a folder for Contacts, Windows Mail, and a really nice iCal-like Calendar app) and Outlook (with everything shoved into a .pst file). If there was more integration between the two (so, say, I could view my Outlook contacts in the Vista folder view). I know there is a court order preventing them from working too closely, but in my opinion this is a shame: it would have resulted in a much better interface if they could.
If you read into the situation at MS, it sounds like they have a problem with group communication/interaction. Also, the process of documentation at MS is a mess. At least, that is what I've gleamed by reading the comments at mini-microsoft and microsoft extreme makeover.
User avatar
JackScott
Member
Member
Posts: 1031
Joined: Thu Dec 21, 2006 3:03 am
Location: Hobart, Australia
Contact:

Re: The Importance of Communication

Post by JackScott »

stephenj wrote:You may want to look at Lojban
More people still talk like William Shakespeare than can speak Lojban. It looks like a great language (I've seen it before), but are you really going to implement a natural language processor for a language very few people speak? It seems a waste of effort to me.
User avatar
stephenj
Member
Member
Posts: 140
Joined: Wed Jul 23, 2008 1:37 am
Location: Canada

Re: The Importance of Communication

Post by stephenj »

I'm not really suggesting implementation, just showing an example where a language is both human and computer friendly.

Personally, I'm not a big fan of using NLP as a text based interface. English can be clumsy, and verbose.

As for working with my computer, I tend to use a GUI for most things. And when I use the command line, I like being able to type what I'm doing quickly. Instead of saying*, "recursively remove my home directory without further confirmation" I can say "rm -rf ~/". Yes, the later has a higher barrier to entry for the newbie, but why the hell is a newbie using a command line?

Wouldn't my time (as a UI dev) be better spent avoiding any case where a newb would have to use the command line?

* You can do this example with a GUI, but I wanted to use a simple example I'm sure we all know.
Hangin10
Member
Member
Posts: 162
Joined: Wed Feb 27, 2008 12:40 am

Re: The Importance of Communication

Post by Hangin10 »

JackScott wrote:On Windows (using v2.5.3), it's been crashing consistently for me. At least 4 times a day, every day, for no good reason. For the moment I've stopped using it until they sort the bugs out.
I had been encountering a bug where if I choose Exit from the tray menu Pidgin would freeze; if this affected you as well,
I highly recommend picking up 2.5.4 which supposedly fixed this particular problem.

As for my 2 cents on the thread topic, as soon as you have a decent microkernel, the rest is just carefully designed library interfaces which doesn't necessarily have to be tightly integrated with the kernel.
Post Reply