Here are my reviews for each of the short stories in Ted Chiang’s short story collection, Exhalation (2019), organized into categories: Forgettable, Good but Not Great, and Excellent. In general, Chiang is masterful when he develops the story elements fully, and is weaker the closer his stories are to essays; he has a tendency to tell rather than show, and The Truth of Fact, the Truth of Feeling almost got bumped down to Good But Not Great for that reason. However, when he does find the specific human experiences in the ideas he’s exploring, he’s unbeatable. Highly recommend.
What was going to a coding bootcamp like, and should you attend one? I attended the bootcamp Hack Reactor (aka HR in this post) in 2015 and get a lot of questions from prospective students. This blog post is an attempt to consolidate the answers to the most common questions I get. An obvious caveat here is that my experience is seven years old, and things have changed a lot since then.
Nothing more than photography jolts me into remembering that my eyes are not cameras and my brain is responsible for everything I perceive. This happens most often when I’m taking a picture through something - a window, or a screen. I’ll be at the zoo, trying to take a picture of a monkey doing something really cute, but when I look at the resulting photo on my phone, I’ll see instead all of the reflections off of the window, and barely the monkey at all: the foreground and background have been flipped. Most often, I won’t have even noticed the reflections; my brain will have just edited them out. The same thing happens when taking a picture through a window screen, or of a TV paused at a funny freezeframe.
I love the card game SET. I’ve had the same well-worn card deck since I was eight (the rules of the game are in the linked Wikipedia article if you’re not familiar). Unfortunately, I have quite a few red-green colorblind friends, and SET was basically designed to be impossible for them to play:
TL;DR: When a React component is rendering a value, that value should either be controlled (gets the value from props) OR uncontrolled (keeps the value in state).
What do you say to someone to who is afraid to get the coronavirus vaccine? Someone who sees that the new ones were developed in record time and thinks not “Wow, what an incredible scientific achievement! Amazing! 😍” but “Given the incentives to get a vaccine quickly, that is literally in-credible. How do I know this thing is safe to put into my body? 😬” In this post, I’m going to assume you, the reader, want to get the vaccine, but have a friend we’ll call Maya, who does not.
One of my favorite recent pieces of science writing is by Bert Hubert, who wrote this excellent post breaking down Pfizer/BioNTech’s vaccine sequence into its functional parts by comparing them to engineering concepts. On the last day of the year, Bert followed up with Part 2, which challenged readers to reverse engineer the differences between the virus’s RNA sequence and Pfizer/BioNTech’s vaccine RNA sequence.
I’ve been knitting for over a decade, but have rarely done colorwork. To scratch that itch, I bought the Sagemoor Knitting pattern, which is a gorgeous colorwork sweater from Brooklyn Tweed.
Here are my heuristics about behaviors that are safer/riskier while the coronavirus is still a threat. This is NOT advice you should take; it is a description of what I personally am comfortable with at this point in time. (Standard
I AM NOT A DOCTOR/EPIDEMIOLOGIST/DISEASE EXPERT IN ANY WAY warning) I’m focused on behaviors that I expect to make decisions about on a day-to-day basis. It is very important to note that all of the below advice is for a LOW-RISK person; anyone who is high risk should probably categorize this very differently.
Question: What’s wrong with this code?
A friend of mine who was trying to write custom hooks with
useRef mentioned that
refs were generally kind of confusing to him. After chatting through the things he wasn’t clear on, I realized that there were a few key concepts that aren’t necessarily obvious, but that give you the fundamental understanding to build on when using
refs in other contexts:
Note: this post was updated on 10/20/2020, adding the TL;DR and editing for clarity.
I’m attending the awesome Write/Speak/Code (thanks Benchling for sponsoring!) and saw twelve talks today. Here were my top talks!
This blog is created with Jekyll using Github Pages. Jekyll has support for tagging blog posts, but Github Pages doesn’t whitelist those plugins, so if you want to use tags with GH Pages, you’ll have to do it yourself. I followed the guidelines on this blog post to get my tags up and running, which worked well, but I also wanted to automate the generation of the tag files in
tags/ so I wouldn’t forget to do it.
I’ve been excited about React Hooks ever since I saw Dan Abramov’s intro talk last fall. I’ve been playing around with hooks in my side projects for a few months now, and I LOVE them. Reducing the clutter of JS classes? Great! Eliminating bugs from missed lifecycle hooks? Awesome! Moving to a render-first (rather than a life-cycle-first) mindset? Super duper great! Encapsulating stateful logic? THE BEST!
I got a new job! Well, new as of earlier this spring, anyway. From March 2016 to April of this year (2018), I worked at Mavenlink. In May, I started a new job as a software engineer at Benchling (I took some time off in between to travel to Spain and visit family). I’ll explain why I made the switch below.
At my job, we’re in the process of writing a library of shared React components. (This blog post deals with React, Ruby, and Selenium, but the concepts are applicable to anyone writing integration tests for a shared set of reusable components.) This is awesome, and we’re seeing high rates of adoption and modification among devs. However, when writing our integration specs, we end up writing the same selectors and behavior over and over. I came up with a solution this week for how to help improve some of the pain we’re feeling, and I wanted to share it with you:
Welcome to my blog! I built this using Barry Clark’s excellent repo and blogpost. I’ll be updating the styling on this soon to make it my own, but for now, I’m just looking forward to having a place to host my projects and ramblings. Talk to you soon!