Year-End Discount: 10% OFF 1-year and 20% OFF 2-year subscriptions!

Home/Blog/Conversations with the World's JavaScript Developers

Conversations with the World's JavaScript Developers

Jul 16, 2019 - 10 min read
Alex Ortiz
editor-page-cover

This article is an interview with Alex Ortiz, a former Developer Advocate at Educative, where he finds content creators for our interactive learning platform.

He recently spoke at an international JavaScript Meetup, a gathering of cutting edge JS developers.

Today, we’ll hear from Alex about what has JavaScript developers excited and where they the language is going in the future.


Learn JavaScript from industry experts

Brush up on your JavaScript skills with hands-on practice.

Ace the JavaScript Coding Interview


My work involves speaking with developers throughout the world while looking for great content creators to contribute to Educative. With so many great potential authors out there, my work leads me to talk with a lot of expert developers.

What’s great about my conversations is that they span both developer tenure and geography: from junior front-end engineers and full-stack developers, to 20-year veterans of embedded systems, all from over 20 countries across the globe.


What front-end languages and tools are developers talking about?

The languages that have most come up are plain JavaScript and TypeScript. On the framework side, there’s been a much longer list, including Angular, Ember, Express, Gatsby, Next, Node, React, React Native, and Vue.

Related tools and applications were Jest to test the Vue framework; Firebase for connecting their JavaScript applications to a cloud-hosted, Realtime Databases; and Redux to manage state.



How is JavaScript used today?

Here are a handful of the use cases I’ve encountered, all of which will be familiar to JavaScript developers:

  • Building backends with Node are important because JavaScript itself has been a front-end language but Node expands beyond that
  • Creating Web3 blockchain applications with React as the interface between existing Web2 architecture and Web3 backbones like Ethereum
  • Visualizing large volumes of data using libraries like P5
  • Creating responsive or static websites with Gatsby, GraphQL + Gridsome, or React + Next
  • Building mobile business applications with React Native that are optimized for high traffic & high API call volumes
  • Functional programming in JavaScript with the Ramda library
  • Building realtime apps and serverless applications

Why do developers like JavaScript?

Developers gravitate to different languages for many different reasons.

If you’re building backends for critical automotive applications, compilers for large social networks, or mobile front-ends for financial technology startups, the languages you learn and use will be very different, ranging from C++ and C# to JS. If you’re steeped in Kubernetes, you likely know Go. And if your dream is to build next-gen mobile apps, then Kotlin and Swift are on your menu.

Besides industry and type of software, other things like personal preference and how good the technical documentation for a language is matter too.

This could be its own language-spanning article, but here’s what JavaScript developers have mentioned as reasons they love it so much:

  • JavaScript is easy to grasp, easy to build things with, and easy to read
  • JavaScript has many frameworks, which gives developers flexibility in what they build and how
  • The JavaScript language and framework ecosystem changes rapidly. For example, React Hooks came out as a feature of React 16.8 just five months ago, yet it already offers some developers an alternative to Redux
  • As mentioned earlier, JavaScript can be used alongside graphics libraries like p5.js to represent huge amounts of information, which is attractive to data scientists who prefer working with JavaScript over Python
  • Since the V8 JavaScript Engine used in the world’s most popular web browser (Chrome) is “optimized as heck”, JavaScript runs very fast on devices used by billions of people.
  • JavaScript also handles things like event loop queues well, which creates fewer bottlenecks for web applications

So JavaScript developers love JavaScript for reasons that extend beyond the language itself: it isn’t just the ease-of-use, flexibility, and the freshness it affords its adopters – It’s also that because so much of the modern world’s technology stack runs well on JavaScript.

The language is a great choice for building in today’s web-connected era. This seems to be the synopsis of sentiment about JavaScript from many.


Keep the learning going.

Master JavaScript by learning hands-on, career-focused skills which allow you to excel both in the interview seat and on the job.

Ace the JavaScript Coding Interview


What JavaScript companion software are current developers using?


TypeScript

One developer I spoke to mentioned that because JavaScript was originally built so quickly—“it was made in a week”—it has always been a little rough around the edges. TypeScript they said, “tries to smooth out the rough edges of JavaScript”.

Additionally, TypeScript has become popular with advocates of type safety, as more developers embrace its importance for their code. And despite TypeScript being fairly new, released a mere six years ago, it’s already matured to a point that some developers are using it alongside languages like C# to build complex systems, to assemble offline tools such as command line interfaces, and to create advanced user interfaces and web apps in Angular, per some of the examples I’ve come across.


Elm

Some JavaScript developers have the opinion that Elm may someday be to TypeScript what TypeScript is to JavaScript today.

In this view, a functional programming language like Elm confers a huge working advantage to front-end programmers because it interoperates with JavaScript and can be used to build high-performance graphical user interfaces (GUIs) for web browsers, perhaps for lighter use case scenarios than one would use TypeScript and Vanilla JS for.

Based on this trend, it would be good to get a head start learning Elm today if you wish to build the front-ends of tomorrow.

On that note, JavaScript developers who want to take on that challenge might enjoy this tip: since Elm inspired Redux, learning Redux first may acclimate the newcomer to Elm faster.

Elm developers for the time being do face a challenge, which is that the Elm community is still very small at a time when communities in other languages and frameworks are experiencing rapid growth.


Vue

Speaking of community, adoption of the Vue framework is growing globally, with large hubs of users in China, Eastern Europe, France, and Nigeria, among other places. One reason Vue is growing so quickly is how easy it is to learn compared to other frameworks for single page websites and user interfaces.

The Vue community is also has a very inclusive, welcoming vibe that socially surrounds and engages its members both online and offline.

Some Vue developers also add that Vue is the easiest to work with than React and easier to learn than Angular making it the favorite framework for many developers. Developers who feel this way praise Vue for supporting advanced use cases and having functionality (e.g., lists) that some frameworks don’t have.


Gatsby

Whereas Vue is used to build single page apps and web interfaces, Gatsby is used to create static and responsive websites. Gatsby adopters are saying that they’re having a great time building static sites with low computational overhead, solid caching, and great performance. Gatsby also makes creating cross-browser progressive web apps easier for them.

Gatsby seems to be developing a reputation as a beloved JavaScript alternative to the excellent Ruby-based static site generator Jekyll.


What’s the top skill JavaScript Developers are looking for?

Last, and on a non-framework-related note, many developers will rightfully say that every programmer should be able to write testable code and be able to demonstrate that they can do so.

This is especially important for developers who aspire to lead development teams, because testable code leads to fewer problems that get in the way of consistent, scalable user experiences.

Generally speaking, it’s probably wise to invest time understanding topics like manual and automated testing, the tools to use for both, and how to write good tests with such tools.

There’s a growing need for JavaScript-specific unit testing and automated software testing knowledge. With the growth of JavaScript, more JS developers are advancing in their professions. As they become more senior, they are being gauged in part on whether or not they can write and ship code that can be continuously tested and improved.

Being able to use tools like Jest to test Vue apps, and state management libraries like Redux to make code more testable is important to JavaScript development work. JavaScript developers consistently said that industry peers need to know about general and JavaScript-specific unit testing, performance testing, automated testing, and QA to contribute efficiently to the team.

Now that we’re on the topic of advice from developers to developers, let’s see what my JavaScript contacts are learning about and think others should be too.



What do JavaScript developers need to succeed?

I’ve saved the best part of my share for last: what JavaScript developers throughout the world feel their peers should be learning in order to stay ahead and advance the art.

The first perspective JavaScript developers have shared is that if you’re switching from strongly typed languages like Java, Kotlin, or Objective-C to a weakly typed language such as JavaScript, it can be difficult to make the context-switch.

The learning curve for JavaScript can therefore be steep, even for seasoned developers. Invest the time into learning how to make that switch, and develop the mental models needed to make the most out of JavaScript. This is an important point for both newcomers to JavaScript and experienced developers looking for fresh challenges.

Some JavaScript developers also argue that their peers from non-traditional backgrounds who learn JavaScript without formal training in computer science will benefit from making time to learn formal language theory.

The view here is that developers who self-teach JavaScript at some point need to tussle with formal language concepts, after which they can push JavaScript to its true limits and advance further and faster in their programming careers. I like points of view like this that respect the intrinsic hands-on, learn-by-doing nature of software development while also acknowledging that conceptual theory can help developers transform what they’re able to do with their skills.

On a third and more tactical note, multiple developers have mentioned how important it is to understand and implement promises, which are objects you can program today that are capable of returning values in the future. Knowledge of promises—what they are, how they work, when to use them, and why they’re powerful—has been described as a must-have in every JavaScript developer’s toolkit.

Here are a few more examples of areas JS developers are finding valuable to learn about and recommend to others for further study:


In conclusion

The global JavaScript landscape is large, varied, and filled with talent, ideas, and approaches. Developers and engineers in this space have diverse perspectives on how to build applications for web and mobile, on which approaches and frameworks to use, on how to leverage related knowledge to create awesome things.

But every JavaScript developer I’ve spoken to is unified in this: they all have a passion for JavaScript itself, for continuous learning and experimentation, and for helping others grow along with them.

Happy learning!


Continue reading


WRITTEN BYAlex Ortiz

Join a community of more than 1.6 million readers. A free, bi-monthly email with a roundup of Educative's top articles and coding tips.