Jason Becker
July 5, 2021

We were staying around the corner from Kokoro here in Tulum without even knowing it— there’s a sign up against jungle foliage with a path and no further explanation. But at night, the path is lit up with string lights, inviting and mysterious. We wandered down the path and found the first pool I’ve seen that actually feels lagoon-like, and a Japanese restaurant with a grill on the first floor and sushi on the mezzanine.

If a sushi place looks pretty good, I’m almost always going to go for the omakase. So we decided to make reservations and return the following night to check it out.

What followed was a wonderful meal, most of which is pictured here 1. The toro sashimi and toro nigiri with black truffle were particularly special, as was the quail egg and nori “taco”. It’s a privilege to be able to take vacations, and it’s even more of a privilege to be able to find a restaurant like this and let the chef do whatever they want. These are the experiences I treasure.


  1. I am not perfect. I often eat before I take a picture, leaving some holes on plates or missing entire dishes because I am lost in the food. I am human. ↩︎

July 3, 2021

The best kind of progress for me is not measured on the scale. Instead, it’s measured by my accomplishment today.

I was able to keep up with a group of fit people in a tour “very few people choose to go on” mountain biking through the jungle, into caves, and then hiking through the caves until we stopped for lunch. We had virtually no breakfast, and lunch was a small sandwich— bread the size of my palm, one slice of salami, a slide of tomato, and maybe a slice of cheese, I can’t recall— and a banana. We had water and Gatorade, but I just went for the water.

Even just 2 months ago, I would have been struggling to keep up at all. I would have been starving and cranky about lunch, feeling totally unsatisfied and uncomfortable with hunger, especially after that hard work.

But today, I pulled on a wet suit and mostly swam through the caves for two hours. By the end, I was tired, but I just had some more water, pulled off the wet suit and returned it to my backpack, and then hiked to then bike back out the caves and jungles again.

At the end, we had a small meal of Mayan food waiting for us, a very reasonable plate, but nothing that would have approached a meal for me until recently. Drenched in so much sweat I could wring it out of my shirt, I enjoyed a light beer with my afternoon meal and we were on our way.

We’ll see what tomorrow brings, but right now I’m not sore or in any kind of pain. A few months ago, I’d be laying out on the floor. Now I took a shower, and feel refreshed, and while I’m not looking to do a long walk or bike ride tonight, I’m confident I’ll be ready to go in the morning.

And I’ve already been riding a bike about 10 miles each day the last two days.

When I decided to get back to the gym, back to weightlifting and training, and start watching my food closely again this is why— I was tired, I was not able to do things physically I wanted to do in order to enjoy my life. Sure I wanted to be able to more easily by clothes and was embarrassed by how I look, but I’ve been embarrassed by how I look my whole life. 1 Mostly what I wanted was to be able to physically do it all, and never be worried if I could keep up with the group or have to sit back because something didn’t feel possible.

I’m not ready to climb a mountain, but I can be a full participant again. I can feel the good kind of effort, with more adrenaline and endorphins than pain.

This is what I’ve been in the work to achieve. This is the progress I wanted.


  1. That’s a conversation for my therapist and will be left unexamined here. ↩︎

June 30, 2021

A rare picture of myself. Introducing, Vacay Jay. (It’s pouring here in Tulum, I’ve got to entertain myself somehow).

A picture of myself in a red shirt and khaki colored pants
June 29, 2021

So tonight I was introduced to a “caprese salad” which was actually burrata and pesto stuffed into an heirloom tomato and I was very happy.

No pictures once it was sliced open, it was gone too fast.

A large heirloom tomato beside a stack of basil leaves with some parm
June 23, 2021

In case you need this, if you install Java via homebrew, e.g. brew install openjdk, you’ll need to add this to your ~/.zshrc

1
export JAVA_HOME="/opt/homebrew/opt/openjdk/libexec/openjdk.jdk/Contents/Home"

and then run the typical sudo R CMD javareconf to get hooked back up.

June 20, 2021

Here’s what I’ve learned:

  1. I always feel pretty good after a night with an unusually high amount of “deep sleep”.
  2. I fairly often feel great even when I don’t get very much deep sleep.
  3. Sometimes less sleep is totally fine.
  4. It takes getting significantly less than my normal sleep to feel bad after just one night of poor sleep. Normally, it will take 3-4 nights of low sleep to start having ill effects.
  5. Interrupted sleep has the most negative effect on how I feel in the morning, but is also nearly fully resolved by just staying it bed and getting an additional 2-3 hrs of deep sleep throughout the morning.
  6. Caffeine in the evening can cause me to stay awake later, but doesn’t have any discernable other impact on my sleep.
  7. Exercise helps me sleep well, but less than I thought.
  8. Anything over 6 hours and 45 minutes for me is absolutely fine. Anything over 7 hours and 15 minutes feels like “a lot”. I can sleep as little as 6 hours and 15 minutes with virtually no impact unless that goes on for days at a time.

I think the most important of these is (5)— if I find myself up at 2 AM, and again at 4 AM, I will do my best to send a few emails to say I’m having a rough night and make sure I can sleep from 7 to 10 or 10:30 AM whenever possible. This almost always ensures I won’t stack several days of bad sleep. If it’s not possible, I try and get a nap in around 4 or 5 PM that day.

June 18, 2021

Focusing on closing the resource gap in education is important as a mechanism to close the outcomes gap. Possibly the greatest flaw of the outcomes focused accountability regime of the last 20+ years was trying to eliminate the idea that changing inputs changes outcomes.

Of course outcomes matter! Of course the goal of equitable resources in education is to build systems that result in equitable outcomes! But the feedback loop has not been, “Our system provides inequitable resources, then provides inequitable services, and the result is inequitable outcomes.”

Instead, the feedback loop has been “Our system produces inequitable outcomes, you should change how you provide inequitable or ineffective or inefficient services.”

I am the first person to tell you schools and districts have room to operate better– it’s what I spend my professional career on! But there are severe limits when many districts are starved of the necessary supports.

We know how poverty makes it significantly harder for individuals to always make the “best” decisions that will lead to the greatest chance of escaping poverty. We talk far too little about how impoverished institutions and organizations face those same challenges. And that kind of institutional capacity rot is stacked on top of simply having too little to succeed.

June 4, 2021

A great piece by Alon again over at Pedestrian Observations, this time outlining how America’s hollowed out staffing transit authorities lead to high cost processes run by consultants. Transit is not the only part of government that operates this way.

The parallels are there in government software procurement. Few agencies have sufficient, well-paid, expert staff to build and maintain their own software systems. How many times do the same consultants need to fail before we recognize our process is broken? When it comes to big government software projects, if you don’t have the staff to build and maintain it yourself, you probably don’t have the staff to properly manage contractors building custom systems.

I think you have two options if you want to have successful projects: you either build it yourself, or you buy commercial-off-the-shelf products. That goes for software, but it also goes for infrastructure. How often are we finding American cities and regional transit authorities overpaying for lower quality rolling stock due to unnecessary customizations over off the shelf European train sets? The culture of pointless customizations at the margins is so strong, transit officials for Metro North in Connecticut didn’t know that federal regulations had change, permitting the purchase of unmodified rolling stock used in Europe.

Because of variations in state and local law, there are times you have to build things yourself. The team government has to do so should be as competent as private sector employees. They often are as individuals, but understaffed and underempowered to perform as well as a team. But so often, government spends orders of magnitude more on projects that fail in the interest of customizations performed by outside contractors that largely fail to deliver any meaningful improvement over unmodified, available systems.

Build the best yourself or buy the best from someone else. This in between crap just doesn’t work.

June 3, 2021

For all the ways that professional email and marketing email has cursed our inboxes, personal email is still beautiful. Don’t believe me? Choose someone you know and write a 5 sentence email to them. Choose someone you’d like to know who publishes their email address a 5 sentence email.

I’ll bet you one great email from me that the results will be delightful.

I’m going to add my contact information somewhere on this site in the future, but if you’re reading this, go ahead and send me an email.

May 31, 2021

Tonight I was revisiting an R script for cleaning up data that I wrote a couple of years ago. This script still runs nightly to process some data dropped on an SFTP server for some work we do at Allovue.

As I was reading through the file, I noticed that a lot of my code was repetitive. With some new powers I didn’t have back then, namely dplyr::across and many other tidyselect features, I wrote the following:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
clean <- map(raw,
             ~mutate(.x,
                     across(any_of(supplements), as.character),
                     across(where(is.character), na_if, ""),
                     across(where(is.character), na_if, "NULL"),
                     across(any_of('po_number'), na_if, "0"),
                     across(where(is.character), remove_non_ascii),
                     across(where(is.character), 
                            str_trim, side = "both"),
                     across(where(is.character),
                            str_replace,
                            pattern = "\\r\\n",
                            replacement = "\\n"),
                     across(where(is.character) & any_of('date'),
                            as.Date, format =  "%m/%d/%Y")))

My data is already stored in a list (raw) because I read the data using map with a custom function (extract_data), which knows how to process a yaml file and load data from various sources, like databases or flat files of various types. This allows me to automate executing the same script with different configuration files to collect data from many different sources. I mostly leave the data in a list so that I can use walk to export all the data once clean as text files with consistent formatting with a single call.

Until now, I never took advantage of having a list of data.frames for the T part of ETL. Without being able to use across with predicates based on data type or with tidyselect functions like any_of, it was harder to safely do mutations that were not attached to the underlying data structure. The code above can execute on any list of data.frames as long as a character vector named supplements exists. By using any_of, if those columns don’t exist in my data, they are ignored. And by using where on type definitions (largely characters in this case), I don’t have to worry about names of columns in the data I want to remove Windows-style line endings from– just take care of it on any character columns.

So while it’s not fancy, I’m tickled by removing four lines that mutated dates in 4 of 7 data.frames where that was relevant, and how many different places I added na_if before. Or how about the number of times I had to cast a specific value (like check_number) to character from some other format (usually integer because they’re quasi-numeric or logical because they are entirely missing from one data set) so that I can do a join or bind_rows. This is a classic case of time, experience, and an ever-improving tidyverse API reducing code complexity while making my code more generic and reusable.

May 30, 2021

It’s been a while since I’ve updated this page. My intent was to keep this a place to check in roughly quarterly, but the last 14 months have made a lot of intentions go out the window.

Some things happening now:

  • I decided to go back to small group training at the gym, feeling confident in their protocols and my own protection due to having received the vaccine. After a month, the results have been great, both physical and mental.
  • We have booked a vacation. I will be getting on a plane for the first time in about a month.
  • I went to a restaurant and sat for dinner, indoors, for the first time.
  • When I have extra time and brain space, I’m trying to make my way through some Elixir courses.
  • Some things I might have blogged or shared publicly in some way in the past I am now redirecting to Day One.
  • I have entirely stopped posting to Instagram in favor of posting photos here.
  • A while back I added a Uses page that I’m trying to keep up to date.

I still feel like my world is uneven. There are still stutter steps and false starts. Many of the changes of the past year linger on, some permanent, others hard to shake off. I don’t know if I think the rest of 2021 will feel normal or better, but I’m hoping.

Current Home Screen

iOS Home Screen

I feel like home screens require some more explanation these days. The widget on the top has both Carrot Weather and Fantastical. The smaller widget has Lose It with my remaining calories and macros in the stack as well. I do have a “page 2”, and that page has an expanded, agenda-style widget from Fantastical on top and the 8 Siri Suggestion apps widget on bottom.

Previous Now Page - March 2020

May 11, 2021

I have family in Israel that I love. I have had three incredible trips there, including the very last trip my grandmother made. In some ways, there’s no where I want to go more with Elsa and with my parents, who haven’t gone since the early 80s.

I cannot in good conscious spend money in Israel.

I have had complex feelings about Israel nearly all of my life, but the rightward swing of its government and people in the last 10-15 years is not complicated.

My grandmother and her cousins.
April 27, 2021

Because of my frustration with bad UX and no visible product improvements, I was already internally discussing leaving Basecamp behind at Allovue. Now that I know they’re a milkshake duck, we’ll be cancelling within the week.

For what it’s worth, we started doing Shape Up— it kind of works. There are pieces that are really well aligned to the way we do product, but a whole lot that does not work at all if you’re not a mature product throwing off a few million that you make only incremental feature improvements on.

Things we’ve liked:

  • Scoping work to 2 or 6 week long stretches is pretty natural/doable.
  • Bringing together leadership to talk about and confirm our direction every 8 weeks is great.
  • Developers creating their own tasks is mostly great.

Things that we’ve not figured out:

  • Bug and chores are not really a thing people want to do in “cooldown” & hard to “spend” budget on upfront.
  • Greenfield projects and ideas are hard to write 2-6 week pitches versus “see how far we get”
  • Devs would rather do work than make tasks.

Things I need to do now:

  • Codify what we keep somewhere that doesn’t send people to Shape Up.
  • Quickly choose a better tool than Basecamp that can serve a similar role— to be a place for research, pitch writing, and ultimately, task management for devs.

I’ve always found Basecamp to be a weird company with weird founders that sometimes said really interesting things that I 70% liked and 30% cringed. There were things to admire, not the least of which was their success at achieving total financial independence. But the product is just… not that good. And their current situation with “politics” and “society” issues can only be interpreted one way:

They said they wanted to grow and be more diverse and better, but as soon as their absolute control was challenged, they took their ball and went home.

“At least in my experience, it has always been centered on what is happening at Basecamp,” said one employee — who, like most of those I spoke with today, requested anonymity so as to freely discuss internal deliberations. “What is being done at Basecamp? What is being said at Basecamp? And how it is affecting individuals? It has never been big political discussions, like ‘the postal service should be disbanded,’ or ‘I don’t like Amy Klobuchar.’

Hansson’s response to this employee took aback many of the workers I spoke with. He dug through old chat logs to find a time when the employee in question participated in a discussion about a customer with a funny-sounding name. Hansson posted the message — visible to the entire company — and dismissed the substance of the employee’s complaint. ❡Two other employees were sufficiently concerned by the public dressing-down of a colleague that they filed complaints with Basecamp’s human resources officer. (HR declined to take action against the company co-founder.)

– from Casey Newton’s Platformer, What really happened at Basecamp

Over the course of that 10-day Moral Quandaries case investigation and discussion, it became clear to me that the only way to move you two was to prostrate myself. To violate my own sense of personal privacy and list out in excruciating detail example after example of how I have experienced hate and harassment. So I did, and at the end, hate speech and harassment were added to the list.

Jane Yang, Basecamp Data Analyst

Change is fucking hard. I’m sure people have left Allovue thinking we wouldn’t change. I’ve been here long enough to know we are constantly changing. We have fucked up for sure, but we try and do better every time. There are still struggles we go through. I still have struggled mightily to attract non-White, non-male candidates every time I hire for the product team– like, single digit percent of all applicants. I have personally struggled with building strong relationships across teams at different times and making sure people feel heard. There have been conversations where I failed to speak up and support the way I could have and should have as an ally. Worse, there have been times I didn’t even realize that I needed to because I didn’t see what was happening in front of me. I struggle daily with being a White guy, in a position of societal privilege and power but with actual positional authority in the company that I don’t always realize I walk in the room with. I struggle with how to struggle as a full person in front of people.

This shit is hard. I have made mistakes. I am sure there’s a host of skeletons in my closet. Some things that left a mark on me, but worse, things that I don’t even see as remarkable in my own life. My feeling about this is the only thing I can’t do is take my ball and go home. I don’t know that my mistakes are excusable, and I hope they are redeemable. I hope they are fewer and far between. But mostly, I think the greatest sin of all would be deciding to use my power and privilege to stop struggling at all.

The worst thing I could do is use my power to enhance my own safety.

One thing I try and do a lot more of these days, with some success, is try really hard about being explicit about my feelings and where I’m at, especially if I start to get that sour feeling that my tone is not lined up with my actual feelings.

A weird thing about positional power is you don’t realize that your own excitement, intensity, bad mood, and feelings in general can start people down a path and feeling a certain way you don’t want. Sometimes, because we’re human, our feelings leak into how we communicate, but those feelings are not always about what we’re talking about or who we’re talking to. But that’s obviously how anyone you’re talking with will see them.

So after I critique a piece of writing, I might say, “By the way, to be clear, this is already much better and much closer to what it needs to be. My critique is detailed and specific and strong because it’s so much closer to what we need." Or I might say, “Sorry, I’m just having a morning and I wanted to make sure I really understood that feedback so I knew if this was going to throw my day for a tailspin." Or I might try and talk out loud about why I’m asking the questions like, “I’m just trying to figure out if this is specific to this customer, to a particular data situation, or a general thing.”

I don’t know if it helps, but it can be really hard for me to modulate my tone or how people read the way I write or communicate and much easier for me to say out loud “here’s what’s going on in my head right now”.

Because there are going to be times where I am not at my best and don’t have my best faculties, I try and really do my best when I can. I hope that if I can show the thoughtfulness I wish I always had when I’m at my best, I will be afforded some grace when I fall short.

April 26, 2021

What happens when you can’t have a political conversation at work?

Political conversation continues at work, between coworkers. If these are conversations that people were having when it was “ok”, they are going to keep having them in “unsanctioned” ways. The politics now just become a little less visible.

What happens when you can’t have a political conversation at work?

By making people feel unsafe discussing anything “political” at work will result in screwing up. All of our work is to build systems and processes that other people have to interact with. Bias, unfairness, and unintended consequences are always built in. If employees cannot object on “political” grounds, you will miss the ways that your system/process/product gets it wrong.

What happens when you can’t have a political conversation at work?

People who have power in your company will continue to voice opinions that they don’t even acknowledge or recognize as politics. Power and privilege is all about a shallow understanding of how your own actions are not apolitical, they are just aligned with existing power.

Politics at work

Politics at work does not mean campaigning or soliciting for campaigns. It does not mean an endless battle royale of cable news level debate among coworkers in a Slack all day long. Politics at work looks like:

  • Are we paying women and men the same for doing the same job?
  • Are our recruiting and hiring practices leading to a non-diverse workforce and missing out on great people who should work here?
  • What problems does our company solve and for whom?
    • How do we solve those problems?
  • How can we make sure our employees are safe at work, but also feel safe when the various things in the world, out of their control makes them so unsafe? This is not because safe workers are productive workers, although they are. This is because we give a fuck.

Workers don’t choose their work any more than their family. Some people have highly desirable skills that lets them choose wherever they work and change on a whim, but most people need their jobs, took the offer at the only job that gave them one, and don’t have the safety to just exit. But employers do choose their employees, and this asymmetry is critical to remember. The power that gives employers is considerable. So employees do limit their speech for fear, and that’s totally understandable. That power also means that employers need to take seriously their responsibility to care for their employees. We chose them, we want them here, we need them, and we have too much power to not bend to care.

April 20, 2021

The city’s design review board did things like postpone the approval of a 400-unit, transit-oriented development with 168 subsidized homes because they didn’t like the color, the presence of a ground-floor day care, the shape of the façade, and the ground-floor residential units. A “passive house” project—six stories, 45 units, ultralow energy use—was required to attend a third meeting after the board asked for more bricks, though it eventually approved the building without bricks, 19 months after the builders first applied.

From this great piece in Slate on the ways that we build in huge construction costs not because of the cost of better designed buildings, but instead, because of the cost of appeasing design review boards that you have the right aesthetics.

April 17, 2021

I’ve had two successful runs at getting healthier and losing weight in my adult life. One involved very close dieting, done at a time when my life was more routine and far less stressful. The other involved an expensive gym that was entirely scheduled, small group training, coupled with dieting that was not quite as extreme.

About six months before the pandemic, I stopped going to the gym with small group training. I had been there a few years. I felt I learned how to work out successfully, how to keep a routine, and what to do. I thought maybe I could save a little money and try and do this on my own. My travel schedule was increasingly erratic, and it was stressful trying to find my three slots a week to head to the gym. My consistent 12-14 days a month started to drop to 10, so it felt like time to try. I didn’t do great in those six months before the shut down– I did go to the gym more often than past memberships would suggest, but my 10 days a month dropped to 3-6 pretty quickly.

We have plenty of space to work out from at home, and during the pandemic we were all set to make that happen. Elsa has done a pretty great job getting on the bike, doing yoga, and occasionally a bit more. I have not. My motivation to do anything in this time but get to work and get to bed has been poor, at best.

Throughout the pandemic, my old gym still sent emails. I was very impressed with their protocols. It’s one of the places I might have trusted most to go indoors during this time. But I wasn’t ready to spend the money or the time, and I wasn’t motivated in the slightest to go.

Now I’m fully vaccinated, and I’m unhappy with my health. I’m snoring again. I’m often tired from lack of good sleep. It’s just, not what I want or need to be. I feel worse, and the math is pretty simple. I’m sleeping 7 hours and 20 minutes a night versus 7 hours and 40 minutes when I went to the gym. I consistently weighed 7-10% less than right now, all while I was much stronger. So this morning, mask on, I got back on the horse. Tomorrow I will be sore. Monday I will go back. No more staying in bed until after 9. No more once or twice a week taking a longer walk and calling that enough.

Let’s see how I do this time.

April 11, 2021

The Internet has generated one huge machine to press upon every self-doubt I have. Any small victory looks paltry when compared against the people I think are great, who are all the more greater as time goes on and it’s easier and easier to be exposed to the true Rockstars. We are all surrounded by the best of the best of the best at what they do, or at least, people who are very good at promoting that version of themselves.

Too few of us, myself included, will ever be that kind of rockstar. I am not going to be one of the top 100 or even top 10,000 people in the world at anything I try to do. There are too many people, too much brilliance to hope for that. I am old enough and exposed enough to know I don’t shine that bright. Honestly, I’m mostly fine with that, though I can imagine how much healthier my self image would be if my world was smaller, even as I would be so much poorer for not knowing what else there was.

That’s why it’s so powerful when someone else truly believes in you. I will not be a rockstar. I’m not a rockstar. I have little hope of being a rockstar. I see that completely and objectively. But having someone in your life who sees that in you, who believes that potential exists but for luck and opportunity, is still so powerful. On the surface, I might believe the are delusional or exaggerating. But in my heart, it makes me wish I could prove them right.

I am better, because I have other people who truly believe in me, people I treasure and respect. It makes me want to be who they see and pushes me farther than I could go on my own.

April 3, 2021
April 1, 2021

Slave-owners were particularly afraid of allowing democratic control over property because they were literally afraid of their property. They were haunted by the threat of slave insurrections, as well as foreign armies turning their slaves into enemy soldiers through offers of freedom (as the British had recently done). Einhorn concludes that “if property rights have enjoyed unusual sanctity in the United States, it may be because this nation was founded in a political situation in which the owners of one very significant form of property thought their holdings were insecure.”

How Slavery Shaped American Capitalism

Perhaps the only piece I’ve read in Jacobin that I’ve liked.

March 24, 2021

What Leno gets wrong is exactly the headline, “In my heart, I knew it was wrong.”

This quote is more honest:

“At the time I did those jokes, I genuinely thought them to be harmless.”

That’s real. What he thought was wrong, and he should have figured out that he was wrong sooner, and today he knows that.

Forgiveness requires contrition. And I do believe that Leno is contrite, but that’s not for me to decide. We’re doomed if we cannot find a way to forgive anyone for any transgression in society, but we (largely white men) also need to do a better job. We need to learn faster and better, by listening more often and more closely. Part of that is learning how to apologize.

Leno said things in the past that he thought were funny. He thought they did not create harm, directly or indirectly. He failed to listen to peoples’ pain, and he failed to consider their pain or impact adequately before making these statements to begin with. We all do this at times, especially when we’re young, though hopefully not so much by the time we’re adult professionals.

Own it. Be wrong. There was no “In my heart, I knew it was wrong.” You didn’t feel anything in your heart at all about it. If you did, it would mean that your empathy was triggered and there’s no way you would have made those jokes, or stood behind them when called out.

I have said terrible things I wish I could forget. But worse, I have said terrible things I have forgotten because in my heart, they meant nothing to me. I feel sadly certain that I will do so again.

I am sorry. I hope I learn better, faster. But when my heart knows anything at all, it prevents me from making those mistakes. That’s its job.

This tweet was originally embedded but has been replaced with a screenshot due to changes in the Twitter service

March 20, 2021

Prospect has that look, the industrial, aged, space junk of our 1980s future. There’s only three days left before this system is going to be abandoned by civilization, but there’s riches to be found on the surface first. We begin with Damon and his teenage daughter, Cee. Damon is a drug user, a hustler, and broke. Their pod is broke. He’s pushing to do this one last job in the small amount of time they have left.

They land on a lush forest world, the Green, whose air is full of a particulate dust that makes for a beautiful reflective haze over all things. We learn that Damon can remove a gem from dangerous, living deposits found in the Green, and although they quickly find one worth plenty to change Cee and Damon’s fortunes, it’s not enough. They’re in the Green because Damon has been hired by mercenaries to dig up a cache that will make everyone rich.

In comes Ezra (Pedro Pascale) and Number 2, also diggers in the Green who stumble upon Damon and make clear that life in the Green is not just dangerous because of the elements. Without getting too deep into spoilers, the remainder of the movie is 2 parts Western, 1 part survivalist, including meeting settlers and the mercenaries.

This movie does all the things I love about smaller sci-fi. It lets its characters live and act in the world authentically, not explaining every step of the way but instead just showing us what crude space living is. The tension is there— can they get back on time, will they get back with their bounty, and what will it take out of them— but so is plenty of time to appreciate the beauty of this world. The contrast of our Earthly, almost fairy-like forrest with the gas giant that dominates an open vista above, we get the best of first contact/colonist/new world space exploration alongside the Ridley Scott-like set design for all things industrial, including extensive use of simple machines with clean lines, dirty nylons, small single-purpose screens, ruggedized parts, and a foreign glyph for writing.

What can I say? I love Westerns and I love this kind of low budget sci-fi about a dirty, industrial, hard space. Prospect was a movie that was made for me.