Barre Chords

I can’t believe how long it took me to learn this trick. That is the problem of being primarily self-taught. Check this out:

Present different data outside of the network using PHP

This is very handy if you want to have a walled garden section inside your private network while still hosting public data.

<?php
$ipcheck = "192.168.0.";  //Replace with first 3 octets of your existing IP scheme
if( substr($_SERVER['REMOTE_ADDR'],0,strlen($ipcheck )) == $ipcheck ) {
    //Begin Internal code
}else{
    //Begin External code
}
?>

Bourbon and Brown Sugar Pecan Pie

This recipe is very very simple. And amazing.

  • 4 Tbs Melted Butter, Browned
  • 1/2 Cup Brown Sugar, Packed
  • 1 Tsp Salt
  • 2 Eggs
  • 1 Cup Cane Syrup

Mix thoroughly before adding the rest

  • 3/8 Cup Flour
  • 2 Tbs Bourbon Whiskey
  • 1 Tsp Vanilla
  • 1 1/4 Cups Pecans, Chopped
  • 3/4 Cup Chocolate Chips
  • 9 Inch Pie Shell
  • 3/4 Cup Pecans, Whole

Bake for 50 minutes at 350 degrees

545 VS 300,000,000 People

By Charlie Reese

Politicians are the only people in the world who create problems and then campaign against them.

Have you ever wondered, if both the Democrats and the Republicans are against deficits, WHY do we have deficits?

Have you ever wondered, if all the politicians are against inflation and high taxes, WHY do we have inflation and high taxes?

You and I don’t propose a federal budget. The President does.

You and I don’t have the Constitutional authority to vote on appropriations. The House of Representatives does.

You and I don’t write the tax code, Congress does.

You and I don’t set fiscal policy, Congress does.

You and I don’t control monetary policy, the Federal Reserve Bank does.

One hundred senators, 435 congressmen, one President, and nine Supreme Court justices equates to 545

human beings out of the 300 million are directly, legally, morally, and individually responsible for the domestic problems that plague this country.

I excluded the members of the Federal Reserve Board because that problem was created by Congress. In 1913, Congress delegated its Constitutional duty to provide a sound currency to a federally chartered, but private, central bank.

I excluded all the special interests and lobbyists for a sound reason. They have no legal authority. They have no ability to coerce a senator, a congressman, or a President to do one cotton-picking thing. I don’t care if they offer a politician $1 million dollars in cash. The politician has the power to accept or reject it. No matter what the lobbyist promises, it is the legislator’s responsibility to determine how he votes.

Those 545 human beings spend much of their energy convincing you that what they did is not their fault. They cooperate in this common con regardless of party.

What separates a politician from a normal human being is an excessive amount of gall. No normal human being would have the gall of a Speaker, who stood up and criticized the President for creating deficits. The President can only propose a budget. He cannot force Congress to accept it.

The Constitution, which is the supreme law of the land, gives sole responsibility to the House of Representatives for originating and approving appropriations and taxes. Who is the speaker of the House now? She and fellow House members, not the President, can approve any budget they want. If the President vetoes it, they can pass it over his veto if they agree to.

It seems inconceivable to me that a nation of 300 million cannot replace 545 people who stand convicted – by present facts – of incompetence and irresponsibility. I can’t think of a single domestic problem that is not traceable directly to those 545 people. When you fully grasp the plain truth that 545 people exercise the power of the federal government, then it must follow that what exists is what they want to exist.

If the tax code is unfair, it’s because they want it unfair.

If the budget is in the red, it’s because they want it in the red.

If the Army and Marines are in Iraq and Afghanistan it’s because they want them in Iraq and Afghanistan.

If they do not receive social security but are on an elite retirement plan not available to the people, it’s

because they want it that way.

There are no insoluble government problems.

Do not let these 545 people shift the blame to bureaucrats, whom they hire and whose jobs they can abolish; to lobbyists, whose gifts and advice they can reject; to regulators, to whom they give the power to regulate and from whom they can take this power. Above all, do not let them con you into the belief that there exists disembodied mystical forces like “the economy,” “inflation,” or “politics” that prevent

them from doing what they take an oath to do.

Those 545 people and they alone, are responsible.

They and they alone, have the power.

They and they alone should be held accountable by the people who are their bosses. Provided the voters have the gumption to manage their own employees.

We should vote all of them out of office and clean up their mess!

What you do with this article now that you have read it is up to you.

This might be funny if it weren’t so true.

Be sure to read all the way to the end:

Tax his land,

Tax his bed,

Tax the table,

At which he’s fed.

Tax his tractor,

Tax his mule,

Teach him taxes

Are the rule.

Tax his work,

Tax his pay,

He works for

peanuts anyway!

Tax his cow,

Tax his goat,

Tax his pants,

Tax his coat.

Tax his ties,

Tax his shirt,

Tax his work,

Tax his dirt.

Tax his tobacco,

Tax his drink,

Tax him if he

Tries to think.

Tax his cigars,

Tax his beers,

If he cries

Tax his tears.

Tax his car,

Tax his gas,

Find other ways

To tax his ass.

Tax all he has

Then let him know

That you won’t be done

Till he has no dough.

When he screams and hollers;

Then tax him some more,

Tax him till

He’s good and sore.

Then tax his coffin,

Tax his grave,

Tax the sod in

Which he’s laid…

Put these words

Upon his tomb,

‘Taxes drove me

to my doom…’

When he’s gone,

Do not relax,

Its time to apply

The inheritance tax.

Accounts Receivable Tax

Building Permit Tax

CDL license Tax

Cigarette Tax

Corporate Income Tax

Dog License Tax

Excise Taxes

Federal Income Tax

Federal Unemployment Tax (FUTA)

Fishing License Tax

Food License Tax

Fuel Permit Tax

Gasoline Tax (currently 44.75 cents per gallon)

Gross Receipts Tax

Hunting License Tax

Inheritance Tax

Inventory Tax

IRS Interest Charges IRS Penalties (tax on top of tax)

Liquor Tax

Luxury Taxes

Marriage License Tax

Medicare Tax

Personal Property Tax

Property Tax

Real Estate Tax

Service Charge Tax

Social Security Tax

Road Usage Tax

Recreational Vehicle Tax

Sales Tax

School Tax

State Income Tax

State Unemployment Tax (SUTA)

Telephone Federal Excise Tax

Telephone Federal Universal Service Fee Tax

Telephone Federal, State and Local Surcharge Taxes

Telephone Minimum Usage Surcharge Tax

Telephone Recurring and Nonrecurring Charges Tax

Telephone State and Local Tax

Telephone Usage Charge Tax

Utility Taxes

Vehicle License Registration Tax

Vehicle Sales Tax

Watercraft Registration Tax

Well Permit Tax

Workers Compensation Tax

STILL THINK THIS IS FUNNY?

· Not one of these taxes existed 100 years ago, and our nation was the most prosperous in the world.

· We had absolutely no national debt, had the largest middle class in the world, and Mom, if agreed, stayed home to raise the kids.

Almost-Famous Fried Pickles

I have never made the sauce, but I thought I would include it in case you wanted to.

Ingredients

For the sauce:
  • 1/4 cup mayonnaise
  • 1 tablespoon drained horseradish
  • 2 teaspoons ketchup
  • 1/4 teaspoon Cajun seasoning
For the pickles:
  • Peanut or vegetable oil, for frying
  • 1/2 cup all-purpose flour
  • 1 3/4teaspoons Cajun seasoning
  • 1/2 teaspoon Italian seasoning
  • 1/4 teaspoon cayenne pepper
  • Kosher salt
  • 2 cups sliced dill pickles, drained

Directions

  1. Make the sauce: Mix the mayonnaise, horseradish, ketchup and Cajun seasoning in a bowl; set aside.
  2. Fry the pickles: Heat 1 inch peanut oil in a pot over medium-high heat until a deep-fry thermometer registers 375 degrees F. Meanwhile, whisk the flour, Cajun seasoning, Italian seasoning, cayenne pepper, 1/2 teaspoon salt and 1/2 cup water in a large bowl until smooth. Spread the pickles on paper towels and pat dry.
  3. Add half of the pickles to the batter and toss to coat. Remove from the batter using a slotted spoon, letting the excess drip off, and add to the oil one at a time. Fry until golden brown, 1 to 2 minutes; remove with a slotted spoon and drain on paper towels. Return the oil to 375 degrees F and repeat with the remaining pickles and batter. Serve immediately with the prepared sauce.

“Classic” Beef Stew

  • ¼cup all-purpose flour
  • ¼teaspoon freshly ground pepper
  • 1pound beef stewing meat, trimmed and cut into inch cubes
  • 5teaspoons vegetable oil
  • 2tablespoons red wine vinegar
  • 1cup red wine
  • tomato paste
  • 3½cups beef broth, homemade or low-sodium canned
  • 2bay leaves
  • 1medium onion, peeled and chopped
  • 5medium carrots, peeled and cut into ¼-inch rounds
  • 2large baking potatoes, peeled and cut into ¾-inch cubes
  • 2teaspoons salt
  1. Combine the flour and pepper in a bowl, add the beef and toss to coat well. Heat 3 teaspoons of the oil in a large pot.  Add the beef a few pieces at a time; do not overcrowd. Cook, turning  the pieces until beef is browned on all sides, about 5 minutes per  batch; add more oil as needed between batches.
  2. Remove  the beef from the pot and sauté the onions. add about 1 to 2 tablespoons of tomato paste and continue to cook until the color starts to go from bright red to rust. Then deglaze with the wine and vinegar.Cook over  medium-high heat, scraping the pan with a wooden spoon to loosen any  browned bits. Add the beef, beef broth and bay leaves. Bring to a boil,  then reduce to a slow simmer.
  3. Cover  and cook, skimming broth from time to time, until the beef is tender,  about 1½ hours. Add the onions and carrots and simmer, covered, for 10  minutes. Add the potatoes and simmer until vegetables are tender, about  30 minutes more. Add broth or water if the stew is dry. Season with salt  and pepper to taste. Ladle among 4 bowls and serve.

Holiday Roast Turkey

I use the following recipe as my starting point. It comes out phenomenal with a crisp skin, and juicy flavorful meat. Definitely worth the effort.

Brine

A brine is simply a seasoned salt-water bath that the turkey soaks in for 6-18 hours (or one hour per pound) prior to cooking. The brine adds some flavor, but most importantly provides a chemical method to keep the meat tender and juicy while cooking.

Ingredients
Raw whole turkey
5-gallon bucket (like from Home Depot)
3-pound box of kosher salt
1 tablespoon of whole black peppercorns
2 gallons chicken broth (water mixed with bouillon cubes is fine
1-gallon ice water
1 whole bunch fresh thyme, torn roughly
1 whole bunch fresh oregano, torn roughly
1 whole bunch fresh sage leaves, torn roughly
1 whole bunch fresh marjoram, torn roughly

To Make…

1. Clean the raw turkey and remove the neck and giblets.
2. In the bucket, combine the cooled (room temperature) broth with the ice water, salt, pepper and fresh herbs and mix well.

3. Place the turkey in the bucket, breast side down and cover the bucket. Leave it sit somewhere cool, I usually use the garage (unless it’s summer time obviously).

4. After at least 6 and no more than 18 hours, and prior to cooking your turkey, remove the bird and rinse it with cool water, then proceed with your cooking prep

Turkey Time

Ingredients 2 Large Yellow or White Onions 1 stalk of celery 4 Large carrots 4 Large Shallots Olive Oil ½ bunch fresh thyme ½ bunch fresh sage ½ bunch fresh rosemary Salt and Pepper Oh yeah… and a turkey

To Make…

1. Make sure the bird is fully thawed by placing it in the  refrigerator at least 3 full days before cooking. If, on the night  before, it is not thawed, place the turkey in a room temperature bath  until it thaws.

2. The night before roasting, clean the turkey by removing the neck  and giblets enclosed in the bird. Use them for the gravy, or discard.  (See my gravy recipe for more info)

3. Rinse the raw bird completely with cold water, using your hands to  “massage” the bird as it is rinsed with the water. Do this all over,  and inside the bird’s cavity. MAKE SURE that everything you touch is  thoroughly cleansed afterwards.

4. Drizzle olive oil into the cavity of the turkey, followed by  generous amounts of salt and pepper. Rub the salt and pepper all over  the inside wall of the turkey.

5. Drizzle olive oil all over the turkey’s breasts, legs, back, etc,  rubbing the oil in. Follow it with generous amounts of salt and pepper  rubbed all over the bird. The seasonings not only bring out the bird’s  flavors, but also help to keep the meat tender.

6. Place the bird, breast side up, in his baking pan, preferably on a  rack which allows the turkey’s drippings to accumulate beneath it.

7. Chop the celery, onions, carrots, peeled shallots, and herbs and mix together in a bowl.

8. Stuff the chopped herbs and vegetables into the cavity of the turkey. This is done to flavor the bird, and will not be eaten.

9. Cover the turkey and keep refrigerated over night.

10. On the day of cooking, remove the bird from the fridge in plenty of time for it to reach room temperature.

11. Preheat oven to 500 degrees.

12. Place a fresh layer of olive oil along the outside of the turkey.

13. Place turkey, legs to the back, in the oven for 30 minutes.

14. Your turkey should be beginning to turn golden brown already. (if  the bird is quite large, like say 20+ pounds, you may need to add an  extra 15 minutes).

15. Reduce oven heat to 300 degrees.

16. Place a triangular piece of aluminum foil over the breast and  continue cooking DO NOT OPEN THE OVEN CONTINUALLY. Just let the bird  cook.

17. Despite common myths, there is no formula based on “minutes per  pound” to figure out when your bird will be done. In my experience, an  18 pound turkey will need another 1 ½ to 2 ½ hours of cooking at this  point, but you have to use some common sense. You want you turkey’s legs  to reach 175 degrees, and the breast meat to reach 155 degrees. At that  point, you will remove the turkey from the oven, keep it covered and  carve it 10 minutes later. I suggest checking your turkey after 1 hour  of cooking at 300 degrees and determining at that point how well it’s  going. Given the choice you’d rather your turkey be done too soon,  rather than too late.

Adobong Mani (Filipino Peanuts)

  • Heat peanut oil
  • slice a bunch of garlic thinly
  • fry garlic to a light brown
  • put into strainer to drain excess oil
  • add a shitload of peanuts
  • stir occasionally
  • do a few batches
  • last batch, add garlic back
  • after its all done, stir/toss and salt

Crypto

I haven’t invested in crypto currency because I don’t understand how it works. Now after reading this I understand.

How Crypto Currency works… an analogy in Layman’s terms.

Not long ago a merchant found a lot of monkeys that lived near a certain Village. One day he came to the Village saying he wanted to buy these monkeys!

He announced that he would buy the monkeys at $100 each. The villagers thought that this man must be crazy – How can somebody buy stray monkeys at $100 each? Still some people caught some monkeys and gave it to this merchant and he gave $100 for each monkey. This news spread like wildfire and people caught monkeys and sold them to the merchant.

After a few days, the merchant announced that he will buy monkeys at $200 each. The lazy villagers also ran around to catch the remaining monkeys! They sold the remaining monkeys at $200 each.

The merchant then announced that he will buy monkeys for $500 each! The villagers start to lose sleep!…..They caught six or seven monkeys, which was all that was left and got $500 each.

The villagers were waiting anxiously for the next announcement. Then the merchant announced that he is going on Holiday for a week, but when he returns, he will buy monkeys at $1,000 each! He also said that his employee will be in charge, and would take care of the monkeys he bought pending his return. The Merchant went on holiday!

The Villagers were frantic and very sad as there were no more monkeys left for them to sell it at $1000 each as was promised by the Merchant. Then the Merchant’s Employee contacted them and told them that he would secretly sell them some monkeys at $700 each. The news spread like wildfire. As the Merchant promised on his return that he would buy monkeys at $1000 each, they would achieve a $300 profit for each monkey.

The next day The Villagers queued up near the Monkey Cage. The Employee sold all the monkeys at $700 each. The Rich bought monkeys in large lots The poor borrowed money from money lenders and bought the rest of the monkeys!

The Villagers took care of their monkeys & waited for the Merchant to return! However nobody came ! ….. Then they ran to Find the Employee….However he was not to be found!

The Villagers then realized that they have been duped buying the useless Stray monkeys at $700 each and were now unable to sell them!

This Monkey Business is now known as Bitcoin!

Send ZPL to Label Printer in PHP

I needed to generate ZPL data on the fly, and push it to Zebra label printers. I also wanted to be able to see the label on screen, so I also setup an API call to Labelary.

I ended up using pfsockopen(). This example requires Apache’s mod_rewrite and PHP curl.

<?php
$zaddress = "192.168.0.245"; //IP address of network connected printer
$bc = "123456789012"; //Data to include in label data - this example is just text
$qty = "1";
$zpldata = "
^XA
^PW812
^FT0,260^A0N,260^FB812,1,0,C^FD" . $bc . "\&^FS
^PQ" . $qty . "
^XZ";

try {
    $fp=pfsockopen($zaddress,9100);
    fputs($fp,$zpldata);
    fclose($fp);
    $status="success";
    $zpl = $zpldata;
    $curl = curl_init();// print density 8dpmm=203dpi, 12dpmm=300dpi / width x height / index nth (0)
    curl_setopt($curl, CURLOPT_URL, "http://api.labelary.com/v1/printers/8dpmm/labels/4.0x6.0/0/"); //downloads a 4x6 label image at 203dpi
    curl_setopt($curl, CURLOPT_POST, TRUE);
    curl_setopt($curl, CURLOPT_POSTFIELDS, $zpl);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
    curl_setopt($curl, CURLOPT_HTTPHEADER, array("Accept: image/png"));
    $result = curl_exec($curl);
    if (curl_getinfo($curl, CURLINFO_HTTP_CODE) == 200) {
        $file = fopen("printerlabel.png", "w");
        fwrite($file, $result); //writes the png file to the server
        fclose($file);
    }else{print_r("Error: $result");}
    curl_close($curl);
    $qty = "";
    }catch (Exception $e) {echo "<div class='alert alert-danger'>Caught exception: ",  $e->getMessage(), "\n</div>";}
}
?>

Trademark Salsa

This recipe changes quite a bit depending on how spicy the peppers are and how flavorful the tomatoes are. I don’t measure, I eyeball it, and more importantly, taste the ingredients. Next time I make it, I will have to do a video, or at the very least, get some pictures. I usually make way too much, which isn’t usually a bad thing. Feel free and try to half the recipe.

I choose peppers based on darkness of the skin, and go for the ones with no wrinkles. I choose tomatoes based on the richness of the red and softness. I don’t want mushy, but they should have just a little softness to them.

Ingredients:

  • 1/2 produce bag of roma tomatoes
  • Equal amount of another kind of tomato
  • 2 white onions
  • 1 yellow onion
  • 6+ cloves of garlic
  • 1+ bunch of Cilantro
  • 2+ Limes
  • 4 Jalapenos
  • 4 Seranos
  • 1 Anaheim
  • More salt than you think
  • pinch of cumin

Slice onions and peppers in half.

Put the rack in the middle of the oven, and broil half of the onions and garlic, and all of the peppers for 10 minutes. Or you can put it in the smoker, which is of course better. They are done when they look soft and a little wrinkled. Or you can put the peppers directly on the stove top (no pan) and get a char on them.

While that is cooling, boil a big pot of water, and drop in some tomatoes in small batches. It only takes a minute or 2, once the skin starts popping open, remove the tomatoes to a strainer, and cool. Repeat in batches until your tomatoes are all done.

Peel the skin off of the tomatoes and squeeze out some of the excess liquid.

I like to remove half the seeds from the jalapenos and seranos, and all the seeds from the anaheim. Leave more seeds for a heat boost (I don’t usually need it)

Add the peppers, onion, juice and zest of 1 lime, garlic, and cilantro, cumin and salt to a large blender and blend. Reserve half of this mixture, and add half of the tomatoes, and blend more.

At this point, you can taste, and determine how the heat is going to be. You are going to want to add in more tomato and pepper mixture to get the heat you want, and make sure and add more salt. Add more lime if needed. If it doesn’t taste like restaurant salsa, it doesn’t have enough salt.

Pair with a good tortilla chip like El Ranchero brand.

Banana Bread

I don’t eat any carbs anymore, but I figured I could still share the best recipes for this type of stuff. The best recipe I found has a key ingredient – melted butter.

https://www.simplyrecipes.com/recipes/banana_bread/

Alternative recipe:

  • 2.25 cups flour
  • 1 cup sugar
  • 1 tea baking soda
  • 1 tea salt
  • 4 medium bananas, mashed
  • 1/2 cup butter
  • 2 large eggs
  • 1 tea vanilla

Preheat oven to 325°. Spray a 9×5-inch loaf pan with baking spray with flour.

In a large bowl, whisk together flour, sugar, baking soda, and salt.  In a medium bowl, whisk together banana, melted butter, eggs, and  vanilla. Fold banana mixture into flour mixture until just combined.  Spread batter into prepared pan.

Bake until a wooden pick inserted in center comes out clean, 50 to 60  minutes. Let cool in pan for 10 minutes. Remove from pan, and let cool  completely on a wire rack. Store in an airtight container for up to 3  days.

Format a background image in a DIV

I wanted to add a holiday closure notice to a website. I don’t write HTML/CSS code every day, so I just lookup what I need when I need it – that has served me very well for many years. These days, google search is great at giving garbage results. With AI generated websites, and lame article writers, it is hard to find what I am looking for.

I see obvious problems (to me), like using url(“somesite.com/picture.jpg”); – I thought the standard practice was to use double quotes for your style call-out, and use single quotes for nesting, but maybe that is just me. Even when I write standalone CSS, I still use single quotes. Maybe I am the odd one.

For this site, and task, inline CSS makes the most sense.

<div style="background-image:url('flag.jpg');background-repeat:no-repeat,no-repeat;width:100%;height:75px;">Content</div>
Content

Also, when the first presented article contains thousands of words, but it does not mention background- size, then I suspect that it is not written by someone who knows what they are doing.

So, my scenario: I found an American flag image, and it is quite wide. That is fine, I want to accommodate larger screens, but I want it to look good on smaller screens as well. It needs to “fit” instead of seeing only stars, or only the top stripe etc. That is where background-size comes into play. Depending on the shape of the block, you may want “contain” or “cover”. for me, cover was the right choice.

Of course, text color over red white and blue is a little tough, it has to be legible. I opted for yellow with a bit of text-shadow to make it stand out.

So my final code looks like:

<div style="background-image:url('flag.jpg');background-repeat:no-repeat,no-repeat;background-size:cover;width:100%;height:75px;color:yellow;text-align:center;line-height:75px;"><span style="text-shadow:0px 0px 10px black;"><b>Note: We will be closed for the 4th of July.</b></span></div>
Note: We will be closed for the 4th of July.

Bing bang boom, bob’s your uncle.

Korg KDM-3 Metronome Review

I should have been practicing with a Metronome the whole time. I feel like most of 20+ years of playing has been wasted! Okay, that is a bit much, but I certainly did not get the most out of all those hours of practice.

This has been my #1 purchase for improving my playing. I highly recommend getting one. If you want to use a phone app, or computer, or drum machine, or play along to the tracks, that is fine, but it will be very beneficial to have something.

I like this one because it is basic, plenty loud, and even has an output jack for headphones or line-in.

Practicing 2020

I started dedicating time to practicing. I have always viewed myself as “not a singer”, however, I enjoy it. I recorded these for shits and giggles, but I want to kick it into high gear, and lay it down better.

As you can see these are quite old. Since these recordings, I have been focusing on timing, and trying to polish up my presentation. I am getting ready to record a few more soon, so check back!

2018

During the Thanksgiving week, my son was down for a visit. While we has down, we were messing with recording – this is some of that audio.

Live 2018

My neighbor was putting on an event, Art & Culture festival. She heard my practicing, and asked me to play. I can’t believe I said yes at the time, but I did. I felt I was incredibly rusty, and could not pull off a “set” even if it was just for the families of the area.

I got up to perform, and I just had an idea of the songs I was going to play – I had no backup, no beat, and no one else. While playing (some Santana if I recall) my amp kept kicking off the overdrive. My amp was dying. I don’t know if it was from cranking it too much, or the Honda generator, but it really screwed me up. I was prepared for standing in front of people, although it was a bigger crowd than I thought it would be. I was NOT prepared for equipment failure.

The only thing that still worked was the amp on clean, and the looper pedal, so I played a blues song.