Van Life Week 1

Part of my journey right now is living in this Van. I’ve had the van for a number of years and spent up to about 18 days in the van before, but this feels like a different test. I will be living in the van with a dog for several months. In the past I have pushed around pieces and found ways to sort of live by myself in the van. The day consists of moving items around each time I want to do something new. The goal now is different.

Here’s the task. Find a livable way in the van that doesn’t mean moving everything all day long. I’m working on it. I need to learn to cook in the van. The additional challenge of the trip is work on losing weight. I’m the heaviest I’ve ever been. It is time to change that. This means cooking and not eating out every night.

I’ve spent weeks in the Van before. Several of them. They are usually spent touring around from place to place and using the van as a more of a permanent structure tent. This approach leads to a lot of moving things around in the van and organizing for each individual activity, leaving stuff out on the counters and just general in van chaos. While I may have been calling this Van Life. It’s not really like living. It’s like Van-cationing (or vacationing in a van).

The goal with this trip is different. I am spending about 8 weeks living out the van as my primary residence. I won’t turn down a free place to stay, and I’m currently staying in one those, but the van is my home. This means organizing the van in a way to LIVE out of it. Organizing in a way that doesn’t require moving everything from day to day to find clean clothes or brush my teeth. If I catch covid, I’m going to quarantine in the van. The additional challenge, I’m bringing my puppy. Coco is getting used to this as well. So I need to be happy and I need to keep my puppy friend happy as well.

Here are some observations from week 1:

  • Organize my stuff based on what I need daily, weekly, or on special occasion. The special occasion stuff can be much harder to get to.
  • Find a good place to sleep that is flat. Flatness is worth it.
  • I always know where the closest available restroom is.
  • Luckily, my dog can survive in the van without creating chaos for several hours if needed.
  • I am watching much less sports and TV. I’m still happy.
  • I can be happy with much less stuff than I thought I needed.
  • Better items are better than more items.
  • CLEAN everyday. The van will never be fully clean, but do a little every day to keep it clean. It’s a war, don’t give up.

I’m sure there are many more lessons to learn. I still haven’t achieved what I consider ultimate van living: do through meals and coffee out of the van for an entire day without anything purchased externally. Don’t know if I’ll get there this week, but the time is coming when I will achieve this goal.

Year in Review 2021

Each year, at the beginning of the new year, I take stock of what happened last year and think forward about what I hope to accomplish this year. Usually this culminates with some sort of resolution to attack more of something.

This year is about less.

I do too much, I stress too much and I work myself in too many different directions. This makes it hard for me to fully realize success in any one direction. That’s why the next year’s goal: determine what is important and more forward with less, will be a real challenge for me.

Looking back at last year accomplishments

  • Officially move the East Coast as my permanent residence.
  • Really invest in my relationship with my girlfriend (who is really rather special).
  • Road trip across the country to attend my best friend’s wedding in California.
  • Do a less than 48 hour trip to the west coast to be a part of a great company party.
  • Attend the Newport Folk Festival.
  • Start a more regular group of Newport Acroyogis.
  • Start frequenting an amazing coffee shop and proceed to tell everyone about it.
  • Adopt a wonderful Puppy.
  • Do a sail delivery for the first time and get some real experience on the open waters.
  • Pack and leave for a couple months of Van Life.

This year has been chock full of wonderful events and wonderful experiences. There is a bunch more that I’m forgetting, but it has been a full year.

There are many great challenges coming up for me, so I won’t dwell on the past. Expect more exciting news upcoming.

Learning and Thinking

I’ve come to the conclusion that my brain has started to work differently in recent years. I have grown, and my writing on this blog has evolved. It used to be that most of the content was uniquely interesting tech pieces. Notions in C and C++ and ruby and tons of other things technical. Over time I’ve developed a more personal feeling to the blog and there has been much less tech. What has been tech-related is largely code-independent.

I miss thinking about code. I miss thinking in a way to give back to people. I’m hoping to change that slowly over time. The thing I’m talking about today is one example in that direction.


A little while ago a coworker of mine asked me about my thoughts on the second brain. I have to admit, I had NO clue what he was talking about. So I did some research. I found this course about creating a second brain. The course is $3000 or so.

I don’t want to speak directly about the value of the course, because I haven’t taken it. The notion behind the concepts is particularly interesting, and it turns out Forte Labs aren’t the only ones capitalizing on this idea. There are a bunch of other resources out there about creating this collection of information.

The premise: collect thoughts so they are easy to find; organize them in a way so that you can connect related concepts; spend time organizing them when needed.

While some people’s goal is to create something for them, my goal is beyond that. I would like to put together a library of thoughts and learnings that I can then pass on to friends, family, and others to share the information I have learned throughout my life.


Enter the program I use: Obsidian.md. The more I think about this, the more I have been living some version of this idea for years. Before Obsidian, I was using a program called Day One. I have also spent some time working in Bear Writer. Each of these programs has interesting parts for me, but Obsidian has recently won out because:

  • It is available everywhere I need it: Desktop, Phone, & Tablet
  • Has a good methodoly for inter-note linking.
  • Fundamentally uses Markdown as a way to edit notes, meaning I can include more complex HTML elements if I really want to.
  • Because it is an electron app and there is a lot of documentation on it, I can customize it as needed. I have even created my own theme.
  • It exports notes to markdown. This means I can still view the notes outside of the app if I ever need to.

Honestly, Day One started out more like this, but over time moved to a less Markdown version to make more people happy. Markdown is not for all, but as someone who is relatively technically inclined, it works pretty well for me.

It doesn’t matter what program you use. What matters is that there is a way to link related content and it makes sense to you. Many people use Coda.io, some use Notion, and others use Roam.


I’m still at the relative beginning of this process. I’ve started reading some about Zettlekasten and taking smarter notes. I’ve got a bunch of work to do on growing this knowledge base, but I’ve started. The idea is that our brains are not great at remembering specific details, but are good at ideas. How can we help ourselves be more thoughtful and offload the responsibility of memorization?

More to come on this as I figure it out.

Eilonwy in Memory

Over a year ago, I met a woman who is now my girlfriend. Along with that relationship came the relationship with her feline companion. This was not the first cat to enter my life, but there was a special feeling around this cat from the beginning. I am plenty fine taking my time for a pet or child to warm up to me, however this cat demanded attention in a way no previous cat encounter had occurred.

The cat’s name was Eilonwy, pronounced Eye-Lynn-Wee!, and she was a joy to be around. I put a lot of effort into getting her approval. I would put my hand in front of her face, and if she moved forward, I would pet her. If she stayed still, I would pull my hand away. Many times, I would wander behind her as she traversed the apartment. She would occasionally glance behind to confirm that I was following her. I was there ready to be of service if she performed the move I called the “burritto.” In this move, the cat would sit down and roll on her side exposing the side of her body for long pets. The rule was, if she burrito-ed, then I petted her, no matter what.

Over time we formed, what I deduced, was a pretty strong friendship. We were each others’ pals. My girlfriend was clearly her person, but I was second. Not a close second, but still second. While it took a significant amount of time for me to use the L-word with my girlfriend, that was not the case with the cat. The love bond for me was quick and there was a running joke about how quick I was to fall in love with a four-legged friend.

I started calling her “my queen” and that ran into some issues with the girlfriend. We settled on calling her my princess and I would end most phone calls with “Tell my princess I love her.”

She is also the primary reason I adopted Coco. The girlfriend looked at me one day and said, “You need a dog, she loves you, but not the way you want her to love you. You NEED a dog!” So she is responsible for my pet ownership as well.

In October of this year, my princess started getting a bit lethargic. She was peeing in weird places. While there were a lot of additional factors going on, we were concerned. We found out that she had a degenerative kidney condition which meant her time with us was limited. Despite being put on everything we could put her on, she eventually just stopped eating because it was too painful. She lost nearly half of her weight by the time the girlfriend made the decision to let her go. It was a very tough decision. We were both there as they put her down. She left this world knowing she was loved.

I will be forever grateful to the girlfriend and cat for entering my life and changing it in so many positive ways. I am now a partial cat person. While dogs will always be my first love, I can’t imagine my life without feline companionship.

Here are just a few of the things I will remember about the cat:

  • She loved warm blankets and would only really sit on us when we had warm blankets.
  • She was incredibly vocal and would meow when upset. I loved the sound of her meow.
  • She was a hunter, and despite the fact it would hurt the girlfriend, she would bring in her prey. I was proud.
  • She loved string, better than almost any present one could buy her.
  • She liked physical contact and especially belly rubs.
  • She loved being outdoors.
  • Even when she would get upset, she was very slow to bite or paw at people, she would usually just walk away.
  • She loved cheese and fish.
  • She hated traveling by car!
  • She enjoyed being held by her person and sometimes by me.
  • Boxes were her kingdom.

Stowe, VT : A quick Visit

Just returned from a quick trip to Stowe, VT to visit a friend up there. It’s probably been about 5 or so years since I’ve really been up to the state, but I used to spend a bunch of time up there as a kid. My parents would drive us up to ski in Killington, VT. Before the journey, I couldn’t be sure if I’ve ever visited Stowe.

Long story short, as I did the drive up, there were landmarks that I remembered, like the Ben and Jerry’s building. So, I’ve been there before, but probably not when I have been able to drive.

Places Visited and Reviewable:

While I didn’t have a ton of time there (I was only there like 36 hours or so), I did visit a bunch of places for food and shopping.

Ranch Camp

The first thing Forest took me to was a place called Ranch Camp for lunch. This place is awesome. I got the Local salad and it was just great. While I think they are more known for their burrito’s this salad was on point. They also had some beer from Anderson Valley (from California), which is one of my favorite breweries.

5 / 5 Stars! Would recommend.

Woodland Baking & Coffee

Wasn’t overly impressed with the espresso machine from first glance, not a brand that I recognized. This led me to choose a cold brew, and I was pleasantly surprised at how good it was. They use Carrier Coffee which apparently is relatively local.

The real win was the molasses buckwheat sugar cookie which was spectacular. I would definitely go back here again for more coffee and pastries.

4 / 5 Starts because I’m still somewhat on the fence about the quality of the coffee.

Black Cap Coffee + Beer

Super huge line for this place in the morning. Didn’t recognize their machine brand or the coffee. Also got a cold brew and chocolate croissant. The line was out the door to get the coffee and I probably waited 30 minutes for coffee that was just okay. Its location is great, it’s right in front of the big Stowe Church. I don’t know if I would return.

2.5 / 5 Stars

Stowe Sandwich Company

Got very high reviews on Yelp and I would confirm. Tasty place. I wanted one of the signature options, but they were sold out so I settled for the Thanksgiving meal. It was epic. Very tasty and the perfect amount of each. The one downside is that their hours were posted to 4 pm, but they closed early at 3:30 pm. Luckily we were there at 3:25 pm. Of note, the meal was pretty darn expensive. Two sandwiches, drinks, chips, and coleslaw for 41 dollars.

5 / 5 Stars, will return for more sandwiches.

Salon Salon Photo Spot

Woke up early on the one morning in Stowe and went here for photos. Was pretty and because it was sunrise and a little past peak leaf-peeping season, it was pretty empty. It was also cloudy, but I wasn’t terribly upset with the photos I ended up with here.

5 / 5 Stars, will return.

To Catch Next Time

Tiny House Hosted By AJ

This cute Tiny home is available on Airbnb and the view is amazing. You have your own private view of the water. Need to rent it for a night.

Sunset Rock

Another photo location to check out! Upset I missed it, but honestly, both days I was up there were super cloudy and rainy.

Vermont Artisan Coffee

Saw this driving up need to stop and check it out. Didn’t get to do it during their hours this trip, but high on my list for the next trip.

Thanks

Big thanks to KitLender for letting me check out their space and to my friend Forrest for hosting me around the town. His mom cooked amazing meals for us both nights and they were kind of enough to welcome me into their house.

Is it Time?

When I moved to Newport, I left a teaching process in California where was teaching about three to five Acroyoga classes a week. Covid was growing more dangerous and the idea of being close to other humans in the Acroyoga context didn’t seem like the best idea. As weather got better last year, I started outdoor jams, they were at pretty terrible times (9 am on a Thursday), but at least they were happening. These events had a mixed success. There were larger gatherings of up to seven people, but for the most part they were small groups of two or three.

But winter is coming and the weather is getting wetter and colder. This means that in order to really grow we are going to have start looking for an indoor space. There are increased risks with indoor spaces and I’m concerned about bringing in new classes. The area I’m teaching has a high vaccination rate, and there seems to be a lowering of cases. The concern is, though, starting Acroyoga is challenge. It’s a challenge in times where Covid isn’t a concern. Is starting a class now just too much? What if I start it and have to cancel it due to covid concerns? This is stuff I’m worrying about and I’m just not sure. Anyone have any good ideas here?

HTML Email

What some of you may not know is that much of the time at Salesforce was spent in the world of electronic mail (or email for short). Email is interesting and relevant today because almost everyone has it and communicates with it. It is an official form of communication.

What you may not understand is that the world of email is rather confusing. Basically, the email that comes over the wire is presented to you by your email client and where email gets very confusing is that there are a million different email clients. You probably use more than one. If you look at your email on a mobile device and on a computer that is two different clients. Then when you think about 3rd party clients and even GMail which renders in a browser, you have a client which is actually a client within a browser.

Because of the various numbers of email clients and security concerns, while the web has advanced, email was still written and styled like the early 2000s web. This means table layouts, no real stylesheets, and things like the center tag from way back in the day.

When I left Salesforce, I was hoping that my email wondering days were behind me. Well, for the most part, they are, but one common thing our clients need is to send emails to their clients. Bringing me back to writing stylized email HTML like the 2000s in table layouts.

Despite being very forward-thinking when it was first created, Gmail is usually the hardest client to style for. It’s not really their fault. They are presenting your email in a web browser and they have to be secure on their side of things. I don’t begrudge them thinking about branding and security. Still, things are starting to change and Gmail is now supporting some new things:

Gmail isn’t the only client, though. Because of this, much of the email stuff is still being done with tables. This is pretty challenging for those of us who have spent a bunch of time learning to do things right in CSS (though, to be fair, I’m not the best at CSS).

The association for me feels a bit like the Cobal programmers who were needed to fix all the old code used before the year 2000. Granted, we have better tools for conversion, but this does feel a little archaic.

A Good resource is:

https://www.udemy.com/course/html-email/ – a good course on how to work through HTML email.

I’m learning more things as I go through this process. So far, I’ve learned that not all divs are respected and also that you have to use a capital M in margin for outlook. You also cannot use SVGs in email, you must use PNGs. More lessons to come as I dig through this project.

12 Tips for People New To Software Engineering

I’ve been working in the field of software for over 16 years now. I’ve worked for small companies, and I’ve worked for large companies. I have recommendations of books to read (though I really should start a database of books). I gave a small talk a couple of days ago, and I shared some points to start with. Here are the points that I advocated:

  • Learn Version Control Software – This was something that was mentioned in college, but not really harped on. In the real software world, everything is done with version control. It allows you to track changes and see how the software is made. Learn it! Git is the most common, but there are plenty of alternatives.
  • Read Books Often – It actually doesn’t have to be books, it can be blogs and various other things. Find stuff to read and stay up to date as best you can. Software is continually evolving. As people are writing software, they are evolving the practice of software engineering. New stuff will make your life better and easier.
  • Understand Computer Architecture – At some point in your career, understanding how a computer works will help you. I have a story about a buffer overflow in Swift that wasn’t pushed back to ObjC that took me days to debug, and I was only able to solve by realizing the one device we were working on was a 32 bit device. Understanding architecture will help you with understanding performance trade-offs.
  • Everything boils down to text – Everything is text, somehow. Packets going over the internet are really just text in disguise. Websites are mde in text. Everything is text. Even images are really bytes, which is text for computers. If you spend enough time, you can understand pretty much anything. It’s all a matter of time, usually not a technical limitation of understanding a problem.
  • Have a website – This is advice from Being Geek from Michael Lopp. Create a website. It’s not super hard to do and will look good on your resume. It’s a great way to show potential employers what you have done.
  • Do side projects – They don’t need to production level projects, but doing side projects is a great way to play with technology and learn about various different things. Notice a trend here, keep learning if you want to be successful.
  • Learn as many langauges as possible – You don’t need to be an expert in all of them, but understanding the basics in many different langauges will help you. Being able to understand the advantages of one language over another is super helpful. Picking up a second langague can be hard, but if you have many languages under your belt, picking up a new one isn’t super hard.
  • Learn people skills and start networking – Even though writing software is a skill, most projects are too complicated for any one person to do. You will need to work with others. Learning to do this effectively will help your career. It might also allow you to find different opportunites that might peak your interest.
  • Learn the command line – I don’t care what system you are on, there is a command line under it. Learning the command line will help you be efficient and work on many different environments. Remember, everything is text.
  • Keep notes and records – You will forget what you wrote in less than 3 months. Notes and records will be your best resource for remembering what you are thinking. Plus you remember more of what you write down. So write things down in a way you will be able to look back on them in the future.
  • Become a power user of your software – You will spend your days using development software. Learn the keyboard shortcuts and all the tricks you can to be more effective in your software. It will help you save time, and that time will add up. It will allow you to spend more time thinking about the “what” of software.
  • Learn about testing – saving one of the best for last. Testing can be your best friend. It can help you from breaking something you already had working and ensuring your objects behave the way you expect them to. I’ve worked for companies that have done too much testing (way too much UI testing can slow down development), but if you have a question, you probably don’t have enough.

Puppy Life

Last week I brought a new member into my home, Cortado Covfefe Cohen, or Coco for short. She’s a wonderful lab and duck tolling retriever mix. While the first day was amazing and she is great, I get significantly less sleep these days. People say it’s like having a newborn, and technically she is a young child, but I didn’t get any onramp. Went pretty much from the adoption stage right into getting up all time and having my hand chewed on at every turn. Luckily, I have the financial stability to procure chew toys and that is my first stop this morning!

Seriously, while I lament the lack of sleep she really is an amazing puppy. She is kind to and friendly to strangers (we take a daily trip to the coffee shop where she needs to stay on her towel (she is not fully vaccinated yet) and greets everyone with a lick. She will then move over to biting. Hopefully, if I give her more chew toys she will learn what to chew.

Getting a puppy was not something I took lightly. I have been thinking about getting a dog forever. One of my roommates in CA had g/f with a dog that would spend time over our house. That was an indication of how much I wanted a dog. Once I came back to the east coast, I wanted a dog to keep me company and help with the space. When I started dating my girlfriend, even she suggested I get a dog because her cat was never going to love me the way that I loved the cat. This has been a long time coming.

Lastly, just want to mention Save-A-Lab Rescue. Their application process is a little more involved than most and the process to get approved is slow, but they are a great organization and helped me land a pretty perfect puppy. They rescue labs and lab mixes from the southern kill shelters and transport them to the northeast where they can be adopted. As someone who has seen dogs elsewhere who I wish I could have adopted but these other agencies wouldn’t allow me to adopt out of state, it is really great to have found an organization that is taking labs from an area where they are in excess to an area where they are in demand. E$veryone I met was really kind and in the end, the process to adoption, once approved, was very fast!

So, I’m sure there will be more tales of Coco coming up, but for now, we are both just adjusting to each other’s personalities and finding a way to live together. I’m so excited to have this bundle of joy in my life.

Starting a Career in Software

laptop with code

I’ve written some blog posts on getting into the business of software development before. Specifically this list of books on programming, yet I had a conversation with a young engineer the other week and it made me wonder what else I could do to people get into the field. Luckily for me, this young engineer has friends who are also in college and also looking to get some information on the field.

Now, I’m famous for saying, “I’m a Zack of all trades, master of some (really few).” The truth is, when it comes to software, I’m not a super-strong master of many. I get the conceptual idea of a bunch of it, and I’m really just an expert at seeing a problem and understanding the solution. What I’m good at is finding resources to help me and understanding what the resources tell me and translating that into solutions.

Still, when I was starting, I wish there were a bunch of things people had told me. I wish I had known that literally, anything is possible in the world of computer programming if you are willing to dig deep enough to figure out what is going on. I wish I had been told some good places to start learning. I wish I had been told that it’s okay to ask any question once, but it’s really bad to ask the same question over and over again. That it is disrespectful to go to someone with more knowledge than you without even doing a google search and bringing something to the discussion.

Anyway, these are some of the things I learned. I’m curious what the knowledge gap is between those of us in the industry and those just finishing college. To that end, I’m hosting a zoom call on Thursday, August 19th at 8 PM eastern. I’ll probably have some slides prepared, but I’m hoping that most of the session is about Q&A with questions people bring. All you need to do is join the zoom.