What is WebMatrix?
To quote Scott Guthrie - “WebMatrix is a task-focused tool that is designed to make it really easy to get started with web development. It minimizes the number of concepts someone needs to learn in order to get simple things done, and includes and integrates all of the pieces necessary to quickly build Web sites.” From my investigations to WebMatrix and the creation of some OrchardCMS sites, I have to agree with Scott. The is really easy to get something together with WebMatrix.
What do I think is good about WebMatrix?
- WebMatrix has a lot of our of the box templates for CMS sites, blog sites etc.
- It is a lightweight IDE for developing on.
- Has automated deployment out of the box
- Comes bundled with IISExpress
- Comes bundled with NuGet It has a lot going for it. I was able to open WebMatrix, choose a new site from gallery and have an OrchardCMS site running in like 5 minutes. I initially thought this was fantastic! I still do in some cases but I can see this may cause us some problems as well.
- Doesn’t have a drag and drop interface for creating pages :)
What do I think is bad about WebMatrix?
- WebMatrix seems to store dependencies in the bin only so when opening in Visual Studio and clicking rebuild then bin files are lost
- Lack of intellisense support
- Seemingly lack of Webforms support – you cant seem to be able to deal with code behind files
- Data Access is a bit of a delicate issue in WebMatrix but I’m not jumping on that band wagon - EDIT: This needs a post of its own
So is WebMatrix a threat to the role of a professional developer?
According to Microsoft, WebMatrix is targeting those who currently write PHP, Classic ASP and who are new to web app development. I think its a great tool to be able to give new users to get started. This is where I also see a downfall in the product. WebMatrix has certainly made quite an impact on professional developers. More and more high profile figures are starting to talk about WebMatrix. 2 of the most high profile are Scott Hanselman and Rob Conery. They have used WebMatrix as a base for the development of their podcast site – This Developers Life.
From my experience, sometimes companies want web applications delivered fast. IF the company is not a native software company (their main product isn't software) then they sometimes don’t care how it gets made or what is used to make it. From companies I have worked for, if they knew there was a way for less skilled developers, who can be paid less, to create sites fast and get it deployed then they would do it. Those companies don’t really care how a site pieces together or care about its maintainability – once its released its done. There is also the cost – WebMatrix is free. It has site templates out of the box for free – VS2010 Professional is $1k (or thereabouts). Would a company struggling for cash be able to choose the $1k product for one of their developers? OR would they just use the free product that a junior developer can use?
WebMatrix is a great product – it just works! Its nice to use and has a lot of features out of the box. For smaller companies I truly believe that this tool will become very important. They cant keep up with the larger enterprise products. This is why I think that WebMatrix is a threat to software developers. Developers who work for smaller companies either need to start getting used to WebMatrix or companies may look to replace them in order to survive this harsh economic climate. For larger enterprises, if WebMatrix is a good fit for a job then I’d suggest to use it – right tool for the right job and all that. As I said its just easy! It does exactly what it needs to. Its just a tool I know and you still need a good grounding in development practices but lets see what has happened in 1 years time after it has been more widely trialled.