Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

lucylee00

macrumors newbie
Original poster
Oct 11, 2011
2
0
I am looking to start my own social network. I want to do it myself. What programs are the best? Please help. Thank You :)
 

tehprofessor

macrumors newbie
Oct 11, 2011
1
0
Textmate or Macvim

You're not going to be able to use a program, you're going to have to actually program. Making a social network requires logic; which, you're going to have to write yourself. Any program which 'makes' social networks, if such a thing exists, probably isn't going to do a good job or assumes you can program it to do what you want.

If you've never done any programming before, you're going to have quite a bit of learning to do. I would highly suggest, from my own experience, to learn Ruby or PHP (preferably Ruby since I think it's a better language to program in, much easier than PHP, with way less syntax). Though PHP may be easier to get started with since it is prolific on the web (I picked up PHP in a couple weeks, but I already knew Ruby) with a million examples.

Building a simple social-network can be a lot of fun and a good learning experience, but it's not something you'll be able to do overnight or quickly. Websites are easy, web-applications are not. Testing different browsers, and operating systems takes time, and is unfun.

I might suggest learning objective-c instead, and making an application. Websites just ain't what they used to be (I've been making 'em since 2004).

Some things you're gonna need:

Database
mySQL, SQLite, or Postgre for the database. I'd suggest mysql for no reason other than that's what most of the tutorials you're gonna find will use. For a real social network I might suggest against a RDMS for something like MongoDB but that's probably overkill and will surely increase the learning curve sharply.

TextEditor
I'd suggest Textmate or Macvim (with the Janus plugin). I used to use TextMate but it has been slow to receive updates and Macvim is free plus it has split window editing which is really handy. Any good text-editor should support syntax highlighting to help you read the code by color-coding it. This also helps when you've forgotten to close something, because the colors go wonky.

Version Control
As you're writing code, you'll probably screw up, and wish you had a backup. That's where Git or SVN come in handy, they let you create a repository that you 'check into' which stores your code. I'd suggest Git since it's what all the hip-kids are using these days... Plus it has some features that are definitely missing in SVN (last I checked, or maybe I just didn't get 'em).

Command Line (Terminal)
You'd better be ready to get down with terminal, because just about every tool you're going to use will be easier to use and more robust if used from it. Trust me, it's weird at first, but GUIs will slow you down and make your progress slow and frustrating.

XCode
If you're going to be developing on a Mac, which I presume you are, you'll need to install Xcode before you do just about anything else... I'd suggest just downloading the newest one.

Macports or Brew
These programs (choose one or the other, Brew seems to be gaining popularity) let you download and install applications that run in the terminal. You don't have to worry about which flags and compiling this way, it's taken care of for you.

MAMP
If you're going to go the PHP route, I'd highly suggest using MAMP (don't bother with the pro version). As it's stupid easy to get started and includes PHP with mySQL plus some other neat tools built in (like phpMyAdmin).

Hosting
I'd use either dreamhost.com for shared hosting, or linode.com for a VPS (virtual private server). The choice is up to you, a shared host will be much easier to setup but will probably become slow as your site gets more traffic. A VPS can be configured, and must be, by you to your needs. I would probably avoid this until you're feeling good about terminal, since that's where you'll be setting it up from.

Framework
If you're using Ruby, I'd suggest Ruby On Rails, if you're using php, I'd suggest codeigniter or cakePHP. Frameworks have a bunch of code written to help you get started actually creating your website/web-application. I'd definitely take the time to choose a language first and spend some time with it before you dive into a framework, or you'll probably be quickly overwhelmed.

Final thoughts...

This is going to take you quite a while the first time, and realize that deploying it to a server is a whole new bag of worms. Especially if you're the one choosing the web-server software (using a VPS).

Almost forgot:
HTML/CSS
You're pretty much going to have to become a CSS/HTML ninja; which sounds a lot more bad ass than it really is. CSS/HTML is relatively, to the rest of this, simple. You'll mostly be memorizing tags, properties, and attributes not trying to understand functionality.
 
Last edited:

lucylee00

macrumors newbie
Original poster
Oct 11, 2011
2
0
Thank You

Wow, Thank you. This information gives me a lot of options to think about. Thank you so much for the help. :)
 

7031

macrumors 6502
Apr 6, 2007
479
0
England
Seconded. However, if you have money to spend, SocialEngine is quite nice. I know at least one of my clients uses it, however it does cost around $300.

Having said that, the BuddyPress sites are very good, although as far as I'm aware the choice of themes is quite limited with BuddyPress, although even the default one works fine and is easily customised.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.