[Haskell-cafe] Message

Yves Parès limestrael at gmail.com
Fri Oct 21 17:02:45 CEST 2011


That's interesting, have you ever worked on interfacing Erlang with Haskell?

BTW, Twitter switched to Scala, so obviously their initial choice of Ruby
end up invalidated.

2011/10/21 Alex Kropivny <alex.kropivny at gmail.com>

> Let's look at this from a high, project management level. Twitter ran on...
> Ruby initially? Facebook ran on PHP.
>
> Immediately this tells me that programming language choice wasn't a factor
> in their success. One succeeded in building a large throughput system with a
> "slow" language, the other succeeded in building a massively popular website
> with a bad one.
>
> What hard problems did they have to solve?
>
> Twitter had to deal with scalability, distribution, and massive throughput.
> These are hard problems on their own, and are non-trivial even in languages
> tailor made to handle them. (Although using Erlang would make things a good
> deal easier.)
>
> Facebook is not a technical problem at all. There are interesting
> challenges hidden within (ad targeting and friend feed optimization) but
> they're tiny, isolated components. Rapid development and prototyping of
> features help Facebook, but if the features are easy CRUD stuff it's
> perfectly cost effective to hire a pile of PHP developers to do them.
>
>
> One has problems that are hard regardless of tool choice, the other has no
> hard problems at all. No Haskell needed, use whatever language you can
> outsource overseas.
>
>
>
> With that in mind. Using Haskell gives you an edge, for most problems, even
> the ones with poor libraries. If you can get the programmer manpower you
> need, it is a clear advantage over your competition.
>
> Your startup may not need that advantage - as Facebook retrospectively
> didn't - but you don't know that when just starting out. If Facebook went
> deep into user behaviour analysis and newsfeed optimization, the way OkCupid
> has with dating, Haskell would suddenly stand out.
>
> If you need every advantage you can get, you use the best tools for the
> job. Haskell is one of the best and shiniest - I personally would use Erlang
> for any embarrassingly parallel parts of the service and do the rest in
> Haskell.
>
>
> On Fri, Oct 21, 2011 at 1:00 AM, Matti Oinas <matti.oinas at gmail.com>wrote:
>
>> I don't think I'm going to write next twitter or facebook but yes, it
>> is on my TODO list. If such an applications can be written with
>> languages like PHP then why not. Can't think of any language that is
>> worse than PHP but still there are lots of web applications written
>> with that. Even I have written many using PHP.
>>
>> Why I would use Haskell? To see if it is better option to that problem
>> than other languages.
>>
>> I have allready installed Yesod but for now I don't have enough time
>> to work on this project. After 6 months the situation should be
>> different.
>>
>> 2011/10/21 Michael Snoyman <michael at snoyman.com>:
>> > This is clearly a job for node.js and the /dev/null data store, since
>> > they are so web scale~
>> >
>> > Less sarcasm: I think any of the main Haskell web frameworks (Yesod,
>> > Happstack, Snap) could scale better than Ruby or PHP, and would use
>> > any of those in a heartbeat for such a venture. I'd personally use
>> > Yesod.
>> >
>> > I think data store would be a trickier issue. I'd likely use one of
>> > the key/value stores out there, possibly Redis, though I'd really need
>> > to do more research to give a real answer.
>> >
>> > Michael
>> >
>> > On Fri, Oct 21, 2011 at 9:42 AM, Yves Parès <limestrael at gmail.com>
>> wrote:
>> >> Wow, controversial point I guess...
>> >> I would add: and if yes, what would you use and why?
>> >>
>> >> 2011/10/21 Goutam Tmv <vo1d_pointer at live.com>
>> >>>
>> >>> Would you ever see yourself write a web application like Twitter or
>> >>> Facebook in Haskell?
>> >>>
>> >>> _______________________________________________
>> >>> Haskell-Cafe mailing list
>> >>> Haskell-Cafe at haskell.org
>> >>> http://www.haskell.org/mailman/listinfo/haskell-cafe
>> >>>
>> >>
>> >>
>> >> _______________________________________________
>> >> Haskell-Cafe mailing list
>> >> Haskell-Cafe at haskell.org
>> >> http://www.haskell.org/mailman/listinfo/haskell-cafe
>> >>
>> >>
>> >
>> > _______________________________________________
>> > Haskell-Cafe mailing list
>> > Haskell-Cafe at haskell.org
>> > http://www.haskell.org/mailman/listinfo/haskell-cafe
>> >
>>
>>
>>
>> --
>> /*******************************************************************/
>>
>> try {
>>    log.trace("Id=" + request.getUser().getId() + " accesses " +
>> manager.getPage().getUrl().toString())
>> } catch(NullPointerException e) {}
>>
>> /*******************************************************************/
>>
>> This is a real code, but please make the world a bit better place and
>> don’t do it, ever.
>>
>> *
>> http://www.javacodegeeks.com/2011/01/10-tips-proper-application-logging.html*
>>
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
>>
>
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20111021/c183cdda/attachment.htm>


More information about the Haskell-Cafe mailing list