Thursday, December 23, 2021

2021 New Years Resolution Recap & Scores

It's time for the one constant thing on this blog for the past several years - my new years resolution score sheet. There's one more week of 2021, but I don't expect any of these will get accomplished in that week, so here's my summary of the year!

1) Weekly Prayer Journal - 0.75 points

I did this really faithfully January-June, and then I went back to work after maternity leave and I let "busy life" overwhelm me until the end of October, when I tried to pick it up again with mixed success...so about 3/4 of the year = 3/4 of a point. I think I will do this again in 2022 as it did serve the purpose which was to get me to pray more and think about prayer more, but I will choose a different journal for 2022 as the one I did this year was "geared towards women" in the devotions written for each week, and that frustrated me. I would rather do my own blank journal and follow the old ACTS (Adoration, Confession, Thanksgiving, Supplication) format I think, but I used a template journal this year to help motivation get going.

2) Baltimore Half Marathon - 1 point

This was so tough. Training was tough, doing it was tough, but I *did* make it and I did run 95% of the time (5% was when I stopped for bathroom break at the halfway point, took this selfie at mile 12, and fell down around mile 11 and had to assess my scraped knee for damage). Up until mile 10 I felt great, but after mile 10 I was burnt out. I don't think I'll do the Baltimore Half again. I maybe could be convinced to try another half marathon, but it would have to be a different course with some sweetener in the deal (St. Michaels beach half? Disney princess half? I'm considering either, but would rather return to triathlons if I'm being honest!) 

3) "Complete" a cookbook - 0 points
I just don't think this one is in the cards for me, partly because I rarely use cookbooks. I reference them, I love to read them, but actually following the recipes? Not for me. The romanticism of it has made me resolve this a few years in a row, but it's time to shelve this dream and take my cooking/baking pursuits elsewhere.

4) The 2021 reading women challenge - 0.75 point 
I love this list for expanding how I read (because while I love to read, on my own I mostly read junky books - this and my book clubs force me to expand my mind). Here's the challenge books and what I read - I took off a quarter point for the two books by men and the two books that I didn't finish reading.

Technically don’t count as they are by men (but not white men so…I’m saying it’s OK):
  1. A Nonfiction Book Focused on Social Justice - Color of Compromise, Jemar Tisby
  2. A Book by an Indigenous, Native, or Aboriginal (person) There There by Tommy orange
Technically don’t count because I didn’t finish these:
  1. A Short Story Collection by a Caribbean Author - how to love a jamaican
  2. A Book by a Trans Author - an unkindness of ghosts
Books I read that counted:
  1. A South American Author in Translation - Hurricane Season by Fernanada Melchior
  2. A Crime Novel or Thriller in Translation - The Tenant, Katrine Engberg
  3. A Fantasy Story by an Asian Author - Broken Stars (short stories translated by Ken Liu but at least one by a woman so I’m counting it)
  4. A Muslim Middle Grade Novel - aint so awful falafel by Firoozeh Dumas
  5. Reread a Favorite Book - Heidi by Johanna Spyri
  6. A Book About Incarceration - Concrete Rose by Angie Thomas
  7. A Book by a Neurodivergent Author - The Kiss Quotient by Helen Hoang
  8. A Book Featuring a Queer Love Story  - Red, White and Royal Blue by Casey McQuinton
  9. A Book about a Woman in Politics - What She Ate by Laura Shapiro
  10. A Book with a Rural Setting - Christmas at the Island Hotel by Jenny Colgan
  11. A Book w/Cover Art by a Woman - Such a Fun Age, Kiley Reid (cover art Vi-An Nuygyen)
  12. Book Longlisted for the JCB Prize- Djinn Patrol on the Purple Line by Deepa Anaparna
  13. A Novel by a Latinx Author - Gods of Tango by Carolina De Robertis
  14. A Cookbook by a Woman of Color - Chai, Chaat & Chutney, Chetna Makan
  15. A Book with a Protagonist Older than 50 - The Witch’s Heart by Genevieve Gornicech
  16. A Book with a Biracial Protagonist - The Vanishing Half by Brit Bennett
  17. A Book About the Natural World - Thru Hiking Will Break your heart, carrot quinn
  18. A Poetry Collection by a Black Woman - we want our bodies back by Jessica Moore
  19. A Book by an Arab Author in Translation - girls of Riyadh by Rajaa Al-Sanea
  20. An Author from Eastern Europe - The Unwomanly Face of War by Svetlana Alexivich 

5) Try online scrapbooking - 1 point

I absolutely LOVED this. Google Photo Books are $10 for a 20 page book with up to 4 pictures on each page, the captions are in there for me, it's so much easier than printing 4x6 photos! On occasion I still print and catalog 4x6 photos by hand, when it's just one or two photos, but mostly I've moved into the photo book life, and I'm never looking back. 

Total 2021 score: 3.5/5 (70% pass rate) - better than 2020 in terms of score, but I also committed to less.

Friday, December 10, 2021

Advent of Code Day 11

I've been doing Advent of Code all month, but this is the first time I've solved both parts within an hour of puzzle release, so here's my code for day 11.

 #Day 11

class Octopus:

def __init__(self, value):

self.value = value

self.flashed = False

def setFlash(self):

self.flashed = True

def reset(self):

self.flashed = False

self.value = 0


def getChars(word):

    return [char for char in word]


def printMaps(map):

#print map to check basins

for i in range(len(map)): #i = rowIndex

for j in range (len(map[i])): #j = columnIndex 

thisOct = map[i][j]

if thisOct.flashed:

print("|" + str(thisOct.value) + "|", end='')

else:

print(" " + str(thisOct.value) + " ", end='')

print("")


def resetMap(map):

#loop over every point in the map to reset flashed

for i in range(len(map)): #i = rowIndex

for j in range (len(map[i])): #j = columnIndex 

currentOct = map[i][j] 

if(currentOct.flashed == True):

currentOct.reset()

return map


def checkAllFlash(map):

#loop over every point in the map to check for all 9

for i in range(len(map)): #i = rowIndex

for j in range (len(map[i])): #j = columnIndex 

currentOct = map[i][j] 

if currentOct.value != 0:

return False

#if didn't reach a false, all are 0s

return True


def incrementAll(map):

#loop over every point in the map to increase

for i in range(len(map)): #i = rowIndex

for j in range (len(map[i])): #j = columnIndex 

currentOct = map[i][j] 

currentOct.value += 1


def flashNines(map, flashCount):

flash = False

newmap = map

#loop over every point in the map, set nines to flashed, call incrementNeightbors

for i in range(len(map)): #i = rowIndex

for j in range (len(map[i])): #j = columnIndex

currentOct = map[i][j]

if currentOct.value > 9:

if currentOct.flashed == False: #not yet flashed this check

flash = True

flashCount += 1

currentOct.setFlash()

newmap = incrementNeightbors(newmap, i, j)

#printMaps(newmap)

#print("------------")

else:

pass

return newmap, flash, flashCount


def incrementNeightbors(map, i, j):

if i > 0:

West = map[i-1][j]

West.value += 1

if j > 0:

North = map[i][j-1]

North.value += 1

if i > 0 and j > 0:

NorthWest = map[i-1][j-1]

NorthWest.value += 1

if i < len(map)-1:

East = map[i+1][j]

East.value += 1

if j < len(map[i])-1:

South = map[i][j+1]

South.value += 1

if i < len(map)-1 and j < len(map[i])-1:

SouthEast = map[i+1][j+1]

SouthEast.value += 1

if i > 0 and j < len(map[i])-1:

NorthEast = map[i-1][j+1]

NorthEast.value += 1

if i < len(map)-1 and j > 0:

SouthWest = map[i+1][j-1]

SouthWest.value += 1

return map

def main():

f = open('input.txt')

lines = f.readlines()

#create map

map = []

for line in lines:

row = []

valueList = getChars(line.strip())

for energyValue in range(len(valueList)):

newOct = Octopus(int(valueList[energyValue]))

row.append(newOct)

map.append(row)

printMaps(map)

print("-----------------")

flashCount = 0

steps = 0

#steps = 100 #part 1

#for i in range(steps): #part 1

allEmpty = False #part 2

while(not allEmpty): #part 2

incrementAll(map)

map, flash, flashCount = flashNines(map, flashCount)

while(flash):

map, flash, flashCount = flashNines(map, flashCount)

map = resetMap(map)

steps += 1 #part 2

#printMaps(map)

allEmpty = checkAllFlash(map) #part 2

#print(flashCount) #part 1 answer

print(steps) #part 2 answer

main()

Friday, December 3, 2021

On Christmas Gifts

This year will be M's first Christmas, and it makes the whole season more fun, but also a chance to be strategic about setting the patterns for Christmases to come. That's not to say that everything we do this year will be guaranteed to be repeated, but I am thinking about what new traditions we want to establish. For example, we started a family gratitude turkey last month for Thanksgiving (each day of the month we wrote something that we were grateful for on a different feather). I also got us an advent calendar that walks through the nativity story, and each day in December you add a new figure to the nativity set. One of the traditions husband and I have discussed is the idea of minimalist gift giving with M. Minimalist giving involves two elements - first, setting a limit on how many gifts you purchase, and second, trying to get as many gifts second-hand as possible. Pinterest had a short poem to use with minimalist giving for kids:

Something you WANT

Something you NEED

Something to WEAR

Something to READ

(and three optional additional lines - Something to DO, Something for ME, Something for FAMILY)

This model sets up the expectation that  there aren't unlimited toys at Christmas, rather just one thing you want. And I really like that it has something to read as a part of the list, because as I've grown up I've realized I took reading for granted, assuming everyone read as much as I do - which I have found is not true! Some of my best memories are my dad reading aloud to me when I was young, which got me to want to read to myself, which introduced me to reading for pleasure - I'm hoping M feels the same and looks forward to a something to read gift each year.

So with that, here's what I've done for M's first Christmas, in line with the poem:

Something you WANT - I picked up a play toolset from our Buy Nothing group. M is a little too young to actually want anything, but this should be fun for him. Eventually we will have to decide if M writes a letter to Santa or not (I never did) for me to determine what he wants, but that's a future concern.

Something you NEED - I got M a new pair of shoes for this one, also from Buy Nothing.

Something to WEAR - Matching Christmas PJs for the family! This is one of the traditions that probably can't continue every year because husband & I don't need new PJs annually, but I wanted us to have it for this first year. And hopefully in future years I can find M pairs that are at least in the same color family, if not the exact same pattern, as the ones husband and I now own.

Something to READ - This is the one gift husband and I selected together. Part of the goal is that we will select at least one gift together in person every year, instead of always ordering online. Going and picking out the book to read with M was a great night!

Something to DO - I got M a felt Montessori style Christmas tree to decorate with velcro ornaments. I hope it's something he can enjoy playing with for many years in a row. When I was a kid my mom and dad would get us craft kits to do on Christmas day, or Lego bricks, so while I may not do this every year, I like the concept of an activity. I've already let M play with his tree this year.

Something for ME - this year it was a "my first Christmas" ornament. The idea of this one is something personalized with the kid's name, and again, isn't a part of the base poem so I don't know if we'll do it every year. I've also already hung this one on the tree, because it was as much for me as it was for M.

Something for FAMILY -  This is food or an experience gift, usually, like a family bowling trip, but for us this year I went with a second set of matching clothing items, so that we can do a photo shoot together (which will be the activity). Husband and I decided not to get each other individual gifts this year, so something for Family allows him to have something to unwrap on Christmas morning.