nel (Renaud Morvan)

Name
Renaud Morvan
Email
Website/Blog
http://w3fu.com
Company
Feedback2.0
Location
Paris, France
Member Since
Apr 18, 2008 (about 1 year)

Following 1 githubber and watching 38 repositories view all →

Public Repositories (8)

  • homebrew

    Packaging system for Mac OS X 10.5 and above; heavy optimisations, no redundant packages and a bo...

    legend

    Forked from mxcl/homebrew Sun Oct 04 11:42:21 -0700 2009

    Last updated Fri Oct 23 08:55:44 -0700 2009

  • prototype

    Prototype JavaScript framework with selector extraction

    legend

    Forked from sstephenson/prototype Wed May 06 12:56:11 -0700 2009

    Last updated Sat Oct 03 17:17:25 -0700 2009

  • cas_server

    CasServer has moved to http://github.com/community/cas_server

    legend

    Last updated Tue May 19 08:02:19 -0700 2009

  • nel.github.com

    My website attempt

    legend

    Last updated Tue May 05 10:59:05 -0700 2009

  • slickspeed

    Rewritten phpless version of kamicane Slickspeed

    legend

    Forked from kamicane/slickspeed Wed Apr 01 00:55:25 -0700 2009

    Last updated Thu Apr 02 07:00:37 -0700 2009

  • merb-ec2

    Instance Manager for ec2

    legend

    Last updated Sun Mar 08 18:19:47 -0700 2009

  • em-nntp-server

    EM powered NNTP server to serve as an API for other various backend (ActiveRessource, ...)

    legend

    Last updated Fri Oct 24 15:05:11 -0700 2008

  • deliver_to_me

    Ruby on Rails plugin which provide a new ActionMailer::Base.delivery_method to redirect any sent ...

    legend

    Last updated Sat Aug 30 10:18:21 -0700 2008

Public Activity feed

nel pushed to master at nel/homebrew Fri Oct 23 08:55:45 -0700 2009
HEAD is 54d838395a1529a21b0b4d7fb18d841d96a05a66

146 commits »

nel commented on sstephenson/prototype Mon Oct 05 19:16:14 -0700 2009
Comment in 4dd878f:

$$ search pattern is just a tiny part of the selector problem. A part which will become more and more irrelevant given native QSA will soon be the norm. .up(expr) .next(expr) and related methods are the limiting methods but no one is publishing any bench on those, results would probably be surprising and not kind to current Prototype master.

Sizzle is currently good enough at them, NWMatcher probably too but we have to be more careful given its compiled nature to see if it fits real world use (i.e. short lived Element instance anywhere traversing the dom in many direction with many selector).

Whatever the choice is, Prototype current implementation could support several adapter, so we are not stuck to Sizzle. IMHO the important step is to go forward and get rid of the current engine to get decent performance without crazy caching.

nel commented on sstephenson/prototype Mon Oct 05 12:40:32 -0700 2009
Comment in 4dd878f:

Actually it depends of the selector, but Sizzle.matches (which is a replacement for Selector.findElements) actually search bottom-up in most real case (i.e. not nth-child and stuff like that).

Look at sizzle.js L66-96, it does pop() the selector chunk backward. If you have a query like $('foo').up('.class1 .class2') what it does is:

- Fetch foo.ancestors (it is still real prototype extended Element which is not needed but it's ok for now)
- Search for class2Elt = element matching '.class2' selector in foo.ancestors() (quick match on the className)
- Search for parentNode of class2Elt that match '.class1' (still very quick)
- return class2Elt if it is success or nothing otherwise

It cannot be quicker in that particular case, and that particular case is 99% of the event delegation case.

Prototype previous was Searching all elements matching $$('.class1 .class2') (which lead to 2 huge intersection) and then Intersect with ancestors() which was awfully slow in case of frequent event like mouseout, mousemove ...

nel created branch thrift-dep-fix at nel/homebrew Sun Oct 04 16:37:17 -0700 2009
nel pushed to master at nel/homebrew Sun Oct 04 14:14:49 -0700 2009
HEAD is 290051a157d8da1a3663a89fa2a0cf9671309ab7

3 commits »

nel created branch siege-fix at nel/homebrew Sun Oct 04 11:58:24 -0700 2009
New branch is at nel/homebrew/tree/siege-fix
nel forked mxcl/homebrew Sun Oct 04 11:42:21 -0700 2009
Forked repository is at nel/homebrew
nel pushed to master at nel/prototype Sat Oct 03 17:17:26 -0700 2009
HEAD is 3b525f194d0e573923c7d9ad1cbd0cf63a849954

142 commits »

nel opened issue 78 on mxcl/homebrew Sat Oct 03 16:26:16 -0700 2009
`brew list` fails after fresh install because Cellar directory doesn't exist yet.
nel forked mxcl/homebrew Sat Oct 03 09:03:37 -0700 2009
Forked repository has since been deleted.
nel commented on sstephenson/prototype Fri Oct 02 20:57:15 -0700 2009
Comment in 4dd878f:

Does it feel good to get rid of this ?

Sizzle implementation is not only efficient at replacing $$, it is also particularly efficient at matching ancestors element against a css selector. It makes it a breath to use for event delegation. By replacing old implementation of Selector.findElements() by Sizzle.matches() you increase performance of event delegation by an order of magnitude on Firefox and particularly IE

Very happy to see this coming on prototype, thank you!

nel forked wayneeseguin/rvm Fri Oct 02 17:49:42 -0700 2009
Forked repository has since been deleted.