Installing Debian on Orange Pi PC

After misinterpreting the forum and trying to use loboris’ instructions on the official OrangePi Debian Server image, then having temporary success with a friend’s help, I’ve finally got it working.

The short story is to use loboris’ image, and his uImage and script.bin files, and follow the instructions here.

Step 6 took place within the BOOT folder — so really just copying the uImage_OPI-2 file over uImage, and script.bin.OPI-PC_720p60 over script.bin. First make sure you’ve copied the most up-to-date versions of those two files into the BOOT folder.

My initial error on step 6 was to assume that I was copying from the non-SD location and copying onto the SD. So I started in dev/sda and tried copying into dev/sdb (i.e. BOOT)

I ran through all the steps using Lubuntu. It was quick and works.

Orange Pi PC

I decided it’s finally time to get a mini server running at home to handle the basic webserver stuff that my shared host can’t handle (python, etc.).

I recently bought an Orange Pi PC from a friend, and it’s got a little more oomph than my old Raspberry Pi Model B, so that’s what I’m going with for now.

The issue I kept running into with the rPi was forgetting what hardware version I had, and the specs of that version. To avoid that with the OrangePi…

Stats for future reference (from OrangePi.org):

Orange Pi PC

Same chip and RAM as:

  • Orange Pi 2
  • Orange Pi Mini 2
  • Orange Pi Plus
  • Board imprinted with: PC v1.2
  • CPU: ARM H3 Quad-core Cortex-A7 H.265/HEVC 4K 1.536 GHz
  • GPU: ARM Mali-400 MP2 @ 600 MHz
  • RAM: 1GB DDR3 (shared with GPU)
  • SoC: Allwinner H3
  • Storage: TF card (max 64GB) / MMC card slot
  • NIC: 10/100M Ethernet RJ45
  • Video Input: A CSI input connector camera:
    • supports 8-bit YUV422 CMOS sensor interface
    • supports CCIR656 protocol for NTSC and PAL
    • supports SM pixel camera sensor
    • supports video capture solution up to 1080p@30fps
  • Audio Input: MIC
  • Video Outputs:
    • supports HDMI output with HDCP
    • supports HDMI CEC
    • supports HDMI 30 function
    • Integrated CVBS
    • supports simultaneous output of HDMI and CVBS
  • Audio Output: 3.5mm jack and HDMI
  • Power Source: DC input can supply power, but USB OTG input don’t supply power
  • USB Ports:
    • three USB 2.0 HOST
    • one USB 2.0 OTG
  • Buttons: Power Button (SW4)
  • Low-level peripherals
    • 40 Pins Header, compatible with Raspberry Pi B+
  • GPIO(1×3) pin: UART, ground.
  • LED
    • Power LED
    • Status LED
  • Key
    • IR input
    • POWER
  • Supported OS
    • Android Ubuntu
    • Debian
    • Raspberry Pi image
  • Product Size: 85mm x 55mm
  • Weight: 38g
Orange Pi PC board (click for larger version)
Orange Pi PC board (click for larger version)

Starting out with Debian Server for OrangePi2.

Death, the Prosperity Gospel, and Me

Kate Bowler — a professor at Duke Divinity School — has been diagnosed with Stage 4 cancer.

But one of my first thoughts was also Oh, God, this is ironic. I recently wrote a book called “Blessed.”

A few years ago she wrote a history of the prosperity gospel, and this article is a sort of mini history, particularly looking at how it shaped the ways in which Christians respond to “bad things” including impending death.

The prosperity gospel has taken a religion based on the contemplation of a dying man and stripped it of its call to surrender all. Perhaps worse, it has replaced Christian faith with the most painful forms of certainty. The movement has perfected a rarefied form of America’s addiction to self-rule, which denies much of our humanity: our fragile bodies, our finitude, our need to stare down our deaths (at least once in a while) and be filled with dread and wonder. At some point, we must say to ourselves, I’m going to need to let go.

Many of her points also permeate the non-prosperity North American church. She deals with the religious, the cultural, and the personal with depth, humour, and frankness.

Cancer requires that I stumble around in the debris of dreams I thought I was entitled to and plans I didn’t realize I had made. But cancer has also ushered in new ways of being alive.

Read it.

Curried Chicken with Mango Rice

I’m going to try storing recipes I’ve enjoyed making here. So I don’t have to keep printouts with scribbled modifications in a binder on a shelf.

Also, I want a record of my go-to recipes with an accurate (for me) prep time.

This one came about because of a large bag of frozen mango sitting in the freezer, leftover from the good intention of making smoothies regularly.

Curried Chicken with Mango Rice
Serves 4
Quick prep with chicken, frozen mango, and rice.
Write a review
Print
Prep Time
30 min
Cook Time
30 min
Total Time
1 hr
Prep Time
30 min
Cook Time
30 min
Total Time
1 hr
Ingredients
  1. 1 teaspoon curry powder, or to taste
  2. 1/2 teaspoon salt
  3. 1/4 teaspoon black pepper
  4. 4 skinless, boneless chicken breast halves
  5. 1 cup chicken broth
  6. 1 small can coconut milk (1/2 cup to 165ml)
  7. 1 cup white wine (sauvignon blanc gives a great bite to the dish)
  8. 1 cup basmati rice
  9. 1 tablespoon brown sugar
  10. 1 tablespoon dried parsley
  11. 1 cup diced mango (if using Costco frozen, cut the pieces in half first)
Instructions
  1. Combine curry powder, 1/4 teaspoon salt, and pepper. Rub mixture into chicken breasts. Set aside.
In a large, non-stick skillet, combine
  1. chicken broth
  2. water
  3. wine
  4. rice (uncooked).
Stir in
  1. brown sugar
  2. dried parsley
  3. remaining 1/4 teaspoon salt
  4. mango
Then
  1. Arrange chicken pieces on top of rice, and bring to a boil.
  2. Cover, reduce heat to medium-low, and simmer for 20 to 25 minutes.
  3. Remove from heat.
  4. Let stand, covered, until all liquid is absorbed, about 5 minutes.
Notes
  1. Changed wine to 1 cup, due to increasing heat to medium-low (rice was undercooked when cooked on low -- had to cook for another 20 minutes or so on medium-low with another 1/2+ cup of wine, due to rice being undercooked in original recipe).
  2. Subbed in coconut milk instead of 1/2 cup water, for creamier result.
  3. Subbed basmati rice for long-grain white rice, because basmati.
Dates Made
  1. 2016-01-24 | It was a winner, and the first choice for tomorrow's lunch.
Adapted from allrecipes.com
Adapted from allrecipes.com
eisb() http://david.eisb.ca/

Tracking irregular paycheque deductions in YNAB4

We use You Need A Budget (YNAB) for our budgeting needs. (Aside: we love it!)

There’s a particular way we decided to track my food spending at work that takes me a minute (or three) to remember every time I sit down to reconcile the budget, so I’m recording the steps for me, and the reasoning for anyone else who might want to follow this route.

.:.

If I buy food at work, the only way to pay is to have the amount taken off my next paycheque.

This used to cause a problem for us because my food spending was often being tracked against our budget line in the month after I bought the food, since we couldn’t track it until I received my paycheque/stub.

The problem was sometimes even a bit worse since my paycheques are counted as next month’s income in YNAB. This caused problems where I could have bought food in October, but the cheque would come in November, and only be counted towards our December budget.

Our ideal state was to continue counting income as being for the next month, but to count all food spending for the month in which I actually bought the meal.

To achieve this we added an on-budget Credit Card-type account for my cafeteria card at work, so that:

  • YNAB will emulate the “buy now pay later” nature of the cafeteria card
  • food spending is tracked for the month in which it is spent
  • paycheques can be easily counted as Next Month’s Income when they come in
  • when a paycheque comes in, a payment is made to the Cafeteria Card account to cover any food purchases deducted from that paycheque

What this looks like in practice:

  • I buy a delicious stir-fry at work on Nov 21 for $5.95
  • I swipe my physical cafeteria card in the cafeteria
  • I enter $5.95 into YNAB as an Eating Out transaction on Nov 21, paying with my Cafeteria Card account within YNAB
  • when my next paycheque comes out on Dec 4, it is for $994.05 instead of $1000, since the $5.95 has been deducted

When the cheque/paystub actually arrives, I enter it into YNAB:

  • enter the actual amount of the cheque in Inflow (994.05), as a Split transaction
  • first split: as a transfer to the Cafeteria Card account, enter the amount deducted from that cheque for food into Outflow (5.95)
  • second split: put the amount remaining to assign (1000) into Inflow as Next Month’s Income

Entering the cheque into YNAB

I go in this order because as soon as the $5.95 is entered YNAB tells me that $1000 is left, so I never have to actually do the calculation myself to determine what my pay would have been before the deductions.

Why this works for us:

  • spending is tracked in the month of the spend, so we always know how much we really have in our Eating Out line
  • income and spending is accurately reflected, instead of just counting the cheque amount as income when the cheque comes, which would ignore my food spending
    • this means YNAB is showing my true net income
  • I get to avoid the tedium of manually calculating the gross amount on my paystub every time, and figuring out how I’m going to accurately add that and the food amounts weeks after the fact

BTW, the first YNAB link above is a referral link — if you buy using it you get $6 off, and I get $6 from them as a thank you. They have a free 34-day trial you should check out first, though.

EDIT: 30 minutes after publishing this I found out a new version of YNAB is in the works. That new version will deprecate how YNAB currently deals with credit cards. Title now reflects that this is applicable for YNAB4 (and likely 3 — I can’t remember how it dealt with credit cards).

Financial Terms Translation Key (Canadian Edition)

Much of the financial investment and savings advice I come across is U.S.-centric, so I always have to ask myself things like “what’s the Canadian equivalent to a 401(k), again?”

Here’s my reference sheet. Making it public to hopefully help some other Canadians interested in personal financial management.

Note: This is an incredibly basic “equivalence” list. Different laws dictate how each investment vehicle works in each country (and even different states/provinces). This is just how the overall concept of each vehicle generally equates in my mind with many many caveats involved (see the TFSA vs Roth IRA, for instance).


U.S. term Canadian term Definition
IRA RRSP/RSP pre-tax vehicle can hold non-cash investments; annual limit carries over.
Roth IRA TFSA after-tax investment vehicle with annual contribution limit; in Canada it can hold cash and the annual limit carries over.
529 plan RESP pre-tax contributions that save toward education goals of recipient of the plan
401(k) defined contribution pension Wikipedia article
401(a) defined benefit pension Wikipedia article

Terms I have yet to match are left blank. If I miss or misstate something in this table, let me know in the comments and I’ll update it.

237 words on the election

I care more about the institutions of government in this country than the political parties. These institutions are generally structured to protect the citizens and the country, while politicians work within them for their ideological ends.

In my mind, the greatest existential threat to Canada is any government that disregards or undermines our system of government. We can bounce back from most external things, but slow-boil systemic changes will shift the structure of Canada in ways we don’t even realize today.

In this current government I’ve seen a continued and increasing disregard for Parliament and the Supreme Court, including the Prime Minister publicly trying to convince us not to trust those institutions because they have challenged him for breaking or ignoring various laws. There are also the personal attacks to discredit the head of Elections Canada for defending our election laws (i.e. doing his job). And the huge issue of the lobotomizing of our collective public knowledge (see “Vanishing Canada”, in Maclean’s), which, intentionally or not, serves to undermine decision-making in government. (If we don’t have scientific research and data to base decisions on, we’re only making decisions based on political ideology.) Before considering the short-to-mid-term policies that everyone is promising, I had to eliminate Stephen Harper’s Conservatives from the options, because it’s evident to me they do not respect — and are actively undermining — the long-term system we are ultimately electing them to uphold. .:. Cross-posted to Facebook.

on the 42nd general election in Canada

Misappropriated from G.K. Chesterton’s 1926 book on distributionism, this passage struck me as rather appropriate words in the middle of an election. It was the closing to the chapter titled “On a Sense of Proportion”:

If a man wants what he calls a flower-garden he plants flowers where he can, and especially where they will determine the general character of the landscape gardening. But they do not completely cover the garden; they only positively colour it. He does not expect roses to grow in the chimney-pots, or daisies to climb the railings; still less does he expect tulips to grow on the pine, or the monkey tree to blossom like a rhododendron. But he knows perfectly well what he means by a flower-garden; and so does everybody else. If he does not want a flower-garden but a kitchen-garden, he proceeds differently. But he does not expect a kitchen-garden to be exactly like a kitchen. He does not dig out all the potatoes, because it is not a flower-garden and the potato has a flower. He knows the main thing he is trying to achieve; but, not being born a fool, he does not think he can achieve it everywhere in exactly the same degree, or in a manner equally unmixed with things of another sort. The flower-gardener will not banish nasturtiums to the kitchen-garden because some strange people have been known to eat them. Nor will the other class a vegetable as a flower because it is called a cauliflower. So, from our social garden, we should not necessarily exclude every modern machine any more than we should exclude every medieval monastery. And indeed the apologue is appropriate enough; for third is the sort of elementary human reason that men never lost until they lost their gardens: just as that higher reason that is more than human was lost with a garden long ago. — G.K. Chesterton, The Outline of Sanity