For instance the security model for a browser should be ultra tight and protect the user from the site, but as a developer I'd want to access and modify my files directly through the inspector panel.
Another example would be the use of cache, where I want the minimum possible retention while a user would want the opposite.
As you mention, settings in the developer tools could allow a myriad of options to switch from a "user" mode to a "developer" mode. But honestly I'd understand if it happens to be easier to build two different applications, even just for keeping the "user" side code simple enough to make it easy to maintain and secure.
Then eventually bundle the two apps together if you want to keep the "tools" right next to the "viewers".
> For instance the security model for a browser should be ultra tight and protect the user from the site, but as a developer I'd want to access and modify my files directly through the inspector panel.
I don't see any inherent conflict between preventing sites from having access to the local filesystem, while having powerful local filesystem access from the browser's integrated devtools. One does not exclude the other.
> Another example would be the use of cache, where I want the minimum possible retention while a user would want the opposite.
Caching rules should be managed on the server, not the client. Properly configured servers/applications never need anyone to clear their caches explicitly. I don't see why you would need a special cache-less mode in the browser if you've set up your servers correctly.
In my view developer modes (in browser or framework) are counterproductive because they create discrepancies between how your users experience your site or app and how you experience it. Your browser should have the exact same app experience as the one your users use, so it shouldn't have any special developer-mode behavior. That doesn't mean you don't need powerful inspection tools, just that those tools should be built around that standard experience instead of altering it.
My dev server is set up identically to a production server, except that no concatenation or minification is done. I'm not happy with that last compromise, so fingers crossed that HTTP/2 gets here soon and we can stop concatenating, minifying and otherwise perverting our code and resources.
What I am saying is basically that I think we need powerful inspection tools, but Frankensteining editing and compiling tools to the normal browser would result in something way too complex, with lots of modes and settings to adjust, and it doesn't seem like a healthy path for something that is supposed to be user friendly, lightweight and high performance for everyone else.
In a way, I am afraid Chrome is precisely going in this direction, including all the features for the normal users (the Flash plugin for instance) with also progressively more and more power tools only relevant to developers.
> In my view developer modes (in browser or framework) are counterproductive because they create discrepancies between how your users experience your site or app and how you experience it.
I think we agree on this point, and having separate tools for building and testing a site would allow to switch between the two mindsets more easily. The testing would be done exactly on the same app, so on the same footing as the users, and not on an application with some hybrid half editing/half testing state. There would be fewer "it works for me, what's your problem people ?" moments I think.
https://code.google.com/p/chromium/issues/detail?id=328026
>Another example would be the use of cache, where I want the minimum possible retention while a user would want the opposite.
Chrome Inspector -> [x] Disable cache (while DevTools is open)
:)
Interesting. I think there is also a plugin for WebStorm to send back modification made in the style panel to the actual files. Sadly sass/less resources makes it difficult to edit CSS and have it applied back to the sass source for instance.
> Chrome Inspector -> [x] Disable cache (while DevTools is open)
Yes, that's what I use for all my projects. Also there is a "Disable Caches" option in the Develop menu of Safari.
I see more value for both developers and users currently because it means that in order to keep Firefox safe (for some definition of safe), the Mozilla security team also has to keep people like us--and the functionality we use--just as safe. It also means derivatives like the Tor Browser Bundle and Iceweasel might be more likely to preserve the feature set and benefit from security team's work in relation to it.
[1] https://code.google.com/p/chromium/issues/detail?id=337734
Everyone does deserve access to built-in, high-quality tools. And everyone already gets that, with all major browsers. No one is taking away the built in developer tools in Firefox, Chrome, IE, Safari, or Opera. The problem is that they're always just a little bit older than the tip of the current development branch. And that's fine for folks who are starting to teach themselves how to debug web applications. Hell, that's fine for most people, developers included.
But there's a lot of development happening in this space, and sometimes you need access to tools or features that aren't yet stable enough for wide release. So you download Firefox Nightly or Chrome Canary. And you flip on something in about:config or enable experimental web platform features in chrome://flags. And you're off to the races.
That's not dividing the web, and it's not giving different tools to developers versus users. It's trading stability for slightly faster access to new, shiny things.
With huge respect for the work that you and Mozilla have been doing in this and other areas, I can understand that there are practical reasons why this may make sense for Mozilla (and even developers) internally.
But at least from the announcement, it still sounds like Mozilla is other-ing celebrated 'builders' like us from everyday users and segmenting our means of accessing the 'new, shiny things' you mention.
The other-ing language is unfortunate, but is hopefully tempered by Mozilla's work to ensure that everyone can be a developer. Things like Webmaker, the Web Literacy Standard, Summer Code Parties, the Mozilla Science Lab, etc. Mozilla and Mozillians are pouring an enormous amount of effort into building digital skills and literacy every day. We want to help people understand that the Web is a medium that they can create.
Without spoiling the announcement, I suspect it will be more agreeable than it might appear from this press release. :)
but that hypothetical kid whose parents wouldn't let him use ScaryFox that i mentioned in a previous comment..that kid was me
This line of thinking is basically the reason I had to wait a few more years until I could buy my own computer that could run Linux as a teenager.
For lots of people, the world is a very different place now, but just because something's trivial for people like us doesn't necessarily mean everyone else can very easily 'just download something else'.
Defaults can be tremendously powerful, especially when they enable others to build free software.
> Instead of working to ensure that my parents' computer running Windows 3.1 shipped with a C compiler by default a few decades ago, people inside Microsoft and Borland were probably thinking the same thing.
Er, no, they weren't. For Microsoft, they were not thinking users could just download top quality dev tools, in fact that would have been directly contrary to their interests -- they had a profit-based motive for assuring that quality dev tools were a separate purchase. Bundling them into the OS would have required them to sacrifice the additional cost that people making money developing software would be willing to pay for a dev tools .
And Borland was also trying to sell dev tools, but was really irrelevant to what Windows was going to be bundled with.
The number of potential developers who COULD get Firefox downloaded but COULDN'T figure out how to get a second browser downloaded, yet who COULD figure out how to use the dev features if only they were in Firefox is a tiny fraction of the non-developers who would be confused and annoyed by having dev features they don't want cluttering their interfaces by default.
but then, as now, getting started ended up being more complicated for some number of people than it probably seemed to our predecessors at microsoft and borland--including reasons that had little to do with software--but that still could've been influenced by how software development tools were distributed.
maybe it was just me, but getting started is probably still more complicated for some people in the world than either of us can imagine. maybe that's no big deal, but my experience makes me pretty sensitive to access to free software development tools.
[1] https://wpdev.uservoice.com/forums/257854-internet-explorer-...
But if there's a special developer-only Firefox, the dev tools in "regular" Firefox will stop getting new features, will fall out of date, stop providing value, and eventually be removed.
I see no problem in principle with Mozilla releasing a version of their browser with only very basic debugging tools. I don't think they should, but I wouldn't get indignant about it.
Is it condescending? Yes. Does it make the barrier to entry in programming higher? Yes, but considering that properly debugging a web application on a tablet seems to require a separate laptop connected at the same time (with admin privileges to install whatever crazy USB drivers), I'd say that barrier is already high enough that the kid can figure out how to download $DEVELOPER_FIREFOX.
The "I don't know what this piece of code does, but I'll run it anyway without even so much as Googling" mentality is what needs to change, if we are to have better netizens. You don't need to be an expert to know what JavaScript is and what it can do. Despite the Internet being such an easily-accessible body of knowledge, and the influence it has on our lives, it's quite disappointing that people have generally not become more knowledgeable of it and instead are mostly consumers like they were before with TV and radio.
Translate it to literacy then. Should everybody be a prolific author or an avid reader? No, it's okay if they're not. Should everybody have the option, the basic ability to? Yes, I wouldn't be surprised if it was considered a human right, or implied by human rights. It's not okay for people to be unable to read, just like poverty is not okay. And what's more, you don't need to know about the chemistry of ink or paper to be literate, just like you don't need to be able to solder a CPU from toothpicks to be computer literate. It's all a matter of degree, with no hard lines, but still, I'm not happy to give up that easily on that much.
We already accepted that making a website is too hard for "normal" users, that just everything taking place in the equivalent of malls is fine, with people hardly interacting in private or public spaces, except for a bunch of wizards in ivory towers, and that is a shame and cannot stand. Especially since the poison of planned obsolescence has already permeated anything to do with computing; if "normal" people can't create their own software and robots, it will not lead to better software and robots made by experts, it will lead to marketing departments shoveling regressing bloatware to people, ultimately. Yeah I'm exaggerating, too, this is FUD in a way, I know that... but I can't help it, this is the one thing to do with computers that really gets to me. I can live with not everybody being a programmer, but I cannot live with not every programmer wishing everybody could program. Being able to make a static website is not even a tiny subset of that, but if I can't even give up on general coding literacy, I can't even consider giving up on general web literacy.
So while it's totally silly to worry over the announcement of something when we don't even, and that will be freely available to everyone, I absolutely love that so many brought this issue up! It does give me hope. But so far, Mozilla has brought me nothing but joy, so I'm not anxious. Whatever it is, it will be open source, right? Right :D Anyone from Mozilla reading this, you guys rock.
TL;DR: I had a dream of a world where the words "developer" and "user" were out of use, just like "free citizen" as distinction to the default case of slave or woman is out of use today (well okay, those problems are also not overcome, but at least there is a consensus amongst smart people that they should be).
This isn't widening the gap between a user and a developer, since they aren't getting rid of the 'middle ground'. It's just giving the developer more breadth with a better tool.
I believe this separation will lead to the possible introduction of many cutting edge implementations on the browser/engines level(s), for experimentation, before a more general deployment to the end users, which would be quite interesting imho.
Not to mention, developing new debugging tools that the end user doesn't necessarily need to have running in the background of his browser package. This would definitely alleviate the resource consumption of existing browsers and allows the developers to have a focus on the end user experience and not worry about developer specific branches.
Developers want a lot of stuff in their face that the average user doesn't want to deal with. I can see the value of having a 'switch to development mode' button, but having something that's from-the-ground-up built for developers sounds like potentially a much nicer tool to use.
Time will tell if it's a good move on Mozilla's part, but I'm excited for the announcement.
Why is there this arrogant idea in the development world that everybody has to get into programming. If a kid wants to program (great!) she can easily download the development version. Calling it scary fox is just scaremongering. If anything getting the special development version might make her feel empowered.
I think we're better off in a world where kids don't have to install ScaryFox on their tablets to start teaching themselves how to debug web applications, and deal with all of the various forms of other-ing that tend to alienate people away from starting to learn how to understand and help build the web.
I think it's actually quite important for Mozilla to assume that of course every user deserves built-in access to a high-quality suite of tools for debugging by default.