Category Archives: quantified

Exploring our grocery numbers

Analyzing my grocery data is more challenging than analyzing my time data. There’s a lot more data cleanup needed. I have to figure out obscure line items on old receipts and catch typos in both names and numbers. Then there’s figuring out how much I want to combine different items and how much I want to keep them separate.

For example, milk has different receipt item names depending on the item (size, brand, type) and the store. If I want to know how much we’ve spent on milk, I’ll use the total for all of them. But if I want to get a sense of the price history, it makes sense to track each receipt item type separately. I do this by keeping the receipt name (fixing typos as I review my data) and mapping these receipt names to a friendly name I set for myself. This way, the line “HOMO 4LI” on my receipt gets turned into “Milk” in my report. Come to think of it, maybe I should change it to “Milk, 4 L, Homogenized”…

Categories are handy for reporting too. Because of the ad-hoc way I created receipt item mappings and assigned them to categories, I ended up with inconsistent categorization. Some types of toilet paper were in the Supplies category, and some types were in the Other category. I manually reviewed the category assignments and I think I’ve gotten them sorted out.

Anyway, analyzing my data from 2013-07-01 to 2015-07-01, I see that we spend an average of $80 per week on groceries, which sounds about right. Some of the receipts are missing and there are almost certainly other little errors in the data, but this should give me the overall picture.

I’m still trying to figure out a good way to visualize the data in order to answer the questions I’m curious about, so here are my notes along the way. X axis is date, Y axis is total cost on that day, color is how it compares to the average price it is (lower price than average = blue, higher = orange).

Milk

2015-07-03 20_47_42-sachachua.com_8080_grocery_analysis

Milk consumption is pretty straightforward. Every week, we use around 0.6 bags of milk (~2.4L) – more when J- and her friends are over (teenagers!). The price of milk has stayed at $4.97 per 4L, except for the time we bought a slightly more expensive type of milk (~Oct 2013) and the time in June 2014 when a smaller size was on sale, so we picked up one of those instead.

Eggs

 

We used to buy extra-large eggs, but the supermarket close to us stopped carrying 18-packs of those, so we switched to 18-packs of large eggs instead.

Extra-large eggs

2015-07-03 20_45_34-sachachua.com_8080_grocery_analysis

Large eggs

2015-07-03 20_46_07-sachachua.com_8080_grocery_analysis

The price of large eggs is stable at $4.27 for 18. We use ~11 eggs a week.

Things we buy when they’re on sale

Canned tomatoes

We stock up on canned tomatoes when they go on sale, since they’re easy to store.

2015-07-03 20_50_19-sachachua.com_8080_grocery_analysis

 

We probably use ~3 cans a month. The sale price has drifted up from $0.88 to $0.97, while the regular price is a little bit over $1.50.

Butter

2015-07-03 20_52_53-sachachua.com_8080_grocery_analysis

We haven’t bought butter at full-price in two years. The sale price for unsalted butter tends to be between $2.77 and $3.33, while the regular price is $6+.

Produce

Strawberries

I like strawberries, but I stopped buying them for a long time because they seemed like such an indulgence and the sweetness tended to be hit-or-miss. This year, I gave myself permission to splurge on strawberries in season.

2015-07-03 20_55_25-sachachua.com_8080_grocery_analysis

Bananas

We seem to go through banana phases. When we hit banana overload, we stop for a while.

2015-07-03 20_57_54-sachachua.com_8080_grocery_analysis

 

The colours here are just due to floating point imprecision. Bananas have actually stayed the same price for the past two years ($1.26/kg).

Apples

We often get gala apples:

2015-07-03 21_01_18-sachachua.com_8080_grocery_analysis

We like picking up ambrosia apples during the rare occasions they’re available. Last winter was a good one for ambrosia apple availability.

2015-07-03 21_03_09-sachachua.com_8080_grocery_analysis

Chicken

Whole chickens

2015-07-03 21_05_03-sachachua.com_8080_grocery_analysis

Lots of whole chickens lately, because of the rotisserie.

Chicken quarters

2015-07-03 21_07_49-sachachua.com_8080_grocery_analysis

Our main protein, although we also buy a fair bit of beef and pork, and chicken drumsticks/thighs when they’re on sale.

There’s more I haven’t explored yet, but I figured I’d put together these little observations along the way. =)

 

 

Building tools for myself: grocery receipt tracking

Today was another good day for writing code. I finally built that quick-feedback receipt item tracker I’ve been thinking about for a while. I’d built a simpler version into Quantified Awesome (not linked from the main interface, since it was very rough), but I found the browser roundtrip too disruptive. Today’s implementation uses Angular for faster responses. For good measure, I’ve got a NodeJS server proxying the requests to either my local development copy of Quantified Awesome or to my production version.

Here’s a screenshot:

2015-05-26 22_21_38-sachachua.com_8080_receipt

On the left side, I have a scanned receipt in Autodesk Sketchbook Pro (or a paper receipt on the side). On the right, my autocompleting tracking interface. It’s not pretty, but it fits what I have in my head. I like the way that typing in the first few characters of the receipt line item is often enough to uniquely identify the receipt item type and retrieve the price history. This means that as I track, I also get a sense of the price trends and what a good sale is.

Aside from keeping track of the prices, I’m also looking forward to analyzing our consumption by category on a more regular basis. I did a few analyses along those lines before (here’s a year of data), but it might be neat to have that kind of feedback on a daily basis. Entering my receipt archive was easy. I ended up typing in the receipts from here to January because it was fun. =)

Next up: fast categorization, some graphing… I’m also looking forward to making a quick price book interface. Hmm, if I dust off that grocery list tool I had started building into Quantified Aweome and I integrate the price book, that might be handy.

Thinking about adaptive menus for tracking

I’ve been thinking about building more tools for myself. Some of the ideas I’ve been playing around with are around simplifying activity tracking further, possibly getting it to the point where it suggests things for me to do when my brain is fuzzy.

My current tracking system has two tiers. For my most-common activities, I use a custom menu that I can open from my phone’s home screen. I created the menu using Tasker. It’s easy to configure menu items to update my Quantified Awesome activity records as well as run other logic on my phone. For example:

  • “Eat dinner” creates an activity record for “Dinner”, then starts MyFitnessPal so that I can log the meal
  • “Walk home” creates an activity record for “Walk – Other”, then starts step-by-step navigation of the walk back to my house
  • “Sleep” creates an activity record, then launches Sleep as Android
  • “Ni No Kuni” creates an activity record, prompts me for what I want to do after an hour of playing, opens a page with tips for the game, and then reminds me of my plans after that hour passes

One advantage of using something on my phone is that I don’t have to wait for the initial web page from Quantified Awesome to load. My keyboard occasionally takes a while to come up, too, so the menu-based interface gets around that as well. Also, as I get the hang of using Tasker, I can set up more intelligent processes. The menu has a link to open the web version, so if I want to track something less frequent, I can always use the web interface.

In the web interface, I usually type a substring to identify the category I want to track. For example, “kitch” results in an activity record for “Clean the kitchen”. I use this interface if I need to backdate entries (ex: -5m), too.

In addition to the two interfaces above, I’ve been thinking about taking advantage of the predictability of my schedule.

Research into adaptive menus turns up quite a few design ideas and considerations. Since I’m building this for myself, I can get around many of the challenges of adaptive interfaces, such as privacy and predictability. I’m curious about the following options:

  • Text-based input with minimal cues, as part of a more powerful command line
  • Context-sensitive menu with a handful of items (3-4, with a link to more): I can probably suggest candidate activities based on the past two activity records. That might mean a little bit of latency as I check, though. It also means that the menu will keep shifting, so I’ll need to read it and find the item I want to click on.
    • For everyday use?
    • For really fuzzy moments?
  • Static menu of frequent items, but adaptive highlighting (ex: green or bold, or fading out other things slightly)
    • Abrupt onset, others fading in over 500ms
    • Colour?
    • Weight?
  • Split menu: frequent items on top, everything else below
    • Static
    • Adaptive
  • Hierarchy of menus: speedy, but lots of tapping
  • Cut off menu: show only the activities that come after the one I’ve just tracked

Hmm… It might be interesting to play around with different menu options. It would be good to experiment with NFC as well, especially early in the morning. =)

Related:

Shifts in my writing

Sometimes, when I sit down to draw my five index cards of the day, I have a hard time delineating five interesting thoughts – things I want to remember or share. They often seem so inward-turned.

I was thinking about the shape of my blog, too. I feel like I’ve shifted from a lot of technical posts to a lot of reflective posts. Possibly less interesting for other people, but useful to me. It’s hard to tell. These are the kinds of posts I’ve been starting to find useful in other people’s blogs, anyway, so who knows? Maybe these things are interesting for other people too.

It’s wonderful to be able to flip back through my archive and see the patterns over time. Of the 2,800+ posts in my index as of April 2015, I’d classify around 170 as mostly reflective. (Totally quick classification, just eyeballing the titles and categories in my index.) Here’s the breakdown:

Year Reflections
2008 4
2009 9
2010 20
2011 7
2012 25
2013 20
2014 59
2015 25
Grand Total 169

While writing a recent post, I searched my archives to trace the evolution of my understanding of uncertainty over several years. I can remember not having these snapshots of my inner world. When I reviewed ten years of blog posts in preparation for compiling Stories from My Twenties in 2013, I was surprised by how many technical and tip-related blog posts I skipped in favour of keeping the memories and the questions, and the sense of things missing from my memories. Maybe that’s why I wrote almost three times the number of reflective posts in 2014 as I did in the previous year. 2014 was also the year I switched the focus of my experiment from other-work to self-work, and that might have something to do with it too. I’m glad I have those thinking-out-loud, figuring-things-out posts now.

The end of April was around 33% of the way through the year, so I’m slightly ahead of last year’s reflective-post-density (expected: 20 posts, actual: 25). Comments are rare, but I’ve learned a lot from them.

I’m fascinated by the ten-year journals you can buy in bookstores. They give you ways of bumping into your old selves, noticing the differences. I like the way blogs give me a little bit more space to write, though. =) Here’s a slice of my life going through May 14:

I have shifted. I focus on different things. I like the direction I’m going in. I can imagine, years from now, getting very good at asking questions, describing and naming elusive concepts, and exploring the options. If it seems a little awkward now, that’s just the initial mediocrity I have to get through. Hmm…

What kind of tribe do I want to build around Quantified Self in Toronto?

Attendance at the Quantified Self Toronto meetup has been low lately, and it’s a good time to think about revitalizing or even redesigning the community.

2015-05-11f Thinking about Quantified Self Toronto turnover -- index card #quantified #meetup

2015-05-11f Thinking about Quantified Self Toronto turnover – index card #quantified #meetup

The way it is now works okay for newcomers. I imagine the experience for newcomers is mostly like: Wow, I’m not alone! I’m not weird! There are other people who track stuff! (I know, I get that feeling each time I go too. =) ) If they work up the courage to share what they’ve been learning, they often pick up plenty of tips and ideas, and they can connect with other people tracking similar things.

From regulars, it’s great to hear updates or find out about other things they’re tracking.

The talks do tend to be a little repetitive. Often it’s about people sharing data collected using apps or devices with predefined visualizations, and the occasional self-promotional bit. Sometimes we get new analyses or unconventional experiments, and those are the kinds of talks I enjoy the most.

The repetition is understandable – good, even. I think that’s mostly because each person has to go through an individual journey. Even if two people present the same topic and have similar conclusions, it’s good to recognize each of their experiences.

Still, it might be interesting to think about how we can increase the value for regulars and long-time trackers…

Mmm. If I could selfishly redesign this community to be even better-suited to my interests, what would it be like?

I go to Quantified Self Toronto meetups because I like the kind of people who use data to make better decisions about their lives. I particularly like it when someone’s curious about something off the beaten track, whether they’re collecting data on paper or they’ve built their own tools. Experimental manipulation is also interesting for me. I also like having the occasional nudge to design, conduct, and report on my little experiments. I’ve talked about a lot of odd things over the years (like cat litter box use, and more recently, sewing), and I like resonating with people in an unexpected way.

If I were to tilt Quantified Self Toronto to be something more personally useful for me, I might focus on:

  • Getting more people to the point of being able to explore and analyze their own data instead of relying on apps
    • Learning to notice when you’re confused, and thinking of ways to explore that uncertainty
    • Tracking on paper
    • Analyzing with spreadsheets and graphs
  • Connecting with other toolmakers so that we can bounce ideas around
  • Developing my own skills in data collection, analysis, and visualization
    • Android programming or scripting?
    • Electronics?
    • R?
  • Trying out other people’s experiments so that I can share my experiences and notes with them
  • Researching unconventional experiments/measurements using QuantifiedSelf.com and similar blogs, and drawing inspiration from those

At the Quantified Self Conference I went to in 2012, I gravitated towards people who tracked their own questions or even built their own tools. I don’t expect the majority of Quantified Self Toronto to be creatively technical, but it might be interesting to attract and retain a core of people like that. What would make 2-3 hours worth it for them, and what would make it more worthwhile for me? Alternatively, what are other ways I could build that kind of tribe? I think education, inspiration, and shared experiments might be interesting to play with. Hmm… The same combination could help encourage newcomers to develop along those lines, too. Might be worth looking into.

Quantified Self: The numbers on sewing

Some people love shopping. That’s why “retail therapy” is a thing. Other people hate shopping, and try to do it as little as possible. It’s hard to find anything I like, even after I talk myself into being okay with buying things at full retail price, and even after adjusting my price range higher and higher.

I tried desensitizing myself by going out shopping without a particular goal in mind, just familiarizing myself with the colours and styles, and being open to buying something if it appealed to me. Several weekends of this turned up a few pairs of pants and T-shirts, but no epiphanies.

I started looking into alternatives. It seems wardrobe stylists work on commission, so you should plan to spend a good chunk of money – maybe $500 or $1000, which was more than I wanted to do at that moment. The custom dressmakers I asked quoted me rates around $250 for a single garment (although I didn’t ask if they’d reduce it for a super-simple pattern). Online tailors had very mixed reviews.

I figured it would be worth giving sewing a try. I didn’t need anything fancy, after all. I spent a few hours looking around for the simplest free pattern for a top, and I settled on the Colette Sorbetto pattern. I sewed a few, and then simplified the pattern further by removing the pleat. I sewed a few more. When I learned how to use the laser cutter, I used the laser to quickly and accurately cut even more pieces for sewing.

Let’s talk numbers.

The typical shirts I like cost between $40 and $120 at the store, but take hours and hours to shop for. It’s also a tiring and frustrating experience.

Broadcloth costs $2 a yard. Quilting fabric and cotton shirting tend to be around $12 to $14 a yard. The fanciest cotton I can get (in terms of fabric, not just design) seems to be Liberty cotton lawn, at $24 a yard. I wasn’t sure if it would be worth it, but it is nicely breathable, so maybe. I typically buy 1.5 yards per top, although this leaves me with lots of excess fabric. I could probably fit a top in 1 yard.

I’ve spent about $130 for the 16 tops I’ve made so far, or an average of $8 per top. I expect future tops to cost between $15 to $40, depending on fabric quality and whether the design is one-way.

The bulk of the cost is really time. Since I started in February, I’ve spent 105 hours sewing: picking out fabric, cutting, sewing, thinking about patterns and plans. This is an average of 7 hours per top, which feels a bit on the high side. I think most of it is indecisiveness about fabric. =) Prepping and cutting the fabric on the laser takes maybe 20 minutes total, and once that’s done, I can sew a top in about 2 hours.

You can analyze time trade-offs by assigning an arbitrary value to them. You might use minimum wage, or the replacement cost of hiring someone to take on some of your lower-value activities for you. For example, you might use $15/hour as a replacement cost, since that seems to be the going rate for a housekeeper in Toronto. If so, then my tops have cost an average of $110 or so. I expect future tops to use nicer fabric but require less time, so the estimated cost will likely be $75-100 per top.

Alternatively, you could use a higher rate – say, my consulting rate – since I could theoretically be working instead of sewing. But I don’t particularly feel like working more. If I did, there would be other activities I would cut back on first, like playing video games, or reading fiction.

Where did the time come from? It’s hard to say, since I was changing some of my other routines too. Anyway, I analyzed a weekly summary of my time records, correlating different categories with the time I tracked under sewing.

Category Correlational coefficient
Business – Build – Learn -0.94
Business – Build – Quantified Awesome -0.92
Discretionary – Productive – Japanese -0.82
Business – Build – Drawing -0.64
Discretionary – Play – Read – Fiction -0.61

I shifted away from learning, coding, and Japanese review, and I reduced my drawing and reading time. They’re all discretionary activities, so it’s not like I was working less or sleeping less in order to sew. (I actually worked a little more than I did before.)

I’ve come to think of sewing as fun, so I might consider the time as “free.” In fact, it might even have a positive effect. Making things myself helps me develop skills and enables imagination, so it’s like education. Cost-wise, it feels like spending on fabric and time is a definite win compared to, say, buying fast fashion tops that may or may not be ethically sourced.

What did I learn?

I learned that it takes surprisingly little time and money to develop a comfortable level of skill when repeating the same sewing pattern. I started sewing on Feb 11. On Feb 23, after about six hours total, I wore my first top. Here you can see DIY taking over the clothes I wear:

Week starting Sat Sun Mon Tue Wed Thu Fri
Feb 7 x x x x x x x
Feb 14 x x x x x x x
Feb 21 x x mine x x mine x
Feb 28 x x x mine x x x
Mar 7 x x x mine mine mine mine
Mar 14 mine x mine mine mine mine mine
Mar 21 mine mine mine mine mine mine mine
Mar 28 x mine mine mine x mine mine
Apr 4 x x mine mine x mine mine
Apr 11 x mine mine mine mine mine mine
Apr 18 mine mine mine mine mine mine mine
Apr 25 mine mine mine mine mine mine mine
May 2 x x mine mine mine mine mine

I learned that I really enjoy the things you can’t buy with money. There’s this feeling of freedom that comes with knowing that I don’t have to rely on manufacturers and retailers to make things I like. I might even be able to come up with things that I wouldn’t be able to find in stores. If things wear out, I can repair or replace them.

I have two more tops on the go, so that should bring me to a total of eleven cotton/polyester tops and seven 100% cotton ones. I think I’ll hold off on sewing more tops after that. Maybe I’ll sew containers and bags to use up my scraps, and then I’ll think about sewing other things I wear. I’m not interested in sewing things for anyone else (aside from family, maybe), so don’t bother asking me. <laugh>

Anyway, it was a pleasant surprise to find out that it was easy to reduce the high-stress, low-value activity of shopping with something I enjoy much more. =)