Mozilla has been developing a web browser that will make web development easier for web developers. They are going to be sharing it with world on November 10. Not a lot of info, but I'm excited.
As interesting as the concept is, I can't help but think it'll only make the already widening divide between "developers" and "ordinary users" even bigger... or maybe everyone will jump over to the "developer" version once they realise what they're missing, which would be the ideal situation.
No information there about what exactly it is, however. It could be not much more than regular Firefox with their WebIDE thing bundled and some UI changes.
It's going to lower the barrier to entry for young people who want to get into more than just the kiddie stuff. I know when I was a kid, I was smart enough for BASIC and Pascal but C++ just looked weird and complex and hard. HTML, CSS and Javascript were awesome and I jumped into that instead. Neat integrated tools are great for beginners.
What drives a divide is when you go build an entire ecosystem and hand it off to a cloistered priesthood. Then you make the toolchain so long and complex that you need 5 years before you even gain the first feeling of accomplishment.
Lower the barrier? The barrier IS lower enough even for kids...
Javascript is the basic of this generation.
There aren´t any barriers for new programmers to just sit and learn programming. The tools are already available in the browser. You can learn web programming with your PC, mobile, chromebook, macbook, "any"book.
But yes, I would really like to have more mature and integrated developer tools.
I think the big difference today is that the runtime (often cloud) and toolchain are much more involved. Nothing is self-contained any more. Dependencies are out of control.
Web apps make it easy for the user to access almost any service from almost any device. Unfortunately, this puts the burden on the developer to handle ongoing delivery, hosting, cross-platform compatibility. This can be intimidating, even insurmountable, for young developers in training.
Given that I started writing (and still write) webpages with nothing more than a browser and a text editor, I think the "barrier to entry" has always been quite low. It's only if you want to make a full "web app" using JS and all the latest frameworks/libraries/etc. that the complexity becomes overwhelming, and I wouldn't consider that "entry level" anymore; anyone who is doing that sort of stuff should already be well-versed in writing basic static pages.
(And given how unfriendly to deep linking, accessibility, archiving, and sharing these increasingly popular JS-only single-page web apps are, it would be better if more people, including the beginners, stayed with simply styled, accessible and readable, static pages.)
> I know when I was a kid, I was smart enough for BASIC and Pascal but C++ just looked weird and complex and hard. HTML, CSS and Javascript were awesome and I jumped into that instead.
When I was a kid, C++ was easy and I didn't start learning javascript until a few years ago. I also learned TI-BASIC in AP Calc, and Java (CS II-Honors) was presented at my school as harder than C++ (CS I). A lot of what is labeled difficult is very very subjective. A coworker of mine stumbled over Intro to CS/Programming because he was stuck trying to understand how to program hello world without understanding how the compiler worked first. Without a teacher to talk to, this very intelligent student could be seen as one who can't even grasp 'the basics'. I stumbled over my programming languages class because I confused the machine interpretation of Scheme, while we developed a interpreter in Scheme. I'm still confused over it.
> What drives a divide is when you go build an entire ecosystem and hand it off to a cloistered priesthood.
It's not so much that it's handed off to, it's more that people aren't very vocal about what they don't understand. This leads sort of to a 'survival of the fittest' cycle of development, on a macro scale, with the people who have a direction, at all, making important decisions, and the people who are most cautious, staring blankly in confusion. The reality is that everyone is probably missing some part of what is considered 'the basics' to someone else.
A responsive community dedicated to bringing people into development is also what lowers the barrier to entry. Students that are so afraid of their teachers and the 'scary aesthetic' of the material raises the barrier to entry. If you have someone to ask "what does this symbol mean?" or "am I thinking in the right direction, or am I making this lesson more complex than it was intended to be?" then complex and hard become more approachable (not more simple, however). Sometimes having a person reply back, "I don't know" can actually help a lot.
When I was just learning to program, I was afraid to ask questions, to talk about what I knew or thought. I don't know if many young developers struggle with that today, given how much the landscape has changed. Then I wonder, has it changed so much, or did it just take me about 15 years to become comfortable in chaos?
Well, it's a fundamental issue that a lot of people miss. You can't keep arguing that everything should "just work" because those poor end users might get intimidated otherwise (which is really a codeword for dumbing it down and hiding it behind layers of nested abstraction, then serving it over a thick GUI), and then expect that everyone should learn to code.
It's a total disparity. I also completely disagree with the idea that "JavaScript is the new BASIC" and that every beginner should be introduced to web programming immediately, but it's better than nothing, I guess. Not that web application development isn't less of a clusterfuck than anything else. It's also far more prone to hype cycles and wheel reinvention.
Firefox's developer tools are good an improving at a fast pace. I would argue that they in most aspects have surpassed Firebug and the Chrome developer tools.
I think this is a logical development. Firefox gets more and more Developer tools by default, but most users will never touch them. So it sounds logical to exclude Developer tools from the default package and instead offer an Developer version of Firefox.
Firefox is my default browser for a long time (switched briefly to Opera, but when they came with the new Chromium-version I switched back because I didn't like it) and I'm very satisfied with it. The developer tools are getting better and better, and I almost never touch Firebug anymore. Also I like Firefoxs tools more than those of Chrome, but that is a question of taste.
I think there is one thing Firefox can really make better for developers and that is addon development. I personally never developed an addon but looked briefly into it and from what I heard was that in comparison to Chrome, developing for Firefox is difficult. I hope there will be progress on this level too.
Why a different browser and not just an extension? I feel like different browsers leads to different versions of engines, languages etc. aka a lot of headaches. As a web developer, I want to see what my users see, not what "developers" see..
Well that's how developer tools for Firefox started out as (Firebug), however that was also dependent on a plugin API that gave access to all of those things; by building it in natively, the dev tools have access to all of the APIs, not just the ones exposed by the plugin APIs.
That is not really very relevant when building a Firefox add-on. Firefox add-ons get incredible access privileges to the browser internals. That is part of what makes it hard, but also powerful.
An example of what I mean, it was not overly complex for Sunbird (the calender app) to be turned into a add-on. There is no reason also for example that Thunderbird could not be turned into an add-on for Firefox. Except then you would have SeaMonkey...
But my 2c, is that even if the project does not work out as hoped, what ever they are doing can put turned into ad add-on.
I have no idea what Mozilla has been building, but I would guess building a browser from scratch with development in mind gives more possibilities than the most advanced extension for a browser. As long as the rendering engine remains the same as Firefox it wouldn't technically be a "different" browser, just a developer flavoured Firefox.
I think it's great that Mozilla is exploring new territories; it may or may not turn out to be a good idea, but give them the benefit of the doubt, at the end of the day no matter how good web developers tools currently are, without experimentation there would eventually be stagnation.
Actually, this version of Firefox activates a number of web features that are not activated in the release version, to let webdevs test against features that are either not 100% stable or not fully standardized yet.
It's not revolutionary (we're not releasing Servo yet), but it is pretty fantastic. I'd be shocked if most Firefox Aurora users don't switch over to the developer browser next week. :)
Well, we have had Firefox Nightly (which is the equivalent of Canary) for, well, as long as we have had Firefox. But activating some experimental features for webdevs is new.
Apparently, WebIDE is part of Firefox proper not just nightly. You'll have to toggle a pref in about:config (devtools.webide.enabled) to make it visible in the developer menu. It's pretty cool.
So I'm actually a fan of leaving dev tools installed and available in a normal user's web browser; whether it's IE, Chrome, FireFox, or whatever.
If a user is reporting some bug or issue that's difficult to reproduce, I like being able to just hit F12 _on their computer_ and diagnose and debug. Sometimes I can guide the user, sometimes I do it remotely.
Having the ability to debug software like that is phenomenal.
Funny story came to mind: You ever have a client accidentally hit F12, then tell your boss that your product was broken because there was a weird thing taking up half the screen?
Seriously: My guess would be download size, performance, maintenance. Especially with Moz aiming to target super cheap hardware with their OS.
It seems like it’d be beneficial to many web publishers if browser users couldn’t easily access underlying resources, and those companies could incentivize popular vendors to go in that direction (and every decent browser auto-updates, of course). Suddenly bypassing Flickr’s spaceball becomes too complicated for regular user.
On the other hand, no one would bother with that in a world where non-mobile computers are increasingly becoming developer-only machines, so this is probably just mild paranoia.
That's a really important aspect, are desktops going the route of developer only? (Non-web) Designers and other white collar probably don't need it, but they use machines that wouldn't notice the difference...
With FFOS, Android/Chrome, and MS there's a conscious effort to eliminate the difference in development between desktop, tablet and phone. With more people using computers, not as many people need or want desktop apps and those features on all of their desktop apps. If I suddenly need to edit an image, I don't need PS or even Gimp, I'm often fine with a web app.
We should instead remove access to the keyboard, that would be a way more effective way to stop any situation where theses users would cause a security issue.
Seriously, it's not the first kind of attack that appear because users are too naive. At one point we need to trace the line somewhere. Should we also block copy-paste to a file in case they create a batch file?
We no longer trust the user for anything, instead we block him completely and we move features on another application. I don't believe that's the right way to do it. This only make him more stupid, not more secure.
One part of the Firefox dev tools I find useful in every-day browsing is the ability to delete a DIV (or similar) element whenever something causes a bad layout or otherwise gets in the way.
This is like a landing page for a startup - or idea. They first test the assumption that developers need/want this. If they are proven right, they will build it. In the next seven days. ;-)
I can see where a dedicated browser for development could be a little more helpful during the 80% phase of development. My main concern however is that some of that remaining 20% is cross-platform stuff that you can't get right in a single browser.
Unless they incorporate tiled views from different rendering engines. That would be awesome.
At Mozilla we know that developers are the cornerstone of the Web, that’s why we actively push standards and continue to build great tools to make it easier for you to create awesome Web content and apps.
Like canning WebSQL for spurious reasons and forcing people to use a half-baked spec like IndexedDB instead? As much as I applaud most of what Mozilla has done to further the interests of the open web it's hard to forget how profoundly they sabotaged the development of the browser as an application platform with this particular piece of political NIH grandstanding.
It was Mozilla's insistence on IndexedDB that tipped the balance. WebSQL was already well supported in Chrome and Safari and if Mozilla hadn't inexplicably come down on Microsoft's side we would have a reasonable client-side database solution today.
The filesystem API was also nixed, so now people take to implementing fake filesystems on IndexDB, and implementing fake-SQL on top of IndexDB. On top of that, IndexDB performance isn't as great as it should be.
With something like SQLite, I think it's fine to take a super mature platform and retroactively extract a specification from it (while 99% of the people just keep the original implementation), than to start with a crap spec and try to make it mature.
IndexDB set the state of offline storage back, meanwhile Android and iOS developers are using SQLite or equivalents.
Well, that's good to hear. My concern is, we need APIs that are predictable, straightforward, and easy to use for devs to create offline web apps. Right now, it's quite difficult, and hence hardly anyone does it. ServiceWorker may help a lot with one part of the equation, but it doesn't fix up the persistent storage story of the Web.
I find the IndexDB API maddening to use personally.
The way to implement WebSQL is to copy SQLite 3.1.9. That is not exactly a baked specification, that is the kind of crap companies used to pull to make unimplementable "standards" for everyone who doesn't license their code and doing that a few times over a decade would make w3c compliant browsers pretty crappy.
It would have made much more sense to use that as a basis for a new, more formal spec than to pull some new NoSQL spec that nobody wanted out of their ass.
So instead, invent something that's a piece of crap, and make the Web worse than what Android and iOS developers get for offline storage.
SQLite is public domain, there's no need to license it.
Sometimes worse is a better, and insisting on standards process purity in this case I think harmed developers and didn't help the Web at all. There was nothing wrong with SQLite from a licensing standpoint, and everyone could have used it, and reverse engineered a spec later.
Reverse engineering a spec from an active product which regularly fixes bugs or adds new features? I'm not saying that it couldn't work, but I am not very optimistic.
Plus, I don't remember that anybody in w3c or whatwg actively defended that approach.
Is there a firefox plugin that lets me edit CSS in the developer tools AND lets me save the edits back to the actual CSS stylesheet on my machine? I'd love to see that functionality.
I would like a strict mode in js and rendering engine, which shows syntax error like a compiler instead of eating them and failing later at random places. Ffat fingers and typos take disproportionate time while development.
It does something very similar to what you're suggesting, adding in static type information for JavaScript and giving you compiler errors if you mess things up.
When developing Firefox Addons they have logging that is kind of like what you describe – doesn't break running but problematic code, but does complain. I found the result unusable. Normal development involves using libraries like jQuery, Google Analytics, or whatever other framework that sometimes acts weird, or makes seemingly odd choices for compatibility reasons, or has code that is effectively dead for everyone but IE6 but does get loaded. And since I didn't write jQuery or whatever other library, I don't care about those warnings.
It could be useful if there was a way of indicating what scripts are actually under development, and therefore only complaining about things the developer can fix.
Beyond ES5 Strict Mode ("use strict";), Firefox has a "javascript.options.strict" about:config pref that will log extra warnings (such as accessing undefined object properties) to the JS console. These warnings are not enabled by default because they are non-standard and can report false positives.
* Handles large scripts very slow (try loading up 4-6M of script)
* Issue mentioned of dealing with alternative script loaders
* WebWorker debugging
* SourceMap support seems brittle
* Profiling tools (compared to Chrome)
It's starts with GUI issues where you can't resize certain things (e.g. columns in the network tab) or only in a very limited way (it got better). Not being able to inspect objects inline in the console is very annoying. Is there no "clear network log" button? No option to retain/not retain the network log on page loads? I want a way to view an element that got logged to the console in the DOM inspector (Chrome has: context menu -> show in DOM inspector). I want an auto-completion menu in the style editor in the DOM editor. And there seems to be no way to search in a script as shown in the debugger. That's such a basic function, it really makes me wonder. I want a reload menu like in Chrome, where with open inspector I can choose between "normal reload", "hard reload" and "clear cache and reload".
In Chrome's console I like that I simply can write the function name and press enter to see it's source. In Firefox I have to write "String(functionname)". That's only a minor thing. The best thing would be to get the function source expandable inline similar to what you can do with objects in Chrome's console. There should also be a link that lets you jump to the definition of the function in the JavaScript source.
There is no resource tab in Firefox. Basically I want exactly the resource tab from Chrome, with a list of all loaded images, scripts, styles etc., grouped by their origin. I want to see and be able to edit/remove all cookies, local storage, session storage etc.
You can't select a certain iframe as the context of the console, which makes it completely useless when you have to debug iframe based widgets.
I just had the case where the debugger statement starts the debugger but it did not focus on the source line where it occurs, because the debugger request the script again instead of showing the already loaded resource and the script was generated as a response to a POST request.
I don't use Firefox for debugging anymore (unless it's a Firefox specific bug I have to fix) so I don't quite remember the next bit: There where some kind of big annoyances concerning debugging and exceptions which are caught anyway. I could not get it to "halt on exception" but not on those that are caught.
That's all I can think of right now, but I'm sure I forgot something.
But granted, it is always getting better. Maybe some day it is as good as the Chrome Inspector. There is one point where it (or Firefox) is better: Error messages. They are much less cryptic and show the source line of the error. It says things along the lines of "in foo.bar foo has no method bar" instead of "undefined is not a function". Also a rethrown exception retains the original source line, which is very useful.
Firefox's font inspector is nice. I hadn't had a use for it yet, but I can imagine to have one some day.
In course of writing this comment I looked at the Firefox development tools again and a lot of things got indeed much better since the last time I looked.
OT: There are also a lot of things that annoy me about Chrome: Since many month now Linux integration got extremely worse. They dropped gtk for their own thing and screwed up big time in doing so. Context menus look totally alien and have no shadow, tooltips (title attribute) look alien and are no real windows (they get cropped, which makes them useless in certain contexts), there are lots of graphical glitches, e.g. when dragging stuff (white bg of the dragged image/text and for the drop marker arrow in the tab bar) and the scrollbars got the brain dead Windows behavior that not even IE uses anymore. IE implemented it's own scrollbars, apparently. Other scrollbars in Windows (and in Chrome) jump around and stop working when you drag the scrollbar and move the mouse an unknown invisible distance from the scrollbar. Oh and dragging tabs got unusable bad in Chrome. It's a complete disaster. T...
But while all that features of Chrome are really nice, sometimes they stop working and you need to reload the inspector. The "show element in DOM inspector" context menu for elements logged in the console is what breaks most frequently.
Oh I want to add: I'm a big fan of the Mozilla foundation and the work it does for the free web. I just currently don't use Firefox. I do use Thunderbird and Chatzilla and I'm a fan of Rust. I hope the Phone will be a success, just so it finances Mozilla.
In addition to going through Yoric, the Dev Tools team actively monitors and responds to feature requests on this UserVoice forum: https://ffdevtools.uservoice.com
If you have an idea, submit (or upvote) it there. It will get seen by the right people.
Hold on to your hats and glasses folks! We're totally stoked to announce the coming announcement of a browser we'll be releasing shortly after that announcement! Stay tuned for the follow up announcement letting you know when we'll announce the release date! We can't wait for you to help us bug test it!
205 comments
[ 4.2 ms ] story [ 187 ms ] threadhttp://www.zombo.com/
http://i.imgur.com/QCyCMDH.png
Welcome to the future!
Happy because I always wished for an html 5 version, sad because I wish I had done it myself
Then I looked back at the comment thread and can see it has 400+ karma right now. So I suppose it worked.
No information there about what exactly it is, however. It could be not much more than regular Firefox with their WebIDE thing bundled and some UI changes.
What drives a divide is when you go build an entire ecosystem and hand it off to a cloistered priesthood. Then you make the toolchain so long and complex that you need 5 years before you even gain the first feeling of accomplishment.
But yes, I would really like to have more mature and integrated developer tools.
Web apps make it easy for the user to access almost any service from almost any device. Unfortunately, this puts the burden on the developer to handle ongoing delivery, hosting, cross-platform compatibility. This can be intimidating, even insurmountable, for young developers in training.
It's a complicated world, these days.
C++ is way more user friendly than that.
(And given how unfriendly to deep linking, accessibility, archiving, and sharing these increasingly popular JS-only single-page web apps are, it would be better if more people, including the beginners, stayed with simply styled, accessible and readable, static pages.)
When I was a kid, C++ was easy and I didn't start learning javascript until a few years ago. I also learned TI-BASIC in AP Calc, and Java (CS II-Honors) was presented at my school as harder than C++ (CS I). A lot of what is labeled difficult is very very subjective. A coworker of mine stumbled over Intro to CS/Programming because he was stuck trying to understand how to program hello world without understanding how the compiler worked first. Without a teacher to talk to, this very intelligent student could be seen as one who can't even grasp 'the basics'. I stumbled over my programming languages class because I confused the machine interpretation of Scheme, while we developed a interpreter in Scheme. I'm still confused over it.
> What drives a divide is when you go build an entire ecosystem and hand it off to a cloistered priesthood.
It's not so much that it's handed off to, it's more that people aren't very vocal about what they don't understand. This leads sort of to a 'survival of the fittest' cycle of development, on a macro scale, with the people who have a direction, at all, making important decisions, and the people who are most cautious, staring blankly in confusion. The reality is that everyone is probably missing some part of what is considered 'the basics' to someone else.
A responsive community dedicated to bringing people into development is also what lowers the barrier to entry. Students that are so afraid of their teachers and the 'scary aesthetic' of the material raises the barrier to entry. If you have someone to ask "what does this symbol mean?" or "am I thinking in the right direction, or am I making this lesson more complex than it was intended to be?" then complex and hard become more approachable (not more simple, however). Sometimes having a person reply back, "I don't know" can actually help a lot.
When I was just learning to program, I was afraid to ask questions, to talk about what I knew or thought. I don't know if many young developers struggle with that today, given how much the landscape has changed. Then I wonder, has it changed so much, or did it just take me about 15 years to become comfortable in chaos?
Just some thoughts.
I suppose you're right. When I was learning, there was no one to ask questions to. Glad that's changed.
Your point about this is poignant:
> Then you make the toolchain so long and complex that you need 5 years before you even gain the first feeling of accomplishment.
It's a total disparity. I also completely disagree with the idea that "JavaScript is the new BASIC" and that every beginner should be introduced to web programming immediately, but it's better than nothing, I guess. Not that web application development isn't less of a clusterfuck than anything else. It's also far more prone to hype cycles and wheel reinvention.
The idea is awesome tho, using lots of different tools which doesn't communicate/integrate with each other is a huge blow to productivity.
The DevTools team is really interested in that type of feedback...
Bug 1008435 - [e10s] Port the built-in Gecko profiler to e10s https://bugzilla.mozilla.org/show_bug.cgi?id=1008435
Bug 974832 - WebGL EXT_disjoint_timer_query may now be implemented https://bugzilla.mozilla.org/show_bug.cgi?id=974832
But we need markup and scripting languages dedicated to developers...
Firefox is my default browser for a long time (switched briefly to Opera, but when they came with the new Chromium-version I switched back because I didn't like it) and I'm very satisfied with it. The developer tools are getting better and better, and I almost never touch Firebug anymore. Also I like Firefoxs tools more than those of Chrome, but that is a question of taste.
I think there is one thing Firefox can really make better for developers and that is addon development. I personally never developed an addon but looked briefly into it and from what I heard was that in comparison to Chrome, developing for Firefox is difficult. I hope there will be progress on this level too.
But my 2c, is that even if the project does not work out as hoped, what ever they are doing can put turned into ad add-on.
I think it's great that Mozilla is exploring new territories; it may or may not turn out to be a good idea, but give them the benefit of the doubt, at the end of the day no matter how good web developers tools currently are, without experimentation there would eventually be stagnation.
But other than that, it's basically Firefox.
This is different.
It's not revolutionary (we're not releasing Servo yet), but it is pretty fantastic. I'd be shocked if most Firefox Aurora users don't switch over to the developer browser next week. :)
Is it? Sounds like a side-by-side Aurora with a toolbar button for DevTools. No separate feature set AFAICT, but you tell me if I'm wrong.
If a user is reporting some bug or issue that's difficult to reproduce, I like being able to just hit F12 _on their computer_ and diagnose and debug. Sometimes I can guide the user, sometimes I do it remotely.
Having the ability to debug software like that is phenomenal.
And as for the new tool, since it also shares the Mozilla engine, it's as if you're using Firefox (+ some plugins) with regards to web behavior.
Seriously: My guess would be download size, performance, maintenance. Especially with Moz aiming to target super cheap hardware with their OS.
On the other hand, no one would bother with that in a world where non-mobile computers are increasingly becoming developer-only machines, so this is probably just mild paranoia.
With FFOS, Android/Chrome, and MS there's a conscious effort to eliminate the difference in development between desktop, tablet and phone. With more people using computers, not as many people need or want desktop apps and those features on all of their desktop apps. If I suddenly need to edit an image, I don't need PS or even Gimp, I'm often fine with a web app.
http://sdpcfix.com/security-alerts/facebook-scam-helps-trick...
Seriously, it's not the first kind of attack that appear because users are too naive. At one point we need to trace the line somewhere. Should we also block copy-paste to a file in case they create a batch file?
Unless they incorporate tiled views from different rendering engines. That would be awesome.
Like canning WebSQL for spurious reasons and forcing people to use a half-baked spec like IndexedDB instead? As much as I applaud most of what Mozilla has done to further the interests of the open web it's hard to forget how profoundly they sabotaged the development of the browser as an application platform with this particular piece of political NIH grandstanding.
I agree that IndexedDB is awful and WebSQL was much better, but go shout at the W3C, not Mozilla.
Lest this particular piece of villainy be forgotten: https://hacks.mozilla.org/2010/06/beyond-html5-database-apis...
With something like SQLite, I think it's fine to take a super mature platform and retroactively extract a specification from it (while 99% of the people just keep the original implementation), than to start with a crap spec and try to make it mature.
IndexDB set the state of offline storage back, meanwhile Android and iOS developers are using SQLite or equivalents.
I find the IndexDB API maddening to use personally.
I seem to remember that the current WIP is here: http://w3c.github.io/filesystem-api/Overview.html
The way to implement WebSQL is to copy SQLite 3.1.9. That is not exactly a baked specification, that is the kind of crap companies used to pull to make unimplementable "standards" for everyone who doesn't license their code and doing that a few times over a decade would make w3c compliant browsers pretty crappy.
SQLite is public domain, there's no need to license it.
Sometimes worse is a better, and insisting on standards process purity in this case I think harmed developers and didn't help the Web at all. There was nothing wrong with SQLite from a licensing standpoint, and everyone could have used it, and reverse engineered a spec later.
Plus, I don't remember that anybody in w3c or whatwg actively defended that approach.
You can check this article that shows editing LESS and SASS inside the browser and saving it to the original location on your HD:
https://hacks.mozilla.org/2014/02/live-editing-sass-and-less...
Firefox has lots of awesome devtools but people still think in terms of Firebug and haven't noticed all the new goodies.
Menu -> Developer -> Style Editor, edit a stylesheet (or add / import a new one), then click "save" in the left panel. Done!
More info: https://developer.mozilla.org/en-US/docs/Tools/Style_Editor
It does something very similar to what you're suggesting, adding in static type information for JavaScript and giving you compiler errors if you mess things up.
It could be useful if there was a way of indicating what scripts are actually under development, and therefore only complaining about things the developer can fix.
I'm asking because two Firefox devtools people sit in my office, so if you have feedback, I can forward it.
In Chrome's console I like that I simply can write the function name and press enter to see it's source. In Firefox I have to write "String(functionname)". That's only a minor thing. The best thing would be to get the function source expandable inline similar to what you can do with objects in Chrome's console. There should also be a link that lets you jump to the definition of the function in the JavaScript source.
There is no resource tab in Firefox. Basically I want exactly the resource tab from Chrome, with a list of all loaded images, scripts, styles etc., grouped by their origin. I want to see and be able to edit/remove all cookies, local storage, session storage etc.
You can't select a certain iframe as the context of the console, which makes it completely useless when you have to debug iframe based widgets.
I just had the case where the debugger statement starts the debugger but it did not focus on the source line where it occurs, because the debugger request the script again instead of showing the already loaded resource and the script was generated as a response to a POST request.
I don't use Firefox for debugging anymore (unless it's a Firefox specific bug I have to fix) so I don't quite remember the next bit: There where some kind of big annoyances concerning debugging and exceptions which are caught anyway. I could not get it to "halt on exception" but not on those that are caught.
That's all I can think of right now, but I'm sure I forgot something.
But granted, it is always getting better. Maybe some day it is as good as the Chrome Inspector. There is one point where it (or Firefox) is better: Error messages. They are much less cryptic and show the source line of the error. It says things along the lines of "in foo.bar foo has no method bar" instead of "undefined is not a function". Also a rethrown exception retains the original source line, which is very useful.
Firefox's font inspector is nice. I hadn't had a use for it yet, but I can imagine to have one some day.
In course of writing this comment I looked at the Firefox development tools again and a lot of things got indeed much better since the last time I looked.
OT: There are also a lot of things that annoy me about Chrome: Since many month now Linux integration got extremely worse. They dropped gtk for their own thing and screwed up big time in doing so. Context menus look totally alien and have no shadow, tooltips (title attribute) look alien and are no real windows (they get cropped, which makes them useless in certain contexts), there are lots of graphical glitches, e.g. when dragging stuff (white bg of the dragged image/text and for the drop marker arrow in the tab bar) and the scrollbars got the brain dead Windows behavior that not even IE uses anymore. IE implemented it's own scrollbars, apparently. Other scrollbars in Windows (and in Chrome) jump around and stop working when you drag the scrollbar and move the mouse an unknown invisible distance from the scrollbar. Oh and dragging tabs got unusable bad in Chrome. It's a complete disaster. T...
If you have an idea, submit (or upvote) it there. It will get seen by the right people.
It's easier to wait until a de-hyped Wikipedia entry has been written, and just read that instead.