FYI, if you’re trying to use android adb (or some tool that uses adb, like helium backup), once you trigger the backup process from the computer, it should open a dialog on your phone. The dialog will ask you to confirm the backup process, and asks for your backup password, and a password to use to encrypt the backups (they can be the same password). Then there are two buttons at the bottom, notably “Back up my data”, which is the one to press to continue.

The most-recent time I tried to do this, I was unable to press the “Back up my data” button. Someone online pointed out that screen-overlay apps (like the Twilight app that makes your screen dimmer and more reddish after sunset [to help with sleep]) will interfere with this button. After pausing my Twilight app, it started working.

It’d be really nice if there was some sort of notification that this particular button is special and is unclickable if you have a screen overlap app :-p

I recently reinstalled my Ubuntu server (16.04 LTS) and wanted to set up the customary unix mail handing stuff so that my cron, temperature monitoring, and hard drive monitor scripts could automatically email me of anything went wrong. In the past I’ve used mandrill and sparkpost for this, but free services like these keep getting more and more difficult and persnickety to use, most-recently demanding things like opt-out/unsubscribe links in the emails and adding a privacy policy to the website (despite there not actually _being_ any website). So I wanted to see if it was easy to send email via Gmail’s SMTP interface.

I followed two nearly-identical guides:

  • http://www.havetheknowhow.com/Configure-the-server/Install-ssmtp.html
  • https://help.ubuntu.com/community/EmailAlerts

Basically, you need to install the ssmtp package, then edit the ssmtp.conf configuration file:

sudo apt-get install ssmtp

# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
#root=postmaster
root=MyEmailAddress@gmail.com

# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
#mailhub=mail
mailhub=smtp.gmail.com:587

AuthUser=MyEmailAddress@gmail.com
AuthPass=MyPassword
UseTLS=YES
UseSTARTTLS=YES

# Where will the mail seem to come from?
#rewriteDomain=
rewriteDomain=gmail.com

# The full hostname
#hostname=MyMediaServer.home
hostname=MyEmailAddress@gmail.com

# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
FromLineOverride=YES

If you have two-factor (2FA) authentication set up for your Google account, you need to create an "app password" for this "device". Visit this page to create an app password that doesn't use 2FA auth: https://myaccount.google.com/apppasswords

However, there is a problem with those two guides, specifically in the hostname= line. If you put your actual email address as the hostname entry, then google will complain when you try to connect. You can use this test command to see what is going on:

$ echo "Hello 1" | sudo ssmtp -vvv someone@example.org
[< -] 220 smtp.gmail.com ESMTP j76sm1853421ioi.14 - gsmtp
[->] EHLO MyEmailAddress@gmail.com
[< -] 501 5.5.4  https://support.google.com/mail/?p=helo j76sm1853421ioi.14 - gsmtp
ssmtp: Cannot open smtp.gmail.com:587

What you need to do is to set hostname=localhost in the ssmtp.conf file. Then it should work fine.

From a new page on my non-blog website (https://www.mbeckler.org/textures/):

Around 2010 my backup hard drive started to fail. The filesystem became corrupted and unrecoverable. I used a tool called PhotoRec that would search through the raw blocks of a hard drive, looking for the “magic numbers” at the start of common media files like JPG files. Those files, without their filesystem information such as original filename and directory structure, were randomly named and placed into a single folder. Fortunately I could use the EXIF data stored in most JPG files to extract the date and time when the photo was taken, and write a little script to sort the folders by year and month.

As part of the process of recovering my photos, I found several thousand small texture images. I have no idea where they came from, or why they were on my failing backup hard drive. That drive had contained a decade’s worth of computer backups from our computers and the computers of friends and family, so maybe there was some application that used all these textures? It’s a mystery. Anyway, I thought I’d post them here in case they might be useful for someone.

See these mysterious textures here: https://www.mbeckler.org/textures/

I recently started uploading photos to google photos, and it’s seemed to be pretty solid so far. However, when I’m trying to organize photos into albums by date (like wedding photos or vacation photos), the photo search seems to be a total failure!

Here are two photos taken in the same minute of the same day during our vacation to Hawaii:

It looks like Google Photos properly parsed the photo metadata (EXIF tags) and recognizes that both photos were taken on October 7, 2012 (which they were). However, when I search in Google Photos for “October 7, 2012” or “October 2012”, one of those photos does not show up anywhere!?!

Even weirder, is when I search for the original filenames, only one of these photos shows up!

Any ideas? My only thought is that since I uploaded all these photos the system is still trying to process all the images in the background and the search indices haven’t been updated?

A few weeks ago we packed up a bunch of meals to be frozen, then thawed and dumped into the slow cooker to simmer all day while we’re at work, ready to eat when we return. Today’s meal was a delicious Split Pea Soup.

This recipe is relatively simple to prepare. In a gallon freezer zip bag, freeze the following:

  • 1 pound dry split peas
  • 2 cups bacon, cooked and diced
  • 1 onion, diced
  • 1 cup celery, diced
  • 2 cups carrots, chopped
  • 3 cloves garlic, diced
  • 1/2 teaspoon cloves
  • 2 bay leaves

When the big day arrives, thaw the frozen bag overnight in the refrigerator.

In the morning, add the thawed contents to the slow cooker, plus four cups of chicken or vegetable broth.

Cook on low for 7-8 hours.

(side note: every time I hear the term “pea soup” I always think of this scene from The Rescuers Down Under… what a great movie!)

Really delicious soup for the winter. I think we got this recipe from our CSA one year.

Servings: 8
Prep: 15 mins
Cook: 35 mins
Total: 50 mins

Ingredients:
1/4 cup unsalted butter
2 sweet dumpling squash, peeled, seeded, chopped
1/2 cup onion, cleaned and chopped
1 pound carrot, chopped
1 teaspoon dried thyme
1 teaspoon dried sage
4 cups chicken or vegetable Stock
1 1/2 cup apple cider, divided use
6 tablespoons whipping cream
Salt
1/2 cup sour cream
Chive, chopped for garnish, optional

Directions:
Melt butter in heavy large sauce pan.
Add onion, squash, carrot and saute until softened.
Stir in thyme, sage, stock and 1 cup of cider.
Bring to boil.
Reduce heat to medium low, cover and simmer until veggies are tender, about 30 minutes.
Puree.
Mix in cream.
Season to taste with salt.

Meanwhile, in a separate saucepan, reduce remaining cider to 1/4 cup.
Cool.
Mix together cider and sour cream.

Serve soup, adding a drizzle of cider cream and a sprinkling of chopped chives on top of each bowl.

From our friend MegD

Ingredients:
1 can shopeg corn
1 can pinto beans (drain)
2 cans black eyed peas (drain)
1 each: red, yellow, green pepper
1/4 onion
1 1/3 c sugar
3/4 c vinegar
1/4 c vegetable oil

Directions:
Dice vegetables into 1/4″ cubes.
Mix corn, beans, pepper, and onion. Add oil, mix.
Mix-in sugar and vinegar, be sure to evenly distribute.
Eat with chips. Keep refrigerated. Enjoy.

Fantastic tomato soup for using up all those CSA tomatoes… I usually scale-up the recipe by 2, 3, 4, or even 6x. We always freeze some to save for those cold dreary January days when a fresh blast of summer veggies tastes just super delicious. My mom loves this recipe too, and recently said that she can’t eat the canned soup anymore since this is just so much better.

Prep: 20 min
Cook: 20 min
Cool: 10 min
Makes: 4 side-dish servings

Ingredients:
3 medium tomatoes, peeled and quartered (it’s a huge pain to peel them, so I don’t)
1.5 cups water
0.5 cup chopped onion (1 medium)
0.5 cup chopped celery (1 stalk)
1/2 of a 6oz can of tomato paste
2 Tbsp snipped fresh cilantro or basil
2 tsp instant chicken bouillon granules (I guessed that 1 cube is about 1 tsp)
1 tsp sugar
A few dashes of hot pepper sauce like Franks (I skipped this when I made it)
Snipped fresh cilantro or basil (for garnish when serving, optional)

Directions:
Seed the tomatoes if you want.
In a big pot combine tomato, water, onion, celery, paste, cilantro/basil, bouillon, sugar, and hot pepper sauce.
Bring to boiling; reduce heat.
Simmer, covered, for about 20 minutes or until celery and onion are tender.
Remove from heat, cool 10 minutes.
Blend the soup in the blender or food processor.

From my friend Jake.

Waffle Cookies
Makes: 12
Difficulty: Easy

Ingredients:
1/2 cup butter
1 cup sugar
2 eggs
1 tsp vanilla extract
1 1/4 cup flour
1/4 cup unsweetened cocoa powder
1 tsp baking powder
1/2 tsp salt
1/2 tsp ground cinnamon

Directions:

Combine using the creaming method.

Bake using waffle iron.

(Recipe from http://buddingbaketress.blogspot.com/2011/12/gingerdoodles-or-snickersnaps.html)

Snickerdoodle Dough
1/2 cup shortening
3/4 cup granulated sugar
1 egg
1 tablespoon vanilla
1 1/2 cups all-purpose flour
1/2 teaspoon baking soda
1/4 teaspoon salt
1 teaspoon cream of tartar
1 tablespoon cinnamon + 3 tablespoons granulated sugar for rolling cookies in

Cream together shortening and sugar. Add egg and vanilla and mix well, until creamy. Add flour, baking soda, salt, and cream of tartar and mix until combined. Dough will be a little of crumbly, but it’ll come together when you roll it into balls.

Combine cinnamon and 3 tablespoons of sugar in a small bowl and set aside for rolling dough in.

Gingersnap Dough
3/4 cup shortening
1 cup granulated sugar
1/4 cup molasses
1 egg
2 cups all-purpose flour
2 teaspoons baking soda
1/4 teaspoon salt
1 teaspoon cinnamon
1 teaspoon cloves
1 teaspoon ginger
1/4 cup granulated sugar for rolling cookies in

Cream together shortening and sugar. Add molasses and egg and continue beating. Add flour, baking soda, salt, cinnamon, cloves, and ginger and mix until combined, scraping down the sides of the bowl as needed.

Put 1/4 cup sugar in a small bowl and set aside for rolling dough in.

Preheat oven to 350°F. Lightly grease baking sheets with no-stick cooking spray and set aside.

Roll a small amount of gingersnap dough into a ball and toss in granulated sugar. Roll a small amount of snickerdoodle dough in a ball and toss in cinnamon-sugar.

Place both doughs together and gently roll or squeeze together (it worked best if I kneaded the snickerdoodle dough in my hand a few times before rolling both doughs together since it’s a thicker consistency).

Place on baking sheets and bake for 9-11 minutes. Remove from oven and allow to cool on baking sheets for 2 minutes before moving to cooling racks.