Welcome to our continuing series of Code Project interviews in which we talk to developers about their backgrounds, projects, interests and pet peeves. In this installment we talk to Iris Classon.
Who are you?
I am that girl in your class that just wouldn't stop talking. Also known as Iris Classon, a hyperactive and very passionate developer, distance runner and mountain biker with a love for weightlifting and fitness.
I've just joined the Telerik team as a Technical Evangelist and I'm extremely excited about that! I called my mum and dad at 2 am trying to explain to them what and who. Now they think I work for a phone company and that I will blog about some weird religion. That's what you get for calling in the middle of the night I guess. Note to self: call back and explain.
I split my time as Technical Evangelist at Telerik with working as a software developer at Dotnet Mentor. In contradiction to the name we work with several languages, and it is a very creative and free environment so we get to work with some pretty cool projects, play the guitar, mini-ping pong and fly mini-helicopters.
My background is in the nutrition, fitness and private healthcare industry and I am a nutritionist, registered dietitian and international licensed personal trainer and instructor. A year ago I made a drastic career change and started studying programming, and I have never looked back.
What do you do?
With just a year of programming I can't really offer any bragging here, but I have worked on a horrible web forms project that about 30 other junior developers had lost some sleep and hair over. This was when I was doing an internship, and the other developer and I almost cried when we realized that pages would take about 15 minutes to load. We were asked to increase the timeout. We indexed instead. I had a blast, the other student that I was pair programming with was a stable backend programmer who took the time to teach me a lot about programming.
A project I am currently working on is a proof of concept ASP.NET MVC4 application with a REST API where I get to define the requirements myself as a domain expert (the application is a healthcare software solution for professional health advice) and do the work.
I am also involved in a single-page application (SPA) MVC4 project (written in C# and CoffeesScript), where we are using Serenade.js, Sammy.js, Less, Simple.Data and a tiny bit of SQL and whatever my colleague added during the night.
I mostly know what we are doing, but in the beginning it was quite overwhelming and I was so worried that I wouldn't be able to contribute. Coffescript looked like regex to me and secretly I had to do a fair bit of googling and asking.
A big passion of mine is WinRT development, and I have a couple of projects that I am working on. I really like working with both WPF and Silverlight, so Metro applications seemed like a natural progression for me.
I'm quite active in the community, and do my very best to learn, share and lend a shoulder to cry on when other devs find it hard to accept the changes
What is your development environment?
It's quite simple really, it's a cheap-range laptop I bought last summer after attacking my piggybank with a hammer. I was able to afford an AsusK53S and an SSD. Due to the Ruby developers at Dotnet Mentor I have also a MacBook that I am trying to befriend. It?s not working out for us as the Mac wouldn?t show me enough love and we are therefore currently separated.
At home a new server is up and running, nothing fancy at all, but it's better than the laptop. It will do all the dirty work using RDP from the other computer, as soon as my battle with the graphic card is resolved.
I run Windows 7 on my computer and use Visual Studio 2010, but usually work in virtual environments and use Visual Studio 2012 and run Windows 8. I am madly in love with Windows 8, and as soon as it is officially released I will make a marriage proposal, dump Windows 7 and let Windows 8 officially move in, it already has its own toothbrush. It is bound to be a good and long-term relationship
I prefer to use .NET Framework 4.5, and do so 90% of the time ? it makes me feel cool, and I like the new features.
I'm all about planning, if you fail to plan then you plan to fail My plan for the fall is as following:
- Git and PowerShell (July/ August)
- Web API (now) and a few alternatives
- TDD (and TDD frameworks) (September)
- DDD (September / October)
- Raven and Mongo DB (October)
- Ruby (November / December)
What is your coding pet peeve?
I hate out-commented code. It's like somebody talking while you are trying to think, "what did you say? Oh no, just ignore me, it's nothing important I just can't shut up."
And code that is refactored to the point that it looks like scattered regex. I don't like to puzzle together code.
And I prefer spaces to tabs, and hate how Visual Studio messes up my indentation.
How did you get started programming?
I grew up as a girly tomboy, loving sports, arts and travel. When I had to make up my mind as what to do with my life I never considered any other options than nutritionist, it was trendy at the time and I considered myself trendy. And so I did. I struggled for five years at University, I became first an international licensed Personal Trainer and instructor, then I became a nutritionist, and then a registered dietitian.
What nobody knew, except those very close to me, was that I cried the whole time. And five years is a long time to do that.
One day, three years in, I had a serious talk with my husband. He was also unhappy with what he was studying and we started talking about what "work" meant to us. I didn't want to "work" I just wanted to do something that was a part of my life, just do something different for 8–10 hours a day. I didn't want to be one of those that just long for the weekend. I wanted to long for today, every day.
We sat down, pen and paper ready and loads of coffee - we knew it would be a long night. We wrote down what I was good at first. I am clinically hyperactive, I'm good at talking and telling, problem solving, very creative, excellent multitasker, passionate and dedicated, love new things and changing environment, not scared of new things, I'm good at math, but haven't done it at a high level, and I love technology, good at building things and composition.
We wrote down over 500 possible jobs. Including all the jobs we could think of, and started considering them one by one.
We tried to match my personality with job descriptions (based on what you actually do during a work week). At the end we had programmer and graphical designer. But I love logic. The art of logic, the creativity behind the build of a logic sentence. So, I should become a programmer.
But, it would have been a financial disaster for us not finishing our degrees as the scholarship would become a loan. So I kept fighting through the tears, with the programmer dream fading in the light off biochemistry studies and clinical nutrition. We moved to Sweden when the economic situation became too difficult to handle. By accident we found the perfect school, a school that offered both the degree my husband was interested in and the one I was seeking. But we couldn't afford having both of us studying, and since Daniel would be able to get a higher salary and we knew he would do well he got to go first.
I started a clinic meanwhile to give the whole dietitian-thing a real go, and it was also the only way I could find an employment and have a salary by employing myself. Jobs were few and far apart, and salaries are very low in the public health care.
Two years later I could finally apply. I did. I remember trembling when I called my parents to tell them about the decision. I was so happy, but also so scared. What if this wasn't right for me? I got their blessing and support and a very excited and curious Iris started studying programming in August 2011.
The first two days we only talked hardware and theory, I felt lost and frustrated. My teacher Mikael Freidlitz must have seen this and took me aside. I had teared up and admitted that I didn't want to come back. We had a very long talk, and I told him my story. He said "Look, come back tomorrow. I promise you everything is going to change, and you will do so well - I can tell. Come back tomorrow. Just give it one more day."
And I did, and he was right, as he always has been. I loved it, and I never looked back. I never dreaded going to school, or later to work. He has later become a great friend, and the best mentor and teacher I have ever had. Programming felt natural to me and I felt straight at home, and I did very well and progressed quickly.
My very first computer and my very first line of code were written a year ago on a laptop I bought the same month. Yeah, surprise!
It has influenced me a lot as I quite early learned that you need mentors and friends, you can't do this alone - and neither should you.
I've joined up about 6–7 user groups and I am about to start one myself this fall, and I am active on several online forums and communities such as SO, Twitter, MSDN, GitHub and so on, and I attend as many conferences, webinars, virtual trainings and workshops as I can. There is at least one thing a week on my schedule, and I am on the forums most part of the day.
I've found such great support and friends, in the developer community and I feel accepted, at home and a part of something great. Of course there is a certain elitism among some, and do feel like I get put down for not being as experienced or as good yet by some. But for every one idiot there are a hundred supportive high quality developers, and I know who I want to spend my energy on, and who I want to learn from.
What advice would you offer to an up-and-coming programmer?
Don't put yourself down, be proud of your accomplishments even if others deem them as small. Being proud doesn't mean you don't want to get better, it just means that you appreciate that you can do today something you couldn't do yesterday.
It is a journey, and even if the destination is grand and totally awesome, you should still enjoy the little stops here and there. Because one step at the time, small or big as they might be, you will get there in the end with effort from you, and help from others.
And if you ever really feel like sh*t and you need a friend, never hesitate to contact other developers. My door is always open (metaphorically).