Image for post
Image for post

The JS ecosystem moves forward at a break-neck pace. New paradigms, frameworks, and tools are released seemingly every day. React Hooks are a recent example of this, with many software houses dropping tools in a race to rewrite their codebase to use the new techniques. But what do you do if you’re in a small team, managing a non-trivial sized codebase, with limited time to invest in staying on the bleeding edge?

Deciding to adopt new technologies is not a straightforward process. It’s a constant battle of weighing up the pros and cons of emergent tools and technologies; considering both…


This article is part of a short series in which DataCamp’s Practice & Mobile Team describe the process of porting a mobile application to the web. In this second article, we go in depth on our experiences of working with react-native-web on a production application.

Image for post
Image for post
Practice on Web: our mobile app ported to web using react-native-web 🔧

In the first article of this series we described how our journey began with a proof-of-concept of the mobile app running in the browser. Getting this up and running involved following the official documentation for react-native-web. This involves setting up Webpack to compile a new web target from the mobile source code, and aliasing react-native…


Image for post
Image for post

As a junior developer, I was often fraught with insecurity and imposter syndrome with regards to my technical ability. I actually postponed the beginning of my career by at least a year due to these feelings.

Over the years these feelings have diminished somewhat, although not completely. Whilst not all of these points are related to confidence, if I had a time machine, I’d go back in time and tell myself these things. Ah, the power of hindsight!

1. You Don’t Need To Know Everything

Companies that are looking for junior developers are not looking for experts. If they were, the job advert would be for a…


This article is part of a short series in which DataCamp’s Practice & Mobile Team describe the process of porting a mobile application to the web. This first part covers the initial goals and motivation for the project. Stay tuned for parts 2 and 3 which go more in-depth on the technical aspects of the project.

Keen DataCampers may have noticed that we recently launched a new version of DataCamp Practice for Web. Beyond the slick new visual theme, many of the changes were technical improvements behind the scenes.

Image for post
Image for post
New practice mode 🚀

The technical improvements are designed to help us iterate and innovate…


I’ve recently been involved with a mobile app project that required frequent public releases from a master branch that contained a mixture of complete, stable features and other features that are still under heavy development. The latter features are in no shape to be shipped to the public — so how do you keep these out of the public release but readily accessible for development?

One potential solution, and one that my younger naive self might have attempted, would be to maintain a feature branch for each feature that was in active development, with a view to keeping these branches…


I recently shipped an app written in React Native which took advantage of automated testing. In this article I’d like to explore the approach I took in the hope that it might be useful for your own app projects. It’s worth mentioning from the start that there are many different approaches and there’s no one-size-fits-all solution. Although I don’t claim to have any ground-breaking new strategies, I’d like to share my recent experiences.

It Started With a Bug

I began my journey into automated testing strategy after learning about its importance the hard way. Back in 2011 I was working for a mobile game developer…

James Munro

Software Engineer at DataCamp

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store