life-lessons.in

Adventures in Software and Life

Istanbul, Turkey

12 Things I Learnt While Teaching Application Security

In this blog I share some fascinating learnings and resources I stumbled upon while being a trainer for Application Security 101 at ThoughtWorks.

Gurpreet Luthra
— 12 min read

Understanding Open Source Software

In this blog I explain what Open Source Software (OSS) means, a little about licenses, business models around OSS and why developers should contribute to OSS. In the end I provide a link to a podcast on Myths and Truths in Open Source Software.

Gurpreet Luthra
— 12 min read

Reduce Computer Eye Strain with F.lux

I have been using f.lux for over 3 years. This blog explains how and why I use this application to help reduce computer related eye strain.

Gurpreet Luthra
— 2 min read

Mars Rover Problem in Scala

Priyank Gupta wrote an excellent explanation on decoding ThoughtWorks coding problems with Mars Rover in Java as a sample. I re-wrote the solution in Scala.

Gurpreet Luthra
— < 1 min read

When Money gets in the way of Life

A dialog between a Human and a Doctor goes like this in most parts of the world.

Gurpreet Luthra
— < 1 min read

Every Single Retro

The definition of a retro can be captured easily by this poster.

Gurpreet Luthra
— < 1 min read

The Velocity Conundrum

Velocity! It's a term that has potentially confounded, frustrated and perhaps amused Agile practitioners and customers alike at some point. It's a concept that can be quite helpful though, when used accurately as a planning and estimation tool.

Gurpreet Luthra
— 6 min read

Podcasts I Love

This post is a list of podcasts I have really liked. I will update this post as I find more podcasts I like, so do consider bookmarking it.

Gurpreet Luthra
— 2 min read

I moved to Jekyll

My earlier blog on Google Blogspot hit a 100,000 mark. But I didn't like the way my blog looked. So I moved to Jekyll.

Gurpreet Luthra
— < 1 min read

Understanding Vagrant Boxes and VMs

Vagrant does a lot of things auto-magically under the hoods, and most of the times people are left confused when they want to delete or add boxes or VMs. I will try and explain the relationships between Base Boxes, VMs, Virtual Box Instances among other things, in this post.

Gurpreet Luthra
— 1 min read

Installing ThoughtWorks GoCD Server and Agent on a Digital Ocean Droplet

Pretty simple steps for installing GoCD on a Digital Ocean CentOS droplet.

Gurpreet Luthra
— < 1 min read

Building Applications for Multiple Countries and Languages

In this blog I attempt to explain the various practices I have found useful while developing applications which are i18n enabled.

Gurpreet Luthra
— < 1 min read

Way To A New Project

You move to a new project. Its exciting. It holds promise of something awesome (usually). You are ready to dive. You want to learn things fast. You want to contribute. You want to become effective. You want to be welcomed. And then maybe, become invaluable.

Gurpreet Luthra
— 3 min read

Difference between sorted, sortWith and sortBy in Scala

Scala collections provide you three options for sorting: `sorted()`, `sortWith()` and `sortBy()`. This blog explains the differences.

Gurpreet Luthra
— 3 min read

Using Capybara and Rspec assertions in Page Objects

In this blog I explain how using Capybara and Rspec, one can implement the page object pattern in Rails.

Gurpreet Luthra
— < 1 min read

Vagrant: An interesting approach to setup development environments FAST!

If you have never heard of Vagrant, or are interested in understanding what is Vagrant, then this blog should be useful to you.

Gurpreet Luthra
— 1 min read

Recommended Readings for Lateral Dev Hires at ThoughtWorks -- An Unofficial Opinion

I asked a few of my colleagues on what they felt should be the minimum recommended reading list for Lateral ThoughtWorkers. This is what we all came up with.

Gurpreet Luthra
— 1 min read

POKA YOKE - Applying Mistake Proofing to Software

For years, automobile companies have utilized 'Mistake Proofing' as a technique for ensuring high quality, high speed manufacturing. This is also known as Poka-Yoke (in Japanese). This blog attempts to raise awareness (with examples) for the need of Poka Yoke in Software.

Gurpreet Luthra
— 1 min read

Web Vulnerabilities - Phishing, Cookies, XSS and CSRF

Helping you understand the basics of phishing, cookies, XSS and CSRF vulnerabilities

Gurpreet Luthra
— 1 min read

8 months at ThoughtWorks Pune

I joined ThoughtWorks, Pune in June 2011. 8 months ago. Previously I had worked with Persistent Systems, IBM Software Labs and Performix (a start-up). I would like to pen down my ThoughtWorks journey so far. Correction. Incredible journey.

Gurpreet Luthra
— 1 min read