ARCast.net - DotNetNuke on the forefront of SaaS and modular software with Shaun Walker
- Posted: Dec 08, 2006 at 1:32 AM
- 15,470 Views
- 4 Comments
Loading User Information from Channel 9
Something went wrong getting user information from Channel 9
Loading User Information from MSDN
Something went wrong getting user information from MSDN
Loading Visual Studio Achievements
Something went wrong getting the Visual Studio Achievements
3 years ago I first heard Pat Helland delivering a very interesting talk titled "Metropolis" where he spoke about how most people today are still building custom software like artisans and craftsman who built most things prior to the industrial revolution. This means that software is difficult and expensive to build, prone to delays and missed estimates. One of the key factors in changing this for manufactured goods was the ability of standardization to introduce ways that manufacturers could buy rather than build most of the components that they need. On today's episode we meet with Shaun Walker and the team from DotNetNuke corporation to discuss how DNN is on the forefront of SaaS and modular software.
-Ron
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums,
or
Contact Us and let us know.
Follow the Discussion
Oops, something didn't work.
What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in. You need to be signed in to Channel 9 to use this feature.What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in and view them all on your notifications page.sign up for email notifications?
Has any one noticed a change in the MP3 format? My old MP3 player gives me a "FORMAT ERROR" when I try to open ArCast, this is happening for two week now, any ideas? I used to listen to Ron's shows every week it worked fine.
Can you listen to the wma file?
Shaun Walker is one of these people that's all about right place, right time. You remember when ASP.net first came out and there was this little sample app called IBuySpy? Well, a lot of people were taking that and modifying it. Shaun Walker came along and gathered all the community together and built this thing. It's become an amazing success story. It's called DotNetNuke. If you haven't heard about it, it's an ASP.net web development framework. Today we're going to go to the offices of DotNetNuke Corporation. So let's welcome Shaun Walker and the DotNetNuke team.
[applause]
Hey, welcome, welcome back to ARCast. This is your host Ron Jacobs. Today I'm at the rather elegant offices of DotNetNuke Corporation. I'm joined by the team here at DotNetNuke and Shaun Walker. Shaun, what are you to DotNetNuke Corporation?
Various people started coming up with enhancements to it, but basically at that point nobody was really pulling all those enhancements together, and Microsoft wasn't obligated to enhance that application on an ongoing basis. So basically, what I did, is pulled a bunch of enhancements together and I released it to the community as an open-source application, allowing anybody in the community to download it and use it as an open-source application to enhance it.
From there it's really just taken off. That happened in Christmas Eve, 2002. So it's my Christmas present to the.NET developer world, but since then it's grown quite substantially to what it is today. Now we're moving forward with a whole new corporate focus for the community under the DotNetNuke Corporation.
We have more than two million downloads of the application over the last three years, and we track that through our home on Sourceforge.net, where we consistently rank as one of the top 10 most active open source projects in the world.
[laughter]
But on other platforms, there are nuke-related systems, mostly related to content management. So there's PHP-Nuke, which was the first; PostNuke--there are nukes on almost any platform that you could imagine, so DotNetNuke seemed to be an appropriate title for the type of application. Although, in the.NET community, it doesn't have a lot of recognition, I guess--until we came along.
Recently, I had a chat with some people who are kind of in the module developer business. And it's intriguing to see that there's a whole kind of ecosystem springing up of little small outfits--sometimes one, two, three people--who just make a living writing little modules for DotNetNuke. Now, tell me about this. Have you seen this phenomenon?
Other things involve creating skins; so designers can create skins and sell them, and people can apply those skins to their site to get a whole new look and feel. We have other areas of extensibility as well, in terms of language packs and providers, but those make up the extensibility options that are out there today.
And you're absolutely correct that there are a lot of businesses out there, small and large, that are building extensibility options for DotNetNuke and doing it in a commercial capacity, which allow them to derive revenue from the DotNetNuke ecosystem.
Have you guys been working with the hosters on these kinds of things?
Then, on the consumer side now, you can find these little Mom and Pop shops that I could never find before. I can buy stuff from them. It's like the return of the middle man to me. It's like, years ago, everyone was like: "Oh we are cutting off the middle man. We are getting rid of them." But now, the middle man is coming back in a big way. It is a positive thing now because it is going to enable a lot of new possibilities for people.
It seems to me that you guys are kind of like that role. You are like the eBay of modular development, that somebody has to step in and make that possible.
So, I am thinking that I have talked to some hosters and they tell me that their profit margins are fairly slim. If they have one support incident on an account, it blows the profit for a whole month. They aren't going to make a dime on that account.
I would like to hand off to Joe Brinkman right now to talk about the DotNetNuke review program and the DotNetNuke marketplace and how those are addressing the exact issues you are speaking of.
So we felt it was important that we put some quality measures out there and say, "This is the bare minimum that you need to be, " in order to really give people some assurance. And so, part of what we looked at with that program was how do we improve the overall confidence level of people who are using those applications, whether it's hosting the application or running their business on those applications?
So one thing I've learned to do is, if they have message boards or forums or something, I look at it. And if I see messages like, "Hello? Is anybody out there? Nobody's posted a patch on this thing for months, and there's no bug fixes and it's crashing constantly! Help!" And I find messages like that, I'm like, "OK, I'm not touching that thing."
Or other times, you see a very responsive community--patches being posted, bugs fixed, and so forth. But the thing is, it's like we almost need what eBay has, in terms of the reputation, to be surfaced...
But how does somebody go and find those? And that's really where we wanted to go with the marketplace, was a way to say, "OK, we've got these applications out there. Now you have a place where you can go and buy those applications, and you know what we only offer things through the marketplace that we have basically said meet our quality standards."
So we're not just going to offer any module or any skin that's out there, without having first checked it out, made sure that they're providing the support--that's very important, as you pointed out--and to make sure that there are some other quality standards, or quality metrics, that we've put in place to sort of help bring that level up so you can differentiate your product from the rest of the market.
And then we bring that into our lab and we do our testing on that, and we work with the vendor. Sometimes, a vendor may not pass on the first try, and we'll work with that vendor and say, "Here's the things you need to do to improve that. Here's how you can test that internally. Here's the types of tools and things that you can use on your own internal processes."
So the next time you submit something for the program--the next module or whatever that you submit--maybe you get it through on the first try, rather than the second try. So it's not just about saying, "good or bad, meets quality criteria," but it's working with the vendors to help them improve their quality.
So again, it comes back to community, right? It comes back to helping the community to improve their own skills and to improve their own products, so that it helps everybody--helps the hosters, helps the guy who's selling this module, helps us give the general quality level that we want throughout the ecosystem.
It comes into the site. We'll go ahead and process that module, do the testing on it, give you feedback. When we're all done and we've gotten you through the process and your module finally passes--which is the goal for everything that we receive, is to help them get to that point--when it passes, we give you back the full test results that show how you did on each individual guideline that we have.
And then, from there, we work with you to get your module or your skin--because we also do this for designers with their skins--to get that into the marketplace. So then you have a showcase--a place to sell your product.
Right now, where we're at is, we have some general knowledge transfer and some general training of the community that we're working on to bring it up to the first step, and then, once we feel that the market has sort of accepted that, then we can start ratcheting that up even further and helping people continue...
It's basically the Capability Maturity Model, right? You learn to walk, and then, when you're walking OK, you learn to run; and you start just taking continuous improvement and raising the bar for everybody, so that the whole community gets to that higher quality standard.
And again, I think part of this comes back to--we're more than just a company. I think we all have this background of community and of building the community. So we want to see all of these people succeed, so for us the feedback loop is important, so we can take this back and give back to the community and help these people grow, because, ultimately, that helps everybody, right?
But what we've realized is that both sides are intricately woven together and we need to support both sides. So what we've been doing is working more closely with the commercial developers, as well as the open source side of the project--bringing everybody together, working in one ecosystem.
Or is the trend towards more people saying, "No, I'm building my own site. Here's my server--give me the stuff."
And we've been able to do that for a very long time. We actually, in the extensibility model for the application, allow people to package it in such a way that it can fit the type of business that they do.
And you had mentioned a little bit earlier, talking about things like--I'll use the term "total cost of ownership," but in a hosted scenario, which is more a total of running that application. But we actually make it possible for people to design a business that works, at whatever price point it is that they're trying to achieve.
We of course want the application to be performant, we want it to be reliable--we want to do all those things--but people make their own choices about the kind of business that they want to be in, and we don't dictate that. What we do is we give them incredibly powerful, incredibly valuable tools, to build a business that matches what they want to do. So it's a lot about consumers.
For example, pick a product--take a car, for example. And you can buy a car in one price range that has all kinds of different capabilities. Obviously, on the lower end of the price range, you'll have a little bit less to choose from. But you can get a very expensive car that has very few options, but is just incredibly high quality.
Now, for example, we talk about modules. The reason why it's difficult for us to actually guarantee quality in a complex module is because we're not in that business. You know, I don't intend to become an expert in the medical field--although I do have some personal experience there.
So we're not going to guarantee the quality of the way something meets a particular business objective, because that business is dependent upon the provider and the consumer of it. But we certainly provide a platform that enables you to do that in any way you want.
But these are serious applications, some of them, right?
A lot of the times, the people who post on the forums do tend to be the mom and pop shops, they do tend to be some of the more individual developers--but we have an incredible number of installations in government and in education and in the Fortune 1000, even the Fortune 500, that are very private.
We are aware of installations that comprise of hundreds of modules, literally, to do complex business functionality that never see the light of day. So you can talk about the hosted scenario, where we're doing gallery and forms--that, or you can talk about the internal scenario, where people are writing big business on DotNetNuke to do very complex business functionality.
And you mentioned widgets--which I see one of my partners over here grinning to be had...
And what DotNetNuke, the framework, does is make it incredibly easy for you to take what would be a large, complex application and break it up into modular functionality, while handling all the details for you--the plumbing that goes into an application.
It frees you from having to worry about all that, because the framework handles a lot of the things like skinning, for example--the appearance of it--everything related to user registrations, etcetera. So DotNetNuke is the platform for modules or widgets.
And so it sounds like, if I get DotNetNuke in the picture, it gets me to a very, very productive platform right from the get-go. I can start slamming out those modules and get to my production very quickly.
And in terms of getting in of time to market, it is the way to go, because it frees you from doing a lot of the work that, traditionally, developers used to spend weeks--months--doing on and on. And I think Shaun can probably elaborate more on that.
So it provides a lot of the basic plumbing, like Nik said, to developers, so they don't have to focus on any of those mundane tasks. And it's all about abstraction and making it simpler and empowering developers to do more. And so, yeah, you can focus on your specific domain expertise to develop applications for your specific business purpose and forget about some of the details underneath.
I get this question a lot: "Why would I need DotNetNuke when I have ASP.net already?" ASP.net is a really rich, robust enterprise-level platform. And really, we build on top of that platform, but assemble it in a way which makes a lot of sense and takes away some of the guesswork involved in combining the various components together.
We make a lot of those decisions for you, so that you are built on top of best-practice architecture, and then you just focus on adding your specific domain logic to it.
[laughter]
I mean, I think that's pretty clear. But the cool thing is--now, if I'm an architect and I'm making this kind of decision: "OK, we're going to do a web app. Are we going to use DotNetNuke or are we going to build our own thing or whatever?" There is one very positive aspect, that because this has such a wide reach, I'm going to find developers who have experience with this more readily.
I mean, when you develop skills with DotNetNuke in one organization, those skills are portable to another organization which is using the same framework. So, it's not - I mean, I've worked in various development shops in the past, and even if we were using Microsoft Technology, each shop would do things completely different, and there would be a very intensive learning curve for new employees. Even though they knew the base technology to get into the application, it took a fair bit of effort. And with DotNetNuke - I mean, the skills are portable. So, you're immediately productive.
But, now I can take DotNetNuke, I can take you know some modules that maybe handle issues that are really not part of my core business. But, I can just pick up these modules from other places, slap them into the platform, and then I can focus on my core business to address a vertical, maybe some very narrow vertical.
Like I talked to a guy recently who focuses on non-profit organizations, specifically Red Cross. He's like, "That's all I do. Red Cross websites for Red Cross chapters in the United States." OK? Well, that's great. He's focused on a very narrow vertical. But this whole platform, and module economy, and ecosystem has enabled him to go after that very narrow vertical. Is this the kind of thing you're seeing happen?
And so, if it's a developer in Bulgaria, or Russia, or areas of the world which are economically depressed? These people can actually raise their level, or their class of living to a higher level, by building modules and selling them within the ecosystem which exists sort of outside of their geography - which is an amazing thing.
So, guys, thanks so much for sitting with me today, and sharing your thoughts about DotNetNuke.
[applause]
Wow, modular software! Talk about something that's just grown in huge, huge ways. It's kind of like ARCast--that's right! ARCast is growing, and I'm hearing from people all the time who send mail to arcast@microsoft.com.
Here's one from Darren who says, "Thank you for the ARCast. Even as a developer, the material's extremely useful. Keep up the good work. I just watched the ComSee video, which was very interesting."
That's right. As a matter of fact, we've started this new thing called ARCast TV, and you can go to ARCast.TV to find a whole bunch of video episodes of ARCast. So that there's no confusion, we have ARCast Radio, which is what you're listening to, and ARCast TV, which you can watch even on a Zune player - and that's a lot of fun! We'll see you next time on ARCast.
Remove this comment
Remove this thread
close