palegray.net writes "Inspired by a recent Ask Slashdot, I've written a step-by-step tutorial for setting up an Openfire server on Debian Linux, for those interested in running their own open source collaboration server. Aimed at those just getting started with collaboration software, the tutorial shows precisely how to get Openfire up and running quickly on a base Debian install, and offers a basic feature tour of the software's plugin and IM gateway functionality."
I love Virtual Appliances. But HOWTOS are still necessary because I, for one, always question the security/authenticity of 3rd party VMware images. I use them to eval software and, if I like it, create my own appliance so I have full control and know there are no rootkits/backdoors installed...
You hit the nail right on the head. I do create VMware and Virtualbox images for various appliance setups, and I share them with friends who know me personally. However, I completely understand admins who wouldn't run something I created in their enterprise, as they have no real assurance that I haven't put something nasty in there (of course I haven't, but they're doing their job by asking questions like that).
That's fine for a demo. I wouldn't want to run a chat server with hundreds of users that way.
Do you mean you wouldn't run a production server as a VM image or you wouldn't run it using a VM image you did not create yourself? If the former, you should know a lot of servers are moving to running VMs for ease of: scaling, hardware sharing, backups, hardware migration, and cheaper "in the cloud" hosting. Why wouldn't you want to run your production server in a VMWare VM?
Do you mean you wouldn't run a production server as a VM image or you wouldn't run it using a VM image you did not create yourself?
The latter. Recall that TPP thought that VM appliances made installation how-tos obsolete. That was the idea I was pooh-poohing.
As it happens, I'm the documentation lead for a server [sun.com] for which virtualization is very important. A very common use case for this system is "consolidation": you take a rack full of low-end servers each handling a separate application, and convert them all into a single machine running each application in a separate VM. Savings in power and real-estate cost can be enormous. VMware
I think that that was grandparent's point: To see somebody write an article on setting up a jabber server, then casually note, near the end, that XMPP seems to work OK for him, as though it were some sort of esoteric peripheral configuration option, tends to cause one's eyebrow to start migrating up the forehead.
Fair enough. I'm sorry about the misinterpretation.
I wonder if, perhaps, that is an artefact of the fact that XMPP is, strictly speaking, derived from jabber, rather than just another name for it. Possibly there are some differences between earlier "jabber" implementations and later "XMPP, informally know as jabber" implementations.
Try the Google Talk client (Google Talk is Jabber/XMPP), I don't know if you can connect to non-google servers, but with federation you should be able to talk to people on other servers anyway.
Disclaimer: I don't actually have a BlackBerry, but I've heard the client is good.
I get really worried about how much the author actually knows about the server...
Hi, I'm the guy that wrote the article. You'll note in the screenshots that under the gateway settings section XMPP is lited as "experimental." I thought it was pretty odd, too. That's why I specifically mentioned the fact that it worked great for me.
I work at a small business with 10 or so employees. Recently, people have been getting more and more used to Instant Messaging as a way to provide non-intrusive information that is more instant than email. Lately we've even taken to setting up chat rooms to bring together three or four stakeholders to have a short conversation about something.
Now, I know XMPP and OpenFire support Multi-User chats, but what about more robust conferencing? The other day, I wanted to send a screenshot of an application I was working on to everyone in the MU chat. From what I could tell, this is not possible in OpenFire, and perhaps not supported in XMPP. Also, it would be great to collaborate on or point to a file that exists in our shared filesystem, which I would think is a fairly common use case, but I could not find a way to do that either.
So, I suppose what I'm wondering is, are there any solutions similar to Openfire but provide more robust conferencing? It'd be killer to be able to toss revisions around and maybe do some whiteboarding or something...
And if not, who wants to help me write an XEP that will address these use cases?;)
"The other day, I wanted to send a screenshot of an application I was working on to everyone in the MU chat"
The Spark client that the same company offers has the ability to send screen-shots, actually you grab any part of the screen you want and send it. That is the one feature that is used a lot where I work.
Right, but unless I'm mistaken, there is no way to send a screenshot to all of the people in a multi-user chat without initiating individual file transfers. Collaboration between two people seems fairly well supported, especially when you include the above-mentioned whiteboard application, but nothing I've found works when you want to collaborate among three or more people.
I did RTFA, it does explain how to install it, but besides that what does openfire actually do? Jabber support, graphs showing who is online, what else?
I did RTFA, it does explain how to install it, but besides that what does openfire actually do? Jabber support, graphs showing who is online, what else?
It's a Jabber server. What else do you expect it to do? Your comment is like saying you know Apache supports serving Web pages, but what else does it do?
someone who knows how to document a procedure. I don't use linux but even I could follow the instructions.
This is one of the key reasons for a slow adoption rate among interested users. Instead of getting the usual, "RTFM newb!", if there was more explicit documentation such as this that people could be pointed to, people would not be so readily turned off.
And no, MAN pages do not count as documentation. Some people (dare I say most?) need step-by-step instructions on how to do something the first time so they are sure they are doing things correctly. Afterwards, they're free to tinker til their hearts delight.
And no, MAN pages do not count as documentation. Some people (dare I say most?) need step-by-step instructions on how to do something the first time so they are sure they are doing things correctly. Afterwards, they're free to tinker til their hearts delight.
*gives a mold-friendly thumbs up*
Damn straight about the Man Pages! Man pages are for reference for experienced users. In other words, for those who are wondering, "What are the parameters again?" Why?
You see, when you read the man pages, parameters have all these "[]" and "-" and other things. I've occasionally come across programs that had "optional" parameters in their man pages that ended being required.
I appreciate the general sentiments in your post, but the above is simply not correct. Putting aside issues of writing style, quality, completeness, etc., along with the abomination called info pages, manpages ARE documentation.
What you are looking for or expecting is a Tutorial. And most likely one written in a friendly style that includes a breadth of related topics (like "How do I install this thing?" or "What's a protocol?" or "How does XMMP work?". For that, I'd suggest a Google search. Programmers are expected to document their work, but it's unreasonable to expect them to write Tutorials.
To put things in a reverse perspective, the frustrating thing for non-Windows users is that on Windows, almost nothing is documented. Lots recursive clicky links that pop up HowTo's with explanatory or descriptive verbage, but no real documentation.
This is one of the issues that pisses me off as a former open source programmer who gave up on it because of user whining.
When you're willing to spare the time to help a project write it or pay someone in that project to write it, then you can complain about lack of documentation. A programmer is a busy person - they usually have a full-time job to pay the bills (assuming their full-time job isn't to work on the project, in which case, you are completely justified in castigating them for a lack of document
Man pages are (or are meant to be) reference documentation. Reference docs are important, but yeah, so are procedural docs.
Thing is, they're really hard to write well. I earn an absurd amount of money because I'm good at writing them. Most developers are not. Even the ones who are good writers (a distinct minority) tend to be good at academic-style writing, where you assume a lot of sophistication on the part of your reader. Such writers have no patience for the nit-picky detail good procedural docs need.
(I once wrote software release notes which included an explanation of how to unzip an archive. The developers, who happened to be pretty brilliant computer scientists doing cutting-edge work, thought their audience was "smarter" than that and made me take it out. Wackiness ensued.)
If you want good procedural documentation, you have to put a lot of work into creating it. Most open source projects don't have the extra bandwidth, and even if they do, they don't have people with the right skill set. That boils down to fluency with language and and stubborn patience when describing boring details. Not a big skill set, but one very few people seem to have.
I earn an absurd amount of money because I'm good at writing them.
Your company hiring? Part of my job is doing exactly what the author of this posting does (and apparently you). Document, step-by-step, how to do something. I'm writing for people who are supposed to know this stuff already yet I still provide screenshots and exact steps (Click Next, Click Next, Click Next, Click OK) so there is no misunderstanding or confusion as to what needs to be done.
Although I understand that point of view, I actually find it harder to keep track of where I am in a procedure if it's all on one very long page. I frequently scroll around a bit to double-check things, and it's a lot of easier to avoid getting lost with pages only about 2-3 screens high:).
Since we are talking XMPP/Jabber, I would be interested to see the User Gaming [xmpp.org] specification implemented by XMPP messengers. This would make a nice open cross-platform alternative to XFire and the likes.
I noticed someone elsewhere suggested implementing this and then grafting a XFire compatibility layer around it, so that people could migrate to the open platform.
TFA states, "[openfire is] an extremely capable collaboration system [...] able to do much more than simple chat". I use Openfire, and am not aware of it's collaboration system. Can anyone explain? SInce TFA doesn't seem to...
Sadly, Openfire did have some issues when I used with icedtea6. The best example I can think of is the MSN transport. MSN simply wont connect because of the security algorithm it uses. This is caused by icedtea6 missing that algorithm which Sun's JDK has.
Sadly, Openfire did have some issues when I used with icedtea6. The best example I can think of is the MSN transport. MSN simply wont connect because of the security algorithm it uses. This is caused by icedtea6 missing that algorithm which Sun's JDK has.
Hmm, have you tried it with Debian's openjdk-6-jre package? I think the Sun security provider was opened quite some time ago.
Do you remember which algorithm causes the trouble? This is really a bit odd because even the Sun-derived JDKs (like those from IB
As other posters have noted, I encountered issues with OpenJDK while I was writing the first draft of the tutorial. I'll probably go back and try it again, communicating the precise issues I ran across to the Openfire project. Hopefully they (or me, if I can find the time) can get the issues resolved, as I would have greatly preferred using a JVM in the "free" repositories.
I was surprised not to find it when I did an "aptitude search openfire" after seeing a few people mention it in response to the ask slashdot. (My jabberd2 setup works well enough for my company anyway - I was just curious.)
This howto says it is GPL, then says to install prerequisites such as sun java from "non-free" and then download a.deb file to install. Why wouldn't it simply be added to the debian repo so installation is as simple as "aptitude install openfire"? Any idea if the company behind it ha
Something this basic requires a posting on the front of Slashdot? Great choice, kdawson!
I'll be sure to try and get my article about setting Openfire up on FreeBSD here soon..........
Ah, feel free to excuse yourself at anytime if you feel the rest of us are not worthy of your all-knowing power.
He was merely posting as a response to several queries he had received for the information, and since it's not quite as simple as apt-get to do this, along with the fact that FOSS collaboration tools are gaining popularity in this economy of ever-shrinking budgets, I find it rather relevant.
This was a direct response to an Ask Slashdot article a few days ago. The community seemed more than interested to offer tips for what software they advised using, but nobody seemed to offer any concrete installation instructions. The Openfire community documentation is great, but kinda hard to wrap your brain around for Debian installs (mostly because it doesn't cover prerequisites and some other points).
Whats wrong with debian? Yes, CentOS and the likes are great but Debian is still a very good OS and its really just opinion of whether you prefer the APT or RPM system. Personally I use both. I have a dedicated server currently running a small number of Source-based Game servers and my home server is running CentOS 5.2.
Debian Lenny is a great OS, its not really a complete re-write, but thats the point. Its a good, mature system which can only get better.
And what operating system were you referring to? W
Fricking cowards! They're all alike! Pop in just long enough to lob a comment grenade your way, then run off with their tail between their legs!
Shoot the bloody lot of them, I say!!
Now, onto more serious stuff....
BTW....Debian is a great server OS. Rock solid stable, some of the fastest security patching in the industry, and doesn't even attempt to get you to install a GUI on your server.
GoogleTalk server uses XMPP standards to communicate. Only time I've seen Server to Server messages not function properly with GoogleTalk is when you do not have proper SRV records set for your domain.
How To's are so 90s.. (Score:5, Interesting)
These days you make me a VMWare image I can just pop-in and run.
Re:How To's are so 90s.. (Score:5, Funny)
Sorry, that's out of my league. Do you have a how-to on using a vmware image?
Parent
Re:How To's are so 90s.. (Score:4, Funny)
Parent
Re: (Score:2)
Sup dawg, I heard u like vmware, so I put a virtual machine in ur virtual machine so u can virtually virtualise virtualisation.
Re:How To's are so 90s.. (Score:5, Interesting)
Parent
Re: (Score:2)
Re: (Score:2)
That's fine for a demo. I wouldn't want to run a chat server with hundreds of users that way.
Re: (Score:2)
That's fine for a demo. I wouldn't want to run a chat server with hundreds of users that way.
Do you mean you wouldn't run a production server as a VM image or you wouldn't run it using a VM image you did not create yourself? If the former, you should know a lot of servers are moving to running VMs for ease of: scaling, hardware sharing, backups, hardware migration, and cheaper "in the cloud" hosting. Why wouldn't you want to run your production server in a VMWare VM?
Re: (Score:2)
Do you mean you wouldn't run a production server as a VM image or you wouldn't run it using a VM image you did not create yourself?
The latter. Recall that TPP thought that VM appliances made installation how-tos obsolete. That was the idea I was pooh-poohing.
As it happens, I'm the documentation lead for a server [sun.com] for which virtualization is very important. A very common use case for this system is "consolidation": you take a rack full of low-end servers each handling a separate application, and convert them all into a single machine running each application in a separate VM. Savings in power and real-estate cost can be enormous. VMware
Re:How To's are so 90s.. (Score:4, Informative)
Parent
very odd (Score:3, Interesting)
I thought that openfire was a jabber server so when the article states
"XMPP is also quite stable, at least for my purposes."
I get really worried about how much the author actually knows about the server...
realistically I would like to see some mobile jabber clients for things like blackberry
if anyone knows a free beer version of a jabber client for blackberry let me know
(I am not interested in webapp's since I like my privacy)
regards
John Jones
Re:very odd (Score:5, Informative)
FYI - XMPP is the Jabber protocol.
Parent
Re:very odd (Score:4, Insightful)
Parent
Re: (Score:2)
Re: (Score:2)
I wonder if, perhaps, that is an artefact of the fact that XMPP is, strictly speaking, derived from jabber, rather than just another name for it. Possibly there are some differences between earlier "jabber" implementations and later "XMPP, informally know as jabber" implementations.
Re: (Score:2)
Re: (Score:2)
if anyone knows a free beer version of a jabber client for blackberry let me know
If you had a WinMo or Symbian phone, I could recommend a half dozen different apps. CrapBerry apps? Not so much.
Google Talk (Score:2)
Re: (Score:2)
I get really worried about how much the author actually knows about the server...
Hi, I'm the guy that wrote the article. You'll note in the screenshots that under the gateway settings section XMPP is lited as "experimental." I thought it was pretty odd, too. That's why I specifically mentioned the fact that it worked great for me.
What about a better conferencing solution? (Score:5, Interesting)
I work at a small business with 10 or so employees. Recently, people have been getting more and more used to Instant Messaging as a way to provide non-intrusive information that is more instant than email. Lately we've even taken to setting up chat rooms to bring together three or four stakeholders to have a short conversation about something.
Now, I know XMPP and OpenFire support Multi-User chats, but what about more robust conferencing? The other day, I wanted to send a screenshot of an application I was working on to everyone in the MU chat. From what I could tell, this is not possible in OpenFire, and perhaps not supported in XMPP. Also, it would be great to collaborate on or point to a file that exists in our shared filesystem, which I would think is a fairly common use case, but I could not find a way to do that either.
So, I suppose what I'm wondering is, are there any solutions similar to Openfire but provide more robust conferencing? It'd be killer to be able to toss revisions around and maybe do some whiteboarding or something...
And if not, who wants to help me write an XEP that will address these use cases? ;)
Re: (Score:3, Informative)
Re: (Score:3, Insightful)
"would be great to collaborate on or point to a file"
It sounds like you should use a URL.
Re: (Score:2)
Re: (Score:2, Informative)
"The other day, I wanted to send a screenshot of an application I was working on to everyone in the MU chat"
The Spark client that the same company offers has the ability to send screen-shots, actually you grab any part of the screen you want and send it. That is the one feature that is used a lot where I work.
Re: (Score:3, Interesting)
What's openfire? (Score:2, Insightful)
I did RTFA, it does explain how to install it, but besides that what does openfire actually do? Jabber support, graphs showing who is online, what else?
Re: (Score:2)
I did RTFA, it does explain how to install it, but besides that what does openfire actually do? Jabber support, graphs showing who is online, what else?
It's a Jabber server. What else do you expect it to do? Your comment is like saying you know Apache supports serving Web pages, but what else does it do?
Finally... (Score:5, Insightful)
someone who knows how to document a procedure. I don't use linux but even I could follow the instructions.
This is one of the key reasons for a slow adoption rate among interested users. Instead of getting the usual, "RTFM newb!", if there was more explicit documentation such as this that people could be pointed to, people would not be so readily turned off.
And no, MAN pages do not count as documentation. Some people (dare I say most?) need step-by-step instructions on how to do something the first time so they are sure they are doing things correctly. Afterwards, they're free to tinker til their hearts delight.
*gives a mold-friendly thumbs up*
Re:Finally... (Score:4, Insightful)
And no, MAN pages do not count as documentation. Some people (dare I say most?) need step-by-step instructions on how to do something the first time so they are sure they are doing things correctly. Afterwards, they're free to tinker til their hearts delight.
*gives a mold-friendly thumbs up*
Damn straight about the Man Pages! Man pages are for reference for experienced users. In other words, for those who are wondering, "What are the parameters again?" Why?
You see, when you read the man pages, parameters have all these "[]" and "-" and other things. I've occasionally come across programs that had "optional" parameters in their man pages that ended being required.
Parent
Re:Finally... (Score:5, Insightful)
And no, MAN pages do not count as documentation.
I appreciate the general sentiments in your post, but the above is simply not correct. Putting aside issues of writing style, quality, completeness, etc., along with the abomination called info pages, manpages ARE documentation.
What you are looking for or expecting is a Tutorial. And most likely one written in a friendly style that includes a breadth of related topics (like "How do I install this thing?" or "What's a protocol?" or "How does XMMP work?". For that, I'd suggest a Google search. Programmers are expected to document their work, but it's unreasonable to expect them to write Tutorials.
To put things in a reverse perspective, the frustrating thing for non-Windows users is that on Windows, almost nothing is documented. Lots recursive clicky links that pop up HowTo's with explanatory or descriptive verbage, but no real documentation.
Parent
Re: (Score:2)
This is one of the issues that pisses me off as a former open source programmer who gave up on it because of user whining.
When you're willing to spare the time to help a project write it or pay someone in that project to write it, then you can complain about lack of documentation. A programmer is a busy person - they usually have a full-time job to pay the bills (assuming their full-time job isn't to work on the project, in which case, you are completely justified in castigating them for a lack of document
Re:Finally... (Score:5, Interesting)
Man pages are (or are meant to be) reference documentation. Reference docs are important, but yeah, so are procedural docs.
Thing is, they're really hard to write well. I earn an absurd amount of money because I'm good at writing them. Most developers are not. Even the ones who are good writers (a distinct minority) tend to be good at academic-style writing, where you assume a lot of sophistication on the part of your reader. Such writers have no patience for the nit-picky detail good procedural docs need.
(I once wrote software release notes which included an explanation of how to unzip an archive. The developers, who happened to be pretty brilliant computer scientists doing cutting-edge work, thought their audience was "smarter" than that and made me take it out. Wackiness ensued.)
If you want good procedural documentation, you have to put a lot of work into creating it. Most open source projects don't have the extra bandwidth, and even if they do, they don't have people with the right skill set. That boils down to fluency with language and and stubborn patience when describing boring details. Not a big skill set, but one very few people seem to have.
Parent
Re: (Score:2)
Your company hiring? Part of my job is doing exactly what the author of this posting does (and apparently you). Document, step-by-step, how to do something. I'm writing for people who are supposed to know this stuff already yet I still provide screenshots and exact steps (Click Next, Click Next, Click Next, Click OK) so there is no misunderstanding or confusion as to what needs to be done.
The only time things don't work out as ex
Re: (Score:2)
Um...
A quick google of "linux howto" would take you to this:
http://tldp.org/ [tldp.org]
Not quite sure what is so difficult about those. Many of the things I now do as part of a career I learned from that site.
Re: (Score:2)
User Gaming - xep-0196 (Score:2)
Since we are talking XMPP/Jabber, I would be interested to see the User Gaming [xmpp.org] specification implemented by XMPP messengers. This would make a nice open cross-platform alternative to XFire and the likes.
I noticed someone elsewhere suggested implementing this and then grafting a XFire compatibility layer around it, so that people could migrate to the open platform.
Is this something that would interest any /.ers?
"Collaboration"? "More than chat"? (Score:2)
Re: (Score:2)
Will they ever fix the audit log issue? (Score:2)
http://www.igniterealtime.org/issues/browse/JM-1212 [igniterealtime.org]
This bit me last year, and it's apparently still not fixed. :(
Why not OpenJDK? (Score:2)
Why don't you install OpenJDK instead Sun's proprietary Java implementation? Is there a technical reason for this choice?
Re: (Score:2, Informative)
Re: (Score:2)
Sadly, Openfire did have some issues when I used with icedtea6. The best example I can think of is the MSN transport. MSN simply wont connect because of the security algorithm it uses. This is caused by icedtea6 missing that algorithm which Sun's JDK has.
Hmm, have you tried it with Debian's openjdk-6-jre package? I think the Sun security provider was opened quite some time ago.
Do you remember which algorithm causes the trouble? This is really a bit odd because even the Sun-derived JDKs (like those from IB
Re: (Score:3, Informative)
Why isn't it in Debian already? (Score:2)
This howto says it is GPL, then says to install prerequisites such as sun java from "non-free" and then download a
For the rest of us... (Score:5, Interesting)
Something this basic requires a posting on the front of Slashdot? Great choice, kdawson!
I'll be sure to try and get my article about setting Openfire up on FreeBSD here soon..........
Ah, feel free to excuse yourself at anytime if you feel the rest of us are not worthy of your all-knowing power.
He was merely posting as a response to several queries he had received for the information, and since it's not quite as simple as apt-get to do this, along with the fact that FOSS collaboration tools are gaining popularity in this economy of ever-shrinking budgets, I find it rather relevant.
Parent
Re:Fluff Articles? (Score:4, Insightful)
Parent
Re: (Score:2, Interesting)
Re: (Score:2)
What's wrong with Debian. Explain yourself.
Re: (Score:2)
Bad attitude?
BAD ATTITUDE?!?
I'll show you BAD ATTITUDE, you moron!!
Fricking cowards! They're all alike! Pop in just long enough to lob a comment grenade your way, then run off with their tail between their legs!
Shoot the bloody lot of them, I say!!
Now, onto more serious stuff....
BTW....Debian is a great server OS. Rock solid stable, some of the fastest security patching in the industry, and doesn't even attempt to get you to install a GUI on your server.
Re: (Score:2)
GoogleTalk server uses XMPP standards to communicate. Only time I've seen Server to Server messages not function properly with GoogleTalk is when you do not have proper SRV records set for your domain.