Hacker Newsnew | comments | show | ask | jobs | submit | login

This blog post by Joel Spolsky makes a case for teaching low-level stuff that I find very compelling.


Someone who hasn't thought about sorting algorithms is likely to implement a "Shlemiel the painter" solution without even realizing that their problem is fundamentally sorting related.


There are applications of job search in both micro and macro (I happen to have written a PhD dissertation involving a micro approach to job search).

The treatment in the book we are discussing is decidedly macro, and looks generally similar to the treatment in a previous Sargent book titled "Recursive Macroeconomic Theory."


Can you point to any evidence to support these opinions/claims? (I don't mean that to be snarky, but rather that I would find it more interesting and compelling)


Only anecdotal evidence. I spent half a decade building Learning Content Systems for the assessment model I describe. But we used it to teach Certificate 3 in Carpentry and other building related trades. It worked VERY well. We won many national awards. But it is my belief that this assessment and learning model could be applied to most subjects. Checkout https://bluedogtraining.com.au/ if you are interested learning more about what we did.


It's very rare for anyone to commission studies like this in the social sciences. Rudolph is a professor at Korea University, and professors do research without extra compensation because it is part of how they get tenure.


Zuckerberg's bio on Wikipedia says that he is the son of a dentist and a psychiatrist. I'm sure there are plenty of Americans with wealthier or more connected families, and none of them have succeeded with their startup the way he has.


I'm sure there are plenty of Americans with wealthier or more connected families

Sure, but only about 5%. The median salary for a dentist and a psychiatrist adds up to $333,000 which is the 95% percentile for household income today. A verrry long way from average.


333k is well above most people in the top 5%. Just $166,200 = top 5%. 250K = Top 1.5%

So, really we are talking about the top 1%.



I've used both Domino and AWS.

AWS isn't hard to use, but Domino is much easier and more streamlined for analytics.

My recollection is also that AWS rounds charges up to the hour, whereas domino does not.

I didn't know spinning up analysis in the cloud could be so easy and frictionless before trying domino.


So, if I start with two devices holding lists, and I place the union of those lists on each device, what is that called?

Do you have a reference for the technical definition of sync that this fails to meet?


> So, if I start with two devices holding lists, and I place the union of those lists on each device, what is that called?

Not enough information. Naive set theory isn't adequate to cover file operations. Files have sizes and dates, but members of sets don't normally have these properties.

File synchronization isn't necessarily a simple and blind union of two sets. Some synchronization operations require that files be deleted, others require that files be restored or provided if absent. Which is true is left to the operator -- he must decide.

Consider this example. Two directory trees, A and B, contain the same number of files, but some of the files have sizes different than the other. Does the synchronization operation copy files from B to A, or A to B? The answer is that the operator must decide.

Rsync, a popular file synchronization utility, can delete files, or not, depending on what options the operator selects. It also much be told which is the source and which the destination.

> Do you have a reference for the technical definition of sync that this fails to meet?


A quote: "File synchronization (or syncing) in computing is the process of ensuring that computer files in two or more locations are updated via certain rules. In one-way file synchronization, also called mirroring, updated files are copied from a 'source' location to one or more 'target' locations, but no files are copied back to the source location. In two-way file synchronization, updated files are copied in both directions, usually with the purpose of keeping the two locations identical to each other."

In the first case, algorithm must be told which is the source and which the destination. The operator must decide. In the second, the algorithm must know how to proceed -- are newer files overwritten, or are older files overwritten? The operator must decide.

Most people don't understand this -- in all synchronization operations, the role of the operator is key to getting any desirable result.

In answer to your question above, the online definition I quoted above doesn't allow for a simple union of two file trees, because there is no such thing -- the algorithm requires additional information, information provided by the operator.

In a two-way synchronization, if the algorithm encounters a file that is (a) not present on both systems, or (b) one copy is larger, or (c) one copy has a newer date, the algorithm cannot proceed unless and until the operator expresses a preference -- establishes the rules.

In short, there is no automatic file synchronization -- all examples require the conscious participation of a decision-maker.

Let's say I have edited some files in a large, complex programming project. The outcome is successful. I want to synchronize two file trees to reflect the successful outcome, but with a minimum of file operations. Therefore I tell the synchronization program to copy newer and/or newly created files from B to A.

Next example. I have edited and changed a complex software project, but the changes are a disaster and I want to recover the original state, but with a minimum of file operations. So I tell the sync program to restore older files from A to B, and delete new files from B not present on A.

Neither of the above operations can proceed to a desirable outcome unless I give the sync program explicit rules.

Conclusion: There is no such thing as a union of file systems that doesn't need to be told how to accomplish that end.


I find it hard to believe you were among the first to use this phrase for social media and/or advertising services.

It seems in fairly widespread use even for that use case.


If you include the value of your time, the library is a more costly option to acquire a book than Amazon for many affluent readers. And most libraries have a small fraction of the books one might want.

The fact that people are choosing an efficient way to get the books they want is hardly evidence of inelastic demand.


Maybe. Maybe not.

I can borrow e-books from my library, nearly as fast as buying them from Amazon.

I can borrow physical books by hitting their site, putting a hold on it, and then next time I'm in town, I pick it up. It's not UPSd to my door, but it's not that big of an investment. (or, more likely, Wife + kids pick it up next time they bring home 40 books from the library. We sometimes have a good couple feed of the holds shelf.)


You're saying that time is valuable. The cost of the book is the dollar price + the time to acquire + the time to read it.

You're saying that the middle cost is significant. That suggests that the latter cost is also significant. Therefore lowering the dollar price of the book has little effect on the total in the above equation.


Grossly misguided equation. The cost of the book is the price + the time to acquire. The benefit of the book is in the enjoyment of reading it -- which implies that readers don't see time spent reading as a "cost", unless you believe they're seeing reading as a benefit and a cost at the same time. Believe it or not, people actually enjoy the process of reading and seeing a work unfold, not just checking a completed book off the reading list.


The cost is the movies, video games, time with family etc that you didn't enjoy because you spent time enjoying the book.

Let's put it another way. When do avid readers start reading a new book? When they finish or get bored of their previous book.


The fact that the price of something is high does not mean the elasticity is low.

Even if we agree that the total cost (including time) of acquiring and reading a book is high, that does not indicate that demand is inelastic.


Since uncountably many problems have unique right answers, I'd guess the cardinality of the set of problems with unique right answers is the same as the cardinality of the set of problems without. :)


Careful there. If you require one to be able to express a problem via some finite string (and via some universally fixed method for encoding problems as strings), then there are only countably many problems.


This, too, requires care. I think that we can all agree that, for each real number x, "is x normal?" is a problem (or at least a question that a mathematician might ask). That's uncountably many problems right there! (The fact that only countably many specific instances of it can be written down is, I think, a different matter.)


The question is, "What do you define as a 'problem'?" You need to answer that before you can make claims like "we can all agree..." and give an example of something that I don't agree is a problem (if you're saying what I think you're saying).


My weak, but (I think) practical, implicit definition of 'problem' was:

> a question that a mathematician might ask

I agree that this is not a very useful definition, by virtue of its extreme and probably excessive inclusiveness, but I think that it's hard to do any better without using words like 'interesting' that themselves need careful definition. (It's fair to argue that my definition in turn requires clarification of the term 'mathematician', but I can weasel my way around that by replacing it with 'person', or else just declaring that anyone interested in trying to ascertain the normality of a number is mathematically minded enough to be called a mathematician.)

By this definition, I think that it is hard to argue with my claim to have produced an uncountable family of problems—simply because, at least classically, to do so you'd have to produce a specific number x about whose normality no mathematician could ever ask. I could then demolish that counterexample by asking you if that particular number x was normal. :-)


You're falling into the interesting number paradox here, regardless of not using the word interesting. You can't make a statement about the cardinality of a set if your definition of that set isn't expressed using mathematics. In other words, you're saying "I'm not going to give a mathematical definition of this thing, but I can nevertheless give a mathematical proof of a mathematical statement about that thing."

For example, why is the set of all questions utterable by humans not a countable set? By that reasoning there are more numbers than questions!


By the same logic "What is the cardinality of the set X" is also a problem, thus the class of problems isn't even a set and doesn't have cardinality!


Though, if we apply your requirement, the set of problems without a unique answer must be countable as well. So, the cardinality of problems with a unique answer is still equal to the cardinality of problems without one.


You're just using the terminology imprecisely is all. (Indeed, two things being countable does not mean they have the same cardinality; finite sets are also countable)


I think it's trivially obvious that both sets are infinite.

There are infinitely many addition problems involving two numbers, and that's a subset of the set of problems that the article claims to be smaller.


I'm not making claims about the truth or falsity of your statement, just critiquing the logic and terminology you're using (the lack of a definition for a "problem," the minor misuse of the term "countable"). Regardless, I really hope you saw the article as something besides a mathematical claim, because it clearly did not pretend to be one.


Indeed. My original comment was meant as a joke, not as a serious mathematical claim.



Guidelines | FAQ | Support | API | Lists | Bookmarklet | DMCA | Y Combinator | Apply | Contact