Earlier this week I wanted to do something special for Anson. He’s an awesome, amazing, wonderful and supportive husband and every once in a while I get the urge to do something nice for him. This time, I decided to try to clear the spiders out of the garage. Ah, romance.
I started by doing some research as to the best way to do this. The internet told me that I should vacuum them out. That way, I get all of the webbing and spiders out of the garage without having to touch/smash them. Afterwards, I read that I should spray my garage with something to prevent the spiders from coming back. To avoid nasty chemicals, I went with some lavender essential oil mixed with water.
So, I head into the garage with my vacuum and spray bottle and get to work! After about 5 minutes (about 1/2 of the way around the edge of the garage), the vacuum sucks up something suspicious. I don’t exactly know what it was (due to my fear of spiders, my eyes were closed for a significant portion of the work), but I heard a <clunk clunk> come from the vacuum. It no longer had any suction.
There was a long mental battle over what to do next. Do I try to fix the vacuum? Should I try to clean up the rest of the garage with a broom? Should I just give up?
Well, giving up was not an option (yet). I tried to fix the vacuum. By “fix the vacuum,” I mean I shook it, looked in the hose, turned it upside down and shook it again, then gave up. I proceeded to pick up the broom and finish up the work. Because my eyes were closed for the entirety of this portion, I can’t say for sure if I got every single spider, but the garage looked nice. And, after spraying the lavender, it smelled nice too
Now the question is, what do I do about the vacuum? Should I spend the money to go buy a new one? Or should I spend the afternoon taking it apart and trying to fix it…and then go spend the money to buy a new one?
I’ve spent the past two weeks working on a program that stores and manipulates data in a binary search tree. This, of course, means I’ve been up to my ears in recursive functions.
For my non-techie friends, it’s the idea that you write a method (a little program that does something) and it calls itself over and over again. And you just kind of have to trust that it works. Trust that a method calling itself over and over again will get the job done. Because you can’t actually see what it’s doing, that would just be silly.
And my point is this–I don’t like it. I much prefer writing programs iteratively. I like writing out all the steps so that I can see each and every one and know exactly what my program is doing and when. It’s the whole “just trust that it will do what you want it to do” that makes me a little edgy.
Hi, I’m Rachel and I’m Type A.
I like to think of the recursive function as the “trust fall” of the programming world. You remember those? In all office-type tv shows, there’s a company retreat where some overly sentimental counselor makes the employees turn their back on each other, close their eyes, fall back, and trust that a random person will catch them. All in hopes that people will get in touch with their feelings, bond with each other, work better as a team, and make the company more money. Humbug!
My recursive functions CONSTANTLY fail. And I feel just like someone who closed their eyes, fell backwards, and woke up with a concussion about 4 minutes later.
How does that happen? I was 2 feet away from the person. They were directly behind me. The instructions were clear—it’s not like they didn’t know I was going to fall into them. This is not supposed to be complicated! And yet, I somehow ended up on the ground.
Next step in the process: I have to look at the situation and try to figure out why this happened. It’s not as easy as it seems. It’s not immediately clear because I had my eyes closed and couldn’t see anything. Also, nobody can talk to me about what happened—that would just be too easy.
You might find yourself saying “Rachel, clearly a gale force wind came out of the west and pushed you out of the way” or “Naturally, the person who was supposed to catch you was highly allergic to bees and they saw one on your back. So, of course they didn’t catch you.” Both of those scenarios are completely reasonable, I assure you. And so I do some research, try to figure out which of those completely plausible factors is the culprit–and then I have to find a way to make it so it never happens again.
Naturally, I do the only reasonable thing: I move the retreat activity into a hypoallergenic clean room with no windows. And if I do the trust fall here, I can trust that the other person will catch me, right? The answer to that question is a firm “maybe.”
And this is what coding is like (at least when I do it).
Aaaaaaaaaand school is back in session. I already miss vacation.
I’m up late working on the first coding project of the quarter. Sometimes I wish code were more like people. When it throws an error, I want to be able to shake my head disapprovingly and say “you know what I mean” and have it laugh, say “yeah, I know,” and start working.
But, no. Of course not. It does silly things like print out my binary number correctly the first time I call it, but put a “0” at the front of it the second time. Or it throws an error every time I try to delete memory I dynamically allocated. Every. Single. Time.
I can only assume this stems from my love/hate relationship with pointers.
Every time I think about my relationship with pointers, I imagine an actual coffee date with a human-sized arrow. And the arrow always looks sad. One time, it cried and said “The program ended and you just LEFT ME THERE!” Yes—this is what I think about during class. I can only assume Anson had the same daydreams when he was in college. 🙂
So, I am up late trying to delete the memory and make my pointers happy—and thus far I’ve been gloriously unsuccessful. The problem with coding late at night is that bad decisions are made. Bad, bad decisions. For example, deleting every occurrence of the word “const” in your code. Why, you ask? Well, that’s a great question. I honestly have no idea. At the time, it seemed like a great way to make all of my addition and subtraction operator overloads work better. And now my code “smells.” It has “bad code smell.” Which is apparently a real thing (trust me—I learned about it in college).
I’m sure I’ll get it eventually. Still have a couple days left to get this all sorted out. Add back all the consts, get rid of memory leaks, and-well-everything else in the requirements. Should be a fun weekend! 😉
My life motto
I’m almost done my first quarter as a Computer Science student—craziness!
I was so nervous heading back to school—I was certain I was going to be the oldest person in class. Actually, that’s not entirely true. I didn’t consider it much at all until a good friend told me she thought I was “so brave for going back to school at this age.” After that, I was terrified!
It turns out that there are a ton of students of various ages in my classes, so I don’t stand out. Unless you count the fact that I’m a girl. In two of my classes, there are only two or three girls (including me). But truthfully you don’t really notice it once you’re in the class.
This quarter I’ve been taking three classes:
- Data Structures, Algorithms, and Discrete Math
- Software Engineering
- Technical Writing
Anson has been enjoying watching me learn C++. It’s pretty amazing how much you can learn in such a short amount of time. Though, I still feel like I’m playing catch-up on some “basic” concepts. <all non-technie people should feel free to skip to the next paragraph> For example, I only *just* learned that the copy constructor gets called every time you return a value. Also, when you use dynamic allocation to create a new object, you make a pointer. And upon learning that, my love/hate relationship with pointers evolved (we like each other, but we don’t like-like each other—we’re thinking of getting coffee next week to talk out some of our issues).
Technical writing is pretty awesome. I struggled in all of my previous writing classes because I’m not a very creative or flowery/poetic writer. So, when the professor said that all of the sentences should be only facts and that they can be structured the same way? The clouds parted, the sun shined down, and there were rainbows everywhere!
Software Engineering is the wild card class. We have a weekly group quiz that tries to prepare us for the real-world battlefield of <insert software company name here>. The quizzes are all run in a software engineering model (waterfall, scrum, kanban). Each team has one PM, two devs, and two testers. There are six pages of quiz questions; one page is placed on each of six tables that are located in the center of the room. These quiz questions are “features.” Our team’s goal is to ship as many quality features as we can in the time allotted. Only two teams per table at any given time and only devs are allowed to write on the papers (design the features). Welcome to Thunderdome.
There’s actually a group of us (about half the class) that meet for an hour every day before class to study. Well, actually we started with that goal. After the first couple weeks of going over the concepts in the chapters, we realized that that information wasn’t necessarily on the quiz. So, we started trying to brainstorm questions we think the professor might ask. We’re not so great at that either. So, we decided to try to strategize ways to succeed in whatever model we’re working in that week. This sometimes helped (and I have a suspicion these discussions may have been our professor’s goal all along). The past couple weeks, we’ve been plotting ways to have fun with the quizzes. The thought is that, for the last quiz, we will all bring in sheets and create forts for our teams. Maybe bring in andon phones and vests. Ah, it’s great to be an adult
Aside from school, life has been pretty normal (and by “normal,” I mean “awesome”). Anson and I have been keeping busy with the usual—work, school, and trivial pursuit. We’re getting ready for thanksgiving. I just bought the turkey and now need to decide what kinds of pies to make. Any suggestions?
Easter is always a busy time of year, so it was nice to get a chance to celebrate this year. I got home from Easter Vigil on Saturday night around 10:30pm and Anson and I decided to color some eggs.
I had forgotten how much fun this is—and how loooooong you have to hold an egg with the wire thingy to dye it half one color and half another! We kept busy while we were dying eggs by trying to solve a cryptic crossword. I think we got about 3 clues solved before we finished dying eggs
I had decided that I was going to try to make a lamb dish this year—a tradition in our family. My mom normally makes a full leg of lamb, but since there’s only 2 of us (truthfully, 1 of us—no way Anson is eating an untested recipe), I wanted to do something on a much smaller scale. I found a recipe for a healthy lamb stew, but it takes about 14 hours to cook. So, at about 1 in the morning, I started putting it together.
After chopping all the ingredients, it was basically “just add water and press start.” That’s my kind of cooking! I was in bed before 2—phew!
On Easter morning, I got up early to get to church to play bells (woohoo!) and then made my way home for a long Easter nap. When I got up, I tried some of my traditional Easter lamb stew—and stopped about 2 bites in. It wasn’t lethal, but it sure wasn’t good. It tasted like meat and veggies in water. If I try it again, I’ll definitely need to add salt, pepper, and garlic. So, we had Chinese food for dinner. Yum! Just like Christmas
We hope you all had a wonderful Easter with family and friends!
Anson and I are preparing for Relay for Life by continuing our work to raise money for the American Cancer Society.
This month, we’d like to challenge our family and friends to take one “extra” out of their life and instead, donate the money to ACS. For example, instead of getting a drink from Starbucks, give the $5 to charity instead! Every little bit counts!
For those of you who are curious about what it is like for me to be in school for computer science, here is a snippet of a conversation Anson and I had tonight:
Me: Hey babe, will you check my code while I run to the store?
<Anson grabs my computer and starts scanning the screen>
Anson: Umm…it’s just that…uhhh….
Me: What? I’m going to need to know if I’m going to fix it.
Anson: It’s just that…well, it’s not written in java. I mean, you wrote it using Eclipse and it’s a .java project, but….it’s just not java. Did you not notice that none of the words are different colors—it’s all black. I mean—I don’t even know how you got it like this.
<I lean over his shoulder and look at the screen>
Me:….but it works, right?
<Anson types something>
Anson: Well, yes…
It’s the beginning of a new year, so it’s a great time to enumerate the resolutions that I’ll start on in January and abandon by March. That might sound cynical but it let’s me set some really ambitious goals. For example, I plan to grow 5 inches. That isn’t to say that I’d be upset if I only grew 4, but I want to make sure I stretch myself. Before you say ‘that’s impossible’, just the other day I was at the doctor’s for a yearly physical and they measured me at 5’5”. A little over a week later I ended up back at the doctor’s office and I had grown a full inch – 5’6”. Admittedly the nurse didn’t measure me the second time, but when she asked how tall I was I said 5’5” or 5’6” and she smiled and said, ‘looks like 5’6” to me’. An inch in a week. My only concern is that if I top 11’ by the end of the year I’m not sure where I’ll find shoes.
My slightly less exciting resolutions include continuing to run 8-12 miles a week, acclimating to my new group at MS, doing some sort of home improvement project, read as much as possible, get back to MD at least once to meet Leonie (in person), update my phone apps and try not to wait until Dec. to use all my vacation. I also want my hair to grow back from my buzz cut. I’m throwing that one there because I want to make sure I can tick one off at the end of the year.
I feel like I read a lot over last year, but I didn’t have a system for keeping track of paper books that I finished. Luckily, for Kindle books, I can just look at what’s on my device since I always move them into a ‘year’ category when I finish them.
I honestly liked almost every book I read this year. The biggest standout for me though was definitely Ready Player One. The book has been around for a couple of years but I only just got around to reading it a few months ago. I highly recommend it for anyone who nostalgically remembers 80s tech and video games. It also happens to be well written and clever.
I only recently read Vodnik and was pleasantly surprised. I read a lot of fantasy (a lot) and after a while the mythology of the stories blend together. There are thousands of books about dragons and elves and dwarves. I love a lot of those books as well, but every once in a while it’s nice to read something completely different. Vodnik is a story based on Slavic mythology and that alone would make it worth reading. The Vodnik is a water spirit that drowns children and stores their souls in porcelain tea-cups; not for any malevolent reason, but just because that’s his nature. The story that Moore weaves around the mythology is both mysterious and engaging. I would highly recommend this for any fantasy lover that’s tired of reading the 500th version of Lord of the Rings.
I read a bunch of Brandon Sanderson this year as well. I’ve mentioned him several times on Facebook and he’s currently my favorite author. He hasn’t written anything that I haven’t liked, and he’s written several things that I’ve loved. I think The Emperor’s Soul was probably my favorite short story that I read this year, with Steelheart and A Memory of Light both being equally good novels. I honestly can’t imagine A Memory of Light being better given the seemingly thousands of plot lines that were still outstanding and the sheer enormity of completing a 13 book series written over the course of 22 years. Obviously if you’ve been reading the Wheel of Time then you’ve read A Memory of Light, but if you haven’t started The Eye of the World yet I strongly recommend it as hugely engaging and of staggering enormity. I would only caution that the series could have been several books shorter and it’s likely that you’ll want to rip out certain people’s braids about half way through. The end of the series is awesome though! Steelheart was face paced and read a lot like a graphic novel. I could easily see a movie being made from the series at some point.
Wool was a recommendation from a friend that I hugely enjoyed. Unlike almost everything else I read this year it was closer to SciFi than Fantasy. As far as I can tell the story is being regularly expanded through various serial novellas (ala The Green Mile) and then being collected into larger works. Unfortunately this makes keeping and distinguishing between the most recent versions challenging, and sadly Amazon still sucks at being able to associate multiple books in a series. Regardless the first 5 books (the Wool Omnibus) were extremely good and I would definitely recommend them. I found the 6th, 7th, and 8th parts of the Silo series to drag on a bit and I haven’t read past that yet. The first 5 books are a complete story though so worth reading even if you don’t finish out the whole series.
The Riyria Revelations and The Demon Cycle were both fun reads, but eminently forgettable. I wouldn’t suggest them unless you want something relatively brainless and quick. The Death Gate Cycle is something I re-read every few years because I love the story and authors so much. Margaret Weis and Tracy Hickman were really the first Fantasy authors that I read (The Dragonlance Chronicles) so I find it hard not to go back and re-enjoy their stuff every once in a while. The Death Gate Cycle is very good from a world-building (4 worlds actually) perspective and contains a pretty original mythology. I also give the authors a little bit more slack with respect to re-using all of the cliché monsters because, outside of Tolkien, they pretty much wrote the seminal works. Separately, I would definitely recommend the Dragonlance Chronicles for that reason alone. It’s basically the baseline for AD&D and there have been dozens if not hundreds of books based on the world and mythology that Tracy, Laura and Margaret started with that series. I find the writing style of the Chronicles (and the Death Gate Cycle for that matter) to be a little rudimentary, but the story makes up for it.
Soul Meaning was recommended by Good Reads and I would suggest skipping it. It reads like the screen play for the next Michael Bay movie with lots of gun fights and explosions without any character development. It’s the first book I’ve read in that style, and I don’t understand the appeal. It’s an extremely quick read though, and it’s not at all boring. Sadly you’ll likely have forgotten what it’s about by the time you finish reading it (assuming you can ever infer it from the endless action sequences).
I’m still reading The Kingdoms of Thorn and Bone so I’ll reserve judgment. I very much enjoyed the first two books, though I also read them on our Hawaii cruise so that opinion may be somewhat colored.
Happy New Year!
They sure do keep you busy on these ships! We have been having a BLAST doing trivia three times a day 🙂
We have a few different groups of people we do trivia with and we have been getting to know them pretty well. We’ve won trivia twice now (and come in close a few other times). We do a lot better at the pop culture questions than we do the geography and world history stuff. Go figure.
We had a ton of fun the other night playing The Liar’s Club—laughing to the point of tears! Basically, three of the crew members sit on a panel. They are given a word (something which no one has ever heard of before) and they each tell a story which gives the definition. The stories explain what the definition is, how they know it, etc. Two of the people are lying…and they are ALL trying to throw you off. My favorite new word: erecterine. I dare you to try to make up a definition for that word before looking it up 🙂
We also got to see the an AMAZING fiddler named David Klinkenberg. He played a blue-grass version of Flight of the Bumblebees that would knock your socks off! We ended up buying one of his cds (though not the Christmas one—they were sold out). We got to chat with him as well afterwards. So cool!
Till next post!
The third day in Hawaii was spent in Maui. We had a walking tour scheduled in the morning. We had our walking shoes on and were ready to go!
Our tour guide was a historian of the island. He was also an emergency responder, practitioner of Hawaiian medicine, and a minister (just to name a few).
There actually wasn’t much walking on the tour. The guy took us around town and pointed to stuff that “used to” be there. We saw quite a few parking lots. I did get a couple pics of some cool things. For example, the birthing stone where the Chieftesses used to have to give birth. Praise the Lord for modern medicine!
The tour included a Hawaiian fruit tasting. Which ended up being a trip to a local café where they gave us all a piece of pineapple. Mmmm 🙂
The true fun began when the tour was over. One of our friends on the ship told us that Maui onion rings are the *best* onion rings on the planet.
She. Was. Right.
We asked a local where the best onion rings could be found and she sent us to Kimos—a restaurant that does not sell onion rings. Go figure! So, we walked across the street and found a place called Moose McGillicuttys (not actually sure how it’s spelled) and they had Maui Onion Rings on the menu. I paired it with a Moose Mai Tai. Mmmm!
Then we were off to find some shaved ice. I had already had some on Kauai, but I wanted to get some that were made Maui-style. Basically, it comes with gelato in the bottom of the cup. I got pina colada flavored ice this time. It was the perfect thing to have while walking around town and enjoying the Christmas decorations.
And, of course, I took a few pictures while sailing away 🙂
The next morning we arrived at Hilo on The Big Island—and it was raining. No beach for us! Fortunately, there are 2 free shuttles at every port. One takes you to Hilo Haddies (Hawaiian merchandise store) and the other is run by Walmart (go figure). We started out at Hilo Haddies where we saw the world’s largest Hawaiian shirt. Woohoo!
We then walked around the mall. And Walmart. But ONLY because we were told it is the largest Walmart in the USA <excuses, excuses>.
We actually spent a bit of time trying to find a café with Kona coffee, since Kona is located on the Big Island. No luck!
Ah well! Aloha Hawaii! Until next time 🙂