Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There are definitely supported APIs for extending IE (starting with IE 4.0 in 1997), but you do have to write native or .NET code, it's not "hack together some javascript and CSS" like Chrome/Safari/Firefox.

First couple of Google results:

http://msdn.microsoft.com/en-us/library/aa744101(v=vs.85).as...

http://stackoverflow.com/questions/5643819/developing-intern...



Fair enough. Though using COM seems like a terrible way to have to do this, which might explain why nearly no one (compared to FF/Chrome) bother.


Why "write native or .NET" but "hack together some javascript and CSS"?


Possibly because he knows JS+CSS, but not C, C++ or C#.

Or possibly because the API's microsoft proposes are pretty horrible; I've worked on FF and chrome extensions, and I investigated IE support - but IE's extension model is truly terrible. Just take a look at that stackoverflow link you posted. What a mess. I wouldn't mind a clean C++ or .NET api, but the current API certainly isn't that.


Because the latter is a lot quicker to get started with. I'm not making a value judgement.

With the IE model, you need to create a VS project, add a ton of boilerplate (see that stackoverflow example), and generally it's a ton of work just to get started. With a Chrome extension, you get an itch (some website has some jank, or you just want to hide all images with a certain dimension), you peek at it with the inspector, write some lines of JS or a custom CSS file, add an XML file and you're good to go.

Being able to write a quick hack to scratch an itch makes the Chrome/FF/Safari model more approachable. Once you have your foot in the door you're then more likely to make the step to write a full-featured extension (your MVP gave you a bunch of ideas).

It's similar to why PHP is popular. "I have this HTML page and I just want to add this one dynamic visitor counter. Do I want to build a Rails application, or paste in 3 lines of PHP and change the filename extension?"




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: