I'm just wondering if a couple of experienced Umbraco developers could spare a few minutes to give me a high level steer on what the Umbraco architecture would look like, for example, for a booking system. Let's say it's for a sports professional offering lessons that can be booked online. I just really want to understand how much of such a system is completely self-contained within Umbraco and its database, and how much might need to be built through additional .net MVC code with a separate SQL database.
So, in this example, there will be some content pages about different parts of the country, the sports clubs in each area etc. which an Umbraco User could create the content for in a straight forward manner. That part all seems good and straight forward.
Then, when a professional wants to sign up to the service, they become an Umbraco Member of a certain Type, and tell us all about themselves, select the club they work for (or request addition of one not in the list), define their calendar and availability etc.
On the front-of site, potential customers can then search for people in their area fpr their sport, maybe send them messages through the system, and make a real-time booking based on what the calendar shows as available.
To make this example business logic work, would you be able to do all that inside the Umbraco User area (as a developer), or would you step over to Visual Studio to extend the system that way?
There is a lot that appeals about kick-starting a system with Umbraco. I just need to know as the project manager whether I need 100% Umbraco experts, or will I get along just fine with .Net c# developers who have grasped the concepts of Umbraco?
Thanks for reading, and would appreciate any thoughts.
I've been using Umbraco for about 8 years now and still get a huge amount of pleasure using the core functionality, and then also extending Umbraco to match the needs of the site / functionality.
Currently I help manage a site that is very similar in concept to the one you describe.
We have added custom tables to the primary database (or you could run a separate database if preferred) for storing the custom data. As the data is not stored in the classic "node" tree structure of Umbraco, you then could install the following package to provide a means for accessing the data via the admin area of the site. It may not be comprehensive enough for your requirements, but does enable a basic interface for data.
If you need a "holistic" view of a customer record, then you may need to develop your own admin interface.
We have then "wired up" the functionality using the ORM design pattern (PetaPoco). All the rest is stock standard MVC functionality, just the Umbraco way, i.e. Surface Controller classes being extended with 'Umbraco.Web.Mvc.SurfaceController", etc.
And to answer your second question - it would be beneficial that your developers have a good understanding of how Umbraco works. It might be beneficial to get them install an Umbraco site with a starter kit like the Fanoe starter kit so they can play / learn / break...
Whilst the custom functionality is probably the biggest part of the build, the initial setup of the site is also a hugely critical aspect - one that can impact on the overall success of the site longer term.
Configuring the more standard aspects of an Umbraco site are equally important as the c# / database based. As background, I took over managing a site that was built by developers not familiar with Umbraco. The core functionality worked fine, but the Umbraco part was a bit of a dogs breakfast - 2 years later there are still legacy issues that irk me.
So getting the following aspects right (or right for the current requirements) from the outset is equally important, and this is where it is more important to have an Umbraco specialist on board:
data types
document types
templates
site configuration (e.g. setting a media picker for site logo, etc)
Thanks very much for your thoughtful and helpful answer. I know what you mean about irksome old code! There's nothing quite as easy to follow as your own :)!
If I may, I will take you up on your kind offer to email you when more questions arise.
Thoughts on new project
I'm just wondering if a couple of experienced Umbraco developers could spare a few minutes to give me a high level steer on what the Umbraco architecture would look like, for example, for a booking system. Let's say it's for a sports professional offering lessons that can be booked online. I just really want to understand how much of such a system is completely self-contained within Umbraco and its database, and how much might need to be built through additional .net MVC code with a separate SQL database.
So, in this example, there will be some content pages about different parts of the country, the sports clubs in each area etc. which an Umbraco User could create the content for in a straight forward manner. That part all seems good and straight forward.
Then, when a professional wants to sign up to the service, they become an Umbraco Member of a certain Type, and tell us all about themselves, select the club they work for (or request addition of one not in the list), define their calendar and availability etc.
On the front-of site, potential customers can then search for people in their area fpr their sport, maybe send them messages through the system, and make a real-time booking based on what the calendar shows as available.
To make this example business logic work, would you be able to do all that inside the Umbraco User area (as a developer), or would you step over to Visual Studio to extend the system that way?
There is a lot that appeals about kick-starting a system with Umbraco. I just need to know as the project manager whether I need 100% Umbraco experts, or will I get along just fine with .Net c# developers who have grasped the concepts of Umbraco?
Thanks for reading, and would appreciate any thoughts.
Steve
Hi Stephen
Just my 2 cents worth.
I've been using Umbraco for about 8 years now and still get a huge amount of pleasure using the core functionality, and then also extending Umbraco to match the needs of the site / functionality.
Currently I help manage a site that is very similar in concept to the one you describe.
We have added custom tables to the primary database (or you could run a separate database if preferred) for storing the custom data. As the data is not stored in the classic "node" tree structure of Umbraco, you then could install the following package to provide a means for accessing the data via the admin area of the site. It may not be comprehensive enough for your requirements, but does enable a basic interface for data.
https://our.umbraco.org/projects/developer-tools/ui-o-matic/ - Tim is a bit of a clever fella (extremely understated...)
If you need a "holistic" view of a customer record, then you may need to develop your own admin interface.
We have then "wired up" the functionality using the ORM design pattern (PetaPoco). All the rest is stock standard MVC functionality, just the Umbraco way, i.e. Surface Controller classes being extended with 'Umbraco.Web.Mvc.SurfaceController", etc.
And to answer your second question - it would be beneficial that your developers have a good understanding of how Umbraco works. It might be beneficial to get them install an Umbraco site with a starter kit like the Fanoe starter kit so they can play / learn / break...
Whilst the custom functionality is probably the biggest part of the build, the initial setup of the site is also a hugely critical aspect - one that can impact on the overall success of the site longer term.
Configuring the more standard aspects of an Umbraco site are equally important as the c# / database based. As background, I took over managing a site that was built by developers not familiar with Umbraco. The core functionality worked fine, but the Umbraco part was a bit of a dogs breakfast - 2 years later there are still legacy issues that irk me.
So getting the following aspects right (or right for the current requirements) from the outset is equally important, and this is where it is more important to have an Umbraco specialist on board:
Happy to do more brain dumping if you like - [email protected]
Cheers, Nigel
Hi Nigel,
Thanks very much for your thoughtful and helpful answer. I know what you mean about irksome old code! There's nothing quite as easy to follow as your own :)!
If I may, I will take you up on your kind offer to email you when more questions arise.
Best wishes,
Steve
is working on a reply...
This forum is in read-only mode while we transition to the new forum.
You can continue this topic on the new forum by tapping the "Continue discussion" link below.