Google+ Thank you Google for breaking all my apps and extensions…
plus.google.com
plus.google.com
This is total bullshit. That's a fairly recent change for Facebook. For a long time they rolled out changes to the UI without warning. Hell, they'd even break documented APIs frequently. Even "breaking" API changes only get 30 days warning, and that 30 day minimum window was set in 2011 after developer complaints!
Extensions based on specific HTML structure in a third-party service will often break, and spectacularly so. It's not as if Google+ broke APIs without warning - they redesigned a site. Google never asked anyone to write extensions that change the look/function of Google+, and having done so doesn't mean they owe you a thing.
Mohamed has spent a very large amount of time developing extensions and helping educate many other users on the platform, so when all that time has been nullified by a single change you have to see why he is upset.
Google doesn't HAVE to do anything here, as you said, they didn't ask for this community, but they have been more than happy to get behind it. It would have been nice of them though, and a showing of community spirit and a real urge to support developers on the platform more if they gave a little notice that changes were coming that would adversely effect most currently active G+ extensions.
Given that they have been weathering a storm in relation to their official API, generating a bit of rapport with developers of extensions would have gone a long way.
So? This is like gardening on someone else's land. If they decide they want to build a shed there, it's their right, and whining "but I put so much work into my garden!" is absurd.
> Mohamed has spent a very large amount of time developing extensions and helping educate many other users on the platform, so when all that time has been nullified by a single change you have to see why he is upset.
Reaching out to dozens or hundreds of folks who've built creaky extensions based on exact HTML/JS structure would likely have slowed development of actual, usual features and needed design changes. It's not as if G+ is the leader in the space and able to rest on their laurels while others catch up.
No it isn't. It's like creating a map to Google's free garden that they are desperate for people to use. If they move the garden the map will be wrong. It's their right to do so, but they're desperately trying to get people to use the garden, so you would think that they might try to reach out to the map makers in advance.
Just read the blog for the Social Fixer extension (formerly known as Better Facebook). http://socialfixer.com/blog/
It is amazing how much work he has done as a single person to add new UI features and remove features people don't like while keeping up with the front end changes made by an entire team. You can see from the blog that these changes happen fairly frequently.
All of us sincerely appreciate developers building on the Google+ platform, and we're excited to continue to develop and support our official API over at https://developers.google.com/+. Please do join us over there, and let us know what you'd like us to add or improve.
That said, we obviously can't support applications built on undocumented, unofficial and internal surfaces, including those based on reverse-engineering or scraping the Google+ user interface. Since we believe that's the case here, we've reached out to the author and hope to clear the situation up quickly.
Read-only is a choice, and it's one G+ is willing to stick to (look back at Vic Gundorota's posts about "curation").
If that upsets you, you shouldn't be building extensions.
if($("#menu, #optionA, #optionB").length === 3){ /* Extension changes.. */ }Let me explain it from the point of view of my users. My Chrome extension Plus Minus is quite popular ( https://chrome.google.com/webstore/detail/pidkbnhjgdngcfcaik... ) and has some pretty hard-core users. Before the new change, my extension enabled users to mark posts as read (by collapsing them to one-line like most email UI), allowed you to control which circles showed up in your stream, and allowed numerous UI customizations (widen the stream, fade out the distracting right sidebar etc.)
Last night at 1am I updated my extension because a minor G+ change broke it. This morning I got flooded by notifications because the entire G+ UI changed and my extension broke again. G+ users installed Plus Minus because they truly felt G+ lacked some key features they found necessary. Plus Minus allowed hiding users from specific circles before G+ made a feature to adjust per-circle weight on the main stream. Try using the old or new G+ on a wide LCD and notice the large empty spaces where content should be.
Users do not care if I'm not using the official API or directly making changes to the DOM. They only care that my extension works well enough to improve their G+ experience. The philosophical question here is whether a website owner should encourage, discourage, or be ambivalent towards 3rd parties that improve a user's experience via client-side plugins. Everyone supports data-sharing via REST APIs, why not client-UI? Having a decent TOS for the UI API (don't hide ads, don't auto-post etc.) should help keep it respectable.
Reddit has RES which drastically improves the user experience. I haven't seen any official support for it, though neither have I seen any official opposition. What I have seen are users who go ecstatic when they find out about RES. Why doesn't reddit say how they feel about RES? Why don't they support it via official UI-handles? Why can't G+, FB, and other large sites do the same? Greasemonkey is too greasy. Why not officially encourage UI-improvements?
To put it bluntly, I think I can significantly improve on the G+ interface for a typical power-user because my incentives are vastly different from Google's. I don't want the big Hangout feature all up in my face, regardless of how amazing it is. I would rather see better/more content and filter it well. My 10k+ users feel the same. Should Google support me in any way? I don't expect them to but it would be nice.
Just like Mohamed, I spent a considerable amount of my personal time on a free extension to improve Google's social platform on Google's web browser. I have nothing to gain from this except kind words from strangers. Yet I feel I have helped G+ in a small way. When my extension does not work, I don't feel like browsing G+. My users have said the same thing to me repeatedly, publicly. So while 10k user is statistically negligible for Google, there are many extensions out there and extension-loving power-users make a significant portion of G+ early-adopters and frequent posters. Maybe Google no longer has to worry about early-adopters and is going straight for the masses. Again, not my right to judge. I'm just saying I spent a lot of effort on making a piece of software loved by tens of thousands and instantly, it's all gone to waste. Mohamed has 100x my users so I can understand his frustration.
Look at this from Google's perspective: they would like to improve the G+ interface for the users that don't want/need/know how to use your extension (i.e. the majority of their users). How else are they to do this - they cannot consult with extension developers on every change they make. Nothing would ever get done.
As your extension relies on scraping the DOM, you cannot expect to have stability, especially with Google's tenacity with their UI updates to Google+. You took the risk, and unfortunately, it involved more work than you would have liked.
1. Your extension overpromises to users its abilities. You are responsible for that, not the users. You make no comment in your extension's description that it relies on undocumented, unsupported DOM manipulation.
2. The "fundamental question" has been answered many times over: website owners are (rightfully) ambivalent to such extensions. If you want one, great, but don't complain to us when it breaks. This is exactly what Mohamed is doing.
3. Even a million users is insignificant to G+, so it is fallacious to say that you or Mohamed "helped" G+. You optimized it for a certain subset of users.
It's decently obnoxious and entitled to think that Google should be beholden to people doing things without any contract, or even any offer, of support. This is pretty much the same rabble-rabble-rabble that appeared when Kevin Rose shut down Oink: "I used your service, you owe me." Except it's "I wrote an extension, you owe me." Google doesn't owe you anything, and it certainly doesn't owe unsupported extensions knowledge that would otherwise be under NDA.
Transition periods, documentation, and warnings all take time and effort that might be better spent on the relatively new product.
Until they endorse a way to access Google+ with an API, anything you do is at your own risk.
Hacking doesn't mean "I got it right", it means "I got it, right?" You don't depend on hacks to get you through your release, you depend on hacks to get you through the night. And make no mistakes, writing any application around unreleased APIs is hacking. Thousands of hours down the drain and hundreds of thousands of users with a broken experience... seems like there should be a lessons-learned here, and it's not all on Google's part. Google doesn't have to notify developers of anything if Google's stance is "we don't support third party development yet".
I agree that they'd want to limit widespread usage until they get it right.
As the developer of one of the most popular Facebook customizers (Social Fixer / http://SocialFixer.com ), I call your bluff.
Facebook is the wild west. Their code is bloated and overly-complex, their approaches to UI designs are truly insane, and writing any kind of Facebook-customizing app is incredibly difficult. I think Google has been way more supportive of developers than Facebook.
The bottom line is, they offer a site and for many reasons (support, consistent brand image, etc), they want the same UI for all users. So they aren't going to explicitly support extensions that let users change how their sites work, fragmenting their users into lots of different UI's that might conflict and cause problems that are impossible for them to debug. And both Facebook and Google are huge operations, with much bigger goals than you know of. Tweaks to the UI are probably not even on their radar.
If this is your first UI redesign to endure, I say welcome to the club! I've had my stuff break on a regular basis as Facebook randomly tosses out new UI changes (and not even to everyone at the same time!). And they do it ALL THE TIME. That's the game we play. Frustrating, certainly, but also very challenging. It forces you to write better, more robust, more DOM-agnostic code, and pushes you to solve problems in better, more efficient ways.
If you don't like it, opt out and stop doing it. IMO, whining about it is kind of lame.
Google still sees itself as a small, experimental company. A lot of businesses like to do this, and it's extremely hard to pull off. Google is finding this out first-hand. They're not exactly a startup anymore.
This, on the other hand is about a guy who built "extensions" on top of google+ and used its public interface in a way that was not intended by the google+ developers and got stung when they made a change. The author is over-reacting to something that isn't really a malicious action by Google.
Perhaps they need to re-brand to a bing equivalent at the very least.