Kid Sewing

Anya wants a sewing machine — and while I try not to be a crazy overprotective “everything is going to kill you” mom … well, high speed pokey things coming at little fingers kind of freak me out. I kept her request in mind, though. Then this month’s Nancy’s Notions catalog had a finger-safe plastic foot in the front cover, complete with a young girl using the machine. That is exactly what I didn’t know I needed. So I set out to research a good beginner sewing machine for an almost five year old kid.

There appear to be two paths – a quasi-toy with a lot of safety features and simplified operation or portable sewing machines that are riskier to use and can be frustrating for few sewists. The deciding factor for me was the device’s useful life. I don’t want to buy something that will need to be replaced in a year or two when she’s more experienced in operating a machine. And I figure it’s best to learn everything at once rather than add the foot controller later — a bit like learning with a manual gearbox v/s learning with an automatic and then having to un-learn some bad habits that weren’t bad habits on an automatic. Plus Anya knows when we have a ‘real’ one and she’s got a ‘fake’ one for kids. I decided on the Janome Derby – a little five pound machine that has several stitch options. Happened to find it for sale at Michael’s for 60$ and they had a 20% off almost everything coupon — 51.60$ including tax!

I wanted to come up with some sewing practice for her, and I found a printable ‘sewing maze‘ online. Such an awesome idea – you haven’t “ruined” a project if you don’t sew exactly on the line. I printed a few copies for Anya (and a few for me). I could not find anything similar to practice sewing curves. Longer than I’d like to admit figuring out how to get Photoshop’s curvature pen to make a shape instead of a light blue ghost that doesn’t actually show up anywhere. (Once you’ve selected the tool, you have to change the ‘stroke’ setting from the white with a red line through it to, well, something. I nulled out fill, but I do not know if that was necessary.)

Once I could draw a smooth curve that prints instead of a fully printable squiggle or a lovely curve that disappears when you print or export, I have my own sewing practice sheets for curves and points! Now I just need to think of a cool project to do next.

 

Creamy Tomato Soup

Ingredients:

  • 1 tablespoon olive oil
  • 1 large sweet onion, thinly sliced
  • 2 medium cloves roasted garlic
  • Pinch of red pepper flakes
  • 1 (28-ounce) whole San Marzanos tomatoes
  • 2 cups stock
  • 1/3 cup heavy cream or 1/2 cup whole milk
  • Freshly ground black pepper

Method:

Heat the olive oil over medium low heat, add a pinch of salt, then slowly add the onion slices (allowing time for the liquid to evaporate off between additions) and sauté until the onions begin to caramelize. Mush the roasted garlic and add to onion. Deglaze the pan with stock. Run tomatoes through a blender, then add to pot. Add red pepper flakes and black pepper. Reduce heat and simmer for 10-15 minutes. Stir in cream. Voila, tomato soup!

We served this with cheddar biscuits – whatever bread recipe you like, then add grated cheddar cheese. I used about a cup of cheddar for four cups of flour in the bread.

Net Neutrality Is Dead

Well, we all knew it was going to happen. And it did. Some people are saying “but, but … it wasn’t a problem *before* the regulation went into effect, so nothing bad is going to happen now”. Maybe they’re right. Or that assertion could be the equivalent of saying internet pornography wasn’t a problem because you’re only looking at a time period ending with 9600 baud modems and uuencoded images split into a dozen posts on a message board.

Could be that the regulations were enacted when service providers *started* to use their ability to control access against customers (Madison River blocking VoIP, AT&T blocking Skype & VoIP, everyone and their brother blocking google wallet because *they* wanted to force payment through their processor). Could be that companies were experimenting with the controls and would have stopped because of revenue loss regardless of federal regulations. I guess we’ll find out in a few years.

Alabama Special Election Results

Jones won! Write-in candidate votes exceed the margin by which he won, but he won. With exit polls indicating that allegations against Moore weren’t a big deciding factor. I’m curious what impact the allegations had on turnout though — the voter didn’t decide their vote based on the allegations, but they either felt it important enough to go vote. They didn’t want to vote for a pedophile *or* a Democrat so stayed home because of Moore’s sexual history. And how much Moore’s “the early 1800’s were great even if slavery was a thing because OUR families stayed together” and poorly obfuscated desire to return to a period when only rich white dudes got to vote drove turnout too.

Jones won’t be sworn in before the recess. Each county has until 22 Dec to certify their results, and some counties don’t have a lot of incentive to hurry that process. The state then has until 03 Jan to certify their results.

Bird Suet

We made bird suet. For the past year, I’ve been saving citrus shells in the freezer. Juice a lemon – pull out the segments, add the shells to the bag. Use orange in a recipe – same thing. If you want the zest, make stripes down the shell. Or random spots.

The suet recipe we make is vegan. I know a lot of birds eat meat, but I happen to have a lot of coconut oil on hand. And it’s solid under 76 degrees, so it won’t melt if we get a random warm-ish day.

1 cup coconut oil
1/2 cup cheap peanut butter (the kind with sugar – I avoid anything that’s got crazy ingredients like HFCS or stabilizers)
1 T hot pepper flakes
1/2 cup corn meal
1 cup rolled oats, run through a food processor to powder
1/2 cup whole wheat flour
2 cups bird seed

Put a pot on low heat, add the coconut oil, peanut butter, and hot pepper flakes (I used hot pepper powder, so it isn’t really visible).

Stir both the oil and peanut butter have melted. Remove from heat and stir in other ingredients.

Voila, suet. Scoop into citrus shells (you’ll need something to hold the shells upright until the suet cools and sets) or pour into a glass food storage container. Once it sets, you can cut to fit your suet feeder. Remaining bits can be melted and re-poured.

 

Scraping OpenHAB Karaf Console Data

Realized an easier way of scraping the Karaf console output – no need to SSH into the console (which, evidently, can timeout for inactivity … something I sort on my OpenSSH server with a config parameter whenever I’m looking to use tee and scrape output).

You can just pipe the startup script to tee. Have to push stderr into stdout to get the *errors* logged.

./start.sh 2>&1 | tee -a /tmp/logfile.txt

The output gets a little funky – maybe because of the color flags on some of the text? Dunno, but it’s grabbing the text and something like tail displays it without funky odd stuff

ESC[31m ESC[0m __ _____ ____ ESC[0m
ESC[31m ____ ____ ___ ____ ESC[0m/ / / / | / __ ) ESC[0m
ESC[31m / __ \/ __ \/ _ \/ __ \ESC[0m/ /_/ / /| | / __ | ESC[0m
ESC[31m/ /_/ / /_/ / __/ / / / ESC[0m__ / ___ |/ /_/ / ESC[0m
ESC[31m\____/ .___/\___/_/ /_/ESC[0m_/ /_/_/ |_/_____/ ESC[0m
ESC[31m /_/ ESC[0m 2.2.0-SNAPSHOTESC[0m
ESC[31m ESC[0m Build #1114 ESC[0m

Hit 'ESC[1m<tab>ESC[0m' for a list of available commands
and 'ESC[1m[cmd] --helpESC[0m' for help on a specific command.
Hit 'ESC[1m<ctrl-d>ESC[0m' or type 'ESC[1msystem:shutdownESC[0m' or 'ESC[1mlogoutESC[0m' to shutdown openHAB.

ESC[?1hESC=ESC[?2004hESC[36mopenhab>ESC[0m

But you get the java exceptions too:

      Exception in thread "pool-45-thread-5" java.lang.NullPointerException
              at java.util.AbstractCollection.addAll(AbstractCollection.java:343)
              at com.zsmartsystems.zigbee.ZigBeeNode.setNeighbors(ZigBeeNode.java:510)
              at com.zsmartsystems.zigbee.ZigBeeNetworkMeshMonitor$2.run(ZigBeeNetworkMeshMonitor.java:232)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
              at java.lang.Thread.run(Thread.java:748)

 

Moore On When America Was Great

Moore thinks getting rid of all of the amendments after the 10th would solve a lot of problems.

What’s he got against the 11th (states are immune from legal action from out-of-state citizens)? And I’d think he’d appreciate the 12th (the VP is elected in conjunction with the president instead of having a VP from a different party). Did he really think saying “everything after the 10th” was subtle and people wouldn’t infer that he actually objects to the 13th, 15th, probably 16th, and 19th amendments. Maybe even the 26th.

There’d always been an undercurrent of racism and sexism to “make America great again” … ‘again’ implies there is some previous halcyon period to which we should return. But while Trump teased sexism and racism, he did so while claiming to be the best friend to those he disparaged. Moore didn’t even bother with subterfuge. And it will be interesting how well this blatant racism and sexism serves him in the election. Will he, like Trump, manage to run out ‘the deplorables’ in sufficient numbers to win? Or will otherwise reliably Republican voters in Alabama sit home unwilling to vote for him or a Democrat.

Political Power As A Zero Sum Game

Roy Moore was quoted in the LA Times saying “I think it was great at the time when families were united — even though we had slavery — they cared for one another…. Our families were strong, our country had a direction.”. This willfully ignores families that couldn’t stay together because their children were stolen from them and sold. *Our* families were strong, and who cares about anyone else? It’s the same implication I’d read into Trump’s ‘great again’ slogan. Well, it was great for rich old white dudes, and since I’m a rich old white dude … that’s my definition of great, and screw everyone else.

If people are going to be blatant about their racism, I’d love some honesty to go with their chutzpah. Political and social power are zero-sum. In game theory, zero-sum means that one person’s gain is your loss. And you can only gain by someone else losing. If the game starts with a stack of one hundred one dollar bills, no one can win more than 100$. Divide the money equally and each person gets 50$. Play the game — the only way for you to get 60$ is for your opponent to lose ten bucks. That’s a concrete example — new dollar bills aren’t going to magically appear. But abstract concepts can be zero-sum as well. Any individual only has so much influence, and their vote is only a percentage of all voters. The larger the population of “people who can make decisions and influence society” or “people who can vote” gets, the smaller any individual’s power becomes.

The US population is 326 million plus people (or so says the Census Bureau’s population clock). In 2010, 24% were under 18 – which makes the population at or above the age of majority just over 248 million. That means one person is 0.00000040% of the total adult population. Limit decision makers to white men (31% of the population) and each person’s power (for those who retain power) is tripled. Home ownership rates for whites is like 71.9%, which would mean each person’s power (for those who retain power) is tripled.

Similar story for voting. There were just shy 129 million people who voted in 2016. A Rutgers breakdown of gender/ethicity of reported voters has 47.8 million white men voting. Using the 71.9% home ownership rate, an individual white man’s vote would have a 2.7x increase in impact if only white land owning men could vote.

Some old white land owning dudes think the early 1800’s were great because men in their position weren’t forced to share power with women, non-white people, or poorer white dudes. Some old white land owning dudes think giving up some of *their* power so women/non-white people/poorer people get a say in government and American society was OK because women/non-white people/poorer people deserve some control over the society and political system in which they live. Hell, some rich old white dudes probably think ceding some of their power is OK because they are vastly outnumbered by women/non-white people/poorer people and just didn’t see staying in power as a likely outcome either way, and sharing power was better than all of the women/non-white people/poorer people banding together and deeming rich old white dudes to be non-citizens.

Logging OpenHAB’s Karaf Console To A File

With OpenHAB2, there is a console where information is displayed. You can copy/paste from the console to save information, but if you are reproducing an issue and expect something to be logged, you can also dump the information from the console into a text file. This is done by ssh’ing into the Karaf console and using tee to write output to a file. Since the SSH server is bound to 127.0.0.1, you will need to use localhost or 127.0.0.1. This cannot be done remotely without some sort of firewall port redirection or OpenHAB change

     ssh UserName@localhost -p 8101 | tee -a /tmp/test.txt

So what’s the username? Karaf uses karaf as the username and password. OpenHAB uses the users.properties file (./openhab2/userdata/etc) to store users. Our file has the user openhab. You can google the default password or put your own crypt string in there and know the password.

Now everything that comes across the Karaf console (system output and stuff you type) will be in the /tmp/test.txt file.

[root@fedora01 ~]# tail -f /tmp/test.txt

                          __  _____    ____
  ____  ____  ___  ____  / / / /   |  / __ )
 / __ \/ __ \/ _ \/ __ \/ /_/ / /| | / __  |
/ /_/ / /_/ /  __/ / / / __  / ___ |/ /_/ /
\____/ .___/\___/_/ /_/_/ /_/_/  |_/_____/
    /_/                        2.2.0-SNAPSHOT
                               Build #1114

Hit '' for a list of available commands
and '[cmd] --help' for help on a specific command.
Hit '' or type 'system:shutdown' or 'logout' to shutdown openHAB.

openhab> bundle:list
START LEVEL 100 , List Threshold: 50
 ID │ State    │ Lvl │ Version                │ Name
────┼──────────┼─────┼────────────────────────┼──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
──────────────────────────────────────────────────────────────────────────────────
 15 │ Active   │  80 │ 2.2.0.201712061711     │ ZWave Binding
 16 │ Active   │  80 │ 2.2.0.201712052342     │ ZigBee Binding
 17 │ Active   │  80 │ 5.3.1.201602281253     │ OSGi JAX-RS Connector
 18 │ Active   │  80 │ 2.4.5                  │ Jackson-annotations
 19 │ Active   │  80 │ 2.4.5                  │ Jackson-core
 20 │ Active   │  80 │ 2.4.5                  │ jackson-databind
 21 │ Active   │  80 │ 2.4.5                  │ Jackson-dataformat-XML
 22 │ Active   │  80 │ 2.4.5                  │ Jackson-dataformat-YAML
 23 │ Active   │  80 │ 2.4.5                  │ Jackson-module-JAXB-annotations
 24 │ Active   │  80 │ 2.7.0                  │ Gson
 25 │ Active   │  80 │ 18.0.0                 │ Guava: Google Core Libraries for Java
 26 │ Active   │  80 │ 3.0.0.v201312141243    │ Google Guice (No AOP)
 27 │ Active   │  80 │ 3.12.0.OH              │ nrjavaserial
 28 │ Active   │  80 │ 1.5.8                  │ swagger-annotations
 29 │ Active   │  80 │ 3.19.0.GA              │ Javassist
 31 │ Active   │  80 │ 3.5.2                  │ JmDNS
 34 │ Active   │  80 │ 1.1.0.Final            │ Bean Validation API
 36 │ Active   │  80 │ 2.0.1                  │ javax.ws.rs-api

Recognizing Jerusalem

I subscribed to the daily propaganda message from the White House. Some are actually informative, a lot are such over the top propaganda that they’re funny. This one … wow. Trump randomly announced that he recognizes Jerusalem as the capital of Israel?!

And the objections I see relate to how poorly this plays within the peace process (how neutral is the US if it’s declaring Israel in the right?), how Muslims will react, or how this will foment violence in already volatile regions. But how about how the move violates UN resolutions, and how acting contrary to UN resolutions undermines confidence that the US will follow through on any UN resolutions.

Now I assume Trump is completely unaware of the 70 years of UN resolutions that deem Israel’s use of the city as its capital a violation of international law. Say UN Security Council Resolution 478. I’m sure there are people at the White House who are aware of the city’s history, of the US’s abstentions on votes condemning Israeli occupation of East Jerusalem. He knows the popular story, and probably from Israel’s perspective. And he doesn’t care to know more. But this message proves to me that whatever “adults” Trump may manage to retain absolutely cannot control he man. Maybe military staff can prevent the most egregious offensive actions he might take, but no one can stop him from provoking others.