A few months ago, I started a security disclosure program for my employer. It is definitely beneficial for us. I’d like to share some of our experiences running a security disclosure program.
Breaker 101: The Experience So Far
Breaker 101 is a course conducted by Cody Brocious. It aims to teach you the basics to web security. I’ve always been curious about security. When the opportunity arose, I signed up without hesitation. It is not cheap though. But I thought the course would benefit me. It already did.
Three Tips for Managing Complexity in Node.js Projects
After working on various Node.js projects, I want to share three simple tips which helps to reduce complexity. If you are building an Express or Restify project, ususally the framework does not tell you how to structure your application. You can put everything in one mega file, or you can(and should) extract different functionalities out.
The Library Shopping Checklist
Library shopping is like second nature to developers. A library refers to packaged code like Ruby gems, NPM packages or Python packages. Along the years, I do these evaluations unconsciously. I thought it’d be good to put this mental checklist down in writing.
Thoughts on Kinesis Freestyle 2
I recently purchased a Kinesis Freestyle 2. I usually type in a text editor. I bought it because it is ergonomic. As my primary editor is the infamous Emacs, I’m wary of contracting the dreaded RSI. Emacs users tend to be susceptible to it. In the months before this, I was conscious of the strain in my fingers and wrist after a long typing session. Disclaimer: I am not a RSI sufferer though.
A Quiet Desktop
Can you work in a noisy room? No. Noise distracts. When you are working, your are mentally juggling multiple objects all at once. Just one slight noise and everything drops. Luckily all the companies I worked at had quiet working places. Quiet working places are usually the norm. It is item number 8 in the famous Joel Test. External noise is easy to identify. We even have laws against noise pollution. Everyone agrees that it is harmful. What I find that we often allow noise to pollute our desktop without second thoughts. What do I mean by noise?
First Impressions of Leap Motion
For those who don’t know what Leap Motion is, take a look at this youtube video.
I got the Leap Motion hardware and SDK by participating in their developer program. I was the lucky few that was selected. They informed me through email. A few weeks later, the Leap motion device is mailed to me, free of charge. It came in a dull black cardbox box. Within the box lies the device, a cable, and a card bearing a message from the founders.
How to Learn Enough Web Design to Not Look Scammy
I am a web developer by trade. I am not a designer. Like most backend engineers, I make things work. I don’t usually bother with making things pretty. Many people commented that I cannot design. I agree. I never had a penchant for design.
Customizing Your Emacs Eshell Prompt
If you use the shell in Emacs and you are not already using eshell, convert to eshell now! Eshell is the best terminal emulator available in Emacs. If you need convincing, please read this article from Mastering Emacs. Using grep in eshell is the killer feature for me. What the Master Emacs article didn’t elaborate is how to customize your eshell prompt. I’m going to share how to add colors and show the Git branch on your eshell prompt. This is how my prompt look like currently.
First Impressions of the Ansible Configuration Management Tool
While working at Action.io, we decided to use Ansible for managing our deployments. Previously we were using Opscode Chef. We felt that Ansible suited our needs better. Let me illustrate why.