|
|
|
Joined: 12/22/2006
Posts: 3
|
|
|
Hi,
As someone who is new to DNN, I'm trying to determine whether DNN would be a good fit for a new project I'm working on. The system being developed is a registration system for several member-based organizations. The functionality to be developed is quite extensive, however focuses predominantly on the purchase of a large number of memberships (user roles) and the registration of individuals and groups of individuals to events. The business logic is quite extensive around the event registration processes and real-time credit card payment is required for all processes (membership, event registration). Since there are several organizations involved, each registration system needs to be visually, administratively, and functionally separate (partitioned). There is however a lot of commonality between each organization in terms of functional requirements, so perhaps it would be implemented based upon one “engine” with organization specific tweaks instead of one engine per organization (tbd). I would like to be able to easily integrate the various available modules such as a Forum, Online Store, etc. such that users would be required to login only once (single sign-on).
By now, you should have some sense of the application I’m trying to build. There is a fair amount of development to do however, I am looking for a framework that would ease this task, and provide a lot of the boilerplate functionality that would come with a CMS (templating, user accounts with extensible user privileges, multi-lingual, available add-on-modules (most notably a store), etc.).
I’m familiar with Joomla and though its an excellent product for blog-centric web sites, I find that it falls short in the fact that it assumes that I’m trying to create a CMS/blog type module, instead of something that has a life of its own – i.e. registration processes that are composed of several pages each containing forms, etc. Further, it doesn’t do the multi-site, or multi-lingual stuff very well. Many other frameworks that I’ve seen fall short in terms of look and feel – e.g. don’t offer dynamic/drop menus, are very blog-centric, look like a wiki (a techy site), etc. Approaching this with ZOPE, Rails or similar framework seems to have a much more dramatic development curve, but might be most appropriate given the flexibility and customization required.
Requirements:
- visual templating engine
a visual template that can be applied and updated consistently across the site. The ability to have more than one per site would be nice. Each should support more than one language.
- multi-lingual
ability to easily maintain two languages for each page, component, module, visual template, etc. This should easily extend to any development I perform.
- multi-site
ability to maintain several unrelated sites (separate visual template, administrative control, etc.)
- extensible user accounts/privileges
would like to be able to extend/customize the login accounts so that they can be integrated into the application being developed.
Ideally, would like to share login accounts between each site. So only one login username/password to access all of the sites.
- An online store
Need a basic online store with support for inventory on products - specifically products which have size and colour (i.e. each size/colour combination has an inventory count), real-time credit card processing, shipping methods, etc.
- Ability to easily develop a new application
The application is composed of several membership and event registration processes, loosely based on a shopping cart methodology, all requiring payment. Event registration tends to be more complex, requiring multiple pages of forms to be filled in before checkout.
If you have any experiences or insight into appropriate platforms give my requirements above, I would be thrilled to hear from you. Further, I would be pleased to answer any questions you might have.
|
|
|
|
| |
|
|
|
www.berrydigital.com.au Joined: 1/23/2004
Posts: 1961
|
|
|
Here are my comments to your post, based on my own experiences, where, I made the decision back in Feb 2004 to do nothing but DNN sites - it was a Do or Die sort of attitude.... and sometimes it's been a near death experience, let me tell you, however, in spite of frustrating problems, I have to admit - when these sites are running, they don't give me problems and when clients come back with requests for enhancements, it's been a true pleasure being able to provide them with answers and suggestions, as the DotNetNuke framework improves. Sometimes it's been a simple upgrade solution, but other times it's been a requirement to start from scratch but the clients have learned to really enjoy working with their sites, so they are often inspired to work with me in upgrading and redoing their websites.
I have made my comments in RED next to yours.
Requirements:
- visual templating engine
a visual template that can be applied and updated consistently across the site. The ability to have more than one per site would be nice. Each should support more than one language.
- DotNetNuke Skinning Engine is one of the most advanced methods of managing the visual look and feel of a website - there is no product I've seen that matches the scope and breadth in which we can overlay the look and feel over a dynamic framework. I have looked, continue to look and have tested and will continue to always listen and review other products since it's in my own interest to do so, and also I like to see how other things are done. I have yet to see any application be able to satisfy the detail of accuracy to which many companies require their looking and feel to match. The downside to this is that it's not 100% XHTML compliant out of the box, nor does it have 100% compliance to 508 and accessibility out of the box. It can be done, but if required, this must be considered in the pricing of the project. I have found that I can spend as much time, on advanced and complicated sites, requiring pixel perfect replication, more time on the browser compliancy than building the whole project. (let this be a warning for those insistent purists - it comes at a price)
- multi-lingual
ability to easily maintain two languages for each page, component, module, visual template, etc. This should easily extend to any development I perform.
- Yes, There has been extensive work carried out by the core team starting from early 2005 to bring a multi lingual solution. We were fortunate to have an amazing talent from a non english developer who has helped iron out many issues of localisation. Bring to the table, the project leaders such as the announcements and user defined table and the FCK editor project, (just off the top of my head) and we've got a level of diversity and understanding that has further seen the multi lingual capabilities extended. There are third party products that you can also purchase and some for free that make the ability to run and manage websites in different languages a viable option. (No it's not automated, as some have asked - eg.. there requires input into your own languages, but the dynamics of DNN along with the modules applied, will show information in the language your user has opted for.)
- multi-site
ability to maintain several unrelated sites (separate visual template, administrative control, etc.)
- Yes - DNN is perfect for this - It allows you have multiple sites in either a full portal - domain.com, or.. sub.domain.com or... domain.com/sub infrastructure. You can setup under the same code base and for me, apart from the skinning engine, this is one of the most diverse features of DNN. It's really a smart IT hoster's dream. Some people are not confident in putting their sites in one basket, but I know that most of the experienced users here will be running many sites under the same code base. I did a small video that explains about child and parent portals, IIS, DNS to show the diversity and the automation in which we are able to deploy websites quickly, with confidence that the integrity and information is followed through. There are also third party solutions that allow you to share information throughout your portals as this is not done by default within the core install. Having said that, there is a solution for hosters to provide *global* banner advertising, as well as a portal administrator to provide *local* advertising. If I was to setup a banner ad as the 'hoster', I can choose to allow any further 'portals' installed within the single code base, to display advertisements throughout the banner ad module which is shipped with every installation. So by a simple check box, I can force functionality to be specific to that particular portal, or, serve ads managed by the 'host' or 'super user' would also be a good term for this.
- extensible user accounts/privileges
would like to be able to extend/customize the login accounts so that they can be integrated into the application being developed.
Ideally, would like to share login accounts between each site. So only one login username/password to access all of the sites.
- Ok to your answer here - Yes there is extensive account / priveliges but there are limitations in the default installation. But it has a fantastic hierarchy now that was introduced this year and I felt was one of the defining moments that really made this an excellent solution for companies with multiple roles and role groups. It allows for many more roles that are easily managed. For example I have one one site - my 'skincovered goodie bag' Global Role - In that role, I then assign 'november goodie bag users', 'december goodie bag users' and so on. What this lets me do is quickly assign priveliges and / or send information to ONE or SOME or ALL roles. So it's given me further depth in managing my users who have a mix of priveliges. Management of these can also be easier by assigning RSVP codes where the users who are registered on the site, can with the use of these codes - be assigned automatically, specific roles without you needing to log in and add them manually. It also allows for date sensitive roles, so you can confidently 'set and forget' roles which dnn will automatically take care of. (The limitations here are that only the super user can have access portal wide on the same code base - this means that you may require a third party product that allows for single sign on throughout an installation with lots of portals under it - but there are solutions for that although I've never tried them myself, I know many use them)
Having said that - All the modules installed in DotNetNuke on a single portal use the same membership management - it's only if you want to share different sites and portals you need to look for third party solutions.
- An online store
Need a basic online store with support for inventory on products - specifically products which have size and colour (i.e. each size/colour combination has an inventory count), real-time credit card processing, shipping methods, etc.
- There are a few online stores - There is one that ships with the core, but I've not used it since my work is much more commercial and I don't have the time to explore all things, but several people use it, however, it's still in growth and I'm not sure on the status of it - you could look at the store forum and get your own assessment on the viability of having it as your solution. I've seen a few stores popping up and I know there is the marketplace store - using the aspnetstorefront application - I believe one of the directors of DotNetNuke has a financial interest in this area and since it's being used for their own marketplace, I would think that in time it will be the flagship application promoted by the DotNetNuke corporation so it's worth keeping an eye on. For me, I use the Catalook store - which interestingly enough is a German product which came to life back in April 2004 in DNN 2 days, and it's been around for a few years now and is a good option to consider. Value for money you'll be pushed finding something that does so much and integrates beautifully into DNN. The downside here is that it's not been the prettiest store initially, but there are a few of us who have managed to turn the store into great looking sites. It's flexibility and complete control for the end user make it sometimes a bit harder to get looking right, but, the feedback I've received from clients has been very positive and it's continued to grow from strength to strength over the last 3 years. I think we'll see some good things with ecommerce in general in 2007 - And catalook as very good multi lingual support and about 75 payment gateways in the build.
- Ability to easily develop a new application
The application is composed of several membership and event registration processes, loosely based on a shopping cart methodology, all requiring payment. Event registration tends to be more complex, requiring multiple pages of forms to be filled in before checkout.
- Catalook provides these elements - you can have product purchase, gift vouchers, recurring membership and billing, and integrates with some third party 'user registration' modules, allowing you to take advantage of third party products as well as check facilities built into the application, however, I've not developed the pages myself, but have customised the the store pages for these clients who have been happy with the end solutions.
I get asked about comparisons to other products, the risk of having been so committed to DotNetNuke - it has been a risk, and there are and will continue to be other products that come out in the market place, perhaps open source - who knows, but definitely commerically and then we have Sharepoint 2007 which people are raving about, there's also Joomla, Mambo, Oscommerce, php nuke - I don't know them all, but when people point me to their solutions for comparison, I'm always interested in looking.
Like any product if you become a master of it, you can make it sing and dance, but at the end of the day you need to ascertain how much time you are willing to put into this or any other application and the interesting thing that I've noticed more in the last 6 - 9 months is the uptake of users from other systems, coming to look and try DotNetNuke. Something within their own environment is lacking, their clients are asking for solutions that they cannot deliver and here's why I think DotNetNuke is a stellar choice and why we have a very positive few years ahead as far as I can see.
- The skinning capabilities - by far set it so far past any other application that I think it's the key to why people want to move towards it. I can take virtually any website and skin it to the client's look and feel, and overlay into dnn. It might not alway be the best or cheapest solution, but I can make it look just as the static website. I can't do that with any other application. And while the trade off at this stage is that it's not 100% compliant, we're getting there, and, the clients are happy - very happy because they invested many tens of thousands for their branding, style guides, look and feel and it's an integral part fo their business. They don't want to have a site that has to be changed to fit the framework. We're all wanting something to LOOK and PERFORM as we want.. Initiall we were happy with being able to manage how things work, but now we're smarter - we want it to look as we want. DotNetNuke will allow you to do this and mask the application framework - I've done sites people find hard to believe it's DNN..
- The Plug In Options - Yes there are plug in options on other CMS products and some there are many more than dnn, but there must be something lacking - particularly with ecommerce, since I'm getting enquiries from die hard linux people who can't meet their clients requirements in making a website a website AND a store. I'm sure it's possible, but we're talking about 'easily' here, solutions that don't require us to be some code guru. I think we have a fair way to go in making the stores look as good, since in my opinion, there's no stunning off the shelf store that plugs into dnn seamlessly - the closest I've seen is Catalook store and I hope in 2007 to be able to turn out store that are as stunning as some of the oscommerce ones, but it's taken me about three years of plugging away with DNN and supporting third party developers to get close to the holy grail.
- Developer Tools - You know, I think that Microsoft provides the most amazing developer tools for programmers to use. I think that's the price of commercialism - unlike Linux and other free developer based applications, the one thing I've heard over and over again is that Microsoft has the best tools for developing solutions. I might get flamed here, but you know I have a son who's an avid Linux geek. We have had some fun and heated discussions about the old Linux vs Windows space, and I run Linux for my mail servers, I'm not so blind to know there is a difference, but here, we have the opportunity for someone who's looking at working with DotNetNuke to download code for free, download some basic developer tools for free, find some good online examples for free, and test the water, this is where so many people got their start. I have heard there is a very difficult learning curve for some - but the common thing I've also heard is.. when the penny drops it's fantastic. And not being a developer, I am not really qualified to say so I'm passing third party words here OK. But another interesting thing is my son did ask me to setup a DNN site for him because he couldn't be bothered with the 'hassle of trying to make something look like half of what I could setup in 1 hour'. And he still continues to work with Linux / Unix / CGI/ Perl / MySQL / Slackware / and compiling his own code.
- The opportunity for companies who are perhaps 'Microsoft Partners' to take advantage of being able to offer a competitive solution when quoting projects that people may be using the free php solutions for and developing further. I know there are several large companies who make their money on building out the php framework and they had a perceived domination in the market place because often a .NET solution with such diversity couldn't be competed with, and SharePoint shouldn't be compared with DotNetNuke in my opinion, they are different solutions, and the smart companies are using DNN as a foot in the door for the opportunity to sell more Microsoft solutions. The support from Microsoft as well - that should be acknowledged - they have been tremendous in listening and working with the DotNetNuke core team developers at a high level. So, I guess it's given many companies 'new opportunities' and in 2007 I'm sure we'll see this.
This is a long post I know - and for some, maybe long winded, but every person who spends the time to ask their questions so succintly and with such purpose, I try to give the answers as best I know, based on my own experiences, as that is all I can share, but not from a developers point of view, nor from a 'big corporation' perspective but from the view of someone who has spent the last 4 years trying to 'get it right' and I am happy to share with people my experiences, warts and all, to help them make better and more informed decisions, because the more people we have using DNN, the better the product becomes.
Now, I really should have some breakfast and finish cooking our Christmas dinner - we celebrate Christmas on 24th December.. it's just a Danish tradition I've grown up with all my life..
Hope this gives you some Christmas thinking and that you feel that DotNetNuke can meet your expectations.
Nina Meiers
Nina Meiers My Little Website
If it's on DNN, I fix, build, deploy, support,skin, host, design, consult, implement, integrate and done since 2003.
Who am I? Just a city chic, having a crack at organic berry farming.. and creating awesome websites.
|
|
|
|
| |
|
|
Joined: 12/22/2006
Posts: 3
|
|
|
Nina,
Thank you for your excellent feedback. Your insight and effort is greatly appreciated.
Thanks.
|
|
|
|
| |
|
|
Joined: 12/22/2006
Posts: 3
|
|
|
Hi Nina,
Thank you once again for your thoughts. I read and re-read your post it and really appreciate your insight. One question or (perhaps a concern) that remains is around the development of a web application which will essentially extend the DNN installation. The key concerns I have are perhaps somewhat difficult to quantify, but are essentially those of any project manager trying to evalutate/de-risk the adoption of yet another framework.
- I guess the most pressing question is how easy is it to introduce a multi-page processes into the DNN model?
By “multi-page processes”, I am referring to a registration process that a user must complete beginning to end, which is composed of several pages of web forms that must be completed in sequence followed by payment. As a process, the user must begin at page one and end with payment and must be stopped from violating these rules (e.g. by bookmark’ng pages, going back in the browser, etc.). The reason I expose this requirement is that I know that some frameworks are quite rigid/restricted in how they enable customization… e.g. here’s a box, it has a model and some constraints, now fill in the details (within said constraints). Further, CMSs tend to follow a page paradigm (e.g. a module or control appears on a page), however these registration processes may span multiple such pages, so I want to be assured that there isn’t any such constraint in DNN.
- Do you envision what I’m trying to do mapping cleanly into the DNN world?
Not knowing DNN, its hard for me to talk specifics. However, there is at the same time a need to have a lot of flexibility (ie. break out of a page-based methodology) while at the same time having an application that integrates nicely into the portal (i.e. being able to arbitrarily have one or more such registration processes appear in the dynamically generated menus, but not show up in search results)
- How much time and effort will be required relative to rolling something from scratch
This I imagine is hard to quantify, but I’m presuming that going with a framework like DNN will offer certain advantages that will outweigh any development curve introduced by going with DNN. Do you have any estimates or general insights around this type of thing?
- How long would it take a VB.Net developer who is NOT familiar with DNN to become productive in this environment?
Any other thoughts you might have around de-risking/evaluating this environment would be appreciated.
Thanks
J
|
|
|
|
| |
|
|
|
www.berrydigital.com.au Joined: 1/23/2004
Posts: 1961
|
|
|
AAhaa.. now I sense a mix of developer and generalised questions which may be out of my scope and I may have to call on the higher knowledge to be more specific.. so I'll answer as I know how and ask either John Mitchell or Sebastian Leupold to respond to since these guys are developers which more details or correct answers..
- I guess the most pressing question is how easy is it to introduce a multi-page processes into the DNN model?
By “multi-page processes”, I am referring to a registration process that a user must complete beginning to end, which is composed of several pages of web forms that must be completed in sequence followed by payment. As a process, the user must begin at page one and end with payment and must be stopped from violating these rules (e.g. by bookmark’ng pages, going back in the browser, etc.). The reason I expose this requirement is that I know that some frameworks are quite rigid/restricted in how they enable customization… e.g. here’s a box, it has a model and some constraints, now fill in the details (within said constraints). Further, CMSs tend to follow a page paradigm (e.g. a module or control appears on a page), however these registration processes may span multiple such pages, so I want to be assured that there isn’t any such constraint in DNN.
- To my knowledge, I've never heard of any situation where people have been unable to utilise the registration process to their requiremenst, not that I know what yours is, but since we've had litererally hundreds of thousands of installations, and used in highly customised environments which have been successfully developed and deployed. An example here of one site I skinned with a large developer company was http://www.lendingcentral.com.au/ - If you were to click the Sign Up button in left hand side, just under log in, you can see the multiple choices for registration which runs over several pages. So in my interpretation I see it's possible, how it's done... well that's the developer part I am not qualified to answer.
- Do you envision what I’m trying to do mapping cleanly into the DNN world?
Not knowing DNN, its hard for me to talk specifics. However, there is at the same time a need to have a lot of flexibility (ie. break out of a page-based methodology) while at the same time having an application that integrates nicely into the portal (i.e. being able to arbitrarily have one or more such registration processes appear in the dynamically generated menus, but not show up in search results)
- This is an area I'm again, not qualified but one of the major reasons I've heard DotNetNuke has been chosen over other methods and writing from scratch is the depth of infrastructure it already brings to developers looking for solutions. Time and time again I've heard the comments that DotNetNuke has given them a 'head start' on a project since it has very advanced security role and membership infrastructure that allows a developer to extend to their requirements. So I'm not able to give you examples, but more a confirmation from others when I ask them why they chose DNN in the first place.. I'm always interested to know what is the catalyst that makes people choose something, not just DNN, but really in anything (it drove my mother mad when I asked WHY all my life as a child!!!) However, I'll ask the guys to see if they can shed more light in this area for you - since you've asked.
- How much time and effort will be required relative to rolling something from scratch
This I imagine is hard to quantify, but I’m presuming that going with a framework like DNN will offer certain advantages that will outweigh any development curve introduced by going with DNN. Do you have any estimates or general insights around this type of thing?
- You've hit the 'how long is a piece of string' scenario.. and that question is way out of my league - When developers come into DNN they are talking about the time savings area of the already developed framework, but that doesn't include the learning curve - I cannot give you an answer, and I'll tell you that people ask me this about skinning.. I can 'knock up' a skin in 10 minutes - but what's it for? Certainly not a commercial project, and sometimes the testing and broswer compatibilty checks takes up more time than the whole project, and yet I've also done some skins that take me about 80 - 100 hours - just to get right - (obviously not all in one go, but over a period of a couple of months) hence the ball of string question. However, I have found out over time, the better specced the documentation, the less room for mis interpretation and feature creep which can eat into any project, skinning, web or development.
- How long would it take a VB.Net developer who is NOT familiar with DNN to become productive in this environment?
- You know - that is also out of my league but I have heard more than once, it's got a vertical learning curve - and many people give up along the way especially when working with dnn3, dnn4, vs2003, vs2005 and not having .NET experience.. that's probably the worst scenarios. Yet, the majority of .NET developers I've noticed on the forums here have moved into DotNetNuke and overcome some of the 'quirks' and just run with the whole concept of using DNN in their projects. There are plenty of tutorials and much more information for the developer than in most open source projects as well as the forums here so that if ask the questions well enough, you can get very specific answers from some really talented guys - I do take my hat of to these people since many of them share their knowledge in a very generous way.
I will ask others more qualified to answer some of these questions, as the nature of what you're asking is moving over to an area I'm not qualified to answer. But again more food for thought and glad you took the time to read it - I had a look at it today again and thought it was a long post but it was a good mental thinking process as to why I still like working with DNN.
Nina Meiers
Nina Meiers My Little Website
If it's on DNN, I fix, build, deploy, support,skin, host, design, consult, implement, integrate and done since 2003.
Who am I? Just a city chic, having a crack at organic berry farming.. and creating awesome websites.
|
|
|
|
| |