So Much Technology – So Little Time

 

 

We have, I think, officially passed the point where anyone can keep up with the new technology available for developers, just from Microsoft (let alone all the new options from all the other companies), and PDC is les than a week away.

A  totally indefensible distortion of recent history as I remember it

When I started fussing with computers (1971) you could certainly learn the entire field (and then some) in a couple hours.  I was incredibly lucky, and I didn’t like it much (my friends who did like it are all stuck in jobs in banks working in Cobol or worse) and so I didn’t return to it with any seriousness until 1984). 

In the early 80’s you could teach yourself all there was to know about microcomputers, and you could come up the learning curve as you remained productive.

There were choices to be made (I distinctly remember choosing DOS over CP/M and then PC over Apple IIe and then DOS over OS/2 and then Unix/C over DOS (for practical reasons – I had a gig).  So by 1989 or so I was already “specializing.” 

In 1992 I was offered the opportunity to switch to Windows, which by then had grown up enough to be interesting. The project was cross-platform (Win 3.1/Mac; using a beta of the the ill-fated Bedrock cross-platform compiler) and, most important, it was C++, a switch I was eager to make and one which launched my 2nd career as a hack author (first book, 850 pages, 6 weeks; while working full time. Yowza!)

As an aside to this tangent, I’ll tell you that you have not lived until you try to create software with a new programming model (Object-oriented) on a beta development platform (Bedrock) with a beta compiler (Zortech) and an alpha debugger using a 3rd party editor;  none of which was designed to work with any of the others. We spent a couple years on that project (written about Beginning Object Oriented Analysis and Design) only to be eaten alive by the World Wide Web as well we should have been.  But I digress.

In any case, in the 1990s something else began to happen, not only did I find myself choosing one platform over another (Windows over OS/2 for example [“OS/2 version n+2, the Real OS/2”] – I found myself whittling down what parts of Windows I would spend my time learning, as Windows Development itself was getting to big to learn it all.

Just keeping up with my little niche was a full time job. Since about 1995: ASP –> Web Classes –> ASP.NET –> ASP.NET w/Ajax –> ASP.NET/AJAX/MVC…  .NET –> .NET 2, 3, 3.5., MFC ->  WinForms –> WPF –> Silverlight…. you get the idea.  (I confess, I just more or less ignored DCom, waiting patiently for it to go away). 

MacBookProAlong the way I’ve flirted with the Mac (I do like the Mac a lot and wish I’d spent more time there..  though on balance, so far it appeals to my tin man, not my scarecrow)    — but Silverlight meets that need, and I’ve convinced my boss that one of my “commitments” for this year is to increase my expertise in the Mac so as to provide cross-platform expertise (read this as: I get to play with my mac more).

Another aside: after 9/11 my rant was this: if I were in charge of the FAA the first thing I would do would be to call the Israeli Government and say “send me the person who set up your El Al security system, I want him in charge of the TSA for 1 year.”  Similarly, if I were in charge of Windows, the first thing I would do is hire packgagingsomeone whose full time job it is to be able to answer the question “why is this easier on the Mac?”  — it may be there are very good reasons, but we’d better know them.  Have you set up a Mac?  It is a blast.  Plug it in, wait a minute, answer two or three very obvious questions, wait a minute, you’re done.  

While I’m ranting, I’d also have someone on my team in charge of “why does their packaging look nicer than ours?”

</Rant></Digression>

Where Was I? Oh Yes…

I’m often asked how to evaluate Silverlight against Flash, and as I’ve said before, I don’t do that, (though there are lots of folks here who do that well). But the question that does interest me is this: of the ever increasing bounty of developer technology coming out of Microsoft: what do you need to know?

What Does A Silverlight Programmer Need To Know?

Let me start off by saying that this list will probably need to be updated frequently – not much I can do about that. Second, much depends on what else besides being a Silverlight programmer you have in mind, and what kinds of Silverlight applications you’ll be building and what size team you’re on and …. you get the idea.  Further, this is just my opinion – not a Microsoft official guideline.

That said, if I were pressed to answer what skills a Silverlight programmer really needs to keep up with, my list would start with:

Tools

Start here, return to here, this is critical.

  • Expression Blend and here
  • Silverlight

    Related Technology

    • Astoria
    • C# or VB (make your life easier)
    • Basic UI Design
    • WPF (Older sibling, many resemblances)
    • WCF (web services)
    • The Rest of .NET 3.5 Services (the mischpacha)
    • ASP.NET  (“Might be fun, could be dangerous, maybe tomorrow”)

    Some Books That May Help

    Knowing the author and his writing, my guess is that this will be terrific (not yet released)

    Data and Services with Silverlight 2: John Papa: Books

    ISBN: 0596523092
    ISBN-13: 9780596523091

    There are a number of good books on C# and VB. If you are new to both, I can’t help but recommend this, though this new edition won’t be out for a few weeks.

    Learning C# 3.0: Jesse Liberty, Brian MacDonald: Books

    ISBN: 0596521065
    ISBN-13: 9780596521066

    Books I like on learning the related .NET 3.5 technologies (yes, there i go again with one of my books, but it is the only one I know of that covers WPF, WCF, WF and all of .NET 3.5 in a single volume).

    Programming .NET 3.5: Jesse Liberty, Alex Horovitz: Books

    ISBN: 059652756X
    ISBN-13: 9780596527563

    Programming WPF: Chris Sells, Ian Griffiths: Books

    ISBN: 0596510373
    ISBN-13: 9780596510374

    There are a number of excellent books on ASP.NET, many from my own team…

    Share

    About Jesse Liberty

    Jesse Liberty is an independent consultant and programmer with three decades of experience writing and delivering software projects. He is the author of 2 dozen books and multiple Pluralsight courses, and has been a Senior Technical Evangelist for Microsoft, a Distinguished Software Engineer for AT&T, a VP for Information Services for Citibank and a Software Architect for PBS. He is a Xamarin Certified Mobile Developer and a Xamarin MVP, Microsoft MVP and Telerik MVP.
    This entry was posted in z Silverlight Archives and tagged . Bookmark the permalink.

    Leave a Reply

    Your email address will not be published.