Be careful where you click to download software – Google's AdWords are becoming increasingly deceptive, tricking users into clicking ads that feature "Download" buttons! You think you're clicking to download the site's software, but instead you're being tricked into downloading something totally different. Read on…
The blame is squarely on Google. They allow ads that feature deceptive buttons and links that appear to be valid download buttons. For sites that offer real software downloads (like SocialFixer.com), and who use Google Ads to get some income to offset hosting costs (again, like SocialFixer.com) , this is a big problem. Google could prohibit this kind of ad, and remove advertisers who create them. Instead, they allow them.
Many users who think they are downloading the Social Fixer browser extension instead get tricked into downloading other software, download managers, or in some cases even malware. I have blocked a number of advertisers from my AdWords control panel, but that process is very inconvenient and doesn't catch most ads.
Look at the site's screenshot on the left. There are 3 ads shown, and a total of FOUR deceptive download buttons. It's no wonder that some users get confused! I even added some disclaimer text, hoping that would prevent people from being confused. I'm not sure it has had any effect.
I've considered removing ads entirely from the site, but I cannot afford to lose the extra income that they generate. Google doesn't respond to complaints about the issue. Other people have complained about the same problem, but it persists.
Until they confront this problem and put an end to deceptive download links in ads, users need to take extra precaution before clicking to download software. Web site owners need to be aware of what kind of ads are being shown on their site, and attempt to block the ones who participate in this kind of deceptive advertising.
What can you do?Contact Google and let them know that their policies need to change to prevent intentional download deception and protect users. Let web sites know when you see deceptive ads on their site. And above all else, be careful where you click!
This update is an attempt to clean up some of the mess that Facebook has recently made with its code changes. They broke several key features that users relied on, so this release strikes back and restores some of that broken functionality.
Enter = Newline in comments. Many users have received Facebook's new code, which broke this existing functionality. This release updates the Social Fixer code to handle their new format, but unfortunately it changes the functionality a little. Instead of a clickable "Comment" button, you can now trigger the comment to submit by pressing Tab then Enter. Without the fix, pressing Enter anywhere in the comment would submit it. I realize that this is not an ideal fix, but their code is extremely complex and I haven't found a better way to do it yet and still retain the functionality of Enter creating a Newline.
The "Reply" link in comments has been restored after their changes broke it. Sometimes it's a bit quirky now with inserting a link to the original person's name. I'm still working on it. Note: The option to float the comment text box while replying is currently not working, so it does nothing.
Font size settings for comments were not being applied everywhere. Fixed.
The "Select All" button stopped appearing when inviting friends to events, after Facebook changed their code. It now works again.
When a Facebook Application requested access in a popup window, clicking the "Audience" selector caused a new window to open to Facebook instead of the Audience selector dropdown. Fixed.
The options dialog rendered incorrectly so that the options fall below the left column for some users in Chrome. Fixed.
Browser Compatibility Changes
Some users of older versions of Chrome were still seeing the setup wizard repeatedly, or found that their preferences would not stick. Although I don't officially support Chrome < 19, I've packaged up a separate install package to support these older versions.
Added better support for Rockmelt, CoolNovo, and other browsers based on older versions of Chrome/Chromium.
Known Issues
There are a few new known issues that have popped up after Facebook's big round of code changes. Some of them:
Automatically expand comments so the "see more" link goes away is broken.
Lightbox still appears sometimes when viewing photos.
Looking Forward
I will continue to try to fix Facebook's poor UI decisions as they make them, but I will be honest – they are getting much better at obfuscating their code and isolating it in ways that make it very difficult to reverse-engineer and modify. It is sometimes nearly impossible to find a "hook" into their code to insert my modified functionality. The code that runs Facebook is unlike any other site on the web, from what I've seen.
I won't give up, but please be aware that I'm doing the best I can to keep up. Fixes may come a bit slower, and I may have to drop some features if I can't figure out how to make them work after their code changes. Facebook is not making it easy!
Social Fixer has had a few problems recently. Not for everyone, but for some users, and in different ways. I'd like to take a few minutes to explain why.
First of all, Social Fixer continues to work correctly for most users. If you're having problems, it's unfortunate, but you're in the minority. I work hard to support all the users I can, but as a single developer, it's difficult.
A number of things changed recently, and I have been trying hard to keep up with everything. Below are some of the things that have caused problems and why. This is a long post, because the issues are complex and can't be easily summarized without some detail. There is no TL;DR.
Facebook Started Aggressively Clearing Your Storage Space
Browsers have a built-in capability to store data called localStorage, which is invisible to the user. Web sites can request that the browser store some data, and they can then retrieve it later. Each web site has its own storage space, and no other web sites can write to a different site's space.
Browser extensions can also use this space, and this is where Social Fixer was storing its user preferences in some browsers. Well, Facebook made a code change recently which actually goes in and aggressively removes all stored data which it did not put there. So when this happens, all user preferences are wiped out, and the setup wizard would run again because Social Fixer thinks it's the first time you've installed it. Other extension developers have had the same problem.
Unfortunately there is no way to get around this code from Facebook, so I had to find a completely different way to store data in Chrome, Safari, and Opera. In order to do so, I had to use each browser's native extension API, which took considerable time to research, implement, and test.
Although I have always had a version of Social Fixer in the web store, the version there and the version I distributed directly from my site had different internal id's. Why is that a problem?
Because when users of the locally-distributed version installed from the web store with the release of Version 7, it didn't upgrade their previous release – it added a new one! Also, extensions store data specific to an extension id, so any preferences or data stored from the locally-installed version of Social Fixer were no longer visible to the new install, causing some people to lose their preferences.
This was hopefully a temporary hiccup that only affected some users. From now on, the only version of Social Fixer for Chrome will be the one in the Web Store.
Chrome's Storage API And Manifest 2
While moving to a better storage mechanism in Chrome, I discovered Chrome's new storage API. This is a much better way to store data in browsers, and it will keep the stored data much more secure from outside corruption. Previously, in Chrome, since the preferences were stored in localStorage, clearing your browser cache and clearing browsing data would also clear your preferences. Now, using the storage API, that won't happen.
Unfortunately, localStorage and the new storage API keep data in different places. So users who had their prefs stored in localStorage before were upgraded to the new version of Social Fixer, which started looking for its prefs in the storage API and couldn't find them. So it acted like a brand new install, and all previous preferences were lost.
I tried to warn users to back up their settings, but I hadn't considered that Chrome would auto-update users so quickly – before they had a chance to backup their settings from localStorage. This was really a mistake by me, as I hadn't considered every angle. I apologized for this, and I tried to offer several ways to go in and find your old settings to restore them.
Also, along with using the new storage API, I needed to upgrade my extension to use "Manifest 2". The manifest is basically the meta-data about the extension. Google recently did an overhaul to the syntax of this meta-data file. In order to use the new storage API, and in order to be in compliance with new rules for distributing extensions in their Web Store, I needed to upgrade from Manifest 1 to Manifest 2.
Unfortunately, this wasn't such a smooth process, as other developers have discovered. Only newer versions of Chrome can understand Manifest 2, so by moving to this new version, I would be breaking the extension for users of older versions of Chrome. And yet, Google offered no alternative or any way to maintain compatibility with older versions of Chrome!
Rockmelt, CoolNovo, Old Chrome Versions Break!
Some browsers like RockMelt and CoolNovo are built off Chrome, but they use an older version as their base. Also, some operating systems don't have builds of the latest version of Chrome (like Ubuntu, which is stuck on Chrome 18), so these users have no option to upgrade. So these browsers couldn't use the new Manifest 2, or the new storage API. I hadn't thought enough about this, so users with these browsers had their extension break. (Although I don't explicitly support these browsers, I try to be a good little developer and have them work anyway!).
Because of the number of complaints I received from users of these browsers, I had to build a whole new branch of code to support a legacy Chrome API that these browsers can understand, and add code to my packaging system which could build an extension version specifically for these older browsers. As it turned out, this was not a simple process. This new build version will be available with the next release.
More Facebook Code Changes
Many users who upgraded to version 7 of Social Fixer also noticed that they no longer had a "reply" link next to comments, and the "Enter" key started submitting comments instead of going to a new line. They assumed this was caused by the new version of Social Fixer. It was not.
Facebook has been beta testing some code changes which are only visible to a small number of users. For these users, these two features break. The code that Social Fixer expects to see is no longer there, and instead has been replaced by a whole new kind of code.
I've tried to look at the changes to see how to fix these features, but my account is not part of the testing group, so I can't reproduce the problem. I've been sent code snippets by others which give me a clue about what is changing, but unless I can actually see and test the code changes myself, I can't write and test code to change it.
Further, based on the code that I have seen, it looks like a simple fix won't even be possible. It looks like Facebook is trying to prevent this kind of functionality entirely, so it is impossible for Social Fixer to fix this huge annoyance. I'm still looking into it, but it is not an easy problem to solve.
Mozilla Rejects Social Fixer Updates
The version of Social Fixer in the official Mozilla Add-On Directory is very out of date. The reason is that Mozilla is rejecting my updates. They are giving two reasons:
My code retrieves content from other sites (SocialFixer.com, for things like the setup wizard, etc) and injects the HTML directly into the user's browser. They claim that this is a security risk, and won't allow my extension to do it. Since much of the code is based on this, I can't simply take it out.
My extension is based on an old framework called the User Script Compiler which converted Greasemonkey scripts to native Firefox add-ons. This method of conversion is now deprecated, and I need to convert to a whole new framework.
For those reasons, I haven't been able to update my extension into the add-on directory, even though there are thousands of users there who are stuck on an old version that is surely causing them problems.
I am working on updating my code to comply with their requirements, but it is a lot of complex work. With all the things that I need to keep track of and work on, I haven't been able to finish this one yet.
Firefox Aurora/Nightly Breaks Code
The very latest builds of Firefox are also causing Social Fixer to break. Apparently, there is some javascript problem with the evalInSandbox method, which is used in the User Script Compiler framework as described above. Although I try to support the latest bleeding-edge builds of Firefox, right now it's broken and I don't know why.
Since these versions will eventually become the live production versions, I hope to be able to resolve this soon. In turn, it may also resolve problem #2 with the Mozilla Add-On Directory as described above.
Oddly, the Greasemonkey version of Social Fixer also doesn't work correctly in these versions of Firefox, even though they aren't dependent on the evalInSandbox method. I'm still not sure why. Resolving this will probably require quite a few hours of research and coding.
Opera Changes Installation Requirements
Opera is kind of a niche browser, and few people actually use it. But I like to support it, because I appreciate the Opera audience, and because many of the users who seek out Opera to customize their web experience may also be the kinds of users who would appreciate what Social Fixer has to offer.
This is a minor concern, really, but Opera has also decided to go the route of Google, and require that extensions only be installed from their directory. This means that I need to update my code and packaging, and submit Social Fixer to their extension directory. I haven't yet explored the implications of this, but I need to do it soon, otherwise Opera users won't be able to install or update Social Fixer.
Conclusion – I Have A Lot Of Work To Do!
I wish I could put on my cape and save the world. Well, at least save users from Facebook's constant attempt to annoy them with stupid features and annoying interfaces. But alas, I am human. I have a normal full-time job, a family, volleyball games to go to and lots of other things to take care of.
I put as much time into Social Fixer as I can, but as you can see above, it gets really, really complicated. There are so many complex things to consider, and so many ways that it can break. Browser makers continue to change their requirements, API's, and packaging requirements. It's hard enough to stay current with an extension in just one browser. Supporting 6 different browsers – each with their own extension frameworks – is kind of insane!
I do the best I can, and most users understand that, which I appreciate. There are some people who the ignorant but vocal minority, who leave rude messages on the support page, or send me hate-filled emails because their preferences are lost. Yes, that really happens. More frequently than you might imagine. Luckily, the vast majority of users are awesome, so I can ignore the trouble-makers.
I hope this post gives some clarity to the issues I'm facing, and why Social Fixer has hit some road bumps in the last few weeks. And perhaps it gave a peek into the complexities of building this kind of extension, for developers who are interested in the internals.
I will continue working as hard as I can to resolve all these issues, and continue making Social Fixer robust, efficient, and a great way to improve your Facebook experience.
Social Fixer 7.0 fixes some problems introduced by Facebook's recent code changes and includes a number of improvements and bug fixes. Please read this post, as it contains important info!
Before installing the update, it is recommended that you back up your preferences. Some users may have their options reset after updating. Unfortunately, this is an unavoidable side-effect of some of the changes required in this release. For instructions on how to backup and restore prefs, see this question in the FAQ. Also, some users may find that after updating, you have two versions of Social Fixer listed in your extensions. In this case, please delete the older version.
Changes In This Release
Users of Chrome, Safari, and Opera were having problems with their preferences being reset frequently. This was actually a result of code inserted by Facebook that wiped out the storage area that Social Fixer and other extensions use (malicious on their part? I'm not sure!). Changes were made to the code in each of these browsers to use the native Extension API's in each, so the preferences should no longer be vulnerable to other applications or scripts which over-write them. Also, some of the preference loading and saving code has been improved and made more robust.
Themes and the Setup Wizard work again in Chrome, Safari, and Opera.
The style of the news feed tabs and control panel have been updated to blend in better to the Facebook interface and be more visually pleasing: The code that controls the tabs and filters has been greatly improved, which should make things run faster and avoid quirky problems like duplicate posts in the feed. Also, a "more" link has been added to the right side of the control panel to get access to the "status" details and quick toggle switches for filtering, etc.
Improved hiding of Trending Articles/Videos.
Added new apps and games to the auto-tab list (SongPop, Instagram, etc).
A new option for filtering has been added, under the "Other" column of filters, called "Matching Selector". This is where you can add any CSS rule, and it will be tested against the structure of each post. This allows for powerful filtering based on HTML structure, rather than just keywords in the posts. More information can be found in the feed filter documentation.
Added auto-update functionality to Opera extension and Greasemonkey script.
Other Changes
Removed the "alternate display mode" option which just reduced the size of the read posts, due to incompatibility with other changes and infrequency of use by users.
Known Issues
Social Fixer does not work correctly with the Firefox Nightly builds. They have broken the evalInSandbox function that my extension framework uses. I will look into this ASAP.
The new storage fixes in Chrome will only work in version 19 or higher. If you are still using Chromium 18, you may still find that your prefs are wiped out by Facebook once in a while. This is unavoidable, and Facebook is to blame.
Donations
I try not to make a big deal out of donations, because Social Fixer is a FREE app and always will be. Donations are always optional. But, I have spent many hours working on this update and getting the Social Fixer code into a much better place, so I can build from it and improve how it works. And… I am trying to move my family into a new home! We live in a nice but modest house now, which only has 1 bathroom. With me and 3 females in one house, we really needed something a bit bigger . So, while we are facing a bit of a financial challenge to move and sell our old house, I am trying to put extra time into Social Fixer (almost like a second job) and hope that my generous users will help me make the move for my family.
So….donations are always welcome and appreciated. To those who contribute, I offer a very sincere Thank You! (In case the links above weren't obvious, click here to donate. If every user donated just $1, I could pay cash for a new house and furnish it! I don't expect that, but it never hurts to dream )
Are you sick of seeing all the political posts on Facebook? Social Fixer can help by hiding them all, or moving them to a separate tab where you can ignore them or read them later!
First, make sure you have the Social Fixer browser extension installed. Just go to http://SocialFixer.com and install the version for your browser.
How To Setup A Filter
Using Social Fixer's custom filters, you can setup keywords that will be matched in any posts, and take action on those posts. Enter into the Social Fixer options by clicking the wrench icon in the blue Facebook header bar: . Here is an example of how to setup a filter:
(click the image to expand)
1. Click on the Filtering tab to create a new filter. If you are an existing user and have filters already setup, you'll need to click the "Add New Filter at the Top" button to create a new placeholder.
2. Enter a text string. This box uses regular expression syntax, so you can build powerful pattern-matching filters. But for now, you can use a simple example and modify it to fit your personal preferences.
Here is an example to start with: /politic|obama|romney|republican|democrat|election/i (If you want details on exactly what this means, read more below.)
3. Now click "Move to Tab" and enter a tab name, like "Politics". All posts that match this filter will be moved to this new tab in your Facebook stream. If you want to just hide the posts altogether, you can click the "Hide" box instead.
4. Finally, click the "Stop processing rules" box. This simply tells Social Fixer that if you have more filters, but a post matches this one, ignore the rest of the filters. You're done.
Now click Save, and refresh your news stream. You should see something like this!
But you might not see a Politics tab. This just means that no posts in your feed matched your filter, so the tab wasn't created because it would be empty. When a post does match, the tab will be magically created.
What Does That Filter Mean?
If you are a programmer, the regular expression syntax will look familiar and obvious. If you aren't a programmer, here's the explanation:
/ ... / The slashes are just the wrapper around the expression which means that it uses regular expression syntax.
politic|obama|romney|… The | character means "or" in RE syntax. So all these words just tell the pattern matcher to look for "politic or obama or romney or …". Partial words will match, so using "politic" will match "politics" or "political" or "politician".
i The "i" at the end simply means case-insensitive. So capitalization won't matter when the pattern tries to match.
That's it! simple, right?
What Else Can I Do?
The filtering system in Social Fixer is powerful, though a little confusing (until I improve it). There is some (slightly outdated) Feed Filter Documentation available, and you can always ask for help on the Social Fixer Page on Facebook.
Isn't That Great?
Why yes, it is! Social Fixer gives you a lot of tools and options to customize your Facebook experience. By giving you more control, I hope you'll ignore the junk you don't want to see, focus on the things you want to see, and enjoy your social experience even more.
If you like Social Fixer, or want your friends you know that you can filter out content like this, please share this post and/or Social Fixer with them. This is a one-man operation, and I have no marketing budget. The only way this spreads is by the posts of people who love what it does! Thanks!
Pressing the arrow keys while an image preview is bring shown will now move its position to different corners of the screen, and this setting will be saved as the default position.
New option in the Posts tab: "Hide "Sponsored" stories from your news feed".
New option in the Advanced tab: "Enable console debug logging". If you use a debugger like Firebug and notice Social Fixer writing lines to your console, you can turn that off here.
New option in the Advanced tab: "Highlight the Social Fixer News "unread message count" counter in red"
What's Fixed
Hiding and collapsing panels in the right column now works correctly after a Facebook code change.
Links to The Guardian redirected to the social reader app, even with "Fix "Social News" links to open directly to the story URL" enabled. Fixed.
Opera will now update correctly when upgrading, rather than installing a new instance of Social Fixer and leaving the old one (starting with the release after this one).
Fixed long names in chat (again).
Fixed hiding of trending articles.
Fixed some CSS and rendering issues.
Added code to prevent Opera from repeatedly showing the Update Wizard.
What's Changed
Disabled the auto-subscribe to Social Fixer News feature, until I can fix some of its quirks.
Removed the warning that appeared when older filters using post types were applied.
The friend count in Friend Tracker is now clickable, linked to a blog post with an explanation about why it may be different from Facebook's friend count.
Improved the detection and hiding of duplicate posts in the news feed, and added a new option to turn this feature on and off in the Posts tab: "Hide duplicate stories in the news feed".
When Stretch Wide and Left Align options were enabled, the screen rendering was pushed off the side and caused other issues. Fixed.
The Update Wizard popped up repeatedly for Opera 12 users (Internal Opera bug)
Blue header bar was not staying in place even with "Lock the blue header bar at the top even if the screen is small " checked.
Some images from Albums posted to Timeline pages were not showing the full image on hover.
Some tweaks to the display of image previews, to always show the largest preview image possible.
Pressing Esc while an image preview is showing now hides the preview.
Friend Tracker was alerting some users that they had unfriended themselves. Fixed.
Improved reliability from Friend Tracker
Changes in 6.73
Chat features are fixed (again).
When using the "reply" link to reply to comments, the user's name was not being inserted and tagged. Fixed.
The "Select All" button to invite friends to events disappeared after a Facebook code change. Fixed.
New option in the Chat tab: Hide the "View Timeline" icon that appears when you hover over friends names in the chat list.
The "Social Fixer News" list will be auto-subscribed so important posts will be seen by all users. This can be disabled with a new option in the Advanced tab.
When Stretch Wide and Left Align options were enabled, the screen rendering was pushed off the side and caused other issues. Fixed.
The Update Wizard popped up repeatedly for Opera 12 users (Internal Opera bug)
Blue header bar was not staying in place even with "Lock the blue header bar at the top even if the screen is small " checked.
Some images from Albums posted to Timeline pages were not showing the full image on hover.
Some tweaks to the display of image previews, to always show the largest preview image possible.
Pressing Esc while an image preview is showing now hides the preview.
Friend Tracker was alerting some users that they had unfriended themselves. Fixed.
Improved reliability from Friend Tracker
Changes in 6.73
Chat features are fixed (again).
When using the "reply" link to reply to comments, the user's name was not being inserted and tagged. Fixed.
The "Select All" button to invite friends to events disappeared after a Facebook code change. Fixed.
New option in the Chat tab: Hide the "View Timeline" icon that appears when you hover over friends names in the chat list.
The "Social Fixer News" list will be auto-subscribed so important posts will be seen by all users. This can be disabled with a new option in the Advanced tab.
This list contains posts by only one Page – Social Fixer. When you view the list, it will show you all recent posts just from the Page, so you won't miss important announcements about changes, new features, etc.
At the top, find the "Subscribe" button and click it. This will add the list to your left sidebar, probably at the bottom. (You may have to click the "more" link to find "Interests", depending on how many things you already have in your left sidebar)
Hover over the list, and an edit icon will appear to the left. Click it, and this menu appears:
Click the "Add to Favorites" item, and this will bring the list to the upper part of the left column, where it will always be visible, as shown to the left.
The number to the right shows how many new posts have not been read. Clicking the "Social Fixer News" item will bring up a list of all recent posts from the Page, even if you never saw them in your news feed. The news feed filters content out and hides it from you based on their EdgeRank algorithm. Lists do not do this. Or at least not yet!
You can repeat the same process for other Pages or Friends, creating custom lists of your own. Then, you can always check the lists to see if there are any new posts that you haven't seen.
Hope this helps, and please check the posts, so you can be made aware of the useful information which I post every few days!
Extra Tip: If you want the count of new posts to show up in red to make sure you don't miss anything, enter this CSS in Options->Styles(CSS): #navItem_fl_10150970104052276 .uiSideNavCount { background-color:red !important; color:white !important; }
You may have noticed recently that Facebook says you have more friends than you used to, and this number is higher than Social Fixer's Friend Tracker count. What happened? Here's the answer…
A number of people have confirmed (Mari Smith, WebProNews, etc) that Facebook now counts former friends with deactivated accounts in your friend count.
So if a friend deactivated their account a while ago, you never used to see them in your friend list or have them counted in your total. Now you do.
Apparently this is for two reasons:
So you can remove these friends from your friends list. This is so if they re-activate their account after a long absence, they won't suddenly start seeing your posts again when you thought you were no longer friends. Previously, you couldn't see them in your friends list, so there was no way to unfriend them.
Facebook says they can offer a faster experience by including them in the count. Who knows what that means. Maybe they can leave off an extra WHERE clause in their queries
The Friend Tracker in Social Fixer will continue to show you the "correct" count of friends, and not include the deactivated accounts. The discrepancy between the two numbers isn't an error – they just count different things.