Make Facebook pleasant again

I go to Facebook every few days, weeks or whatever. Kids’ pics. Volleyball happenings. Doings of people I’ve known over the years.

What’s happened to my follow-feed, though, is people I know to be fine people in real life appear in the feed as the girl on the left:

Tantrum Time

This is disheartening at best.

Politics is entertaining, but, golly, let’s not scream at our favorite character on TV when they do something dumb. Get a grip.

But, of course, the other guy will never get a grip.

So, for Firefox, there’s Grease Monkey and my quick and dirty Grease Monkey script, FaceBookFix.user.js, to the rescue.

This script simply takes Facebook posts off screen if they contain, in text form (sadly not in images), any of a list of words.

It’s not heavily tested, to say the least. Which is to say, I tried it a couple times.

I made it easy to add or delete banned words. Non-programmers can change the script if they can find it on their disk and save it as a text file from WordPad or a better text editor.

The results are nice. My feed is now pleasant. Again. “Never do yourself what a computer can do for you,” so the computer now lets me see the real news un-flooded by noise. (If this post makes it to Facebook, I can’t write “f*** news” or the script will make the post invisible to me!)

Oh. Here’s the whole script as of this moment:

// ==UserScript==
// @name        FaceBookFix
// @namespace   https://www.tranzoa.net/~alex
// @description Get rid of sad Facebook tantrums.    https://www.tranzoa.net/alex/public_stuff/FaceBookFix.user.js
// @include     https://www.facebook.com/
// @version     1
// @grant       none
// ==/UserScript==

/***

    FaceBook posts containing any of these listed strings are whacked.

    The strings are in in no particular order.

    Change as you see fit.

    Non-programmers, leave the last one as the last one.

    Non-programers, for syntax reasons, do not put any:
        single-quote         ( ' )
        pipe/vertical_stroke ( | )
        backslash            ( \ )
    characters in any of the strings.

***/
var find_these_strings  = [
    'killary',
    'drumpf',
    'obozo',
    'shillary',
    'repuglican',
    'democrap',
    'libtard',
    'faux news',
    'hilliary',         // I forget other Internet commenters' alternate spellings. More to come, for sure.
    'trump',
    'hillary',
    'clinton',
    'HRC',
    'DJT',
    'obama',
    'biden',
    'pence',
    'nixon',
    'watergate',
    'reagan',
    'steve bannon',
    'stevebannon',
    'bernie sanders',
    'berniesanders',
    'bernie',           // Sorry about this, Bernie-from-Dimas-days. Your brand has been trashed.
    'sanders',
    'george bush',      // 'bush' is just too generic
    'georgebush',
    ' g bush',
    ' gbush',
    ' gw bush',
    ' gwbush',
    ' h bush',
    ' hbush',
    ' hw bush',         // did I get these bushes right?
    ' hwbush',
    'kkk',              // why are Hollywood and the news guys obsessed with the KKK? No one in the real world cares about them.
    'mcconnell',        // maybe this should be only mitch McConnell
    'sean spicer',
    'seanspicer',
    'harry reid',
    'harryreid',
    'paul ryan',
    'paulryan',
    'muslim',
    'impeach',
    'senate',
    'house of rep',
    'parliment',
    'merkel',
    'abortion',
    'pro-life',
    'prolife',
    'pro-choice',
    'prochoice',
    'occupy democrats',
    'occupy wall',
    'fake news',
    'iran',
    'iraq',
    'isreal',
    'saudia arabia',
    'potus',
    'scotus',
    'executive order',
    'daily show',       // ? poeple seem to feel this show is really important when it discusses politics
    'fuck',             // the whole profanity list should be here.
    'shit',
    'Note: Leave this here at the end of the list.'
    ];
find_these_strings  = find_these_strings.join('|').toLowerCase().split('|');
find_these_strings.pop();       // get rid of the comment at the end


(function (){

function    fix_this_facebook_thing()
{
    var divs = document.getElementsByTagName("div");                            //  Find all DIV elements in the page
    // window.console.log("fixing " + Date.now() + " " + divs.length);
    for (var el_number in divs)                                                 //  Python is *so* superior to JavaScript
    {
        var el  = divs[el_number];
        if ((el.id != undefined) && el.id.startsWith('hyperfeed_story_id_'))    //  For each post in the feed
        {
            var htm = el.innerHTML.toLowerCase();                               //  Look for any of the strings without regard to case
            // window.console.log("scanning " + el.id + " " + htm.length);
            for (string_number in find_these_strings)
            {
                var fs  = find_these_strings[string_number];                    //      For each of the strings to find
                if  (htm.indexOf(fs) >= 0)                                      //          Is the string in the post in text form? (sadly missing them in images and videos)
                {
                    el.style.display    = 'none';                               //          Yes. Take the post off screen
                    // window.console.log("whacked: " + fs + " in " + el.id);
                    break;                                                      //          And don't keep looking in the this post for more matches.
                }
            }
        }
    }
}


var timeout_every_couple_seconds = window.setInterval(fix_this_facebook_thing, 2017);


}());


// eof

Turn in your Son-of-the-Pacific-Northwest card, buddy

Pictures do not do justice to the crushing weight of the towering tree squeezing tight my pitiful chain saw – said saw sadly saddled with an operator soon to be exiled in shame to the desert sands. Said chain saw solidly stuck. Forever stuck. A testament to the folly of man’s hubris overwhelmed by Mother Nature’s wrath.

Chain saw stuck in tree

It all started so innocently. Just a few fallen trees to clean up – as practice for, perhaps, chain sawing an out-building. Or at least chain-sawing access to the out-buildings.

Then I remembered that there were a couple of little trees aimed at the house. They weren’t dangerous now, but they were junker trees, Alders, and would have the Alder’s natural life cycle. That is, they’d fold as soon as the next icing.

So, this little one was a sort of prep tree. But I got careless and the saw was stuck. Getting the saw out was actually easy. From the roof I grabbed a little branch and gave it a tug. Down came the tree, the top leaves and little limbs brushing the side of the house.

It was a good exercise. The next, little tree was straight forward. No lean, so easy to drop where I wanted.

The big one – the one that drove the whole operation – was very satisfying. It had a strong lean toward the house, so I used a couple of straps (salvaged from Summer’s soon to be late, departed van) to sort of give the tree the hint to fall sideways, cut a strong tack to windward and watched it fall perfectly along the side of the house, touching nothing but ground.

Now, safely in my armchair with brandy in the snifter, let’s review the antics of the flying chain saw.

Chain saw stuck in tree

What happened in 1975?

Recently, a group down in Berkeley pulled together temperature measurements from all over the world for the last couple hundred years.

Their effort is notable in that they are publishing the source code and data. This novel idea of publishing the code and data is a very good thing. Thank you, ClimateGate.

And they published their results in graph form:

land temperature graph

The usual flurry of noise followed their press release.

I did not read of anyone asking the immediate question this graph raises:

What happened in 1975?

Chicken the Daddy way

Scott threatened to publish this email unless I did first. It was in answer to his IM’d question about how I had made chicken for a church pot-luck we went to one evening back when S&S were mid-sized munchkins. The chicken went fast. Which was kinda funny, given my, uh, homemaking skills. Especially, compared to the competition. So…

OK, Scott, yeah, I remember that chicken thing and the church pot luck or sleepover or whatever.

And, the way that chicken was made is a method I learned from Trudi. Probably straight out of the South. Haven’t made chicken like that for years. Always just toss it in the oven and bake it now – like right now, as we speak.

Anyway, the method is to simply put some flour mixed with random spices in a paper bag, toss the chicken pieces in – might be easiest a couple pieces at a time – and shake. Shake and bake is an actual grocery store product that probably does this. Idea is to get the chicken completely covered by the spicy coating. The flour takes care of the “completely” part of that requirement.

Then, heat up some oil – I forget what kind I used, but it could have been olive oil. It could have been a mixture, seeing as how I have always had several types of oil. Lot of oil. I am not sure that the oil doesn’t cover the chicken in the pan. But probably not completely. So you must flip the pieces at least once. This stuff wasn’t deep fried. I used the iron pan I got for 7 bucks when I was at Evergreen. Best 7 bucks I ever spent. I really appreciate iron. Iron has great heat sink action, too, so the oil doesn’t cool down when you toss the chicken in. You may need to flow the chicken through the pan and oil if you have a lot of chicken, BTW. Not too much chicken cooking at one time.

The oil must be hot. Otherwise it will saturate the coating, if not the chicken.

The chicken will really splatter if there is any liquid on it, which the flour pretty much takes away. But the pan has a cover to help with splattering. Also, the cover keeps the heat in while it’s cooking. Which doesn’t take too long, but it’s gotta be cooked all through, of course. I forget how long it took. Experiment using consistent temperature, amount of oil/chicken to predict in future. Just slice half way in to the biggest piece every so often to see what’s up.

Tongs are needed to handle the chicken – putting in and taking out of pan. Otherwise when you put it in, you’ll splash that oil all over and maybe burn the bejeezus out of your hand. Only alternative to tongs for taking it out is a fork, and that’s kinda bad ’cause it puts big holes in the chicken. Also, tongs might be longer than a fork. Safer.

And that’s it.

What spices?

Well, I pulled ’em at random. Used to use rosemary, maybe a lemon pepper, “spicy pepper” (a spice in the stores here), garlic pepper. Maybe back then I used cayenne. Certainly would now. Let me look at the cupboard. … … … Yeah. Thyme, basil, allspice, ginger … Hell, “parsley, sage, rosemary and thyme”. Here’s to you, Mrs. Robinson.

Whatever spices that say on the side of the bottle that they are for poultry.

Cayenne, by the way, can be slathered on before cooking compared to how much you need at eat-time. Cooking mellows cayenne out a lot.

Most of those “peppers” have salt in them, but you gotta have enough salt. People love salt.

Also, you can’t cook sugar ’cause it burns. I think that’s why the top ramen spice thingee is put in after the noodles are cooked. Sugar is the secret ingredient in top ramen, it turns out. If you fake your own top ramen flavor packet and leave out the sugar, you’ll be disappointed. Anyway, you might be able to toss sugar in some time in the process. Try it from the top to see if it doesn’t burn. Whatever. Sugar, like salt, always sells.

Oh, and you can use more than 1 paper bag, with different assortments of spices.

Feed it to only hungry people.

Dad

Does Chase Bank know something we don’t?

A trip to the post office found some mail from Chase:

Letter and check

Amid the dysfunctional noise coming from the East, one has to wonder: Do our financial overlords know that the country south of Seattle will no longer be using dollars from Federalreservistan? Go long tin foil! We’ll need quite a lot of it on our heads to explain why Chase thinks their own check is in “a foreign currency”.

That all said, it’s an unremarked wonder that ATM machines can handle a bunch of random checks with little fuss or muss. That technology is yet another modern miracle. To avoid this sort of goof, though, I would suppose that they could digitally sign the data from the check and put the data and sig on the check in OCR-able form.

Correlation fun

Google recently put a thing called Google correlate up in their labs.

You enter a query and it finds other queries whose volumes correlate with your query in time. If your query has spikes at different times since 2003, then in practical terms, Google correlate finds other queries that spiked at the same time.

Fine.

The fun part is that you can shift your query in time. If, say, you shift your query by -37 weeks (a pleasant prime number not very near any natural time cycle), you can find other queries that ebb, flow and spike 37 weeks after yours.

OK.

So, try “osama bin laden” shifted -37 weeks.

The results: Three “aim 5” queries and “best dvd rentals”.

Coincidence? You decide.

How to calculate the truth

Through Fark I saw this article: The Myth of 90 Percent: Only a Small Fraction of Guns in Mexico Come From U.S.

The sum of the article is that there have apparently been lots of media stories saying that 90% of the drug war guns in Mexico come from the U.S. But the article claims that the 90% number is bogus and should be 17%.

Let’s run with that.

You can calculate the 17% pretty accurately by noting that if there’s a repeated, repeated, repeated number under-pinning a story, story, story that matches the media’s core beliefs, then you must multiply the number by the 80% chance that the number is BS, that is, a 20% chance the number is accurate.

90% * .20 = 18%

Which is pretty close to 17%, is it not?

This method of calculating the truth says that Madoff swindled not 60 billion, but 12 billion.

QED.