AWS Lambda is an event-driven, serverless computing platform by Amazon. You can run your code without provisioning or managing a servers using AWS Lambda. You are charged only for the computing resources actually consumed, which is metered in the multiple of 100 milliseconds. Java, Node.js, C# and Python - are officially supported languages for writing Lambda. If you want to write Lambda in language not supported officially, it could be executed through a thin Node.Js wrapper. I this post, I will show how to write the Lambda in Golang. A Lambda could be executed in response to events like changes in the AWS S3 bucket(i.e. video, image, document processing), changes in DynamoDB table(i.e. data processing, analysis), in response to IoT device events, etc. A Lambda could also be exposed as an API to be consumed by your mobile apps, integration layer or clients.

Read More

Flux is an application architecture conceived at Facebook to solve some of challenges they were experiencing with MV* pattern. It’s usually mentioned along with React and was made public around same time, however it’s not really specific to a library or framework. Unidirectional flow of the data is the core tenet of Flux. Any data changes as a result of user interaction are propagated as action through a central dispatcher to the store. store holds the application’s state, business logic and it notifies view of any changes in the state.

Read More

Prototyping is a great way to engage users before even starting the development. Gaps in the requirements could be detected much earlier in the process and it encourages end users to share feedback. Recently I wanted to prototype an app, so I did some research about the available tools. There are plenty of prototyping tools available in the market, maybe even there is over supply of it. Choosing the right tool from dozens of available option could be hard.
Read More

If you have used ES6/ES2015 with Babel, you will feel right at home with TypeScript. Babel and TypeScript both are transpilers to generate ES5 compatible JavaScript, but TypeScript goes beyond that. TypeScript provides comprehensive typechecker and additional abstractions not part of the ECMA Script specification. If you want strong type system and features like generics, interfaces, decorators, etc. TypeScript is probably what you want to go with. Tooling and developer experience is also another aspect - typecheker enables tooling to give instant feedback on type mismatch or violations.
Read More

Here is the list of frequently used Vim commands. If you are an advanced Vim user, you might not find anything new. This list comes in handy for me as not all are committed to my muscle memory yet!

Read More