-
-
Recent Posts
Archives
Category Archives: Featured
It’s Okay to Hide Takei! Or: How to filter re-shares on Facebook
I love George Takei (seriously, George, call me, let's talk Facebook). But not everyone does, and those people often don't want to see what their friends re-share from him. Luckily, Social Fixer gives you powerful filters to customize what you see in your feed!
This post will first show you how to hide re-shares of Takei's posts, as an example (sorry, George). I'll then broaden that to a more general filter for re-shares. Along the way, you'll hopefully learn some things about the powerful news feed filters in Social Fixer.
How To Filter George Takei Post Re-Shares
This one is pretty simple. Open up the Social Fixer options panel using the "wrench" menu in the blue header bar, and (1) choose the "Filtering" tab on the left. Then do the following…
(2) Click the "Add New Filter at the Top" button. This adds a new filter control row at the top of the list, if you have any others. Here's how it works: as each post is found in your news feed, Social Fixer evaluates the filters from the top to the bottom to see which ones match, and then what it should do. Adding a new filter at the top lets it have top priority in filtering posts, so no other filter can touch it. In other filtering situations, you may want to create one at the bottom, as a "catch all" filter when nothing else matches.
(3) Enter the following text in the "Matching text" box of the filter, exactly like this:
shared George Takei's
All re-shares of his posts have this text in them, so this is what tells Social Fixer to match this post.
(4) Next, we tell it what to do with the post. The most common two actions are to either "Hide" the post entirely, or to move it to a news feed tab. In this case, click the "Hide" checkbox to just hide the post altogether. If instead you wanted all the re-shares to appear in a tab, which would let you browse them if and when you wanted to, you could just enter the name of the tab to send them to, like "Takei". The tab will automatically be created if there are matching posts.
(4)a – I've checked another action in this screenshot above: "Stop processing rules". This tells Social Fixer that if a post matches this filter and something has been done to it, don't evaluate the rest of the filters. Just stop right there. The reason is, you may have another filter setup on a keyword like "football", and if we don't stop processing, a post from George Takei about football would get matched by this new filter, and by the filter later in the list. We don't want that to happen.
(5) Click Save in the options popup, then reload your feed. If you saw re-shares before, they should be gone now!
How To Filter All Re-Shares
Okay, let's stop picking on George, since he's pretty cool. Let's say we want to filter all re-shares of anyone's post, and move them to a tab where they can be either ignored or browsed through later. Simple!
(1) Same as above to open options, go to the filtering tab, and add a new filter on top.
(2) Now, in the "Matching Text" input, use this text:
/ shared [^.]+'s/
Here I've stepped up the complexity a bit and used a Regular Expression. This is basically a more advanced pattern-matching syntax that lets us use wildcards to match a variety of different text strings.
The / at the beginning and end of the text tell Social Fixer that it is to be treated as a Regular Expression. Then , the special [^.]+ syntax is a special instruction that basically means [one or more characters(+) that are not(^) a period]. By using this syntax, this filter rule will match anyone's name, like:
Matt shared Bob's post.
or
Bob shared Matt's photo.
A period is always at the end of these sentences, so matching only characters that are not a period makes sure we don't accidentally match text that is in the post itself or in comments.
(3) Let's move these re-shares to a tab. Under "Actions", type in a tab name like "Shares". Then check the "Stop processing rules" box as before.
(4) Save and reload, and now all your shares will be in a tab! Nice, eh?
How To Filter Re-Shares From Specific Friends
Maybe you have a few friends who are prolific re-sharers, and you just want posts from them to be hidden. Can you do that? Yes!
This is a simple modification to the previous filter. Open up the filtering options and find the filter row you added above. Now, in the "Author" column, just select one or more friends. Now when the filter runs, it will only filter posts from authors that match the selected group. Easy!
Keep Calm And Filter On!
I hope these simple examples give you some ideas, and enough confidence to go try out some post filtering. It never hurts to try – enter in some text filters and a tab name and see what happens. You can always go in and remove them if you don't like it.
News feed filtering is one of the most powerful features of Social Fixer, yet many people are too intimidated to use it. Don't be! Go forth and filter!
Questions? Comments?
Visit our Support Forum on Facebook! http://SocialFixer.com/support/
-- Matt Kruse, developer of Social Fixer
Posted in Featured
Comments Off
Why I Do Not Monetize Social Fixer or: How I Learned to Stop Worrying and Love the Donation

Dear Users of Social Fixer,
Thank you for supporting this project and my work, and for your generous donations to keep it (and me) going. I want to talk for a moment about why the app is free, why I ask for donations, and how well all this is working.
-- Matt
It costs over $300/month to host SocialFixer.com and keep it running, and I've easily spent thousands of hours building and supporting the app – and yet I haven't really "monetized" it to mke money. So who pays the bills? You do, via donations! And it's an awesome software model!
Any company distributing software like Social Fixer would primarily be trying to figure out how to make money from it. But that shifts the focus from creating great software to being profitable and making money, often at the expense of the users and developer creativity.
"I believe that a donation-based model allows creative developers to build software that is focused on users and great functionality, while still being rewarded for their effort."
I've actually received a number of offers from companies/individuals to buy Social Fixer and/or monetize it. They tell me how I could make lots of money if I were to just attach a browser toolbar to the installer, or insert ads into Facebook, or bundle additional software along with it, or spam my users with "sponsored" links and messages. I've thought about it, but obviously declined all of these offers because:
How to Contribute |
|
![]() |
|
| (Use your existing Amazon account) | |
![]() |
(Credit Card - No account required!) |
![]() |
|
| Snail Mail: Matt Kruse PO Box 165 Hampton, IL 61256 |
|
- I will not make changes to Social Fixer to increase my profit at the expense of my users.
- My goal is to make the user experience better, so inserting anything that will be distracting or not enhance the experience is directly against my goal
- My goal in life is not to get rich (though I wouldn't object to that!). My goal is to create cool software that users love.
So why doesn't everyone do this? Well, it's certainly not easy.
- I probably put in at least 100 hours of work into this app before I ever even released it to the public.
- I put in at least another 500 hours of work before I ever even asked for donations, because I wanted it to be a solid app first.
- All this up-front effort came without any guarantee or even hint that I would get compensated for my time and effort. I had the belief that if I built something great, the reward might follow. It's a risk.
- As I continue to develop and maintain the app, I have no guarantee that I will get compensated for my time, or even get enough to cover expenses.
And yet, it works! I have been very fortunate that I have a lot of amazing users who are willing to donate to support the work. Not because you have to, not because you are nagged to death, not because there are crippled features that you want to enable, but because you love the app and want it to continue.
"A small contribution from many users ends up making a big difference."
I think that this model is awesome for both the developer and the users. Why? Because it allows creative developers to follow their passion and create software that users love, without being part of a profit-focused company. There are countless developers out there with incredible ideas and potential, and if we reward their work with financial support, they will be motivated to create things that will amaze you. Users will get better software without all the junk that is polluting so much of what we use today. And by supporting these kind of developers, you'll be advancing the user-focused mindset of those people who work in this model.
I've been fortunate that I've built up a large user base over the three years I've been working on this. Typically, only a small fraction of users ever donate, but because of the number of users, this works out okay for me. I don't expect everyone to donate – but those who have the means to do so support those who are less fortunate and maybe don't have a few dollars to contribute. So the app stays free and clear of any monetization (ads, toolbars, offers), which works great for everyone!
I'm incredibly thankful for everyone who has contributed to the project and to me personally. Donations not only support the site and related expenses (even after Paypal fees and taxes!) but give me some extra income that compensates for all of my time spent. I'm not in any position to quit my day job (yet), but donations allow me to provide additional things for my family and to enjoy my free time a little bit more. And when I'm sitting at the computer at 1am, long after my wife and kids have gone to bed, trying to sort through a hundred posts on the support forum to figure out what issue I need to fix next, I'm motivated by the fact that generous users are supporting me and my work. I, in turn, feel compelled to help you back!
As a developer, this keeps me going. It keeps me motivated to work late, answer all the emails, and deal with all the issues involved in developing a popular software app. And as a user, I am grateful to other developers whose tools I use – I have donated to or bought a license of almost every project or person whose apps I use, sometimes more than once. I believe in rewarding people for what they do, not just as a recipient, but as a giver as well.
So, thank you. For supporting this project, my work, and this kind of software model. When enough people support good things in small ways, big things can happen. I'm honored to be part of that, and I'm excited to see what we can accomplish in 2013.
Merry Christmas, happy holidays, happy new year, and all the best to you and your families. ![]()
-- Matt Kruse, author of Social Fixer
How To Contribute
![]() |
|
| (Use your existing Amazon account) | |
![]() |
(Use any Credit Card - No account required!) |
![]() |
|
| Snail Mail: Matt Kruse PO Box 165 Hampton, IL 61256 |
Posted in Featured
Comments Off
You Can’t Hide Anymore – and other FB Privacy Changes!
Facebook is making more changes to their privacy settings, which is sure to confuse users even more. The biggest change? You can't hide anymore. Everyone will be searchable. If you want to stay private, you're out of luck.
In changes that have been written about on Mashable, Reuters, and the New York Times, Facebook is once again tweaking its privacy controls. Here's a summary of changes:
- You can no longer make yourself unsearchable. This is bad news for the millions of people who wanted to keep their social activity invisible to the world, and even worse for parents who wanted to keep their kids' accounts visible only to people that know they are there!
- A new Privacy icon will be added to the upper right, allowing quick access to some frequently-used controls:
- More control in your Activity Log
- Easier ability to request pictures of you to be removed
- Apps must now ask separately for the ability to use your private information and to post to your Timeline. Previously these two privileges were lumped together.
Users had the ability to vote and reject the changes, but almost no one did. And along with that came the new rule that users would no longer have the ability to vote on changes like these.
So, to sum up:
- You lost your ability to be unfindable
- You gained some minor privacy controls
- You lost your ability to have any input on future changes
Overall a loss for users, in my opinion. Unfortunate.
-- Matt Kruse, author of Social Fixer
Posted in Featured
Comments Off
Why Won’t Chrome Update My Social Fixer Extension?!

Whenever I release an update to Social Fixer, many Google Chrome users are frustrated or confused about the update process. So I thought I would explain some of the details…
1. Extensions [should] update automatically
Chrome is all about simplicity for the user, which means that it updates itself in the background and it also updates all your extensions. That's how it should work, at least. I've heard some people complain that Chrome doesn't do this, and I don't know why. It could be that they've messed with the registry or configured Chrome in some custom way. But there isn't even an option to disable extension auto-updates, so it should work seamlessly. In theory.
2. The Web Store doesn't update everyone at once
This is a big annoyance for me. When I post an update to the web store, it is not immediately visible to everyone. Google slowly syncs the update to its whole content distribution network, which can take many hours. So User A sees the new version instantly, but User B doesn't see it until tomorrow. When I post a message saying a new version is available, I often get many replies saying they can't see it. This is why, and I have no control over it. I've even told Google how annoying it is: [Staggered Web Store Updates causes continued confusion!]
If a new version is out there but it's not visible to you yet, you will just see this when you view Social Fixer in the web store:![]()
This just means you have to check back later.
3. Extensions can only be installed from the Web Store
I used to distribute the Chrome extension from my web site, which worked well. But then Google changed Chrome's security model for extensions. They said that extensions must be installed from their Web Store, to maintain security. So I can no longer provide a simple link to the install file to update – I can only link to the extension page in their Web Store. It's not quite as simple as it used to be, but unfortunately there is no easy work-around for now. (Extensions can be installed from other sites, but that is beyond the ability of most casual users, and experienced users will figure it out on their own!)
4. Beta versions have a different internal ID
Before I release updates, I test them in beta form to a smaller group of early testers (in the Social Fixer Development group). But for Chrome, this extension is hosted locally, not in the web store, which means it has a different internal extension ID. So to Chrome, this is an entirely different extension, and installing it can leave two copies in place – the old version and the new beta version. Further, they won't share settings because they are different ID's, so if you disable the old one and use the beta, you lose your settings. And when you switch back to the official one when it's released, you lose them again! This is a pain, but so far I haven't found a work-around for this.
5. You can force your extensions to update now
Fortunately, there is a way to force your extensions to update right now. In Chrome, if you navigate to chrome://chrome/extensions/ (or open Options → Tools → Extensions) and enable Developer Mode, an "Update extensions now" button appears:
Unfortunately, if the Web Store update hasn't rolled out to you yet (see #2), then it still won't find the new version. There's no way around that. But at least you can try to update manually.
6. Sometimes extensions become disabled
For whatever reason, sometimes users find that extensions have become disabled. Luckily, re-enabling is simple. As with #5, first open your extension list, then find Social Fixer, and click the Enabled checkbox:
7. Sometimes Chrome needs to be restarted
Other users have reported that even after they have updated Social Fixer, the update doesn't appear in their browser. In many cases, restarting Chrome makes the update appear. Again, I don't know why this is the case, or why only a small percentage of users see this behavior.
8. Re-install Chrome?
In extreme cases, users have reported that re-installing Chrome can cause the extensions to update correctly. This should definitely not be the case, but it's something to try as a last resort. There have been issues with Chrome user profiles becoming corrupt, which might prevent extensions from updating correctly. So if all else fails, try re-installing Chrome, and see if that helps.
In Conclusion…
This can be tricky, and I try hard to simplify it for everyone. Chrome is just one of 6 different browser extension formats that Social Fixer supports, so having to deal with their extension update problems can be a pain. Hopefully this post will clear up some confusion for some people now and in the future!
-- Matt Kruse, author of Social Fixer
Posted in Featured
Comments Off
Dear Facebook: Why Can’t You Just Give Us An Unfiltered Chronological Feed?!
It's old news to most people: You filter the posts we see from friends and Pages, so what we see in our news feed is only a fraction of the content that we are actually connected to. There are lots of hacks and tricks to help us see the things you hide from us, but many of us are still left asking: Why can't you just show us an unfiltered feed of everything?
The reason, you say, is because users would be too overwhelmed. They can't handle that much content. Trust you. You know better than we do. You're
looking out for us, right? You want to protect us from overload. Oh, and by the way, you make money by charging people and Pages to make their content appear in more users' feeds - something Mark Cuban recently got attention for complaining about. But I'm sure that has nothing to do with why you filter the feed, right? Of course.
Oh, but not only do you filter content, but you also insist on putting us back into your "Top Stories" view, which puts posts at the top that you think we will be most interested in. If we switch to "Most Recent", which puts posts in order (shocking!) it will stick for a while, then randomly switch back without asking us. Because you're trying to help us. Of course. (Luckily Social Fixer automatically switches me back)
So I ask again: Facebook, why can't you just give us an unfiltered chronological feed?!
Twitter does it.
Google+ does it.
Instagram does it.
Why must you be different?
(Hint: It's because none of the others get revenue from artificially limiting content visibility)
Hey, you don't even have to make it the default. For most users, you can still control and manipulate what they see in their feed. But why not let "power users" see the whole feed, and let us suffer in the landslide of content? Why not let us decide if we like it better? Why not just make it an OPTION?!
Today, you released a new feature - the "Pages Feed". We see that this is an attempt to silence critics like George Takei, who is a vocal and popular opponent to your filtering. This view gives you a view of Page posts from your feed. But they are not in order! What the WHAT?! Facebook, how could you screw up something so simple?! And is that feed really unfiltered? So far, no one has confirmed it either way. Let's hope it is. I'm not confident.
Seriously, Facebook, please listen to your users. Give us the option to see an unfiltered, chronological news feed, and allow us to make it our default - on the web and on mobile. You can put ads in our feed, on our sidebar, and still allow promoted posts to those who stick with the default filtered view. Fine. But don't take away our content, or you become less and less useful to us.
- When I tell my Tivo to record episodes of Modern Family, it doesn't pick out the ones it thinks I will like best and only record them, does it?
- When I subscribe to a magazine, the publisher doesn't deliver only the issues that it thinks I will be most interested, does it?
- The Post Office doesn't filter my mail, in order to protect me from drowning in all the catalogs, magazines, and junk mail that I've requested, does it? No. It delivers everything I've asked for.
Why, Facebook, can't you just be like everyone else and let me see what I've said I want to see?! Why must you think you know what I want better than I do? Why?
We like you, Facebook. We want to stay. Just show us all the witty posts from our friends, the cat pictures from our Pages, the gay puns from George Takei, and comics from The Oatmeal. Even the ones you don't think we'll like. We'll manage. I promise.
Thanks. All the best,
-- Matt Kruse
(Author of Social Fixer, a free, popular browser extension that tries to fix many of the annoying things that FB screws up for users. Check it out and install it from http://SocialFixer.com ! )
What are your thoughts? Discuss on my Facebook Post about this blog entry.
[Update 11/16 2:20pm: Facebook wants over $1,000 (pic) to "Promote" my post and reach all my subscribers. Ha! Now taking donations
]
Please LIKE and SHARE if you agree! Make your voice heard!
Posted in Featured
Comments Off
How To Hide Facebook’s Emoticon Images In Comments
Facebook recently decided that it would be cute to automatically convert some text in comments to emoticon images. If you don't like them, here's how to hide them using Social Fixer.
First, make sure that you have the Social Fixer browser add-on installed from http://SocialFixer.com
Once installed, click the wrench icon that appears in the blue header bar, choose "Social Fixer Options", then click on the "Styles (CSS)" tab on the left.
In the big text box on the right, enter this text (or add it at the bottom of existing text if you already have some):
.emote_text { display:inline !important; }
.emote_img, .emote_custom { display:none !important; }
Click Save, then reload your browser. You should see that all the emoticon images have been replaced by their original text version! Easy! ![]()
![]()
Hope this helps, and please 'Share' this if you think others might like to know this trick!
-- Matt Kruse, author of Social Fixer
Posted in Featured
Comments Off
Be Careful Where You Click! Google’s Deceptive Ads Trick Users…
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!
-- Matt Kruse, author of Social Fixer
Posted in Featured
Comments Off
Why Is Social Fixer Broken? What’s Wrong?
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.
Chrome Prevents Extension Installs From Sites
A recent change from Google has changed Chrome's security policy with regards to installing extensions. It used to be that Chrome could install extensions from any web site, including SocialFixer.com. But they changed that, so now Chrome (by default) will not install from anywhere but their official Web Store.
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.
-- Matt Kruse, Social Fixer author.
Posted in Featured
Comments Off
What’s New in Social Fixer 7.0

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!
Install the update by going to SocialFixer.com
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
)
-- Matt Kruse, author of Social Fixer
Posted in Featured, Release Notes
Comments Off
Sick of Politics on Facebook? Social Fixer Can Fix It!
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:
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!
-- Matt Kruse , creator of Social Fixer
( Political image above has been used courtesy of Dickson Interactive: http://dicksoninteractive.com/facebook/top-5-reasons-why-you-shouldnt-post-about-politics-on-facebook.html )
Posted in Featured
Comments Off




