Nik Graf: How to Learn Something New? Plan to Teach It!
Tags: react, reactnative, techtalks, conference
Published: 2019-09-30 06:52:24

### We talked to Nik Graf, a freelance web developer passionate about GraphQL and ReasonML, a co-creator of [DraftJS Plugins](https://www.draft-js-plugins.com), and an organizer of the very first [ReasonConf](https://www.reason-conf.com) in Vienna.

*Nik Graf is a freelancer living in Vienna, an avid open-source contributor, teacher of several web development courses on egghead.io, and an organizer of ReasonConf, the latest edition of which takes place this October in the US. In this interview with React Advanced, Nik shares his passion for GraphQL and ReasonML and opines on the challenges of organizing web development conferences and meetups. Nik gives a talk and teaches a workshop at [React Advanced](https://reactadvanced.com/?utm_source=blogpost&utm_medium=devto&utm_campaign=interview) in London, Oct 24-25.*

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/2ym9qqkvjc3yfzq0rm2z.gif)

#### Hello Nik, and welcome to the interview with React Advanced! How did you end up in web development?

I wanted to become an industrial designer and study it at the university of applied arts but didn’t finish my application on time. Back then I thought a semester of computer science wouldn’t do any harm. Once I built my first program I was hooked and decided to go with computer science.

#### What do you do now and what interesting projects do you have in the works?

I’m a freelancer/consultant helping various teams with a strong focus on React and GraphQL. In addition to that, I organize ReasonConf and co-founded the [Reason Association](https://www.reason-association.org).

{% twitter 1121421021737902081 %}

#### Describe the conferences/meetups you’re organizing. Why did you decide to organize events around React and ReasonML?  

I’ve been organizing the [ReactVienna meetup](https://www.meetup.com/ReactVienna/) for over three years. This was always a lot of fun, and we have a good mix of locals and international speakers. I never wanted to create a React conference as there are already plenty in Europe, but doing the very first Reason conference and getting a lot of great minds to Vienna was intriguing enough to do it. 

#### What’s your involvement in open source?  

In the past, I have worked on various software like [Belle](https://github.com/nikgraf/belle), [DraftJS Plugins](https://www.draft-js-plugins.com), [Polished](https://github.com/styled-components/polished), [Serverless](https://github.com/serverless/serverless), [Reason Docs](https://reasonml.github.io/docs/en/what-and-why), and many others. Recently I have been focusing more on producing video lessons and spent less time contributing to open-source projects.

![Nik presenting a talk](https://thepracticaldev.s3.amazonaws.com/i/wf4qri4tcp5jk3c0geqe.jpg)

#### What’s behind your passion for ReasonML and OCaml? Why not TypeScript or any other statically typed language?

What I enjoy most when using Reason is that a lot of my code is fully typed without writing any type just by leveraging type inference. It’s less work, but still having all the benefits of full type coverage. That said, I think TypeScript or even Flow is a totally valid choice. Which one is the best option really depends on your team, the requirements, and where you want to go.

{% twitter 1131533430855016449 %}

#### Do you think React as a technology is deemed to supersede Vue and Angular? 

I don’t know. I haven’t used Angular in years and never really used Vue beyond a simple example.

#### In your opinion, what’s the most challenging part of organizing web development conferences?

For me, it’s just the fact that there are always some unknowns you can’t prepare for, and because everything is happening live with hundreds of people in the room, you have to make good decisions on the spot.


#### You have produced plenty of video courses on [Egghead.io](https://egghead.io). What do you enjoy about teaching?

To me teaching is one of the best ways to deeply explore a topic. It forces me to really go deep to find the best examples and explanations​ to transfer the knowledge.

Also in my day-to-day, I enjoy pair programming with less-experienced engineers, because it forces you to constantly explain concepts you already might have taken for granted. And the best part of it is when someone new to the field comes up with a fantastic idea you couldn't even think of.

#### Do you have any hobbies? What are they?

I enjoy being in the mountains. So every winter I try to do as much skiing as possible.

{% twitter 1147238096217563138 %}

#### Are you excited about the upcoming conference in London? What are you going to talk about and what are your expectations from the event?

When I'm not about to release something new, I usually struggle to find a topic I'm happy to talk about. My goal is to talk about something most people yet haven't heard or thought of.

For React Advanced I chose to talk about designing GraphQL schemas. GraphQL is becoming quite popular and but there are many gotchas you learn maintaining a GraphQL schema over time.

---

### [Reserve a spot at React Advanced Conference](https://reactadvanced.com/?utm_source=blogpost&utm_medium=devto&utm_campaign=interview)

---

*The interview was prepared with the assistance of Marina Vorontsova, a copywriter from [Soshace.com](https://soshace.com/). Soshace is a hiring platform for web developers: [hire a developer](https://soshace.com/jobs) or [apply for a remote job](https://soshace.com/developers ).*

***

## About GitNation

[GitNation](https://gitnation.org/#about) is a foundation contributing to the development of the technological landscape by organizing events which focus on the open source software. We organize meaningful and entertaining JavaScript conferences and meetups, connecting talented engineers, researchers, and core teams of important libraries and technologies.

Besides offering [single conference tickets](https://gitnation.org/#events), the organization also sells a GitNation Multipass providing discounted access to multiple [remote JavaScript conferences and workshops](https://portal.gitnation.org/multipass).