Week 0b110

People like to rag on new parents for stating their infants’ ages in terms of weeks, even when that number tends towards the high double-digits. I’m beginning to have an appreciation for their mindset, though. “How long’ve you been here?” “Oh, six weeks now.” Wait, six weeks? That’s over a month, I’ve been here a month and a half? No way.

Last week during Elders Quorum someone announced that they’d become engaged. At this news they received a smattering of applause, a far cry from the hooplah we did in my Provo YSA ward’s EQ – standing ovation going on for a good half-minute. And repeated for everyone who got engaged over the prior week, which I believe was three at one point.

For the third hour we had our mix-n-mingle, the thing I didn’t end up bringing musubi to. Sat next to a guy who, it turns out, works as a cook in one of Google’s cafés. I learned from him that the cooks there generally have a bad opinion of most Googlers – a pretentious bunch, I guess. I now try and do my best to be a good example when ordering food. Not that I wasn’t already nice and everything, but now there’s a purpose behind it.

This week at work I was able to move desks, to be closer to the rest of my team. When I started, the nearest open desk was in the next “area” over, with a wall mostly separating us. I’d have to walk over if I wanted to ask a question or get in on a group discussion. My great-grand-manager was doing a walkthrough a couple weeks ago, saw the situation, and committed to fixing it.

So now I have a new desk. Unfortunately it’s a really old one, kinda broken, the motor doesn’t work too well. But hey, none of my old desks even had motors, so I aint complaining. Much.

First world problem: Oh shoot, in the position my head is in I can just make eye contact with that guy through the gap between my monitors. Better shift myself so I don’t make things awkward. Oh great, he shifted position as well, now we can stare at each other again.

Now that I was with the rest of my team, we could have impromptu group conversations. Including the one where I had to remember I wasn’t at church. Topic of discussion was faster-than-light travel, and how it’ll probably never happen, and how sad it is that we’ll never get to go and visit Alpha Centauri. Had to suppress the thought to say, Well, we can just wait till we’re in the Celestial Kingdom, problem solved right? I think it might’ve fallen flat.

During the week I felt my beard was getting a bit frizzly, so I got a quick trim at the in-house hair stylist. She’s a really nice lady who happened to have a spare 15 minutes when I walked by asking for an appointment. Used this really cool setup – a trimmer, attached to a vacuum hose to suck up the cut hair. Didn’t do a perfect job, I was spitting beard hairs out of my mouth for a while afterwards due to an ill-advised attempt to continue conversing during the trim.

The result looked good. Although, I’ve only ever had my beard trimmed as part of a regular haircut, so the result was a bit wonky-looking at first, as though my hair was a bit too big for my face.

Speaking of beards, I have to take the opportunity to post a very relevant meme, that I should have done on week 1. Now that I’m free of BYU’s anti-beard policy…

deal-with-it-riker.gif

On Wednesday I attended week 2 of the Police Citizen Academy thing. This week was arguably one of the only reasons I’d signed up in the first place: firearms training. I was reeeallly looking forward to being able to fire a fully automatic weapon. And the class was three hours, so there’d be plenty of time.

Wrong. First two hours were Q&A. And they explicitly stated they were catering to the “lowest common denominator”, those who had no idea what guns were all about. Which, I do appreciate that, I think it’s really important to educate people about guns, so they’re not as strange and threatening. We were finally done and ready to go to the range, but they only had two instructors, so they had one go on ahead with those in the class who’d never fired a gun before, which turned out to be the majority. The eight of us who remained just chilled out in the room, chatting with the lead instructor. Who, by the way, was doing an excellent job channeling his inner Colonel Quaritch.

Eventually the first group was done. One lady, who’d sat next to me during the first part, came out and broke down in tears. Once inside, we took turns firing a standard issue handgun at targets hanging in front of a big pile of shredded up tires, to absorb the bullets. That took a while, long enough in fact that we got kicked off of the range. We did have enough time to see one of the instructors fire off a couple different types of automatic rifles, but couldn’t fire them ourselves. Dag nabbit.

IMG_20160921_214546.jpg
Everything on the top shelf came from the personal collection of the lead instructor. I’m gonna head to his place for the zombie apocalypse.

So, the big adventure of the week was building my computer and getting it all set up. For the build process, I’ll let the pictures do the talking.

IMG_20160922_193427.jpg
“For which of you, intending to build a server, sitteth not down first, and counteth the components, whether he have sufficient to finish it?”
IMG_20160922_195215.jpg
Such a little thing.

IMG_20160922_201813.jpgIMG_20160922_203555.jpgIMG_20160922_204108.jpgIMG_20160922_205318.jpgIMG_20160922_205920.jpgIMG_20160922_220328.jpgIMG_20160922_220355.jpgIMG_20160922_221830.jpgIMG_20160922_221909.jpgIMG_20160922_223532.jpg

It was really looking great, all black and clean. So of course, of course I had to go and nick the top of the case with the power cord as I was shifting it around, so now there’s a nice sliver of silver permanently adorning the case, always and forever, a testament to my hubris. I aimed too high and I paid the price.

IMG_20160922_233555.jpgIMG_20160922_233528.jpg

The next set of hurdles involved installing an operating system. I wanted something with low-overhead, no graphical interface, just something that could drive a file server and Plex. I’ve had great experiences with Ubuntu in the past, so I went with that. I’d done some preliminary research online and it looked like I could be in for a rough time of it though, seeing as how the hardware I’d gotten was more optimized for something like Windows.

Looking back on it now, it feels a lot like a video game. Steady progression towards the goal, periodically interrupted by a seemingly-insurmountable challenge. I prepped by plugging it into an HDMI input on my TV and using a borrowed keyboard from work.

First step was to generate a bootable USB drive from a downloaded ISO image. I hadn’t gotten an optical drive, see, so I couldn’t burn it. After some fiddling with the boot order in the BIOS and picking the specific partition on the drive to boot from, I was in the installer. That was a relief, most of the problems I’d read about would’ve precluded me from getting even that far.

Installation proceeded just fine, until it was time to reboot into the newly-minted OS. On boot I got this lovely screen:

errors.gif

This went on for about 30 seconds, and then the screen would just die. The computer was still on though, I could hear the fans spinning. Google seemed to suggest that the error messages could be fixed by updating the BIOS. I proceeded to do so, and the errors made themselves scarce. Screen still died on boot though.

The fans were on though, and I had a hunch. Had it boot up, then go to black. On the keyboard, I tapped, “j… e… f… f… <enter>… p… a… s… s… w… o… r… d… <enter>… r… e… b… o… o… t… <enter>.

Waited for a few seconds, and then voila, the BIOS splash screen came up on the screen! Since I was able to trigger a reboot from the keyboard like that, it was definitely just a screen issue. And since I’d elected to install OpenSSH server during setup…

 

Screen Shot 2016-09-25 at 9.25.58 PM.png

I was in. I could set it up just fine over SSH, without needing a screen at all. Still, it would be nice to be able to troubleshoot things if a network connection was unavailable. More Googling suggested I could fix this by adding a magic incantation to the bootloader config. Made the change, rebooted, and…

IMG_20160925_093308.jpg

Had to do a different change to make it persistent. Did that, rebooted, kernel panic. Carefully tried to find out exactly what I’d done to make it panic, but it never did panic again, even with nothing having changed. Ghost in the machine I guess.

Alright, so I’m in, external monitor works if I need it. I start installing software and setting things up. Everything seems quite slow. I download a script to use Speedtest.net and measure my bandwidth. Ten mbps down, 2 up. Which is about as good network speed as we get at home in Alpine. Read: crime against humanity. My complex has access to Comcast, and I should be getting 2000 mbps down, 200 up. My router is old enough that it can only do about 600 down, which I plan to address one of these weeks. But still, only 10 megabits? I ran simultaneous tests on both my Raspberry Pi and the new server, both hardwired into the router. Full speed on the former, pitiful speed on the latter. If I couldn’t fix this, the server’s utility would be nearly nonexistent.

One mighty suspicious metric from the speed test was a ping time of over 2 seconds. By contrast, my Pi was pinging at about 20 milliseconds. I tried simultaneously pinging the same site on both machines. The server took about two seconds to start pinging, but once it did it was pinging at the same rate as the Pi. This suggested a DNS problem. Sure enough, when pinging by IP address it was just as fast as the Pi.

I interrupt this tale for some context. Whenever computers talk to each other over the Internet, they use IP addresses, groups of four numbers that together constitute the network address of a machine. You can think of these numbers like phone numbers. You need someone’s number if you’re gonna call them.

Thing is, it’s annoying to have to remember phone numbers, so most of us use address books. The Internet’s address book is called DNS, for Domain Name System. It handles translation from friendly-looking names (like google.com) to IP addresses (like 216.58.193.78). (You can try it, go ahead and copy/paste that IP address into your browser address bar.)

So, I have my Raspberry Pi set up in the corner of the living room, serving a very important function. I’ve instructed my router to hand out the IP address of the Pi to every network-connected device in my apartment, as the DNS server. My devices are basically told that if they want a name translated into an IP address, they’re to consult my Pi first. I also provide a couple backup IP addresses for globally-available services, in case my Pi is unavailable or off.

My Pi is receiving these lookup requests, and forwarding them off to a “real” DNS lookup service. However, for any website that’s associated with serving ads, it does not forward that request on, instead replying with a bogus IP address. The end result is that ads are blocked on every device in my apartment, without any need for device software. It also means that I can keep tabs on where my smart TV is phoning home to, and keep it from doing so if I want, by blacklisting the domains it’s using.

So anyways, back to my tale. The server’s DNS lookup is exceedingly slow. I try pinging the Pi, and get a “Destination host unreachable” error. Wut. I’m SSH’d into the machine, it’s obviously on the local network. And I can SSH into the Pi, so it is as well. I ping around on the server, and it turns out that it can ping out of the network, and it can ping wireless devices, but it cannot ping any wired device, those plugged directly into the back of the router, as the Pi is.

This explains the slow ping startup speed from earlier. The server was trying to reach out to my Pi to have it translate the name of whatever server I was trying to ping. (I learned how to ping from Dad, way back when, and the server he always used was www.toyota.com, so that’s the server I always use – old habits die hard.) After waiting 2 seconds for the Pi to respond, it failed over to the next DNS server on the list, the external one I’d set up in case the Pi was unavailable.

I highly suspected it was now a router issue. I’m running dd-wrt on it, which is open-source router firmware. Not inconceivable that it could have a bug in it. And it’s pretty old, I initially set it up back in 2013.

Back to Google. I found an extremely relevant query from someone else in a nearly identical situation. Following up on this, and I found two commands I can run from the router’s admin page to fix things. I did so, and pinging magically works! Re-running the speed test, I found I’m up to full speed.

dancing.gif

Hmm, I wonder. My sound bar has Google Cast built in, so I can send audio to it from my phone. And the bar is wired in, just the same as the Pi and server. And casting has always been super slow to start up. Could it be that I’ve been seeing symptoms of this DNS connectivity issue this entire time? I tried casting music from my phone to the bar, and it was suddenly over twice as fast as before.

dancing.gif

After all that, all I can say is, thank heavens for Stackoverflow.com.

On Friday we had our third weekly movie night, The Way Way Back. I’d tried to show both this one and About Time to my prior ward, but never got any interest. Very gratified to be able to show these to this crowd.

On Saturday I headed out with some friends to explore Seattle. I’d been looking for an excuse to head over there.

soccer.png
Spied this on the way out, good times.
IMG_20160924_135225.jpg
Such contrast, much humor.

IMG_20160924_145650.jpgIMG_20160924_145757.jpgIMG_20160924_152522.jpgIMG_20160924_152618.jpgIMG_20160924_153430.jpgIMG_20160924_153838.jpgIMG_20160924_154245.jpgIMG_20160924_154530.jpgIMG_20160924_162637.jpgIMG_20160924_162905.jpgIMG_20160924_164935.jpg

We met up with some other friends for dinner. We arrived at the mall early, so went walking around. I spied a RadioShack and darted in to get parts for a stereo mixer, to be used with the Echo Dot when it arrives. My friends took the opportunity to dart into a cosmetics store and get some mascara. I think we were both happy with our choices.

I mentioned last week that I was nervous about the place falling into disarray. It has begun: after trying to make my bed and not being able to get the top sheet to sit all the way under the blanket, I realize that it’s because the sheet has somehow rotated a full 90 degrees.

There may not be much of a status update next week, as I’ll be back in Utah for Callie’s wedding. Can not wait to be back. As you can see, I’ve really been outdoing myself in the cooking department. Behold my Fast Sunday dinner:

IMG_20160925_165526.jpg

I leave you with an interesting quote from the book I’m frantically trying to finish before getting home this next weekend:

quote.png

Week 0x35

Well, it’s 9am local time on Sunday morning, far earlier than my alarm clock is usually set to. I’m up so early because this morning I had plans to attempt to make musubi for a ward chat-n-chow, mix-n-mingle, munch-n….dunch, etc. Yesterday I scoured the local Asian markets for the ingredients. Found everything I needed except the mold. I did find though, online, instructions for making spam musubi roll-style, like sushi. So that was what I was gonna try. Until I was getting all prepped this morning and found that what I’d thought was soy sauce in my cupboard was in fact a very dark bottle of vinegar oil. Shucky darn. Well, now I have time to practice making it for next time. And I have time to get this written early, instead of Tuesday night.

IMG_20160917_131410.jpgIMG_20160917_154757.jpgskyline.png

I often feel these days that it would be so easy to let things pile up, like dishes and laundry. The Joker said it best:

dark-knight-joker-best-quote.jpg

Already my laundry cycle is a multi-day affair.

  • Day 0: Run load in washer.
  • Day 1-3: Get back to the apartment too late, or forget late enough, that I don’t have time to dry and fold, so leave it in the washer. (I’ve learned that I can’t run my whole supply of clothes at once, so I have more to wear during this standby period.)
  • Day 4: Finally move load to dryer. Lay dried clothes flat on living room table so they don’t wrinkle.
  • Day 5: Company expected, better move clothes to my bed.
  • Day 5, evening: Too tired to fold, move clothes to top of dresser.
  • Day 6-7: Pull clothes out of stack on dresser for daily use.
  • Day 8: Get fed up with the state of things, finally fold clothes, as well as the whites I’ve been keeping in a laundry basket hidden behind my bed.

In other news.

Amazon always recommends the Echo to me when I visit, since I regularly check their Echo Dot page to see whether it’s back in stock yet. I have a speaker already, and the smaller form factor is really appealing. Plus, the thing goes for over 2x its retail price on eBay, so there’s definitely demand. I really wondered what Amazon was thinking, not producing more.

Then this week they released their 2nd generation unit – smaller and cheaper than before. Turns out their original unit relied on a component that ceased production, messing with their supply chain. All’s well, I can finally get that Alexa goodness back at my place. Not till the latter end of October though, when they ship.

On Wednesday night I attended the first of eight sessions of the local police department’s Citizen Academy. A notification went out over our company mailing list, and I thought I’d check it out. Maybe get to fire a few guns at the range, etc. The first night we toured their office, and were going to get a tour of the jail, but at the time we arrived for that portion of the tour we learned they were dealing with rowdy drunks back there, really not a good time for us. The officers conducting the tour were apologetic and said they’d try and arrange a time in the future for us to visit.

Anecdote: during the around-the-table meet-and-greet, several people said they were “a Cougar through-and-through, bleeding crimson.” Threw me off for a sec – I guess they have different mascots around here.

I was very sad when I did the math and realized I’d be in Japan on a conference trip at the same time as the Academy’s shooter-sim night. Everyone gets to gear up in a hyper-realistic laser-tag-esque scenario drill. Apparently it’s usually the crowd favorite. Dag nabbit. I’ll just have to be sure to enjoy Tokyo.

Which, I’ll just put here in case anyone wasn’t aware, but yeah! Going to Tokyo next month. My lab at BYU published a paper at a conference happening next month. I booked a flight out, mainly intending to support whoever from my lab would actually be presenting, either my advisor or my PhD colleague, the lead author on the paper. Well, neither of them could end up going, so I’ll be the one presenting, and the only one from my lab to go. Luckily there are other professors and students attending, so I’ll have people to hang with. And, Google has a cool office just 15 minutes from the conference venue, so that’ll be a fun place to visit.

On Thursday I had to get home early for a Comcast technician visit. When I signed up I got a speed of X, and I was measuring 0.5 * X from my modem. Comcast figured it was a signal issue, so they sent out someone to investigate. The guy couldn’t find any signal issues. He called in to home base and verified what speed I was signed up for. “Yeah, so I’m reading [0.5 * X] for your speed.” Uhh, no, that’s not what the guy said when I signed up. There was nothing the tech could do, so he left me to figure it out with the accounts department.

I was really anxious that they were gonna claim that original offer for X never even existed. Turns out they’d kept good notes on the account, and were able to determine that the agent who’d signed me up had just keyed in the wrong access code or whatever. One modem reset later and I was back up to full speed.

On Friday afternoon I played my usual game of pickup soccer with some other Googlers in the field just east of our buildings. Fun stuff, though one of the lead players could stand to loosen up a bit. Very by-the-book. We always have to play light-shirt vs dark-shirt, there shall be no mixing. A team member has to leave? ‘Hey, I know we’re beating you like crazy, but can we borrow one of your players so we’re even?’ But it’s still fun, been a long time since I’ve been able to play soccer on the regular.

That evening we had Round 2 of movie night at my place. Instead of the rowdy games running late into the evening, we had them before the movie. Which was About Time, one of my favorites. (We watched an edited version, which I am very happy to send to anyone that asks.)

I spec’d out the apartment a while back and figured we could fit ten viewers comfortably. Somehow we managed to get 17 in here. Required a bit of furniture rearranging, but everyone had a grand old time.

IMG_20160916_211400.jpgIMG_20160916_211841.jpg

triumph.png
A triumph!

I’ve been incessantly mulling over the parts for a new computer, and finally pulled the trigger on ordering them. (In case anyone’s interested parts list is here.) I’m planning on using it as a Plex media server, and as offsite-backup for my folks. Which, if any of you extended family are reading this and would be interested in a similar arrangement, drop me a line.

As many know, naming things is one of the two hardest problems in computer science. Server hostnames are no exception. Fortunately, I’ve already sorted out what I’ll be naming it. It’s gotta be cool. I live in Kirkland, right? So, Kirkland… Kirk… James T. Kirk… James Tiberius Kirk… Tiberius. Done and done.

I hate spending lots of money on things, which made pulling the trigger on these components so difficult. However, I remembered that I’d never done anything fun or interesting with Gram’s little inheritance gift – I’d folded it into my savings and sort of forgotten about it. Now I have something to spend it on. And it’s doubly nice since I remember doing one of those grandchild interviews with her some time before I left on my mission, and she asked me to describe my ideal computer setup. I basically went through and described a maxed-out Mac Pro, incredibly expensive. Now this setup’s cost is a fraction of that, and quite a bit more performant to boot. So I think she’d like that I’m building it.

Till next time!

Week IV

Well summer is still holding on for dear life. There’ll be drizzles next week, but this week is all sunny.

I may have mentioned before, but the cloud formations are really something out here, much nicer than Utah clouds. I experienced a similar phenomenon in Australia, and I wonder if it’s due to the water content in the air – much drier in Utah than here. Another difference that may be due to the same root cause is that I can’t easily tell by looking outside how cold it is in the morning; it was pretty darn frigid today on my bike ride. I considered just driving in, but with only a week left of nice weather, I can’t be picky.

Speaking of bike rides, and how I ride past tons of blackberry bushes, the blackberries are all shrivelling up for the year. I arrived in town just in time to catch the best part of blackberry season. It’s too late now, but over the last two weeks I would’ve enjoyed being a berrybender, levitating the berries off the bushes into a basket I’d keep on my bike. There’s no other way to get at those high berries since the prickly bushes are so tall.

I keep meaning to write these over the weekend, but then I’m consistently busy. On Friday we had the first of what may become a regular movie night at my place. The movie – The Tourist – lasted until 9:45, and I was happy we’d finished up before the 10pm quiet hours. Then they decided to stay for games. I feel pretty bad for my neighbors. Here I’ve been trying real hard to keep quiet and respect the 10pm quiet-hours rules, and then out of nowhere here’s a group of 12 people shouting at midnight, accusing each other of being government agents out to topple the insurgency. Next time we’ll play the rowdy games before the movie.

On Saturday, the latest chapter of the Holy War unfolded. Unfelded? Unfelled? Feels like there should be a shorter word for that. Anyways. A bitter taste of déjà vu, as I’m pretty sure we lost two games ago in an identical fashion. About 3/8ths of the way through the game, the power went right out. Ended up streaming the game on my phone, which taxed both the battery power and my data usage. It’s just as well that the game ended when it did, since my battery wouldn’t have lasted much longer anyways. Would’ve had to resort to watching it from my car, charging off of the engine.

 

Untitled.png
That right there is about a month’s worth of usage in just a couple hours.

The flashlights I brought worked wonderfully though. Shining the light straight up at the ceiling made it seem like there was a sunroof installed.

I was using up the last dregs of power on my laptop to watch Interstellar, and then go to sleep, when power came back at 11:30pm. Nice, now I can stay up another two and a half hours reading Dune! I need to finish the book before I head back to Utah at the end of the month, since it’s checked out from the BYU library.

On Sunday there was a dinner at our bishop’s place for the ward council members and all the newbies. Since I fit in both categories, I was contractually obligated to go :p Afterwards we watched a delayed showing of the devotional by Elder Quentin L. Cook. Good stuff, but I was dead tired afterwards.

Anecdote: I’d arrived early for church in order to attend Ward Council. Afterwards I decided I’d drop in and join the choir. Didn’t realize we’d be singing in Sacrament Meeting that very day, but oh well. But the funny bit was before practice. Girls in row ahead of me, complimenting a guy standing next to me on his bowtie: Bowties are cool. Me: Fezzes are cool too. All of us: Yeeeeaahhh.

Monday evening was a regional FHE over at some beach in Seattle. Didn’t have time to grab something to eat beforehand, so I hoped they’d have proper food, but it was just s’mores. Had one, played some volleyball, more volleyball, frisbee, more frisbee, met some Bellevue members, told riddles, climbed on a cool pirate ship playset, went and had burgers on the way back. Much fun.

Sayonara!