Nisarga Patel

Software Engineer

Creating a Barebones Golang Project with Vendoring Via a Custom Setup Script

Often times one may want to create a barebones Go project with dependency vendoring. I recently created a simple script which allows one to quickly scaffold a Go project that uses the vendoring tool govendor. Prerequisites In order to use the script you must have already installed Go, if you’re on Mac and have Homebrew. You can easily install Go via brew install go. For install directions for other platforms check out the official Go docs. Continue reading

Conceptualizing a Simple Service for Crypto & Stock Market Alerts

Often times I have ideas for different types of products and services, many times I usually just write these ideas down to come back to them at a different date - this time I wanted to try something different. In this post I’ll be conceptualizing one of these ideas and how it would look like as product from both a backend and frontend design perspective. The idea This application is essentially a general purpose cryptocurrency and stock market alert service i. Continue reading

How I Scaffold a React Project

Scaffolding a project is perhaps one of the most important and common things to do during the early development stage. Depending on how a project is set up in the beginning can affect a project’s lifecycle and how things are maintained when the codebase starts growing larger. Using a boilerplate Most of the frontend React based projects I do start out by generating a barebones boilerplate using Facebook’s excellent and highly popular create-react-app. Continue reading

“One of the myths about the Internet of Things is that companies have all the data they need, but their real challenge is making sense of it. In reality, the cost of collecting some kinds of data remains too high, the quality of the data isn’t always good enough, and it remains difficult to integrate multiple data sources.”

Chris Murphy, Editor, Information Week

Creating Expressive System Diagrams in Draw.io & Lucidchart and the Importance of System Design

2018-05-31 software Nisarga Patel
Draw.io is an excellent free tool developed by Atlassian to allow developers and product managers to create expressive system designs. Draw.io supports the creation of UML diagrams, Entity Relationship diagrams, flow charts, and Business Process Modeling Notation (BPMN). In addition to this Draw.io supports a variety of icons in order to describe popular services contained within AWS, as well as other platforms. Describing a simple microservice in Draw.io Above is an example of simple rules microservice described with Draw. Continue reading

Encrypting Your Grandma's Password Using the Affine Cipher

One day you noticed your grandma was typing her passwords in a text document and referring to them when trying to log into popular websites. Wanting to teach her about the importance of security you decided to give her a brief introduction to cryptography. The first cipher you decided to teach was the affine cipher. Introduction to the Affine Cipher The affine cipher is a monoalphabetic substitution cipher, there isn’t really all that much to it and anyone can learn it given a few minutes. Continue reading
Older posts