Giving my first technical talk, the good, the bad and the ugly
Tags: graphql, reactnative, techtalks
Published: 2019-10-10 09:52:43

# Giving my first technical talk, the good, the bad and the ugly

I recently had the opportunity to give a talk at a local meetup, [South West Mobile](https://www.meetup.com/swmobile/). I have always feared public speaking, especially to my peers and so set myself a goal this year to try it out. I am discuss the wild mental journey I went through. I appreciate that speaking at a meetup to 45 people is not a big deal some but to me it was huge.

It all started with CFP (Call for papers) that I had forgotten I had submitted. Once the confusion was cleared up and I had remembered that I had submitted it, I was confirmed. I began planning the talk. The title was "GraphQL in React Native with AWS AppSync".

## A quick rundown of tech

React Native is a technology we use a great deal at Gravitywell. The speed of development it allows is fundamental to producing the ever-important [MVP](https://www.gravitywell.co.uk/insights/how-an-mvp-can-help-your-next-project/) or prototype. It allows us to iterate quickly and easily. But then when we are ready to push the full version it is able to scale and provides us with all the functionality we need to produce enterprise-grade mobile applications. In one of our recent, I give a quick (~2 mins) overview of what React Native is:

{% youtube 2vh6VxFP9X4 %}

We really appreciate the benefits of producing an MVP and getting your product on the market as quickly as possible. If you are interested in learning more about MVPs then check out some of our other articles:

- [How an MVP can help your next project](https://www.gravitywell.co.uk/insights/how-an-mvp-can-help-your-next-project/)
- [How to build an MVP](https://www.gravitywell.co.uk/insights/how-to-build-an-mvp/)
- [Minimum Viable Product (MVP) - 5 of the best examples](https://www.gravitywell.co.uk/insights/minimum-viable-product-mvp-5-of-the-best-examples/)

GraphQL is another favourite of ours. GraphQL is a query language that allows you to describe the data we want. I discuss further in the following video:

{% youtube -5iSRc3XYPw %}

The final piece from the title is [AppSync](https://aws.amazon.com/appsync/). AppSync is a managed service that uses GraphQL to make it easy for applications to get exactly the data they need, give the ability to pull data from multiple data sources in a secure manner.

Thats a brief overview of what I discussed in the talk but this article is about the process and my mindset.

## Preparation

To prepare for the talk, I started with an app, that I would use to help show how great the React Native, GraphQL combo is. I was not concerned that the example was slightly contrived as it was perfect for showing how they work together without confusing things with a complicated app.

The demo app code can be found [here](https://github.com/jim-at-jibba/sw-mobile-graphql)

I then created the slides. Initially I started this with [MDX Deck](https://github.com/jxnblk/mdx-deck) but this proved to time consuming and I was not able to get the hot reloading working correctly so I resorted back to Google slides. This was definitely a good choice.

I started with setting out the basic structure and then added content where needed. I had heard that you should have roughly 1 slide a minute. The talk was meant to be about 20 mins and I was doing a live demo so I settled on 15 slides.

## The big day - ABSOLUTE TERROR

![Terror](https://media.giphy.com/media/NTSPYhlghwX5e/giphy.gif)

The day arrived and although I knew I was prepared, I was terrified. My stomach was in knots, I could not eat and I struggled to think straight! But before I knew it, it was 7pm, I was set up and ready to go. I was second on the bill. The first talk was on accessibility, it was very polished and the speaker had ~50 slides. This immediately made me nervous. I only had 15. Was my talk gonna be 3 mins long? Was I gonna get laughed out of the room?

Then my turn came.

Thankfully, I was not laughed at. The talk got a few laughs and I did not pass out. My live coding demo did break, right at the last moment (I later found it was due to miss spelling a GraphQL type) but that was fine. On the whole it felt like it went ok but I had already decided in my head that I was not gonna do another. I had found the whole experience really stressful and time consuming. With my mind made up, I went home happy that I had done it.

But the next day, the recording of the talks was released. I tentatively watch my session and I was pleasantly surprised, it was much better than I was expecting. On the outside I was as calm as a Hindu cow but I knew that on the inside I was screaming! But this gave me the strange feeling that I should do another. My wife said the same thing! She was trying to get me to sign up to do another one straight away.

Now I am confused, should I do another? Will it be easier? Will it be less terrifying?

All of these can be answered with "probably" and I wont find out until I try again. But that is where I have left it. I am still deciding if I want to put myself through it again even though it will probably be easier!

Watch this space.

## A few takeaways

- If like me, you are scared of public speaking. Start at a meetup with a topic you know really well. It should make it a little easier. I was really lucky that SouthWest mobile were a really lovely bunch of humans.
- If you are not first, try not to worry about what the previous speaker is doing. Generally your talks will be very different so it should not really matter.
- If you do decide to do one and it bombs, try not to worry about it, don't listen to people if they are being critical. Stuff like this happens all the time. At least you stepped up and gave it a go. There is a fantastic quote from Teddy Roosevelt that puts this better than I could

> It is not the critic who counts; not the man who points out how the strong man stumbles, or where the doer of deeds could have done them better. The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood; who strives valiantly...

Here is the recording and slides from my talk:

{% youtube se9NT8zIfvw %}

[Slides](https://speakerdeck.com/jimgbest/graphql-in-react-native-with-aws-appsync)