Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 158 Stack Exchange communities.

What is meta?
Here's how it works:
  1. Any Stack Exchange user can ask a question
  2. The community provides support, votes on ideas, and reports bugs
  3. Your voice helps shape the way Stack Exchange operates

Idea: Log in one time, and have site-specific profiles for each SE site. Users can have a site-specific rank for each site, so if they've never been to such-and-such StackExchange site before, and if they're logged in already, then when they visit the site their rank will be the default of 1 with no badges, etc. There'd be no need to log into each site and then have to perform accounts associations.

A solution to this could be to create a universal OpenID Account for all of StackExchange, while keeping the current accounts. Simply remove the OpenID login feature for the per-site-basis accounts and have them linked to the universal account.

This universal account would be invisible to the user. Stats, badges, etc would still be stored in site-specific accounts. If a user loggs in on any site using the familiar OpenID interface, are essentially essentially logged into their universal account. Then, when the user visits any SE site, the sub account for that site is automatically instantiated with its individual ranks, badges, etc.

I'm going to differentiate the indivual site accounts from the universal account by calling them "site-accounts".

An individual site-account would only be initiated for a specific site when the user visits that site for the first time, so there'd be no need to have site-accounts for each site as default. Optionally, you could have a new link next to the "login" link at the very top of the pages for user to opt-in to participating on that site. For example, if a user is not logged in, he can click the "login" link or a new "join" link right next to it. When he authenticates with openID, his unversal account is loaded. If he clicked the login button, he is returned to the site's front page WITHOUT joining the site. If the user originally clicked "join" then he is returned to the front page and see's the standard nickname display with a rank of 1 next to it.

The way i imagine it it wouldn't be difficult to make this happen. As a matter of fact, it could easily be done with some layering on top of the current API if you wanted to.

For example, the sites could continue to work exactly as they do now. The only thing that needs to be primarily changed is the login page so that when the user logs in, his universal account is loaded (we'd have to briefly create a new infrastructure for the universal accounts though, but simple enough). Then, when the user returns to or visits any site, site-accounts can be instantiated invisibly simply by using the same OpenID that that the user used to log into his (universal) account. So you see, the universal account would simply implement an OpenID login for each site-account behind the scenes, invisibly, so to seem that there is only one account.

The universal account would be very lightweight and only contain the user's profile information and OpenID info to use for instantiating site-accounts. The profile information in the universal account would act as a skeleton for site-accounts. Site-accounts would simply duplicate the universal account's profile data. The user can have the option to disable automatic profile creation which would simply turn of the automatic propagation, and he could still propagate the profile to all accounts with the click of a button.

Essentially, the universal account would be a sort of manipulator class to manipulate individual site-accounts, leaving them as they are, with very few modifications to the SE interface and site-accounts themselves. Accounts will be auto associated by the universal account class.


With dedication, this could be all set up in a matter of a few weeks, or even faster. After that is set up, universal accounts can be upgraded to include "friending" (or "contacts", or something similar), etc. Then finally, SE users would be able to maintain relationships whereas right now you might meet someone answering your questions, then loose them in the SE continuum and possibly never see or encounter them again.


What is the underlying platform behind StackOverflow? Is it PHP?

share|improve this question
For the last question :… – HoLyVieR Oct 16 '10 at 0:52
By your second-last paragraph, it seems that you're suggesting that the team drop everything and implement this (rather frivolous) feature just so they'd be able to add future social-networking features that (a) almost nobody wants and (b) would be actively harmful to the mission of these sites. No thanks. – Aarobot Oct 16 '10 at 14:17

Isn't the main point of this already implemented?

share|improve this answer
Aha, i just realized that. A universal profile would be nifty. And friends or contacts of universal profiles would be too. – trusktr Oct 16 '10 at 2:38
@trusktr: Stack Overflow is not Facebook. People go to Stack Overflow to get questions answered, not make internet friends. If you want company, go to the chat. – Aarobot Oct 16 '10 at 3:12
@Aarobot Well i'd definitely have my school friends and fellow programmers whome i know in person friended! I don't friend people I don't know personally on facebook (unless they could be of monetary benefit). – trusktr Oct 16 '10 at 4:40
@trusktr: That's exactly what these sites aren't supposed to be. These sites are about getting questions answered. If you want to follow and talk to your "school friends and fellow programmers" then might I suggest Twitter, or MSN Messenger? – Aarobot Oct 16 '10 at 14:14

Stack Overflow is a Microsoft MVC application running on ASP.Net

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .