HNHacker News
TopNewBestAskShowJobs

daniel-levin

870 karma · joined December 8, 2012

submissionscomments
daniel-levin··on Amazon and Starbucks pay less tax than sausage stall, says Austria
ROI(tax lawyers) > taxes to pay without them.
daniel-levin··on Mathematical Notation Is Awful
The problem here is not the notation. Mathematical notation is not perfect, and can sometimes be confusing. Let me say this in a minimally offensive manner, without being obfuscatory: the author of this piece does not understand the mathematics underpinning the notation he is using. The root cause seems to be the use of probability theory in a cookbook manner. It can hardly be surprising that confusion results.

The first example is a formula. An instance of magic, in the sense that you use it to compute, without knowing what it does. The $x_i$'s are not quantified. What are they? Are they real numbers? Matrices? Elements of some semi-group? How can you expect to understand the "formula" if the summand is not explained? At best, I can say that it is a formal sum of something. We can forget discussing convergence or it being well-defined. You can cook up arbitrarily 'nice' notation. It won't help. This notation is absolutely fine for someone who can infer that the support of the distribution of X is some denumerable set {x_i}, equipped with p.m.f. p.

A suitable definition of the expected value (as an operator) would have cleared up all the confusing with the variance and E[X^2] vs (E[X])^2. This confusion is not the notation's fault. It is the user's fault for not knowing what E[f(x)] means (for some appropriate meaning of the symbol f).

>> Only the first xixi is squared. p(xi)p(xi) isn't, because it doesn't make any sense in the first place. It should really be just PXiPXi or something, because it's a discrete value, not a function!

Functions are not algebraic expressions by which we associate one real number with another. In fact, we call p(x_i) the probability mass function. It seems to be a common flaw in many undergrad programs. Formulas and functions are never made distinct. The vast majority of functions f : R -> R do not admit an expression in a formula.

The example with the different notation for "derivatives" is a good non-example. The so-called Leibniz notation is used because it allows people to make statements with differential forms, without needing to invoke exterior algebra. If this is done correctly, statements such as "dy = f'(x)dx" can be made fully rigorous, if need be. Students are told that dy/dx is not a fraction, and yet it is used exactly as though it were. This confuses people - because they don't know what is going on. The dot-notation for derivatives is extremely useful in classical mechanics.

Notation is a clutch for succinct and meaningful writing amongst the initiated. One cannot expect to be able to use these tools without knowing what is going on, or by suspending a great deal of questions.

>> There must be other ways we can explain math without having to explain the extraordinarily dense, outdated notation that we use.

My final gripe with this post. We typically use clean and modern notation. It could be so much worse! Also, if we didn't re-use symbols, then we would run out, very quickly. Mathematics exists independently of the symbols we use to communicate it.

daniel-levin··on The Uber Engineering Tech Stack, Part I: The Foundation
Well, to some extent, they do. Their geofencing [0] service takes in coordinates and returns the geofences these coordinates fall into. They make this faster by pruning irrelevant geofences:

>> Instead of indexing the geofences using R-tree or the complicated S2, we chose a simpler route based on the observation that Uber’s business model is city-centric; the business rules and the geofences used to define them are typically associated with a city. This allows us to organize the geofences into a two-level hierarchy where the first level is the city geofences (geofences defining city boundaries), and the second level is the geofences within each city.

[0] https://eng.uber.com/go-geofence/

daniel-levin··on My Increasing Frustration with Clojure
Do you have any experience with attempting to fix these bugs and then submitting patches / pull-requests? Yes, the core team should just fix these bugs. But if they're receptive to upstream changes you want made, then that makes this much less of an issue, in my mind. An open source project's openness depends critically on the core team's acceptance of user patches.
daniel-levin··on Mathematicians are chronically lost and confused (2014)
This is also largely a consequence of the fact that most linear algebra courses are computational by nature. They'll ask you to compute lots of things as a means of assessment. Work out this determinant. Find the eigenvalues of that matrix. "Matrices are grids of numbers". Take this matrix and write it in terms of this other basis. I only really perceived the impact of linear transformations being vector-space-structure preserving mappings long after I'd seen their analogues in the form of homomorphisms, homeomorphisms, diffeomorphisms etc. Nobody told us that determinants are just the alternating k-tensor on real k-space (up to a constant factor). At some level, this is because most students taking linear algebra don't have the mathematical maturity to stomach a course in finite dimensional vector spaces. I was indignant when I found out that a matrix was not just a grid of numbers, but rather a manifestation of a linear transformation, with respect to a particular basis.

I only really started to understand linear algebra when I was forced to in a differential geometry class. The opening chapters were a review intended to fix my university's notoriously broken linear algebra training. As I said, it comes with the territory. You can't design a course based on Halmos' FDVS and expect students coming in, that is, students who've scraped through calculus 1, to manage. So, the recipe book / cookbook style abounds. Granted, there were inklings of mathematics in my linear algebra course. I don't think anyone really appreciated it however. It's hard to grok "vector space over a field" when you've never been introduced to the abstract concept of a field.

When my second year stats lecturer told me that a determinant of a 2x2 matrix was an area, I almost didn't believe him.

Fun exercise I was told about just the other day. Every invertible matrix with integer coefficients has determinant +-1. I would never have known how to solve that after my linear algebra course.

daniel-levin··on Summary of the AWS Service Event in the Sydney Region
>> The specific signature of this weekend’s utility power failure resulted in an unusually long voltage sag (rather than a complete outage)

It is false to assume that the state of the electrical supply is either on or off. This may come as a surprise, but not to me. In 2008, Eskom (South Africa's electricity suppliers) experienced similar faults. The mains supply voltage is 220v here. At one point, some devices started to fail in my house, and others, such as lights, continued to work, but significantly dimmer. We measured 180v at the plugs. There were similar outages in my area last year, where an outright cut-off was preceded by voltage drops. This outage is interesting because it is an example of a bug owing to false assumptions!

There have also been incidences where certain cables have been stolen [1] and that has caused the opposite: voltage spikes.

[1] I couldn't tell you which, or what kind, but I remember it has something to do with "the neutral"

daniel-levin··on Mentoring in Gaza's first hackathon
It's a special case of a more general (Israeli) bullshit detection technique. They'll ask something unexpected, but reasonable enough that an honest person would be able to say the answer immediately. The idea is that you bait a person presenting false information into revealing that they are lying. Security will ask a sequence of inane questions that a truthful person should be able to answer immediately. If a person being questioned grows shifty, nervous-looking, starts sweating, stops making eye-contact, or shows any other sign of illegitimacy, then the questioning will continue until (il)legitimacy is established. It is not a flawless method (see end of comment) but it usually works. It is virtually impossible to nail every single aspect of a BS story. If you're 100% legitimate, then you'll probably have no problems recalling things like your grandfather's name or the synagogue you were Bar-Mitzvah'd at. I'm a pale South African Jew - I was asked that.

Example:

Security: Are you a member of a Hebrew congregation?

Person: Yes, such and such a synagogue

Security: Who is the Rabbi there?

A legit person might say "Oh it's Rabbi so-and-so", but if a person hesitates, and has to think, and blurts out an answer like "Rabbi Cohen" then it is less likely they are being forthcoming.

In some sense, this is a very rough mental-Bayesian process of probability updating. A person arrives at the border / El-Al check-in. Security assigns some prior probability p_0 that a person should be allowed access, and via a string of questions, amongst other techniques, a posterior probability p_n that that person should be on that flight / in Israel is established.

daniel-levin··on LinkedIn called me a white supremacist because I happen to share a name with one
How did this "Connections in the news" feature use a person's name and surname to uniquely identify them? This is appallingly asinine, as this example indicates. My name is as generic as they come, and so this is a risk for me. I wonder if LinkedIn were to group its members by name and count them, how many people (excluding those not on LinkedIn) would actually be uniquely determined by a name/surname combo? A quick search for "William Johnson" yields 7,476 results. Why didn't LinkedIn even ask this guy to confirm if he was indeed that William Johnson in the news? What an absolute fuck-up.
daniel-levin··on We Only Hire the Best
"We Only Hire the Best" doesn't have to have any truth to it to be of use to companies. Their purpose in hiring is to extract value from candidates. Convincing people that they'd be amongst the best is all you have to do. The rhetoric comes from existing employees, who may be rationalising their decision to work there. It feels good to be amongst "the best" - I want to be amongst the best! I am sure I'm not the only one with such aspirations. If being 'the best' means over-fitting to the requirements of a company, then the most successful (viz. "best") candidates will optimise for what that company wants. It means by the time they arrive at work they're already largely conditioned into behaving as their new company would like them to.

Yes, "the best" is a transparent lie. It doesn't matter though, because it serves the interests of companies who espouse it. DHH is calling a spade a spade here - but I'd hazard that the vast majority of the HN crowd already know.

Also, globally, there are lot of extraordinarily shit software people out there. If we define quality by "gets things done and doesn't break things and act in a crappy and deleterious manner", then it is not difficult for "the best" to mean the upper 60% of software people. It is completely reasonable to assume that the companies with this mantra do indeed hire from the top 60%, if only because of how many rubbish people there are.

daniel-levin··on Nigerians Dominate Scrabble Tournaments Using Five-Letter Word Strategy
That last sentence is the real piece of news here - the absolute core of the issue: Nigerians have been doing extremely well at Scrabble by applying non-greedy strategies. It seems obvious in retrospect that a game like Scrabble is not played optimally by making greedy choices.
daniel-levin··on Algebrite, a computer algebra system in JavaScript
There is also a comprehensive mathematical library for JS called math.js [1]. It has no dependencies, supports powerful symbolic computation, as well as many mathematical functions. It implements a useful subset of what one expects a CAS to be able to do.

[1] http://mathjs.org/

daniel-levin··on Introduction to Autonomous Robots
Look under the 'Releases' tab. There you'll find different versions of the book, as pdfs
daniel-levin··on Airport security in America discovered more than seven guns per day in 2015
>> Last year, undercover TSA agents managed to smuggle concealed guns and bombs past security 96% of the time

The system for gun/bomb detection is only as good as the agents responsible for it. For example, I saw my friend accidentally sneak a knife onto an plane two years ago. The metal detector flagged him, and he confidently told the official present: "Oh, it's my belt!" and after taking it off he walked through, with no further probing. He literally forgot about his EDC knife and wound up with it on the flight. It must be noted that this was in South Africa, but having travelled to both the USA and Europe, I know it could have happened there too.

The current system is not robust to human error, and this is its fundamental flaw. Con artists and psychologists know how to systematically induce human error [1, 2]. It is conceivable that malicious actors (or TSA people pretending to be) can do exactly that and reliably subvert a human detection system. As an aside, it would be interesting to see TSA people try sneak weapons onto an El-Al flight [see 3, 4, 5 for why]. A humorous anecdote: once when returning from Israel, I had my bag full of dirty clothes thoroughly man-handled by an irate woman from El-Al security. I had two books inside, each with a metal inset in the spine. As soon as this was found out, I went from being treated like a terrorist to a non-threat in a few seconds. It was remarkably efficient.

[1] https://en.wikipedia.org/wiki/Confidence_trick

[2] https://en.wikipedia.org/wiki/Cognitive_bias

[3] http://www.wsj.com/articles/SB1001458258397595640

[4] http://edition.cnn.com/2010/OPINION/01/11/yeffet.air.securit...

[5] http://www.tabletmag.com/the-roll/102229/the-gatekeepers

daniel-levin··on The NSA’s machine learning algorithm may be killing thousands of innocent people
Israel allegedly identifies homosexual Palestinians based on mass surveillance data and exploits them for it [1, 2]

[1] http://www.haaretz.com/opinion/.premium-1.617280

[2] http://www.vice.com/en_uk/read/gay-palestinians-are-being-bl...

daniel-levin··on I no longer understand my PhD dissertation
It also supplies the degree holder with a social signal which says: I can buy into the establishment. I say this with my newly minted BSc. in hand. In the process of obtaining it I realised that at a minimum, all you have to do to get a degree is satisfy the course requirements. I took some shitty courses that I knew were largely wastes of time [0]. Doing them anyway equips me with proof (degree) that I can submit to a system I disagree with if I have to. This excessively cynical attitude is the product of being a cog in a massive degree making machine whose graduates are on average, I'd say, mediocre [1].

[0] I'm looking at you, three years of 'numerical methods', which reduced to memorising algorithms to perform by hand.

[1] I count myself amongst the absolutely useless 'applied mathematicians' from my class.

daniel-levin··on I no longer understand my PhD dissertation
I disagree. A mathematical result doesn't have to have direct application to the real world for it to be useful. Drawing analogies between the real world and mathematical concepts is very powerful. I have a good example:

Number theorists (amongst others) are seemingly obsessed with bounding things. There are entire books written about obtaining and then refining bounds - which appear to be nothing more than inequalities. There is great real-world value to be derived from seeing 'inequalities' as tools to leverage. Brian Kernighan once commented that controlling software complexity is the essence of programming [0]. I believe similar thinking applies to other aspects of software engineering, and product and business development. If you can take a hard problem, and bound its complexity, then you can say "the problem is no more complex than this". This is very useful. The chief value proposition of many SaaS businesses is the trivialisation of the upper bounds of complexity of hard problems. For instance, for many developers, Heroku makes the complexity of deployment very low.

[0] http://quotes.cat-v.org/programming/

daniel-levin··on HN is in the same cluster as 2ch, not Techcrunch, on Twitter
This comment got me thinking: in some applications, Euclidean distance between feature vectors acts as a good proxy for adjacency/similarity. For such applications, an isometry from R^n to R^2 or R^3 should in principle preserve the meaning of adjacency. A quick Google yields [0, 1] a technique for quasi-isometric, and isometric dimensionality reduction. This should mitigate artefacts of adjacency, or non-adjacency, as it were. In other words, you might be able to actually pull off good 2D projections of high dimensional data and still see meaningful relationships.

[0] https://en.wikipedia.org/wiki/Isomap

[1] https://www.aaai.org/Papers/AAAI/2007/AAAI07-083.pdf

daniel-levin··on Diesel: A Safe, Extensible ORM and Query Builder for Rust
>> it nails the database schema into your Rust code

On the contrary, the purpose of an ORM is to let your code be a schema for your database. This is my personal use case for an ORM; I want persistence but am not overly concerned with the database. There are plenty of use cases [1] where a schema update from outside is unlikely or impossible. In these cases, there is a very low cost for (by way of an ORM) tightly coupling your code to your schema.

Also, an ORM lets somebody else worry about sanitisation, and database specific-code. It can abstract away the choice of database, another very valuable feature. I think that the example you quote is actually a poor demonstration of the value of an ORM. The other ones on the linked page are far better :)

[1] A program running on only one machine, like an Android app or a music player on Linux desktops etc

daniel-levin··on Dear GitHub
I had the opposite experience. I am on the free student plan for private repos. It has to be renewed annually. It wasn't clear to my how to do so. I asked, and Scott from Github support contacted me in under a minute and sorted it out. I was very impressed.
daniel-levin··on Inside Graduate Admissions
Or better, because it is possible that the current process selects adversely.
daniel-levin··on What is the Birch and Swinnerton-Dyer conjecture?
I think understanding that sentence reduces to parsing jargon. I'll provide an explanation I hope isn't in any way condescending.

The main activity of research mathematicians is theorem proving. That is, turning conjectures into theorems. In the jargon, proven theorems (and equations, bounds, counterexamples etc.) are often called 'results'. Essentially, the author is saying that with very few constructs and tools, number theorists have been able to pose a conjecture that is comparatively simple to state and understand, but is frustratingly as yet unproven, in spite of decades of effort by many, very good mathematicians. So far, many special cases ('partial results') have been proven, but the highly desired goal that is the proof of the BSD conjecture, in full generality, has not yet been achieved. The consensus is that mathematicians are quite far away from resolving the BSD conjecture, but very strongly believe it is true.

daniel-levin··on Inside Chipotle’s Contamination Crisis
>> The CDC says Chipotle has been very cooperative in the E. coli investigation, but that the company is having trouble telling the agency which batches of ingredients went to which stores at which times. “The system they have is not able to solve the problem we have at hand. It’s not granular enough,” says Ian Williams, chief of the CDC’s outbreak response and prevention branch. He notes that “traceability from the farm to the point of service” should be improved throughout the food industry. In recent years, the agency has been able to find the contaminated ingredients in fewer than half of all multistate outbreaks.

To me this suggests a very simple solution. Legislate that each ingredient parcel must come with an audit trail. Assign to each parcel a reference number - a UUID or hash - that can be used to trace back its entire life and history. The solution seems so obvious that there are probably significant obstacles against doing so that I am not aware of. If such a system is implemented, then the next time a contamination breaks out, the source can be quickly identified and eliminated, then apologies can be made, and business can resume as normal.

>> The spread of norovirus in Simi Valley and Boston was caused by breaches of protocol, Ells says

Eliminating contamination entirely is a highly desirable goal, but outbreaks will likely continue occur regardless of anti-contamination measures. As a result, it makes sense to make it as easy as possible to shut down outbreaks before they become crises.

daniel-levin··on Stockfighter Developer Hub
Hey Guys - I'm a big fan of your work, both with, and before Starfighter. Just a few initial comments:

>> If your use of the system decreases Fun for other players, it is a violation of the Zeroth Rule. If it doesn't, we have no strong objection to it.

>> Illegal market manipulation wait, we're not the SEC -- that's very clearly Fun.

>> [Fun] means what we say it means, and our decisions on it are final.

What constitutes 'fun' seems arbitrary. It might frustrating and very un-Fun to be told "Patrick, Thomas, and Erin say no" because the rules aren't well-defined. For example, I don't think that illegal market manipulation is fun - it's just deleterious - and part of the reason it's illegal in the first place. To what extent are you planning on taking user feedback on what 'fun' is? It's not clear to me whether or not it's 'fun' to craftily infer your internal network topology, for instance. Your game has a global audience, so you have to assume that linguistic/cultural/whatever norms aren't shared by all your players.

Also, the contrast on the code samples is way too low. Please make the text stand out more? I can barely read it.

daniel-levin··on In Chicago, cops try a ‘guardian’ approach armed with new prediction methods
The technology used by the police seems to be nothing more than support for their program of targeted intervention. The system does not only identify potential perpetrators, but also their victims. Using data to identify people most in need of "concrete assistance in the form of social services, job training, childcare" just makes the process of doling out limited resources more efficient.

>> “I think this is state of the art for predictive policing,” Lewin says. >> How will this form of predictive policing be received?

Use of the word "predictive" here is utterly inaccurate because the police are not predicting anything, but rather identifying at-risk individuals. The inferential leap from "people with these n properties have historically been party to gun violence" to "prediction" is enormous. As soon as one mentions "prediction" and police in the same breath, it suggests Minority Report-style impingement on personal freedoms of some kind. The reason I stress this is because such a program might very well work to reduce gun violence, and labelling it as though it were the genesis of a Big Brother is not only disingenuous, but may also harm the program's legitimacy in the eyes of people who have the power to shut it down.

daniel-levin··on Ask HN: Is it possible to start a successful tech non-profit?
Yes, I say so by way of example: Sama Group [1]. They run several non-profit businesses.

>> Established in 2008, Samasource is a non-profit business that connects marginalized women and youth to dignified work via the Internet

>> Launched in 2012, Samahope is the first crowdfunding platform for medical treatments.

>> Samaschool (previously SamaUSA) prepares people for success in the digital economy.

[1] http://samagroup.co/

daniel-levin··on Physics Forests
The main goal of mechanics is finding solutions for important variables of interest, from which every other dynamical variable can be easily computed. In fluid mechanics, the main objective for a given problem is finding a velocity field (once you have this, you're done). Since the NS equations are non-linear partial differential equations, finding exact solutions is impossible in most cases. Some notable non-trivial exceptions exist [1]. Navier-Stokes is extremely successful in describing flows in many real physical situations. It is believed, but has not been experimentally confirmed, that Navier-Stokes successfully describes turbulent flow. Most physical theories have a fairly well known domain in which they are applicable and not applicable (Newtonian physics breaks down at velocities near the speed of light). Currently, we don't even know if solutions to NS always exist, never mind make physical sense [2]. With this in mind, we have to acknowledge the uncertainty of the correctness of NS in describing an arbitrary flow. It is backed by well-grounded theory (parts of the equations can be derived from conservation laws) and works under many different conditions. This comment landed up longer than I expected, but my main point is that the question can we "reliably simulate fluid behavior" for an arbitrary fluid - is largely up in the air [3].

However, we should restrict our attention to flows that we very strongly believe are correctly described by NS. From the original paper:

>> The main problem of our method is the same as the weakness of all machine learning approaches; the learning methods are not capable to extrapolate the model far outside the data observed during training.

The training data are existing numerical simulations of specific fluid flows. The learning algorithm learned fluid flow dynamics from simulations. This is extremely impressive. It also achieves a significant speed up in simulation time - which is also very impressive. However, as the authors say, it does not generalise well. So, in short the answer to your first question is probably "sometimes yes, but in general not really".

edit: I should add that the simulations in the paper are decidedly based on Navier-Stokes.

[1] https://en.wikipedia.org/wiki/Hagen%E2%80%93Poiseuille_flow_...

[2] https://en.wikipedia.org/wiki/Navier%E2%80%93Stokes_existenc...

[3] https://en.wikipedia.org/wiki/Turbulence

daniel-levin··on Blowing the Whistle on the UC Berkeley Mathematics Department
Coward has justifiable grievances with the UCB mathematics department. It must be extraordinarily depressing to work hard at exposition of lower division mathematics to a class of otherwise largely unmotivated students, only to be fired for doing so.

Having said that, I am going to adopt a somewhat contrarian viewpoint. The math department fired Coward for deliberately and repeatedly subverting their requests to conform to departmental standards [1]. It is not surprising that behaving in a fashion that continuously pissed off senior faculty (with the power to fire or initiate the process of firing) got Coward fired.

Coward's student ratings were consistently high. Based on anecdotes, he sounds like an instructor I would love to have (he spontaneously derived a formula!).

However, this does not matter because Coward refused to participate in the system. What I term 'the system' is the set of departmental norms and standards that exist as they do for very good reasons. These reasons might not be understood by all actors.

My understanding of the state of the system is informed by the following: UCB is an institution that trains thousands of students in mathematics annually. They have a large faculty [2]. The numbers of people involved imply that there is tremendous variation amongst students and instructors - in areas such as raw aptitude, experience, language proficiency and motivation. The benefits of systematizing the process of training in a university of Berkeley's size are manifold. The system has to exist the way it does in order to produce large numbers of adequately (and usually only adequately) educated people. The purpose of disallowing faculty from deviating from such standards is to allow the system to function independently of the people involved in it. There are many disadvantages to this approach, such as stifling lecturer creativity and disabling course-level optimisations (like a particular professor's vivid geometric intuition for something abstract).

I could enumerate the reasons the system exists as it does (at length) but do not have space here, so here is one example: Using a standard textbook means that course content is instructor invariant. This makes the level of training robust to shitty lecturers, who necessarily exist in any sufficiently large system. It gives students recourse to a standard reference they know is correct. It decreases the variation in quality of students. This is particularly important for co-requirements. It is a huge problem when course B depends on course A and students do not have a firm grip on course A. This happened to my class: we arrived in applied mathematics 3 with a totally broken knowledge of multivariable calculus.

Essentially, the system exists as it does to provide a lower bound for the quality of training. Some people will be incompatible with it. UCB should probably have been more gentle in their handling of Coward - he was 'suicidally depressed' - but I say this with the benefit of hindsight.

[1] >> On September 22nd, 2013 he wrote in an email "But I do think it that it [sic] is very important that you not deviate too far from the department norms." On November 12th, 2014 he wrote "I hope that, on the basis of our conversation, you can further adjust to the norms of our department."

[2] https://math.berkeley.edu/people/faculty

[3] One might think that mathematics is mathematics, and any reference material on a topic will do. I can tell you from experience that this is false. A complex analysis novitiate trying to sort out what 'holomorphic', 'analytic' and 'complex differentiable' all mean will inevitably run into equivalent but different definitions.

daniel-levin··on Math Mistakes
Agreed. Feynman diagrams are a great example of this phenomenon. They might be 'pictures', but they are still mathematical notation.
daniel-levin··on Math Mistakes
It is interesting to see kids invent their own perfectly adequate, if peculiar, notation. In the first example with the quadrilaterals, the answers were all right. The math is not wrong, just written differently.
daniel-levin··on Nix the Tricks: Math tricks defeat understanding
I agree with the premise that it is destructive for students to merely learn tricks in order to pass classes.

However, the existence of tricks is enormously useful once understanding the underlying mechanism of a particular tool is not the focus of a problem at hand. Abstraction is a fundamental human cognitive faculty. For instance, if a student understands why the cross-multiplication 'trick' works, then they should be free to use it as they please, provided they can actually explain why it works if prompted to do so. The notion that there was a 'right' way to do something (like use common denominators) was stifling and frustrating during my school years. If I can explain and justify the trick - then let me use it. On the other hand, being boxed into doing things the instructor-sanctioned way can lead to equally vacuous understanding: "Teacher says find a common denominator so that's what I'll do even though I don't know why".

Additionally, I will argue that all methods for doing computations with fractions are 'tricks' at some level. After all, they are just theorems on the field of quotients of the integers embedded in the reals. One should not be precluded from using a 'trick' because one of these theorems ('common denominator method good - your trick bad') is more familiar to an instructor. Replacing one 'trick' with what is actually just another does not facilitate understanding.

Of course, this is predicated on actually understanding the tool in the first place.

I take an opposite viewpoint from the author(s). Students should be encouraged to develop and use tools. The utility of hiding complexity [0] with tooling is part of the very essence of what it means to be a hacker. It is also very useful in other fields. For example, a physicist solving for the flow of some fluid does not need to think about why a particular fraction trick works. This would draw precious cognitive resources better served elsewhere.

Once a concept is understood, tricks become useful tools. In a field such as building construction, short-cuts are often expensive in the long run because the benefit of making some compromise (e.g. use cheap plaster) is outweighed by its consequences (e.g. need to re-plaster after short amount of time). This mode of thinking does not apply to mathematics.

Tricks are not 'bad' and should not be nixed. They should be embraced and presented as tools of great utility.

[0] Such as how fractions work

edit: spelling

← PreviousPage 3 of 7Next →