SaaS (the camel case abbreviation for Software as a Service), is providing the concept of Leasing Software. Kind of.
Different kinds of Software as a Service I can think of, off the top of my head: Gmail, Blogger (where we are now), Salesforce.com (CRM), Google Apps. In each of these cases, you can take similar software, and build a server. With virtualization you can put several of them on the same server at one time. I could go out and buy hardware; get sendmail and wordpress; and set up DNS. Then I could have full control over my mail and my blog.
However, I use services that run the software for me, and allow me to access what I want across the internet. That's great. It saves me hardware price, electricity, and space. I don't have to worry about upgrading or bug fixes, I don't have to worry about a lot of things.
Or do I? Here's the problems list, and why I came up with it. I started looking and thinking about this because of 3 things recently.
1: Yesterday I saw a job posting for a really good job. It was Linux administration, Xen Virtualization, MySQL administration, and playing with something called SalesForce.com (which turns out to be a Saas based Customer Relationship Management (customer database)).
2: I was contacted by a recruiter I've worked with in the past about the same position.
3: A comment on this blog post / article. And yes, that is me responding to the post with some of the same information below.
Problem 1:
What happens when you have no network connection? It could be because you're traveling, natural disaster, accident (someone hit the telephone pole with their car and broke it, your ISP caught fire and burnt to the ground, someone got too happy with a backhoe and took out the local fiber --I've seen all three-- ), mistake (telco disconnects the wrong circuit --something else I've seen a lot-- or the DNS expires and the company can't get it back), or maintenance (isp has to upgrade a switch and its year end for your company). You've lost access to your email, docs or customer database. And the problem could be at the far end, where the SaaS provider is, not just where you are, or anywhere along the line between you and them.
At least if the data is on your hardware and equipment, you don't have to send your staff home, or have them waiting around doing nothing until they can get access back. You can also sit down and make modifications on data off line, and upload to central servers later. You can review old emails (something I can do when the mail server crashes, because I have a local copy on my desktop) and get ready for meetings you're about to go into. The list goes on and on.
Problem 2:
Where are the items stored? Are they on your computer, under your control or on someone else's hardware? If they decide to upgrade, do you have a say? When Microsoft comes out with patches or an update, I choose when to upgrade. When someone releases a new version of the Software, I plan it around when it will cause the least amount of chaos. That isn't the case when it's on someone else's hardware. They do things when they want to, because they think it's best for them, with no buy-in from the customer.
Another note in the same vain. I've had 2 friends (well people I know online and consider friends), who had their blogs and things stored on a community site. They lost access to most of their data when the site didn't renew it's DNS. One of these friends I was able to help and get her some of her data back. I couldn't help the other one though, because it was set up differently for him.
Problem 3:
Backing up and restoring data. When it's on your hardware, you do the back ups, and if you mess up, it's you that goofed. However, when it's on their hardware, you lose that right. They make the back ups. Companies do a good job of backing up, but they don't keep the backups forever. If they fold will they give you access to your backed up data so you can move it elsewhere?
Problem 4:
Who besides you have access to your data? In the case of SalesForce.com, Wikipedia (another SaaS) talks about how SalesForce.com was compromised in 2007. The attackers used a phishing scam, and then moved out from there.
Yes, there will always be crackers, but at least if it's my hardware, I would hope my monitoring software would catch them before they were able to attack to far. With SaaS, they just have to attack one vector because they know that's whats there. With your hardware, they have to figure out what you have first.
Going back to Wikipedia, their site shows something else just as good, although in a different fashion. Anyone can update it, which means if people don't like what is being said they can change what is said.
Problem 5:
Network overhead. Where I'm currently working, I have a decent network. Lots of switches, Gigabit links and all the fun that comes with it. However while my network can do 100mbit+ speeds from the desktop to the servers, I have a much smaller pipe going out of the network to my ISP. If my company were to use the SaaS tools, they would have to buy the next size pipe. Considering they ask me regularly if they have to have the one the size we do... I don't think telling them they would need larger would go over to well. Especially if it's because they have no choice but to get a bigger pipe, or wait longer to access the information they need.
Problem 6:
Cost and return on investment. It might cost less to do SaaS, since you're saving on hardware, software, cooling, space costs, and staffing. But it's a re-occurring bill every month to a year. What if you miss the payment? When I had Sprint / Nextel, they'd leave service on until you were 2 bills behind, then they'd cancel your service. That worked great for me when I was a contractor, and would go a month without income. AT&T, who I have now, if your 7 days late with your payment the only places you can call are customer service, and 911. What happens if you miss a payment to your SaaS because of an unforeseen problem? Also when you own the equipment you can write it off over deprecation. Can you do that with a Service?
Problem 7:
Staffing. Lets face it the economy sucks. We currently have a high unemployment rate too. If you don't have the hardware on the floor, you don't need as many people to run it. So there are less jobs and people get let go. I know I'm tired of working more than 12 hours at a time and 5 to 7 days a week (even if they're not all 12 hour shifts). If people don't have a job, they don't have money, if they don't have money, how do they buy your product? If they can't buy your product, where does your revenue come from? If you don't have revenue how do you pay your bills, including your SaaS bill? See problem 6.
I could probably go on if I wanted to, but I'll stop here. For now. While I think the concept is cool, and have no problem using some of it, knowing that things can get lost at any given time; I don't think it is what Businesses should be doing. I think the businesses that are using it, are being ran by people that are too busy counting beans and not paying enough attention to the larger picture. If they looked at the larger picture, they'd see that in the long run they could have a better Return On their Investment if they maintained everything in house.
Showing posts with label blog response. Show all posts
Showing posts with label blog response. Show all posts
Wednesday, October 1, 2008
Sunday, January 6, 2008
Users
So while reading LXer last week, and I came across a blog post about "Blockhead Users" and New Years resolutions. At one point she said:
"A sizable number of humans have devoted their lives to erecting barriers to learning anything new. You can see it when you talk to them- when something as simple as "click this button" produces a glazed expression and drool, you know you've lost them forever. Of course they'll waste hours of your time complaining about how stupid computers are."
She is wrong. Yes she maybe an author (she has at least 2 books published by O'Reilly, that I know of), and can get her point across, but that doesn't mean she's qualified to teach non-technical users new concepts.
I've have done user training. I've even been paid for it. From the beginning creating documentation, to the end, standing in front of a group of users showing the slides and telling them what to do. I've also insulted users behind their back, and openly to their face. Heck I did it in this blog. (Most users can't even use email consistently). However when you are training users, you have to leave your prejudice behind. And it's not just a case of you're prejudice you have to over come. You have to be better than the other IT people that have been condescending to the user, and the user's view that all IT people are condescending pricks (not that we're not).
Technical users are the easiest to teach. They have a grasp on the general concepts already and you can usually move through the training quite quickly. The are also the ones that IT people aren't condescending towards. Because they know the techies have a back ground and don't automatically go into condescending mode.
Non-technical users are a different breed. One thing I've noticed, is that there are 2 types of non-technical users. The ones that are willing to learn, and the ones who think why should I learn if I can get someone to do this for me. The ones whose eyes glass over and drool, surprisingly enough are not the later group. However most IT people, even without realizing, turn on the condescending factor to 11.
A few years ago, I had a chance to really see this in practice. I was working part time at a local college in the research department. Believe it or not, it was a computer based job. The job was to write customized database reports based on user requirements. They had been trying to teach the users how to run those reports for a few years, instead of slowing the department down by running the reports for the users. I offered to re-write the training documentation, and since the director of the department was a professor on the side he did most of the classes.
One of the reports I worked on collected gpa data and classes, for scholarships for students taking history classes. The person that needed to work the report has a PhD in History, and studied a few languages besides her native tongue of English.
So I called her to let her know the report was done and ready for review. She asked us if we could run it off because she didn't know how. I said I would this time, and I'd show her how to for future use. I printed off a copy of the user training manual, and walked across campus to her office.
The first thing she said was, why should I learn to do this, I have other things to do. I replied so did my department. A department of 5 people, 2 full time, 3 part time. If we had to run all 300+ reports in the system for the users, we wouldn't have time to write new reports. We wouldn't have time to do anything but run reports and run around campus to deliver them. Then she went into how important she was. She had a PhD. Spoke multiple languages, and the like. She was tired of condescending technical people who think the users are stupid because they spend their time learning things other than computers.
That brought me up short. I never said she was stupid, I knew who she was from friends and actually had respect for her. I didn't think I was coming off that in a you are wasting my time manor. So the next words out of my mouth were "what languages have you studied?" I don't remember the list now, but one of the languages she said was Spanish. I do know that none of the ones she said were any of the languages I had studied at that point. I said I've studied 4 langs, trying to impress her I was more than just some pc head. Her immediate response was computer languages don't count. Of course I had to laugh at that point, and told her I studied French in high school, Korean, Japanese and Czech on my own, and was going to be taking Spanish the following term at U of M. If I counted the computer languages I'd be up around 15 or so.
We ended up stopping and talking for a bit. I didn't have the time to, but training a user meant I would have the time to do other things later. So I made the time. She went through the documentation quickly said it wasn't condescending like the ones she was used to getting were. I said I had hopped not since I wrote it for educated people in a college environment.
She did apologize for the rudeness at the beginning. One of the part time IT people came over to help her with a computer problem earlier in the term, and she was still miffed at the way the guy treated her. It started off as ok do this, oh you don't know how to do this, then you have to start by going to the bottom of your screen and clicking the start button. Ok you've done that good, next, etc etc etc.
Users eyes glass over and they drool, because they're people and have better things to do than listen to people who assume they have an IQ of 2. If you see the glass over look starting, then maybe you should stop and re-think the way you're coming across to the user. Are you talking like an adult to a child, or are you talking like a learned professional to another one in a different field.
Of course that doesn't mean that there are not users out there that don't want to learn. However their problems go beyond not wanting to learn computers. My mom is a good example. My mom will go as far as taking notes when showing her how to do something. She will do it step by step as you show her, while putting down what buttons and in what order to push. However wait a week, and she'll call to do it again, because she doesn't feel like reading her notes. They're not important enough, and the person she's calling can do it faster. She does it with cooking and other things too.
The point is, if you do want to make users better, treat them like humans. Expect them to know somethings, or have at least the ability to put clues together to move on. I've found that if you do expect them to know something they don't, and your treating them like humans (not nice, but non-condescending) you'll find they learn a lot better. Rick Cook showed this in Wizardry Compiled.
"A sizable number of humans have devoted their lives to erecting barriers to learning anything new. You can see it when you talk to them- when something as simple as "click this button" produces a glazed expression and drool, you know you've lost them forever. Of course they'll waste hours of your time complaining about how stupid computers are."
She is wrong. Yes she maybe an author (she has at least 2 books published by O'Reilly, that I know of), and can get her point across, but that doesn't mean she's qualified to teach non-technical users new concepts.
I've have done user training. I've even been paid for it. From the beginning creating documentation, to the end, standing in front of a group of users showing the slides and telling them what to do. I've also insulted users behind their back, and openly to their face. Heck I did it in this blog. (Most users can't even use email consistently). However when you are training users, you have to leave your prejudice behind. And it's not just a case of you're prejudice you have to over come. You have to be better than the other IT people that have been condescending to the user, and the user's view that all IT people are condescending pricks (not that we're not).
Technical users are the easiest to teach. They have a grasp on the general concepts already and you can usually move through the training quite quickly. The are also the ones that IT people aren't condescending towards. Because they know the techies have a back ground and don't automatically go into condescending mode.
Non-technical users are a different breed. One thing I've noticed, is that there are 2 types of non-technical users. The ones that are willing to learn, and the ones who think why should I learn if I can get someone to do this for me. The ones whose eyes glass over and drool, surprisingly enough are not the later group. However most IT people, even without realizing, turn on the condescending factor to 11.
A few years ago, I had a chance to really see this in practice. I was working part time at a local college in the research department. Believe it or not, it was a computer based job. The job was to write customized database reports based on user requirements. They had been trying to teach the users how to run those reports for a few years, instead of slowing the department down by running the reports for the users. I offered to re-write the training documentation, and since the director of the department was a professor on the side he did most of the classes.
One of the reports I worked on collected gpa data and classes, for scholarships for students taking history classes. The person that needed to work the report has a PhD in History, and studied a few languages besides her native tongue of English.
So I called her to let her know the report was done and ready for review. She asked us if we could run it off because she didn't know how. I said I would this time, and I'd show her how to for future use. I printed off a copy of the user training manual, and walked across campus to her office.
The first thing she said was, why should I learn to do this, I have other things to do. I replied so did my department. A department of 5 people, 2 full time, 3 part time. If we had to run all 300+ reports in the system for the users, we wouldn't have time to write new reports. We wouldn't have time to do anything but run reports and run around campus to deliver them. Then she went into how important she was. She had a PhD. Spoke multiple languages, and the like. She was tired of condescending technical people who think the users are stupid because they spend their time learning things other than computers.
That brought me up short. I never said she was stupid, I knew who she was from friends and actually had respect for her. I didn't think I was coming off that in a you are wasting my time manor. So the next words out of my mouth were "what languages have you studied?" I don't remember the list now, but one of the languages she said was Spanish. I do know that none of the ones she said were any of the languages I had studied at that point. I said I've studied 4 langs, trying to impress her I was more than just some pc head. Her immediate response was computer languages don't count. Of course I had to laugh at that point, and told her I studied French in high school, Korean, Japanese and Czech on my own, and was going to be taking Spanish the following term at U of M. If I counted the computer languages I'd be up around 15 or so.
We ended up stopping and talking for a bit. I didn't have the time to, but training a user meant I would have the time to do other things later. So I made the time. She went through the documentation quickly said it wasn't condescending like the ones she was used to getting were. I said I had hopped not since I wrote it for educated people in a college environment.
She did apologize for the rudeness at the beginning. One of the part time IT people came over to help her with a computer problem earlier in the term, and she was still miffed at the way the guy treated her. It started off as ok do this, oh you don't know how to do this, then you have to start by going to the bottom of your screen and clicking the start button. Ok you've done that good, next, etc etc etc.
Users eyes glass over and they drool, because they're people and have better things to do than listen to people who assume they have an IQ of 2. If you see the glass over look starting, then maybe you should stop and re-think the way you're coming across to the user. Are you talking like an adult to a child, or are you talking like a learned professional to another one in a different field.
Of course that doesn't mean that there are not users out there that don't want to learn. However their problems go beyond not wanting to learn computers. My mom is a good example. My mom will go as far as taking notes when showing her how to do something. She will do it step by step as you show her, while putting down what buttons and in what order to push. However wait a week, and she'll call to do it again, because she doesn't feel like reading her notes. They're not important enough, and the person she's calling can do it faster. She does it with cooking and other things too.
The point is, if you do want to make users better, treat them like humans. Expect them to know somethings, or have at least the ability to put clues together to move on. I've found that if you do expect them to know something they don't, and your treating them like humans (not nice, but non-condescending) you'll find they learn a lot better. Rick Cook showed this in Wizardry Compiled.
Subscribe to:
Posts (Atom)