Updates, Updates, Updates!

Well, day one of our closed beta is complete, and boy has it been busy! Time to talk about new features!

  • Subscriptions – users may now allow other users to “subscribe” to their feed, which gives them instant access to updates without requiring a mutual friendship. Account owners may decide to accept a subscriber as a mutual friend, or ignore the request.  [Finished]
  • Galleries – Coming soon, the ability to view all of a user’s photos and organize them in gallery folders [Coming soon]
  • Manual Cropping – Deciding where to crop your profile picture is a biggie. [Coming Soon]
  • Groups – Looking for group spaces for different interests and friends? It’s coming soon! [Coming Soon]
  • Events – Planning events takes hard work. And a place to do so. [Coming Soon]
  • Fetish wiki – finally, a database of fetishes. Just what I like to read on a Saturday night. [Coming Soon]

And here’s a short list of issues that were identified:

Addressed Issues:

  • Hard to read/inconsisten text box sizes on login/register. Fixed
  • Couldn’t save gender on Firefox. Fixed
  • Subscription users needed to “ignore” friend requests without booting the subscriber. Fixed
  • Self-made notifications were appearing if you reply to your own post. Fixed
  • Turning off friend-posts on your wall wasn’t working in all situations. Fixed

Stay tuned for more!

How the heck does facebook do it?

One of the most interesting challenges of developing this site is that Facebook has set the golden standard for how people expect to interact with social media sites. Although we could re-invent the wheel, it doesn’t make sense to, considering that one of the most basic UI-design principles is to put things where users would expect them.

So when developing our status update box, I made the decision to mirror as many facebook UI features as possible (work in progress).

So the question continously came up for me: how the heck does facebook do it?

Detecting URLS

A feature I greatly admire in facebook’s status update box is the ability to detect typed URLS and display a blurb about them as you go.

urls

Detecting the URL was easy, but determining when the person stopped typing the url was important. I couldn’t use sentence delineation, since a good portion of punctuation is valid in urls. Eventually I landed on the same choice facebook did, wait for a space!

But how does facebook grab such pertinent information, and such a relevant image as well?

That’s a good question. I went through a few iterations of ideas. First I tried sorting through all the images on the page linked, and grabbing the largest size image. That seemed easy to do, since you can grab the headers without downloading entire images. But the problem was, with most of these sites being as optimized as they were, the biggest sized picture wasn’t always the biggest resolution picture, and often I grabbed logos or advertisements for other posts.

I considered comparing actual resolution, but that would require the script to download and inspect each image.

Another feature which I had considered was allowing the user to scroll through potential thumbnails to choose which was relevant. This was one such feature I’ve seen on facebook. But that brought up another problem: in order to ensure that our site stays secure (SSL), we need to download any content we display and serve it from our server. We aren’t allowed to hot link, as this would break encryption. If we added this feature, our webserver would quickly fill up with junk, and the feature would be too slow.

Ultimately, I made the decision to stay with the largest (in kb) picture. But that didn’t sit right with me, since facebook seemed to have a magic key to know what image to grab.

Enter the OpenGraph standard.

It didn’t take me long to research that facebook was using a format of html tags called OpenGraph that served meta information within each page, feeding easy-to-use information such as the title, description, and image linked to each post. This was how facebook did it. We had a solution.

The hybrid 

Since not every site uses opengraph, I’ve decided to use a hybrid. First, it will attempt to seek opengraph information. If it’s there, we’re done. If not, it cycles through a number of other images it finds, selects the largest (kb) image file, copies it over. 9 times out of 10, it’s a relevant image. Sometimes it’s not, but we have to compromise just a little for performance.

As it stands the process of loading the urls is a bit sluggish, so I’m sure I’ll revisit this one again soon. But there you have it, the status box is that much better!

Multiphilia, Goals and Dreams

Hey all, I’m Panderific, the dev of multiphilia.com. Thought I’d touch base with everybody regarding the site.

Obviously, for some of you, you might be wondering, when the crap can I see this darn thing? Since it’s obvious it’s been over a year in development, you might be wondering if it’s ever going to happen at all?

Well, fear not, we’ve set up this blog to keep you up to date with the latest and greatest dev news, and what not. So buckle your harness and get ready.

Our Goals

First of all, it’s important to establish why we’re even making this site. There are alternatives, after-all.

Well, we are very familiar with the alternatives, and we’ve come to the conclusion that they are user un-friendly, slow, and lack the features we want in a good social site such as this.

Enter: multiphilia.com. With the latest and greatest technology, we plan on bringing you a really cool looking site that works how you’d expect, and doesn’t limit normal every-day features for the sake of it.

Some of what we’re working on..

Of course, I will go into more detail soon, but here are just a few of the things we’ve been working on.

  • Responsive AJAX status wall, with very similar features to Facebook

    demo1

  • Advanced Security features that are really cool

    security

  • Sleek Design that blows the competition out of the water

    screenies

Well anyway, I’ll be updating here as we go along to let you know how things are coming. We expect to have a closed beta very very soon, and will be handing out a limited number of invite codes at that time. Get ready!