May 25, 2012

Here's a thing that would be awesome

Here's a conversation I just had in IRC. Is anyone interested in building this?

madhava:   hey
madhava:   would anyone like to build me an addon where when I enter some hotkey combination
madhava:   will bring up some sort of HUD awesomebar
madhava:   that I can search through
madhava:   and then when I hit enter it will insert the matching URL in my current textfield
madhava:   or put it in the copy buffer?
madhava:   I reference a lot of URLs in emails and bugs
dietrich:   quickfind-that-url. that'd be nice.
madhava:   and I have to open a new tab, use the awesomebar, select, copy, switch back, paste
madhava:   dietrich: yeah
mitchell:   history viewer?
madhava:   mitchell: sort of -- but too heavyweight
dietrich:   i do the same thing. have to navigate open tabs, all kinds of crap to find a url.
madhava:   in some ways, even a dropdown as soon as I type http:// would do it
madhava:   like in a IDE
madhava:   but then I'd have to type http
mitchell:   I just begin typing the url to have it come up, hit down, hit right, hit ctrl a, ctrl c
dietrich:   all the pieces are there for doing this
dietrich:   it works even with open tabs
dolske:   sounds like dietrich knows how to do this... ;)
dietrich:   hotkeys + panel + Awesomebar sarch (from
dietrich:   dietrich cannot do this :)
madhava:   maybe I'll blog this
dietrich:   jono and gozala and i were just lamenting the lack of Ubiquity, which could easily do this :(
mitchell:   what is hot key / hotkeys?
dietrich:   mitchell: jetpack build-in api for registring keyboard combos with function callbacks
mitchell:   dietrich: thx.  mind sending link to api doc?
madhava:   ok - dietrich, mitchell, dolske - I'm more or less going to paste this conversation into a blog post
madhava:   any of you want to be anonymous?
dietrich:   clipboard api is the final piece, and that's built-in too
mitchell:   I don't mind my nick going in
mitchell:   dietrich: that's what I wanted to find out
dietrich:   anonymity is for the anonymous
dietrich:   this is a public channel, it's too late!

If you are, you can email me , or @madhava on Twitter.

Posted by madhava at 02:33 PM

May 01, 2012

Meanwhile, in Firefox User-Experience

It's been a few months now since we merged the mobile and desktop Firefox user-experience teams into one supercharged all-platform Firefox design juggernaut (in the good sense). In that time, we've been hard at work digging into the next set of features and improvements, as well as pursuing one of our major goals for the year: getting Firefox to feel more like one product — more Firefoxy — across all our platforms, desktop to tablet to phone.

I presented an overview of what we're working on at the Firefox Toronto Workweek last week. Here are the slides (and a direct link, just in case). I had a fair bit to say about them, so I'll be posting a video of the talk soon, but the mockups and wireframes in the slides are too awesome to wait. The team will be posting about each of these projects, individually, in more depth.

Ux overview fxworkweek_april2012
View more presentations from Madhava Enros

This presentation makes reference to the Kilimanjaro project, a set of short-term priorities around integrating the browser and ecosystem projects (identity, apps, marketplace) that Mozilla is working on right now. You can learn about it on the Kilimanjaro wiki page.

Many thanks to the team (see slide 2!) for all their hard work.

Posted by madhava at 12:29 PM

December 14, 2011

Firefox on Android (native) - UI Polish

The mobile UX team's recently gone through a big top-to-bottom review of the in-progress native UI for Firefox on Android, sanding down rough edges and making sure that things all fit together. Here are some slides from a walkthrough I'm about to give of the current state of the designs. The nightly builds are getting closer to these every day!











Credit to Patryk Adamcyk and Ian Barlow for these mockups

Posted by madhava at 02:50 PM

November 23, 2011

Firefox on Android - Native UI in Nightlies

If you're watching the nightly builds of Firefox on Android, you'll have noticed that a lot just changed. What you're seeing is the first wave of basic function and interface revisions as we rebuild Firefox as a native Android application. This is very much a work in progress — a lot is there already, but there's even more still to come. Oh, you can get it here.

What have you done to my browser?
Firefox, overall, is being rebuilt to be faster and more responsive. We wanted to match this with a rework of the UI that will make us feel quicker, more natural, and a better fit on Android. Our goals have been, primarily, the following:

  • a simpler Android-based UI model
  • being more recognizably Firefox
  • incorporating things we've learned from our tablet UI, due out in Firefox 9
  • easier one-handed use
  • continuing to provide fast access to tabs and minimizing the need for typing
  • working with froyo/gingerbread, but also ICS

We're still revising, tweaking, and, well, wholesale throwing things out and redoing them, so please pipe up with your suggestions, but here's what you should be seeing right now.

A simpler, Firefoxier, thumbier UI
What you'll notice right away, I think, is that the browser controls have been pruned back and, overall, they're laid out more simply. The browser is continuing on its path of doing things the Android way, whether that's through use of the system back button or standardizing on the Android menu system. Things should be where an Android user would expect to find them.

This consolidation has also let us put everything you frequently need under the arc of your thumb when you're using your phone in one hand; hopefully you'll seldom find yourself reaching and stretching, even as Ice Cream Sandwich phones get bigger and bigger.

Tabs are kind of a big deal
We've kept our Firefoxy focus on quick access to tabs, where you don't have to leave your current context to see and choose from what else you currently have open. We're also trying to leave you with better ambient sense of when tabs are getting created or closed, in the background or foreground, through the use of some subtle animations and transitions.

Pulling in visual cues from Firefox on tablets and desktops
The team has spent a lot of time looking at how we can have consistency across our many platforms. Firefox should feel familiar no matter where you're using it, even if the constraints of the particular device mean some structural changes.

We've had a lot of great feedback about the upcoming release of Firefox for tablets, and you can see that this new Firefox on phones is its close sibling.

There are also a lot of places where the phone UI references that of the desktop, like in the position of the new tab button (though it serves more purposes here), our icons and glyphs, and in certain UI elements like our notification "door hangers":


Optimized for Froyo / Gingerbread, and Ice Cream Sandwich
Of course, people out there are on a lot of different versions of Android, and we want to look right for all of them:

Coming Soon
All of that is what you can have in your Firefox-nightly-clutching hands today. But there's more! Here's what's in the UI-design pipeline, coming to the nightly build soon:

I need more stability in my life
If you like to wait for the new native Firefox to stabilize a bit more before you start using it, you can switch from Nightly builds to the Aurora release channel. You may particularly want to do this if you're using a Honeycomb tablet — the new Firefox tablet UI that everybody's talking about is stabilizing there, getting ready for final release later this year.

[with many thanks to Mozilla mobile UX designers Ian Barlow and Patryk Adamczyk]

Posted by madhava at 01:23 PM

June 07, 2011

If you can't say something nice

The internet has increased our ability to express ourselves. In no place is this more obvious, unfortunately, than in the leaps and bounds we've made in our ability to be unkind to each other in blog comments. This increased capacity puts Moore's Law to shame, and then anonymously calls it an a*#$@*e, LOL. Inasmuch as we recognize this as an issue, we mostly seem to accept it as inevitable. We resort to the "grow a thicker skin" or "can't stand the heat..." bromides, shake our heads at our cruel and ungrammatical world, and strive to become less sensitive, as if this were a good thing.

Accepting this situation ignores that, by and large, we are thousands of times (I've measured) more civil to each other in the physical world. If putting up with our online behavior were a requirement for interacting with strangers offline, none of us would ever leave the house. Why call out the difference? It suggests that our current online situation doesn't have to be the way it is, which is tantalizing: incivility worsens the quality of our online lives, and, from a more immediately practical perspective, I think it lessens online participation.

An example: After years of free-for-all commenting on my blog, I started pre-moderating comments to keep the rage out; it wasn't really a solution, though, in that it didn't do anything for my quality of life. When my blog (on blog software so out-of-date that Gutenburg would have thought to himself "what an a*#$@*e, LOL") broke such that comments stopped working, I just never fixed it. And... I liked it. After a while, my pro-participation conscience kicked in, so I started, in each post, directing people to a discussion group to give me feedback. The tone of conversation improved, but only in the "silence is golden" sense -- people just didn't bother. The baby, unfortunately, was gone along with the acrid, stinging bathwater (note: do not bathe a baby this way). Clearly, there is value in the immediacy of on-blog commenting. But how much does this ease of action contribute to unkindness? To what degree is anonymity the problem? If it's a major part of it, how much of it would we trade off for a more civil internet?

So, internet -- what can we do about this? I'm interested in short term blog-specific solutions, but the problem is an even more interesting one in general. If caring for the health of a participatory internet is our mission, and incivility harms participation, perhaps we should be thinking about this.

I'm really interested in what you think. Email me - the address is my first name at mozilla dot com.

Posted by madhava at 10:59 PM