jsSHA - A JavaScript Implementation Of The Entire Family Of SHA Hashes - <AUTHOR> http://caligatio.github.com/jsSHA/

<comment><USER2> Who is this person and why are they qualified to write this library?

AFAIK, Stanford is generally accepted to have the most reliable JS crypto library, though all of them are broken as all hell and not usable in anything but toy applications.

<https://crypto.stanford.edu/sjcl/>

<comment><USER3> Can you clarify "broken"? In this context there is a world of difference between "inaccurately implemented" and "slow".

<comment><USER4> There's a nice article here:

<http://www.matasano.com/articles/javascript-cryptography/>

that explains some of the issues with JavaScript-based cryptosystems.

<comment><USER5> Note: these arguments only apply to JavaScript in a browser (and at that point, apply to virtually any client-side system attempting to somehow protect information from being snooped on by the server that dynamically provides the code to execute on the client <\- an idea that should have been preposterous from the start ;P).

</comment></comment></comment></comment><comment><USER6> The google closure library has sha1 and hmac support as well - well worth checking out

[http://closure- library.googlecode.com/svn/docs/namespace_goo...](http://closure- library.googlecode.com/svn/docs/namespace_goog_crypt.html)

</comment><comment><USER7> Isn't it well past time browsers got a standard crypto library that couldn't be overridden? Are there any vulnerabilities in that scheme?

<comment><USER8> You mean like SSL/TLS?

<comment><USER7> No, a library with crypto primitives that Javascript can access.

<comment><USER9> The W3C has a crypto API draft at: <http://www.w3.org/TR/WebCryptoAPI/>

<comment><USER7> Fantastic, that's very promising.

</comment></comment></comment></comment></comment><comment><USER10> I'm sorry, but the "entire family of SHA hashes" is incorrect as SHA3 isn't present.

</comment><comment><AUTHOR> via Functionn - Open Source Resources For Web Developers & Designers: [http://functionn.blogspot.com/2012/07/jssha-javascript- imple...](http://functionn.blogspot.com/2012/07/jssha-javascript- implementation-of.html)

P.S. Functionn contains a whole lot more of awesome resources like jsSHA. There only a fraction of them I can post here at a time. Take a look if you're interested, and subscribe:

<http://functionn.blogspot.com>

<comment><USER11> Looking at your comment history, 99.9% of it is links to your own blog. While HN is generally not against self-promotion, you should probably tone it down; I'd be very surprised if it didn't end up getting you banned, as it looks a whole lot like spamming (and really, it is). That said, keep up the good work with your blog, just chill a bit on the constant links.

<comment><AUTHOR> thank you for the kind words for the blog!

Will take your advice and try not to post too many link. Will try to contribute more to the HN communityin other ways :-)

</comment></comment></comment><comment><USER12> What would you use an HMAC generated in JavaScript for? I'm trying to think of uses that wouldn't be completely insecure, but I'm coming up empty. You need to have the key client-side, so what's the point?

<comment><USER13> I imagine this is not sent to the client, and is used for serverside JavaScript applications.

<comment><USER14> In server-side JavaScript, you'd typically have easy access to non-JS crypto libraries. In node, you have the crypto package, which is a thin wrapper around OpenSSL. In Rhino, you can use Java libraries like Bouncy Castle. And so on.

</comment></comment></comment><comment><USER15> Also (shameless plug), if you want to use murmurHash3 in JavaScript: <https://github.com/karanlyons/murmurHash3.js>

<comment><AUTHOR> looks interesting, how does it compare to SHA hashes?

<comment><USER16> MurmurHash isn't secure and isn't intended to be. The algorithm is intended for fast non-cryptographic hashing for non-secure hashing needs. Whether or not people will use them only in cases where they really don't need any security in their hash (an attacker could cause a denial of service or a slowdown of service by degrading the performance of core data-structures if you use a non-secure hash function against untrusted inputs in the wrong contexts) is somewhat up in the air.

That said, it's being used by real applications in production, so the niche is definitely there, but for anything that needs any level of security you should continue using a secure hash algorithm, of which the unimaginably named SHA family provides a good set of standard algorithms. Using a secure hash every place you need a hashing algorithm unless you _know_ you'll need the extra perf and _know_ you can get away with it is probably a reasonable practice.

<comment><USER14> You might also be interested in SipHash, a cryptographic MAC that's fast enough to use in hash tables. If you want to avoid those denial of service attacks, it's a good candidate.

<https://www.131002.net/siphash/>

</comment></comment></comment></comment><comment><USER17> I started using it last week to calculate a fingerprint of a set of files (<http://cburgmer.github.com/csscritic/>)

</comment><comment><USER18> There's also a proposal to have crypto added as a native API.

<http://www.w3.org/TR/WebCryptoAPI/></comment>


Donald Trump Is the World's Greatest Troll - <AUTHOR> http://fivethirtyeight.com/features/donald-trump-is-the-worlds-greatest-troll/

<comment><USER2> Trolls do it intentionally. Not sure how self aware Trump is.</comment>


What is algebra? - <AUTHOR> http://profkeithdevlin.org/2011/11/20/what-is-algebra/ <comment><USER3> As good a time as any to go re-read "A mathematician's lament" [0] which begins:

A musician wakes from a terrible nightmare. In his dream he finds himself in a society where music education has been made mandatory. "We are helping our students become more competitive in an increasingly sound-filled world." Educators, school systems, and the state are put in charge of this vital project. Studies are commissioned, committees are formed, and decisions are made— all without the advice or participation of a single working musician or composer.

[0]: [http://worrydream.com/refs/Lockhart- MathematiciansLament.pdf](http://worrydream.com/refs/Lockhart- MathematiciansLament.pdf)

<comment><USER4> Very interesting read. It's not only a problem with mathematics though, it's nearly every subject in school, whether it's science, languages or math. It seems to me that the problem is that to teach well, you need good, autonomous teachers, and that just doesn't scale. Like the author said, you can't teach teaching.

I'm of the unpopular opinion that digital learning is the only possible solution for this. I'm talking about a digital tutor with infinite patience, with the best qualities of the best teachers. I'm not talking about a robot that passes the Turing test, just one that passes the test for the narrow field of teaching a specific subject.

People say you need real teachers, you need the human touch, but if the average teacher sucks (and they do), then I'd rather be taught by software. And I think it's just one of those things people say because it sounds true: "you need the human touch", just like people said they prefer real books over e-books, face to face conversations over texting, navigating by feel over using the GPS etc. These sentiments almost always turn out to be wrong.

<comment><USER5> > Like the author said, you can't teach teaching.

Yes you can. I mean sure there is an explanatory gap with things like empathy and identifying scaffolding opportunities. But that just means you can't teach ALL of teaching with a book, experience and guidance is also required.

> I'm talking about a digital tutor with infinite patience...

One that can empathise with a students particular background/learning style and understand what might work to convey a novel concept better?

> People say you need real teachers, you need the human touch, but if the > average teacher sucks (and they do), then I'd rather be taught by software.

It's not about the human touch. It's about empathy, and expert diagnosis of learning conditions, which the worst teacher does a better job of than the best computer/software. Just because most of our teachers suck doesn't mean software is the better solution. Better teachers are the solution, perhaps that is better education for teachers, or perhaps it's more communication from the realm of pedegogy down to the teaching curriculum that teachers are taught from.

Software can assist teachers, and can even replace certain aspects of teaching. But you will leave a lot of students behind if you try to replace teachers completely.

<comment><USER6> You can't teach _teaching_ in isolation. A math teacher has to know math and teaching, but that's not really how they're trained - an undergraduate Math Education curriculum diverges from the Math curriculum shortly after calculus, which is far too soon.

<comment><USER5> An undergraduate math education is more than enough to teach the current high school math curriculum.

From my point of view though, if my statement above is true, that is very sad. As I don't think it should be. The math curriculum is horribly deficient. But software doesn't seem to be the answer to fixing the curriculum.

<comment><USER6> > _An undergraduate math education is more than enough to teach the current > high school math curriculum._

Is that an undergraduate Math degree, or a Math Education degree? If the former, you don't get training in pedagogy. If the latter, you don't get enough proof-based classes to properly understand what math is or to fully understand the subjects you'll teach.

</comment></comment></comment></comment></comment></comment><comment><USER7> _> ... numbers in general, not particular numbers. And the human brain is not naturally suited to think at that level of abstraction._

This is so wrong (at least as a stereotype).

All throughout my early education I _HATED_ arithmetic, and found almost everything about it mind-numbingly boring and repulsively repetitive. At that point in my life, I hated math. The moment I encountered algebra though, it was "love at first sight", and ever since I've absolutely been fascinated and engaged with every type of high-level math I encounter (the more abstract, the better). And not just "fascinated" in the "I like it" sense -- math, CS, etc. is more easy/natural to me than most humanities subjects, by far.

So although I can only speak for myself, I quite disagree with any claim that the brain isn't naturally suited to abstract thinking. While I know not all people think the way I do, certainly quite a few do.

<comment><USER8> Watching my kids play DragonBox, methinks a major problem with teaching algebra is the insistence on forcing steps from arithmetic to algebra, bogging down in numeric & non-numeric symbols which students have little or no cognitive relationship with at that age. Starting with pure algebraic concepts, devoid of explicit numeric meaning, may be much easier to absorb _then_ transition into meaning-laden symbols.

<comment><USER9> Is that learning mathematics though or is it just learning symbolic manipulations by rote.

Yes some rote learning is necessary - and I'd warrant very useful in maths. However, generally in order to build on what you're learning you need to understand why you should perform certain actions.

There seems little point in learning to simply mechanically do the actions necessary to solve an equation. It is the meaning that is the reason for doing the learning and I worry that the last transition will be missed and make the entire prologue void of worth.

<comment><USER8> _generally in order to build on what you 're learning you need to understand why you should perform certain actions._

Before knowing _why_ you should perform certain actions, it helps to know that you _can_ perform certain actions. Methinks getting these basic concepts ("combine something with its inverse and it disappears", "thing over same thing is 1", "1 'times' something is that something", ...) into a kid's head _very_ early is a good thing - may not yet understand why, but it's a mental tool that can be applied. Don't underestimate the value of having tools even if you don't know why/how they work; give a kid a hammer and he'll figure out it's for pounding nails.

<comment><USER9> > _give a kid a hammer and he 'll figure out it's for pounding nails._ //

How old is the kid? I think you'll just end up with everything broken, unless you present it with the nails then the combination of the two is unlikely to happen naturally I feel until the child is quite old (if then).

<comment><USER8> [http://steelwhitetable.org/media/images/cavlin-banging- nails...](http://steelwhitetable.org/media/images/cavlin-banging-nails-in- table.gif)

I don't think the basics of algebra will have such results, but both are indeed tools that a kid will figure out a good use for _if_ such tools are on hand and have been played with enough.

I could credit a lot of my creative skill to spending inordinate time as a kid just fiddling with a broad range of tools in the basement, regardless of whether I understood them at the time.

</comment></comment></comment></comment></comment></comment><comment><USER8> Compare the article's premise to the HN-presented app _DragonBox_ [https://www.hnsearch.com/search#request/all&q=dragonbox](https://www.hnsearch.com/search#request/all&q=dragonbox) which abstracts the concepts of algebra into a tile-based game which young children (3yo even!) can learn and enjoy.

<comment><USER10> I will second this. My kid was able to play it at 3, and do decently, despite the concepts involved being (approximately) identical to solving equations.

</comment></comment><comment><USER11> My favorite way to define "algebra" to my students is to go back to its etymology, from the Persian textbook "Al-kitāb al-mukhtaṣar fī ḥisāb _al-ğabr_ wa'l-muqābala", or "The Compendious Book on Calculation by Completion and Balancing".

Specifically (borrowing from Wikipedia):

"The al-ğabr (in Arabic script 'الجبر') ("forcing " or "restoring") operation is moving a deficient quantity from one side of the equation to the other side. In an al-Khwarizmi's example (in modern notation), "x^2 = 40x − 4x^2" is transformed by al-ğabr into "5x^2 = 40x"."[1]

I'll also tell them that Algebra is solving equations through the use of inverses. I admit that both definitions are reductive but mostly to the point.

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

</comment><comment><USER12> I am not sure of the pedagogical benefit of what is being described here - <USER2> separation of arithmetical and algebraic thinking at the level of school mathematics.

By the distinction that Prof Devlin tries to make, primary school subtraction is typically taught/learned in an 'algebraic' way (logical reasoning to invert addition). This makes it difficult to understand what he is trying to say.

I most strongly doubt the claim that students who are strong in arithmetic find it harder to learn algebra. It's obvious that students with good arithmetic skills are more quickly able to find value and purpose in algebra.

<comment><USER13> It may be taught that way, but do kids learn it that way? Kids learn a bunch of "facts", and are tested on their capability to repeat those facts in a timely manner. Then they are taught rote-level procedures for combining those facts in order to do arithmetic on multi-digit numbers. The fact that subtraction is the opposite of addition gets demoted to "interesting bit of trivia".

For most school kids, algebra is the first place where the art of mathematics comes into play: where you are given a problem, and are not told specifically how to get from here to a solution. You have to figure that out yourself with the aid of mathematical tools.

For most people, who aren't used to the art of logical thinking, that is crushing.

<comment><USER14> Slightly tangential, but every time I work with someone on basic kinematics and they say, "Oh, well, if I just flip the sign from positive to negative, I get the right answer! I'm done!" a little piece of me dies.

It's like... you're not even trying to understand the concepts, are you?

<comment><USER12> I think this is hard because it's not immediately obvious that direction is such an important concept in kinematics. It's probably the most important thing to get across when teaching the subject, but you have to battle against prior knowledge:

Math students (that is, everyone) earlier learned that this sign-flipping strategy is ok and perhaps an encouraged shortcut when e.g. subtracting.

(see also that Khan Academy video - "first do the multiplication, then think about the sign")

</comment></comment></comment></comment><comment><USER15> I think the claims that X is not necessary for everyday living ignores one of the purposes of education, which is to expose you to a diverse array of subjects and teach you _ways of thinking_ about things.

Maybe you took algebra and calculus, but you never actually use them as you did in math class in your everyday life. But you learned problem solving in instances where you don't have all the data, you learned things like limits, infinite sums, and the relationship between lines, equations, areas and sums.

Although you don't use the explicit rule based symbols, perhaps your brain got wired from the overall experience to think somewhat differently when encountering certain situations.

Perhaps you'll understand your mortgage a little bit better because of your exposure to geometric series. Perhaps when looking at your finances, the concepts of slopes and tangents will re-emerge.

The same goes for learning history, or philosophy, or english literature. It's not that you have to "use" your known of the Civil War or of Shakespeare in everyday activities, but as a functional citizen, having been exposed to those things, perhaps when you are asked to evaluate what's happening on the nightly news, you will have a deeper perspective to draw on?

Personally, I use math all the time. I was a math major and I love it, so of course, it's my standard tool. But I don't just use it in coding, I use it thinking about art and lots of other things. I tend to "see math" all throughout the universe and human experience.

</comment><comment><USER16> I did a quick google search for: High School Algebra Curriculum and got this: [http://www.mathsisfun.com/links/curriculum-high-school- algeb...](http://www.mathsisfun.com/links/curriculum-high-school-algebra.html)

I can say that while this covers a few algebraic topics I strongly believe that the class title should be changed to: Practical Mathematics.

If High Schools _truly_ wanted to introduce Algebra to students in a "pure" form then Math teachers would need to know/understand Abstract Algebra. And then be able to teach introductory ideas to Abstract Algebra which, in all honesty, _anyone_ can come to understand.

Btw I encourage everyone to learn at least some basic Abstract Algebra to see the beauty behind what pure algebra is. :)

EDIT: It seems the curriculum is generalized to "set" the students up for future multiple areas of Mathematics at once. Ranging from analysis & differential equations to more advanced algebraic topics. But it certainly introduces students to basic topics (sets, polynomials, functions) albeit in a rather restricted (and not necessarily well taught) sense.

EDIT2: Not only should the title of the class be changed, but possibly the class curriculum should focus even more on "Practical Mathematics" as well??

<comment><USER11> The best place to look at what is being taught as "Algebra" at the high school level is to go to the (new) source: the Common Core State Standards Initiative[1]. 45 states (and DC) are using the standards. The best places to start are Math Appendix A[2], which explains the Initiative's recommendations for a High School curriculum, and the Introduction to the Algebra Strand[3], which describes (in brief) the goals for actual algebra instruction.

>If High Schools truly wanted to introduce Algebra to students in a "pure" form then Math teachers would need to know/understand Abstract Algebra. And then be able to teach introductory ideas to Abstract Algebra which, in all honesty, anyone can come to understand.

They don't. Not on the general level. You're worrying overmuch about semantics. The name "Algebra" isn't ever going away; no high school guidance department wants to explain to every single college that their program teaches the same thing as a normal "Algebra 1" class but just calling it "Practical Mathematics". (Incidentally, "Practical Mathematics" would imply much more basic mathematics, your traditional "Home Economics" class with taxes, investments, credit cards, balancing checkbooks, etc.)

Beyond that, abstraction is much, much, much, harder for the average student than you realize. Students have trouble seeing the relationship between the Distance Formula and the Pythagorean Theorem. Some have trouble even manipulating basic formulas, such as solving the Ideal Gas Law for a given variable. They will insist on plugging in the numbers into PV=nRT every time, and then solving the equation over and over again. Dividing by 5 is tangible and easily visualized to these students, dividing by R is not.

Math teachers take the job because we love math and want to share that with our students, but practical concerns come first. Symbolic manipulation is much more widely used in the average high school student's future education than pure math. I, and many teachers, include facets of pure mathematics in our courses. When my Honors Geometry students begin working with infinity, I have them read Strogatz's excellent piece on Hilbert[4], which is one of the most popular assignments each year. (And yes, there is next to no Geometry in there, but you have to keep minds sharp somehow.) I also throw in some basic Real Analysis when discussing the concept of rigor in proofs. When my Algebra 2 classes have to trudge through a brief review of Algebra 1, we spend the time talking about why closure matters, and what number systems are and are not closed over what operations. My PreCalc classes do a decent amount of Number Theory.

Finally, most schools offer Discrete Mathematics (i.e., an introduction to Pure Math) as a senior-level math elective. However, it's competing for the brightest minds with AP Calculus and AP Statistics. If you'd like to see more students study Pure Mathematics, the best way to do that would probably be to gather a group of like-minded educators and petition the College Board to create an AP course covering said material

[1][http://www.corestandards.org](http://www.corestandards.org)

[2][http://www.corestandards.org/assets/CCSSI_Mathematics_Append...](http://www.corestandards.org/assets/CCSSI_Mathematics_Appendix_A.pdf)

[3][http://www.corestandards.org/Math/Content/HSA/introduction](http://www.corestandards.org/Math/Content/HSA/introduction)

[4][http://opinionator.blogs.nytimes.com/2010/05/09/the- hilbert-...](http://opinionator.blogs.nytimes.com/2010/05/09/the-hilbert- hotel/?_r=0)

</comment></comment><comment><USER13> The art of transforming mathematical statements in a way that preserves their truth value. That's one guess at it.

<comment><USER17> But algebra does not preserve truth values. It guarantees that if you start with a true statement you will end with a true statement. If you begin with a false statement, it is still valid to end with a true statement. Simple examble:

1=2 | false

0 * 1=0 * 2 |Multiply both sides by 0

0=0 | true

<comment><USER13> Multiplying both sides by zero yields an equation which is vacuously true, and is not useful for solving the problems algebraists set out to solve.

<comment><USER17> True, but it is still valid algebra. There are other examples where one might turn a false statement into a true statement without doing something as pointless as multipling by zero. A common example is squaring an equation. Consider a system of equation in which it can be shown that x=3. Within this system, the statement x=-3 is false, however the statement x^2=9 is true.

Again, this specific example is contrived, but this does come up annoyingly often.

</comment></comment></comment></comment><comment><USER18> Algebra is not just about numbers. It can be about diagrams or knots or whatever: sets where the elements have operations that fit certain axioms.

<comment><USER19> Well, he only talks about school algebra. I'm not familiar with the US high school curriculum but I doubt it goes much beyond polynomials… FTA (3rd paragraph): > (I should stress that in this article I'm focusing on school arithmetic and school algebra. Professional mathematicians use both terms to mean something far more general.)

<comment><USER20> That's almost clear from the question. If this was about higher math, the question would likely have been "What is _an_ algebra?", as "What is algebra?" has the simple but almost content-free answer "The study of algebras." ([http://mathworld.wolfram.com/Algebra.html](http://mathworld.wolfram.com/Algebra.html))

</comment></comment></comment><comment><USER21> Hmm, I think this is a fine essay for people who have already internalized the notion of algebra _per se_ , but it's not great for a student who has to yet to do so and is asking the titular question "What is algebra?"

Here's my attempt for, say, a relatively smart high school student. Consider this a rough draft; I'm writing it from start to finish without editing. I'd love, love, love feedback, though.

Today even schoolchildren understand arithmetic. We have these things called "numbers." There are different types of numbers like natural numbers, integers, rational numbers, and irrational numbers. We have rules for manipulating these numbers like addition, subtraction, multiplication, and division.

This wasn't always the case, however. I don't mean that humans couldn't always add, but I do mean that it took humans thousands of years and multiple false starts to come up with a sensible way to represent numbers and these operations. Think about trying to do division with Roman numerals, for example. It'd be a nightmare!

There was a time when numbers like "4/5", "-2", "0", and "√5" made people freak out because we didn't have the symbols to represent them and it wasn't obvious what they corresponded to "in real life," if anything. Imagine yourself living in a world like the ancient Greeks, for example, where you represented numbers by talking about lines of a given length. It was very hard for you to talk about numbers _per se_ without drawing a shape that somehow encoded that number. Now, pop quiz: how do you represent something like "0" or "-2" in this world? If you were a Roman using Roman numerals, how would you represent "4/5"?

This is just a story to highlight that although we take our numbering system and arithmetic for granted, this was not the case for most of human history, even most of recorded human history. The way we do arithmetic was an _invention_ that both helped us do arithmetic and helped us understand WTF a number even is.

By the way, if you freak out at the idea of imaginary numbers or the idea of a number i which satisfies the property i^2 = -1, this is _no different_ than the kind of freaking out the ancient Greeks did when they first encountered √2 or other cultures tried to make sense of negative numbers.

Now, let's think about what we really did by inventing arithmetic as we understand it today. You can't point to the number "5" anywhere in the world, right? Even the symbol 5 isn't five _per se_ , any more than "five", "fünf", "|||||", "V", or "五" are five _per se_. But with one symbol "5" we can represent this abstract thing.

Then something like "5 + 4" might represent the length of a line segment made from concatenating a line segment of length 5 and a line segment of length 4, the age of a 5-year-old in 4 years, the volume of water made from pouring five buckets of water into a pool and then four buckets of water, the number of apples shared between a 5-apple basket and a 4-apple basket, and so on. So, these abstract things we call "numbers" and "arithmetical operations" can represent many more concrete things.

Let's call this process "abstracting." Algebra is what you get when you treat numbers as the concrete thing and apply this same process. With arithmetic, we want to talk about numbers divorced from a particular concrete realization. That is, we want to talk about the number 5 without having to talk about a basket of five apples. With algebra, we want to talk about numbers _per se_ divorced from a particular concrete number.

Remember, when we invented arithmetic we had to invent a bunch of symbols to represent the abstract thing. We do that in algebra, too. Often we use single- letter symbols like x and y, but we could use anything like ☃, ☂, or zorpzop. These symbols "stand in" some number in the same way that the symbol 5 "stands in" for all the things 5 could possibly represent in the world. We can talk about 5 without talking about the things it might represent.

So, we say things like "let x be a number" or "let x be a positive number" or "let x be a rational number." What can we say about x in each of these situations?

For example, if x, y, and z are all standing in for some number, we can say the following:

        x + 0 = 0 + x = x          regardless of what number x is
        x + y = y + x              regardless of what numbers x and y are
        x + (y + z) = (x + y) + z  regardless of what numbers x, y, and z are
        x*1 = 1*x = x              regardless of what number x is
        x*(y + x) = x*y + x*z      regardless of what numbers x, y, and z are

These are true because of what we mean when we say "number" and what we mean when we say "addition." It's not as if these are true for some numbers and not all, nor is it as if we know these are true because we've "checked all the numbers." That's impossible because there are an infinitude of numbers.

So, now we might ask things like, "Are there any numbers x such that x^2 + 1 = 0? How about x^2 + x - 1 = 0?" These questions might be hard to answer, but we have now at least invented a language where we can ask them, whereas before "abstracting" arithmetic into algebra we had no easy and succinct way of asking them.

This is no different than not being able to easily ask, "Can we construct an equilateral triangle with side lengths of π?" before abstracting from more concrete things into numbers. Without a symbol for π we have to say things like "the constant that is the ratio formed between the circumference and diameter of a circle." This is how mathematics was done for thousands of years. It was tough going, as you can imagine, and we missed many things that would seem "obvious" to people using our notation.

You can continue this process further, by the way, and abstract further from algebra. This is what mathematicians call _abstract algebra_ ([http://en.wikipedia.org/wiki/Abstract_algebra](http://en.wikipedia.org/wiki/Abstract_algebra)). In this context there are multiple algebras and the "algebra of numbers" becomes the concrete thing in this new system. Linear algebra is a different algebra, for example, with a different sets of "numbers" and a different set of "arithmetical operations" that don't always correspond 1-to-1 with the numbers and operations we find in arithmetic.

Often, when presented with a new physical system of objects that interact in a certain way, we can try to abstract these objects and operations into symbols and derive rules about these abstract symbols and operations that correspond to the workings of the physical system.

We might call this symbolic system "an algebra." For example, Claude Shannon invented an algebra for relay and switching circuits that allows us to understand how they operated and how to combine them without actually building physical circuits. See [http://www.cs.virginia.edu/~evans/greatworks/shannon38.pdf](http://www.cs.virginia.edu/~evans/greatworks/shannon38.pdf)

<comment><USER22> Division with Roman numerals being a nightmare was not obvious to me. That was my first friction point here :-)

> _There was a time when numbers like "4/5", "-2", "0", and "√5" made people > freak out because we didn't have the symbols to represent them_

Who freaked out, and how could they freak out if they could not behold these numbers in the first place (i.e. no symbolic representations)?

> _without drawing a shape that somehow encoded that number_

Recommend you use "represented that number" because encoding has a strong, separate type of meaning to me.

> _Now, pop quiz: how do you represent something like "0" or "-2" in this > world? If you were a Roman using Roman numerals, how would you represent > "4/5"?_

For "0" I would have made an empty box, out of strings if necessary. For the -2 I would have placed two of the strings in a different location. For the Roman numeral conundrum I would have placed IV and then a line and then a V below that. Now, I just solved your conundrums. Or didn't I? To really speak to beginners it's important to delve into this stuff. So far I have not discovered why our number system is so great, and I don't feel like I'm freaking out about anything in particular. :-)

Thanks for your writeup, though. I hope you can turn it into a book for people like me.

\--Designer guy who is not super great at math

<comment><USER23> > Who freaked out, and how could they freak out if they could not behold these > numbers in the first place (i.e. no symbolic representations)?

The story goes that Hippasos of Metapontum discovered the existence of irrational numbers like √2 while at sea, and his fellow Pythagoreans threw him overboard, because it proved that there were aspects of the world that could not be represented with rational numbers. That said, the notion of a square root had been established for at least a thousand years by that point (by the Egyptians and Sumerians), so the freaking out was less about their representation and more about their properties.

> For "0" I would have made an empty box...

Your representations are parasitic on the fact that you already have a deeply ingrained representation for those concepts and are comfortable manipulating those concepts. It's like suggesting that you'd reinvent the wheel if you lived in a civilization with no wheels merely because it seems obvious to you looking at it today. Really it's not at all obvious, as no New World civilization ever developed the wheel, and most Old World civilizations borrowed it rather than inventing it independently.

Think of it this way: if you understood fractions, but nobody else did, how would you represent them symbolically such that everyone else would? I'm of the opinion that our typical notation for calculus is spectacular (especially compared to Newton's original notation—the d/dx notation used today comes via Leibniz) but if you don't understand calculus, how does that help you? You understand negative numbers, but to a person with no concept of debt, a person for whom numbers represent 'how many sheep you have', what does that mean, and how do you symbolize it so that they do understand?

</comment></comment></comment><comment><USER24> From the article, which runs off the rails after this "In today's world, most of us really do need to master algebraic thinking."

In practice its a class based (several meanings of class...) sorting/filtering path for students... this group will successfully take orders from above to handle unusual logical problems with some stability, discipline, and a self directed very short term plan (aka future supervisor material) and this group of kids can't/won't and will end up working underneath the first group as proles.

Unless you think most people will become supervisory workers or above, its just not necessary.

<comment><USER25> The explicit example in the article was "Creating formulas in a spreadsheet" (paraphrasing a bit). Is that really a task that will never be required of non-supervisory workers?

I'm really not sure where you're going with this, or what it is that you see as "run[ning] off the rails".

</comment></comment><comment><USER26> Algebra is an abstraction over arithmetic, which is an abstraction layer over counting. Or at least that is the abstraction I am using today after reading the article.

As a nitpick, I am not convinced that arithmetic is prior to geometry - e.g. Stonehenge and celestial navigation require geometric abstractions but not arithmetic. "Fabricate bricks until I tell you I have enough" is a more reliable logistical model for the construction of Rome's aqueducts than "provide _x_ bricks for each of the _y_ miles."

<comment><USER27> This is funny because the construction of Rome's aqueducts was anything but "... until I have enough".

<comment><USER28> This is funny, because the text you quoted wasn't referring to the construction of the aqueducts, only the fabrication of the bricks used in the construction.

</comment></comment></comment><comment><USER29> Tangentially related to the article, but for many years I struggled with understanding what algebra was an more importantly why it was of interest. On one hand you had groups and rings that sort of seemed related, but they weren't algebra's. Then there were special techniques like linear algebra and I could see that they were all sort of similar but why they were of interest and all considered to be part of the same subject escaped me. Sure they were interesting in a way and group theory was sort of cool but what was the point? Analysis on the other hand made sense, it was the study of how continuous things changed. As a result I though of algebra as a sort of collection of things that you got when you discretized continuous objects. Lie algebra's and groups came as a bit of a shock, but they were basically still thought of algebra as discrete.

Many of my friends raved about its beauty, but I still had no intuition as to why it was interesting. I went on a bit of a reading binge, and eventually ended up bumping into some papers of Shafarevich[0] which in turn lead me to his delightful book on algebra [1]. In it he defines algebra as the construction and study of systems of measurement. For example counting is the simplest such system and gives the natural numbers. Attempts to describe and measure the diagonal of the unit square gave irrational numbers. As we explored the world we needed to construct new systems. A more recent example is provided by quantum mechanics, where numbers are insufficient to describe our observations, however Hilbert space provides a natural setting. Attempts to describe what a simultaneous measurement of two quantities is find a natural description as commuting operators. He provides many other examples in his very readable book. For whatever reason this definition of algebra resonated with me and if this was a Zen koan I would say I was enlightened.

This is really just a very long winded way of saying that I think Shafarevich's book in which he defines algebra as the study of measurement is lovely. You should read it if such things interest you.

[0][https://en.wikipedia.org/wiki/Igor_Shafarevich](https://en.wikipedia.org/wiki/Igor_Shafarevich) [1] [https://encrypted.google.com/books/about/Basic_Notions_of_Al...](https://encrypted.google.com/books/about/Basic_Notions_of_Algebra.html?id=CHadhWO4DWYC)

</comment><comment><USER14> I really like the "algebra is like cheating for math" epiphany. It gets to the core of both higher mathematics and the problems in our educational approach.</comment>


Show HN: Fast native RPM building from any distro, for any distro, via Docker - <AUTHOR> https://github.com/alanfranz/docker-rpm-builder <comment><USER2> Everything old is new again. 'mock' and various SUSE tools have done this for a decade or more.

I'm waiting for the fun to start when they realize that using a different kernel from the one the distro is designed for causes all sorts of crazy-hard- to-find bugs. Been there with mock, several times.

Here was one of my favorites, which took weeks to diagnose: [https://lists.nongnu.org/archive/html/qemu- devel/2010-02/msg...](https://lists.nongnu.org/archive/html/qemu- devel/2010-02/msg00823.html)

<comment><AUTHOR> You are right, the kernel is still a dependency. But I canno solve all problems - at least my proposal is not worse than mock, and it solves some major nuisances with it, especially the difficulty of debugging build issues.

I'll add the note about kernel importance in the docs, though. Thanks!

</comment></comment><comment><USER3> Generating a source rpm is not required to build a binary rpm, so I don't get the point of this tool. All you need to build a binary RPM is a .spec file. The spec file can then determine how to build and package it, like using sources already on disk, downloading sources, using a list of pre-compiled or noarch files, etc.

Building RPMS is typically a platform-specific thing, because most distributions bastardize their systems to be incompatible with others' RPMs. RPMs provided by vendors and 3rd parties typically shove everything into /opt and depend on very little to work around this. If you want your package to be portable you should probably do the same.

<comment><USER2> RPM is a packaging format, not a packaging standard. Fedora has a massive set of guidelines. OpenSUSE has a massive and different set of guidelines, because it's a different distro with different goals. Mandriva, another set. And so on. The fact they all happen to use RPM is pretty much irrelevant.

<comment><USER3> This is true, but they're also all Linux distributions providing exactly the same software, and all duplicating hundreds of hours of effort per package by doing exactly the same thing with tiny incompatible differences. It doesn't have to be that way. For example, they could provide shims for the incompatibilities in each others' standards so the packages _edit: spec files_ could be reused without breaking on other systems. But instead they work in silos. Sigh

<comment><USER2> This is a problem (if you consider it a problem) of all Linux distros. It's just that people look at the foo.rpm file and think it should be installable anywhere, but no one would look at a foo.deb file and think they could install it on Arch.

<comment><USER3> If Debian packages only required a single text file to build everything, they could! It would be simple for the distros to combine their efforts on a single .spec file. Back in the day I used to make RPM .specs that would build the package successfully on Solaris, Linux, Windows, etc and then had tools to convert the RPM into a native package format for easier maintenance. Writing an rpm2dstream script took just a couple hours.

</comment></comment></comment></comment></comment><comment><USER4> Does anyone have a use for a tool to assemble an RPM without using a .spec file and the rpmbuild process? I.e., something that works on a combination of pre-built binaries (in a .tar file) along with a .manifest file?

I was putting something together like that a while ago for packaging up software for internal use, that we get from outside vendors. I can dig it up and throw it on Github if anyone is interested.

<comment><AUTHOR> You could use fpm.

But the point is: can you pack _every single dependency_ in your project? Usually you'll need something from the outside distro (libc usually). Then if you're building on a different host than your target, you may experience issues or different runtime behaviour.

<comment><USER5> It depends what you're packaging. C/C++ code linked against dynamic libraries? Yes, you're going to struggle to package reliably without using the native tools. Java code packaged as a bundle of jars, with no dependency except a JVM? Go code compiled statically, with no dependency except libc? Simple portable packaging should do the job.</comment></comment></comment>


What To Buy an Entrepreneur for the Upcoming Holidays - <AUTHOR> http://digg.com/business_finance/What_to_buy_an_entrepreneur_for_the_holidays/ a humorous look at shopping for an entrepreneur
<comment><USER2> Linking to a social news site from a social news site makes the internet cry.

Direct link: [http://www.darrenherman.com/2007/10/26/what-to-buy-an- entrep...](http://www.darrenherman.com/2007/10/26/what-to-buy-an-entrepreneur- for-the-holidays/)</comment>


Google Maps Has Forsaken Us - <AUTHOR> http://techcrunch.com/2014/05/10/google-maps-has-forsaken-us/ <comment><USER4> Is this where we get to complain about how horrible Google Maps suddenly is?

Because wow. I can speak about this. It's terrible. First and foremost, and they have their "reasons" of course, but my Samsung Rant (yeah just a feature phone) always had great maps. Just a simple Java app, built on the maps API. Well that doesn't work anymore. Like, nothing. Google basically says "Get an Android phone, sucker." F U Google. Is what I think of that.

Secondly, the desktop (and basically the tablet experience too is the same) has gotten terrible. It takes a really long time before my mouse event matters. By this time, the screen, since it's still resolving and moving things around the canvas or whatever the hell it's doing, well by the time my mouse event registers, the object I wanted has moved away. I'm now doing something else!

Directions. Just so retarded. The accordion shit on the left. Just show me the effing directions, like you used to. I don't want to tab around a widget in the upper left. Plus you have toggle it open in the first place, and it's not very responsive, either.

Also, just simple double-clicking to zoom. Extremely less useful than it used to be: just this one simple thing.

I could go on. How awful. What happened?

<comment><USER5> What you're saying is absolutely correct. I actually had to use Bing Maps today to look up some directions because the new version of Google Maps was pretty much unusable.

As for why UX disasters like this can happen, I think it generally comes down to one thing these days: "hipsters".

Those of us who've been in industry for a long time have no doubt seen this happen before. A relatively well-established product has a usable UI. It isn't perfect, and maybe even looks "dated" in some ways, but it generally works and is understood by its existing users.

So-called "hipsters" (that is, people who have an uncompromising view that they're talented "designers" or "UI experts", with a massive ego to back this up, and a fixation on being "trendy") get involved at some point. These people are often relatively young, often have limited experience, and are usually more focused on making designs look "pretty" and "modern" rather than usable.

Needing to create work for themselves, these hipsters, coupled with managers who need to appear to be leading something seen as "productive", start on a UI redesign. Often this is done without the involvement or insight offered by the existing developers of the product, nor any of the product's users. Changes are made purely to look "better", with limited to no consideration of how it'll impact the usability of the product.

The end result is a total cock-up like this, or like the poor UI of Chrome (and the imitations of it by Firefox, Opera and IE), or a project-killing release like GNOME 3, or an abysmal failure like Windows 8.

UIs were generally far more usable in the 1980s, 1990s, and the first half of the 2000s, before "hipsters" got involved with design. What we see today is a total jumble of inconsistent and incoherent UI design, where usability and efficiency are considered significantly less important than "looking trendy".

<comment><USER4> Yeah I hear ya. Whoever guided this Titanic into the iceberg...well he ain't no Steve Jobs. That's for sure.

It's hard to overstate how just plain awful Google Maps is now. It's amazing, in a way. I literally cannot understand how so many smart people can, all together, fail to observe the obvious. Manifestly obviously just shit awful. To observe this one only needs a few seconds with Google Maps. A few minutes cements it. Yet here we are...

<comment><USER6> I've been bitching and moaning about the new g-maps for so long! And this thread makes me feel...vindicated? I guess? Too bad I'm still stuck with it.

The funny thing is that it's possible the UI could have been screwed while keeping the search stable, but as the article points out, the search is killing me. It's Apple Maps-ish in a way. I mean, if I'm zoomed in to a particular level and I do a search, there's a good bet that I'm only interested in results within those bounds, right? I'm not crazy to want that am I?

<comment><USER7> Click on the ? at the bottom right, then select Return to old Google maps lastly click on the classic yellow ribbon which appears at the top asking to remember your preference.

6 more months of classic maps then they will probably phase it out, sadly.

<comment><USER8> Is there a way to switch to classic view permanently?

Every time I start Google Maps again - it starts with crippled version.

Update: I just noticed that after switching to Classic, Google Maps is asking me if I want to remember that choice permanently.

The question is not prominent enough though.

<comment><USER7> They do this with every service/option they don't want you to use.

For example, if you enable delay e-mail send in gMail, you get a tiny pop-up to undo your message... I guess you just have to learn to always look at the top middle for Google's hidden/minimally displayed functions.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> This is a bad article. It tries to draw some kind of causality link between the new maps UI and a couple of bad search results that the author received. (And then tries to blame it on some completely random academic paper written by Googlers, which as far as I can tell doesn't even have a hint of being from a geo-context, and doesn't look particularly applicable to geocoding or local searches). Of course blaming the new UI is a real crowd-pleaser, as can be seen in the HN comments, which must be good for getting some page hits on a Saturday afternoon.

The reality is that Google Maps has always had a (frequently changing) set of searches producing bad results. Some of those failures would have been much more visible, widely publicized, and serious than a blogger not finding the closest burger joint. This article presents the past as searches always just working, which just wasn't true. As such there's no compelling evidence there of the search result quality having actually degraded over time.

<comment><USER10> So they had a project with usable interface and sub optimal searching, and they decided to "fix" the UI but not the searching?

<comment><USER9> No, of course not. What kind of a comment is that anyway? You appear to be doing exactly the same kind of conflating of the UI and the backend that I was complaining about. There's a bunch of people whose job is to improve the search quality. They're largely not going to be the same people who'll work on the UI, so it's not some kind of either-or choice.

But it's a very difficult problem where it's rare that a change is uniformly beneficial, that's insanely dependent on frequently changing input data, and that users are very unforgiving about. My theory on the last point is that a map search is much more concrete than a web search. People have an intuition both about what the right answer should be, as well as an expectation that there is a right answer in the first place. But of course that's not the case, and the results are never going to be optimal. (I.e. your "sub optimal searching" bit is a bit of a truism).

I used to work on the Google maps geocoding team a long time ago. At that time amazing amounts of CPU and engineer time would be spent on verifying the quality of all algorithm and data changes, both during development and during launch. Changes that were unevaluated or were a net negative on quality would only be launched under very exceptional circumstances. Now, the evaluation would of course not be a fully deterministic process, it'd always need to be based on some kind of sampling. But on average that should still mean quality ratcheting up slowly. Maybe things have changed since then and stuff is just randomly launched with no regard to quality, but I have no particular reason to believe so. To me it seems much more likely that the anecdotes from the article don't represent any kind of trend.

<comment><USER11> >At that time amazing amounts of CPU and engineer time would be spent on verifying the quality of all algorithm and data changes, both during development and during launch. Changes that were unevaluated or were a net negative on quality would only be launched under very exceptional circumstances.

Maybe they should actually try using the product instead of relying on automated algorithms to generate metrics when they evaluate changes. For example, it's quite obvious that something is going wrong with the prioritisation of name place text for the UK at the moment: [http://imgur.com/kL0GHfe](http://imgur.com/kL0GHfe) (for the non-UK readers, no there is not a large important city called "Town Centre", Edinburgh is far larger than Kirkcaldy, Birmingham is the second largest city in the country and not labeled at all).

I'm quite curious about how much real human testing they actually do. I've always had the impression that testing by actual humans is the antithesis of Google culture (automate everything and reduce everything to comparable numerical metrics).

<comment><USER9> It's a good thing that I didn't say anything about "automated algorithms used to generate metrics", then... This was machine-aided human evaluation.

Search quality evaluation can't really be done without humans in the loop. If you had an algorithm that could distinguish between a good result and a bad result, you wouldn't use it to evaluate results. You'd use it to generate the results.

<comment><USER11> >Search quality evaluation can't really be done without humans in the loop.

I wasn't talking about search though. I was talking about the map rendering.

</comment></comment></comment></comment></comment></comment><comment><USER12> I have to say that I've had completely the opposite experience from the author. GMaps almost always find what I'm looking for in a timely fashion, I find the offline maps useful when I'm traveling to a different city, and so on.

One of my favorite use cases is having GMaps give me directions by public transit, especially if there's a metro, which is nice if you're in a new city and want to save a few bucks on taxis or Uber.

That said, they've definitely made a few changes I haven't been a fan of. For example, offline maps must now be refreshed once every 30 days, and if you're offline when the timer runs out you won't be able to see the map. (Previously there was no time limit.)

<comment><USER13> I agree. On the whole, maps is still awesome -- and with the google now functionality? Holy crap, I feel like Iron Man when I'm driving around and command my phone to navigate me to the closest Taco Bell.

That said, I do absolutely, 100% think the everything-is-now-done-through-the- search-box approach is remarkably horrible and unintuitive. I honestly thought that you couldn't customize directions any more. Hell, there were so many little features -- simple things like Search Nearby -- that I thought went away entirely. The UX is _that_ terrible.

Want to customize the route your currently on? That's easy! Ok, so just close what your currently doing -- hey! Why are you looking in the settings? Why would settings be in Settings? Listen to what I'm saying! So, close out of the -- No! It's not in the Hamburger button. Settings aren't in the menu. Why would settings be in a menu? Pay attention! Exit navigation. Back out of the Directions screen, back out of the location screen. Now, see the single line search bar? Click on that -- but don't search for anything, there's a small button in the drop down. Click that! Congratulations! You've found the settings!

I just want to know how that UX meeting went. Settings!? In a menu!? No, no, no. Makes no sense from a user experience perspective.

</comment></comment><comment><USER14> In the example given it's the word "forest" that is the problem.

"Sambisa" would have found it.

"Sambisa Reserve" would have found it.

"Sambisa Forest Reserve" would have found it.

But my guess is that something attempts to understand keywords and context and when you end with "forest" it looks within the set of forests that are called Sambisa, and actually there isn't a forest called Sambisa, there's a nature reserve called Sambisa, which covers an area within a forest landscape.

Yeah, that's pedantic and Google could do a better job when it attempts to contextualise like that (especially if it's topical), by just doing a second search internally for exact matches and doing a join/merge on the results.

But still... you're going to have the same problem with Open Street Map for the same reason:

[http://open.mapquestapi.com/nominatim/v1/search.php?format=j...](http://open.mapquestapi.com/nominatim/v1/search.php?format=json&q=sambisa)

[http://open.mapquestapi.com/nominatim/v1/search.php?format=j...](http://open.mapquestapi.com/nominatim/v1/search.php?format=json&q=sambisa%20forest)

[http://open.mapquestapi.com/nominatim/v1/search.php?format=j...](http://open.mapquestapi.com/nominatim/v1/search.php?format=json&q=sambisa%20forest%20reserve)

<comment><USER15> or it could, I don't know, maybe search on closest matches to locations containing the words "Sambisa" and "forest" with priority to those areas containing the words in the correct order - like maybe "Sambisa Forest Reserve".

Oooh maybe they can take out a patent on that idea first...

(Sorry OP, not having a go at you - just getting incredibly frustrated with companies I used to love and respect - like Google and Amazon.)

<comment><USER16> That sounds way too obvious for them not to have tried on a large corpus of (search string, correct result) pairs. If it actually gave better results, do you really think they wouldn't do it? I understand wanting to vent about the magic not being magical enough, but just how stupid do you think they are?

<comment><USER17> Google has a bad habit of trying to be _too_ clever. For a very long time, searching for "yore" (an English word) on the Google Play store only gave me results for "your", without even bothering to tell me what it was doing.

Google is very concerned about giving users what it _thinks_ they want, rather then what they actually asked for. Sometimes that's great (I love basic stemming), sometimes it fills my results with irrelevant garbage.

</comment></comment></comment></comment><comment><USER18> Something is, indeed, terribly terribly wrong in Google Maps algorithm land. For at least the last couple of weeks, Google Maps has been insisting that Basingstoke in England is called "Town Centre", and is one of the most important places in England. On a view of the entire country, it's displaying a label in the same font-size it uses for Southampton, Bristol and Liverpool marking Basingstoke as "Town Centre". Manchester and Birmingham aren't labelled at all. If this is the quality of mapping Google is providing for a major first-world English-speaking market - you should be grateful it even knows Nigeria exists.

<comment><USER19> Basingstoke one of the most important places in England? pull the other one

<comment><USER20> He was referring to "Town Centre".

</comment></comment></comment><comment><USER21> What's happening with Google Maps is reminiscent of IE6: a beautiful product appears, light-years ahead of the competition, and free. The competition in question, being light-years behind, and non-free, promptly dies.

Then the beautiful product gets frozen in place, and its team "locked up in a dark dungeon" (Spolsky, 2004), which creates a huge opportunity for (open) alternatives.

OpenStreetMap + Leaflet is to Google Maps what Firefox was to IE6... but there is still a very long way to go.

<comment><USER22> Frozen in place would have been more useful. Even just talking about the new UI, Google Maps has become a giant pain to work with.

<comment><USER23> Exactly. The problem is, Google has all these employees they need to keep busy, which translates into "upgrading" or redesigning products whether they need it or not. Products always suffer from this pattern.

It turns out that Google isn't smart enough to avoid the same mistakes made by the companies it supplanted.

</comment></comment></comment><comment><USER24> The worst about that Sambisa Forest thing is that the autocompletion finds it ([http://imgur.com/kWgcByo](http://imgur.com/kWgcByo)) and then when you press enter, you get a not found error ([http://imgur.com/GyhVSaO](http://imgur.com/GyhVSaO)) !

<comment><USER25> Exactly. I don't know what they have changed but earlier, typing partial address (pressing enter) based on what you saw on auto complete used to work. In new version, you MUST use arrow key and select the auto complete item for it to work.

</comment></comment><comment><USER26> My pet peeve as a Londoner; the disappearance of the transit layer when searching for a place. If you've not searched for anything, New-oogle Maps will happily show you the card that lets you activate the transit layer and superimpose the spiderweb of tube lines on to the London map. However, the second a marker gets dropped, good luck seeing that layer ever again.

I mean, even if you clickity clack through the directions>origin>transit, Google will mark up its suggested routes while still refusing to superimpose the tube lines. It's maddening! For all the sophisticated route-mapping that I'm sure Google is bringing to bear on the problem, I'd much rather just look at a map that simultaneously shows a search result marker and the tube network at the same time and figure out my own route. And heaven forbid that I might want to see a collection of results for DIY shops and figure out which one I can get to quickest with reference to the underground network -- it seems that Google would have me route-map each of them in turn, write down the results and then decide. It's so deeply counter-intuitive that I struggle to think of any possible rationalisation for the decision.

I don't suppose anyone has a bookmarklet that toggles the transit layer?

<comment><USER27> Yeah, I have the exact same complaint. Took me 10 minutes to find out how to get the transit layer back. Then I found out it was practically unusable because as soon as you scroll across London, it disappears...

Have you tried using Citymapper? I've only used it a couple of times as I'm not a Londoner, but it's quite good (it knows to avoid the circle line!). Coincidentally, the first time was to get to #HNLondon where one of the Citymapper guys was giving a talk.

<comment><USER26> Citymapper is excellent, especially their mobile app's get-me-home feature (ideal for instant bus combos after the tube's closed). However, it's not designed for the vaguer queries -- nearby cafes, haberdasheries, etc -- at which google maps used to excel.

</comment></comment></comment><comment><USER28> I will go against the grain a little and say I don't mind the new Google Maps, and it's getting better to the point where I might even say I like it more than the old Maps. They have been steadily improving it - initially the street view UI was terrible, and there wasn't even a distance scale. I think we've gotten to the point where releasing such poor stuff and calling it beta doesn't fly anymore when you consider how many people will be using it.

I've gotten used to putting in unnecessarily verbose context in searches, and I assume that's why I don't have search issues in sending me to other irrelevant parts of the world.

I guess there is a lot to complain about. But for me it's still the best map, and pretty usable.

The Google approach of changing things on you - too bad! - is obnoxious. Pushing out Chrome notifications in OS, enabling them by default, and having to find blog posts on how to disable because it's not in settings or documentation, this kinda stuff is just getting old.

</comment><comment><USER29> I can't say that I've had problems figuring the UI out, but I have had problems with the algorithm lately. If I had to guess I'd say it's Google often failing to factor in the location at some points, because I can rarely repeat the errors.

For example, I searched Maps for a Mexican restaurant with my phone recently. It directed me to a place in Florida (hundreds of miles away). Seriously, when there's a highly-rated place on Google Maps with the same name not 3 miles from where you've located me? When I returned home and searched, I had no such problems - it pointed straight at the place. I've had the reverse happen as well.

Is it the fact that I'm blocking so many cookies that Google is relying on? Or is there just a signal somewhere that tells Maps to override reason and relevance?

I have tried alternatives, but the top contenders - like Bing and OpenMaps - have their own very special set of problems.. I'm not sure what to use at this point.

</comment><comment><USER30> The Google Maps product really is lacking outside of the United States.

I was down in Chile's Lake District last week, and Google totally failed me, both in Pucón and Panguipulli. These are not particularly tiny towns - <USER2> fact, Pucón is a major tourist destination. But Google was completely lacking in street information for both places. I ended up having to use Bing.

Google wasn't even second - both Nokia's HERE Maps (which powers Yahoo) and Apple's map product were better (although Apple was still pretty atrocious).

Here's a couple of links for comparison - Pucón in Google Maps ([http://goo.gl/maps/rm1D9](http://goo.gl/maps/rm1D9)) vs Pucón in Bing Maps ([http://binged.it/1gR5K55](http://binged.it/1gR5K55)). If Bing Maps had a dedicated iOS application, I'd just switch permanently.

<comment><USER31> I quite like using Geofabrik's MapCompare tool for things like this. For example, take a look at [http://tools.geofabrik.de/mc/#14/-39.2756/-71.9824&num=4&mt0...](http://tools.geofabrik.de/mc/#14/-39.2756/-71.9824&num=4&mt0=mapnik&mt1=google- map&mt2=bing-map&mt3=nokia-map)

<comment><USER30> That's awesome! Thanks for the link.

</comment></comment></comment><comment><USER32> I was trying to find out how much it costs to use Google Maps in a business product (SaaS) I literally could not find a price without the "give us your details and our sales team will be in touch" which to me translates as "We need to work out exactly where to stick the hose to suck out the money".

Compare that with this [https://www.mapbox.com/plans/](https://www.mapbox.com/plans/).

I know who will be getting my money in the near future.

<comment><USER33> Have you looked at OpenStreetMap? Is there anything in particular that it lacks compared to Mapbox?

<comment><USER32> Commercial backing.

I know that sounds somewhat daft but I like been a paying customer as it means I can get some support plus the documentation for mapbox is lovely as well.

<comment><USER34> Do you realize that what Mapbox gives you is Openstreetmap data ?

<comment><USER32> Yep, I researched the options thoroughly.

I like that mapbox wraps it all up, clearly documents it and provides it at a reasonable cost, to me that is a value added worth paying for is all.

<comment><USER34> > Yep, I researched the options thoroughly.

Interesting - someone used you comment as validation that Mapbox provides insufficient attribution to Openstreetmap: [https://twitter.com/Anonymaps/status/465216595242274817](https://twitter.com/Anonymaps/status/465216595242274817)

<comment><USER32> Ah thanks for that, I commented on the twitter thread as well.

Interesting that was the conclusion someone projected though.

</comment></comment></comment></comment></comment></comment></comment><comment><USER35> I've used Google Maps with the new UI for a long time, and it was pretty screwy. It used to be much, much slower than the old UI. These days, performance is a little better, though it's still not quite snappy.

Some parts of the new UI still _suck_ , though. Just today, I wanted to print route directions. However, there's no print thingy anywhere in sight. You now have to click "List all steps", and only then a printer icon appears... Completely non-obvious. My wife mentioned that she had already reverted to just using Print Screen a few times because she couldn't find the stupid widget.

</comment><comment><USER36> I've said it before and I'll say it again. Mapping is too important a thing to let one company control the experience. The debate is not about whether Google Maps is good or bad, but if its bad _for you_ there is little choice. You can't fix it. It's not a 100% there, but get on the OpenStreetMap train, fix your local area and have fun. And enjoy all the good stuff startups are building on top of that data.

Here is an easy way to get started: [http://www.openstreetmap.org/fixthemap](http://www.openstreetmap.org/fixthemap)

</comment><comment><USER37> There's a simple explanation for recent GUI disasters across google applications: Google+. They decided to make a Swiss Army Knife under the banner of Google+, and needed kind of "consistency" of style. Everything is consistency ugly now, and Google+ guy is gone. Situation may improve as they starts dismantling the monstrosity. With respect to search quality - <USER3> hired some AI astronauts, neural networks do wonders for them. The goal is to train their system to accommodate astronauts' brains. They say it openly.

</comment><comment><USER38> 100 times YES!

I've gotten this behavior for years and it drives me nuts because I can't understand how it's not fixed? I remember in 2009 I was driving down from SF to LA. I stopped in Santa Barbara. I needed my bearings and I didn't not know the address or the name of the street I was on but I did see an Albertson's supermarket about 200 feet away so I searched for Albertsons and Google gives me some place in Texas. (I think this was on a SonyW810)

I've searched for Pizza in Tokyo last December and had it give me some place in Chicago. It's so infuriating. It knows I'm in Tokyo, it's pinpointed me on the map. So in what situation would I EVER want Pizza in Texas unless I specifically asked for "Pizza, Texas"?

There's other things too. It mostly feels like maps hasn't changed in years. Sure, there's the new maps UI which many people, including me, feel like it's a change for the worse. The geek in me loves that it's slick and live and webgl but can you figure out how to get a short link to a place? Clicking "Share" just brings up a G+ form. Not what I wanted. I wanted a link I could msg to someone. Didn't have that problem with the old maps.

How about how to print? The old maps had a print button and it would format for printing. The new maps has one but I can never remember where it's buried in the UI. Picking Print from the browser directly doesn't do this.

Trying to figure out the UI that pops up and down. Here's one. Pick any marker on the map or search for something like Best Buy. The popup UI should show some details on whatever you picked or the one it picked for you. Now click "Directions". Ok, now how do you get back to the state just before you clicked "Directions"? There's no back button, clicking the X in the corner goes all the way back before you selected anything. In other words there is no back. If you clicked directions by accident well, I guess you just have to start over and type your search in again. If you clicked some dot on a detailed map, well now you've lost your place.

Even more frustrating is who can compete with them? How do you compete with free? If they're not going to do a good job then I'd love for someone else to try but the moment that someone else does try they'll finally feel some pressure to up their game and you're out of business.

And where's the ads? Maybe you don't want ads but I do. I want to see logos of places. Maybe I'm looking for McDonalds. Even if I'm not the logos serve as landmarks. You'd think it would be in their best interest to sell ads on maps since 90+% of all of Google's revenue is ads. And, if done right it would be extremely useful for users as well. It would even fit their mission statement if done well.

Sigh....

<comment><USER10> A lot of Google changes end up making me feel really dumb.

I have no idea how to create a link to what I'm looking at in Google Maps (app on iPhone). I don't know how many inscrutable buttons I am expected to click to discover this.

There's a bunch of stuff with email that I needed to do a websearch to get instructions.

Very very frustrating.

<comment><USER39> > _I have no idea how to create a link to what I 'm looking at in Google Maps > (app on iPhone)._

I voiced this complaint about the new desktop/browser version of google maps on here a few months ago. FWIW, apparently the permalink functionality has been removed because the address bar is now updated on the fly, so whatever is in the address bar is now always your permalink. This of course is not communicated to the user anywhere that I can see.

I don't know if this helps you on iOS or not.

</comment></comment></comment><comment><USER40> I am grateful that we are able to revert back to the old Google Maps for now. I hope that they keep this regression available to their users for a while.

<comment><USER41> I am a little annoyed that I have to keep going through clickrobatics every time I change back to old Google Maps, and explain why each time. I've already explained a dozen times, quit pestering me. Also, get off my damned lawn.

<comment><USER42> You can get around this by bookmarking a location. I bookmarked my address in the old maps, and use that as my entry point to google maps. It doesn't ask me to switch to new.

</comment></comment></comment><comment><USER43> [http://pasteall.org/pic/show.php?id=71064](http://pasteall.org/pic/show.php?id=71064) [http://pasteall.org/pic/show.php?id=71065](http://pasteall.org/pic/show.php?id=71065)

Keep in mind that Mapquest, Yahoo maps, Bing maps, and Nokia HERE have no record of it at all. So this is really between Google Maps and OpenStreetMap.

</comment><comment><USER44> This blog post is way off. The issue isn't that Google Maps couldn't find Sambisa Forest, it is that it has an issue with how it handles auto complete and pressing enter without selecting the choices it brings up. It quite frankly looks like a bug. You can see for yourself here: [http://i.imgur.com/vX1xqp2.gif](http://i.imgur.com/vX1xqp2.gif)

<comment><USER45> I disagree that the blog post is way off and I think the issue is that google can't find Sambisa Forest (it can't - as your gif demonstrates). It can find, "Sambisa Forest Reserve," which is great, but not the point of the blog.

They are saying that google's ability to take natural language requests (sambisa forest, in-n-out east bay) and come up with an answer that corresponds what you searched for has seriously degraded. Personally, that is consistent with my experience.

What is causing the problem (bug, difference in focus, etc) is also worth discussing. Why does google have so much trouble finding answers to queries that seem straightforward? Why can it suggest "Sambisa Forest Reserve" (based on "sambisa forest") and then have no idea how to find "sambia forest?" The title might be a little grandiose, but I think it's a fair question.

</comment></comment><comment><USER46> Among the points already mentioned, I really hate the 'shake to report issue' feature. Stuck in traffic and frustrated, that thing comes up every time I hit a pothole. The thought that comes to mind everytime is "No Google, I don't want to report a problem, AT THIS MOMENT".

Overall bad choice of control. Much more sensical to stick that in somewhere fitting, like settings.

<comment><USER47> They could just put it in settings too and when you shake to show it there would be a button saying 'Don't show again on shake'.

</comment></comment><comment><USER48> Some other things:

* Start in San Francisco by typing San Francisco. It still manages to find that city. Do 'directions' and type in Eugene, OR, USA - my home town, which is a fairly straightforward drive north. It can't find it and gives you bad results.

* THEY KILLED TERRAIN MODE! This was a super-useful feature that I still use on my computer, but can no longer access on my mobile devices.

<comment><USER49> Terrain mode is still there, you just have to type _Terrain_ in the search bar, and it'll switch the view. Then X out of the search to return to the normal map view. Otherwise, if you click the input box, you should get a terrain button in one of the many expanding boxes.

I don't know who came up with the above concept for switching modes, but it's absolutely awful.

<comment><USER48> In mobile, putting 'Terrain' in the search bar gets me "no results for Terrain".

</comment></comment></comment><comment><USER50> With the old google maps I could count on the fact that I could hope on Google maps 60 seconds before I needed to head out find the directions I needed hit print and be on my way. Or I could have some one on the phone talking to me and saying something hey I am lost I am kinda in this area of town I could pump that into google maps and give walking directions or even driving directions realtime over the phone.

The new google maps is frustrating to use. All the ways that I used to use google maps for just don't seem to work with the new maps either because they removed the feature, or moved the UI elements in such a way that they don't exist on the same page any more or its just too slow on my very fast laptop and my very fast internet.

I really hope they fix it fast, I am loosing all hope that maps will ever be usable again.

</comment><comment><USER51> Frankly, I would not even stop at Maps. Since a year or so Google makes so intensely use of all sort of metadata (my browsing interests in the future, the places if have visited, my contacts on G+) that the internet has become a small world for me. I find myself increasingly using duckduckgo just because of this. Heck, as I use the public DNS servers of google, even deleting Cookies or using browser porn mode doesn't help much.

It's an example that overly smartness actually degrades the experience for me rather than being and improvement.

<comment><USER52> [http://en.wikipedia.org/wiki/Filter_bubble](http://en.wikipedia.org/wiki/Filter_bubble)

</comment></comment><comment><USER53> It's nice to hear that I'm not the only one that feels this way. Search for local businesses has become nearly impossible. Whether it's failing to return anything or results that are wholly irrelevant, search and particularly maps have taken a large step backward.

There's a great market opportunity here. (Really) old guard companies like YP still haven't responded to the shift and I infer from Google's backslide that it's not a priority for them.

We can't buy everything from Amazon (esp. Hachette books!)

</comment><comment><USER54> This is basically endemic in any Google search related functionality. Be it Maps, Images, regular web search or internal search in Google Apps, more and more I don't get what I asked for but what Google thinks I want, filtered for assumed typos, regions and languages until the result has very little relation to what I'm looking for.

This becomes especially galling when I know the info is there and my keywords are correct and specific, and the search returns absolutely nothing even remotely related.

</comment><comment><USER55> The old google maps allows you to paste KML file URL's into the search, now it doesn't work, you have to revert to the old version.

ps. KML files were developed by Google for maps...

<comment><USER56> Keyhole created KML for use in their earth viewer. Later, Google bought them and branded the software as Google Earth.

Supporting KML in the web maps was just a neat thing Google also did.

<comment><USER55> Ah did not know that, it was for sure a neat thing they did. I manage a site that uses KML files extensively for bike and running paths and this switch did cause a minor bump.

</comment></comment></comment><comment><USER57> I'm glad tha Apple maps is steadily improving. There needs to be competition so that free services will compete for users by improving the user experience.

I think iOS 8 will include major updates to Apple maps that will integrate transit directions. Apple recently bought the mapping company Embark along with a few other transit-related acquisitions.

<comment><USER58> The problem is Apple Maps isn't usable outside an iOS device or a specific "Maps" app on Macs only. Share links open google maps, unless you have the above machines. This makes it less than useful for general use.

</comment></comment><comment><USER59> Google knows:

\- Home is in London

\- Work is in London

\- My most recent restaurant reviews are in London

\- My IP address is in London

\- My location, if you ask my browser, is in London

Stop showing me a map of the US when I open Maps.

<comment><USER56> I'm in the U.S.

If I open [https://maps.google.co.uk/](https://maps.google.co.uk/) it shows the UK.

I expect there are people in places outside the U.S. who would be frustrated by maps.google.com showing their current location, so it isn't an easy thing to solve for everyone.

</comment></comment><comment><USER60> Interesting thing here: Reading the article i was wondering what's the fuss, because Google Maps looked and acted like it ever did. Turned out that, because i was using Opera 12, it was still giving me the old Google Maps. So if you really want the old one on the desktop, that's one workaround. :)

</comment><comment><USER61> The author is complaining about product development siloing at Google. I know, because I consulted there, that they are working on better cross business integration for internal systems (this is a goal of all large organizations). That said, don't you want some degree of siloing between products? Certainly share infrastructure, share some data as appropriate, but it just seems to me that by having smaller independent teams that you get more creative products, and better productivity with smaller teams.

BTW, I love Google maps and Google Now - my fanboy'ism is based on both pretty good functionality right now, and I my expectation that it will keep getting better. I have some privacy issues with these products but at least for now I consider the functionality worth some loss of privacy - I can see my opinion changing however.

<comment><USER62> Id' really like to have some opinions about Google Now that everyone seems to find awesome. Let's start with the fact that if I want to set a reminder and I don't have an internet connection I can't. Since when having an internet connection is a prerequisite for even basic tasks? Secondly, of all the suggestions it gave me over the months based on my search history none has been helpful. None. If you search for the same things everyday you'll not get related suggestions, but as soon as you search something like the name of that actor that now eludes you, you'll get 2-3 tabs with the latest news on that actor, even though there's no value in it: you already found what you searched for and it was a one time thing. It keeps telling me the time to work even though by now it should've known when it is appropriate to do so. I mean, it's 4 pm, I didn't move from home, do you really think I'm gonna be 7 hours late to work and it's now a good time to remind me?

<comment><USER61> I was praising Google Now for its potential. I agree that some of the proffered help can be silly.

I find the most useful alerts come from the automated reading of my email; for example: plane schedules and also information on package delivery.

So, I really do believe that Google Now has a lot of potential, but I have concerns about privacy also.

</comment></comment></comment><comment><USER63> You can still switch back to Classic Maps via the question-mark icon in the bottom right. Classic for life.

<comment><USER64> I am having trouble locating it. Am I looking in the right place?

[http://i.imgur.com/QJxKMMc.png](http://i.imgur.com/QJxKMMc.png)

<comment><USER63> Your screenshot looks like you're already in classic maps, this is the bottom right of the new version: [http://i.imgur.com/K9PJI5V.png](http://i.imgur.com/K9PJI5V.png)

<comment><USER64> Well, this is embarrassing. Thanks for the follow-up.

</comment></comment></comment></comment><comment><USER65> Continuing the rant - I would speak for India, if you are going from Point A to Point B it shows you 4 ways to get there. You could filter it with options like - Buses, Trains or Least Transfer, Less walking etc. Now there are times when there are more then 10 buses running between these two points and with a frequency like of 20-30 mins.

So if you happen to use Google Maps then it would show you only 4 results even after you filter down to Buses. Why not show all the options Google? When you have it in your results, just show it.

Because I and lot of people that I know have been in this situation where we are waiting for the bus that google maps is showing and in the process missing out on the ones that are not shown.

</comment><comment><USER66> It's completely stopped working for me on Chrome / Linux (Rats! WebGL hit a snag error) I've tried a few times to fix this but ultimately I've transitioned to always using my phone for maps.

</comment><comment><USER67> The new maps.google.com is completely broken for me. Page doesn't load properly most of the time. First thing I do is to revert to classic maps. Maps app on my Android phone works fine though.

</comment><comment><USER68> Not long ago I did a Google Maps search (on Android) for "restaurants" in my brooklyn neighborhood... and got directed to the Restaurants.com offices in New Jersey. Effing pathetic.

</comment><comment><USER69> This is beyond creepy: [http://www.theheraldng.com/us-marines-satellite- locate-missi...](http://www.theheraldng.com/us-marines-satellite-locate- missing-girls-sambisa-forest-bringbackourgirls/)

TechCrunch randomly chose a thing to search and that's where they are? Granted, it's a huge 60,000kmsq area... But of every place TechCrunch could've searched for on Google Maps, it's the same place?

</comment><comment><USER70> I didn't understand what the big deal was until I drove to downtown LA last night. Google Maps turn-by-turn directions instructed me to make a U turn in the middle of the 110S freeway (which would have crashed me into the center divider). Then, on the 10W, it kept trying to have me get off the freeway and then get right back on.

I don't know WTF happened, but this is an all-hands-on deck situation for Google: must fix ASAHP.

<comment><USER56> In a small town I know, I think they switched their data provider (I guess to the Census TIGER data). I don't have a great memory of what they had, but I recently noticed some alignment problems that I hadn't noticed in the past.

What I think I remember isn't a great point of reference, but a switch to a cheaper, lower quality data set would explain problems with routing.

</comment></comment><comment><USER71> What ever happened to layers? I can't seem to find a way to show bike routes + terrain or bike routes + traffic or any other combination.

</comment><comment><USER72> Glad I'm not the only one suffering. I've got 2 problems with this new fullscreen Google Maps - 1) Noticeably slower 2) Drilling down to each step in public transit directions is now very awkward - it used to be very elegant. At this point Bing Maps is competitive.

</comment><comment><USER73> I can't get street view to work at all with the new maps. I just get a black screen whenever it tries. Is that happening to anyone else? I'm on Firefox beta (30).

</comment><comment><USER74> I concur. Google maps needs some serious work.

It's as if it's running on auto-pilot right now or something.

I can't quite put my finger on it, but something needs to be changed.

</comment><comment><USER75> I think the new UI is much much nicer than the old one.

</comment><comment><USER76> If you enter a search term and just hit enter Google will try and guess which result you want (like the I feel Lucky button). The auto-complete will give more options to pick the correct place name from duplicate names in different places. I think they do a bad job of surfacing the different possible results.

The Google Index does seem to lack a lot of more obscure names. In this case I would rather have high quality authoritative gazetteers than an algorithm that tries to guess what I mean.

</comment><comment><USER77> [https://www.google.com/maps?output=classic](https://www.google.com/maps?output=classic)

</comment><comment><USER78> I blame the current state of Google Maps on micro-optimization, and overconfidence in the ability to predict what you want.

</comment><comment><USER79> For me the most annoying thing is that apparently I no longer can see traffic and directions at the same time.

</comment><comment><USER80> Trivia, but Gleghorn-South Kilgore is in Arkansas (AR) rather than Arizona (AZ). It is an interesting case and I wonder how Google decided that location was important to him.

Contextual search is really tough, and the same choices that might give great answers for most answers can yield infuriating answers for other questions. In this case he is searching for something that doesn't exist, and a forest that probably gets searched a dozen times in aggregate a day on Google Maps, likely contrived for effect. That doesn't excuse those cases, but it isn't correlated with the cases where people got surprisingly cogent answers to their questions.

</comment><comment><USER81> It seems to me that Google hired the Gnome Dev (team) that screwed up the Gnome 2.x GUI.

</comment><comment><USER82> I stopped reading when the screenshot showed AR (Arkansas) and he said it was Arizona (AZ). If you are that geographically challenged, even Google Maps can't save you.

EDIT: I forgot that a sense of humor is not an option here. Geez.

<comment><USER83> [https://news.ycombinator.com/item?id=7609289](https://news.ycombinator.com/item?id=7609289)

<comment><USER82> My point stands that if the guy is so incompetent that he can't figure out which state he's looking at, he shouldn't be writing an article critical of a mapping system in the first place. I'm more of a hardware hacker than a programmer, therefore I don't go around writing articles criticizing the latest version control system; I'd end up making a fool of myself as I wouldn't have a clue what I was talking about.

And just to be clear, I actually agree with him that the new Google Maps seems less useful than the old version.

</comment></comment></comment><comment><USER84> I don't see how citing 3 month old tweets is in any way relevant to a webapp.

Also the selectiveness of tweets and bug reports makes it all seem very labored and seedy and betrays a lack in of understanding in how complex software development (btw directwrite is behind a flag in Chrome 35)

And when you take into account that the author has a history of shitting on Google, it appeals like an attempt in catering to a like minded audience: [http://techcrunch.com/author/jon-evans/](http://techcrunch.com/author/jon- evans/)</comment>