Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Let us assume you were to create a platform such as StackOverflow. It needs to be functional, fast and scalable, just like SO, in order to be successful.

What are the major challenges you would face in such a task? I'm looking for technical challenges rather than problems such as how to advertise it and stuff like that.

(I'm not looking for ways of creating a new site to challenge SO; I'm just interested in how difficult it would be to create it if it didn't already exist.)

share|improve this question

closed as not constructive by gnat, Glenn Nelson, Martijn Pieters, Caleb, Robert Harvey Mar 16 '13 at 21:26

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

    
It has to remarkable - there are many platform out there, why do users should use your? –  lukas Jan 17 '11 at 13:04
3  
Jeff Atwood wrote a blog post that touches on this back in '09: codinghorror.com/blog/2009/07/code-its-trivial.html –  Anna Lear Jan 17 '11 at 16:33
add comment

7 Answers

Technical

  • Architecture, if you don’t have experience in such project
  • Performance
  • Security
  • Spam detection
  • Creating unique and good usability

None Technical

  • Copyright/License issues. The answers given in this forum may violate copyrights.
share|improve this answer
1  
I would add "Google ranking" : codinghorror.com/blog/2011/01/… –  David Jan 17 '11 at 13:59
add comment

In my opinion main issue is to polish everything=) You can code something like SO in a couple of days(and nights) if you are an experienced developer.
But As mentioned earlier you will also need some usability, design, infrastructure, support etc.

share|improve this answer
1  
Are you sure about that? Stack Overflow has been going for more than a couple of years now and what you are seeing now as the interface has been through many iterations over that time. –  ChrisF Jan 17 '11 at 12:29
    
@ChrisF If you have the web dev experience you could certainly hack together a knock off of SO. However that is largely due to the fact that you know exactly what you are going for. The OP never said the cobbled together version would be as good as the real SO. –  Glenn Nelson Jan 17 '11 at 12:33
    
SO is not so complex from engineering point of view. There is a lot of static content that easy to cache, quite simple db structure and etc. But again, if you will open any SO clone, you won't be able to get rid of feeling that is is not polished enough in lots of aspects. And feeling of consistency and overall quality is the hardest thing to achieve. –  Alexey Anufriyev Jan 17 '11 at 13:14
    
Further to this point: codinghorror.com/blog/2009/07/code-its-trivial.html –  Anna Lear Jan 17 '11 at 16:28
    
A couple of days? If your "polish" doesn't include "redesign all the databases" then I'd imagine spending a couple of days on the voting schema alone (unless of course you knew and copied SO's exact structure). –  NickC Jan 22 '11 at 19:42
add comment

I think the biggest issue is knowing how to build a massively scalable sites capable of handling 1000's of simultaneous requests. Even some well written enterprise and business applications I have seen struggle with just a few dozen users going at it. Designing for this scale is a different mindset.

share|improve this answer
add comment

The major challenge turned out to be to define "programming-related" so that all parties agree on that definition.

share|improve this answer
    
I Agree with you! But he asked for "technical challenges" –  Amir Rezaei Jan 17 '11 at 11:39
add comment

One more thing to have active moderators and users who are best in their particular skills like Jon Skeet, Marc Gravell, Darin Dimitrov

share|improve this answer
    
Hardest thing to get : a community of active and expert people. The rest is just plain easy technical details. No irony here, I'm dead serious. –  Clement Herreman Mar 8 '13 at 11:13
add comment

Quite a few challenges really:

  1. Creating an intuitive and appealing interface for programmers is a challenge
  2. Branding of the system -- unless people perceive this as cool they won't interact using this framework
  3. Address the scalability and availability challenges when millions access your system daily
share|improve this answer
add comment
  • Concurrent programming
  • knowledge about polygot persistence
  • Algorithms (for information classification e.g. improperly tagged questions, irrelevant questions, etc.)
  • API-design (so code can be easily maintained and adding new features is like a charm)
share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.