I work for a client for a few hours a week as a freelance web developer. I'm a mid level developer, but sometimes I make easy stupid mistakes, like spending around 35mins wondering why the addon I created is not working and start debugging to find out I didn't activate it in the first place. should I charge on easy stupid mistakes like that?
Delays which are due to your business/working practices are typically not the clients responsibility.
Let's look at the situation with a similar scenario.....
You're working along on a client's project and mistakenly close a file without saving it. Silly error, but I'm sure it's happened to most. This error means you have to redo what you just did for the past hour. That's an additional hour of your time.
If something, in the middle of a client's project, incurs time not directly related to the completion of the project, then it should not be invoiced. If I made some silly oversight which adds significant time to working hours in order to correct, I wouldn't feel right invoicing the client for time spent correcting my oversight. I'd not invoice for time spent on my error.
I couldn't help but leave my own insights on this matter as two existing answers are all implying a client shouldn't be charged for his employee's mistakes.
If this question is about the right of getting paid when delays have been made due to a freelancer's inexperience, low-level skills, or working practices - as opposed to his/her hidden features like characteristics, inattentiveness, or negligence - the client still has to pay for it. Errors and mistakes happen everywhere, every time. There's nothing guilty about it.
The reason is clear: The client shouldn't have hired his employee in the first place if his/her skills didn't meet up his expectations. That's what employers do. Most importantly, he should be responsible for his choice of choosing whom he is working with, and what his employee's mindset looks like.
Refusing to pay for the mistakes can only happen when the client thinks he has hired a working robot, not a human. Otherwise, any hours spent on the work that is (even slightly, let alone directly) related to the client's project are subject to the regular payment, even when you are working on an hourly basis.
If it was like 5 or 8 hours, you might want to discuss, but heck, it's like 35 minutes, not even one hour. Nobody would claim confidently that he/she always makes every 35 minutes in his workplace super-productive, would you?
As long as you have materials that support your claim you didn't idly spend time for those 35 mins, you have full rights to get paid.
We would not charge our client on stupid mistakes. We commonly subtract the estimated time from the final hours if hourly pay was required for their project. Of course, any developer will probably spend time figuring out things and testing things trying to get it to work properly. In this case we might take a few minutes off that make sense. It's all about reason.
If you were hiring someone to do something, and you found out they charged you $100 extra because they did not do what they should've known to do (press the apply button before running the new code) how would you feel? Would you happily pay them or feel this would have been all avoided if they simply pressed the apply button instead of trying to edit, and reedit the code for 30 minutes to an hour over the course of the project?.
Up to a point the issues that surround freelance (contractor)work are part of the work effort, especially with software that is new or is an unknown quantity. The contractor is not an employee and should not expect the same leeway or treatment. The point becomes shorter when the software is a known quantity or the issue is a personal mistake such as forgetting to hit a button at the appropriate time. The bottom line is that a contractor needs to be more disciplined and self-disciplined than an employee.