by Joey deVilla on November 14, 2009

It’s Back!
Developer Night in Canada is back! It’s a podcast featuring interviews with Canadians who make software, from all parts of the industry (yup, not just the Microsoft world), working all over the world, talking all about what they do and the projects they’re working on. It’s hosted by Yours Truly and my co-worker and fellow Developer Evangelist at Microsoft Canada, John Bristowe.
Developer Night in Canada is a bare-bones podcast. It’s just me and John talking with whomever we’re interviewing, just having an unscripted conversation with as little editing as possible.
Interview with Joel Semeniuk
In this episode, John and I talk with Joel Semeniuk, founder and Chief Envisioning Officer of Imaginet Resources, a Microsoft Gold Partner based in Canada. We talk about all sorts of things, including his work in healthcare technology, kanban, Visual Studio, Team Foundation Server, SharePoint, Telerik and travelling.
Joel is a Microsoft Regional Director. RDs (as they;re often called) aren’t Microsoft employees, but independent developers, architects, trainers, and other professionals who provide a vital link between Microsoft and the developer community. You see RDs doing things like helping companies and individuals get the most out of Microsoft developer tools, writing books, articles and websites on developing on Microsoft’s platforms and making presentations, teaching courses and meeting up with developers face-to face. Without the help of RDs like Joel, my job is considerably more difficult – I’m glad that people like him are out there.
Some quick facts about Joel:
- Has a degree in Computer Science from the University of Manitoba
- Spent the last twelve years providing educational, development, and infrastructure consulting services to customers throughout North America
- Specializes in helping organizations improve their software development and information technology practices
- Has probably forgotten more about Team Foundation Server (and its predecessor Team System) than I will ever learn

Here’s the MP3 – it’s just under 25MB and runs 53 minutes, 58 seconds (you can left click to listen now, or right click to “Save as”).
Tagged as:
Developer Night in Canada,
Joel Semeniuk
by Joey deVilla on July 31, 2009
This article also appears in Canadian Developer Connection.
The Interview
Over at the IT Manager Connection blog, there’s an interview with Barbara Liskov, who is:
- The Ford Professor of Engineering at MIT’s Electrical Engineering and Computer Science Department
- An Institute Professor at MIT
- The first woman in the United States to earn a Ph.D. in computer science
- An ACM Turing Award Recipient for both 2008 and 2009
- An IEEE John von Neumann Medial Recipient for 2004
- An ACM and American Academy of Arts and Sciences Researcher
- …and most relevant to us, the “Liskov” in the Liskov Substitution Principle, one of the five SOLID principles for object-oriented design.
In the interview, Barbara talks about winning “the Nobel Prize of computing”, her vision for computing, what got her interested in computers, the challenges that the field still presents to minorities, the work she’s done and her thoughts on up-and-coming tech. If you’d like to listen, here’s the MP3 of Stephen Ibaraki interviewing Barbara Liskov. Stephen also wrote an article containing an abbreviated transcript that appears in IT Manager Connection. Enjoy!
The Liskov Substitution Principle

In case you’ve forgotten (or perhaps never learned), the Liskov Substitution Principle is:
If for each object o1 of type S there is an object o2 of type T such that for all
programs P defined in terms of T, the behavior of P is unchanged when o1 is
substituted for o2 then S is a subtype of T.
Well, duh. Who didn’t know that?
Object guru Robert C. “Uncle Bob” Martin took this bit of math nerd-speak and paraphrased in a way making it somewhat easier to follow:
Functions that use pointers or references to base classes must be able to use objects of derived classes without knowing it.
And because I’m nowhere near as smart as Uncle Bob, here’s the way I like to cover it:
If MySubclass is a subclass of MyClass, you should be able to replace instances of MyClass with MySubclass without breaking anything. Sort of like when they changed the actors who played "Darren" in Bewitched or "Becky" in Roseanne.
(Unlike Liskov or Martin, I don’t have to write academic papers, so I can get away with making references to old TV shows.)
As I mentioned earlier, I’ll be writing more about the SOLID principles. Watch this space!
Tagged as:
Barbara Liskov,
Liskov Substitution Principle,
SOLID,
women in technology
by Joey deVilla on April 28, 2009
This article also appears in Canadian Developer Connection.
When I got into web development, I considered myself a latecomer to the game, and that was in 1999. In the five years I’d been working professionally as a developer, my apps were strictly desktop – multimedia CD-ROM stuff done in Director (then a product of Macromedia) and business productivity apps written in pre-.NET VB and Java-a-la-JBuilder.
The company with whom I’d landed a contract had a contrarian tech lead. It seemed that the web app world was building their stuff on Linux, Perl and MySQL, and this guy was all about BSD, Python and PostgreSQL. In 1999 terms, he was a freak even amongst the freaks.
I had a pretty full schedule that summer, followed by a one-week vacation at Burning Man, followed by the start of my contract at this new company. The tech lead wanted me to be ready to do some coding on my first day in, so I brought a copy of O’Reilly’s Learning Python along with my laptop to Black Rock Desert, hoping to squeeze in some hacking time at the big desert bacchanal. Luckily, Burning Man is pretty mellow during the day, and in an additional stroke of luck, the neighbouring camp was sharing AC power from their “eggbeater” windmill. I learned Python by writing sample apps in an extremely distracting environment, and because of that, I fell quite in love with the language. Any language that you can learn while naked people playing the tuba on unicycles are circling you has to be a good one.
That’s why I’m glad to see that implementations like IronPython exist, and that they tie into things like the .NET framework and Silverlight. IronPython’s performance is quite close to standard Python, and I use it along with IronRuby as my scripting language for automating tasks and doing little “housekeeping” things on my systems. I’m not using IronPython to the degree that Michael Foord is – he’s using it for full-on .NET applications instead of C# or VB! Scott Hanselman talks with him about working with IronPython as his primary development language in the latest edition of his Hanselminutes podcast.
As an added bonus, the blog entry for the podcast has a special limited-time coupon code that will save you 40% off the price of Manning Publications’ IronPython in Action (which Foord co-wrote), and the discount applies to both the dead-tree and PDF versions of the book. At 40% off, the PDF version is a mere USD$16.50 (CAD$20.14 at the time of this writing).
Tagged as:
Burning Man,
Hanselminutes,
IronPython,
Michael Foord,
podcasts,
Python,
Scott Hanselman
by Joey deVilla on November 3, 2008

A number of people have asked me how many sessions I attended at last week’s Microsoft Professional Developers Conference; my answer was “I only attended the keynotes”. Since every session was recorded on video (with a split screen showing both presenter and presentation) and made available online, I decided to focus on what you can’t replicate outside the conference: getting to know people in the Windows developer community.
It’s standard procedure at Microsoft to assign “buddies” to new hires to help them get acclimated. I have the very good fortune of having John Bristowe as one of my buddies; not only is he a warm and friendly guy, but I also already know him (his sister Ashley and I went to Crazy Go Nuts University together). John’s big on podcasting and was very generous in sharing the interviewer’s chair; he let me do a lot of interviews as a way to both get podcasting practice and introduce myself to people in the Windows world. Thanks, John!
You’re going to need Silverlight to view these videos. If you’re rolling your eyes at the prospect of having to download yet another plugin, keep in mind that Silverlight is a pretty cool tool for writing rich internet apps, I’ll be covering it rather extensively soon, and it’s catching on. Besides, you can’t see the videos without it!
Don Box on My Joining the Dark Side, Demos, Oslo and M, Zombies and How to Pronounce “Azure”

Click the picture to see the video of the interview.
After introducing myself to Distinguished Engineer (yup, that’s really his title) Don Box as “Microsoft’s Newest Employee”, I told him about my coming to Microsoft from the F/OSS world and asked him to please tell me that I hadn’t made a tragic mistake and ruined my life by coming over to the Dark Side. We also talked about his preparation process for his keynote demo, the Oslo platform and the M programming platform, the proper way to pronounce “Azure” and whether or not Microsoft is ready for the zombie apocalypse.
Useful Don Box/Oslo Links
Miguel de Icaza on Mono

Click the picture to see the video of the interview.
I had a great chat with Mono Project lead Miguel de Icaza about Mono, their answer to Silverlight, the number of people in the Mono Project and how you, as a Windows developer, can take Mono out for a spin. We also talked about how to pronounce “Azure”, and Miguel speculated that the name was a clever choice because the disagreement over its pronunciation is a great way to get people talking about it.
Useful Miguel de Icaza/Mono Links
John Lam on IronRuby

Click the picture to see the video of the interview.
It’s always good to catch up with Toronto-area guy turned Redmond guy and IronRuby creator John Lam. We had a quick chat about IronRuby and the current state of the project. In the interview, he reminds us that IronRuby is an open source project, talks about the Ruby standard implementation tests it’s currently passing and what to expect from IronRuby in the near future.
Useful John Lam/IronRuby Links
Phil Haack on ASP.NET MVC

Click the picture to see the video of the interview.
Phil Haack not only has the coolest surname for a techie, he’s also got an MVC framework for ASP.NET, just like the ones the Rails, Django and Cake people get to play with. In this interview, we talk about MVC web frameworks for the uninitiated, as well as get his take on how to pronounce “Azure”.
Useful Phil Haack/ASP.NET MVC Links
.NET Micro Framework

Click the picture to see the video of the interview.
Believe it or not, there’s a .NET framework for embedded devices, the .NET Micro Framework. In this interview, I learn about .NET programming for small devices, the “Dare to Dream Different” contest (where you can win great prizes for coming up with new applications for the .NET Micro Framework) and about what donuts have to do with microcontrollers. Mmm…donuts!
Useful .NET Micro Framework Links
Tagged as:
.NET Micro Framework,
ASP.NET,
Don Box,
embedded,
IronRuby,
John Lam,
M,
Miguel de Icaza,
Mono,
MVC,
Oslo,
PDC,
PDC2008,
Phil Haack,
Ruby
by Joey deVilla on October 29, 2008
I’m meeting up with a lot of interesting new people and catching up with old friends and collegaues here at the Microsoft Professional Developers Conference (PDC) 2008 in the Los Angeles Convention Center. Among the people I ran into was John Lam of the IronRuby project. This was the prefect opportunity for me to conduct my first podcast interview as a Microsoft Developer Evangelist. I asked John to explain IronRuby to people who’d never heard of it and to give us a quick summary of the current state of the project.
My thanks to John Bristowe for suggesting that I conduct the interview and for doing the camera and post-production work!
Tagged as:
DLR,
IronRuby,
John Lam,
Microsoft,
PDC,
PDC2008,
Video