Ask HN: "Is that work?"
It's a commonly heard phrase in my office.

I'm the only developer where I work, based in a [car] dealership, which is one of the franchise locations of a car dealer group which owns [more than a few] (or so) other dealerships in quite a large area of the United Kingdom. For the record, I am not writing this on company time [half an hour lunch break, although he still does this even if I AM on my lunch break]

I build websites, web apps, microsites, soon to be Android Apps and iPhone apps. I am in charge of slicing and dicing photoshop templates which we get from our designer (Who sits behind me in the same office) into HTML templates to use with Drupal, CakePHP et al. I am in charge of inputting the copy for said microsites and websites from MS Word documents, this copy is written by the "Marketing Manager", who currently sits behind and to the right of me. To the right of where I sit, is my boss, the son of one of the Managing Directors of this company.

Do not get the tone of this post wrong, I love my job. I love the people, I love the fact that it's only twenty minutes down the road from my house, I love that parking is provided (although, not on site, about a quarter of a mile down the road). I even love my boss, he's a good, capable man and just wants to get things done and do what's best for this company.

However, as my work load has increased over the last two years, and things have gotten more difficult for me (harder problems, taking longer to solve and a lot more thinking) my brain has gotten tired. I've become burnt out maybe three times in the last two years, and have had to take a week off in some cases just to recover from the last project. (Considering we get 20 days holiday and zero sick pay, whenever I AM actually sick, I need to take holiday or I don't get paid for those days).

Sometimes, when I have really lost focus, or a problem has just circled in my head for too long to be solved without taking a break from thinking about it, I'll browse HN or reddit, not for very long, just for about 5 or 10 minutes until my head clears. More often than not, I'll be searching for the problem I have and reading articles about it.

My boss has the tremendous habit (when he is actually in the dealership), of coming into the office and looking straight at my screen, with the now dreaded words, "Is that work?", usually followed by "Come on [throwaway_burn]! Focus! Get some fucking work done!".

Now, my boss is a very visual person. If he can't instantly see results, he assumed I'm not doing any work. I've just spend four or five weeks creating a completely bespoke front end for building car quotes based on a completely experimental Web Service API built by a car valuation service. They usually make you host an MSSQL server, and they push or replicate their data to your server so you always have an up to date set of data to build cars with. My boss decided that this wasn't the way to go, because it's quite expensive so usually a single dealer group couldn't afford it, hence why you have aggregation systems, and people have it built into their customer management systems. [The web service company] probably lets us use this system for cheap as it is so undocumented when I first started using it, and it very slow, which means I have to pull down the data and store it on a MySQL database anyway, which basically means I had to code a script to automatically get the data from their web services and store it in our database every night. There is a huge amount of data in their systems and I only pull the data for four manufacturers.

So I built the scripts. I built the front end, even though certain things weren't documented, I managed to get them to finally send me some documentation on how to use their data effectively, and as of yesterday, the site is finally complete and finished.

Needless to say, it doesn't really look like it should have taken four or five weeks of work to produce the site, considering some other sites I've done, excluding the bespoke car price quoting system have taken two days at most. In fact, the actual site only took two days to build around the drupal module I made to interface with my back end data. As far as my boss is concerned, I've been sitting on my ass browsing HN and reddit for four weeks, and then took a week and a half to complete the site once I was bored with not working.

It has come to the point where whenever he starts his rant, I put my headphones on, or I shout at him, or I get very angry and walk off for a while. I really cannot work under these conditions for very much longer, and to be honest I am really ashamed with how I am handling his rants and outbursts.

I have built so many sites, systems for publishing stock to stock aggregates, systems for publishing stock to our own websites using different data we get back from the other dealerships, loyalty systems, niche seo websites, you name it, I've done it. I have made this man and this company a lot of money, and it's cost them a little over two years of my salary, which is paltry to say the least with how much I've worked.

They even outsourced me to develop a ticketing system for a [potentially recognisable car service] company, to the tune of more than half my annual salary for four weeks work.

It's an abusive environment, regardless of the fact that it's overlooked if I come in 20 minutes late in the morning, so long as I make it up at the end.

I'm in horrible position though, I really do like my boss in every other capacity other than a boss. His lack of understanding of what it is I do, and the fact that he can't seem to a) estimate how long a project will take me, and b) realise that not all programming work is instantly visible makes me think that I am going to quit in an epic fashion of diving off the balcony head first into an R8 Spyder and break my neck on the fucking windscreen.

Therein lies the problem. Where I live, there are no jobs. Some statistics recently suggested that a snowball had a better chance of opening an ice cream shop in the deepest layer of hell than I have of getting another job.

Although I have two years experience (more than double that if you count the freelancing I have done in a non salaried position) in PHP, MySQL, HTML, Javascript, LAMP Server administration, networking, etc, there aren't enough jobs to go around the unemployed in this city, let alone some guy with no degree.

Trying to discuss this with him really isn't working. Any advice?

TL;DR: Does anyone else browse the net in work when they are having a hard time focusing, but not blatantly trying to hide it and yet get rebuked even when the only other option is to sit, knuckles dragging drooling on the keyboard whilst staring at the screen because your brain no longer works?