Though not always the case, my experience with MSOC sites is that you're 
offering Software As A Service, where you retain all ownership of the 
code and that is clearly stated within the contract with the client.

Steve 'Cutter' Blades
Adobe Certified Expert
Advanced Macromedia ColdFusion MX 7 Developer
____________
http://blog.cutterscrossing.com


Co-Author "Learning Ext JS 3.2" Packt Publishing 2010
https://www.packtpub.com/learning-ext-js-3-2-for-building-dynamic-desktop-style-user-interfaces/book

"The best way to predict the future is to help create it"


On 2/17/2011 12:21 PM, Robert Harrison wrote:
>  From a technical standpoint you are on the right track... we do a similar 
> thing in that we use a standard framework and deploy that to the sites we 
> build, thus we use copies of the same codebase.  It seems the approach you 
> are taking is to really use JUST ONE codebase to run all the sites.
>
> Technically I can see the allure, and if this is for a company owned group of 
> web sites and they are all similar this can work. However, if this is for 
> sites you are deploying for clients, there are at least two places where that 
> can really cause some problems. There are:
>
>   1.  Your relationship with the client changes and the client wants to take 
> the site and move. Now you are faced with either holding the client's site 
> hostage or giving away your multi-site base code framework (possibly even to 
> a competitor). Neither of those is an attractive option.
>
> 2. Also, assume one or more clients keeps coming back to you to make 
> adjustments and additions.  Now your code is getting more and more mucked up 
> with custom-code exceptions.  That's also not cool. Eventually that will make 
> your framework really difficult to manage and upgrade.
>
> If this is an in-house thing and you know the sites won't be moved and you 
> can control what's going in them somewhat, your approach is good. If you're 
> going to do this for separate clients, you should probably think about 
> building a framework you can copy, profile, and customize as needed.
>
>
> Robert B. Harrison
> Director of Interactive Services
> Austin&  Williams
> 125 Kennedy Drive, Suite 100
> Hauppauge NY 11788
> P : 631.231.6600 Ext. 119
> F : 631.434.7022
> http://www.austin-williams.com
>
> Great advertising can't be either/or.  It must be&.
>
> Plug in to our blog: A&W Unplugged
> http://www.austin-williams.com/unplugged
>
> -----Original Message-----
> From: Rick Faircloth [mailto:[email protected]]
> Sent: Thursday, February 17, 2011 12:28 PM
> To: cf-talk
> Subject: Feedback on this approach to "many sites, one codebase" (MSOC)
>
>
> Hi, all...
>
> I've been tinkering around the edges with "many sites, one codebase" (MSOC) 
> for awhile and was interested in getting some feedback on an approach I'm 
> taking.
>
> The most basic part is that I use the domain name to determine variable 
> values for a site.
>
> I'll start with that.
>
> I use application.cfc to set up the following:
>
> <cfset this.name = "#cgi.server_name#">
>
> Any issues with that?
>
> Then I have use the onApplicationStart cffunction to clear session and 
> application variables.
>
> Then I use the cgi.server_name, determined from the URL visited by a user, of 
> course, and run this query to get needed values for site variables from a 
> database:
>
> <cfquery name = "qGetApplicationVariables" datasource="globalSiteManager">
>               
>       select  *
>       from            siteApplicationSettings
>       where           (select strcmp(siteName, '#cgi.server_name#')) = -1
>                       
> </cfquery>
>
> Then, I set site variables as follows:
>
> <cfset application.dsn        =       
> "#qGetApplicationVariables.applicationDSN#'>
> etc...
>
> At this point, I'm entering all a site's variables into a database manually, 
> although if I continue with this approach, I'll develop an automated solution.
>
> The site menu is determined also by values in a database for the site by 
> using code such as the following:
>
> <cfset application.calendar   =
> '#qGetApplicationVariables.applicationCalendar#'>
>
> If the qGetApplicationVariables.applicationCalendar value is 'yes', then the 
> menu item is shown, if it's 'no', then the menu choice is not shown.
>
> The last piece of this approach is setting path variables, etc, for image and 
> document uploads, image paths, etc, with this type of code:
>
> <cfset application.userImagesPathAbsolute = 
> '#qGetApplicationVariables.applicationUserImagesPathAbsolute#'>
> etc.
>
> This seems to be working fine so far... speed is good, etc., but I'd like to 
> know, from those of you who have been down this road before, if I'm heading 
> for a show-stopping issue, or if this is a workable solution.
>
> And, I'm really not interested in frameworks...not at this point.
>
> Thanks for taking the time to read this and offer any feedback.
> I'm just ready to develop some applications that I can sell *more than once*!!
> "Work smarter, not harder" approach. Watching people getting rich selling 
> apps for $.99, such as "Angry Birds", is just killing me.  I thought, surely 
> there has got to be a better way to be a freelancer than "one-off" projects!
>
> Rick
>
>
>
>
>
> 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Order the Adobe Coldfusion Anthology now!
http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion
Archive: 
http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:342461
Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm
Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm

Reply via email to