svelte-society / london

Repository for the London Svelte Society Meetup - Want to talk at the next Meetup? Open an Issue!
19 stars 1 forks source link

Robust API Design (in TypeScript) #44

Closed artfuldev closed 10 months ago

artfuldev commented 10 months ago

** Talk Title Robust API Design (in TypeScript)

** Abstract of your talk

An Application Programmable Interface (API) is the way we interact with a system. This is NOT restricted to web APIs, and is true of every software system. Most of the time, when we design APIs by writing methods and classes, we don't really think about what does it mean to have a function like this, or a class, or a module declared this way? But everything about an API means something, and serves to describe a system. What do we need to think about when writing our APIs? How do we differentiate between a good and a bad API? The world is unsurprisingly abundant in bad APIs - and worse implementations. In this session, we'll look at what makes an API good, and how to design them well.

Towards this, we'll take a relatively trivial problem and try to come up with a really robust API. Along the way, we'll tackle concepts like security, reduce failures or bugs, self-documentation, and performance - most of which are not even considered features of an API, but implementation concerns. Let's challenge this notion for an hour and see where it takes us.

Pre-requisites for Attendees:

Take Aways From The Talk: Anyone interested in writing good code, or writing good APIs that will be consumed by others will benefit from this session's discussion points. You will also learn that APIs can also solve several other concerns that are usually left to be dealt with at implementation level like security, error handling, and performance. In general, even if you disagree with the arguments of this talk, you will walk out a little more thoughtful about API design.

** About the Talk

[x] Things I need (Projector, etc): Screen/Projector, Audience 🤣 [x] Talk Length in Minutes (Approx): 40

Here's a sample talk (with Java as the focus instead of JavaScript)

** About You

[x] Your Name: Sudarsan Balaji (aka artfuldev) [x] Your Job: Solution Consultant @ sahaj.ai, I build bespoke software/technology solutions [x] Your Twitter Handle: theartfuldev [x] Your Location: London, UK

spences10 commented 10 months ago

Hey @artfuldev thanks for submitting your talk

As the talks for Svelte Society are Svelte and SvelteKit focused talks I'd like to know how this talk relates to Svelte

artfuldev commented 10 months ago

I see. I'll close this one then; I'll submit a more svelte-relevant talk.