Not a whole lot of people I knew and having your own hosting and domain costs a bit, most used third party blogs and forums anyway. And it all lacks authentication and aggregation. Sure, you could set up users and accounts and manage all that but people wouldn't bother to manage 100 separate accounts the way they have 100 friends on one Facebook login. And unless every site it set up with an RSS feed there's no easy way to aggregate lots of blogs and give you one dashboard of what your friends are doing. Nothing really unsolvable though, you could have self-hosted for yourself and third party hosted nodes for other people but there'd have to be a business model for the hosting companies. People generally won't pay when they can get a "free" account on Facebook so then most are really back to ads or data mining for most people anyway.
You can use Facebook to log in to a lot of services as well, but that's not really "using" Facebook because you're not doing anything with what Facebook offers. You're just telling a website that you are who you say you are.
Sounds like you're using Facebook for exactly it's intended purpose: to allow someone to build a big database of things that you do to target advertising. You're not just telling a website something, you're telling Facebook what other sites you visit and care enough about to log in to and what your identity on those sites is.
OwnCloud is open source and does the same things as Dropbox (although in really crappy PHP on the server, so you'd better have a lot of spare cycles to burn - it's the first time for several years I've seen file transfers across the Internet be CPU limited).
The problem is that they're comparing apples to oranges. Of course a direct local connection will be faster than two devices sharing the same Internet connection and going via a server, but most of the time that I want to use a server as part of a sync workflow it's because the devices aren't together and I want to do it asynchronously. The equivalent for BitTorrent Sync would involve having a central server somewhere (possibly in your own home) that's always on and is a party in the sync.
Google Drive, OneDrive, Dropbox
They all have your data, they can do whatever the f... they want with it. Unless you're talking about a client backdoor to access all the other files you didn't want to share with the cloud, but I don't think any of the others are any better. If you want real control, it's ownCloud or no cloud I think...
Wow, the ability to come up with "he did it, but it' wasn't bad enough to warrant legal action" excuses has had a huge renaissance.
More like you accuse someone of defamation and it's the difference between "He told people I'm an asshole" and "He told people I'm a child molester". Both are defamatory statements by definition "1. (Law) injurious to someone's name or reputation)" but only one is actually illegal. Even if you're selling a polished turd you can make a lot a objectively highly questionable praise, misleading statistics and lies by omission without actually incriminating yourself. Like the defamation example above, you usually have to be caught in a factual lie in order to be convicted. Every sales pitch strategy I've been involved in involved pushing our strengths and concealing our weakness, if that was illegal we'd have to put all of marketing and sales in jail. And every person who went on a date ever. Meaning
If this were a map, say in Python, then the programmer would have to supply the value $i (or in Python, just i) with an ++$i (or in Python i+=1). This can be done in PHP too, so there is no disadvantage to what PHP supports. The problem here is that the programmer is putting dynamic code in the SQL query without sanitizing it first. So what if it is supposed to be variables that are not supposed to be affected by the user? The first rule of preventing SQL injection is to use ZERO outside string variables, even those ostensibly created by your own code. If the data _or metadata_ (i.e. array keys) came in through a function argument, then it is NOT CLEAN.
Of course, the "natural way" to write code is often riddled with buffer overflows, SQL injection, and other naive security issues. This is why you hire a programmer with experience, just as with any other profession. There is no end to the problems with PHP, but this particular bug is not one of them.
Assuming the need is infinite, if your demands are satisfied you might turn to flexibility and convenience. Last quarter we here in Norway saw a tiny dip in fixed residential broadband for the first time ever, whether that's a fluke or not is uncertain but business lines have been on the decline for some time because small 1-5 man shops use 3G/LTE to check their mail rather than having a dedicated broadband line in the office. It's just an extension of that most "normal" people I run into use wireless now instead of wired networks because it's capped by their Internet speed anyway. And even if you gave them gigabit Internet, they'd probably still feel wireless was fast enough.