Yos Riady software craftsman 馃尡

Hi! 馃憢 I'm Yos.

I'm a software craftsman based in Singapore.

The Serverless Landscape in 2018

Learn about the most popular projects and product offerings in the Serverless ecosystem today! (Last updated 19 June 2018.)

Read on →

Best Practices for Building Great API Developer Portals

An API without proper documentation is no better than no API at all. Having a great developer portal is critical part of your API鈥檚 developer experience and is instrumental in driving adoption.

The user experience of a developer portal, the completeness of the API documentation, the ease with which you can search for the right solution for their needs, and the speed at which developers can start calling your endpoints are all fundamental to the success of an API product.

This guide documents best practices to having a great API Developer Portal.

Check out apidocs.gallery for a showcase of the best API developer portals!

Read on →

Schema-First API Design

This guide introduces you to the realm of Schema-First API design and how to get started with the OpenAPI ecosystem.

You鈥檙e building an API.

You develop a backend service with a few endpoints and deploy it to production. You publish several official language-specific API clients as well as an API documentation. The day ends on a happy note.

The following day, a new feature is being added the API. You have to:

  • Update the server implementation to support the new feature.
  • Update all client libraries (one SDK for each supported platform and language.)
  • Update the documentation.
  • All the above must be consistent with each other.
  • Also, the frontend team is blocked until your backend API is complete.

You let out a heavy sigh.

Is there a better way to do this?

Read on →

Getting Started with Serverless Go

Getting Started with Serverless Go

On January 2018, AWS Lambda released official support for the Go language.

In this guide, you鈥檒l learn how to get started with building Go applications on AWS Lambda with the Serverless framework. This brief guide consists of two parts: a brief section on the Go language and a hands-on section where you鈥檒l build a Serverless Go CRUD API.

The final application is available on Github. Just hit deploy!

Read on →

Why Serverless

First, let鈥檚 have a quick look as to how software was traditionally built.

Web applications are deployed on web servers running on physical machines. As a software developer, you needed to to be aware of the intricacies of the server that runs your software.

To get your application running on the server, you had to spend hours downloading, compiling, installing, configuring, and connecting all sorts of components. The OS of your machines need to be constantly upgraded and patched for security vulnerabilities. For servers to run well at high load they must also be provisioned, load-balanced, configured, patched, and maintained.

In short, managing servers is a time-consuming task which often requires dedicated and experienced systems operations personnel.

Read on →

Distributed Sagas for Microservices

In this article, learn about the distributed saga pattern, how it helps ensure correctness & consistency in microservices, and how you can use AWS Step Functions as a Saga Execution Coordinator.

This is an aspirational transport of a talk I gave on 鈥楽agas with Step Functions鈥 for an AWS meetup. Slides are available here.

Read on →

Serverless Authentication with JSON Web Tokens

Serverless Authentication with JSON Web Tokens

Let鈥檚 learn how we can use JSON Web Tokens to add authentication and authorization to our serverless functions! We will be using the Serverless framework.

The sample application is available on GitHub.

Read on →

Serverless Payments with Stripe and AWS Lambda

Serverless Payments with Stripe and AWS Lambda

In this tutorial, we will build a serverless payment application with Stripe and AWS Lambda.

Try the Live Demo!

The source code for both backend and frontend is available on GitHub.

Note that this is a bare-bones implementation and is not production ready.

Read on →

Be a Learner

The central task of education is to implant a will and a facility for learning; it should produce not learned but learning people. The truly human society is a learning society, where grandparents, parents, and children are students together.

In a time of drastic change it is the learners who inherit the future. The learned usually find themselves equipped to live in a world that no longer exists.

鈥擡ric Hoffer

In our pursuits we should aim to be a learner, not learned.

Excerpts from 鈥楽how Your Work鈥

Share what you love, and the people who love the same things will find you.

Here are my highlights from Show Your Work! - a book about sharing creativity.

Read on →
Going Serverless book

Interested to find out more about serverless? Going Serverless teaches you how to build scalable applications with the Serverless framework and AWS Lambda. You'll learn how to design, develop, test, deploy, and secure Serverless applications from planning to production.

Learn More →