How did you get started in software development?

[I suggest my usual readers to skip this post altogether, you won't find anything useful here :-)]

Romeo tagged me with this "How did you get started in software development?" quest. I was already feeling guilty, because given how swamped I am I knew I was not going to have time to reply to the tag: OTOH right now my main PC is unusable, since I am repaving a new HD on it, hence while the network install goes I can write this up.

How old were you when you started programming? A quale età hai cominciato a programmare?

I was 12. One Christmas parents & siblings joined forces and got me a Commodore16: it was just *fantastic*.

How did you get started in programming? Come hai cominciato a programmare?

With the reference manual of the basic 3.5.

What was your first language? Qual’è stato il tuo primo linguaggio di programmazione?

Basic, the one that came with the Commodore16.

What was the first real program you wrote? Qual’è stato il primo programma vero che hai scritto?

Hard to define "real" here. I would say that the first program I have wrote for a purpose different than pure enjoyment was a control routine for a Siemens PLC. It was for a shop class, we had those PLC working in AWL-step5. Not very structured, but hey... certainly software!

What languages have you used since you started programming? Quali linguaggi hai usato da quando hai cominciato a programmare?

Ah, hard to remember them all. Already mentioned Basic and AWL-Step5. At the University it was mainly Pascal, C and C++; SML was used only for a class, but it had huge impact on my development (and the class was really hard); matlab, if you'd consider it a language; DHTML, or javascript+HTML, as we were used to call it; and Lingo, Macromedia Director's language. Later I worked mainly in C and C++, though I had moments in which i needed Fortran (can you believe that the *column* where you write is important? How vestigial is that???), Java and a bit of prolog. Before joining Microsoft, back in 2001, I almost never targeted Windows: once I got in I promptly got a certification in VB, but i left it immediatly for C#; and of course I had my share of T-SQL, XML, XSLT, XPATH. The above are the languiages I've actually USED; the ones I've just toyed with are way too many to be mentioned here. Eiffel, Caml, objective C... blah blah

What was your first professional programming gig? Quando è stato il tuo primo vero lavoro da programmatore?

I am in doubt between 2 jobs, can;t remeber which one came first. One was the website for a catalog of electronic components, I did both the design and the sheer hml; the other one was a full multimedia CD in Director, for a local military cartography office. Pretty cool :-)

If you knew then what you know now, would you have started programming? Con il senno di poi, rifaresti lo stesso il programmatore? Ricominceresti a programmare?

I would. When it was time to choose which master degree class I wanted to take, I just completed a course on Shiatsu massaging techniques: and I *really* loved it (can't really give too many details here ;-)), hence i was tempted to pick up phisical therapy. And, I have to admit, had I been a rich kid I would have picked up philosophy. But I was not rich, I started working at 15 for helping to pay my studies, and I wanted the most bang for the buck: at the time computer science was hot, and the Genova university was Italy's best (together with Pisa) for the subject. But what started as a calculated choice quickly became a burning passion, and I am really really glad I went that way: I still think it is the best for realizing one's own potential, computer science (and IT) give you countless opportunities of stretching many of your talents.

If there is one thing you learned along the way that you would tell new developers, what would it be? Se ci fosse una cosa che hai imparato nella tua carriera e che vorresti dire ai giovani programmatori, cosa diresti?

Keep pushing hard. There are times in which you are surrounded by great people, and the quality bar is high; and sometimes you move from those environments to others in which much less is expected from you. Don't allow that to soften you: keep asking the best from yourself, because soon you'll move again in some demanding ecology, and you will wish you used better the extra time. "Make every cut your best cut". 

What’s the most fun you’ve ever had … programming? Qual’è la cosa più divertente che hai programmato?

Hard to say. Since I've learned how to code, circa 92,  it is integral part of my expressivity repertoire: I've done many, many silly things with code since then ;-) this one is perhaps the only one that is safe to point out in public

Now, let’s tag someone else… Adesso è l’ora di taggare qualcun’altro…

Well, I think I'll tag my good friends & colleagues in the neighboring office: David & Ryan. Come on guys, I'm curious :-)