Note: I'm just curious, I'm not attempting to make another social network. There's already too many.
I'm a System Administrator who was just made redundant and given my 2 weeks notice. I have a very wide range of Linux/Windows administration experience, but I'm a weak programmer (dabbled in python/php/objective C) who hasn't really coded since I graduated (Computer Science) in 2004.
I'm using twitter as an example because it's the most basic site I can think of. People register accounts, they post an update. Friends can see these updates. How would someone with my level of experience create something like this? Where would you start? Brushing up on coding is obvious, but when I read about twitter and facebook having APIs and things people can use to interact with them it goes so over my head I wouldn't know where to begin.
I know I could make the basics of the site in php without too much effort, but anything to do with security / providing an API / distributed programming (if required?) is all foreign to me.
Any comments really appreciated, it's more of a curiosity than a "I'm so going to make something better than twitter/facebook" idea someone might be attempting to execute. Thanks!
Facebook started out as a crude website and Zuckerberg even wrote a blog post admitting that. If you go to archive.org and look it up then obviously the creator had a limited skillset.
Don't get overwhelmed. Come up with an idea. If your mind wanders about all of the future possibilities, write them all down and then say, "At the core, what is this site?" Program what that core is. In your example, it is just what you said: start with creating user accounts, then allow users to have profile pages, then maybe comments, and finally be able to add friends. Just start coding and you will learn a lot.