Graciously Hosted by MaximumASP        

I’m asked, how did you learn what you know ?

I got this email today from Mark…..

Hello Joe,

First may I say thank you very much for all the information that have published on asp.net. I have learnt allot from it. I do follow you on twitter although I am interested to know how you started out, how you gained experience to the point that you are a Senior Program Manager for Microsoft. If you are able to spend any of your time replying to this message I would be very grateful.

Many thanks

Mark

I get an email like this every few weeks so I thought I’d blog the reply with some tips.

Mark,

I began as an accidental programmer when a business my father had an interest in purchased a CNC machine and had problems programming it. Through my career I worked on Main-Frames, Mini-Computers, and Micros/PCs doing everything from device drivers to reports to UI work.

I also did the “management thing, and the start-up thing, before joining Microsoft to be a geek, I was the President and CEO of a publically traded company in New York (right on Broadway !)

When thinking about your question I jotted down some “tips”.

Hope they help.

1.) Spend your beer money on books.

For much of my your career I made myself read at least one technical book per week (if I finished early I would start another or read a business or personal development book.)  I’m an old dude, so I like paper, but there are lots of free book son PDF (like Microsoft’s Patterns and Practices publications) – I’m also a huge Amazon Kindle fan and am about to trade in my Kindle 1 for the new Kindle DX. Not only does it hold 3500 books but it has a native PDF reader and you can get magazines and blogs!

I’m always amazed at how many people I meet that do NOT read proactively. The majority of my technical knowledge (and all my knowledge for that matter) is the product of proactive reading.

When you read,  spread your wings. If you’re a web developer, don’t just read about ASP.NET or VB. Read about database design, read a book on how TCP/IP works, read about load balancing, you can fill in a lot of blanks by reading outside your box.

2.) Be an insomniac or addicted to caffeine.

Everything takes time and there isn’t enough of it. I force myself to read every night, even if I can only keep my eyes open for 15 minutes. Like most of the things we want to accomplish in life, “getting it done” include creating a behavior that becomes an ingrained part of our schedule.

I normally have 3 books going, One technical book (right now it’s Julie Lerman’s Programming Entity Framework ), one non-technical educational or personal development book, (I just finished The Fall of Carthage), and one book just for fun, right now I’m reading Orson Scott Card’s “First Meetings”)

Since I’ve had children, I’ve needed to commit to getting up a bit earlier (before the girls) and eliminating a few of my less productive activities. I just remind myself that continuing to learn is investing in my professional future and therefore my families security.

3.) Always have two jobs.

I’ve always had a second “job”. Often my 2nd job does not pay much (or at all). I also try to make my second job focus on something that I don’t do in my REAL job. Sometimes they are little things, like a few months ago I wrote a Silverlight article for PHP Architect Magazine, last year I served as technical editor for  “ASP.NET AJAX in Action”. Making commitments outside your comfort zone is great for personal and professional growth,

4.) Fight with your boss.

You need to be artful with this one. It doesn’t mean hate your boss (or make him hate you) but it means push back on decisions, look forward from a business and technical perspective and question the standard way of doing things. When we started the team that is now the STO Developer Community Team at Microsoft and decided to include multi-media content in our initiatives we did this and invented the How-Do-I video format. (Casual, NO POWERPOINTS, topically atomic, etc.). This format had never really been done at Microsoft before. It’s now the most cost effective type of developer interaction we have, has (I think) the highest satisfaction rating, and not only is every part of Microsoft doing How-Do-I videos, but tons of our partners are doing them too.

5.) Have a ONE-A-DAY policy.

This one is simple in principle but much harder in practice.

It goes like this……

You never, ever, ever put your head on the pillow at night until you have done 5 things. You do this EVERY day and you can never use anything on the list twice.

  1. INTENTIONALLY Learn 1 thing.
  2. Do 1 thing to advance your career.
  3. Do 1 thing to improve your personal life.
  4. Do 1 thing to help someone else be great.
  5. Tell someone that you love them / care about them, etc. (someone you didn’t tell yesterday.)

These things can be as simple as making a phone call or an email, but never let a day go by that you fail to perform all five.

6.) Quit your job.

Yep, you read that right. Now, don’t be stupid. Stay employed, but if your job gets intellectually stale, or technically irrelevant of antiquated, and you can’t work with your manager to improve the situation, go find a better gig !

You should try to NEVER leave a job that you have been at less than a year, but a couple 1 – 2 year gigs won’t kill your resume, can really boost your salary and contribute to your professional diversity.  (I’ve been at Microsoft and only quit once. (ScottGu ordered me to stay :) )

7.) Work in Developer Support.

I served as the Support Director for a compiler company called JPI (Jensen Partners International). Niels Jensen was one of the three original founders of Borland and later founded JPI and built C, C++, Pascal, Modula-2, ADA, etc. compilers for DOS, Windows, and OS/2. I worked at JPI until the company was acquired by Clarion,  I primarily supported ISVs helping them get and keep their products working with TopSpeed compilers but also worked with “high profile” partners and customers.

When it comes to DIVERSE learning, support (solving other peoples problems) is like drinking from an op[en fire hydrant.

If you don’t want to get a job in developer support, answer questions in support forums like the ones at www.asp.net/forums/

Not only will it “pump up you knowledge”, but it will really increase your presence in the developer community and bolster your resume value.

8.) Start a company.

As al alternative to #3, start your own small company.

Even if it’s as simple as a company that sets up web sites for your local community organizations, it gives you a chance to make a couple of bucks and learn how a company runs, plus, you’ll have to spread your “technical wings” as your customers make requests.

Though I now work at a “big” company, I’ve done many startups and also worked with VC organizations helping other start-ups.

Someday, I’ll get involved in another start up.

9.) Attend “Geek Stuff”.

If you can swing it, go to PDC, Tech Ed, MIX. Or, smaller event like Code Camp, The Heartland Developer Conference, etc.

If you can’t afford those, go to local user groups, 1 day or 1/2 day events at you local Microsoft Office (or whatever other company does them.)

Attend free webcasts (Microsoft does thousands of them !) Even watch pre-recorded ones.

They are free, easier than reading, and not only educational, but often catalyst for thought !

10.) Teach / Speak / Write

Commit to put yourself and your work in front of other people.

This is a bit painful in the beginning :) but you’ll quickly get motivated to REALLY know your stuff and it’s a great way to get recognized as a developer expert in your chosen fields,

Who knows, you may even end up in your perfect job, making good money doing exactly what you want to be doing !!!

» Similar Posts

  1. My move to Graffiti
  2. The Scoble Gap ?
  3. Some thoughts now that Silverlight 2.0 is Released.

» Trackbacks & Pingbacks

  1. Pingback from I’m asked, how did you learn what you know ? : Misfit Geek

  2. Web Not blocking the UI in tight JavaScript loops 10 Impressive JavaScript Animation Frameworks Playing

    Interesting Finds: 2009 07.01 ~ 07.05 — July 4, 2009 8:46 PM
  3. Pingback from Inspirational post from Joe

    Inspirational post from Joe — July 10, 2009 7:29 AM

» Comments

  1. nitin avatar

    :) thanks for your effort...all these years :)

    nitin — July 1, 2009 11:28 AM
  2. Charlie avatar

    Excellent post! It's all good, but I particularly like #5. As an "old guy" (51 next month) I wish I had started following that advice 35 years ago. :-)

    Charlie — July 1, 2009 11:33 AM
  3. Joe Stagner avatar

    Thanks Guys - Carlie, when I was a kid my dad told me about his policy to "Do 1 thing to advance your career every day."

    I sonn added the other 4 and it's served me very well.

    Hope it works for you !!

    Joe Stagner — July 1, 2009 11:44 AM
  4. Anıl Çalışkan avatar

    Thanks for the great advices Joe!

    Anıl Çalışkan — July 1, 2009 11:44 AM
  5. Pavan avatar

    wow.great post!!

    infact i dare say,i only follow 1 or 2 points from here and I can experience myself better than lot my mates/seniors in last few years of my professional life. thanks again for filling in with rest of points :) i will try and practice few of them

    Pavan — July 1, 2009 11:54 AM
  6. Greg avatar

    Technical production support will teach you much more and much faster than other ways of learing technology.

    You get real world problems without the academic clutter and less productive framework building arguments found when dealing with teams of inexperienced developers.

    Greg — July 1, 2009 12:16 PM
  7. Sandeep avatar

    thanks for the advice joe!!!

    Sandeep — July 1, 2009 12:20 PM
  8. TheDirtyBird avatar

    Thanks. I'm doing most of what you stated.

    TheDirtyBird — July 1, 2009 12:41 PM
  9. Adam Wright avatar

    Excellent post, very insightful and insperational. This seems like the perfect guide for anyone who wants to achieve greatness as a developer.

    Adam Wright — July 1, 2009 12:43 PM
  10. Anthony Grace avatar

    One of the best, most down-to-earth pieces I've read in a while :-)

    Anthony Grace — July 1, 2009 12:51 PM
  11. Sheo Narayan avatar

    Thank you very much Joe for sharing your experience and tips. Fortunately, I have already done/ am doing #3, #7, #9 and sometimes do #10.

    Willing to follow #5 seriously !

    Sheo Narayan — July 1, 2009 1:24 PM
  12. Robin avatar

    He is simply the best guy :-) Very helpful. Hope he gives us a treat on his birthday this month. Take a note every one its on 24th July. :-)))

    Robin — July 2, 2009 8:39 AM
  13. Satalaj More avatar

    Thanks for this advice. Very helpful I will accept all in my life.

    1.INTENTIONALLY Learn 1 thing.

    2.Do 1 thing to advance your career.

    3.Do 1 thing to improve your personal life.

    4.Do 1 thing to help someone else be great.

    5.Tell someone that you love them / care about them, etc. (someone you didn’t tell yesterday.)

    Satalaj More — July 2, 2009 8:42 AM
  14. Senthil Kumar B avatar

    Catchy Line "Making commitments outside your comfort zone is great for personal and professional growth".

    Good one Joe.

    Senthil Kumar B — July 2, 2009 9:12 AM
  15. Joe Stagner avatar

    Thanks for all the great comments guys !!!

    Joe Stagner — July 2, 2009 9:27 AM
  16. Glen avatar

    Good article, I think #1 and #2 are linked if you learn 1 thing it will or should advance your career.

    Glen — July 2, 2009 10:19 AM
  17. Bob Armour avatar

    Hi Joe,

    Good advice, as always - but, what else could I expect from a guy who shares the same birthday as me.

    When people ask me if I'm ready, the answer is usually 'I was born ready - 24/7' ;-)

    (P.S. I'm an older geek too - 47 this year and still got my head in books)

    Bob Armour — July 2, 2009 10:32 AM
  18. Chris Coneybeer avatar

    Thanks Joe for a great post. I just recently followed #6 and I am so happy that I did. I had been at my last company for 9+ years and needed change. Now I am contracting and I am so excitied again about what I do. I had tried to already follow several of the points that you had here, but I was down. I plan to work some more in.

    Chris Coneybeer — July 2, 2009 10:47 AM
  19. Evan Larsen avatar

    Hi Joe,

    Wow you are a machine! how do you manage to read a book a week, work 2 jobs, raise children, and still be able to fit in those 5 One-a-day things. I guess you would have to take a lot of caffeine :) Pretty impressive. I do a lot of what you said but span it over 1 month instead of daily. I do envy you for how hard you work. Loved this article :) gives me something I can work towards.

    Evan Larsen — July 2, 2009 11:11 AM
  20. William Davies avatar

    I always wondered what Michael Jordan's philosophy would look like against our profession. I think I've bounced from one number to another by sheer accident over the years. It's great to see them in one place so clearly. You should write a medium sized book to this effect. You can use the title,"How to be a better developer/coder in ten not so easy steps", royalty free.

    Bruce Wayne says, "I see now what I have to become to stop [or in our case out-perform] men like him."

    Great post.

    William Davies — July 2, 2009 11:55 AM
  21. Armin avatar

    Great tips dear Joe,specially the fifth one,very very helpful and inspiring.

    I think it's good to mention a phrase from a movie since it's somehow related, it's said that " To do something ,anything , is hard ,it's always easier to blame it on the money or the life or the government..."

    Armin — July 2, 2009 12:21 PM
  22. John J Ross avatar

    Great tips Joe this is the way I have worked for the last fifty years. I am still working this way at 67.

    John

    John J Ross — July 3, 2009 9:38 AM
  23. Steve Schofield avatar

    Nice post Joe! Balancing technical career and personal stuff is tough. Attitude is one way of summarizing your statement. It's nice to be reminded, and your post did that.

    Steve Schofield — July 3, 2009 3:51 PM
  24. Isaiah avatar

    Thanks , for those healthy nuggets. Real mind food.

    Isaiah — July 3, 2009 4:38 PM
  25. Dj avatar

    Thanx!!!

    Dj — July 4, 2009 12:23 AM
  26. jalpesh avatar

    HI Joe,

    Thanks for sharing great tips to us. I will try my best to follow that in my life. I have a dream that once i will work with i think this may come true this way.

    Thank You,

    Jalpesh Vadgama

    jalpesh — July 4, 2009 5:03 AM
  27. Byron avatar

    Thank you Joe... These are the perfect advices that I want to hear/read to improve my career.

    Byron — July 4, 2009 6:30 AM
  28. Eswar avatar

    Thank you Joe, it's a good article

    Eswar — July 4, 2009 7:24 AM
  29. David V. Corbin avatar

    Joe,

    Excellent advice, and very much the life path I have followed.

    To the people who asked "how can you do it?", I believe there is only one answer: PASSION.

    Over the past 25 years [since the founding of my consulting firm], I have often been asked what I would do if I won a million dollars. The answer is always the same...expand my business.

    I am curious as to where your business was located, since I am in Manhattan (West Side)..there is a distinct possibility we have crossed paths at some point.....

    David V. Corbin — July 4, 2009 1:55 PM
  30. Huthaifa Afanah avatar

    You hit the point Joe! I am really experience some of what you said. Its really cool stuff and I have a great faith in those ideas.

    Thanks

    Huthaifa Afanah — July 5, 2009 2:25 AM
  31. Mohamed Abbas avatar

    Really a great advices

    Thanx Joe

    BMW

    Mohamed Abbas — July 5, 2009 5:21 AM
  32. Suwitcha Chandhorn avatar

    Nice entry. I personally commit some of this. I must try more..

    Thanks for the inspiration...

    Suwitcha Chandhorn — July 5, 2009 8:13 AM
  33. Gaspard avatar

    Hi Joe,

    Good advice.

    Thank you

    Gaspard — July 5, 2009 9:39 AM
  34. slapout avatar

    How do you find time to read one book a week? I try to read, but between work and family its hard to find the time.

    slapout — July 5, 2009 5:50 PM
  35. Babar avatar

    Thanks Joe, especially the 5th point

    Babar — July 6, 2009 2:11 AM
  36. Agha Usman avatar

    Great post !!! really help me to build my schedule

    Agha Usman — July 6, 2009 3:14 AM
  37. uk avatar

    For next one week, i'll read this once per day! Points not to forget!

    uk — July 6, 2009 12:26 PM
  38. Mark H. avatar

    And everyone looks at me strangely because I

    worked third shift as an IBM operator.

    I was happy because it got me

    access to their sales and technical reading lists!

    Mark H. — July 7, 2009 5:42 PM
  39. Mark T. avatar

    Great post. I have been frustrated insomuch as my new knowledge has been sporadic and headline stuff that I have found on my solution-surf on the net.

    Will immediately get back to reading some solid paper!

    I have used #6 effectively the past 6 years and almost doubled my salary!!!

    Mark T. — July 8, 2009 8:36 AM
  40. RN avatar

    Great tips. Thanks!

    RN — July 8, 2009 1:34 PM

Comments are closed