Evergreen.ink

I’m super excited to announce the public beta period for Evergreen.ink, our interactive fiction authoring tool. If you already are familiar with interactive fiction and/or Evergreen.ink, feel free to just head on over and start creating! If you want to know more, read on!

Interactive fiction is content that falls somewhere between a game and a story. It reads like a novel, but the reader gets to help determine the flow and content. One of the most common forms of interactive fiction is “choice-based interactive fiction.” If you’ve ever read any of the classic Choose Your Own Adventure books, then you’ve read interactive fiction. This is the foundation of what we have built with Evergreen.ink.

We have already launched a series of titles that are built using the platform. While working on the content for these titles, we realized that the authoring system we were building is something special, and that it has utility outside of our internal needs. We decided to open up the platform more broadly. The user experience of Evergreen.ink is incredibly intuitive, but it belies the powerful Sapling scripting engine that hides just under the surface. Authors can write either narrative content, or they can dip into the more advanced features and add truly intelligent behavior to their stories.

The platform is targeted toward choice-based interactive fiction intended for reading on mobile devices. This is a recognition that the mobile reading experience is one that will reach the broadest audience, and as a result, the default playback and reading experience is tailored specifically for small-screen devices.

We have begun work on a native viewer as well that we plan to launch it in Q1 2024 in the Apple App Store and Google Play. Our end goal is to help authors easily write interactive fiction stories and to eventually provide a platform for monetization. Already, content authored in Evergreen.ink can be played back in a web browser or via uploading to Itch.io where authors can monetize their stories.

Interactive fiction can sometimes seem like a novelty, but as a media platform, it has a huge amount of untapped potential. We hope that Evergreen.ink allows authors the freedom to stretch their imaginations, and we look forward to seeing what people create. This is just the beginning of the journey for the platform; we have a lengthy product roadmap and are excited about where we are headed.

Ok, that’s a lot of words, but since we’re talking about an interactive platform, how about an example? One of the first titles we created was a short take on The Picture of Dorian Gray by Oscar Wilde. It’s a quick, simple example of what Evergreen.ink can do. You can check it out here: Mystery at Gray Manor.

We hope that Evergreen.ink is useful to creatives that are interested in discovering a new platform. We hope that the tool fades into the background as authors simply do what they do best: create.

(If you’re interested in finding out more, please don’t hesitate to contact me or to join the Evergreen.ink Discord.)

Tools for a Distributed Software Agency – 2022

Silverpine has been a remote-first company since we started work over a decade ago. Our tools are critical to us performing at a high level, so we are constantly evaluating which ones we use. The last couple years I’ve posted about the stack we use and this is our updated list for 2022. Previous years’ versions of this post are here (2021) and here (2020).

The following list represents the software that powers our business. (I have intentionally omitted some of the lower level development tools like Xcode and Android Studio.)

The list is broken into three primary classifications: “Communication“, “Development and Design,” and “Operations and Finance.”

Communication

The heart of our business is Slack. I’m not sure how you could do remote work as a team without a tool like Slack. It’s easily the most important tool we use, and we use it constantly. Recently, some of our clients and peers have moved to Microsoft Teams, but for us, Slack just works so much better and is less clunky and onerous than Teams.

When the pandemic started, Zoom catapulted to the forefront of video conference calling because it was so simple and easy to use. Like many other companies, we made the switch and since then, it’s been a pretty solid workhorse for us. Just like Slack, however, some of our clients have moved to Teams for teleconferencing, so we definitely use it on a regular basis. However, Zoom continues to be easier to use and it has a better integration with Google Workspace which is also important to us. That being said, I can envision a future where we move to Google Meet because of cost and integration considerations, but for the foreseeable future, Zoom is our tool of choice for meetings.

As I just alluded to, Google Workspace is another critical piece of our infrastructure. It’s what we use for email, calendar/scheduling, document creation and (as of 2022,) file storage. We have been using Google for email since we started and over time, they have improved their offering and earned more of our business. Most recently, we ditched Dropbox for shared file storage and moved everything to Google Drive. I still feel that Dropbox is slightly easier to use than Google Drive, but the integration and cost advantages of Google Drive give it the clear edge.

Development & Design

This year we (like many other agencies) consolidated many of our design tools into Figma. In past years, our design stack was Sketch + InVision + Zeplin, however this year that has all collapsed into Figma. This has made us more efficient, and from a cost and licensing perspective, we’re actually saving money. Now that Adobe has acquired it, we sincerely hope they don’t ruin what an amazing product Figma is, but we’ll keep a close eye on it.

If you asked me to name another cloud based source control platform, I’m not sure I could. Github has a monopoly in this space, but fortunately, they seem committed to continually improving and expanding the feature set. As an example, because of changes and additions to Github’s “Actions” tools, we have fully moved our CI (continuous integration) processes to Github. If you are still using another platform for CI, I strongly recommend you take a look at what Github is doing here.

There are plenty of Git UI tools, but after using Tower for the past six years, we feel like it’s the best option for agencies like Silverpine. It is available on both Windows and Mac, and the Tower team is constantly rolling out new versions and features that add real quality of life improvements. Additionally, their licensing scheme is very cost effective and works well for our model.

This year marked a change for us for our choice of defect tracking software. After resisting Jira for many years, we finally took the plunge and it turns out that Jira is….ok? It definitely still has warts and isn’t perfect but Atlassian has made enough changes over time to make Jira a palatable choice. I still feel like there is a big opportunity for someone to shake up the world of defect tracking but for now, Jira is what we’re using.To me, using Jira feels like the old saying “Nobody ever got fired for buying IBM.”

We started using Miro a little bit in 2021 to do shared planning and strategy design, but really got into the groove with it this year. It’s a very easy to use shared whiteboard app and falls into that category of “it just works.” Every time I use it, I always think that I should use it more. I’m a very visual thinker, and with remote teams, Miro really helps me communicate what my words often can’t. If you haven’t tried it, I highly recommend checking it out.

Operations & Finance

We use Quickbooks for our finances. It’s what our bookkeeper and our CPA want us to use. It’s fine.

I know that many people use Harvest for time tracking, but we actually use it for sending and tracking invoices to our clients. Harvest has a pretty robust set of invoice functionality that I think gets overlooked because of their focus on time tracking. This is another tool that just works the way you expect it to, and we don’t have to think about it.

When we first started using Gusto, I couldn’t say enough nice things about the platform, and all things considered, it’s still a quality payroll system. They are quick to integrate state and local tax changes and using them to pay contractors is incredibly simple. I do worry that they’ve grown to a size that their customer service has suffered a bit, but hopefully they can iron out the kinks as they continue to grow.

We use Squarespace to host our company website. If you need to get a decent website built quickly, it’s not a bad route to go, but given that we build websites for other people, I don’t love this. I expect this next year, Squarespace will be dropping off this list.

A Year of Holidays

If you follow Silverpine on any of the major social media platforms (LinkedIn, Twitter, Instagram, Facebook) you may have noticed that our logo tends to change around many of the holidays. For the past year, our amazing art director, Nicole Levin, has been creating mini-masterpieces that help us celebrate many of the holidays that Silverpine employees observe.

There are a couple reasons why we did this. The most obvious one is that it’s fun! It’s been a very rewarding exploration of using our logo in the context of a wide variety of different types of holidays. I’ve had many people internal and external comment about how much they enjoy them. However, we also did it as an exercise and demonstration of the intention of the Silverpine brand.

These holiday logos are a demonstration of the meaning behind the Silverpine brand. I’ve always envisioned it as an amplifier for other brands — Silverpine augments and amplifies, but never gets in the way. This logo exercise is a small attempt to illustrate that concept.

Nicole and I have already discussed adding more holidays to the mix over the next year, and perhaps even tweaking or improving some of the past ones. Have a favorite? Let us know which ones you like! My favorite is definitely the Halloween spider pictured here.

Silverpine – The First Decade

It was 10 years ago this month that Silverpine was founded. Neither Ryan nor I had a plan when we set out. All we knew was that we wanted to build iOS and Android apps for other companies. We had been creating applications for small form factor devices for a long time, and we knew we could use that to help others — the “app revolution” was underway, and we wanted to be a part of it.

In the early days, we took every project that came our way. It was just Ryan and me, and we needed to find a way to pay the bills. Looking back now, it is clear that we had no idea what we were doing, and we were very fortunate to survive. But in some ways it was easier. When I would explain to people what Silverpine was, I would just say “We build apps for other people.” It really was as simple as that. Me. Ryan. Coding away on projects that we had probably vastly underbid. I honestly have no idea how we made it.

But we did make it! And one of the more important things we did during the early years was to develop a few core principles that run through the company today:

  1. We wanted control over our schedules, and we wanted to have the kind of flexibility that neither of us felt we had in our previous jobs. We both had young children, and it was important for us to be able to be present in their lives. In a practical sense, this meant that we were committed to being a remote-only company from day one. After nearly two years of a global pandemic, most people look at that aspect of our company as a positive benefit (and it is!). But before COVID, when I had conversations with potential clients I could often sense in their replies that they doubted we were a “real” company. I don’t know that we ever lost out on any projects because of this, but I felt that it added a level of suspicion to our conversations. Nonetheless, we held fast to our dedication to remote work.
  2. We wanted to work specifically on mobile technology. We didn’t want to just be developers for hire; we wanted to use our expertise in the projects we worked on. Over the past 10 years we have had many different people approach us about building websites, and we almost always turn them down, particularly if there isn’t a mobile component to it. There are thousands of development shops that do web development, and that’s just not who we are. Ryan and I have been developing software for small form factor devices since the early days of the Palm Pilot. We have a deep understanding of the implications and limitations of designing and developing for mobile devices. Silverpine was and is a mobile-first company.
  3. We didn’t want to grow the company unless we absolutely had to. When I left my previous job, I managed around 200 developers across several different sites, and I hated my life. Some days, I would be on the phone from six in the morning until seven at night. With Silverpine, neither Ryan nor I wanted that type of lifestyle. We knew that one of the primary factors influencing our work/life balance would be the size of the company. We have known many different people and companies in the consulting space that have grown quickly, only to burn out and eventually fold. We wanted to avoid putting on wax wings at all costs. I know that some people equate growth with success, and those people will probably never understand the concept of constraining growth as a tenet, but I can honestly say that I haven’t regretted this choice for a second.

Even with these principles as our foundation, we have grown, and we have changed, significantly. The funny thing about building things with your clients is that if you do great work, you end up repeatedly working with them to the point that things become more like a partnership. And the one thing you absolutely need in a partnership is trust. At about the five year mark, we realized that our business started changing — our clients had developed an immense trust in us. As a result, we started taking on more and more of the breadth of work in our projects, including the strategy, scoping, and the UX/UI work. Without realizing it, we had pivoted to become an agency rather than a “dev shop”.

As we continued to evolve into an agency, we began to help our clients at a much deeper, more meaningful level. While we were still building great apps, we now found ourselves consulting on strategy and designing the user interfaces that we would be building. This is the point where we were able to truly showcase and highlight our understanding of user experiences on small screen devices.

It’s also the point where we had to confront growth at a much more significant scale — instead of just being a company of developers, we now had to become a company of developers, project managers, designers, QA, etc. We had to evolve to be able to take on all phases of a project from conception all the way to production. This forced us to do some difficult soul-searching. At the end of the day, we had no choice but to bring on more people, and I’m incredibly glad that we did! Silverpine now has some of the most wonderful folks that I’ve ever had the pleasure of working with. Across all of our disciplines, we’ve been incredibly fortunate to grow with people that share our company values.

And this brings us to the end of our 10th year — where we find ourselves today: Silverpine is an amazing group of 20+ people working 100% remotely with some amazing clients and partners. We are an agency that is involved in the many different aspects of strategy, design, and development. We are an agency that creates interfaces that make people smile. And ultimately, we are an agency that helps our clients bring value and meaning to their products and brands in ways they never imagined.

I feel incredibly fortunate and privileged to have had the experiences and professional relationships these past 10 years. If you’re reading this and you’ve worked with us or along side us, please know that I am deeply appreciative of the time that we have journeyed and will journey together. For me, it has always been about people and relationships. Without our people, Silverpine would be nothing.

So where are we headed? I truly don’t know! I have some guesses, but I have no idea if they are correct because the one thing I have learned is that I don’t know nearly as much as I think I know. However, just as we did for the first 10 years, I’m sure that we will continue to change and evolve.

Thank you.

Do You Need A Website?

TLDR; Yes you need a website, and we just redid ours! Check it out! https://silverpine.com

Many years ago when Ryan and I were bootstrapping Silverpine, we ran very lean. I’m talking bare-bones lean. Some would say that we ran on a shoestring budget, but quite honestly, I doubt we would have justified the purchase of a shoestring at that point.

During that period, we were starting to develop our client base and define who we were as a company, and we didn’t give much thought to our website. At that point, if I remember correctly, we hadn’t acquired the silverpine.com domain, and we only had silverpinesoftware.com. The site was comprised of a single web page that said “SILVERPINE SOFTWARE” and it had a mailto link at the bottom (for anyone that was so impressed by our invisibility that they might want to contact us.) Our focus was on mobile development at that point, so we figured that it didn’t really matter if we had a web presence.

However, our clients noticed. I clearly remember receiving a phone call from our primary contact at Very-Large-Corp. We had just signed a contract with them to do some work and had jumped through the hoops to get Silverpine into Very-Large-Corp‘s invoicing system. He called me because he was very concerned that if our invoices showed up on reports it might prompt people to investigate us a bit. If they wanted to know more about us, they surely would go look at our website. If they looked at our website, they would question whether we were an actual company. This could potentially raise some red flags with people within Very-Large-Corp and cause him (and us) trouble. I remember his words very clearly: “I need you to put up a real website as soon as possible.

So, I spent that weekend creating a very bland website that was mostly populated with stock images. It wasn’t pretty. It wasn’t amazing. But it was a real website. We were somehow legitimate at that point.

However, time marches on and as it does, websites age and look crustier and more stale with every passing day. To that end, we decided that in 2020, we would give silverpine.com a facelift and in the process better showcase who we are and what we do. Conceptually, Silverpine embodies something that is clean, sleek and entirely complementary. The design of the website is intended to demonstrate this visually and show how a variety of strikingly different designs all work with Silverpine. The intention is that we enhance and improve existing brands and products and hopefully it’s now clear, visually, how we do that.

What we have today is amazing and I love it, but it’s also just the start. While we very often cannot talk publicly about many of the products we work on, we can add more content that continues to explain and expand on what we are and how we do it. The new website design provides a framework and a roadmap for adding and enhancing this. I’m extremely excited to grow the content so keep checking back from time to time, and if you haven’t already, go take a look!

Oh and if you wanted the answer to my question? Yes, you need a website.

Apple’s Native Apps Trojan Horse

Apple announced SwiftUI at WWDC 2019 and like a lot of people, I mostly ignored it because I knew that it would need some time to mature before it would be ready to use in production software. I also wasn’t sure if it would “stick” in terms of long term, viability. However, after another year of development, it’s clear that Apple has made a commitment to it. The newly announced Widgets and App Clips as well as enhancements to WatchOS definitely push developers hard towards SwiftUI.

SwiftUI appears to be Apple’s answer to the React programming movement, and given the similarity of SwiftUI to React, I expect a lot of the response will be positive. However, I believe this to be a bit of a Trojan Horse in relation to cross-platform development. As I mentioned earlier, apps that want to use some of the newer technologies, like Widgets, have no choice but to use SwiftUI. For an app that’s written natively in Swift, this will be easy. Apps written in cross-platform environments will have to work a lot harder.

Eventually, Widgets and App Clips will become expected functionality for many apps, and while most cross-platform solutions already support mixing native code with non-native code, the level of complexity of supporting these will essentially require developers to be fluent in multiple languages and multiple development environments. I’m very curious to see how these cross-platform development communities respond and adapt to this change because over time this will erode one of their key advantages.

The Silverpine 2020 Bracket Challenge

The NCAA basketball tournaments (men’s and women’s) are something that I look forward to every year, and we always have a Silverpine bracket competition which is a lot of fun. Obviously, those didn’t happen this year which was very disappointing, but understandable given the situation.

Not to be deterred though, we went ahead and held our own competition this year during our weekly video call with the whole company! The way it worked was that I would say two items over the call and then everyone would write their pick on a piece of paper and hold it up to the camera. For example, I would call out “elephant and giraffe” and everyone would have to write down either elephant or giraffe. The pick with the most votes would move on to the next round until we were able to crown a 2020 champion.

The first round competitors were largely paired together like “Cake vs Pie.” However once we proceeded to the second round, people had to choose from several non-sequitur items like “Seattle vs Taylor Swift.” Some of the pairings had clear winners while others were decided by a single vote, and it was a nail biter down to the end. The Final Four consisted of Dog, Blue, Pie and the ultimate Cinderella pick – Aquarium. In the championship, though, Dog easily coasted past Pie for the win and became the Silverpine 2020 Bracket Champion.

The whole “competition” was a lot of fun and a nice little stress relief, but it also was a great way for the team to get to know each other better. (We found out that one of our employees is a huge pie fan, and that another prefers C++ over dogs!) I actually think we might make this an annual event as the feedback on it has been overwhelmingly positive. Below is the completed bracket. No comments on my terrible handwriting!

bracket.jpg

 

Video Conferencing Platforms

How many calls have you been on where the video glitches or freezes? Have you ever seen an attendee list that shows the same attendee multiple times? How many calls have you been on where people are “dropped” halfway through the meeting? How many meetings have you been a part of where at least one person spends the first 5 minutes asking “Can you hear me?” It seems like anyone who has used video conferencing has at least one horror story to share.

I’ve been working remotely for 10+ years and I’ve used more conference calling applications than I can count. After a decade of doing this, I would have thought that many of these problems would have been solved, but the sad truth is that there is still no perfect solution.

Over the past few years, three platforms have emerged as the primary platforms for video conference calls: Zoom, WebEx and Google Hangouts. Each platform has its own set of pros and cons, so it’s important to understand what each of them brings to the table. If none of these work for you, I’ve also included a list of alternatives to consider.

Caveat: One of my biggest complaints about all video conferencing software is that it is inconsistent from user to user. My analysis of these tools is based on numerous calls and years working with disparate groups of people across various geographies, but even with all of that, your experiences may differ from mine.

Zoom

Pros: Zoom is currently enjoying a bit of front-runner status in the video conferencing wars. While Zoom does require you to install software on your computer/device, the installation is fairly painless, and it’s simple to get up and running. The experience also seems to be consistently solid across Macs, PCs, iOS and Android devices. I’ve never had any issues moving between platforms on Zoom. When larger groups are trying to connect, it is rare to have stutters and freezes and this is what really makes it shine in terms of a video conferencing product.

Cons: One of the biggest downsides to Zoom is their history of abusing customer privacy and security: example 1, example 2, example 3. While the company does seem to respond to each of these in pro-active, responsible ways, it does make you wonder why it keeps happening. Zoom also requires you to install software on your computer or device, so that is one thing to keep in mind.

Pricing: The free tier for Zoom is fairly standard as you can host an unlimited number of meetings with up to 100 people. The biggest limitation is that calls are limited to 40 minutes. If you need more than that, Zoom is actually the most expensive option with their Pro plan starting at $14.99/user/month.

Google Hangouts

Pros: Google Hangouts is the video conferencing portion of Google’s G Suite product line. (Technically, the name is Google Hangouts Meet but that’s a terrible name.)  In terms of ease of use, Hangouts can’t be beat: if you use Chrome as your browser, there’s literally nothing to install. Essentially, anyone with a Gmail account and an open browser can start a conference call which makes this incredibly accessible. It’s largely because of this lack of barrier that it has become so popular.

Cons: One major downside of Hangouts is that it often gets confused if you have more than one G-Mail/G Suite account. Many times I will try to launch a call that my work email address was invited to only to be told I can’t access the call because it decided to use my personal account. This can be incredibly infuriating because it usually requires logging out of all your Google accounts before it will work.

Hangouts technically works on browsers other than Chrome, but most people (including me) report having significant technical issues trying to use it with Safari. If I have a Hangouts call, I will copy the call URL and paste it into Chrome where it works flawlessly.

Finally, the biggest downside of Hangouts is that it does not seem very performant with larger groups. The video will frequently glitch and freeze if there are more than 3 attendees. Of all the platforms I have used in the past few years, Hangouts is definitely the worst performing when it comes to actual streaming.

Pricing: Google Hangouts is hands down the cheapest option. As mentioned previously, anyone with a Gmail account can use their free plan, and the paid plans start at just $6/user/month.

WebEx

Pros: For many years, WebEx was the gold standard of conference calling and it made deep inroads into corporate America. Today, WebEx is approved by IT infrastructures everywhere which means it can generally be used regardless of network firewall rules. It also means that corporate customers often have the software pre-installed and configured by their IT administrators. If you need to have conference calls with corporate entities, WebEx will definitely be a familiar entity.

In general, WebEx performance is solid. It requires installation of a native application so its streaming quality is generally on par with Zoom’s quality and I’ve never had issues connecting large groups.

Cons: My biggest complaint about WebEx is that it frequently loses audio connections for wireless computer headsets. While this isn’t the end of the world, it seems like such an obvious, fixable problem that I can’t believe WebEx continues to let it be an issue. I don’t ever seem to have these issues with any of the other platforms so I don’t understand why WebEx can’t address it.

The other complaint I have about WebEx isn’t necessarily with the WebEx platform itself, but with how certain corporate IT groups have configured their installations. For example, we have one particular client that is a large Fortune 50 company and every single time I have a WebEx call using their account, I have to reinstall the software on my Mac. WebEx is the software that we use at Silverpine, and we never have any of these issues, so I know this is somehow related to their installation.

Pricing: In the past, WebEx was the most expensive of all the platforms which would have put it into the “cons” category, however competition from Zoom and others have forced WebEx to introduce better priced, low-end plans. They recently updated their Free tier to include up to 100 participants with no time restriction, and their Starter Plan is a fairly modest $13.50/user/month.

Alternatives

If Zoom, Hangouts or WebEx just don’t work for you, there are quite a few alternatives, and a few of them are even familiar names (Skype, GoToMeeting and FaceTime.) Definitely give them a try, but as mentioned earlier, each of them is going to come with its own set of pros and cons.

Summary

Given the state of video conferencing software, I am unfortunately unable to make a single recommendation. Hopefully, as more people start working remotely the increased competition will force video conferencing companies to continue to improve their platforms and someday I have just a single recommendation. That being said, of the 3 most popular platforms, I would recommend Google Hangouts based on price, I would recommend Zoom based on streaming quality, and I would recommend WebEx if you need to connect with larger corporate entities.

 

 

Remote Work Preparation

A friend of mine was talking with me earlier this week about his struggles and frustrations now that he is suddenly (and unexpectedly) in a remote work situation. He isn’t sure what tools to use. He isn’t sure how to structure his time. He isn’t sure how and when to communicate with his co-workers, and he has found that his home-office isn’t set up in a way that’s conducive to the kinds of work he needs to do. In short, he is unprepared for remote work.

I’ve been working remotely for over 10 years now and I often forget some of my own struggles with it. There have definitely been lessons learned along the way, and the one thing that I know for certain is that working remotely requires preparation. I think that some people think that you can just plop down at your kitchen table and declare yourself an expert at working from home, but that couldn’t be further from the truth. The reality is that the transition from a traditional office setting to a home office can be tricky.

Prepare Your Work Area

It might seem obvious that one of the major contributors to your success at working from home is having a good place to work, but it’s amazing how often people neglect setting up a proper work area. Not only should you create a dedicated space that is your “work zone” but you should make sure that it is conducive and constructive to you staying there for periods of time. For example, do you have ample supplies like pens, pencils, notebooks, stickies, etc close at hand? Do you have a comfortable chair? If you like listening to music while you work, do you have good headphones? Is the temperature set to a level that won’t put you to sleep but won’t freeze you out? Do you have proper equipment for video chats or conference calls?  In short, is your work area prepared for the kind of work that you do?

The Wirecutter has a great list of products that they have compiled for creating a full time space to work at home. I agree with most of their suggestions, and I highly recommend making sure that a nice, comfortable chair and/or standing desk are at the top of your list. (If you’re wanting a second opinion, Business Insider also has a reasonable list).

Prepare Your Tools

Similar to preparing your work area, it’s also important to make sure you have the right tools to work remotely. I’ve written in detail about what tools we use elsewhere, but there are some fundamental things that everyone needs like video conferencing and chat applications. However, once you’ve settled on your tools, particularly your teleconferencing tool, I cannot stress enough how important it is to do dry runs with them before using them in real meetings. Make sure that your audio and your video are set up properly. Do a test meeting with a co-worker or friend. You definitely don’t want to be the person who makes the group wait for 10 minutes while you try to get your connection working.

Prepare Your Routine

One of the major challenges of working from home is that when you work from home, you’re always at work. As anyone who has worked from home knows, it’s far too easy to let your working hours drift into your non-working hours. It’s incredibly tempting to let yourself take one more peek at your email or work on one last task for your project.

To prevent your work life taking over your home life, it’s helpful to develop a routine for yourself. This isn’t to say that your routine needs to be rigid because one of the most amazing aspects of remote work is the flexibility it provides. However, it is very important to establish a general flow and process to your day. This will help you set limits for how long you work during the day, and it can encourage you to stay healthy both physically and mentally. Having a routine can help ensure you’re getting exercise and that you’re taking breaks and that you’re making sure to eat lunch. (Skipping lunch is actually a common problem when working from home!) All of these things will make you more productive, but without a routine, it can be very easy to neglect them.

Preparation and Kaizen

Finally, my biggest piece of advice for working remotely is that even when you think you are prepared, you should always be on the lookout for how you can improve. In an office setting, there are many people from HR managers to facilities managers to direct line managers who observe employees and try to come up with ways that they can be more efficient. When you work remotely, none of these people will be around to offer suggestions to you. No one will tell you that your keyboard is too close to your monitor. No one will tell you that a nice plant next to your monitor will improve your mood. No one will tell you that you should take a break for lunch. It’s up to you to identify areas for improvement and to become more efficient. The Japanese term “kaizen” refers to continuous improvement, and it is a concept that remote workers really should embrace in relation to their work environment. As a remote worker you should always be looking for ways you can improve, whether it be in your schedule or in your tools or even something as simple as the kind of chair you are using.

If you are one of the many people who suddenly find themselves facing the prospect of working from home, please understand that while this offers many amazing advantages, it is absolutely not as simple as it sounds. To get the most out of the opportunity, make sure to take some time to think about your workplace, your tools, and your time.

Finishing Software Is Hard

For the last couple years, my 15 year old son has been slowly building a gaming computer for himself, piece by piece. For his final computer component, I agreed to purchase it for him if he could accomplish one very specific task. Namely, I wanted him to recreate an iOS app that I had written years ago as I was learning iOS development. He has a natural inclination to programming and has dabbled with many different coding challenges so he figured that it wouldn’t be too difficult to do.

For the most part he was correct. He started working on it last summer and was able to quickly get a large chunk of the functionality working. He was fairly excited about it, but then I started explaining some of the other things he needed to do before submitting it:  an about screen, a splash screen, cleaning up the layout for the various phone screen sizes, etc. What happened next was predictable. His enthusiasm waned and he pretty much stopped working on it. He filled his time with other things and his almost-finished computer sat staring at him in his room.

On more than a few occasions he tried to negotiate a smaller task, but I kept explaining to him that the point of the exercise wasn’t to see if he could program (I knew he could.) But rather, could he finish something hard and complex. As any seasoned developer knows, finishing software is difficult and always takes longer than you expect. It’s also not a skill that people learn in school. It’s something that can only come with time and experience.

During this period of extreme social distancing, our kids haven’t had school and the transition was so sudden that teachers didn’t have time to create assignments or lesson plans for students while they are out. As a result, our kids find themselves on some bizarro extended spring break where they can’t see anyone. The boredom is real and families are trying to figure out what to do with themselves. The silver-lining for me is that I have a little more time to spend with my family and I finally convinced my son to sit down and finish his app.

The amazing thing is that as soon as he finished and submitted to the App Store, he found a sort of “second wind” where he wants to keep working on the app and add more features and functionality. To me, this is the magical reward of finishing software. When you finish something you feel such a sense of accomplishment and get a boost of energy and enthusiasm. It’s a feeling that I love and is difficult to explain to someone that hasn’t gone through a tough finishing exercise. I’m very happy that I was able to share this with my son.

Oh, and if you’re curious about the app he built, you can find it here:

https://apps.apple.com/us/app/doodle-dots/id324487932?ls=1