I’ve been a software engineer for 8-9 years, but I’ve always had a strong interest in the non-technical aspects of life.
I left Romania for the United States at 14, with a very solid background in mathematics. So it only made sense that I loved and studied computers – which I did after graduating from Dartmouth College with a double major in Computer Science and Psychology.
The programming back then wasn’t ideal for me: C++ compilers, working in basement labs on DEC Alpha or SGI UNIX workstations. So I ended up teaching math in high school instead of getting a tech job right out of college, and I ended up doing a few other things in life, some of which had to do with coaching.
Ten years ago, however, I discovered web development, Agile, and Ruby: three factors in what seemed like a much better world for programmers.
First of all, web development is much simpler than what I studied in my CS major.
There I studied subjects such as algorithms, operating systems, networks, data structures and artificial intelligence – all important and wonderful, but not necessarily what I wanted to do.
So there was a window for me to get back into programming and become more of a software writer than an engineer, like David Heinemeier Hanson. the dish.
Second, Agile development is a truly humanistic approach.
Define the work, then take what is reasonable. Measure speed? Maybe, but don’t hold yourself and the team responsible for unreasonable delays. Pair program. Insist on testing to feel safe.
Agile really is the magic that gives me hope that I can be involved in programming for the rest of my life.
Eventually I fell in love with Ruby on Rails.
Ruby is a language expressly created to delight developers, with its beautiful syntax and many helper methods. Working with Rails is also a pleasure, with its conventional approach to configuration (which is also an agile principle).