Web Designers should all be using this idea by now: Font Icons. - <AUTHOR> http://somerandomdude.com/articles/design-technology/font-embedding-icons/ <comment><USER3> They missed one obvious disadvantage - it doesn't work where users force their browser to use a specific font. All I see are letters instead of icons.

That said, would it not also make more sense to use codepoints within the "Miscellaneous Symbols And Pictographs" range where possible (<http://unicode.org/charts/PDF/U1F300.pdf>), where you'll find things like volume icons, padlocks, pins, etc. These are missing from my font of choice too, of course, but this seems more in keeping to me with the idea of a semantic web page.

<comment><USER4> Trying to introduce a design compatible with a user that specifically overrides your design seems like a losing battle, not one that should even be waged.

<comment><USER5> I think the point is that a user wouldn't know they're overriding the design. When a user sets a uniform font, they're opting to not see whatever font the site was designed for, but it's not at all obvious to them that they'd be messing with icons.

</comment></comment></comment><comment><USER6> I can't find the information, but my understanding is that this approach isn't good from an accessibility standpoint because a screenreader still interprets the icons as their corresponding character and reads that character. As a result, instead of ignoring a checkmark icon, it would try to pronounce it as a single letter.

UPDATE: Further digging seems to validate that most _modern_ screen readers do ignore pseudo elements. So, there's no doubt that this solution is promising. However, as with anything, your user agent baseline should be considered before using it. Saying that everyone should be using this right now probably isn't a reliable blanket recommendation.

<comment><USER7> This is the same problem I have with this approach. It seems like a cool idea, but I don't want to break accessibility. I think you can get around this using aria and having it skip over that element.

See aria-hidden:

[http://www.w3.org/TR/wai-aria/states_and_properties#aria- hid...](http://www.w3.org/TR/wai-aria/states_and_properties#aria-hidden)

 _Authors MAY, with caution, use aria-hidden to hide visibly rendered content from assistive technologies only if the act of hiding this content is intended to improve the experience for users of assistive technologies by removing redundant or extraneous content. Authors using aria-hidden to hide visible content from screen readers MUST ensure that identical or equivalent meaning and functionality is exposed to assistive technologies._

<comment><USER8> I may be misunderstanding the spec, but it looks like you have to be able to set element attributes for this approach to work, which I'm fairly certain you can't set with CSS. And I guess even if you can use JS to set the attributes, there's no way to set them on a pseudo-element anyway.

</comment></comment></comment><comment><USER9> I have been using this method for nearly a year on various projects and theme designs. The font icon method is incredibly useful when you want to give user the flexibility to change up the color of the icons. Plus, as mentioned using CSS pseudo elements with content should not effect modern screen readers.

One of the disadvantages mentioned in the article is the file size, but it can be drastically optimized. My favorite icon font is Pictos by Drew Wilson (<http://pictos.drewwilson.com/>). When I use it in a site design I will actually recreate the font file with just the few icons I need, usually 6-8 characters.

To reduce the font file size just load up the icon font in Font Squirrel's font-face generator (<http://www.fontsquirrel.com/fontface/generator>) and use custom subsetting to specify the needed characters.

Full Pictos Font EOT (19 KB), WOFF (13 KB), TTF (18 KB), SVG (41 KB) Total - 91 KB

Optimized Pictos Font (8 characters/icons required) EOT (6 KB), WOFF (4 KB), TTF (5 KB), SVG (5 KB) Total - 20 KB

<comment><USER10> Why don't you use SVG in your case?

<comment><USER9> I would love to, but in our case the two limitations are Internet Explorer 8 (and below) and cross domain limitations for the IE work arounds. The specific projects we're using the Pictos icon font on are being served up from a secondary asset server were we have no ability to add cross-domain policies or .htaccess modifications required for SVG or the .htc fixes.

</comment></comment></comment><comment><USER8> I really don't see that this is a good idea. Icons are by definition graphical, they aren't textual. I can see the draw of having _vector_ icons; but we have other technologies for that.

I know people are probably going to tell me an "SVG sprite" isn't possible, but I still maintain that abusing fonts and text like this is a bad idea, even if it does bag you cool CSS3 animations.

<comment><USER11> I do agree with you, but have you checked the Unicode tables recently? We already had "black queen" and "snowman", but Unicode 6.0 brought us, among others, "Smiling face with horns", "Cat face with tears of joy", and "Hear-no- evil monkey".

Apparently, the world thinks the distinction between text and icon is not that large. Yes, that is mostly for pragmatic reasons, as SMS only does text, and people want to send this stuff using SMS, but it is there, and we cannot deny that.

Given that, I do not think we cannot object loudly against the use of application-specific iconic characters.

</comment></comment><comment><USER12> I like this idea, for simple icons. Standard Unicode code points for symbols could be used to even allow screen readers to read them!

Another alternative for pages with simple icons is to use the Data URI scheme:

      <img src="data:image/png;base64,iVBORw0KGgANSUhE..."/>

This compresses _very well_ with HTTP content encoding when the same icon is repeated in multiple places in the page: <http://en.wikipedia.org/wiki/Data_URI_scheme>

<comment><USER13> And if your user visits more than one page on your site, you've successfully killed asset caching. More data for your server to send _and_ a slower experience for the user, losses all round

<comment><USER12> True, there is no caching. But that's still a technique worthy to use when they are very small (hundreds of bytes), or when the images should never be cached (eg. low-resolution real time status graphs). In these cases, they reduce the amount of data on the wire (no extra HTTP requests) and reduce page load time.

</comment></comment></comment><comment><USER14> Drew Wilson's Pictos Font is pretty awesome if you're looking for alternatives: <http://store.drewwilson.com/pictos-font>

</comment><comment><USER15> This seems like a such an obvious thing to use SVG for, without needing to resort abusing fonts in a such hackish way.

</comment><comment><USER16> To me this seems like an ugly hack to get around flaws in the HTTP protocol. There was an article on HN yesterday about SPDY (<http://www.chromium.org/spdy/spdy-whitepaper>), a transfer protocol that allows multiple concurrent requests over a single TCP connection. This seems like the proper solution to the primary issue (requesting several small files is slower than requesting one large one). Also, as the design goals for SPDY state, this has the benefit of "avoid[ing] the need for any changes to content by website authors. The only changes required to support SPDY are in the client user agent and web server applications."

<comment><USER17> It's also an ugly hack to get around the fact that making production graphics for every single icon in every single size/color you may need introduces some serious friction to the development process.

<comment><USER10> That's only a problem if you lack the proper workflow. If you design your icons in Illustrator using the pixel grid, you can export at any size while remaining pixel-perfect.

<comment><USER16> This is also true with Inkscape for those with open-source workflows. Also, since svg is a text format, it is simple to batch replace colors in a set of svg files.

</comment></comment></comment></comment><comment><USER18> Not to toot my own horn, but I created exactly this a few months back: <http://tipogram.com/>

</comment><comment><USER19> Disqus uses this technique to inherit the font color of the embedding page,

      To accommodate this wide range of design scenarios, we decided to use our own
      custom web font via @font-face instead of traditional raster-based icons. This
      provides us with the flexibility of inheriting font color and size from a site's
      existing aesthetic at an incredibly small file size (5kb). Since font-faces are
      vector-based, we are able to serve these icons at any size without consequence.

[http://blog.disqus.com/post/2944356158/introducing- houdini-t...](http://blog.disqus.com/post/2944356158/introducing-houdini-the- new-look-of-disqus)

<comment><USER20> Disqus is already using a load of JavaScript, I don't understand why they couldn't grok for the color and then set it as a background color for some transparent icons, or some such.

<comment><USER19> An SVG icon would probably work. My best guess is they couldn't reliably determine the correct background color to use.

</comment></comment></comment><comment><USER10> This is a sloppy abuse of typefaces. You can already base64 your icons in CSS, and you can already package them in sprites automatically with tools like Compass.

This creates more problems than it solves. IE9 will have SVG and SVG support gets better every day.

</comment><comment><USER21> It misses one huge disadvantage: lack of pixel-level control. There is no way to have really sharp and nice edges on TTF icons, they look all smudgy and just not up to good designer's standards, especially at small sizes.

<comment><USER22> Wrong; TTF (and most other vector typeface formats) support "hinting," which provides metrics to handle glyph appearances at small sizes on low resolution displays.

The problem, however, is that hinting fonts takes extra work many designers don't bother with, and even if they did, rendering engines may ignore them due to a nasty thicket of patents related to font hinting. (Though I've read that the main ones have expired recently.)

</comment></comment><comment><USER23> Terrible title to which I have to reply: Web Designers should all have learned to care about accessibility by now.

</comment><comment><USER24> The post acts as if the idea is really new (some article is said to have introduced the idea "one week ago") but I have seen this in practice at least months ago. It's not a new idea. But there are reasons it hasn't taken off like crazy.

There are still serious disadvantages to (ad least the obvious implementations of) the technique, as powerful as it is when it works right. Others on this page mention drawbacks. Not the least of which: It's not super easy to make a font with just-right glyphs; you cannot guarantee that no users don't see or hear letters instead of images or alt-text (ooh! anybody remember our blind/accessible users?).

So until I see a post that examines and solves _all_ the potential issues with icon fonts, I have to stay away.

 _As pointed out below, this blog post is over a year old. Oops._

<comment><USER25> yeah, i'm really not sure what's new here. but then again the article is from May 4, 2010. i can't remember that far back, but i'm not sure if it was a new idea then, either.

</comment></comment><comment><USER26> Always amused when I am unable to read an article about the new best practices in web design because the page renders with strange overlapping text. I think the table of short terms near the top is supposed to be an example of icons, but I see nothing in Linux Chrome.

</comment><comment><USER27> What about browser compatibility? The article doesn't mention how well font icons hold up against different versions of IE.

Does anyone know?

<comment><USER28> CSS Web fonts have been in IE since (essentially) forever, and the :before / :after pseudo-element since IE8.

<comment><USER29> one thing I'd like to scream from the rooftops about Web fonts in IE, though: IE respects the TrueType/OpenType embedding level, but at least some other browsers (last I checked) don't. if your Web fonts are set to an embedding level below "installable", IE will refuse to embed them and use the default font instead. double-check to make sure your font embeds properly in IE 9 before pushing to production.

edit to add: to check, open up the developer tools with F12, go to the console, refresh your page, and make sure you're free of errors like this:

"CSS3114: @font-face failed OpenType embedding permission check. Permission must be Installable. iconic_stroke.otf"

(this error taken from the link in the OP, the icons on which completely fail to render properly in IE 9.)

</comment></comment></comment><comment><USER30> I did this half a year ago on neovella.com. It seemed brilliant at first, but ultimately failed for two reasons: A) cross-browser compatibility for @font- face can be a real hassle when you're juggling a few different filetypes and trying to be compatible with everyone; B) filesize of the fonts themselves outweighed their aggregate image-counterparts.

</comment><comment><USER31> I generally like to think that icon use should be handled as part of the CSS, as it's a design element and not part of the document semantics. Putting it in the markup means that if the design is updated, the markup is still stuck with the old icon, which means it's more work to update the site.

<comment><USER32> It uses CSS pseudo elements, it's not in the markup.

</comment></comment><comment><USER33> As one of the post's commenter pointed out, Steve Souders has a detailed overview of the problems with @font-face: [http://www.stevesouders.com/blog/2009/10/13/font-face-and- pe...](http://www.stevesouders.com/blog/2009/10/13/font-face-and-performance/)

</comment><comment><USER34> You can do this with sprites too.

<comment><USER35> Exactly, and more reliably.

</comment></comment><comment><USER36> Not switching that fast. The few advantages are size/load time as well as switching effortlessly color. But at the price of ... compatibility, accessibility, rendering (white on black background issue with fonts), single color icons, delayed loading(sometimes fonts load after the page)?

If you want fast loading use css+single image robust method as in: <http://www.google.com/images/nav_logo86.png> and <http://images.apple.com/global/nav/images/globalnav.png>

</comment><comment><USER37> I don't see this as more than a gimmick (a nice one, sure). You end up with mute, non-semantic icon names (single characters) in your CSS, single-color icons only. Vector graphics are nice, but then you might as well go for SVG.

The one valid use case for this is limiting the number of roundtrips & requests. But in the long term, there'll be SPDY (or some other similar protocol) for that. And SPDY fixes the problem for your whole app / page, not just icons.

<comment><USER38> And you can just inline svg in base64 anyway...

</comment></comment><comment><USER39> There is another disadvantage of this approach: many times, icons carry no semantic information at all, just being a design thing. Therefore they are most often (and most correctly) implemented as a background image on a certain HTML element which does carry semantic meaning, like a link or a button.

This approach introduces icons within the semantic markup and/or content, unless they're added by some script, which kinda beats the purpose.

<comment><USER40> Not true. You can use :before and :after pseudo-elements.

<comment><USER39> That's a good point, true. But I never really liked content injection, via CSS or Javascript, anyway. :)

</comment></comment></comment><comment><USER41> [http://www.red-team-design.com/wp- content/uploads/2011/09/aw...](http://www.red-team-design.com/wp- content/uploads/2011/09/awesome-css3-buttons.html)

how about using the most common font? (arial) that should take out all your worries on @font-face

</comment><comment><USER42> One nice bonus is that they can get text-shadows and any other styling your normal text could.

<comment><USER43> Then again, you could also do that in images. Especially if you have some graphic effects like feather, gradient and drop shadows, the advantage of client-side rendering is not entirely clear. If anything, it makes the site heavier to render. (sure, you get scaling for "free" because it's vector, but in many cases you don't need to use the same icons in multiple sizes on the same device/page, so you could do that as well offline and simply fetch the right image...)

</comment></comment><comment><USER44> Wouldn't an image strip of your icons (Google does this, 2D video games have been doing this since the dawn of bitmaps) solve one the complaints rather easily?

Personally not impressed by the random CSS3 based animations from a compatibility perspective.

</comment><comment><USER45> I like this muchly, buy it does not render the icons on my phone (motorola photon).

</comment><comment><USER46> This seems like a step backwards for accessibility. Screen-reading software would end up reading various individual letters to (probably confused) low- vision users.

There may be a good use-case somewhere but please use with caution.

</comment><comment><USER47> All I have to say is that the lock and unlock icon look the exact same

</comment><comment><USER48> Non-ttf compress very well (svg is practically plain text).

But serving font-face has other issues with even modern browsers - <USER2> flash, delayed loading, some need proper mime-types, etc. etc.

</comment><comment><USER49> Data URI's are probably a better solution for small images. You cut out the extra requests but don't have to worry about downloading massive font libraries.

</comment><comment><USER50> Make sure you add this in CSS via :before and :after. When it's in the DOM it also gets indexed. A button labeled "go" can suddenly be index as "ago".

</comment><comment><USER51> So it's just like a sprite, but with font files?

</comment><comment><USER52> Well, it's a great idea but it doesn't really work in FF 4.0.1 :(

</comment><comment><USER53> Great idea and great icon set. I will be using this right away!

</comment><comment><USER54> earlier today I was wondering whether someone already created a compilation of those, thanks a lot op!

I think these icons are great for protyping/design mockups.

</comment><comment><USER55> This page crashes my Chrome on Ubuntu every time.</comment>


RIAA Spent $64 Million On Threats Netting Just $1.4 Million - <AUTHOR> http://www.dslreports.com/shownews/RIAA-Spent-64-Million-On-Threats-Netting-Just-14-Million-109366 <comment><USER2> The RIAA's goal is to scare people away from sharing. The goal is not to make money from lawsuits.

<comment><USER3> All that observation does is move the question slightly, from "Did the ROI on the litigation make sense?" to "Did the cost of the litigation scare off $64 million worth of file sharing?"

It's pretty clear that the ROI on their litigation did NOT make sense. It also seems unlikely to me that they got $64 million worth of "scare" from the litigation either. But I'm not an RIAA member.</comment></comment>


Uber Closes in on Its Last Frontier: Airports - <AUTHOR> http://www.nytimes.com/2015/05/26/business/uber-closes-in-on-its-last-frontier-airports.html?hp&action=click&pgtype=Homepage&module=mini-moth&region=top-stories-below&WT.nav=top-stories-below&_r=0 <comment><USER2> The first time I landed in Atlanta (as a destination, not a connection airport) I took a taxi from the Atlanta airport to Sandy Springs (exactly on the opposite side of downtown, just outside the Perimeter). Shortly after leaving the airport, my driver diverted off the interstate (ostensibly to avoid a traffic jam) and promptly proceeded to drive around in circles, lapping the same parking lot twice (he was about to do it a third time before I intervened) because his GPS was telling him to turn around and get back on the highway and he didn't quite realize that was happening and kept missing the U-turn. (Also, the overall rate is close to twice Uber's.)

I don't really trust Uber any further than I can throw my smartphone, but _anything_ is better than a generic airport taxi. (At LGA, I've taken cabs more often than Atlanta -- it's harder to wait for Uber in the cold of winter -- and while I've never had any real trouble with Uber ever I've had _two different taxi drivers_ pulled over and issued a ticket _while I was in the taxi_ , both of them for running a red light on a left-hand-turn signal...)

Anyway. In conclusion: fuck you, Atlanta airport/government.

<comment><USER3> On the other hand, I've had a nearly identical experience with an Uber driver relying on GPS. In fact, it's been my experience that Uber drivers rely on their GPS _far_ more often than taxi drivers, who generally give me the impression that they actually know the city that they drive in.

I wonder how long the average Uber driver has been driving professionally. I would be interested to see some stats on that subject, especially compared to regular taxi services.

<comment><USER2> Well, as long as we're hating on Uber a little too, I'll put under Full Disclosure that there've been a number of times when the driver accepts my hail then proceeded to drive _in the opposite direction_ for ten minutes... that's my main complaint honestly. :b

<comment><USER4> I had a driver stop to get gas on their way to me. Another one was very close when they accepted the hail, but after several minutes after I expected them to arrive I checked the map and noted they stopped at a CVS.

It's been a while since I had this problem: many times I'd hail an uberx, it'd be accepted, and then I'd have to wait 8-10 minutes for the driver to _leave their home_. It was upsetting, and I think uber may have fixed it by now, but I had to remind myself it was still better than the experience I used to have when calling for a cab.

I live in Dallas, btw.

</comment></comment></comment></comment><comment><USER5> I find it interesting that most comments from people using uber are about price. To me it is rather about convenience. I have never been in Atlanta's airport but most airports and train stations I use in Europe have a 30min+ queue for taxis. To me the revolution was to be able to book on my smartphone, not have to carry cash and worry about whether I have enough to go back home, not having to wait outside of a bar looking for a cab but rather booking it from my table and only leaving the bar when the taxi is there, etc.

I remember a taxi ride with some colleagues in Paris. That was even before uber. The driver (a licensed taxi) was ranting about the fact that there were too many taxis. And to make his points he said something like "a few years ago, a client could call a taxi company and taxis were so rare that he wouldn't even be sure he would get a taxi, these were the good days". We were not very sympathetic.

In all the places I live in, taxis had a toxic monopole that needed to be challenged.

<comment><USER6> Yeap. Here in Lisbon, just a month ago, after I told him my destination (which would come to ~5€), the taxi driver started ranting how they should raise the minimum ride to 15€. What a nice way to greet your customer /s

<comment><USER7> I once got a regular taxi from terminal 4 to terminal 2 at Heathrow because the tube had packed up and I needed to get a flight but the taxis hate that. They have to queue for 3 or 4 hours to get a fare because the fares being so marked up it pays for them to do so. Heathrow to Harpenden, ~40 miles is about £120 by regular black cab, £50 by Uber for example. The system seems dumb - they should drop the regular cab fare to something more like the market rate.

</comment></comment></comment><comment><USER8> In many cities (Florence comes to mind) there is a tacit understanding where street vendors sell good on the streets, but have to be able to put them away quickly enough to "hide" them when the police car comes past on one of it's periodic circuits.

The variable enforcement of laws (like my example, and also like the laws around taxi pick-ups) is something I'm very interested in from a formal economics view. Are there any studies showing the how the loose enforcement impacts different groups?

<comment><USER9> Reminds me of this quote from Atlas Shrugged:

> "Did you really think we want those laws observed?" said Dr. Ferris. "We > want them to be broken. You'd better get it straight that it's not a bunch > of boy scouts you're up against... We're after power and we mean it... > There's no way to rule innocent men. The only power any government has is > the power to crack down on criminals. Well, when there aren't enough > criminals one makes them. One declares so many things to be a crime that it > becomes impossible for men to live without breaking laws. Who wants a nation > of law-abiding citizens? What's there in that for anyone? But just pass the > kind of laws that can neither be observed nor enforced or objectively > interpreted – and you create a nation of law-breakers – and then you cash in > on guilt. Now that's the system, Mr. Reardon, that's the game, and once you > understand it, you'll be much easier to deal with."

In turn, that makes it feel odd that the prevailing opinion in these parts is often that the police enforce things too harshly, but the cure for every economic and social ill is always more Government micro-managing...

<comment><USER10> > In turn, that makes it feel odd that the prevailing opinion in these parts > is often that the police enforce things too harshly, but the cure for every > economic and social ill is always more Government micro-managing...

Show a principle that is broader than introducing new micro-regulations but would result in better outcomes. Considering the complexity of our reality, I doubt it's possible. Edge cases, functional requirements of life are numerous, and sure, there are a lot of old policies on the books, simply removing them would also cause too much perturbations. And no one cares enough about abstract efficiency, elegance and such to propose and fight for a plant to gradually deprecate them. (Minor examples are various tax exemptions, major example is the whole social security problem looming on the horizon. And the whole problem of healthcare economics fits here. People are rational, but have nasty time-dependent preference inversions, just to point out a problem with going with a simple and general solution.)

And this not too surprisingly has nothing to do with too harsh enforcement of some laws. (You just guessed the war on drugs. And general over-militarization of the police and the hostility of the criminal justice system.)

<comment><USER11> > Show a principle that is broader than introducing new micro-regulations but > would result in better outcomes

The alternative to regulating what, how and when everyone should do everything is to let people do what they want, but allow anyone to sue if they damage people or property.

If it results in better outcomes is of course debatable, but it has a long and defendable track record.

<comment><USER12> > but allow anyone to sue if they damage people or property.

That's the same as saying the only people who should get justice are those with the wealth and free time to file lawsuits for everything.

Consider, say, the case of a company over-billing you – are you going to take time of work, pay to hire lawyers, maybe retain an expert witness to attack the credibility of their billing system, etc. or will you just write it off and pay the extra $50? Companies which do things like that tend to do them on a scale where they can afford to pay for tons of attorneys to make that job as hard as possible.

(Oh, wait, bad news will spread and the invisible hand will correct that! That's sure worked wonders for Comcast…)

<comment><USER11> The sarcastic answer is that the current system favor those with the wealth and free time to purchase enough lobbying to get the regulations they want.

But you're of course right that perfect automatic justice doesn't arise in either system.

I'm a big fan of the "loser pays" system for lawsuits that's very common outside the US. That means that it's economically risk free both to file suits and to be sued if the court rules in your favor.

Your Comcast story is more about class action law suits, which I think can be a worthwhile feature of a legal system.

<comment><USER12> I like the idea of loser pays for certain classes of abuse but you need some mechanism to counter the innate tendency to deter the non-rich from filing a lawsuit in all but the most certain of cases. Some sort of a good faith exemption would be nice but it'd have to be very carefully constructed.

This becomes particularly obvious when you look at things which aren't extremely clear-cut cases. Say the company across the street is polluting. With a remotely-competent regulatory system, you can contact the local government and they [hopefully] have funding to investigate. With a lawsuit- driven system, you'd have to be prepared to pay for all of that out of pocket while trying to demonstrate direct losses for something which is rarely be more precise than a statistical likelihood in the hope that you'll eventually be compensated.

With loser pays, you now have the risk of having to pick up the tab for the company's top-notch legal team, too, which gives them powerful leverage to push you towards a settlement if the case isn't going 100% your way – after all, it's only your house that's on the line. If the company loses, it's not like the CEO has to pay for it personally.

The reason why we have the regulatory agencies we have is because we've already proven that the "do whatever you want and sue if it goes wrong" approach doesn't work well. The better question to debate is how to make those regulators more effective and responsive

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> It's not great that a private company is profiting off of crowdsourcing misdemeanours.

On the other hand where I live (Sydney), airport charges are a total rort. Trains to and from the city cost $17 (!) (versus $3 if you walk one stop). The taxi surcharge is $4. So... carry on.

<comment><USER14> If it's anything like where I live (Brisbane), the airport railway line is privately owned as opposed to publically funded like the rest of the network. The service (maintenance and operations) is then contracted out and given that there's only one player (cityrail) it goes to them. As a result, the fare is much higher.

<comment><USER15> At least you have airport trains (I live in Melbourne, where an airport train has been a political football for at least 20 years)

<comment><USER16> As a regular visitor from Auckland, I've wondered about that. Auckland's similarly mired in political crap, but at least Melbourne has an otherwise- functional train/tram network.

It'd be a lot nicer taking a train than those airport busses, although getting dropped at the station is nice.

<comment><USER15> The existing network is part of the problem. Options put forward include do nothing, new dedicated line from CBD to the airport, or branch off one of two existing lines in the area for a new airport spur line. Then you have to think about, how often can you run airport trains on existing lines? Do they go express or stop at stations? If they stop at stations, does it take too long for airport passengers?

None of them are hard questions, but in a partisan political environment where no parties can agree with each other, unless you can plan it in two years and build it in another 2, there's no way it's going to happen before next election.

</comment></comment></comment></comment></comment><comment><USER17> Free: [https://archive.is/hfbkz](https://archive.is/hfbkz)

I tried to catch an Uber ride from Heathrow before, and it was a total nightmare in terms of not knowing where to go, having come out of the wrong exit, and the driver ending up in a car park. Really, the airports benefit from allowing them too, as they reduce traffic congestion and the number of confused people milling around looking for where their ride is...

</comment><comment><USER18> Interesting new application of the phrase "deadhead trips" here...

In the 1970's, that would have meant something else entirely :)

</comment><comment><USER19> I'm not a savvy nor a regular traveler. When recently I had to travel, back and forth airport to home in a suburb, I compared the uber and regular taxi prices. I didnt find any difference so I opted for regular taxi's flat rate. A regulated service gives a sort of confidence compared to anything else.

</comment><comment><USER20> Its last frontier will be wheelchair accessibility, surely.

</comment><comment><USER21> Last frontier? I was just traveling around Europe, and most cities had limited/no service. Outside of London/Paris, no one knows what Uber is.

<comment><USER22> I believe it is a last frontier from a legal perspective.

</comment></comment><comment><USER23> Can someone explain to me how Uber took off? Why did a company like it exist 5 years ago?

<comment><USER24> Travis said they tried it 6 months earlier and the battery life of the current gen phones couldn't handle what was required, even while plugged in.

Only one of the reasons however.

<comment><USER23> Thank you for the insight =]</comment></comment></comment>


The British-Irish Dialect Quiz - <AUTHOR> https://www.nytimes.com/interactive/2019/02/15/upshot/british-irish-dialect-quiz.html <comment><USER2> Pretty much nailed me. Interestingly it gave me two strong options; one was where I actually grew up, the other 150 miles away was where my grandparents lived.</comment>


Firefox Android Build that caused issues is working as intended - <AUTHOR> https://www.theregister.com/2020/08/25/firefox_android_update/ <comment><USER2> The Register makes some of the most clickbait titles in the area.

The real ones is that Firefox Quantum is finally out for Android (Firefox for Android jumped from version 68.0 to 79.0), and this bought a completely new interface too.

Now, the new interface is very nice (bottom navigator bar FTW) and the browser is much faster, but it lost some features and there is a limited number of extensions available for now (Mozilla seems to be manually approving them).

So what happened? A small but vocal number of users complained and we get this news from The Register like this was the worse mistake ever. It is not.

Sure Mozilla could have managed this update better (losing settings seems pretty bad for example), but most users are probably pretty satisfied with the update. I couldn't use Firefox Android before (too slow compared to Chrome) and I was using Nightly (and afterwards Beta) just so I could get the performance improvements since the browser is so much faster. And also the new interface looks fantastic.

<comment><USER3> I am one of those vocal users, though I don't consider myself one. It was the first time I ranted about an update or UI behaviour.

Can you dismiss (most) of my arguments in this post? [https://news.ycombinator.com/reply?id=24160559&goto=threads%...](https://news.ycombinator.com/reply?id=24160559&goto=threads%3Fid%3Drrobukef%2324160559)

\---

The recent mobile Firefox is worse in every way that matters to me:

      ° Breaking recent add-ons (for the few add-ons that exist). I added a close-tab icon to compensate for the bad tab-ui. It's gone now.
      ° URL-bar hiding is wonkey. Some overlays disable hiding due to recent phising attacks. Now, for overlays, it is always present and hides the bottom of the page. This is very annoying when links are hidden behind the bar.
      ° URL bar (2): where have my bookmarks gone?
      ° URL bar (3): no more editing the URL if anything was *ever* searched in the current tab. Instead it edits the search. The URL is inaccessible.
      ° After 'Open in new tab' there is an annoying delay for 'Switch' again hiding links.
      ° Tab selection is just bad now. Preview is broken. If anything is displayed, it is often the image of two sites ago, even if the page has rendered.
      ° Tab selection (2) no more moving the tabs?
      ° Tab selection (3) why waste so much space? Using only 80% of the screen. And every tab wastes two lines and a half of useful space. Why is only the domain shown? Why not truncated or cut in the middle?
      ° Tab selection (4): newly opened tabs are hidden, you always have to scroll up as the current tab is always first, older tabs are lower.
      ° about:config is broken. Certificate error. Certificate error is broken too. Thus no disabling reader mode.

<comment><USER4> Wow, the misfeature of removed URL editing is surprisingly annoying. Completely surprising if you've been using browsers before for any time.

<comment><USER5> I cant confirm that. I just tried it on my phone and I can edit URLs. Even after searching for something else first as the above poster mentioned.

<comment><USER3> Reproduced!

Apparently search interferes only with some URLs: 0) Copy this url: "[https://forums.spacebattles.com/forums/worm.115/"](https://forums.spacebattles.com/forums/worm.115/") 1) Search anything (I use ddg, load the page completely) 2) Tap the url-bar. Notice no url, just the search. 3) Remove the search, "Fill link from clipboard" appearch, tap it. 4) Tap the URL-bar. The original search appears again. Unable to edit copied url.

The search stays present as long as the URLs with the same behaviour are entered manually, from history, or pasted. Most urls reset the behaviour. I have three from different domains. One is a top-level URL, the others are not. The top-level of the example does not have this behaviour.

</comment></comment></comment></comment></comment><comment><USER6> For me it's the weird new way of handling custom search engines that annoys me. Old workflow: tap the address bar, start typing your search term and then either press return to search with default search engine, or 2) tap one of the custom search engine buttons. In both cases, the search was executed directly.

New Firefox: (go to settings to enable non-default search engines to be displayed) Best case: tap the address bar, enter your search term, press return or one of the non-default search engines and then return.

The problem is that after adding a custom search engine, it ends up at the bottom of the list, meaning that in order to select it after typing my search terms, I have to scroll down, causing the keyboard to collapse. After selecting the right search engine firefox doesn't search automatically but rather I have to tap the address bar again and then press return. So, where in the past I had a "tap, type, tap, (search results)" experience, now it is "tap, type, scroll, tap (bottom of screen to select SE), tap (top of screen into the address bar to get the keyboard back), tap (bottom of screen [return key on keyboard]), search results"

I very much would like to go back to the old behavior.

<comment><USER7> The longer I use new firefox the more hatred I harbour for it.

Opening new tab before: Tap tabs icon on top. Tap open new tab icon that appears in the same place(essentially slow doubletap)

Now:tap tabs icon on top. Tap new tab thats on the other side of display (I tried getting used to having navigation bar down, but the pageload progress bar should have stayed top. When arriving to page and looking at the top its completely out of my peripheral vision)

Opening certain links in app. Not only was outrageous that mozzila said "nah" to ability to always open certain links in app (in the name of seamless web experience), so when opening a reddit link on slow and highly datalimited connection I had to wait until page starts loading, then stop load to not consume data (but not too soon, or open in app icon doesnt show), and then click the icon to open link in app. Now I have to tap the menu first to get access to open in app icon. Forcing me to add another tap (or three if I want to stop the pageload too) everytime I want to do something that should be user settable in the first place.

Also, can anyone explain me why closing the tab view now requires two swipes down instead of one? (Or one rly long one, granted, but still...) And the fact that the thubnail (main visual cue as to what tab it is) is now smaller is also getting on my nerves

Some pages are super jitery when I try to zoom them as a main big image loads (and few seconds after). Wasnt issue before.

There are more things that annoy me, but cant remember them in the heat of the moment, might edit this later.

And ofcourse, cant use old version because they know best whats good for me.

Im about to start looking for another browser soon, would welcome suggestions! (Ability to run ublock is neccesity)

<comment><USER8> > Now:tap tabs icon on top. Tap new tab thats on the other side of display

You can long-press the tabs icon on top, which is slightly more convenient. (No, it's not obvious.)

> Im about to start looking for another browser soon, would welcome > suggestions! (Ability to run ublock is neccesity)

AFAICT the only other open-source android browser that supports ublock origin is Kiwi Browser.[0] It used to heavily lag behind upstream chromium, though — I don't know if that's changed.

[0] [https://github.com/kiwibrowser/src](https://github.com/kiwibrowser/src)

</comment></comment></comment><comment><USER9> My partner has lived in FF as their browser of choice for over 15 years now.

She is very angry at the lack of user-respectful UX around the change.

She said to me all the choices suck, and it has the flavour of "for your better enjoyment... we broke you" type communications. Not "we're sorry" but a belief "but you want this" when directly, specifically she doesn't and didn't

* No way to manage the landing page favourites order. An issue in fenix, but no indication of intent to change.

* Default shifted to "speedy read-y down-the-bottom-y"

* Tabs replaced by the counter of pages open.

* It was anything _but_ "principle of least astonishment"

The delivery of better tracking protection? Thats great.

The unexpected UI changes? They suck. No amount of A/B testing can help you in the communication of "this is better" if you don't actually try to communicate.

</comment><comment><USER10> As an extension developer, this is highly frustrated.

Mozilla already broke our extension (Almonit extension) in browser a few weeks ago, when they changed default behaviour unannounced, without supplying (yet) an alternative solution. We actually had to found out about this change because people started to complain.

Now our extension was removed and is impossible to reinstall after this upgrade. It's highly frustrating because we're trying to build a stable user- crowd here, and it's impossible to do if the user experience is being hurt so badly every few weeks.

On the positive note, the people in Mozilla's Add-ons Matrix room were super positive and helpful. The problem was that there's not much that they could really do.

</comment><comment><USER11> Mozilla is acting like Microsoft right now -

Step 1: Replace a working app with a shinier UI with less features than the original

Step 2: Promise to add missing features in the future

Step 3: Put off adding missing features existing users want. While adding features "prospective users" say they want.

Step 4 - Repeat steps 1-3 a few times (rewrite, remove features users use, add features non-users want)

Step 5: Retire the product citing low usage

<comment><USER12> 2014 Brendan Eich was removed and replaced with the Chief of Marketing as CEO[1][2].

I mentioned that it worries me back then and that nothing good can come out of the Chief marketing guy becoming CEO.

Today what we see is the result of that. Yandex browser on android has more chrome extension support than firefox for android.

This isn't just about Mozilla as a company. It's also about how we as a community supported Mozilla in becoming that company and now being surprised at why it does the things that it does.

Obama made a speech not too long ago about not to conflate people doing good things with being good in all situations. The only people always seeming to be good are the ones groomed to be politicians without ever sharing a bad opinion in public.

[1] [https://news.ycombinator.com/item?id=7551896](https://news.ycombinator.com/item?id=7551896)

[2] [https://news.ycombinator.com/item?id=7530807](https://news.ycombinator.com/item?id=7530807)

<comment><USER13> I sometimes wish we need the linux governance model with firefox - where a leader like linus with a team of a handful of people manages a true open source project.

This would prevent monetization-led programming, creating a hierarchical company with a product & engineering management organization creating an average well known adventure of "how to make more money"

</comment></comment></comment><comment><USER14> It's a bit weird that Firefox deprecated all extensions while moving to a simpler API with a more limited surface area, in order to allow changes to be made more easily in the future to the underlying browser without breaking compatibility with extensions, and then proceeded to make changes to the underlying browser which break compatibility with all extensions using that API.

<comment><USER15> It's more that they moved to a new codebase that is not yet feature-complete. It will gain compatible functionality over time.

<comment><USER16> If it's not feature complete, how can it be an official release??

<comment><USER17> It's significantly faster and ublock origin works.

Seems like getting parity would take a year+

So I guess they decided it's worth dumping the current code base to focus on the rewrite.

<comment><USER18> Just got the new Firefox on my tablet earlier and ublock origin did unfortunately not work well after the update. Ads are no longer removed, but replaced by whitespace with a loading icon in the middle. I'm still considering if I find that more or less annoying than browsing with ads enabled.

<comment><USER19> > replaced by whitespace with a loading icon in the middle

This seems to be a filter issue, please submit cases to filter list maintainers.

Note that "Ignore generic cosmetic filters" is checked by default in Firefox for Android, it's something you may want to toggle.[1]

* * *

[1] [https://github.com/gorhill/uBlock/wiki/Dashboard:-Filter- lis...](https://github.com/gorhill/uBlock/wiki/Dashboard:-Filter-lists)

</comment></comment></comment></comment></comment></comment><comment><USER20> For me it is not the missing add-ons, and I even like the bar at the bottom. But how on earth do I read some sites while coming back to my favorites? Tapping the address bar gives me a big back screen with the bar at the top, that is where I used to find my most used sites. Now instead I have to tap the small tabs icon, tap + and then choose a site. This leaves me with a lot of tabs open. I used to open things for reading in new tabs in the background, but those now get lost in my huge list of unused tabs opened solely to get to my favorites. I can't find the option to start with an empty session after closing so I now have to manually clean up al those tabs every now and then. Oh, and I can't find print and the downloads button anymore... Any advice on alternatives? I just picked up my laptop to avoid FireFox mobile :s

I my most used sites were simply available below the address bar after tapping it, that would be really helpful to me.

<comment><USER21> This is indeed annoying; there's no UI option to select anything from your collections or top sites in the current tab.

There are a few other issues that annoy me:

\- tab management is a bit of a mess relative to the previous version. I seem to end up with the same websites open in many tabs because the UI for selecting an icon from top sites or collections always opens a new tab. IMHO that's a UX failure and something that needs rethinking.

\- Neither top sites or collections are part of the normal bookmarks or synced to my desktop browser. This seems like an odd choice to me as bookmark syncing works great. I've repeatedly lost collections by switching to different versions of firefox preview, firefox nightly, etc. This makes me reluctant to buy into the feature because I know I will lose all collections at some point again.

\- Page caching is way too aggressive. It's not acceptable to show days old versions of a website in a new tab. Yet, this happens to me on pretty much all news websites and blogs that I visit. Including HN. I have to reload freshly opened news websites to get the current version. To me this feels like a bug and I hope this is not actually intended behavior (that would be seriously misguided).

\- The back button history does not stop with the opening of the tab (which is what I expect). With HN, if I repeatedly hit the back button I get back to the login screen I used months ago. The old browser would go back to the main screen so I could open up a new tab. IMHO that behavior is nicer.

\- You have to be really careful manipulating collections via the touch screen. I've repeatedly deleted sites from there by accident because I wasn't scrolling perfectly straight or trying to open the site. Swipe to delete without confirmation is broken UX. Really annoying and it seems overly sensitive to this. Every delete I've done this way was unintentional.

Despite this, I kind of like it because adblocking (aka. the #1 use case for extensions) works great and I also enjoy privacy protection, which on Android normally is kind of a bad joke with Google tracking your every move.

<comment><USER22> > Page caching is way too aggressive. It's not acceptable to show days old > versions of a website in a new tab. Yet, this happens to me on pretty much > all news websites and blogs that I visit. Including HN. I have to reload > freshly opened news websites to get the current version. To me this feels > like a bug and I hope this is not actually intended behavior (that would be > seriously misguided).

If this is with collections, apparently it's intentional: [https://github.com/mozilla- mobile/fenix/issues/10417](https://github.com/mozilla- mobile/fenix/issues/10417)

<comment><USER21> Yikes. It's broken, plain and simple. I'm surprised that there is any debate about this in Mozilla about this being a bug or a feature.

<comment><USER22> Yeah, they seem to be more interested in doing UX research and "highlighting value" of this broken feature: [https://github.com/mozilla- mobile/fenix/issues/5652](https://github.com/mozilla-mobile/fenix/issues/5652)

</comment></comment></comment></comment></comment><comment><USER23> As a Firefox fan who has recommended it in my circles in the past, I'm disappointed by the new privacy and user experiences.

I see it as many steps back from the old experience. I hesitate to recommend this new mobile version to anybody.

They claim this is "the most private mobile Firefox so far". But DNS-over- HTTPS is disabled. There is no way to enable or configure it because there are no network settings at all in the new Settings page. DoH was a simple solution to government censorship in my country. Now, users will probably switch to Brave because it has a built-in VPN.

The UX too irritates...

1) I use the android navigation bar at bottom to jump to Home or switch apps or lock the phone. FF in light theme mode takes over that area with a white background making it impossible to use white-on-white buttons. I had to switch to dark theme just to be able to see those buttons.

2) The top sites list uses smaller icons with website titles as captions. If a website uses the title "Breaking News", that becomes its caption. It's difficult to tell from the favicon and such titles what site it is. The captions are single-line cropped with ellipses making it even more difficult to guess which website it is.

What I don't understand is why the release was rushed with such drastic changes instead of some kind of UX A/B studies to get feedback over time. Their reddit sub is rather hostile to any feedback and reminds me of stackoverflow nastiness. It's almost like Mozilla is trying to shed its user base.

<comment><USER24> > Their reddit sub is rather hostile to any feedback and reminds me of > stackoverflow nastiness.

"Their" Reddit sub is not an official forum any more than this HN thread is.

</comment></comment><comment><USER25> This is just the new Firefox mobile user interface, right? I've been using it for quite some time in the nightly builds. It took a few minutes of adjustment the first time I saw the interface, as everything has been moved to the bottom of the screen. But this is actually fantastic for mobile usability, because you no longer have to reach all the way to the top of your screen to get to the URL bar or tab switcher.

The loss of extensions is unfortunate, but not surprising, given they've been gone from mainline Firefox for some time. There are some webextensions available now, including ublock.

<comment><USER26> The biggest thing I've missed is that pull to refresh doesn't work, and it's such a basic tiny little thing it drives me crazy every time it doesn't work.

<comment><USER27> I tap in the bottom-right corner to open the menu and then tap the refresh button, which is in the bottom-right corner of the menu. So basically don't need to move my thumb at all. Much more convenient than pull-to-refresh in my opinion.

<comment><USER7> I cant understand how 2 taps in precise location are more convenient to some people than one short swipe anywhere on screen, but to each their own I guess

<comment><USER27> On my phone, pull-to-refresh doesn't work in Chrome if I only do a short swipe. It seems to reject anything shorter than 3cm or so. And that's only if I'm already at the top of the page.

</comment></comment></comment></comment></comment><comment><USER28> I called it over a year ago: [https://news.ycombinator.com/item?id=20392546](https://news.ycombinator.com/item?id=20392546)

> This marks the last Android release with extensions/add-on support.

A lot people called it FUD, but we can see they took an extra 9 months or so, supported just a few extensions, then replaced what worked with a low feature version.

And users are angry. Yep.

Can't say I'm surprised.

<comment><USER29> I have uBlock origin working just fine and I'm using the new Firefox Mobile. I agree with the assessment that you're spending FUD I'm afraid.

<comment><USER30> It's not FUD at all if you use extensions outside of whatever Mozilla deigns to add to their whitelist.

<comment><USER31> If that's what the claim was I'd be inclined to agree but extension support was not deceptively and indefinitely dropped in Q3 2019 as the comment talked about. There was Fear extensions would be permanently removed imminently, Uncertainty with how the releases would be scheduled and feature roadmap, and Doubt they'd ever listen to feedback.

In reality partial extension support was already there + expansion of support on stable on full support on nightly on the near term timeline at release [https://github.com/mozilla- mobile/fenix/issues/14034](https://github.com/mozilla- mobile/fenix/issues/14034), the switch on stable FF happened in Q3 2020, and they changed stance after all of the feedback.

</comment></comment></comment></comment><comment><USER32> I'm not sure what extensions everyone was using that are missing from Fenix. uBlock Origin, Decentraleyes, and HTTPS Everywhere were the big ones for me, and those three were all greenlit for Fenix (at least in Nightly). Are people still using greasemonkey scripts, or what?

<comment><USER33> Stylish and Ghostery are two of the other addons that I like, at least on desktop.

<comment><USER34> Doesn't Ghostery have privacy issues?

<comment><USER35> I know Stylish does and that is why many switched to Stylus

</comment></comment></comment></comment><comment><USER36> Mozilla did not handle this well. I like the new Firefox for Android, but it is obviously beta quality.

Extensions don't work, and last time I tried (a month ago or so) custom search engines weren't working either. I use Firefox on iOS just so I can sync and use my custom search engines.

I get that the new Firefox is faster and better, but don't break functionality people relied on, even if temporary. And if you do that, then release it under a different freaking name.

</comment><comment><USER37> I know that HN demographics is biased to using and getting info about IT, but I believe that people that use Firefox on Android are not common and most have some kind of interest on IT. It wonders me how they could not hear about the new Firefox for Android, it's been ~a year since Mozilla announced it, and news about how it's development was going on (and that Firefox Fenix was the Stable version somewhere a month ago).

<comment><USER16> I work in this domain and am using exclusively FF for Android, but I've never been interested in following their development.

Either way, I don't think that being surprised is the problem. Having a browser update break extensions is the problem - I would bet a lot of people only use FF because Chrome doesn't support extensions (I know that's why I use it anyway), so essentially the update is breaking the only important functionality.

Thankfully, I don't have automatic updates enabled, so I can still wait and see how broken this really is and how long it will take to fix it.

<comment><USER38> Firefox is the biggest reason I don't have automatic updates enabled on my phone. The amount of pointless UI and functionality breaking changes they have made over the years is crazy. The fact that they are laying people off after all of this wasted effort makes it even worse.

The only reasons I use FF are extensions and that it's not Chrome. The former is mostly gone. The latter is enough to keep me around for now but it's getting old.

</comment></comment></comment><comment><USER39> ungoogled-chromium works on Android too

[https://git.droidware.info/wchen342/ungoogled-chromium- andro...](https://git.droidware.info/wchen342/ungoogled-chromium-android)

[https://news.ycombinator.com/item?id=23708688](https://news.ycombinator.com/item?id=23708688)

<comment> yjftsjthsd-h Huh; it's got extension support. Experimental and hacky, but still...

</comment></comment><comment><USER40> Just tried nightly and haven't updated my main version yet. The lack of addons is sad and I'm not confident they'll be adding them back with any haste. However the biggest issue I see is that the default page is empty, theres no one-tap button to add a bookmark in the url bar, and getting to my bookmarks now requires using a small context menu. They really need home page customization, because the whole flow of open tab > click bookmark is just completely gone

Why make using bookmarks, a core piece of any browsing experience, so much harder?

What's the functional difference for a typical user between a 'collection' and a folder of bookmarks? Collections aren't on desktop, so now I need to bookmark _and_ add to a collection.

The menu containing 'open all links' in a collection is hidden until you expand said collection, then click on the newly revealed menu button. This whole update reeks of "UX" department needing to justify their jobs by making unnecessary changes.

<comment> your-nanny I've only found two differences between a bookmark folder and a collection:

1\. Collections show up on new tab 2\. collection items are remarkably easy to accidentally deleted,with no confirmation or undo functionality.

Reminds me of Firefox reading lists... which also disappeared and I hardly noticed.

</comment></comment><comment><USER41> I'm quite happy with the new release. It's faster, and I've not had any problems with crashes.

Also the three plugins I regularly use worked when I got the release pushed to me (more than a week ago).

</comment><comment><USER42> > unexpectedly forced on a large batch of Firefox 68 Android users without any > warning, way to opt out or roll back

I wish they were more careful. FF displayed a warning about the change ~a month ago and you could opt out by disabling FF updates. There are bad things about this change, but this is just not true.

<comment><USER43> The only heads up I've seen about this update has been on HN.

</comment></comment><comment><USER44> there's an iceweasel f-droid fenix build available that enables more webextensions if you're so inclined, see r/fdroid leading you to github.com/interfect/fenix/releases

</comment><comment><USER45> For those (like me) who are wondering why their Firefox still looks the same, "If you live in Europe, you'll find the update available today, August 25, 2020. If you live in the USA, you'll see the update on the 27th of August, 2020" [1]

[1] [https://www.slashgear.com/firefox-daylight-update- revitalize...](https://www.slashgear.com/firefox-daylight-update-revitalizes- android-web-experience-25635016/)

</comment><comment><USER46> Shipping breaking changes without warning is really bad...

They already did it for beta users before and I lost add-ons, their settings (and can't even remember some names).

<comment><USER47> I remember receiving a warning a few weeks ago which announced the upcoming changes and what I'd need to do to keep most of my stuff (one needed to unset the master password to migrate the saved passwords for example IIRC)

<comment><USER46> Ah alright. Better than for the beta users than.

</comment></comment></comment><comment><USER48> I've disabled auto-update for Firefox (first time even looking for that feature on Android).

I don't know, I like having a back button on my browser I guess?

As someone who uses "Firefox" since the Netscape Communicator days it's sad to see all this unrevealing.

<comment><USER47> > I don't know, I like having a back button on my browser.

What's wrong with just using the Android back button in the browser? I find it quite intuitive to use.

<comment><USER49> I use the android back button (or gesture) to go back one page. But the Firefox back button is useful because you can long press it to see the history and skip back several pages.

<comment><USER50> Or forward several pages, too! Such a useful feature... gone...

<comment><USER49> It's still there!

<comment><USER50> It's definitely _not_ in 79.0.5 (build #2015758619), which is the version I have from the Play store. (Google says it's the most up-to-date version.)

<comment><USER49> Ah, my mistake. It was brought back in 80 which you should receive sometime very soon (mine has been updated already)

</comment></comment></comment></comment></comment></comment></comment><comment><USER51> Just lost my HN account thanks to this update. I can't remember the password and my firefox logins have not been migrated. Apparently I was supposed to disable the master password before the upgrade. Silly me...

</comment><comment><USER52> "It's not a bug, it's a feature!" should've been the name of this release

</comment><comment><USER53> Actually, there's a lot in this new release that I like (my high light is when navigating back, actually going back to where you were on that previous page, without the page jumping around as things are re-rendered on my somewhat slow phone). Yes, there are changes, but I can deal with changes (they are part of life, please get used to them) and who knows, over time (ie not within 2 hours after the update installing) we might even come to appreciate Mozilla's choices.

</comment><comment><USER54> Just my opinion, but I think Mozilla is risking users it has in order to chase users it's almost certainly never going to get.

</comment><comment><USER55> Desktop password sync to my phone (presumably because I use a master/primary password) no longer works. Using the standalone lockwise app to copy/paste passwords on my phone is really not an improvement in security. :-/

Do the Android Firefox developers even actually use their browser?

</comment><comment><USER56> The new UI is great, now it's finally on par with IE11 mobile!

But really, if the navigation bar is at the bottom I don't need an extra back button anymore, the system's back button is right there below.

Didn't have any crashes yet so that would probably change my impression, but so far it's been great.

</comment><comment><USER57> Is there any good alternative? I think the main problem now on Android is Google Store wall. There would be much more Open Source alternatives if Android users could use another App Store. I wish we have something like an audited Store of Open Source only Apps.

<comment><USER58> What is preventing you from installing another App Store? I got F-droid installed seamlessly a week or so ago to download Newpipe, and it sits perfectly fine alongside the Google Play store.

Perhaps I'm missing something. Is it not possible to install other app stores?

<comment><USER57> F-Droid doesn't respect my system language. It shows me Apps descriptions in a language of my current country instead. And I don't see any language setting.

<comment><USER59> I suggest you report this at [https://gitlab.com/fdroid/fdroidclient/-/issues](https://gitlab.com/fdroid/fdroidclient/-/issues) if you haven't already.

</comment></comment></comment></comment><comment><USER60> I'm using it since the Preview as the daily driver and it has been a day and night change for me in terms of performance compared to the original 68 version.

I just wish Mozilla had done a better job at rolling out the change to existing users.

</comment><comment><USER61> wait, you are telling me that firefox mobile freezing when loading ebay.com and other websites was working _as intended_ ?

ma porco...

</comment><comment><USER62> The only issue I've had is that lastpass stopped working with it. It says it can't find the address bar

<comment><USER63> For me lastpass was horrible in android integration, tried on a few devices on Android 9-11, always the same. Wanted to buy a subscription for me and family, but it just required a LOT of maintenance and still didn't work well.

Keepass2android on same devices was flawless, so says family as well.

</comment></comment><comment><USER64> it's 2020 and still we can't have a browser where the mobile/desktop view switch is per domain instead of being per tab.</comment>


Disconnect: what the hell happened to Apple? - <AUTHOR> https://www.techinasia.com/disconnect-hell-happened-apple <comment><USER2> There are 2 major trends going on that seem to be going unnoticed there is a resurgence in search/browser wars where companies are finally beginning to compete with google, and there is a battle for the cars dashboard.

Apple is involved heavily in the ladder. I think Toyota and a few other car makers are still holding out, but Apple and Google are battling to own the entire consumer facing piece of the car. Obviously, this isn't the only reason Apple's ecosystem has gone to shit, but it is one of them. Apple engineers are spread too thin and it is impossible for them to vertically integrate all of the projects they are working on which is how they have managed to be so successful.

* Watch - total piece of shit. Too early and can't stand alone as a payment device/2 factor auth token. No one has solved the google glass problem: peripheral non-keyboard interface.

* iTunes - Used to be central hub, locking this down and dumping what could be 3 applications into one is bad. iCloud is totally shit, and it is actually not only something that is neutral like garageband which I don't use, but I actively hate AOSHeartbeat and bandwith push notifications. Disabling many of these services destabalizes the OS.

* iOS - still pretty good. However, users are beginning to seek out other options after the allure of large screen wears off.

* Mac - Why the fuck are you still making air, macbook and macpro? Pick 2, up the CPU and RAM and get competitive, Windows 10 is too good for you to keep fucking about

Apple really wants to win the car, and I don't blame them. However, if they lose mobile it will be a huge blow. the iPhone and mac synergy is the only piece of the lockin keeping people in the ecosystem and they keep pissing off developers and consumers with bad software, aggressive control and general hostility

</comment><comment><USER3> This article is a bunch of drivel.

</comment><comment><USER4> "I recently switched from iOS to Android, and personally I feel like I've been let out of prison. My phone now is as fast and slick as my iPhone ever was, but it sports a better camera, a removable microSD card, and an interchangeable battery too. Plus, it costs less than an iPhone."

I will be the first to bitch about Apple's software UI, but compared to most Android flavors, iOS has nothing to worry about. Performance and battery life are not great on the best Samsung Android phones. I absolutely do not want removable battery or SD slot. iPhone camera is almost always the best in shootouts.

There are valid concerns about the direction of Apple's revenue sources and the quality of their software design. This article does nothing to highlight these concerns. Instead it focuses on hyperbole, opinion and terrible predictions.</comment>


What are the best books for learning advanced JS? - <AUTHOR>

I'm looking to improve my JS skills - what resources have you found helpful? <comment><USER2> By the developer of JQuery:

[http://www.amazon.com/Pro-JavaScript-Techniques-John- Resig/d...](http://www.amazon.com/Pro-JavaScript-Techniques-John- Resig/dp/1590597273)

</comment><comment><USER3> Pro Javascript Techniques(Resig), Good parts(Crockford) and a book on haskell/erlang or some other good functional language will help you juice js better.</comment>


Shopify Joins Libra Association - <AUTHOR> https://news.shopify.com/shopify-joins-libra-association <comment><USER2> I want so much more than a four paragraph blurb on this decision. Everyone else has, rightfully, jumped ship. Why is Shopify joining now?</comment>


Stochastic Superoptimization [pdf] - <AUTHOR> http://theory.stanford.edu/~aiken/publications/papers/asplos13.pdf <comment><USER2> There was earlier discussion of this paper here about a year ago: [https://news.ycombinator.com/item?id=5509254](https://news.ycombinator.com/item?id=5509254)

</comment><comment><USER3> Abstract:

We formulate the loop-free binary superoptimization task as a stochastic search problem. The competing constraints of transformation correctness and performance improvement are encoded as terms in a cost function, and a Markov Chain Monte Carlo sampler is used to rapidly explore the space of all possible programs to find one that is an optimization of a given target program. Although our method sacrifices completeness, the scope of programs we are able to consider, and the resulting quality of the programs that we produce, far exceed those of existing superoptimizers. Beginning from binaries compiled by llvm -O0 for 64-bit x86, our prototype implementation, STOKE, is able to produce programs which either match or outperform the code produced by gcc -O3, icc -O3, and in some cases, expert handwritten assembly.

<comment><USER4> What's "the loop-free binary superoptimization task"?

<comment><USER5> Superoptimization is finding -the- optimal program to perform a task, as opposed to optimization which only looks for better programs. Loop-free means... no loops.

That said, their approach does not actually give you the superoptimal solution, since it is a stochastic search.

</comment></comment></comment><comment><USER6> Using MCMC for optimization is really strange. MCMC is for generating random samples from a probability distribution, not for optimization. Some variant of hill climbing would be more appropriate here.

<comment><USER7> Strange—ingenious. Hill climbing is bad for these sorts of problems since it gets stuck in local maxima—an as the charts in the evaluation show, there are often multiple maxima in the floating point precision of a program. So instead you need any of a variety of methods that guarantee finding a global maximum eventually. Luckily, MCMC gives you such a guarantee, with better asymptotic probabilistic bounds than simulated annealing. In the evaluation, they have a comparison of MCMC to annealing and hill climbing.

<comment><USER8> >with better asymptotic probabilistic bounds than simulated annealing

This seems unlikely to me. The Metropolis algorithm is just simulated annealing with a constant temperature. Which means that simulated annealing includes Metropolis MCMC as a special case.

Also, while simulated annealing is guaranteed to find the global optimum given infinite time (almost sure convergence), I'm not aware of any such guarantees for Metropolis.

</comment></comment></comment><comment><USER9> I'm used to MCMC's for statistics problems, and it seems to me the authors are being too optimistic about its feasibility as a search strategy.

Also, from a technical point of view, it seems like they started out with an optimization problem on a hard domain, and then made their problem even harder by using a sampling algorithm with stochastic moves (i.e., MCMC). The particular usefulness of MCMC is sampling, not optimization, and for this problem, you don't really want to sample.

<comment><USER7> As per the evaluation, STOKE works great. So if they made a hard problem harder, they clearly didn't make it too hard.

<comment><USER9> Let's stipulate that it worked great on the problem they analyzed. That problem was really very simple. If they used a more appropriate technique, they could expand the domain of applicability significantly.

Like I said, I've used MCMC for loosely-structured inference problems (but more structured than the one treated in the paper). I was doing MAP estimation (i.e., maximizing the objective function), just as in the paper.

When speaking about my work, I was once asked "Why MCMC on such a hard problem if you're really just maximizing?" It's still a good question.

</comment></comment></comment><comment><USER10> How can they validate if the code is correct? On the extremer side, they may LTO out a piece of code that isn't used by any loops but might included critical error recovery.

<comment><USER11> Looking through the summary (and working from memories a while back, so I may be confusing stuff for this super optimizer with other super optimizers), they have a two step process for verification. For certain fixed inputs they check that the code outputs the same values (this can also be used as a hashing mechanism). Then afterwards they do symbolic comparison of the initial asm and the final asm, by converting each asm sequence into SMT[1] statements, feeding them the same input symbols and checking that their output symbols are the same. The tricky part here is doing the conversion as there are also many x86-64/SSE instructions; however, once you've done it you can just use an off- the-shelf solver.

This is why it is important that the code is loop free, because otherwise you couldn't use SMT and essentially would have to solve the halting problem. However, SMT, like SAT, is a NP-complete problem, but the good thing is that in most cases (according to the paper) solving the SMT problems generated is quick as they weren't designed to be diabolical.

[1] [http://en.wikipedia.org/wiki/Satisfiability_Modulo_Theories](http://en.wikipedia.org/wiki/Satisfiability_Modulo_Theories)

<comment><USER12> And SMT solvers pop up in _another_ interesting paper! It's fascinating how over the last decade, I've started seeing SMT appear in practically anything and everything.

</comment></comment></comment><comment><USER13> I had Alex Aiken as my professor for the class I took on compilers last Spring. I really enjoyed his teaching and I remember him discussing this project during the last lecture. Very cool stuff. The class is still probably my favorite class I've taken.

</comment><comment><USER14> That example in figure 1 really confused me for a moment, since it's a mix of GAS and Intel syntax - no $ or %, but with size suffices and the opposite operand order.

It's interesting to observe that "brute force" approaches to optimisation are yielding very good results, but I've always believed (and in this case, the "in _some_ cases, expert handwritten assembly" phrase somewhat seems to support this) that making compilers more _intelligent_ is the way to go -- make them "think" more like a human Asm programmer would.

For example, using their first sequence, 3 out of 11 instructions are moves that do nothing more than unproductive "register shuffling", which suggests to me that there's still room for improvement. As the saying goes, "the fastest way to do something is to not do it at all." That shuffling is only there because they constrained their register usage, and if I was implementing this, I'd arrange the code that came before such that the right operands are naturally in the right registers when instructions that require them e.g. mul are used. To my knowledge, this technique is not implemented in any compiler and none of the existing research on register allocation or optimisation mentions anything like that; instead they all seem to suggest "introduce extra moves and hope we can somehow remove them"... which doesn't work as well as _planning ahead_ so you don't ever need them in the first place. Moves should only be used for making copies of values, since instructions that do other operations can implicitly "move" data as part of their operation anyway. Applying this principle to their first example eliminates two moves and yields this sequence:

        shlq 32, rcx
        movl edx, eax  <-- move + zero-extend
        xorq rcx, rax  <-- why xor? or probably works too
        mulq rsi
        addq r8, rdi
        adcq 0, rdx
        addq rax, rdi  <-- we want result in rdi anyway
        adcq 0, rdx
        movq rdx, r8   <-- this is still "room for improvement"

I think the same goes for optimisation as a separate pass - the idea of generating horribly inefficient code (gcc -O0 is a great example) and then trying to optimise it just doesn't make much sense to me; in my mind, if I tell a compiler to do max size or speed optimisation, it should be selecting and generating instructions that are pretty close to optimal already. I wonder if this is a result of that famous "premature optimisation" quote...

"Fastest" is also something that can be highly dependent on the processor model, so this is also important to keep in mind if you're compiling on one machine but executing on another. If anyone would like to, I'd be really interested in seeing the performance of my two-moves-less sequence above vs the one in the paper (don't have a 64-bit machine to test this on at the moment.)

<comment><USER15> A lot of times the "no nothings" are actually important for software pipelining. They enable the hardware scheduler to "figure out" that things are independent and to overlap their execution. Too tightly coupled and the INCREDIBLY limited on-die smarts can't separate things.

</comment></comment><comment><USER16> Is this implemented?

<comment><AUTHOR> Yes, the code in Figure 1 (right side) is the output of the STOKE implementation.

<comment><USER16> I saw that but I am curious whether this is implemented for a compiler, say gcc?

<comment><AUTHOR> It's not built into any compiler, but because it takes x86 machine code as input, that's not really a limitation. You can run any compiler (GCC, LLVM, MSVC, Intel, etc.) and run STOKE on the output to optimize the code. You can even run it on binaries for which you have no access to the source code (e.g. proprietary programs).

Given that STOKE takes tens of minutes to optimize a couple dozen lines of assembly, you probably wouldn't want to include it as a general compiler optimization. If you want the performance badly enough to use this tool, you are probably willing to run a profiler to find the hotspots and focus the tool on those specifically (which is how this tool is meant to be run).

That said, there are alternatives which are able to run at closer to normal compiler speeds, such as the peephole superoptimizer:

[http://theory.stanford.edu/~aiken/publications/papers/osdi08...](http://theory.stanford.edu/~aiken/publications/papers/osdi08.pdf)</comment></comment></comment></comment>


Radio-controlled flying super hero - <AUTHOR> http://blog.makezine.com/archive/2011/07/radio-controlled-flying-super-hero.html

<comment><USER2> This could give "Santa Claus is coming to town" a whole new meaning.</comment>


Blackjack Simulator with OMEGA II Card Counting - <AUTHOR> https://github.com/seblau/BlackJack-Simulator <comment><USER2> so many of remember the movie [https://en.wikipedia.org/wiki/Casino_(film)](https://en.wikipedia.org/wiki/Casino_\(film\))

How can you maximize before you get kicked out....you always get kicked out.</comment>