I started programming in GWBasic on our PC during primary school, and when DOS 5.0 came out bundled with qbasic it really started taking off.
I sold my first program (a colour mixing demo) to my physics teacher at age 17. By that time I was playing with interrupts and bits of assembler for writing pixels/changing pallets and using the mouse.
I became a part time web developer in 2001 and stayed with the same company throughout most of my college years. There I learned (server-side)javascript, dhtml and t-sql. Before long I was writing the shared libraries for the whole company.
In 2010 I learned Sharepoint, and developed several applications in Sharepoint - mostly for automated deployment, so code-based configuration and behaviour.
Not long after that I found out about Asp.Net MVC and Entity Framework, and that has been my primary development environment since.
At that time I became a consultant and since then I've seen a lot of different companies, technologies, development philosophies, coding styles, bad practices and even some good ones.
In recent years I've felt more and more that the focus of most development should be on maintainability and thus readability, since I've felt that the success of custom built software seems to me to be mostly dependent on those qualities. In my opinion testability of code goes hand in hand with maintainability, partly because both get greatly improved from proper SOLID development.
I'm currently attempting to conceive and refine design patterns for tackling some problems that seem to be common for pretty much all (web)development with a certain degree of complexity. Some of these patterns solicit and support the DDD philosophy. If I can get my colleagues to use my patterns, I will find a way to share them with the whole community.