My name is David Lains. I’m a software engineer living in the San Francisco Bay Area. This is my software development blog. I currently spend most of my time on Thnkster, a learning platform that aims to help people learn more effectively.

I began teaching myself how to code BASIC when I was 16 on a Timex Sinclair 1000 plugged into the family television. Since then I've written C on an Amiga 500, Visual Basic, C++ and Java on various IBM Clones. I moved from desktop development to web development around 2001 because I felt it was the best way to develop multi-platform software. I am currently enjoying Ruby and Javascript on a MacBook Pro.

About This Site

My goal with this site is to spark my joy for writing code again. I've been developing software for a while now and lately it has seemed much less fun.

Of course, as you learn a skill deeply, the initial enthusiasm and enjoyment wears off. I am hoping I can rekindle some of that early fun by returning to the basics, digging into some nooks and crannies that I find interesting and spending some time just analyzing bits of beautiful code.