5 ms·
Regarding #2, regulars on comp.lang.javascript have been saying this since at least 2008, notably in critiques of jQuery. Resig even posted to some of these thr
by oinksoft 14y ago
Regarding #2, regulars on comp.lang.javascript have been saying this since at least 2008, notably in critiques of jQuery. Resig even posted to some of these threads defending jQuery's misbehavior (though I don't recall if he defended browser sniffing). I find it very surprising that it took the act of writing a book to realize this fundamental design flaw. And for those who will want to say "oh, that's just because David Mark is so grating," quite a few mild-mannered regulars reached the same conclusion, so it's not as though there was one firebrand suggesting this.
- gilini 14y agoExactly. Eventually everyone turned to feature testing and it became common sense in clj. comp.lang.javascript's FAQ on browser-sniffing: http://jibbering.com/faq/notes/detect-browser/ http://jibbering.com/faq/notes/detect-browser/
- gilini 14y agoAlso, here's Resig's take on feature detection circa '07: "Yawwwwnnnnn.... this is, quite possibly, the most inane set of ramblings set up by someone who has obviously never created a JavaScript library of any kind, nor has used JavaScript code in any sort of production environment." https://groups.google.com/d/msg/comp.lang.javascript/QVlJ0bzObmo/tftosTAr0lYJ https://groups.google.com/d/msg/comp.lang.javascript/QVlJ0bz... >> Do you have any idea how many agents jQuery will identify as IE? >The ones we care about? I wonder why jQuery eventually turned to feature testing...
- jeresig 14y agoI think that post has less to do with my opinions of feature testing and more to do with the environment presented by that usergroup. As to why jQuery moved to feature testing, we discussed that in the jQuery 1.3 release notes: http://docs.jquery.com/Release:jQuery_1.3 http://docs.jquery.com/Release:jQuery_1.3
- gilini 14y agoWell, you did respond to the code critiques after all, so that makes it about jQuery's source. But I do agree that your opinion was biased by the behavior of the people participating that discussion (if that's what you meant). Nonetheless, IMO, a community leader should be able to deal with criticism, and I don't recall reading personal attacks. As of your link, I was being sarcastic.
- jeresig 14y agoI wish I could say that I haven't been personally attacked by them, unfortunately it has been rather extensive and ongoing. Thankfully I've been able to avoid most of it by not visiting clj since 2008-ish and blocking choice Twitter users. Sometimes is trickles back up to me from people letting me know what's going on. I'm 100% fine with code criticism - I think you'll find no JS library more open to it than the jQuery project, we've shifted the code base many times over the years making large quality/performance/API improvements based upon criticism. That being said I have no interest in talking with people - valid code criticism or not - if they're personally attacking me as well.
- gilini 14y agoSo you do agree that browser sniffing is a short-sighted method to test for browser capabities and that clj has been preaching on it since 07? I'm not judging or anything, but sticking around on clj and trying to argument could have been very beneficial for both jQuery anc clj itself. There are ways of ignoring people in usenet, you know. Also, Juriy, whom you cite in the book's preface, was a regular there long before his website really took off. That means you didn't dislike every member ;)
- jeresig 14y agoInterestingly, jQuery was the first major library to switch to a feature detection model. Looking around it appears that a number of other libraries still use browser sniffing (such as MooTools, Prototype, and Dojo). The reason why I switched jQuery over to that model is largely due to my personal research into the matter during the process of writing Secrets of the JavaScript Ninja (largely as a desire to future-proof jQuery against upcoming bug fixes by major browsers). It's rather amusing to see a case where I, unfortunately, fed the trolls trotted out as an example of future decision making. In this case the decision behind this was my own and largely done through my personal examination of the jQuery code base.
- timdown 14y agoObviously your decision to implement feature detection in jQuery was your own, but you're doing a disservice to the comp.lang.javascript regulars who laid this out for you. Describing David Mark as a troll is also unfair: I concede he has been rude to you and others, but his knowledge was and is extensive and, like it or not, was something that at the time you could learn from.
- specialist 14y agoit took the act of writing a book to realize this fundamental design flaw. Not cool. Most everyone is too close to their own work. Writers need editors. Artists need critics. Devs need QA/test. Fortunately, letting code rest for 6+ months is a pretty good strategy for getting a "new mind". So is explaining your work to someone else, such as writing about it.