Q&A with the Contributors: Darren

Darren: Couchers.org frontend engineer

Couchers.org talks to Darren, a senior frontend developer, on the agility of the project’s development, how easy it is to join the volunteers team, and his motivation.

photo of mindy

How did you get involved with the Couchers.org project?

Darren: I initially found the project on Reddit after the paywall went up on Couchsurfing™. I found it was the most promising platform that had been proposed so far, and once I saw the messaging and direction it was going in, I was interested. I joined a weekly social event and realized I might be able to contribute some frontend development skills. Now, here we are. I’m currently one of the more senior frontend developers volunteering on the project. I had plans to get involved in the backend part of the project, but there’s actually enough work to do on frontend for now. In fact, we face a bottleneck when it comes to frontend work.

Does that mean you are usually recruiting frontend developers?

Darren: Definitely, we can always use more developers. Some of the more exciting and challenging stuff like Couchers.org communities is where we really could use extra people volunteering, simply because it is a huge and complex chunk of work. In particular, we are looking for more senior frontend developers to be able to get that work done more quickly.

We are always looking for people who are passionate about couch surfing, but also have a lot of frontend experience—and it can be a difficult combination to find. Up until around three years ago, people didn’t seem to really understand the value of frontend developers. More and more, it’s becoming apparent how necessary we are when it comes to developing websites and apps. It’s not just about information anymore; no one wants to install things anymore. They want to do everything on their browsers.

Is it relatively easy to join a project like Couchers.org?

Darren: Yes, I believe volunteer developers can join the project pretty easily. There’s always a clear list of tasks that need to be done. Once they get used to the way we work, it just depends on what their existing experience is. If they’ve been a developer for a while and aren’t used to our project, they tend to catch on quickly.

How much time do you spend on the project each week?

Darren: I spend anywhere from 10-15 hours per week on the project, and it doesn’t really feel like work to me. I was working even more when we were in lockdown, actually. To be honest, I’m extremely motivated to work on Couchers.org. In my paid job, I work full-time, and prior to this project, I very rarely did any coding outside of work. This is probably the first project I’ve worked on that isn’t purely career-motivated. I just really enjoy working on it.

What is your proudest achievement so far?

Darren I’m very impressed by our general progress so far, and not just in the frontend. We are all volunteers and can’t give full-time hours, but look how far we have come in one year. It’s really amazing. On a personal level, I was involved in a lot of rewriting when we changed from Vue to React. There was no codebase to work from, and I felt responsible for shaping the whole direction of the app, along with the other frontend developers. At first, we tried a popular framework called Redux and three months in we realized it wasn’t working. We made the key decision to go back to square one and create it again from scratch. It’s almost like we’re on version three of Couchers.org already. We thought the popularity of Redux meant it would make attracting new volunteers easier and be a good solution to manage state in our app. Eventually, we found it was too complicated to do what we wanted to do with it, and I’m so glad we decided to change. It was 100% the right decision.

Working on Couchers.org, have you learned anything that’s come in handy for your job?

Darren: There are some tools that I never get to use for my full-time job that I’ve been able to explore with developing Couchers.org. Working in a company, there’s always a more established codebase that you can’t experiment with. If you want to make any kind of change, you have to do a risk mitigation report. Given how frequently the frontend tools are being updated, by the time you've prepared the report and pushed it through a company's process, you’re already behind.

Our code is so new and it really feels like the cutting edge. Our development is agile and nimble. I feel like I’m using some of the new programs the way they are supposed to be used. Even a two or three-year-old app can be very difficult to update if you don’t stay on top of it. For example, when I say we had to rewrite our codebase completely when we switched from Vue to React, that was super fast compared to how much time it would have taken in an older, less up-to-date app. It took us about two weeks.

How are you ensuring the same won’t happen to Couchers.org? Will it be hard to keep up to date?

Darren: I’ve learned from my job the importance of updating the frameworks used in an app in smaller chunks regularly rather than waiting to update something that’s already three or four versions behind. Otherwise, you face the situation where the older version of the framework becomes unmaintained,it becomes an emergency to fix the codebase, and the project will be full of security vulnerabilities. I've set up a bot to check for updates weekly to make sure that scenario will never happen at Couchers.org.

Written by Emily. Published on 2021/06/19.

Want to submit to our blog? Sign up and let us know.