But for a developer working from home the company can't tell the difference between a bug that took three days of plugging away to find and one that you knocked out in twenty minutes before binge watching House of Cards on company time.
Most professionals have enough personal integrity to work when they say they're working, but the ones that don't can be very corrosive to morale and a big drag on productivity. I got the impression that's why Marissa Meyer forced everyone at Yahoo back into the office.
I'm more productive this way. Having something like House of Cards on in the background provides enough distraction that I don't get distracted by other things, like HN. But if I were to do this in the office I doubt it would go over well.
I can damn well see when a issue has been entered in a bug tracker and when the bug has finally been marked fixed with the commit listed in the bug tracker..
So can everyone else including managers
Relying too much on commits / tracking tools is a red flag of poor management.
If any of my team reported "still working on bug X" in the standup 3 days in row, without any significantly interesting details, I'd have assigned a few more people to help out.
Something as simple as a software review board, which places time estimates on a problem agreed on by a panel of at least 2 developers and then a process to check those estimations against actual results to find how far their estimation deviate from actuality across all developers, gives a fairly accurate picture of how long something should take and becomes more accurate over time. Further automation like linking the ticketing system to the SCM, so that when a branch is created for the issue the clock starts ticking and stops at checkin/smoke test, gives a pretty accurate picture of time spent on a task. Any developer that is deviating far below the low threshold is potentially wasting time and his/her work should be reviewed, as it is only an indicator that there may be a problem not conclusive proof.
I have worked remote for over 7 years, and currently reside in a very remote area for developers (Key West) and have no issue with remote development. Either a company has these process in place or I quickly put them in place. That or find other remote work as my only bad experiences have been with companies that do not have such measured in place. It's not a hard problem to solve one just needs to know the problem domain, most managers don't, so they just resort to the butts in seats management style and honestly without similar controls the same kind of time wasting can be employed, it just manifests itself differently but incompetent managers figure well they are here so work must be getting done.
I can easily check the code in at the end of my television spree.
The presumption is that remote means lower value or productivity as a default in classic companies. It's not necessarily a matter of luxury either; your C levels don't work from their yachts in a marina normally. Some are just too rigid in approach to change how they work even if it's demonstrably negligible. I had a client before that had a mostly distributed team and wouldn't let us increase the hourly rate unless we relocated to an office - few people even at the offices ever talked that often and we hardly ever met in person with the client ourselves even for those five miles down the road.
The usual tech company reasoning now is that the tools for remote work do not facilitate creative, spontaneous insights that are critical for competitive companies.