Re:My customer wants me to record a video of how I develop h...
by downandout on Friday May 10, 2013 @06:42AM
(#5685499)
In this case, it's probably a good idea to fire the customer. These types of outrageous requests don't exist in a vacuum. People like this are very difficult to deal with, tend to be very miserly, and will be a non-stop headache. The customer will question everything you do, why you did certain things a certain way (even if he or she has no idea what they are talking about), etc. Drop kick this customer from your life - it's not worth it.
Re:My customer wants me to record a video of how I develop h...
by ntoshev on Saturday May 11, 2013 @10:55AM
(#5690754)
It may be a difficult client, but I can also see someone doing this out of curiosity: would it work? In a freelance relationship that is just beginning, there is not much to lose.
Historically computers have made micromanagement easier. Think about company vehicles being tracked by GPS. It also enables managers to manage more people more effectively, have a flatter organisational structure. IT people are doing this to others, there is no reason to expect it wouldn't happen to us :)
Re:My customer wants me to record a video of how I develop h...
by Devilboy on Friday May 10, 2013 @07:09AM
(#5685556)
If the client is 'not worth it' you're just not charging enough. Just work out what your price is and send them a new quote. Don't ever fire a client, that's just silly. Make the client say no.
Re:My customer wants me to record a video of how I develop h...
by downandout on Friday May 10, 2013 @07:48AM
(#5685678)
According to the article:
"...The customer considers that if I don't want to record the video, it's because I have something to hide and want to lie about the real time spent on his project".
Dealing with a client that tells you from the outset that they believe you are going to lie to them isn't merely an annoyance. It presents a risk to your career. This client will never be satisfied, or trust a word you say. He will inevitably sue or trash your reputation because, in the end, it isn't possible to satisfy delusional clients. That risk isn't worth any amount of money.
Re:My customer wants me to record a video of how I develop h...
by PerryCox on Friday May 10, 2013 @08:24AM
(#5685784)
These kind of quotes from a customer should be instant red flags that they are not someone you want to work for. Devilboy does have a good bit of advice about charging an outrageous amount, but it's important to pick your battles. Sometimes no amount of money in the world is worth the headache that a customer like this could cause.
Re:My customer wants me to record a video of how I develop h...
by carbocation on Friday May 10, 2013 @08:40AM
(#5685838)
There is always some amount of money that is worth the trouble. Now, it may be some amount of money that cannot be paid by any entity aside from governments, Exxon, Apple, and a few others, but it is some amount of money nonetheless.
Re:My customer wants me to record a video of how I develop h...
by Amadou on Friday May 10, 2013 @10:52AM
(#5686486)
True. The problem is getting paid.
The client can agree to a ridiculous rate, but actually collecting is a whole different story. My gut says clients with red flags like this will be exceptionally difficult to collect from.
Re:My customer wants me to record a video of how I develop h...
by mikeash on Friday May 10, 2013 @01:06PM
(#5687368)
You could perhaps deal with it by insisting on being paid up front. But then I'd worry about the potential for lawsuits, if the client really is that crazy, and that's a potentially unlimited downside you can't work around with higher rates. The more he's able to pay you, the more he's able to pay his lawyers when he sues you.
Re:My customer wants me to record a video of how I develop h...
by loup-vaillant on Friday May 10, 2013 @06:06PM
(#5688934)
Happiness isn't the only thing we care about. With enough money, I'd start thinking about optimizing the world, or at least give something to the most efficient charities out there.
Re:My customer wants me to record a video of how I develop h...
by electromagnetic on Friday May 10, 2013 @07:11PM
(#5689123)
With enough money, I would do the same. With too much money (say in the billion range) I think I would go all well-intentioned super villain on the world.
Re:My customer wants me to record a video of how I develop h...
by bulatb on Friday May 10, 2013 @04:46PM
(#5688580)
Hundreds of millions is two orders of magnitude more money than "the first few millions." To me that seems pretty significant. And even more so when you factor in how many more things (or even classes of things) you can buy with $10E8 vs. $10E6.
Re:My customer wants me to record a video of how I develop h...
by baddox on Saturday May 11, 2013 @09:17PM
(#5692749)
This debate is silly. Yes, obviously ridiculous clients like this are bad news and should be avoided, but yes, technically there probably is a price I would accept. Even if you're going to ruin my reputation and my career, I would still probably do the task for, say, 100 billion dollars.
Re:My customer wants me to record a video of how I develop h...
by elithrar on Friday May 10, 2013 @07:42AM
(#5685657)
> If the client is 'not worth it' you're just not charging enough. Just work out what your price is and send them a new quote. Don't ever fire a client, that's just silly. Make the client say no.
I disagree. The more you charge the more you put yourself at risk—nominating some insane figure to scare him off is just as silly as his request (or close to it).
There is nothing wrong with not taking on work or firing a client. It is a risk assessment, and the risks with a client who asks these kind of questions are huge.
PS: I actually find it concerning that someone has to ask how to respond. Some people need to learn to say "no".
Re:My customer wants me to record a video of how I develop h...
by madaxe on Friday May 10, 2013 @08:05AM
(#5685722)
Yup. Sometimes you have to just bite the bullet and fire them.
We had someone approach us a few years ago we really didn't want to work with as everything they did screamed "moron in a hurry", so, rather than telling them to naff off, we gave them a quote that should have caused cardiac arrest.
They agreed to it.
Two years on. Still working with them. No amount of money makes it worth it. Particularly given that they still haven't paid said insane quote.
Re:My customer wants me to record a video of how I develop h...
by madaxe on Friday May 10, 2013 @11:54AM
(#5686874)
Oh, they have paid, just not in full. As to suing them, no - the industry we work in is stupidly tight knit, and regardless of the truth, any agency that sues their clients looks like crap.
We have leverage over them in terms of "whoops, looks like your sole revenue stream just got turned off", they have leverage over us in terms of reputational damage.
Were this some sole trader on the far side of the planet, there'd be nil compunction. But they're not.
Re:My customer wants me to record a video of how I develop h...
by orangethirty on Friday May 10, 2013 @10:13AM
(#5686261)
The problem is you, not the client. Simply fire them. Say "We will not work with you any more." That's all it takes. In fact, give me their phone number, I'll call them for you.
Re:My customer wants me to record a video of how I develop h...
by madaxe on Friday May 10, 2013 @11:56AM
(#5686889)
Half up front is a bad model. A better model is 25% staged throughout a project, with 25% post completion. This means that they don't get live unless you've at least 75% of the balance paid, and you then operate a one month warranty period at the end of which they pay the balance.
With these particular goons, we have our 75%, and a never-ending stream of "we've re-interpreted the specification and believe that X means Y, Z, Q, R, P and M, which we require before we will sign off", much as we'd anticipated.
This is why we charge a minimum of 75% prior to go-live. Means that even if they do decline to pay the remainder, we aren't left out of pocket, and can play silly buggers for as long as it takes for them to get bored and go away.
Re:My customer wants me to record a video of how I develop h...
by nnq on Friday May 10, 2013 @09:49AM
(#5686108)
Just curious: If the client asks you to also plumb hist toilet, you'd say "yes, but I'll bill you at $5k/hr for the toilet project"?
You really want to be the "do anything for enough money" guy? ...cause this is how you're labeling yourself by going this route more than one time. Imho, taking some pride and saying "no, fuck of, I don't do this, find someone else" makes you feel 1000x better as you realize you don't do what you do just because the client pays you, but also because you want to do it and you want to just do a good job at it. ...it might bring you less money but boy it's wort it (I may be weird, but I get a real kick when I get to just tell someone "NO", regardless of whether it's client that you're too busy to take his project or someone close asking for a favor: it really underlines your freedom and individuality and makes you feel good).
(And just to make it clear: in my book "plumbing the client's toilet" and "letting the client see a video recording of me working" are in the same league of completely unreasonable requests.)
Re:My customer wants me to record a video of how I develop h...
by mikeash on Friday May 10, 2013 @10:08AM
(#5686239)
I'd definitely accept toilet jobs for $5,000/hour, then subcontract out to a plumber for their going rate, and pocket the difference. IMO a bad example.
Re:My customer wants me to record a video of how I develop h...
by mikeash on Friday May 10, 2013 @11:34AM
(#5686752)
Then I'm no longer a contractor, and they have to hire me, put me on a payroll, etc. I doubt they want to do that.
I probably would walk away from that, but my point is that if you are a contractor, then the requirement is simply that the work be done, not that you do it personally. If they're willing to pay absurd money for something you don't want to do but other people will do, subcontract.
Re:My customer wants me to record a video of how I develop h...
by chii on Saturday May 11, 2013 @11:20PM
(#5692997)
i m certain you can put in the contact condition that a specific person died the work. imagine if i was a musician talked with composing a song for a game. the client contact to Mr because of me . they won't be happy if they find out that i sub contract it out.
Re:My customer wants me to record a video of how I develop h...
by GhotiFish on Friday May 10, 2013 @10:10AM
(#5686247)
Just to be clear here. I will gladly plumb a clients toilet for 5k/hr. I won't, on the other hand, go around killing people. I won't make the next big brother for 5k/hr. I won't develop viruses or spam for 5k/hr. Those are ethical reasons, not pride. No one would ever think less of me for plumbing a clients toilet for 5k/hr.
Re:My customer wants me to record a video of how I develop h...
by btilly on Friday May 10, 2013 @10:25AM
(#5686340)
Be careful. I have known a number of people who have followed this strategy, and discovered the hard way that they didn't charge enough.
Also note that a client that you don't want to do business with is probably a client that others do not want to do business with, so they are used to being charged exorbitant fees.
Re:My customer wants me to record a video of how I develop h...
by mzarate06 on Friday May 10, 2013 @07:29AM
(#5685610)
I disagree.
Going back and forth to reach a higher price, only to have the client say No, is a waste of time.
Even if they do agree to a higher price, money can only reconcile so much. Based on bad experiences I've had with a couple clients in the past, they couldn't pay me enough to work for them again.
Re:My customer wants me to record a video of how I develop h...
by mikeash on Friday May 10, 2013 @10:07AM
(#5686232)
I agree with the sentiment when it comes to the work they want you to do, but this client is indicating that they're likely to cause trouble when it comes to collecting payment, in which case it's probably just not worth dealing with them at all.
Re:My customer wants me to record a video of how I develop h...
by jroseattle on Friday May 10, 2013 @11:25AM
(#5686681)
It's far more important to tell the client "no", because a client will expect that you have no boundaries. The set-the-bill-rate-massively-high approach is a passive-aggressive way of telling a client "no", and it doesn't work well -- it can backfire.
Having been independent for 5+ years, saying "no" is a learned skill.
Re:My customer wants me to record a video of how I develop h...
by beat on Friday May 10, 2013 @11:43AM
(#5686802)
Hell YES fire a client! It's not just about money. It's about grief and stress. Don't work for people who want to set up a Panopticon because they think you're cheating them. Just... no.
Re:My customer wants me to record a video of how I develop h...
by analyst74 on Friday May 10, 2013 @01:01PM
(#5687343)
I generally agree with this principle, but in practice, it's really hard.
You only find out how difficult a client is after dealing with them. And in many cases, if you have a feeling that this client is not going to be a very generous one, firing them might be most profitable thing to do.
Re:My customer wants me to record a video of how I develop h...
by Silhouette on Friday May 10, 2013 @01:00PM
(#5687332)
If the client is 'not worth it' you're just not charging enough.
Some things aren't worth doing, at any price. Compromising my professional standards is one example. Working with a client who doesn't trust me to do my job properly is another. This sounds like an example of both.
Re:My customer wants me to record a video of how I develop h...
by _b8r0 on Friday May 10, 2013 @08:32AM
(#5685816)
In this particular instance I'd get the customer to provide the kit or expense the equivalent kit to do the job (hardware, software etc.) and have them pick it up. They'd pay a top whack rate for the work too, mainly because it'd be what it costs to work their way rather than mine and I'd need to factor in costs for dealing with the requests I'd expect them to make.
If at the end of the day the customer can deal with that, then I'd accept it. I can isolate all my resources specific to that customer, provide them with dedicated kit (presumably with enough storage for them to keep the video footage) and they're (hopefully) happy with what I've done.
Re:My customer wants me to record a video of how I develop h...
by oelmekki on Friday May 10, 2013 @07:31AM
(#5685616)
> Make the client say no.
That's the better thing to do, but there's a problem, here : they already are in contract. Developer tried to do something that way (mentioned in update), arguing there must be an other contract for the video thing and making it way too expansive. But from what I understand, they've just felt back on first contract.
Maybe in that very specific case it would be a good thing to break the deal early, because as parent mentionned, there certainly will be other problems (and reputation may be hurted more badly than if breaking the deal).
Re:My customer wants me to record a video of how I develop h...
by michaelochurch on Friday May 10, 2013 @07:45AM
(#5685670)
At $50,000 per hour, I'd do 40 hours of work for a hideous client.
We're not talking about murder or anything with risk to life. We're talking about dealing with assholes. There is a price (theoretically) that makes that OK, so long as it's time-limited. Of course, the client will almost certainly not agree to $50k per hour, but isn't that kind of the point?
Re:My customer wants me to record a video of how I develop h...
by berntb on Friday May 10, 2013 @08:04AM
(#5685721)
I had a boss who was a bit too ... stressed ... for a while. You just couldn't reason with him about it.
In the end I solved it. I wrote in an email that he was just too stressed and really needed some time off, so he started to attack me personally.
I wrote to him then that he should take what he just wrote and show it to his parents or some other persons he had trust in, and ask them how he was doing. He finally realized he had behaved as a complete asshole for a while.
No, it wasn't a permanent solution. But he took a long, long, long vacation half a year later.
I might work for him again, but I'd keep a reserve plan and be out of the door quite directly. Life is too short.
Edit: Too small company to have an HR department. (I might add: I don't know if I succeeded, or he got himself under control when a quarter of the people quit and the rest had the CV out or at least updating it.)
Re:My customer wants me to record a video of how I develop h...
by michaelochurch on Friday May 10, 2013 @11:11AM
(#5686606)
In a small company, "the boss" is the owner and there is no HR. If you don't get along with him, you leave.
In a large company, HR's job isn't to help you but to keep the company from getting sued. They will almost always side with management. You might make a dent in a manager's reputation and, if 5 or 6 people come forward with the same complaint about him, he might be "promoted away" into a role with less direct people management... but you're fired by that point, so it means nothing to you.
HR is not your friend.
Your best move if you have a bad boss is to work out a transfer behind his back, and leave on good terms. Find someone with more clout who will request sponsor you. Don't "apply for" transfer. Get requested. Never say anything bad about your boss in the process, just that you're looking for work that's more relevant to your skill set.
Re:My customer wants me to record a video of how I develop h...
by chops on Friday May 10, 2013 @08:47AM
(#5685859)
This is something I actually offer to my clients, and I do it for fun. I guess I was inspired by watching some of Notch's screencaps over a few days.
So I capture it with RecordMyDesktop (I run xubuntu), and run through an ffmpeg script (https://github.com/choptastic/watchmecode) that resizes the video to be the same length as an MP3, and makes an X minute screencap montage for the client.
Then it produces something like this, which I did while working on a specific feature[2] for my sports league management system[1]: http://www.youtube.com/watch?v=Hwn7mfmo0SQ
In my experience, my clients basically find it interesting seeing a snippet of how a programmer works. I had one client who would show the video around in his office like it was the greatest thing since sliced bread. At first, I thought the reaction was sarcastic, but I realized after the 3rd time showing another employee, and his elderly father, that he was just genuinely impressed by it.
THAT SAID, if a client required this of me because they wanted to monitor me (to make sure I'm working or whatever), I'd let them know that "sure, I can do it for the most part, but I have to disable it when checking my email, and any time spend curating the video due to privacy concerns will be billed to you as well."
But if a client asked it of me to satisfy their own curiosity of my workflow (which is unlikely, since I typically just volunteer it anyway), I'd be more than happy to do it.
[1] http://bracketpal.com (homepage is still embarrassingly sparse, as I've been working one-on-one with customers, a landing page redesign and online customers are coming first).
Re:My customer wants me to record a video of how I develop h...
by passerinelabs on Friday May 10, 2013 @09:27AM
(#5686029)
Watching Notch's Ludum Dare videos inspired me to create my first OS X app store app. It takes screenshots at a configurable interval and than creates H.264 encoded video of the resultant timelapse.
Re:My customer wants me to record a video of how I develop h...
by agravier on Friday May 10, 2013 @10:50AM
(#5686472)
Thank for those codes, Andrew. I have grabbed LYAEFN4PPWHW. I will use it to self-monitor my procrastination.
My first feedback to you is that the first contact is great thanks to the app's minimalism. It's really unobtrusive.
A second piece of feedback is that the menu bar icon looks poor on a retina display. I believe that one can use vector graphics (in PDF) or double the resolution (I always feel weird saying that, and want to say _quadruple_, but you know what I mean) to get a crisp rendering. I can screenshot what it looks like on my screen, if you have no opportunity to see it.
Re:My customer wants me to record a video of how I develop h...
by passerinelabs on Friday May 10, 2013 @11:17AM
(#5686629)
Thanks for the feedback. I made the icon in Illustrator and then used photoshop to create the various icon sizes. Scaling down to the very small sizes (16x16, 32x32) didn't seem to produce great results. If the app ever turns a profit my first step will be to pay an actual graphics person to redo the logo and icons.
Re:My customer wants me to record a video of how I develop h...
by passerinelabs on Friday May 10, 2013 @10:43AM
(#5686436)
For OS X users, you can take a screenshot from the command line with /usr/sbin/screencapture, so putting together a little script to make a screenshot timelapse is pretty trivial. With that and ffmpeg you can replicate most of the functionality of my program in just a few lines of bash. :-)
Re:My customer wants me to record a video of how I develop h...
by MereInterest on Friday May 10, 2013 @11:29PM
(#5689616)
Ooh, shiny. I had been using MonkeyJam, which has no CLI and an annoying user interface. Out of curiosity, using ffmpeg, do you know how one would both combine a series of still images and add an audio track to it?
Re:My customer wants me to record a video of how I develop h...
by Swizec on Friday May 10, 2013 @09:09AM
(#5685941)
Man, I usually just send a detailed report of what I've been up to[1], but this just takes the cake. Really cool idea!
[1] puts the client at ease and ensures they don't bug me while I'm working and also reminds me that I did get things done even when it feels like the whole day just vanished somewhere in a sea of tiny obstacles
Re:My customer wants me to record a video of how I develop h...
by alex_c on Friday May 10, 2013 @10:13AM
(#5686266)
Agreed, it can be a lot of fun, and it's also interesting / useful to look back at it after the project is done. Here's a video I made a couple years ago of making a simple iPhone game:
Re:My customer wants me to record a video of how I develop h...
by alex_c on Tuesday May 14, 2013 @04:04PM
(#5707661)
My developer account probably expired at some point. I kinda lost interest after the makers of the original video threatened to sue me (and they lost interest after they realized the game wasn't making any money).
Maybe I'll open source it at some point, it could be a fun tutorial for people who want to learn this stuff.
Re:My customer wants me to record a video of how I develop h...
by skisly on Friday May 10, 2013 @10:51AM
(#5686478)
ODesk have time tracking software. This system makes screenshot every minute I guess.
It's very helps when you working with new developers. And you want to know for sure that he works on your project.
Re:My customer wants me to record a video of how I develop h...
by M4v3R on Friday May 10, 2013 @11:02AM
(#5686536)
oDesk does one screenshot in each 10-minute period, at random. So you can be sure to have 6 screenshots per hour, but you can never know when the screenshots will be shot by oDesk software.
Re:My customer wants me to record a video of how I develop h...
by pests on Saturday May 11, 2013 @04:46AM
(#5690120)
I've used oDesk as well and although I feel the feature is useful it also feels very invasive. Not knowing what it will capture (looking up something on SO, checking email, writing code) has caused me to have to delete a 10 minute time slice on multiple occasions just to avoid sharing a picture of my email index or similar.
Re:My customer wants me to record a video of how I develop h...
by jroseattle on Friday May 10, 2013 @11:44AM
(#5686811)
As absurd as this situation was, it really doesn't surprise me in the least. Having been an independent consultant for several years, I've had some client requests that were real humdingers. My favorite of all-time (I'm paraphrasing, but this was a real conversation):
Client: We would like a fixed-price bid on this project.
Me: Well, let's talk about your project. What's the scope?
Client: We're working on a list, which will grow over time.
Me: Let's make sure I understand. You want a fixed price for a variable project?
Client: Yes. We're budgeting $5000.
Me: I'm sure I do not understand.
Do you expect the entirety of work to basically be my
bill rate X number of hours = $5000?
Client: We expect you to manage that. The reason we're interested in a fixed-price
bid is because we need to contain costs.
Me: You mean contain *your* costs. Do you think there is any risk
in this project from my side?
Client: Only your time is at risk.
Me: (face-palm)
Re:My customer wants me to record a video of how I develop h...
by Avenger42 on Friday May 10, 2013 @01:23PM
(#5687478)
What's the polite way to tell them "there's not a chance I, or any other reasonable person, would consider this request" and keep the door open to future work? Or is it not worth keeping that door open?
Re:My customer wants me to record a video of how I develop h...
by A1kmm on Friday May 10, 2013 @08:36PM
(#5689304)
Many small non-tech businesses don't know much about IT project management, so it can be worth trying to educate them and convince them to have reasonable expectations.
I would start by explaining that there are 6 project management variables: benefit, cost, scope, risk, time, and quality, and that you usually can't change one variable while holding all the others fixed.
Scope in particular is an important issue to discuss with clients who want a fixed price; explain that unless the scope of the project is fixed, your risk is unlimited but your revenue is fixed.
I suggest offering, as an alternative, cost estimates with tolerances; in other words, offer a time and materials contract, with a best estimate of the costs. In addition, agree to a tolerance - if your revised forecasts suggest you will exceed the tolerance at any point, you will contact the client and give them the option of cancelling the project and paying only for costs already incurred or setting a new higher tolerance.
If a client really wants a fixed price contract, consider breaking the project down into smaller, lower risk, very well defined tasks, and contracting each one separately (and only quote later tasks when you have more information available from earlier ones, so you can add tasks for things like a second design iteration). Ensure that tasks which are already completed are paid for before new ones are undertaken, and that you have the contractual right to quit and still get paid for the tasks you completed.
Re:My customer wants me to record a video of how I develop h...
by acdha on Friday May 10, 2013 @03:23PM
(#5688161)
I used to give them one attempt at education as to why software development isn't off-the-shelf if it seemed reasonable that they might simply be new to that sort of project. In practice, though, it was almost always the case that they were simply being unrealistic and hoping to find someone new / desperate who would give them more than what they paid for.
Re:My customer wants me to record a video of how I develop h...
by wildgift on Saturday May 11, 2013 @01:03AM
(#5689749)
How well do those projects go? I've had bids rejected for being too high, even when other developers failed to deliver due to underbidding. Some people never learn.
Re:My customer wants me to record a video of how I develop h...
by acdha on Saturday May 11, 2013 @10:11AM
(#5690617)
In a couple of cases, it went well – there are people who genuinely appreciate being educated about what they as a businessperson need to know about approaching software dev. Sadly, it's a definitely not a high success rate: if you don't get an impression that the conversation is going well, there's probably a good reason for that.
Re:My customer wants me to record a video of how I develop h...
by ZoFreX on Friday May 10, 2013 @08:21AM
(#5685778)
Something I dealt with a lot in oil & gas engineering, and have never personally witnessed in software engineering, is a "change order".
The contract is signed. At this point, if you deliver on your end of the deal, they have to deliver on theirs†. If they want anything other than what is in that contract - additions, changes, removals - you send them a change order. This is a new document for both parties to sign, covering the new request, and comes with its own price tag on top of the contract already agreed.
These are essential when you are engineering an actual physical product, because changing the specification of a natural gas compression plant when it's half built is very, very expensive. Change orders are an excellent tool for ensuring not that scope creep doesn't happen, but that scope creep doesn't turn a profitable project into a loss.
† Of course, practically, no-one wants to take on a client that they will have to sue to get the money from. But you should know where you stand when that contract is signed - you deliver your part, they deliver theirs. You can simply say "no" to additional requests and deliver on the original.
Re:My customer wants me to record a video of how I develop h...
by cmdkeen on Friday May 10, 2013 @08:26AM
(#5685791)
Oh it happens - that is how, certainly in the UK, the large consultancies like Accenture and Cap Gemini make their large profits, especially from Government type contracts.
They know that the customer will inevitably want change, especially with things like a new senior civil servant or politician wanting to "make their mark". At that point they are the only bidder, so no competition to drive down the price, and the client will generally pay whatever they ask - because it isn't their money they are spending.
Re:My customer wants me to record a video of how I develop h...
by smackfu on Friday May 10, 2013 @09:13AM
(#5685962)
This is extremely common in corporate software engineering, where a contract specifies exactly what will be delivered.
In practice, those change requests are usually rejected, because the people with control of the money aren't the people using the product, and the customer ends up paying for something they aren't happy with.
A lot of Agile methodologies are a response to this extremely strict change control.
Re:My customer wants me to record a video of how I develop h...
by mindcrime on Friday May 10, 2013 @10:48AM
(#5686460)
A lot of Agile methodologies are a response to this extremely strict change control.
The problem, from what I've seen, is that developers understand agile development, but the "money people" don't. To them, "agile" is just a buzzword that means "good" and they aren't actually interested in participating in the process. So now you get people who don't understand, or aren't interested in, attending demo sessions, prioritizing the backlog, or reading/writing user stories. And when things don't proceed along a nice, smooth, water-fall like sequence, they get stressed and start complaining.
One place I'd say the Agile movement has fallen on it's sword, is in terms of promotion, education and buy-in from the "business community" to the point that they understand that Agile processes require their active participation.
Re:My customer wants me to record a video of how I develop h...
by PeterisP on Friday May 10, 2013 @12:51PM
(#5687270)
If you want to do Agile development, then you also have to do Agile billing - i.e., not a pre-agreed price limit for "thingamajig that does X, Y and Z", but in essence renting the team for each sprint with an understanding of what you'll get in each development (and billing) cycle.
Re:My customer wants me to record a video of how I develop h...
by Silhouette on Friday May 10, 2013 @05:19PM
(#5688738)
A lot of Agile methodologies are a response to this extremely strict change control.
Which is useful in some contexts, but also why Agile isn't taken seriously in others. The most popular Agile methodologies (if that isn't itself an oxymoron...) are fundamentally incompatible with processes and practices that can be useful in real projects, particularly very large projects where there are many participants to co-ordinate and many stakeholders with an interest in the results but not necessarily the same interest. At some point, a more formal process is the only way you can get anything useful done, and that includes a sensible but controlled process for handling changing requirements.
Re:My customer wants me to record a video of how I develop h...
by mindcrime on Friday May 10, 2013 @10:42AM
(#5686432)
Something I dealt with a lot in oil & gas engineering, and have never personally witnessed in software engineering, is a "change order".
This is commonplace in custom software development in my experience. Having a change control process in place, and negotiating a price-tag for changes to the original contract, happened all the time in my first programming job. We were mainly working for government agencies (municipal and county government), universities, etc., and this was all completely normal.
Re:My customer wants me to record a video of how I develop h...
by yogo on Friday May 10, 2013 @10:41AM
(#5686424)
There aren't change orders per se but usually in one of the clauses in the contract you specify that work outside of the scope (outlined in the contract), once all parties agree, will incur an additional charge or something like that.
Re:My customer wants me to record a video of how I develop h...
by madaxe on Friday May 10, 2013 @12:00PM
(#5686915)
PRINCE2, baby. It's heavy-handed, produces mountains of paperwork that you hope to never have to look at again, and allows both parties complete clarity as to what is, and what isn't, in scope. You want to change the scope? Needs a change-request, a re-quote, a re-scope, and it all trickles back into the project plan.
The only problem with this process is that it actively encourages the client to find any shred of loosely worded anything in any specification, and interpret the hell out of it, rather than having to go through change control.
Re:My customer wants me to record a video of how I develop h...
by IsaacL on Friday May 10, 2013 @07:40AM
(#5685651)
This customer sounds like a bad apple and should be fired, but there is some justification for such an idea.
ODesk enforces the use of their time tracking software for hourly projects. Their staff economist, John Joseph-Horton, has some interesting papers about the justification for this. He argues it is actually in the interests of freelancers to have such a system in place.
Basically, freelancers prefer to be paid hourly (or daily, or whatever), rather than per-project, because clients love ratcheting and requesting endless tweaks otherwise. But clients prefer to pay per-project, so they can predict how much stuff will cost and not have to risk paying for freelancers that pad hours. ODesk's solution removes some of the risk for hourly billing, making it a more acceptable solution for clients, which works out for the benefit of freelancers.
A similar concept is how companies benefit from being able to be sued. Because you can sue them if they screw you around, you feel more comfortable dealing with them.
Re:My customer wants me to record a video of how I develop h...
by pnathan on Friday May 10, 2013 @03:50PM
(#5688301)
In my screwing around with oDesk, I've selected flat per-project fees; no snooping and its a lot easier not to worry about hourly fees and angry clients imo.
Re:My customer wants me to record a video of how I develop h...
by forgottenpaswrd on Friday May 10, 2013 @02:16PM
(#5687797)
As a past software manager of a elite team(of super smart people, engineers, phDs) and developer myself:
Never do that, say NO.
Don't try to justify it. Don't lose your time with this person, don't lose emotional energy.
It is one thing to be efficient, another to "look efficient". You can be not efficient but look like you are or the contrary, specially when your client don't have a clue in software.
The reason this customer wants the video is to go against you, as you said, he already does not trust you.
When you do, he is going to go and say: look, you are not working 80% of the time, so I am paying you 20%. Probably he already have plans for doing that.
He probably does not have the money, or the organization changed plans and don't need the software as much as when the agreement was done and wants to backpedal with any excuse.
Re:My customer wants me to record a video of how I develop h...
by lnanek2 on Friday May 10, 2013 @11:24AM
(#5686674)
This is very common on remote work sites like Elance. Elance calls their version WorkView. It's not strange at all and actually beneficial for both sides of the interaction. This is because if you accept an hourly job with WorkView, Elance guarantees you'll get paid for your hours. For the employer it is obviously beneficial as well because you have more piece of mind the worker is actually spending their time working.
Re:My customer wants me to record a video of how I develop h...
by ww520 on Friday May 10, 2013 @09:09AM
(#5685945)
The customer clearly doesn't understand how creative work is done and approaches it with a factory mindset where workers are busy with their hands. A large amount of software development work are done in thinking, which appears to be inactivity to the outsiders. A lot of problems are solved while taking showers or driving. Does he want to video record those?
Two approaches for this client:
- Simple say no, and don't waste time trying to reason it with him.
Re:My customer wants me to record a video of how I develop h...
by chris_mahan on Friday May 10, 2013 @09:02PM
(#5689361)
A lot of my work also happens on paper, and I don't share those either, as they are my notes and designs. Anything that needs to be sent on to the customer I transfer to electrons.
Re:My customer wants me to record a video of how I develop h...
by rayiner on Friday May 10, 2013 @10:42AM
(#5686429)
This answer is great: "This is the right answer. In business, when someone asks you do something extra the correct answer is "Yes I can do that. It will cost you $X." Make the other person say no if you really don't want to do something. Charge a ridiculous amount for it. Of course, there is the danger that they will agree which is why you charge something that would still be happy with. I would probably want it up-front as well."
Re:My customer wants me to record a video of how I develop h...
by learc83 on Friday May 10, 2013 @12:38PM
(#5687180)
The problem I'd have with doing this is that it would be difficult to think of a price I would be happy with.
The customer sounds like the type who would use this video to nitpick everything.
------
On June 1st from 11:03-11:07 you spent your time on google searching for something called an API. I demand you deduct 4 minutes from my bill.
------
Then if you get tired of dealing with it he can trash your reputation and he has edited video to back it up. Let's face it, if someone has hundreds of hours of footage of your work, they can find problems.
The whole thing sounds like a nightmare that could easily spiral out of control.
Re:My customer wants me to record a video of how I develop h...
by finnw on Friday May 10, 2013 @03:39PM
(#5688253)
> Let's face it, if someone has hundreds of hours of footage of your work, they can find problems.
Yes but they will have to spend hundreds of their own time to do that (and if they intend to sue you to get their money back, also a lawyer's time.) I wouldn't worry - they will lose their own job long before they find enough evidence to harm your reputation.
Re:My customer wants me to record a video of how I develop h...
by wikwocket on Saturday May 11, 2013 @02:15AM
(#5689871)
Do not underestimate the amount of determination or free time available to an unreasonable client. If they were able to do cost-benefits analysis and good-faith estimates of the value of someone's time, they probably would not have made a request like this to begin with.
In short, do not expect reasonable behavior from unreasonable clients. :)
Re:My customer wants me to record a video of how I develop h...
by neogodless on Friday May 10, 2013 @04:07PM
(#5688406)
What is your customer paying you to provide? I've had an issue with "time-based" cost for a long time. I've done freelance work since 2001, and I use time to estimate my projects (very roughly) and even to invoice it (based on what I had estimated for them). Many clients are comfortable with that. On larger projects, I even paid other developers and had them submit their time to get paid. But I have never tracked my own time or outlined it for a client. In fact, with those other developers, I just wanted to know "how much" time they spent so I could pay them. The applications we worked on had the features implemented as requested. The client was happy with what was delivered to them.
While I did not track my time, I often found that I spent less time than I estimated. I say that because my freelance was on some evenings and weekends, and it simply didn't add up to a great amount of time. Once, I had a client over time, that often paid late, and we stopped working together when he had an outstanding bill. Much later, he contacted me with an urgent request. I got up front payment for twice what I estimated. Then I dug into the project and completed it in a tiny fraction of the time it took me to do it.
If you contractually agree to give clients "dedicated time being truly productive towards creating the requested end result", then I suppose you really need to be meticulous about tracking your time and providing records of how that time was used to move the project forward. I'd really rather not get in the habit of selling my time at all. I'm selling my ability to reach your objective, to build what you want to use. We'll define to the best of our ability what I'll be providing to you, we'll agree on the price, and then we'll measure our success on my delivery to you and your payment to me. What happens in between is of my concern, and it is in my best interest to spend my time effectively and perform efficiently.
Re:My customer wants me to record a video of how I develop h...
by podperson on Friday May 10, 2013 @08:01PM
(#5689234)
This is part of a common trap in contracts and employer relationships, which is measuring and paying for the wrong thing. In this case it's time.
Afraid you're being ripped off by a contractor? Write the contract so that you only pay in acceptable increments against the deliverables you want at a price you're happy to pay.
We once had a client request we deploy software across all desktop computers to measure how many keystrokes each user made, how often their screen saver was on, etc. I pointed out that they were already measuring employee activities such as calls answered, customer satisfaction, policies not surrendered (i.e. customers planning to sever their accounts who were retained) etc. why measure and reward activities when you were measuring and could reward results?
Re:My customer wants me to record a video of how I develop h...
by urza on Friday May 10, 2013 @09:35AM
(#5686057)
Switch from being paid by hour to being paid by task. Client describes a project, together you split it into a list of small tasks, you assign value to each task, client agrees to it, and you get paid by task. Then it is up to you how productive you are..
Re:My customer wants me to record a video of how I develop h...
by goofygrin on Friday May 10, 2013 @11:32AM
(#5686737)
We're quickly migrating to this model. You have to be (much) better about estimating work, but switching from cost+ to value added pricing really makes better sense (and your margins increase).
Re:My customer wants me to record a video of how I develop h...
by deletes on Friday May 10, 2013 @07:44AM
(#5685666)
I think you crashed their site :).
>>Warning: mysql_connect() [function.mysql-connect]: Too many connections in /var/www/html/hackertyper/config.php on line 6
DB Error, overload!!!! Crap, system crashed :/<<
Interesting how a single well placed post can achieve so much.
Re:My customer wants me to record a video of how I develop h...
by ameen on Friday May 10, 2013 @08:53AM
(#5685884)
To play the devils advocate here, What if the customer wants to have a blog series on how that product was built? Key software design decisions, features, etc. What if he wanted to run this video by another software developer who only agreed to do software reviews, etc. How different would this from recording a bunch of screencasts on building a product. The customer gets knowledge of the entire build process, from the initial sketches to the final release.
But most if not all of it would be too much to deal with for a freelancer and should at least incur a 3x price increase to deal with the various variables involved.
Re:My customer wants me to record a video of how I develop h...
by ams6110 on Friday May 10, 2013 @09:32AM
(#5686046)
Seems pretty clear this was not the case, since they told him they didn't believe he was working. I think this is just another point in favor of NOT billing by the hour for contract work. If you are billing for the product delivered, rather than your time, it takes your work habits completely off the table.
Re:My customer wants me to record a video of how I develop h...
by BjoernKW on Friday May 10, 2013 @09:43AM
(#5686089)
This really makes me angry. Not only the fact that there are actually customers out there who demand such outrageous bullshit from their contractors but also that most certainly there are freelancers who put up with that sort of behaviour.
What makes this all the more infuriating is that both the original poster and lots of commenters waste a considerable amount of their valuable time for justifying or coming up with a solution for weaseling out of the contract with the customer while the only reasonable answer to said customer is to bugger off.
Re:My customer wants me to record a video of how I develop h...
by uptown on Friday May 10, 2013 @08:50AM
(#5685873)
Here's his update:
While all those suggestions are equally valuable, I've personally chosen to say to my customer that I accept to do the videos, but in this case, we must renegotiate the contract, keeping in mind that there will be a considerable cost, including the additional fee for copyright release. The new overall cost would be in average three times the actual cost of the project. Knowing this customer, I'm completely sure that he would never accept to pay so much, so the problem is solved.
Second update:
The customer effectively declined the proposal to renegotiate the original contract, taking in account the considerable additional cost.
Re:My customer wants me to record a video of how I develop h...
by Adirael on Friday May 10, 2013 @08:56AM
(#5685892)
It seems that he ended up doing the work as per the original contract after telling the client the video recordings would mean paying 3x of the original amount.
Re:My customer wants me to record a video of how I develop h...
by spacecowboy on Friday May 10, 2013 @01:09PM
(#5687384)
This reminds me of an observation I made while out at lunch one day. I was at a local restaurant having lunch and realized that two tables away, there were some of the ladies who were janitors at my work. After a couple of minutes of over hearing them talk about my work place, they were pretty outspoken, one of them said "....and they just sit there and stare at the screen all day......and they get paid all this money - I don't get it...."
Re:My customer wants me to record a video of how I develop h...
by JohnLBevan on Friday May 10, 2013 @08:42AM
(#5685847)
Surely the free market covers this? The contract specifies estimated and maximum costs for the project, and presumably includes a definition of the scope / requirements to be covered and delivery date. If the client thinks you're charging for work you're not doing then presumably they think you're too expensive, so should the two parties should agree to terminate the contract and the client should go and find someone else to build it. If they can't find a better rate then so what if you're charging them to spend a few hours a day on Facebook; the fact you're still able to deliver your side makes that irrelevant.
The only issue is if the maximum cost is far beyond the estimate and there's no justification of why that may be the case beforehand. If there is good justification before hand you should be able to let the customer know if that risk's been realised and report on it immediately, giving evidence to show that this risk became a reality.
Re:My customer wants me to record a video of how I develop h...
by alan_cx on Friday May 10, 2013 @07:57AM
(#5685706)
My thinking is this:
If you fire the customer, then in the customer's mind (s)he was right to be concerned, and you just proved it by running away.
Contract in place, signed. Keep all records of the unreasonable request and attempt to change the contract conditions. Do the work. Bill the customer. Sue if they don't pay.
Re:My customer wants me to record a video of how I develop h...
by SupremumLimit on Friday May 10, 2013 @08:41PM
(#5689313)
A lot of (most?) people don't have the time, money or inclination to sue. It's not like you can just press a button to deploy your lawyer. Have you actually done this? How did it work out?
Re:My customer wants me to record a video of how I develop h...
by polymatter on Friday May 10, 2013 @07:01AM
(#5685531)
Well, the customer is always right. I wonder if I can offer that as a competitive advantage.
I'm only half-joking. I can't see how the customer will get any value out of the videos though. I guess this only makes sense if the customer is one of those bewildering people who assume programming is just typing all the time.
Re:My customer wants me to record a video of how I develop h...
by michaelt on Friday May 10, 2013 @07:36AM
(#5685637)
I can't see how the customer will get any value out
of the videos though.
Have you ever been in the situation where you discovered you were mis-billed for something? I certainly have. Accidental mis-charging does happen, even between parties that trust one another. Still, most businesses are willing to tolerate a certain level of error.
Given that occasional mis-charging is inevitable, how can you make sure it's below the threshold you're able to tolerate if you don't maintain audit records?
With that said, I'd fire the client assuming I wasn't desperate for work.
Re:My customer wants me to record a video of how I develop h...
by corresation on Friday May 10, 2013 @07:22AM
(#5685589)
My guess was confirmed by the post, which is that the customer is one of those "this didn't really take you n hours!" sorts, and the video is like a time log.
Re:My customer wants me to record a video of how I develop h...
by OldSchool on Saturday May 11, 2013 @08:26AM
(#5690411)
Experience says the only solution to a situation like this is to fire the customer and likely refund any money taken already, no matter how much sunk cost you have.
Long-term, purging yourself of a toxic customer is at least as valuable as gaining a new one. For added points, direct him to your competition.
Re:My customer wants me to record a video of how I develop h...
by mcintyre1994 on Friday May 10, 2013 @01:58PM
(#5687691)
I don't understand why this customer signed a contract with somebody they believe to be a crook. Surely not doing that is in hypothetical don't get yourself scammed to oblivion 101?
Re:My customer wants me to record a video of how I develop h...
by neogodless on Friday May 10, 2013 @04:14PM
(#5688441)
Yes - I need to see where this money you're going to pay me with is coming from. Each step of the process. Please trace it back to when the money was printed while you're at it and include all labor and transactions that took place since then that made it possible today for you to transfer it me.
Re:My customer wants me to record a video of how I develop h...
by yoster on Friday May 10, 2013 @07:35AM
(#5685631)
Since he is wanting an outrageous demand, I would say DO IT! Before anyone disagrees, there is an upside. Since this is a stupid request, I would turn around and come up with an outrageous fee to do this. A fee so high that it would definitely get you smiling if he decided to pay you. Of course, justify that you will need this amount because of the camcorder you will need for the paper and pen work, the extra storage space, and the extra computer equipment you will need to "allow this to happen". Also, add in time to purchase this equipment, be sure to get the top of the line with markups, and add in the fees and related expenses. Be sure to get the money from the client as well so you don't get burned.
Re:My customer wants me to record a video of how I develop h...
by vacri on Friday May 10, 2013 @07:50AM
(#5685685)
I wouldn't advice trying the technical arguments ("the video could be faked!" etc) since the client is clearly unfamiliar with freelancing and these arguments would simply serve to confuse. Either 'yes' or 'no', the 'yes' having whatever caveats you want to go with it.
I've never freelanced, but I've spent a lot of time doing support, and I know what kind of personality is being dealt with here. The solution the poster has come up with is probably the best one apart from firing the customer (not always fiscally possible)
Re:My customer wants me to record a video of how I develop h...
by narag on Friday May 10, 2013 @08:39AM
(#5685836)
...since the client is clearly unfamiliar with freelancing...
That made me think of that cuatomer's employees and their working environment. I've read just the other day about a tech company over here that forces employees to have lunch at the company restaurant (with abusive prices) among many other outrageous measures. I'd say no to this kind of people, just because I don't want to make them any money.
Historically computers have made micromanagement easier. Think about company vehicles being tracked by GPS. It also enables managers to manage more people more effectively, have a flatter organisational structure. IT people are doing this to others, there is no reason to expect it wouldn't happen to us :)
"...The customer considers that if I don't want to record the video, it's because I have something to hide and want to lie about the real time spent on his project".
Dealing with a client that tells you from the outset that they believe you are going to lie to them isn't merely an annoyance. It presents a risk to your career. This client will never be satisfied, or trust a word you say. He will inevitably sue or trash your reputation because, in the end, it isn't possible to satisfy delusional clients. That risk isn't worth any amount of money.
The client can agree to a ridiculous rate, but actually collecting is a whole different story. My gut says clients with red flags like this will be exceptionally difficult to collect from.
BS.
Happiness as a function of wealth is not a linear curve. After the first few millions, a hundred millions or a billion isn't that a big deal.
Therefore, if the price to justify some headache or discomfort is above a million or so, just getting rid of the headache is more valuable.
You don't sell time, you sell a product, even if it's part of a 'project'.
I disagree. The more you charge the more you put yourself at risk—nominating some insane figure to scare him off is just as silly as his request (or close to it).
There is nothing wrong with not taking on work or firing a client. It is a risk assessment, and the risks with a client who asks these kind of questions are huge.
PS: I actually find it concerning that someone has to ask how to respond. Some people need to learn to say "no".
We had someone approach us a few years ago we really didn't want to work with as everything they did screamed "moron in a hurry", so, rather than telling them to naff off, we gave them a quote that should have caused cardiac arrest.
They agreed to it.
Two years on. Still working with them. No amount of money makes it worth it. Particularly given that they still haven't paid said insane quote.
We have leverage over them in terms of "whoops, looks like your sole revenue stream just got turned off", they have leverage over us in terms of reputational damage.
Were this some sole trader on the far side of the planet, there'd be nil compunction. But they're not.
"Payment upon completion?" Biggest lie ever
With these particular goons, we have our 75%, and a never-ending stream of "we've re-interpreted the specification and believe that X means Y, Z, Q, R, P and M, which we require before we will sign off", much as we'd anticipated.
This is why we charge a minimum of 75% prior to go-live. Means that even if they do decline to pay the remainder, we aren't left out of pocket, and can play silly buggers for as long as it takes for them to get bored and go away.
You really want to be the "do anything for enough money" guy? ...cause this is how you're labeling yourself by going this route more than one time. Imho, taking some pride and saying "no, fuck of, I don't do this, find someone else" makes you feel 1000x better as you realize you don't do what you do just because the client pays you, but also because you want to do it and you want to just do a good job at it. ...it might bring you less money but boy it's wort it (I may be weird, but I get a real kick when I get to just tell someone "NO", regardless of whether it's client that you're too busy to take his project or someone close asking for a favor: it really underlines your freedom and individuality and makes you feel good).
(And just to make it clear: in my book "plumbing the client's toilet" and "letting the client see a video recording of me working" are in the same league of completely unreasonable requests.)
I probably would walk away from that, but my point is that if you are a contractor, then the requirement is simply that the work be done, not that you do it personally. If they're willing to pay absurd money for something you don't want to do but other people will do, subcontract.
Also note that a client that you don't want to do business with is probably a client that others do not want to do business with, so they are used to being charged exorbitant fees.
Going back and forth to reach a higher price, only to have the client say No, is a waste of time.
Even if they do agree to a higher price, money can only reconcile so much. Based on bad experiences I've had with a couple clients in the past, they couldn't pay me enough to work for them again.
Me: OK no problem, that will cost an extra $X
Client: Ah actually don't worry about the recording
Having been independent for 5+ years, saying "no" is a learned skill.
You only find out how difficult a client is after dealing with them. And in many cases, if you have a feeling that this client is not going to be a very generous one, firing them might be most profitable thing to do.
Some things aren't worth doing, at any price. Compromising my professional standards is one example. Working with a client who doesn't trust me to do my job properly is another. This sounds like an example of both.
Sometimes it's better to just save yourself the headache of having to deal with a person any further than you already have.
If at the end of the day the customer can deal with that, then I'd accept it. I can isolate all my resources specific to that customer, provide them with dedicated kit (presumably with enough storage for them to keep the video footage) and they're (hopefully) happy with what I've done.
That's the better thing to do, but there's a problem, here : they already are in contract. Developer tried to do something that way (mentioned in update), arguing there must be an other contract for the video thing and making it way too expansive. But from what I understand, they've just felt back on first contract.
Maybe in that very specific case it would be a good thing to break the deal early, because as parent mentionned, there certainly will be other problems (and reputation may be hurted more badly than if breaking the deal).
We're not talking about murder or anything with risk to life. We're talking about dealing with assholes. There is a price (theoretically) that makes that OK, so long as it's time-limited. Of course, the client will almost certainly not agree to $50k per hour, but isn't that kind of the point?
In the end I solved it. I wrote in an email that he was just too stressed and really needed some time off, so he started to attack me personally.
I wrote to him then that he should take what he just wrote and show it to his parents or some other persons he had trust in, and ask them how he was doing. He finally realized he had behaved as a complete asshole for a while.
No, it wasn't a permanent solution. But he took a long, long, long vacation half a year later.
I might work for him again, but I'd keep a reserve plan and be out of the door quite directly. Life is too short.
Edit: Too small company to have an HR department. (I might add: I don't know if I succeeded, or he got himself under control when a quarter of the people quit and the rest had the CV out or at least updating it.)
In a large company, HR's job isn't to help you but to keep the company from getting sued. They will almost always side with management. You might make a dent in a manager's reputation and, if 5 or 6 people come forward with the same complaint about him, he might be "promoted away" into a role with less direct people management... but you're fired by that point, so it means nothing to you.
HR is not your friend.
Your best move if you have a bad boss is to work out a transfer behind his back, and leave on good terms. Find someone with more clout who will request sponsor you. Don't "apply for" transfer. Get requested. Never say anything bad about your boss in the process, just that you're looking for work that's more relevant to your skill set.
So I capture it with RecordMyDesktop (I run xubuntu), and run through an ffmpeg script (https://github.com/choptastic/watchmecode) that resizes the video to be the same length as an MP3, and makes an X minute screencap montage for the client.
Then it produces something like this, which I did while working on a specific feature[2] for my sports league management system[1]: http://www.youtube.com/watch?v=Hwn7mfmo0SQ
In my experience, my clients basically find it interesting seeing a snippet of how a programmer works. I had one client who would show the video around in his office like it was the greatest thing since sliced bread. At first, I thought the reaction was sarcastic, but I realized after the 3rd time showing another employee, and his elderly father, that he was just genuinely impressed by it.
THAT SAID, if a client required this of me because they wanted to monitor me (to make sure I'm working or whatever), I'd let them know that "sure, I can do it for the most part, but I have to disable it when checking my email, and any time spend curating the video due to privacy concerns will be billed to you as well."
But if a client asked it of me to satisfy their own curiosity of my workflow (which is unlikely, since I typically just volunteer it anyway), I'd be more than happy to do it.
[1] http://bracketpal.com (homepage is still embarrassingly sparse, as I've been working one-on-one with customers, a landing page redesign and online customers are coming first).
[2] The video above is the screencap of the implementation of this feature: http://www.youtube.com/watch?v=zxTfaSfa_dQ
Here it is: http://appstore.com/mac/ScreenshotTimelapse
Here are 25 promo codes if anyone wants to try it out: http://pastebin.com/K6Xx59jY
I'm happy to hear any feedback: andrew at passerinelabs.com or @passerinelabs on Twitter.
My first feedback to you is that the first contact is great thanks to the app's minimalism. It's really unobtrusive.
A second piece of feedback is that the menu bar icon looks poor on a retina display. I believe that one can use vector graphics (in PDF) or double the resolution (I always feel weird saying that, and want to say _quadruple_, but you know what I mean) to get a crisp rendering. I can screenshot what it looks like on my screen, if you have no opportunity to see it.
(Classic version 'free forever'; doesn't seem to support stitching all the images together to export a video but should be do-able manually.)
brew install watch watch -n10 'screencapture `date +%s`.png'
Thanks.
Thanks!
I took XET4YHM63J7R
[1] puts the client at ease and ensures they don't bug me while I'm working and also reminds me that I did get things done even when it feels like the whole day just vanished somewhere in a sea of tiny obstacles
http://www.youtube.com/watch?feature=player_detailpage&v...
Maybe I'll open source it at some point, it could be a fun tutorial for people who want to learn this stuff.
I would do it, but there would be a fee for the hassle and my legal expenses.
Source: I work for an agency that does this.
Alternatively, you could just run multiple X servers.
I would start by explaining that there are 6 project management variables: benefit, cost, scope, risk, time, and quality, and that you usually can't change one variable while holding all the others fixed.
Scope in particular is an important issue to discuss with clients who want a fixed price; explain that unless the scope of the project is fixed, your risk is unlimited but your revenue is fixed.
I suggest offering, as an alternative, cost estimates with tolerances; in other words, offer a time and materials contract, with a best estimate of the costs. In addition, agree to a tolerance - if your revised forecasts suggest you will exceed the tolerance at any point, you will contact the client and give them the option of cancelling the project and paying only for costs already incurred or setting a new higher tolerance.
If a client really wants a fixed price contract, consider breaking the project down into smaller, lower risk, very well defined tasks, and contracting each one separately (and only quote later tasks when you have more information available from earlier ones, so you can add tasks for things like a second design iteration). Ensure that tasks which are already completed are paid for before new ones are undertaken, and that you have the contractual right to quit and still get paid for the tasks you completed.
I see a lot of tenders on these for fixed price projects with stuff like "winning bidder will receive NDA and project description".
So the seller is expected to bid a fixed price before they know what work needs to be done?
Yes, they wanted me to agree to a fixed price, then they would ask me what to do. The term "rent-a-slave" came to mind.
The contract is signed. At this point, if you deliver on your end of the deal, they have to deliver on theirs†. If they want anything other than what is in that contract - additions, changes, removals - you send them a change order. This is a new document for both parties to sign, covering the new request, and comes with its own price tag on top of the contract already agreed.
These are essential when you are engineering an actual physical product, because changing the specification of a natural gas compression plant when it's half built is very, very expensive. Change orders are an excellent tool for ensuring not that scope creep doesn't happen, but that scope creep doesn't turn a profitable project into a loss.
† Of course, practically, no-one wants to take on a client that they will have to sue to get the money from. But you should know where you stand when that contract is signed - you deliver your part, they deliver theirs. You can simply say "no" to additional requests and deliver on the original.
They know that the customer will inevitably want change, especially with things like a new senior civil servant or politician wanting to "make their mark". At that point they are the only bidder, so no competition to drive down the price, and the client will generally pay whatever they ask - because it isn't their money they are spending.
In practice, those change requests are usually rejected, because the people with control of the money aren't the people using the product, and the customer ends up paying for something they aren't happy with.
A lot of Agile methodologies are a response to this extremely strict change control.
The problem, from what I've seen, is that developers understand agile development, but the "money people" don't. To them, "agile" is just a buzzword that means "good" and they aren't actually interested in participating in the process. So now you get people who don't understand, or aren't interested in, attending demo sessions, prioritizing the backlog, or reading/writing user stories. And when things don't proceed along a nice, smooth, water-fall like sequence, they get stressed and start complaining.
One place I'd say the Agile movement has fallen on it's sword, is in terms of promotion, education and buy-in from the "business community" to the point that they understand that Agile processes require their active participation.
Which is useful in some contexts, but also why Agile isn't taken seriously in others. The most popular Agile methodologies (if that isn't itself an oxymoron...) are fundamentally incompatible with processes and practices that can be useful in real projects, particularly very large projects where there are many participants to co-ordinate and many stakeholders with an interest in the results but not necessarily the same interest. At some point, a more formal process is the only way you can get anything useful done, and that includes a sensible but controlled process for handling changing requirements.
This is commonplace in custom software development in my experience. Having a change control process in place, and negotiating a price-tag for changes to the original contract, happened all the time in my first programming job. We were mainly working for government agencies (municipal and county government), universities, etc., and this was all completely normal.
The only problem with this process is that it actively encourages the client to find any shred of loosely worded anything in any specification, and interpret the hell out of it, rather than having to go through change control.
ODesk enforces the use of their time tracking software for hourly projects. Their staff economist, John Joseph-Horton, has some interesting papers about the justification for this. He argues it is actually in the interests of freelancers to have such a system in place.
Basically, freelancers prefer to be paid hourly (or daily, or whatever), rather than per-project, because clients love ratcheting and requesting endless tweaks otherwise. But clients prefer to pay per-project, so they can predict how much stuff will cost and not have to risk paying for freelancers that pad hours. ODesk's solution removes some of the risk for hourly billing, making it a more acceptable solution for clients, which works out for the benefit of freelancers.
A similar concept is how companies benefit from being able to be sued. Because you can sue them if they screw you around, you feel more comfortable dealing with them.
Don't try to justify it. Don't lose your time with this person, don't lose emotional energy.
It is one thing to be efficient, another to "look efficient". You can be not efficient but look like you are or the contrary, specially when your client don't have a clue in software.
The reason this customer wants the video is to go against you, as you said, he already does not trust you.
When you do, he is going to go and say: look, you are not working 80% of the time, so I am paying you 20%. Probably he already have plans for doing that.
He probably does not have the money, or the organization changed plans and don't need the software as much as when the agreement was done and wants to backpedal with any excuse.
Two approaches for this client:
- Simple say no, and don't waste time trying to reason it with him.
- Just say no to the project and move on.
The customer sounds like the type who would use this video to nitpick everything.
------ On June 1st from 11:03-11:07 you spent your time on google searching for something called an API. I demand you deduct 4 minutes from my bill. ------
Then if you get tired of dealing with it he can trash your reputation and he has edited video to back it up. Let's face it, if someone has hundreds of hours of footage of your work, they can find problems.
The whole thing sounds like a nightmare that could easily spiral out of control.
Yes but they will have to spend hundreds of their own time to do that (and if they intend to sue you to get their money back, also a lawyer's time.) I wouldn't worry - they will lose their own job long before they find enough evidence to harm your reputation.
In short, do not expect reasonable behavior from unreasonable clients. :)
Just add zeroes until you get that warm fuzzy feeling. Myself, I'd be able to never work again :P
While I did not track my time, I often found that I spent less time than I estimated. I say that because my freelance was on some evenings and weekends, and it simply didn't add up to a great amount of time. Once, I had a client over time, that often paid late, and we stopped working together when he had an outstanding bill. Much later, he contacted me with an urgent request. I got up front payment for twice what I estimated. Then I dug into the project and completed it in a tiny fraction of the time it took me to do it.
If you contractually agree to give clients "dedicated time being truly productive towards creating the requested end result", then I suppose you really need to be meticulous about tracking your time and providing records of how that time was used to move the project forward. I'd really rather not get in the habit of selling my time at all. I'm selling my ability to reach your objective, to build what you want to use. We'll define to the best of our ability what I'll be providing to you, we'll agree on the price, and then we'll measure our success on my delivery to you and your payment to me. What happens in between is of my concern, and it is in my best interest to spend my time effectively and perform efficiently.
It's not even worth the cost of justifying it.
It's very simple: "I don't do this kind of service"
You'll waste less time that can be put to better usage like getting other customers
What's the standard rate? £400/hour for this, including set-up time, transferring the files etc.
The number doesn't even matter - just make it big enough to be worth your while in putting up with such nonsense.
Afraid you're being ripped off by a contractor? Write the contract so that you only pay in acceptable increments against the deliverables you want at a price you're happy to pay.
We once had a client request we deploy software across all desktop computers to measure how many keystrokes each user made, how often their screen saver was on, etc. I pointed out that they were already measuring employee activities such as calls answered, customer satisfaction, policies not surrendered (i.e. customers planning to sever their accounts who were retained) etc. why measure and reward activities when you were measuring and could reward results?
>>Warning: mysql_connect() [function.mysql-connect]: Too many connections in /var/www/html/hackertyper/config.php on line 6 DB Error, overload!!!! Crap, system crashed :/<<
Interesting how a single well placed post can achieve so much.
But most if not all of it would be too much to deal with for a freelancer and should at least incur a 3x price increase to deal with the various variables involved.
What makes this all the more infuriating is that both the original poster and lots of commenters waste a considerable amount of their valuable time for justifying or coming up with a solution for weaseling out of the contract with the customer while the only reasonable answer to said customer is to bugger off.
I think most software engineers prefer this. But I'm not sure.
http://www.youtube.com/watch?v=vO_O4AD1MhI
While all those suggestions are equally valuable, I've personally chosen to say to my customer that I accept to do the videos, but in this case, we must renegotiate the contract, keeping in mind that there will be a considerable cost, including the additional fee for copyright release. The new overall cost would be in average three times the actual cost of the project. Knowing this customer, I'm completely sure that he would never accept to pay so much, so the problem is solved.
Second update:
The customer effectively declined the proposal to renegotiate the original contract, taking in account the considerable additional cost.
This clients sounds like they would be a world of pain.
The only issue is if the maximum cost is far beyond the estimate and there's no justification of why that may be the case beforehand. If there is good justification before hand you should be able to let the customer know if that risk's been realised and report on it immediately, giving evidence to show that this risk became a reality.
If you fire the customer, then in the customer's mind (s)he was right to be concerned, and you just proved it by running away.
Contract in place, signed. Keep all records of the unreasonable request and attempt to change the contract conditions. Do the work. Bill the customer. Sue if they don't pay.
If I were in your shoes I would calmly explain that you do offer video of the coding in the condensed form that the HN person 'chops' shows.
That service of offering the video will cost $X more per hour to implement and you would be happy to rewrite the contract to include that service.
I'm only half-joking. I can't see how the customer will get any value out of the videos though. I guess this only makes sense if the customer is one of those bewildering people who assume programming is just typing all the time.
Given that occasional mis-charging is inevitable, how can you make sure it's below the threshold you're able to tolerate if you don't maintain audit records?
With that said, I'd fire the client assuming I wasn't desperate for work.
Long-term, purging yourself of a toxic customer is at least as valuable as gaining a new one. For added points, direct him to your competition.
I've never freelanced, but I've spent a lot of time doing support, and I know what kind of personality is being dealt with here. The solution the poster has come up with is probably the best one apart from firing the customer (not always fiscally possible)
That made me think of that cuatomer's employees and their working environment. I've read just the other day about a tech company over here that forces employees to have lunch at the company restaurant (with abusive prices) among many other outrageous measures. I'd say no to this kind of people, just because I don't want to make them any money.
No developer should ever succumb to that kind of babysitting privacy invasion.