I'm a total CF noob and joined CFcommunity just so I could post this question to a bunch of CF veterans. I'm about to embark on a journey to create a social-networking site and am hunting for the best set of tools to do it with. Thought I'd seek the benefit of collective wisdom before I start down the road of learning via hard-knocks.
Absolutely. Might I point at the largest social networking site on the planet at the moment: Myspace.Com powered by Blue Dragon + CF using some sort of Fusebox variant.
I've been building social network communities since I started in Coldfusion over 10 years ago and find its a tool perfect for the job -- the right mix of enterprise functionality and web 2.0 mashup capabilities and flex/flash integration; easy database integration and ability to scale.
If you're looking to build something from scratch its your best choice. PHP has a few open source projects that allow you to kick-start communities using some sort of advanced application platform like PHP-Nuke and similar projects.
I'd highly recommend using a framework too as these apps can call for alot of code re-use and integration.
Permalink Reply by Bob on 14 February 2008 at 5:26pm
Ben, thanks so much for the reply. That's exactly what I needed to know. I'm actually needing to ramp up on my coding skills and want to start with the best platform for the social networking concept I have in mind. Your reply has saved me tons of time in searching, trial and error.
Myspace is actually ASP.NET with a very very thin layer of BD.NET on top of it in a few places. Most of the core code was rewritten in a .NET language like C# or VB.NET. Quite a lot of the fuseaction urls are really rewritten in the server layer into ASP.NET requests too. They ran into some very serious scaling issues with CF5.
Myspace really isn't the best example for a CF website since it's not really CF at all at this point.
Permalink Reply by Bob on 22 February 2008 at 4:57pm
Thanks for the clarification, Elliott (and the link). It's still helpful to know that MySpace started out with a CF foundation. If my site gets a few million accounts, I'll probably be able to afford a re-write to Microsoft server products. ;)
Definitely. Social networking sites use common web development techniques, all of which CF can easily handle. CF makes it easy to provide APIs and services from your site for integration with other sites/software through web services, rss, http etc - popular for social networking sites. And CF integrates well with other technologies so that your site can take advantage of external services. Go for it!
I run a CF based online media subscription site. Have ~30K members now and a ton of data about them that could form the foundation of a cool social network. Thus... it makes sense to use CF. My question is: Are there viable CF based social netoworking plaftorms we could buy, bolt on, and customize as needed? Or do we have to build it from the ground up?
CF have been able to do almost everything that i've asked of it so far so i would strongly suggest that CF can handle social networking. Check out RIA forge for some upcoming projects.
CF is a really nice technology and it can save you a lot of time, but you should also look at how much money you really have to burn and how big you need to scale and how fast. Lots of social networking sites start off as small projects with very little funding. Using CF might be perfect or it might be the wrong move.
Don't believe all the myths about php (or any other technology) taking so much time to develop in, or lacking so many features. Also note that CF licenses are very expensive. A php+memcached+apache+linux solution will cost very little when it comes time to scale. Really all you'll end up paying for is the hardware, while the standard CF install of Windows+CF is going to cost quite a lot more. Check out frameworks like CakePHP, Symphony and CodeIgniter and you can get nearly all the features of CF minus a few Adobe specific features.
php powers some very large social networking sites, all of which started as much smaller projects. For example Digg and deviantART. For deviantART to scale to more requests it just costs whatever the new server costs and some time to install it in the data centre. There are no license fees. For a big company to purchase a bunch of CF8 enterprise licenses at 8k a pop that's nothing, for a brand new social networking site struggling with load that might be a serious issue.
CF really shines when you need to integrate with other things. From what I can see it's pretty close to the most comprehensive middleware there is. It plays nicely with lots of other languages through Java implementations, .NET, COM, CORBA, PDF, Flash and others, but do you really need this level of integration on your social networking site?
CF is great, but it's not the axe for building every log cabin.
So really the correct answer to CF's viability for a social networking site is Maybe.
Permalink Reply by Bob on 22 February 2008 at 4:59pm
Appreciated your thoughtful response here, too, Elliott. A major consideration for me is that my application is going to need extensive gating to external services. I like that CF has support for IM/SMS gateways already. I'm going to need a gateway to cell networks to receive voice data in addition to the SMS capability.
Permalink Reply by Axel on 22 February 2008 at 8:26pm
Hi Bob,
YES - we entirely built Xeequa, a social network for businesses in ColdFusion (CF7/8). It is a networked multi tenant architecture, meaning we actually have business tenant like in Salesforce.com that are networked over the social network they build. It is probably the most advanced social network architecture - all built in ColdFusion.
I am glad I found this site. I currently have a local forum and networking site. It is currently built with an older version of technology. I want to update it with the latest social networking functions, many of which I see incorporated into this site. My forum software is fusetalk and we get tons of traffic (4 million page views a month). I want a robust profile page similar to the one on this site to be integrated into my fusetalk. I want an article maintenance system as we have city articles, etc where users can leave comments and rate the articles.
I want it to have the "group" funtionality similar to meetup.com where my users can form their own group with a forum, blog, photo and video galleries, make public or private, etc.
I am not a developer so I need explanations dumbed down for me. Every developer I speak with tells me their language is the best. I had been convinced that I would need to switch out of coldfusion to meet my site goals but after reading this site, I am beginning to 2nd guess this.
a friend of mine has been trying to talk me into programming in dotnetnuke but using modules and piecing them together makes me nervous.
any additional feedback anyone can provide on my difficult programming language decision is greatly appreciated.
sorry I have been spamming the board. I am in the process of determining if I should switch my site from coldfusion to another language. This site got me excited. I am coming down to reality as I now realize this is not a coldfusion site but a ning.com site....bummer.
many of the core functions I want are on display here as I mentioned above. So if you were going to build a site along these lines, what language would you use? Would it be possible in cold fusion, and if so, how much effort would go into it?