Journey into Javascript: My First-time Speaking Experience at a Tech Meetup
Tags: speaking, techtalks, javascript, community
Published: 2024-01-15 12:51:21

Stepping into the [EdinburghJS Meetup](https://www.edinburghjs.org/) as a speaker marked a unique experience for me. Whilst I have spoken at conferences before, public speaking is still very much something I'm gaining experience and confidence in, and I'm learning that speaking in different environments requires different approaches. This particular venture presented an extra layer of challenge — I had little prior experience in developing with JavaScript! Yet when invited to speak at a tech meetup for the first time, in a programming language I wasn't familiar with...I surprised myself by saying yes! 

In this blog post I'll share my reflections and tips from the journey, from the unexpected invitation to speak, to creating my first Javascript Maps SDK geospatial application and to my experience of attending and speaking at the meetup.

## The Introduction

It's funny how apparently unrelated events can lead to opportunities. I don't use [Twitter](https://twitter.com/Geolocoder) (well, X now I guess) very often, but when I do I'll occasionally post about some dev event or another, or look out for developer content to follow. In this case, I had started following the [Scottish Technology Club](https://twitter.com/scottechclub), when I received a message from the organiser, Jamie. He noticed from my previous posts/profile that I was involved with developer outreach and asked if I gave talks on my work. 

![Twitter conversation](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hzm4qhm8i4aolujaj05z.png)

We then had a phone call, and despite my admissions that I wasn't in fact a Javascript developer, was invited to give a talk at the EdinburghJS Meetup to introduce Esri's [ArcGIS Maps SDK for Javascript](https://developers.arcgis.com/javascript/latest/) (aka Javascript Maps SDK). As I'd always been curious about the EdinburghJS Meetup, and had been looking for more opportunities to get involved in the local developer scene, it was a really timely exchange and a great opportunity to accept. 

What really helped me accept the invitation was how friendly the chat was, knowing that my experience would be accepted despite my fears, having an idea for the format ahead of time, and that we had talked through good options of what to speak at an introductory level.

### Tip
> You never know where sharing the things you are doing for your work may end up. Remain open and curious to opportunities, and have conversations if you're not sure something is for you - you might surprise yourself and find ways to help you continue growing and learning in areas you are interested in! And meet some lovely people whilst doing so!

## The Preparation

Truth be told, I didn't initially know how to start this talk. I'm a developer, not a sales person, so found myself worrying my talk might come across too pitchy. Plus the fact my Javascript was extremely rusty and I hadn't worked with the Javascript Maps SDK before. I thought it would therefore be fun to roll with a pet project to combat that.

I had an idea in mind - when I'm working from the office, I want to understand where is most efficient to meet a friend coming from the other side of the city within a lunch break. I therefore wanted to build a simple geospatial application (find the code for this on [my GitHub](https://github.com/Rachael-E/edinburghjs-meetup-walktimedemo)) that could calculate walk times from each of our locations, and show the area of overlap that we could both reach within that walk time. 

Additionally, I also wanted to count how many points of interest we'd be able to see within that area - for this example, I used a [dataset of tree locations](https://services.arcgis.com/V6ZHFr6zdgNZuVG0/arcgis/rest/services/All_Edinburgh_Trees/FeatureServer/0) from City of Edinburgh Council.

![Map showing a polygon and tree locations](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gbngssyd36mg9qraoomg.png)

I spent a lot of time reading through the [ArcGIS Maps SDK for Javascript doc](https://developers.arcgis.com/javascript/latest/get-started/) to learn how to get started, and soon had a map displaying locally on my browser. What I really liked about the Javascript Maps SDK was how many widgets were available to display common map elements - for example, a [basemap gallery widget](https://developers.arcgis.com/javascript/latest/sample-code/widgets-basemapgallery/) (allowing the user to switch between basemaps) was super simple to add in to my app. I had been anticipating having to build one myself, which had been a worrying thought as time was ticking by rapidly.

![Code snippet and image of basemap gallery](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zmgywe5eob6q5nmk2lmd.png)

I also really enjoyed designing the look of the app using the ArcGIS Developer's [Calcite Design System](https://developers.arcgis.com/calcite-design-system/), a library full of beautifully designed icons, web components and UI elements.

![Code snippets and screenshot image of UI element](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e3zb0wl8qr6sropkyzsb.png)

As well as the official doc, I also looked up [code samples on Codepen.io](https://codepen.io/search/pens?q=js.arcgis.com), as the samples provided by the doc didn't always show me the workflows that I was looking for.

Presenting at the meetup gave me a great excuse to really get to grips with an unfamiliar language and library. It was a great way to push me outside my comfort zone, and as a result grow my skills and increase in my confidence in picking up unfamiliar tech. And I really enjoyed building it (check out the gif below to see the final thing)!

![Gif of a geospatial mapping application in action](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/88lxprv5puww0mtaj6ku.gif)

### Tip
> So my tips for presenting in a language you aren't familiar with are - just get started! Find something you are interested in building (that'll make everything so much more enjoyable), and work through some get started guides in whatever medium works best for you. Hunt around for other code examples - it's likely the thing you want to do has already been done before, so save yourself some time by looking round and then use examples as your launch pad!

## The Talk

I was nervous to turn up to the [EdinburghJS Meetup](https://www.edinburghjs.org/) itself with me having little JS experience and not knowing the community well. However it definitely helped chatting with the organiser before hand, and I also invited along a friend and a colleague for moral support. As an introvert social support is so reassuring, and it was nice to also see some friendly faces in the crowd from some other speaking events I'd done! 

I was welcomed immediately walking in however, and all my fears were proven wrong. The organisers walked through all the set up with me which really helped put my mind at ease. I was still nervous when 90 or so developers started filling the room, and who knows how many more watching on livestream! 

It helped that I had practiced the talk before hand, both alone and with colleagues before hand, so when it came time to speak I was prepared and knew it would be ok! If you'd like to check out the talk you can find it [on YouTube here](https://www.youtube.com/watch?v=bwpkFsfIOQg).

![Author speaking in front of an audience](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5irhlfjxso1br1je4sfb.png)

After the talk I had lots of lovely chats with other folks there, so it was a really great way to get to know more local developers. 

### Tip
> Practice your talk before hand, either alone or with others. This will give you more confidence and allow you to enjoy public speaking more! Also invite friends or colleagues along - it's a real morale boost knowing you have friendly faces in the audience. Stick around after your talk, as you never know what conversations might arise and what opportunities may come from them - new meetup friends hopefully! 

## Summary

I feel very lucky that my first time talking at a tech meetup was a really great experience. This was in large part thanks to the friendly and approachable nature of the organiser (shout out to Jamie!) but also a good opportunity for me to pick up more skills in Javascript and the Javascript Maps SDK that I wouldn't have otherwise had a good excuse for. 

Presenting at a tech meetup has increased my public speaking skills and allowed me networking opportunities with local developers. It also gave me the unexpected benefit of enabling me to expand my web app building skills and therefore my confidence in coding and coming up with creative projects. 

Overall it was a really great experience and I wouldn't hesitate to recommend any aspiring speakers to consider speaking at a tech meetup in future! 

P.S. If you're based in Scotland, you can check out the [Scottish Technology Club](https://www.scottishtechnology.club/) to find a curated and up to date list of active, local tech meetups.

![Author presenting tech demo](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dgbmnuteut2is2bsowpg.png) 

_Credit: Blog header image from https://www.jamiemchale.com/journal/2023-11-22-edinburgh-js-maps-and-testing_