Spectre & Meltdown

The academic whitepapers for both of these vulnerabilities can be found at https://spectreattack.com/ — or El Reg’s article and their other article provide a good summary for those not included to slog through technical nuances. There’s a lot of talk about chip manufacturer’s stock drops and vendor patches … but I don’t see anyone asking how bad this is on hosted platforms. Can I sign up for a free Azure trial and start accessing data on your instance? Even if they isolate free trial accounts (and accounts given to students through University relationships), is a potential trove of data worth a few hundred bucks to a hacker? Companies run web storefronts that process credit card info, so there’s potentially profit to be made. Hell, is the data worth a few million to some state-sponsored entity or someone getting into industrial espionage? I’m really curious if MS uses the same Azure farms for their hosted Exchange and SharePoint services.

While Meltdown has patches (not such a big deal if you’re use cases are GPU intensive games, but does a company want a 30% performance hit on business process servers, automated build and testing machines, data mining servers?), Spectre patches turn IT security into TSA regulations. We can make a patch to mitigate the last exploit that occurred. Great for everyone else, but doesn’t help anyone who experienced that last exploit. Or the people about to get hit with the next exploit.

I wonder if Azure and AWS are going to give customers a 5-30% discount after they apply the performance reducing patch? If I agreed to pay x$ for y processing capacity, now they’re supplying 0.87y … why wouldn’t I pay 0.87x$?

Anya’s 5th Birthday Cake

I made a cake with red beets for Anya’s birthday cake. I roasted the beets instead of boiling them. Then replaced the espresso with beet juice (mostly because I had it in the pan after roasting the beets). Finally I used 7 oz of carob chips along with three tablespoons of a triple cocoa powder blend. To make it a little fancier, I made a small layer cake with the mascarpone between the layers.

I covered the cake with a stabilized whipped cream flavoured with raspberry and added fresh raspberries to to the top. The cake what what I imagined a red velvet cake was before it became white cake with red dye – a deep reddish brown colour. Very moist and dense in spite of the whipped egg whites folded into it.

Raspberry Whip Cream

1 cup heavy whipping cream
1/2 cup fresh raspberry purée (seeds strained out)
1 packet unflavoured gelatin
2 tablespoons superfine sugar

Dissolve gelatin in the raspberry purée.

Begin whipping the cream in a stand mixer. Slowly add in the sugar. Leave the mixer run and heat up the gelatin per instructions. Allow to cool a bit but don’t let it set. Drizzle raspberry mixture into cream and continue whipping to the soft peak state.

Since I was using this as a cake ‘frosting’, I immediately applied it to the cake and allowed it to set on the cake. Before the gelatin set:

After gelatin has set:

Anya got to wear her new birthday party skirt too!

One Pot Kale and Pasta Dish

I love this pasta recipe – the original, from Cook’s Country, includes a pound of sausage and uses chicken stock in lieu of vegetable stock. The kale reminds me of brewing beer — how long the hops boils informs what type of fragrance / flavour it imparts in the beer. Added at the beginning and boiled for near sixty minutes, you get bittering flavors without aromas. Added near the end of the boil, you get aroma without bitters. Here you add some kale at the beginning of your ‘boil’ and reserve some kale to remain a little firmer.

I use a mise en place technique when cooking this recipe. Watch any TV chef and they’ve got pre-measured and pre-chopped ingredients in little bowls. When the recipe step says to sauté the onions, they dump the ready-to-go onion bits into the pan. This process speeds up filming – they aren’t paying three dozen people per hour to record the chef chopping an onion, dicing carrots, and measuring out six cups only to edit those bits out later. But professional chefs use a similar technique to organize the cooking process. It also makes the cooking process more relaxed – you aren’t trying to chop your kale while stirring to keep the onions from scorching.

Putting each component into its own little bowl like a TV chef looks cool but it makes a LOT of extra dishes! I have little piles of chopped veggies around the cutting board. Large volume components that aren’t dangerous uncooked (i.e. the kale here), I put in one of the bowls I’ll use to serve dinner. If my meal has a few flakes of uncooked kale and Anya has a few extra shreds of Parmesan cheese … not the end of the world. Cannellini beans, drained and rinsed, remain in the strainer. Pasta bag opened but sitting upright on the counter.

Cook’s Country One Pot Sausage, Kale and White Bean – Vegetarian Modification

Ingredients

2 Tablespoons extra-virgin olive oil
1 onion, chopped
1 (15-oz) can cannellini beans, drained and rinsed
2 roasted garlic cloves, crushed
1/2 teaspoon dried Italian spices
6 cups vegetable stock
16 oz orecchiette
12 oz chopped kale
1 oz Parmesan cheese
Salt & pepper

Method

1. Heat 1 Tablespoon of olive oil in a Dutch oven over medium-high heat. Add onion and beans and cook until onion is lightly browned, about 5 minutes. Stir in garlic and oregano and cook until fragrant, about 30 seconds.

2. Stir in broth and bring to a boil. Stir in pasta and half of the kale. Cover, reduce heat to medium, and simmer for 8 minutes. Add remaining kale on top of pasta, without stirring, and continue to cook until kale is just tender, about 4 more minutes.

3. Stir to incorporate kale into pasta. Simmer uncovered until most of the liquid has been absorbed and the pasta is cooked, 4 to 8 more minutes. Off the heat, stir in the cheese. Season with salt and pepper to taste.

Suet Feeder In Action

We’ve had a week of mid-teen highs and snow squalls. The birds have been enjoying the suet we made for them. We have a large upside down suet feeder for larger birds, a standard little green cage feeder for pretty much anything that happens by, and these little citrus rinds are perfect for small birds. Larger birds don’t really have anywhere to perch to eat from them, but the small guys swing on the rinds while they eat. We’ll probably be making more suet next weekend and refill these rinds, but the suet lasts a long time when it’s eaten by chickadees, nuthatches, and sparrows.

Citrus rind suet feeder for small birds

Broccoli Cheddar Soup

Broccoli cheddar soup is great on a cold winter day (especially when everyone’s coming down with a cold).

Ingredients:

1 medium sweet onion
3 cloves roasted garlic
4 tablespoons unsalted butter
1/4 cup all-purpose flour
pinch hot pepper flakes
3 cups stock
4 cups milk
1 teaspoon sea salt
1 teaspoon freshly ground black pepper
1/2 teaspoon smoked paprika
2 cups broccoli florets
2 cups shredded broccoli stems
1 cup shredded carrots
14 ounces sharp cheddar cheese

Dice onion. Melt 1t butter in a cast iron dutch oven (big, heavy pot) using medium heat. Add onion and sauté until translucent. Mush the garlic and add to cooked onions. Sauté for 30 seconds, then remove from pan.

Add remaining butter to pan and melt, then stir in flour and hot pepper flakes. Stirring constantly, cook a medium roux. Slowly stir in stock and milk. Add salt, pepper, and paprika. Reduce heat to low and simmer for ten minutes.

Return onion and garlic to the pot, add broccoli and carrots. Simmer for twenty minutes – broccoli should be cooked but not mushy. Slowly stir in cheddar and allow to melt.

This is good served alone, but it is amazing served in bread bowls!

Random tip – roast garlic and caramelized onions keep well in the freezer. Whenever you have almost dodgy onions or garlic (especially if you grow your own and have a big harvest that cannot be used quickly enough), cooking and freezing them is a great way to avoid food waste and have these ingredients available quickly (i.e. you’re not surfing the internet for bad tips on how to speed up caramelizing onions).

For roasted garlic – when you’re cooking something else, drizzle olive oil on the garlic, wrap in aluminium foil, and toss it in the oven along with whatever else you are cooking. You can even turn the oven off and let the garlic continue to roast as the oven cools off.

Caramelized onions aren’t quite as easy – probably need to dirty a new pan (although I’ve cooked onions for a dish and re-used the pan to caramelize a bunch of onions) and they need to be sliced (a food slicer makes a quick job of this step). Plus you need to give them a stir every now and then. But if you’re already standing at the cooktop making dinner … watching an extra pan isn’t a big effort.

3D Print Server – OctoPrint

When we started setting up our 3D printer, I installed Cura on my laptop … but I don’t want to leave my laptop in the office & hooked up to the printer for a day or two. We could install Cura on the server and use it to print, but we’d also need to use something like xvnc so we could remotely initiate a print job and not need to stay connected to a redirected X session for a day or two. Thus began the quest for a server-based 3D printer controller. I think we’re going to use OctoPrint on our Fedora server.

There are a few prerequisities: python, python-pip, and python2-virtualenv, and git-core (well, you can just download/extract the project … but having a git client is quicker/easier).

In the directory where you want the OctoPrint folder, run “git clone https://github.com/foosel/OctoPrint.git”

Create a user for octoprint and add that user to the tty and dialout groups.

Create a python virtual environment: virtualenv venv

Install OctoPrint into the new environment: ./venv/bin/python setup.py install

Log into the octoprint service account (interactive logon or su), start a screen session for the server, then start the server with in the screen:

su – myserviceaccount
screen -d -m -S OctoPrintServer
screen -x OctoPrintServer
/path/to/OctoPrint/venv/bin/octoprint

Then access the web service and continue setup – the default port is 5000. My next step is to write an init script so the server will auto-launch on restart … but this is functional enough to start printing.

 

Coconut Shrimp

I hate sweetened coconut shreds. I don’t know if it is the propylene glycol or sodium metabisulfite, but there is an odd chemical taste to the stuff. When I happened across a recipe for making coconut shrimp at home, I was hesitant to try it. A lot of flavors get lost in cooking – I’ve tried unsuccessfully to get citrus hop flavours to come through in beer battered fried fish, and purposed a terrible tasting six-pack from Rogue for fish and chips because none of the off flavours are present in the finished meal. But I didn’t want to chance enduring that strange sweetened coconut taste. But you can make your own sweetened coconut shreds. I happen to have big flakes of dried coconut, so the first step is to run them through the food processor long enough to have small flakes. Measure the small flakes – I had two cups. Take an equal volume of water (here’s where the measurement gets funky – I used the dry measuring cup for the water so I don’t mean “1 cup of water per cup of small coconut flakes” as properly measured). Boil the water in a large saute pan, then add sugar until no more dissolves. Then stir in the coconut flakes. Reduce heat and simmer until the water is absorbed/evaporated. Voila, sweetened coconut bits. Edible ones!

Put a cup of flour in a bowl, and add about 1/4 t each of salt and pepper.

Put a few eggs into a second bowl, add a pinch of salt.

In a third bowl, mix a 1:1 ratio of panko bread crumbs and sweetened coconut flakes. Mix to combine.

Using thawed, peeled, deveined shrimp – lightly coat a shrimp in flour, then dip in egg. Place shrimp into the panko/coconut mixture, spoon mixture over shrimp, and lightly press. Gently remove shrimp from the pile and drop into hot oil to cook. Repeat, again and again and again 🙂 Remove when the shrimp float and have turned golden. (You may not want to use the largest shrimp you can find as the coating may get overcooked before the shrimp is done.)

 

Customer Service And IT Automation

A 3D printer filament manufacturer, MakerGeeks, has been running a series of awesome deals since Black Friday. We placed an order for several of their their “grab bag” packages – which I assume to be production overruns and whatever isn’t selling. We want to make a few large prototypes – if it’s an amalgamation of oddball colours … whatever, it’ll still be functional. We can pay extra to select the colour once we’ve got a finished model file.

A few hours after placing my order, I got a mass e-mail saying essentially “we sold a lot more stuff than we expected, it’s gonna take a while to ship”. Wasn’t buying Christmas presents, so waiting a while … whatever. Two weeks later, I haven’t heard a thing from them. Odd. I sent a quick e-mail asking for someone to verify that my order didn’t get lost or something. And never heard back from them. Waited another week and sent a follow-up.

Checked them out on the BBB site and found out they’ve got a really bad reputation for non-existent customer service And not shipping ‘stuff’. Sent an e-mail to all of the contacts listed on the BBB site (the phone number is unanswered and rolls to a generic message). Another week with no response, and I filed a BBB complaint mostly to increase the number of people saying “these people don’t bother answering e-mail and suck at order fulfillment”.

Additional irony – I’d subscribed to their newsletter when we placed our order. The five weeks of no communication from the company did include an almost daily e-mail with information on their holiday promotion. So they’re not bothering to ship my stuff, but they’re actively soliciting new orders!?!

What bothers me, though, is that a simple automated job would be the difference between initiating a charge-back and waiting for my order to ship. There’s an order database somewhere. Pull a list of all open orders & send a message that says increasingly comforting versions of “we haven’t forgotten about you, we just haven’t gotten to you yet”. If it were me, I’d probably include something like “We currently have outstanding orders for 25,839 KG of filament that we’re working through. The machines are running as fast as they can, and we’re shipping 2,848 KG a day. We want to thank you for your patience as we work through this amazing volume of holiday orders.”. Actual message content is almost irrelevant. The point is a few dozen development hours would be saving orders and improving the company’s reputation.

Instead I get nothing. With no faith that the company will ship me anything ever … and since I don’t want to try disputing a charge six months after it was made (had problems with that before – prepaid a CSA membership through PayPal, waited eight months for the new cycle to start, but I wasn’t on their list and they claimed to have no record of my payment. Tried to dispute it through PayPal and was told the window to dispute the charge was up … but I didn’t know I wasn’t going to be part of the new year until the first delivery!), I presented my communication and their complete lack of response to the credit card company. About 24 hours later, the charge-back was completed.

Peppermint Recipes

I wanted to make peppermint bark this year … so I’ve got a bunch of peppermint extract to use. Now I’m hunting peppermint recipes!

Chocolate Peppermint Bark

Equal amounts dark and white chocolate
Peppermint extract (~1/2 teaspoon per pound of chocolates)

Melt dark chocolate, mix in half of the peppermint extract, pour onto a lined baking tray and allow to set.
Melt white chocolate, mix in peppermint extract, pour onto dark chocolate. Sprinkle with crushed candy cane bits if desired. Score and allow to set.
Break into pieces.

“Shamrock” Shake

3 cups vanilla ice cream
1 3/4 cups whole milk
1/2 teaspoon peppermint extract

Blend all together. You could add green food coloring or spinach to turn it green. Serve w. whipped cream & cherry.

Peppermint Patties
7.5 cups powdered sugar (34 oz)
1/3 cup evaporated milk
1/3 cup light corn syrup
3 T coconut oil
1 teaspoon peppermint extract
1.5 lbs chocolate, copped

In a large bowl, beat together sugar, milk, corn syrup, coconut oil, and peppermint on a low speed. Shape the dough into two round circles, cover in plastic, refrigerate for an hour.

Sprinkle powdered sugar on silicon rolling mat. Roll out to about 1/4″ thick and cut with ~2″ cutter. Place cut pieces on baking sheet and freeze overnight.

Melt the chocolate over a double boiler. Using a fork, dip each patty into the chocolate then set on parchment lined baking sheets.

Maple Custard Tart

I’ve seen custard tarts topped with apple “roses” and wanted to make something similar for our Christmas dessert. Since we made our own maple syrup this year, I wanted to use a maple custard. We had a big bag of walnuts, so I used those for the crust.

Maple Custard:

  • 1.5 cups whole milk
  • 6 egg yolks
  • 1/2 cup maple syrup
  • 3T corn starch
  • 1t vanilla extract
  • 1/4t sea salt

Combine all ingredients in a double boiler (or a metal bowl on top of a pot). Select a medium heat (‘4’ on my cooktop). Whisking constantly, heat custard until it thickens. Remove from heat, cover with cling film, and refrigerate.

Apple Roses:

  • 2 apples
  • 1/2 cup fresh orange juice
  • 1/2 cup sugar
  • 1/2 cup melted butter

The instructions used a mandolin to slice the apples, I used a spiral food slicer. Worked well. Combine orange juice, butter, and sugar in a bowl and mix. Gently stir in apple pieces so they are covered. Let sit for 10 minutes.

To assemble – spread custard into cooled pie crust. Curl apple slices around themselves to make rose shapes and gently press into custard.

I used a walnut crust for this pie — it’s a great combination.