The software development final exam: Mathematics - <AUTHOR> http://www.daemonology.net/blog/2012-10-10-software-development-final-exam-part-3.html <comment><USER2> I have immense respect for Dr Collin Percival, and his work. But isn't this getting overboard?

Seriously, calculus? I understand Collin is a computer scientist who is also programmer by co incidence. But this is almost like 'I know it, so you must too'. Most developers are likely to never ever deal with these things at all.

Programming today is so much productivity, discovery and building things. If you face these thing along the way, very well learn them. But to spend the next two years of your life learning calculus which you are likely to never use ever in your career and then only to find you are likely to forget it 2 years down the lane anyway, is a wrong way to be spending your time.

As a programmer what excites me most is a new challenge I've never faced before, And the journey of hard work, discovery, failure and success that follow from such a attempt. I don't mind failing while doing something even if I don't know much about it. I'm likely to learn them by discovering and reading new things, than spending straight 1 years learning all from a book without knowing where they will be ever used up.

The only thing that excites me besides money is the joy of discovering new things, and realizing that I might have solved a real world problem that might be helping someone. Trivia stuff doesn't excite me anymore, I don't see what and how have I changed things around me by merely just knowing more.

Life is really short, I know I have little time to make all the money I want so that I can see the other parts of life. I know coding and math are exciting, but they are among the many things that are exciting in life. Think of it this way, you might have a favorite Ice cream flavor, but unless you taste other flavors how would you ever know if others are better? Or after trying the other flavors you might just discover you have a new favorite flavor!

<comment><USER3> > But isn't this getting overboard?

Naive bayes, with a relevant dataset, does a very fine job of data classification(sentiment analysis, spam detection...). Also, almost everyone who isn't a liberal arts major would have come across Bayes theorem in high school or college.

The question about A/B testing is solving simple linear equations. I believe anyone in 10th grade or above should be able to solve it.

Hashing and MAC are pretty much application level security - they don't require intrinsic knowledge of _how_ ; _what_ and _why_ is something an application developer should know.

That leaves us with that harmonic progression thingy and padding. Padding, I think, is to avoid cryptanalysis(extrapolating from what you know is a part of knowing things:)).

Overall, I won't say he is going overboard with his questions. If anything, to anyone familiar with the topics, his questions are pretty trivial. The only thing under contention is if the topics he considers relevant are actually relevant.

<comment><USER4> But what have they got to do with _software development_.

Zero. Zilch. Nothing. Absolutely sod all.

From the OP's original post, after seeing the questions over the days, his claim:

 _If you can't answer the majority of the questions on these four papers, and you're working or intend to work as a software developer, you should ask yourself why — most likely you're either you're missing something you really should know, or you're lucky enough to be working within a narrow area where your deficit doesn't matter_

So far almost none of the questions on any of the days have been the slightest bit 'important' in software development.

<comment><USER3> > But what have they got to do with software development. Zero. Zilch. > Nothing. Absolutely sod all.

I don't have all of his questions at hand, but from memory:

1\. Basic knowledge of statistics and probability is required for machine learning.

2\. His question about zeroing multi-dimension array is to test if you understand the under lying memory model.

3\. Do we really need to discuss why you should know how cryptographic hashes work?

4\. B-tree has better locality of reference and are de-facto data structure for storage for majority of the cases. Granted, not many people do low level storage, but does that somehow makes it irrelevant to software development?

5\. Mutex, rw-locks etc are building blocks of concurrent programs.

I don't know why you are assuming anything which isn't CRUD web development doesn't have anything to do with software development.

<comment><USER5> So I've covered all of these topics at some point in my career. What I'd love to see is someone like Coursera come out with a "what you should know as a computer scientist/software developer" curriculum...not only for myself, but for those who work for me. I would personally love to go back through a review of the various mathematics which are interesting for computer work, but I'd also LOVE to have a complete curriculum to put promising young developers through. You can teach concepts, but you can't teach attitude/demeanor (at least, not as easily).

I know Coursera has released bits of this sort of coursework, but I don't think they've put it in a guided, ordered curriculum form with preqs.

If someone puts this together, I'll gladly pay for it.

</comment></comment></comment></comment></comment><comment><USER6> Weirdly, I do better on these questions than I did on "Operating Systems", despite having ~15 years of systems programming (including some kernel work) and having barely high school math.

I have never needed to know the specifics of MESI cache coherence (I've benefited from knowing about cache coherence, but not in fine detail), and the problems I've worked on professionally have lent themselves better to commit protocols than to pthreads synchronization.

On the other hand, I do a lot of crypto pentesting, so hashes versus MACs, RSA padding, and basic stat are straightforward.

I don't have Colin's academic background but if I was him I'd be disquieted by the fact that someone like me comes out OK on his math and less well on his arch/OS stuff.

<comment><AUTHOR> I'm not particularly surprised. The mathematics here is generally pretty basic material which other things build on top of -- and as you say, your crypto background helps with those questions.

I don't remember seeing any emails from you... did you submit your answers?

<comment><USER6> Of course not. :)

<comment><USER7> In light of this (and the fact that many others are doing the same), I don't think you can interpret your results as being truly representative of the industry, cpercival, though I do look forward to reading your final summary.

</comment></comment></comment></comment><comment><USER8> What I'm not getting about these is the "don't cheat" bit. First, let's be clear: he's decided the 'rules' for this exam include not researching online or getting other assistance and just answering from memory. "Cheating" is "breaking the rules."

I work in the Real World, where I don't write academic data structures every day, so I don't have this stuff memorized (there's a joke in there that start "I've forgotten more than...") I use APIs to get work done. When I need to be more academic, I search online. The only place anyone's ever required to be so 'academic' about algorithms, data structures, math, etc is in academia. Step out into a job and you have an internet of active developers and useful forums are your disposal. Even if a company hired me to write an 'academic' code library, I'd do the research, write the implementation, and (after sufficient testing, profiling, etc) forget about it.

<comment><USER9> The more you "know" the less you have to go look for, and when you do have to go look for stuff on the Internet (since you're not omniscient) then you'll understand more of the pages you get back as results, and understand them faster since there's less groundwork you need to cover.

An understanding big-O notation is very important if you go searching for sorting algorithms and land on a page that has an overview of sorting functions but listing bogosort as O(n!) and insertion sort as O(n^2), both relatively easy to implement, and this relatively complicated iterative[1] quick sort that's listed as O(n log n). Without other clues someone might just implement the one that looks easiest, and it works fine on their test set of 20 elements, but blows up in the future as their application/site grows and slows to a crawl sorting through millions of rows with an insertion sort.

Or, one of the most recent questions in the Mathematics part of the exam made me snigger because someone I work with was asking what bignum library was easiest to use. Rather than just answering their question (I prefer GMP myself) I asked why; they wanted to do the equivalent of log( x^300 ) and so they needed to compute x^300 first and then take the log of it; floating-point was giving slightly inaccurate answers to what was expected when they took the log of the intermediate result. It was even worse when they tried to do log( x^9125 ) - or whatever exponent is used for daily interest on a 25 year mortgage to account for leap days.

To put it another way. Without the knowledge you end up googling, and implementing, the wrong thing. You may get the right answer/outcome in the end but it may be horribly inefficient. Or, worse, an inaccurate answer/outcome; and you may not even know.

Hammering the insertion sort analogy home; you can profile and optimise an insertion sort all you like, it's still never going to approach the speed of quicksort on mid-large datasets. Huge datasets are another matter, someone stuck with "quicksort is the best" is going to struggle when faced with hundreds of millions of rows and there are things less pessimal than quicksort.

Knowledge of processor architectures, caching and how hash tables are implemented means you know not to use a hash when a simple array will suffice; but I've seen this done plenty of times.

Etc, etc, etc.

Out of the 15 questions so far there's only been two or three that the knowledge of wouldn't have helped me at some point in my development over the last 15 years. Of those that haven't applied to me I can see why they would be important to other fields and other people.

It's one of the major reasons I decided to do a full Maths degree (part-time via correspondence) to complement the Comp Sci degree I got ~15 years ago. It's not just the obvious useful stuff like calculus, group and set theory, graphs and networks, etc. Whilst I thought that the mechanics part of the Maths degree wouldn't be very useful in my job I was surprised at how useful and ubiquitous [non-]homogenous second-order linear differential equations are in modeling things that are relevant to my job (populations -> user base, hysteresis, etc).

No doubt others find huge amounts of other knowledge in other subjects that is directly applicable to IT; psychology, education, design to name but a few.

The right choice of algorithm, and implementation, in a critical part of your code could mean the difference between having 64GB of memory per server or getting by with 16GB. It could mean 100 servers to manage your 1M users, or 10 servers; the difference between 100 servers and 10 servers to manage your 1M users could mean the difference between making a profit and making a loss. These could be the differences between your idea succeeding or disappearing.

1\. Another one of my common things I do at work is replacing quicksort implemented using recursion with an iterative version so that the stack doesn't keep getting blown on large datasets. I like it when people encounter this problem and find out that stacks are finitely sized and not as big as they'd hoped they would be. "But that means..." is a great thing to hear.

<comment><USER10> I am not an expert of this, but:

1\. I think the stack usage of Quicksort is O(log(n)). Which means it is impossible to blow up the stack unless your dataset is bigger than the number of atoms in the universe (but in that case how are you keeping it in memory?)

2\. For example in Java when you call Arrays.sort() this is called:

[http://cr.openjdk.java.net/~alanb/6905046/webrev/src/share/c...](http://cr.openjdk.java.net/~alanb/6905046/webrev/src/share/classes/java/util/DualPivotQuicksort.java.html)

(It apparently uses recursion)

I know quicksort, but not on this level: these guys researched lots of different quicksort implementations and optmized the hell out of it. This implmenetation is way longer to begin with than my naive quicksort implementation would be and is called 'dual pivot quicksort', which I did not hear about until now, despite I know how the traditional quicksort works.

<comment><USER11> 1\. It's average-case versus worst-case again. If you implement quicksort recursively in the obvious way, then when you get unlucky it takes order-n stack space as well as order-n^2 time.

2\. Yup, it recurses, and it looks to me as if it's vulnerable to blowing out the stack in the worst cases. However, it's quite a sophisticated implementation and in practice you're probably only going to see the worst cases if you feed it actively malicious input (see, e.g., <http://www.cs.dartmouth.edu/~doug/mdmspe.pdf> for a paper about doing this).

[EDITED to add: (1) A little discussion of that paper on HN is at <http://news.ycombinator.com/item?id=1723305>. (2) I don't know whether McIlroy's "killer adversary" would actually work against this dual-pivot algorithm without some modification; it depends on how well its heuristic for telling when the pivot is being found works against this algorithm. I'd _guess_ that it does work.]

<comment><USER10> You and barkell are right: I forgot the case of actively malicious input. (other than that worst case cannot practically happen, at least I think, taking a glance on this algorithm's pivot selection.)

This could be solved with randomization though. (Onlyy a few lines of code needs to be changed.)

<comment><USER11> Actually, McIlroy's "killer adversary" will work just fine against typical randomized quicksort implementations! (It effectively constructs the data on the fly, guessing when the sorter is trying to find a pivot.)

In that earlier HN discussion there was an extended (and frankly rather fruitless) debate between me and another poster about whether McIlroy's adversary can rightly be said to break randomized quicksort; that was basically terminological, and what is not in question is that if you take a typical randomized-quicksort implementation and feed it McIlroy's evil comparator, you will get order-n^2 performance.

</comment></comment></comment></comment></comment></comment><comment><USER12> Meh.

These questions are indeed trivial, but obviously biased towards security — your area of expertise. What makes these questions anywhere close to a compelling measure of a developer's mathematical knowledge? Seems pretty presumptuous to me.

<comment><AUTHOR> _These questions are indeed trivial_

Software development doesn't need a huge amount of mathematics -- but some basic calculus, probability, and statistics, are pretty essential. I debated whether to include the cryptography questions in this section, but I wanted to include them somewhere and this was the most natural arrangement. (I started out by writing about 25 questions, then threw 5 of them out to get a more balanced set, then tried to figure out how to organize them.)

<comment><USER13> _Software development doesn't need a huge amount of mathematics -- but some basic calculus, probability, and statistics, are pretty essential._

Sorry, but that's just nonsense. The vast majority of professional software developers could go through an entire career quite happily without any of the above, and no-one would suffer for it.

Moreover, those who do programming work in mathematical or security-related domains probably need a much deeper understanding than the kinds of basic information you're testing for here.

<comment><USER14> You receive a call at 3 AM from someone in the marketing department, asking if there is a problem with the web site because they haven't seen an order in 20 minutes. How do you know if you should get up and investigate or tell them a 20 minute gap at 3 AM is nothing to worry about but call back if it reaches 45 minutes, if you do not know anything about probability and statistics?

You are thinking of including 30 days of toll free phone support with your next product, and have calculated that for this to work out financially you will need less than 1% of your customers to call support. How do you figure out from the record of bug discovery and severity in your testing group's bug tracker if your testing program the probability that your product as it stands is good enough to meet that requirement, and how do you determine how confident you should be of that result, if you do not know anything about probability and statistics?

<comment><USER13> _You receive a call at 3 AM from someone in the marketing department, asking if there is a problem with the web site because they haven't seen an order in 20 minutes._

If you could plausibly go 20 minutes without receiving an order, this isn't a question about statistics, it's a question about PR.

Moreover, the kind of place that doesn't take an order more than every few minutes probably doesn't pay someone to be on call at 3am.

And what does the marketing department have to do with this? How is that I am running a web site that is important enough to wake me at 3am because someone isn't sure if there's a problem, yet we don't have any operations people who know the normal working of the system well enough to make the call on when something is broken?

Like most contrived examples of how "important" statistics is in software development, IME, yours makes no sense when considered in a realistic context.

 _You are thinking of including 30 days of toll free phone support with your next product, and have calculated that for this to work out financially you will need less than 1% of your customers to call support._

Again, in any realistic scenario, that little "to work out financially" probably involves far more complicated considerations than some basic probability distribution, and if this choice is being made by a random programmer based on a simplistic model then you're doing it wrong.

</comment></comment></comment></comment></comment><comment><AUTHOR> Apologies to people still waiting for me to grade their part 1 and part 2 answers -- it's a slower process than I hoped for; and I have a big stack (1065 pages, in fact) of scholarship applications which I need to review tonight, so I won't get any more marking done until tomorrow.

</comment><comment><USER15> Dont't know whether it's good or bad but these questions closely resemble the ones I've been asked during my final exam (Faculty of Mathemathics, Informatics and Mechanics at University of Warsaw).

Of course there were a few nontrivial questions too, like the one abou fixed point theorems.

</comment><comment><USER7> I'm surprised by how many comments on cpercival's exam series boil down to "I'll never use this!" Especially since this is Hacker News, almost ground zero for intellectual self improvement. I can't claim to remember (or have even learned, in some cases) much of this stuff, but decisions made without any knowledge of e.g. calculus, probability, etc. will be very sub-optimal.

<comment><USER16> I'd love to know a few of those decisions that you've to take on a day-to-day basis (even once every month) as a software developer, which needs calculus and probability.

<comment><USER7> Since much of my work involves audio and video, practically everything I do can be thought of in mathematical terms. I'm not explicitly writing a function that says "integrate this" or "differentiate that" (except for the Accumulator and Differentiator plugins in my automation logic system[0]). I do write things, both for fun and profit, that have patterns similar to integration and differentiation.

Related to what I said in another comment[1], there's rarely a binary influence from my (admittedly very limited) mathematical and theoretical background, where a decision would go one way with it and another without. Rather, my understanding of calculus and probability shapes the way I think about and approach problems.

For example, when I see a problem that looks like one of gathering data and accumulating a result, I can recognize that it looks similar to a numeric integral, and apply what I know about integration to solving the problem. Integrals and derivatives are also constantly in my mind when I think about the physics of the world around me.

Probability, especially Bayesian reasoning, also influence the way I perceive and approach problems, both in software and in reality. Consciously thinking about prior expectation combined with prior confidence, even if I'm not thinking in numeric terms, helps me to understand how my mind works, know how to communicate new, unintuitive ideas to others, and form more concrete thoughts about my environment.

In summary, a very rudimentary understanding of calculus and probability theory are necessary to understand and reason about (i.e. predict) the physical world. Moreover, I have a general desire to learn all that I can and integrate it into a web of concepts, which I reason about as a combination of directed and undirected graphs, where concepts are vertices, relations between concepts are undirected edges, and influencing concepts and prerequisite knowledge are directed edges.

[0] <http://www.nitrogenlogic.com/docs/palace/> [1] <https://news.ycombinator.com/item?id=4630006>

</comment></comment></comment><comment><USER17> Well

Some think crypto is essential. Some think it's merely a tool and even though having guidance in using these tools is important, no need to go to a lot of details.

I could point out a lot of mathematics that are important as well and 99% of devs there are oblivious to it.

\- Newton-Raphson method

\- Gaussian elimination

\- Simplex method

\- Z transform

\- Bezier curves

\- Linear algebra in general

\- Galois fields

</comment><comment><USER18> I see very few questions relevant to being able to ship software... interesting for precisely that reason though.

</comment><comment><USER19> :) This is surely just degenerating into parody now. I can't wait for part 4: "Build a Turing Machine from scratch using paper-clips and sticky tape and send it to me for grading. Remember to show your working and no looking it up on Google."

<comment><USER3> Most of the questions are pretty trivial and relevant(may be not to you but that doesn't make it irrelevant or a parody).

<http://news.ycombinator.com/item?id=4635946>

<comment><USER20> It is irrelevant because the real world is composed of CRUD apps in [Java, C#, PHP], and you don't need to know most of the subjects the OP talks in his "tests." It is a parody, because the OP seems to not have worked a common software position, where most time is spent building new UIs for marketing or management, making complex and awkward joins, and making sure changes don't break the spaghetti. It all sounds like academia talk, which is fine (and valuable), but not a real sign of real world programming.

I will say that the tests have been fun to complete, and have helped me fill in the gaps here and there. But as someone who is hiring programmers at this very moment, I would not hire someone with such an approach to programming. This person would (I assume from experience) write complex code all day to show off his/her knowledge of advanced CS topics. Then not document it because the code is just obvious to read. And finally quit after a month because the job is not up to his/her standards or challenging. They would then write a blog post ranting about how programming has turned into a circus or produce a series of "tests" to show off their superior knowledge.

<comment><USER3> > It is irrelevant because the real world is composed of CRUD apps

> but not a real sign of real world programming.

<http://en.wikipedia.org/wiki/No_true_Scotsman>

Real world? As opposed to the OP's world which would be called what? The Matrix?

> It is a parody, because the OP seems to not have worked a common software > position,

And for some reason, only the people who have worked for common software positions can have opinions about software?

A good majority is making CRUD apps, yes, but the spam classification for GMail needs to be written, the binary data packing has to be done for Dropbox, Facebook has to detect faces, that small startup doing a storage engine for MySql has to understand B-tree, automated translation has to understand n-gram modelling, tarsnap has to make sure the data is secure, and so on and on.

> But as someone who is hiring programmers at this very moment, I would not > hire someone with such an approach to programming.

Well, if all you are doing is writing CRUD apps, I don't see how someone like OP is going to be even remotely a good fit. You need a mechanic, you hire a mechanic; you don't go looking for someone who can design a V engine.

<comment><USER20> _Well, if all you are doing is writing CRUD apps, I don't see how someone like OP is going to be even remotely a good fit. You need a mechanic, you hire a mechanic; you don't go looking for someone who can design a V engine._

Funny that you wrote that. I used to be a mechanic, and have modified my share of Porsche 911s. Have a couple that put out above 600 horsepower when measured at the wheels. Almost doubling their factory output. Designed turbocharger systems, intake manifolds (which was difficult due to me not previously knowing much about fluid dynamics , and such), intercoolers, stand alone fuel injection systems, and aerodynamics with composite materials (mostly fiberglass and carbon fiber). If you ask me right now about any of the subjects I would draw a blank. Why? Because I learned how to do something back then for a couple of projects, and then moved on. I did not need to know fluid dynamics for my day job fixing cars. Neither did I need to know much math. Just needed to know how to do the basics that the work required. Which were mostly things learned in the field.

Same with programming. I started out writing programs that solved a problem. Then continued with such an approach until hitting a wall due to lack of mathmatical knowledge. Learned whatever needed and moved on. Do I remmeber most of the math I've had to learn? Not really. I don't use it everyday. If I have to use it again, I'll just go to my reference material and refresh my memory.

 _Well, if all you are doing is writing CRUD apps, I don't see how someone like OP is going to be even remotely a good fit. You need a mechanic, you hire a mechanic; you don't go looking for someone who can design a V engine._

Problem is that all these tests do is promote the idea that real-world programming inside the matrix is about CS. Its not. Not knowing the answers to the tests created by the OP does not make anyone a bad programmer. Hell, the most productive programmer I know used to work with Visual Basic and Excell/Access all day long. His code served thousands of users and he shipped something out every week. When I asked him about big O notation his face drew a blank. But boy could he knock out software in a couple of days.

</comment></comment></comment></comment></comment><comment><USER21> This fun. I'd forgotten how much of this stuff I used to know.

(ps, for Q3: if you know the formula for the Harmonic series then you can answer this one very easily. If you don't, you're probably going to be a bit stuck.)

</comment><comment><USER9> Sent my answers in, reminds me how much I've actively avoided stats (I much prefer pure Maths).

</comment><comment><USER22> I do not see how a web developer or DBA will feel better about themselves and more confident in what they do if they knew the answer to these questions. It isnt even related to the work a Java EE architect does.

<comment><AUTHOR> Since you say web developer... don't you think it's useful for web developers to have some idea how much traffic is needed for A/B testing to produce meaningful results?

<comment><USER23> Once you decide to do A/B-testing you only need to know enough about probability to know that it is very hard to guess the amount of traffic needed. That's when you google to remind yourself how to do the actual calculations.

<comment><USER21> Knowing that you don't know how to correctly calculate the traffic required to reach a specific confidence for an A/B test makes you better than all those people who don't even know that they don't know, and just wing it.

(edit: remove multiple calculates!)</comment></comment></comment></comment>


Blockstack offering $25k to build an encrypted and decentralized P2P messaging app - <AUTHOR> https://www.eventbrite.com/e/signature-bounties-encrypted-decentralized-p2p-messaging-app-registration-41322533811?aff=hn17 <comment> e-sushi Might be me, but US$ 25000 doesn't seem to be enough.</comment>


Microsoft's Cortana Has Predicted Every Elimination Round World Cup Game So Far - <AUTHOR> http://www.businessinsider.in/Microsofts-Cortana-Has-Predicted-Every-Elimination-Round-World-Cup-Game-So-Far/articleshow/37606139.cms

<comment><USER2> Article says Cortana has correctly predicted 6 of 6 knockout games. There have been 8.

And since when has a team going out of the World Cup been tragic?

</comment><comment><USER3> I haven't been paying detailed attention to every game, but I am under the impression the elimination round has been exceptionally predictable.</comment>


FCC requires text-to-911 – but it still depends on local governments - <AUTHOR> http://fcw.com/articles/2014/08/08/911-text-rules.aspx <comment><AUTHOR> The mandate for mobile carriers doesn't mean much if local jurisdictions don't play along.</comment>


Sir, can you help me with this? - <AUTHOR> http://goodmenproject.com/2010/09/29/sir-can-you-help-me-with-this/

<comment><USER2> Although I expect this will be downvoted for being insensitive (unless the reverse psychology of saying so prevents it), I'm going to call bs on this person's experiences. In fact, it sounds more like what a woman planning to "transition" or who has transitioned toward being a man would fantasize things are like. I'm an all-American looking US male, approachable and probably in the 90th percentile with regard to looks, and woman (especially flirtatious, pouty ones) do not ask me for mechanical or technical advice unless they specifically know that I'm a programmer. Neither do men.

The people that DO know me know not to ask for mechanical help or advice because they know that I'm not mechanically inclined. If it were true that people who knew him as a woman started asking him for mechanical help because he became a man, even though they knew he wasn't mechanically inclined, then people who know me would behave the same, regardless of past information, and that doesn't happen.

<comment><USER3> I don't think he is necessarily lying. I can see the computer room story playing out as described. There were five people apparently in the room, all female except for one male. The female with the printer problem saw the "worker" female was busy helping another female, so it was down to a choice between one male and one female working independently at their computers. With that 50/50 choice I can certainly see her gravitating to the male, and possibly for more than one reason.

Next, notice all the other assistance requests came from people he already knew -- co-workers and friends who should all be knowledgeable of the transition. I imagine these people might actually be more inclined to ask for "man job" assistance from their friend who now models being a man in a serious way.

<comment><USER4> Based on the picture at the top of the article, my interpretation is that the putative computer-room woman perceived him as the type of dorky, non-manly man ("herb") who is easily manipulable by feminine wiles.

</comment></comment></comment><comment><USER5> Since the author is new to being a man, here's some advice:

The reason the girl in the computer lab asked you wasn't because she thought you had any exceptional skill, or that none of the women in the lab could help. You were judged the only one supceptible to her charms.

They will either act cute/helpless, sexy/flirty, or they'll issue a challenge ("are you good at this? Do you know how to help with this?").

<comment><USER6> That's pretty much what the author describes, actually.

<comment><USER7> He mentions the flirty instance but seems to be pretty oblivious to the phenomenon described by johngalt:

> _She has every confidence that I, the only male in the room, can solve her > printer problem. (...) I am still the same person inside, with the same > skills and abilities as before, but society's expectations have dramatically > changed based on my new gender._

</comment></comment></comment><comment><USER8> I found this quote quite telling:

 _I size other guys up, thinking, Yeah, I could take him._

I think this helps explain Tom's experience, because that is a very "hollywood" view of how the male psyche works. I'm sure a portion of men think like that, but I'd posit not as many of us as some might expect.

So Tom has this fantasy of what it is like to be a strong, assertive, aggressive male. In my experience, though, such men (my second best friend is like this) often tend to be extremely sensitive and vulnerable. Whereas from my observation some of the sugar-sweet women I know can be whiplash when they need to be.

Which goes to show there is a lot more to this gender lark than meets the eye.

I think there is some expectation bias in Toms experience, he will notice these incidents a lot more. But I don't think this is a general observation of society, for example as a straight 23 year old male I am pretty much the go to guy in my friendship group when you feel a bit lousy and need some sympathy.

I'm sure there is still some bias, held over from the past century (even the past decade), especially in the realm of computers. But I think it is decreasing rapidly over the generations.

</comment><comment><USER9> As interesting as it is that he concludes that he "can't deny that testosterone has changed [his] behavior," I can't help but wonder how much of that personality change was due to his own gender stereotypes, societal expectations and generally just feeling like a man.

I've heard very similar things from pre-op transsexuals who aren't on hormones and are just dressing the part. Dressing like a man makes you feel like a man in much the same way wearing a suit instead of sweatpants reflects on your behavior, poise and how other people interpret you.

<comment><USER10> But then, I think gender stereotypes and social expectations shape the the way all men function.

I'd imagine that in this particular circumstance, without testosterone, being accepted as a man would be far more difficult for the author - because the physical changes wouldn't have occurred.

<comment><USER11> I have the belief, largely anecdotal, that transgendered people tend to adhere to stereotyped gender roles rather more than people in general.

<comment><USER12> Just me speculating here, but it makes sense to me that it would be that way. Men who are born men don't really worry about being "convincing," as they've never doubted it. They may worry about appearing homesexual, but that's still different than worrying about appearing female.

</comment></comment></comment></comment><comment><USER13> Alternate explanation: he was asked to help because she thought he'd be the most willing to assist her, the tantalizing but remote possibility of sex hanging over his head...

</comment><comment><USER14> Reminds me of this article about a scientist that underwent a sex change:

[http://www.washingtonpost.com/wp- dyn/content/article/2006/07...](http://www.washingtonpost.com/wp- dyn/content/article/2006/07/12/AR2006071201883.html)

From the article:

"After he underwent a sex change nine years ago at the age of 42, Barres recalled, another scientist who was unaware of it was heard to say, "Ben Barres gave a great seminar today, but then his work is much better than his sister's.""

</comment><comment><USER15> _I size other guys up, thinking, Yeah, I could take him._

As a lifelong nerdy ectomorph, I have never felt this way.

With me its been more like, "Yeah, I could launch that MVP faster than him."

<comment><USER16> Bubble sort? You just got your ass kicked.</comment></comment>


Show HN: 2048 in ten 60-width lines of python - <AUTHOR> https://gist.github.com/paladin8/821b4f832b4ffa01db9f <comment><AUTHOR> Had a little bet with a coworker as to whether this was possible... would love to see better solutions!

Rules were: implement the game logic only (start with a 4x4 board, given an input direction, update the board) in ten lines of python, where each line is at most 60 characters wide (including indentation).</comment>


Ask HN: The interesting case of the endless DNS propagation - <AUTHOR> One day about a year ago, I've noticed that the site www.aqadvisor.com was offline. (I could see a page saying "this domain is for sale" or something to that effect).
I posted about that on an aquarium hobbyists forum and several users replied they could still access the site, although a few others could not.
So I decided to run a search with DNS propagation checker and it seemed that the A record was propagating so I though "oh they must have just changed their IP".
The problem is, after about a year... it seems it's still "propagating"?
https://www.whatsmydns.net/#A/www.aqadvisor.com
How come that different ISPs can't agree on the value of this A record?
The authoritative ns for this domain is bizprime2.com:

     host -t ns www.aqadvisor.com
    www.aqadvisor.com is an alias for aqadvisor.com.
    aqadvisor.com name server ns1.bizprime2.com.
    aqadvisor.com name server ns2.bizprime2.com.
 and that name server, interestingly, returns the "wrong" IP, meaning that if you use that IP you will see the message "this domain is for sale", not the actual website. However both Google NS and Cloudflare are returning the "right" IP, i.e. the one that actually lets you access the website.
So what's going on here exactly?
This seems really peculiar and I'm curious :-) <comment><USER2> This domain appears to have used these two bizprime servers for almost two years, however they only return a generic IP address which most likely serves that "for sale" page.

Currently, however, the domain does not point to these nameservers but to ns3.aqadvisor.com and ns4.aqadvisor.com instead. DNS glue appears to be present for these two servers, however they themselves do not consider themselves authoritative for the domain (and don't return their own names) but only refer to bizprime again.

The whole DNS setup is somewhat broken and needs fixing by the site owner.

<comment><AUTHOR> Thank you! I didn't realise about the glue servers, now it finally makes sense!</comment></comment>


What it's like to launch and get ignored - <AUTHOR> https://medium.com/p/everyone-you-know-is-hard-of-hearing-dde8118c01e2 <comment><USER2> So true: "When you present a new idea or make a request, everyone is silently asking the same question: Will this go away if I ignore it?"</comment>


Forcing workers to come into the office is a symptom of Yahoo's problems - <AUTHOR> http://www.economist.com/news/leaders/21572767-forcing-workers-come-office-symptom-yahoos-problems-not-solution

<comment><USER2> "A well-managed company's workers want to be productive, and managers trust them to decide how and where they will perform best. If that's not happening, the boss needs to find out why. You can shackle a Yahoo to his desk, but you can't make him feel the buzz."

Amen.

As a former Yahoo who now leads a distributed team that works from home, I feel that this article is spot on. Telecommuting isn't the problem; the problem is poor management that has allowed many employees - both onsite and remote - to remain at the company despite consistently mediocre performance.

That said, fixing the management problem will take time; calling everyone into the office, and keeping them there, is a short term fix to at least make the unproductive employees more visible so that they can be dealt with quickly.</comment>


Ask HN: How can I automate sending a payment to my user's student loan provider? - <AUTHOR> I'm building an app where students can sign up to receive donations towards their student loans.
I'm using Stripe to process the donations, and Plaid to receive information about the user's student loans: https://plaid.com/docs/#liabilities
The last piece of the puzzle is automating the payment to the loan provider.
Can anyone point me in the right direction? <comment><USER2> Here are a couple of options.

[https://www.q2ebanking.com/biller-direct- api/](https://www.q2ebanking.com/biller-direct-api/)

[https://bbvaopenplatform.com/docs/guides%7Capicontent%7Cbill...](https://bbvaopenplatform.com/docs/guides%7Capicontent%7Cbill- payments)

[https://www.marqeta.com/api/docs/W5hOzB0AAH0Cssxk/bill- payme...](https://www.marqeta.com/api/docs/W5hOzB0AAH0Cssxk/bill-payments)

<comment><AUTHOR> Exactly what I was looking for, thanks. You wouldn't happen to know the workflow for sending the funds between Stripe to a lender using one of these apis would you? Specifically, do I need to transfer the funds from Stripe to a bank account first, or can I send the funds directly from Stripe?</comment></comment>


Speeding Up 3D Design - <AUTHOR> https://semiengineering.com/speeding-up-3d-design/ <comment><USER2> The title could be usefully improved by specifying 3D _semiconductor_ design.

It's not really anything to do with any other kind of 3D design (CAD, etc).</comment>


Xtext: An IDE on the cheap - <AUTHOR> http://lambda-the-ultimate.org/node/3994

<comment><USER2> The UI looks slick. Removing duplicated concepts and thus getting stuff for free is cool (like completing editors). Specifying cross-references in the grammar, so they can be used (eg) by the editor to complete (eg) method names, is also very cool; and they claim this is unique in compiler construction (though I've written a grammar parser generator that specifies cross- references myself). The first link suggests generating an editor for free is the killer feature ([http://www.eclipse.org/forums/index.php?t=tree&goto=3701...](http://www.eclipse.org/forums/index.php?t=tree&goto=37014&#page_top))

I'm not sure I'd use it myself (my IDE is vim), and the specification of a grammar remains complex, despite the freebies - that's just the nature of the beast. (their ch. 2 and 3 are worth reading: <http://www.eclipse.org/Xtext/documentation/1_0_0/xtext.html>) It may not be that easy to use, if they can be profitable from professional services on it (but maybe that's not their main revenue). Finally, Z-Bo's comment _Each generation of programmers thinks they can take a grocery clerk and turn them into not only a programmer but a compiler writer._ reminds me of:

 _Old structural linguists get very angry when young structural linguists go on about it. Young structural linguists get deeply excited about it and stay up late at night convinced that they are very close to something of profound importance, and end up becoming old structural linguists before their time, getting very angry with the young ones._ <http://www.otostopcu.org/yazi/h2g2/b2c25.php> (DNA, RatEotU)

I'm still on the young one's side (in attitude), but you've got to limit the scope and power of the tool, so it really is domain specific (and maybe simplifying the domain). It's not that users are dumb, but busy with other stuff.

</comment><comment><USER3> Anyone know how well it handles at least moderately dynamic languages? Say, Ruby?</comment>


Programming the Linux Framebuffer - <AUTHOR> https://cmcenroe.me/2018/01/30/fbclock.html <comment><USER2> We had trouble getting Xorg to reliably work for all customers on a live cd but after noting that the FreeBSD framebuffer always loaded and displayed info OK and could even support different resolutions we wrote a solution that would allow the frame buffer to serve as the x86/Xorg output device: [https://github.com/neosmart/xf86-video- scfb](https://github.com/neosmart/xf86-video-scfb)

Now all X-enabled windowing toolkits can use the rock-solid framebuffer without modifications.

Linux's Xorg distribution already has a framebuffer driver for Xorg (or maybe even two different ones) that ships with it, but we didn't have the same "works everywhere" experience we do with our custom solution (based off of netBSD's previous work), perhaps due to framebuffer bugs on Linux or maybe something else entirely.

The drawback is that the higher the screen resolution (we weren't happy with 800x600 due to LCD scaling blur from horrible on-controller scalers and instead decode edid data from the monitor/adapter to find the native resolution) the slower refreshes to the screen get. At high enough resolutions there is a clear order of 10-100ms delay in updates.

</comment><comment><USER3> I'd say it's better to use DRM, it's more flexible, and you'll end up with framebuffer in the end too. It will allow you to use different pixmap formats, layers, double buffering, etc.

And even if you don't want GUI framework, and want to write your app differently, you can start with cairo and pangocairo or something similar, so that you don't have to care about low level drawing primitives.

<comment><USER4> Doesn't DRM take over the whole display, requiring you then to manage delegating buffers to clients and essentially recreating Wayland?

Also, the whole clock is basically 100 lines of fairly straightforward code in all its glory. How much would a DRM/Pango/Cairo soultion weight?

<comment><USER3> My somewhat equivalent code for working with double-buffered version of display code using DRM is about 200 lines of C. But that includes some abstraction and a lot of error checking/logging.

I'm not sure why you'd need to replicate anything complicated like wayland. You can use DRM API just like you'd use /dev/fb0, it just has more options/features.

As for cairo, obviously it's a heavier solution, but also more featureful, optimized and output neutral.

<comment><USER4> I guess the main question is can you simply overlay stuff on top of Linux console (presumably fbcon) with DRM? That is kinda the key thing here, and the examples I've seen have always just done full-screen stuff.

</comment></comment></comment></comment><comment><USER5> As a non-English speaker, my obvious question is how does the PSF2 format encode fonts with more than 256 glyphs? How would one go about implementing Unicode text rendering? Combine glyphs from multiple 8-bit codepages to get the required characters?

Does the Linux system console support Unicode in the first place?

edit: the linked header file[1] explains that a single PSF2 can actually encode any number of glyphs (not just 256), and additional meta-information after the bitmaps spell out which Unicode code points OR combining character sequences each bitmap corresponds to.

[1]: [https://github.com/legionus/kbd/blob/master/src/psf.h](https://github.com/legionus/kbd/blob/master/src/psf.h)

<comment><USER6> Linux console supports up to 512 glyphs and has only minimal Unicode support.

There are terminal emulators, such as fbterm or kmscon, that use framebuffer and might have better Unicode support.

<comment><USER7> kmscon looks pretty neat.

Anyone have any experience with it?

Was it easy to set up? Does it make for a comfortable environment? Is it relatively easy to write your own applications that can output on top of the frame buffer, e.g. if you are developing a game with OpenGL and want to develop in this environment and to test your game from there as well?

</comment></comment></comment><comment><USER8> On Gentoo the font path is /usr/share/consolefonts/Lat2-Terminus16.psfu.gz

About the latency thing ... having recently switched back from OSX to Gentoo as my laptop's native desktop, Linux is great. Latency on all operations even in X11 are noticeably lower and more pleasant than even typing in iTerm2 on a top end Macbook Pro, and root on ZFS is awesome :)

Primary issues with console are UTF-8 support and irritations around mode setting, font resizing, and video chip (re-)initialization when booting and coming to/from X11, since my laptop (Dell XPS15 9560) has two graphics chips and they don't play perfectly nice together under many Linux kernel configurations. Angband latency, though, is awesome :)

<comment><USER9> Yes, X11 is very quick when you don't have compositing and special-effects layers between the client window and the display. :) For best results use an old-school, 90s style WM.

Enjoy it while it lasts; The Powers That Be (mainly Red Hat) have decided that Wayland and compositing are the future.

</comment></comment><comment><USER10> Small typo:

        --- before      2018-01-31 17:12:13.626560688 -0800
        +++ after       2018-01-31 17:12:17.494580179 -0800
        @@ -1 +1 @@
        -uint32_t buf = mmap(NULL, len, PROT_READ | PROT_WRITE, MAP_SHARED, fb, 0);
        +uint32_t *buf = mmap(NULL, len, PROT_READ | PROT_WRITE, MAP_SHARED, fb, 0);

</comment><comment><USER11> /dev/fb is a legacy interface that shouldn't be used.

<comment><USER12> What's the new interface to the framebuffer? As someone who's actually used /dev/fb (on Android devices), it's pretty damn easy, which makes it a great baseline for getting some graphics on the screen.

<comment><USER11> The first thing, certainly on Android, is to forget the idea that there is one framebuffer ;)

The current interface is DRM (drivers/gpu/drm) and there specifically, atomic modesetting:

[https://lwn.net/Articles/653071/](https://lwn.net/Articles/653071/)

<comment><USER13> Regarding Android I am surprised it even worked, unless OP has rooted their device or was using an old version.

Starting with Android N, Google has been locking down what is possible to do via the NDK and apps can no longer directly read outside their own sandboxed filesystem, so no /dev.

<comment><USER12> This was back in 2011. We modified the init script to stop the zygote process from launching, then used our own C code running as a normal Linux process to work with /dev/fb. So yeah it was rooted and it was an old version, but we were mostly outside of the Android ecosystem entirely.

<comment><USER13> I see, yep that way it surely worked. Thanks for jumping in.

</comment></comment></comment></comment></comment></comment><comment><USER14> nice article this. :) thanks! been wanting to start on this for a little while but didn't have time to research some basics, this sets up just nicely for what i wanted to experiment with!</comment>


Arsenic Contamination in Groundwater in Bangladesh - <AUTHOR> https://www.iwapublishing.com/news/arsenic-contamination-groundwater-bangladesh-environmental-and-social-disaster <comment><AUTHOR> Prompted by listening to this podcast on the possible tools to detect Aresnic cheaply and quickly:

[https://www.bbc.co.uk/programmes/p07m8bwt](https://www.bbc.co.uk/programmes/p07m8bwt)</comment>


An Indian CEO is held for duping US visa authorities - <AUTHOR> https://qz.com/india/1377844/h-1b-visa-fraud-indian-ceo-accused-of-duping-us-immigration/ <comment><USER2> Sounds like a small fry (relatively) case made easy by what seems like really overtly stupid things (like charging the visa applicants - short term money vs long term fraud).

No one seems to be going after infosys, etc despite their business model consisting of essentially the same behavior (sans payments from applicants). We can objectively back up that claim now by simply noting the drop in their h1b applications now that there's actual enforcement of wage requirements using actual market wages for applications.</comment>


Can a Font Make Us Believe Something Is True? - <AUTHOR> http://eyeondesign.aiga.org/can-a-font-make-us-believe-something-is-true/

<comment><USER4> I did an experiment like this in the mid-90s as an undergraduate for a research methods lab assignment.

I showed true and made-up (NPR Wait Wait style) articles to elderly people (over 70, in a care home), printed in one of 3 formats - on newsprint in the font the NY Times uses, on glossy paper in a somewhat 'friendly' font (like comic sans, but less so), and finally in dot matrix, on green-and-white fanfold, all upper case.

There were remarkably few differences in the first two, for either true or false stories, but NEARLY EVERYONE (like, > 85%) rated the computer fanfold printed stories as being true.

One person's reaction has stuck with me to this day: "If it weren't true, the computer would have rejected it!"

<comment><USER5> over 70 years of age or over 70 sample size?

<comment><USER6> I'm gonna go with age because of the qualifier "in a care home"

<comment><USER7> Maybe his thought process was that giving the age twice ("elderly" and then "70" \-- do you need both?) would be redundant, so that the redundant number might not be an age.

<comment><USER5> Indeed. I also consider 70 to be pretty young for a retirement home. Statistically speaking, I assume the vast majority of 70 year olds (95+%) are living independently. So I thought either OP is being redundant and low- balling or giving a sample size. Didn't know.

Btw, through a quick web-search, it appears the average for new residents is mid-80s.

</comment></comment></comment></comment></comment><comment><USER8> Blogspam for a 2012 article: [http://mobile.nytimes.com/blogs/opinionator/2012/08/08/hear-...](http://mobile.nytimes.com/blogs/opinionator/2012/08/08/hear- all-ye-people-hearken-o-earth)

Part 2: [http://mobile.nytimes.com/blogs/opinionator/2012/08/09/hear-...](http://mobile.nytimes.com/blogs/opinionator/2012/08/09/hear- all-ye-people-hearken-o-earth-part-2/?_r=0&referrer=)

<comment><USER9> >Blogspam

This word really isn't appropriate. (Similar to my thoughts here - [https://news.ycombinator.com/item?id=9572254](https://news.ycombinator.com/item?id=9572254) ).

The article here is interesting, approachable and good. Of course, your links add to it, it's the source mentioned in the first paragraph. But we can still read interesting secondary sources.

<comment><USER8> It doesn't add anything significant that's not in the original article. Worse, unlike most blogspam, it doesn't even directly _link_ to the original article.

<comment><USER10> And, bafflingly, it doesn't even give examples of all the fonts.

</comment></comment></comment></comment><comment><USER11> More than 20 years ago, at the company where I was working, I needed to order some sort of expensive thing. Printing a purchase order on the dot matrix printer connected to our accounting computer was a hassle, so I duplicated the form in whatever word processing program we were using on the Apple Mac. It even said Purchase Order at the top.

I faxed it to the vendor, and received a reply: "We will ship the item when we receive a copy of the actual purchase order."

I did nothing but re-print the order in Courier font, and faxed it to them. It was just the ticket. The boss said, "Now you know why we keep that old dot matrix printer on the accounting computer."

</comment><comment><USER12> I liked the article, but I did not like the eye in the header blinking at me as I read it.

<comment><USER13> Same here, luckily I have a very handy bookmarklet (that I probably found here at some point) to delete any DOM element on the page:

        javascript:(function(){document.styleSheets[0].addRule(".highlighted_to_remove","background:red !important");var e=function(e){if(e.keyCode==27){i()}};document.addEventListener("keydown",e);var t=function(e){e.stopPropagation();this.classList.add("highlighted_to_remove");return false};var n=function(e){e.stopPropagation();this.classList.remove("highlighted_to_remove");return false};var r=function(e){this.parentNode.removeChild(this);i();e.preventDefault();e.stopPropagation();return false};var i=function(){var i=0;var s=document;while(s=document.body.getElementsByTagName("*").item(i++)){s.removeEventListener("mouseover",t);s.removeEventListener("mouseout",n);s.removeEventListener("click",r);s.classList.remove("highlighted_to_remove")}document.removeEventListener("keydown",e)};var s=0;var o=document;while(o=document.body.getElementsByTagName("*").item(s++)){o.addEventListener("mouseover",t);o.addEventListener("mouseout",n);o.addEventListener("click",r)}})()

<comment><USER14> Alternatively, right click the element and choose inspect element, then add "display: none" to its css rules.

<comment><USER15> Even easier, right click, inspect element and hit the delete key :)

</comment></comment></comment></comment><comment><USER16> "It's absurd to think that we would be nudged by one typeface over another, into believing something to be true. Something disturbing about it, I'd go so far to say."

It's really not disturbing.

It's obvious that the way something is presented can affect your judgement about things like the motives (or credibility or even identity) of the person saying it, and it's obvious that this will in turn affect whether you believe what you're being told. Things like tone of voice, choice of words, and typeface all have an effect.

Why does it surprise people that the manner in which you communicate can affect how likely people are to believe what you're saying?

<comment><USER17> That's exactly what the article says further down.

<comment><USER16> Not really. It says the findings are fascinating/interesting, and I'm saying they are not.

</comment></comment></comment><comment><USER18> Reminds me of the Higgs boson announcement, which was surprisingly delivered in comic sans:

[http://www.theverge.com/2012/7/4/3136652/cern-scientists- com...](http://www.theverge.com/2012/7/4/3136652/cern-scientists-comic-sans- higgs-boson)

I suppose the context kept the font choice from detracting too much in that case!

</comment><comment><USER19> That blinking eye took away whatever effect the article's font had on me.

<comment><USER20> I put up another window to block the eye so I could read in peace. I don't what they were thinking.

</comment></comment><comment><USER21> "Now, Morris is the first to admit that this wasn't exactly a true scientific experiment, but you know what? That's okay!"

No its not ok because it means that the findings, however fascinating, can't be accepted.

</comment><comment><USER22> What if... this whole article is an experiment in itself in that it is completely false, but has used its fonts and the blinking eye to convince us otherwise.

</comment><comment><USER23> When I see documents nicely type set with LaTeX, I have a prior expectation that it is more likely true.

<comment><USER24> Presumably we believe people wouldn't invest time and energy going to great lengths to present something that isn't true in a well-designed and complex way. Which is stupid really, because the effort someone will put in is almost always related to the reward they get out rather than anything to do with truth - if presenting something false has a high return people will go to great lengths to present it extremely well.

</comment></comment><comment><USER25> I was just thinking somewhat the same thing, making my son familiar with mono- spaced fonts, so when he found some source code, it'll be like home to him when he grows up...

guess it's going to work, to some extent

p/s: he's just 4yo now

<comment><USER26> That's really neat that you want your son to be familiar with monospaced fonts so source code displayed that way will look normal and comfortable. Screenplays too!

So I hope I won't be out of line with a friendly suggestion... :-)

Don't teach him that there is something special about monospaced fonts that lets you write code - that code can _only_ be written in a monospaced font. I honestly think that the majority of programmers believe this, but it just isn't so.

I haven't written any of my code in a monospaced font in over ten years - <USER2> the funny thing is you'd never be able to tell that from reading my code. It reads the same and the formatting looks the same whether you view it in a proportional or monospaced font.

I've run into many programmers who are shocked when they find out that I write code in a proportional font. They ask, "How can you do that? How can it possibly work?"

Rather than go into the details here of how it can possibly work - it's really quite simple and becomes apparent once you try a proportional font - <USER3> that one day your son asks, "Daddy, why do we have to code in monospaced fonts? I like Trebuchet! [Or Comic Sans, or whatever.] Why can't I code in that?"

Do you answer, "Don't be silly, of course you can't do that. We always program in monospaced fonts. You couldn't possibly code in a proportional font, it just doesn't work."

Or, "Well, that's a good question. I've always used monospaced fonts, but I never really thought about it. Why don't you experiment and see how it works out, maybe you can teach me something new!"

Don't misunderstand, these are just examples, I don't mean to put words in your mouth or say what kind of conversation you and your son might have. But I think most programmers today would give the first answer, and that makes me a bit sad.

Whatever your own thoughts about fonts, it is definitely cool that you want to open the doors for your son to be interested in programming!

<comment><USER27> ..and then, by the time he grows up, elastic tabstops become commonplace and people stop using monospaced fonts for code :)

</comment></comment></comment><comment><USER28> Yeah I think this is true: most people would probably (initially) trust a paper using Computer Modern more than one using Times New Roman.

</comment><comment><USER29> I think the takeaway from this is that people associate "odd" fonts with different things (but rarely professionalism), which makes them scary to use in a professional context. Similar to how most of us are "afraid" of wasps because we've had previous bad experiences with them, most people have experienced out of the normal fonts in the wild, but most often in a joke, or on a bad internet site. This previous experience, like the wasp, is taken with us subliminally to the next time we see the font.

Standard fonts exist because if you use them everywhere, users are forced to evaluate the content, and not the font.

Speaking of bad experiences though, I tend to avoid Betteridge's[0] too.

[0] [http://en.wikipedia.org/wiki/Betteridge%27s_law_of_headlines](http://en.wikipedia.org/wiki/Betteridge%27s_law_of_headlines)

<comment><USER20> But this seems to be one of the few exceptions to that law. The headline was a question, and the answer was yes. Well, almost, sorta, kinda.

<comment><USER30> In today's issue: Does Betteridge's law of headlines have exceptions?

</comment></comment></comment><comment><USER31> Did anyone check what font the NYT website used at the time? I'd expect the font most similar to that one to win the survey.

</comment><comment><USER32> Man, I just get angry with people this sloppy. How can you write:

"Now, Morris is the first to admit that this wasn't exactly a true scientific experiment, but you know what? That's okay! Because the findings are still fascinating."

without dying of embarrassment? It is equivalent to:

"Hey, this next bit might not be true but that doesn't matter because it's a good story!"

Its just offensive to so blatantly mention the unreliability of the findings and then go on to dismiss the notion of uncertainty entirely in the remaining text. Why did he even put in that mention?!

<comment><USER33> Just because it's not a true scientific experiment, that does not necessarily mean that it's uncertain.

That said, I'd rather people say this, than that they don't mention any uncertainty at all.

<comment><USER32> Simply saying "this is uncertain information" does not absolve the use of "truth" and "prove" without qualifiers as the text does.

Except for that mention the text does not act like there are any uncertainty, hence the mention is a simple and dishonest cover-your-ass.

</comment></comment></comment><comment><USER34> Comic Sans and/or XKCD-style charts[1][2] certainly are useful if you want to convey the back-of-the-envelope nature of your findings.

[1] [https://www.chrisstucchio.com/blog/2014/why_xkcd_style_graph...](https://www.chrisstucchio.com/blog/2014/why_xkcd_style_graphs_are_important.html) [2] [http://dan.iel.fm/xkcd/](http://dan.iel.fm/xkcd/)

</comment><comment><USER35> Rather than any intrinsic property of the font, I'd ascribe it to the associations we have to it. Has previous things we read in this font been trustworthy?

<comment><USER36> Are there cross-cultural studies of this effect? If you are wrong, trustworthy fonts will have the same set of properties in cultures with similar alphabets. Pair of cultures which rate trustworthiness of fonts differently despite sharing the same language and alphabet could prove you.

<comment><USER37> I believe there is too much homogeneity among cultures using the same fonts (i.e. latin alphabet) that there isn't going to be such a case.

For example, hand-writing-like fonts are used in comics both in US style, european and south american stuff; newspapers and books have been printed with serif fonts since about forever; international brands look the same; MS Office/windows has provide everyone with the same fonts for decades.

</comment></comment></comment><comment><USER38> Baskerville has gorgeous ampersands: [http://www.marsie.com/wp- content/uploads/2009/05/marsie-ampe...](http://www.marsie.com/wp- content/uploads/2009/05/marsie-ampersand.png)

</comment><comment><USER39> It is Comic Sans that can make us believe something is untrue.

</comment><comment><USER40> I wrote a somewhat similar article about an year ago: [http://www.adpushup.com/blog/how-typography-affects- readers/](http://www.adpushup.com/blog/how-typography-affects-readers/)

Quoting from the article: An experiment conducted by Kevin Larson and Rosalind Picard looked at how typography affects mood and performance of the readers. It happened across two studies, where they took three kind of measurements: Relative Subject Duration (RSD), Likert Scale and through a cognitive task which was different for both studies.

There were twenty participants, half of them got the text with poor typography and half got good typography.

In the first study, the participants were given twenty minutes to read the passage, amid which (after 15 minutes) they were interrupted and asked to estimate how long they had been reading for. After the RSD data was recorded, they were asked to fill out the Likert preference questionnaire with 6 statements, where one of the statements was whether they found the text easy to read.

Next, they were given a cognitive task, which for the first study was a Candle problem.

The second study was very similar to the first one, except for the RSD data, they were interrupted 17 minutes into reading, and the cognitive performance task was changed to remote associates test.

Results \- Participants with good typography underestimated their time by 3 minutes 18 seconds in the first study and by 5 minutes and 21 seconds in the second study. This shows that when a passage is well structured, the readers are more engrossed in the text. \- With the Likert scale questionnaire in the first study, the results were not reliable. But in the second study, some scores were in favor of good typography. \- For the Candle problem, out of the 10 participants who were shown good typography, 4 successfully completed the task, while 0 participants completed the task in the other group. \- In the Remote associates task, the results were not statistically significant or reliable with the good typography group succeeding on 52% of the task at an average speed of 6395ms, and the poor typography group succeeding at 48% of the task at an average speed of 6715ms.

Even though the result was not reliable enough in the second study, the good typography group did perform better. This can be attributed to the fact that they were in a better mood before starting the task. Hence, they were better at problem solving.

</comment><comment><USER41> It would be fascinating if they could release the anonymized raw data though. I'm curious about the vague statement "people are much more likely to believe something written in Baskerville than any of the other fonts." For example, I want to know the sample size and the significance level at which the conclusion is obtained.

</comment><comment><USER42> "Quidquid latine dictum, altum videtur"

I'm heavily biased toward anything published as Latex PhD template instance.

</comment><comment><USER43> This is new -- a blog where you can't read below the fold by any known method. Arrow keys? Nope. PageDn? Nope. Scroll wheel? Nope. Scroll bar? Disabled.

[Chrome 43, Win7]

</comment><comment><USER44> There was a Letter of Note, some famous director talked about setting documents in Georgia because it made them look more professional.

</comment><comment><USER45> I tend to assume any blog about design/typography with article text in a font larger than 15-20px is written by a clueless newbie.

</comment><comment><USER46> In short: quidquid latine dictum sit, altum videtur. Serious-looking fonts impart more trust into content.

</comment><comment><USER47> I am mostly certain that I am less trusting of this website because of its font choice.

</comment><comment><USER48> [http://youtube.com/watch?v=VUawhjxLS2I](http://youtube.com/watch?v=VUawhjxLS2I)

</comment><comment> 2Pacalypse- [http://en.wikipedia.org/wiki/Betteridge's_law_of_headlines](http://en.wikipedia.org/wiki/Betteridge's_law_of_headlines)

<comment><USER6> Well played. And hilarious.</comment></comment>


Algorithms and Bias: Q. And A. With Cynthia Dwork - <AUTHOR> http://www.nytimes.com/2015/08/11/upshot/algorithms-and-bias-q-and-a-with-cynthia-dwork.html

<comment><USER2> "Q: Whose responsibility is it to ensure that algorithms or software are not discriminatory?

A: This is better answered by an ethicist. I'm interested in how theoretical computer science and other disciplines can contribute to an understanding of what might be viable options."

Weird response considering the (mild) advocacy for regulation later since regulation presumes target to be regulated... Hard to shake the feeling the response is influenced by her employer.</comment>


StickNFinds - Bluetooth stickers help you find lost stuff - <AUTHOR> http://boingboing.net/2012/12/03/bluetooth-stickers-help-you-fi.html

<comment><USER3> "Imagine you could Stick a Stick-N-Find Sticker on your Suitcase. When all the suitcases start coming out on the belt, you can sit down and wait. Once your Suitcase is within Range, your phone will Alert you, you can get up, and take your suitcase."

All I can imagine is the fine that the TSA slap on me when they realise my bag has been on transmit the whole flight...

</comment><comment><USER4> I want one that's not tied to the phone since my phone is what I usually need to find or gets left behind outside. So I want a small keychain-able device that alerts or vibrates when my stick-on device, eg. phone is > some distance away.

EDIT: Just read the updates, it has it, nice!

We have added a new app feature: Reverse Virtual Leash: You put a Sticker on your keys etc, if you forget your phone behind, the sticker on keys will buz. You have to have the SticNFind app runnig on the backround for the reverse Virtual leash to work. This will work on both iPhone and Android. But remember, you must have the app running on the background, which usually, if you launch an app, is stays on the background unless you close it.

</comment><comment><USER5> I've tried to attack this problem several times with various friends, because I am a chronic loser (of things, haha). This is a great idea. I wish I'd thought of it. Good luck to these guys. :D

</comment><comment><USER4> direct link (boingboing doesn't provide any extra info): <http://www.indiegogo.com/sticknfind>

</comment><comment><USER6> I'd like to see an even simpler solution to this problem, to better target the aging market. Rather than an App and 'radar', have a base unit and give the pad a noise / ringtone. Many portable handset phones have this solution - <USER2> a button on the base and the handset under the couch cushion beeps.

The central paradox of losing your glasses is that if you need glasses you can't see well enough to find them.

<comment><USER7> Devices like that have existed for some time now: [http://www.amazon.com/Smart-Find-Remote-Control- Locator/dp/B...](http://www.amazon.com/Smart-Find-Remote-Control- Locator/dp/B0000X0YTO/ref=cm_cr_pr_product_top)

I think that there is definitely a market for both products. I can't imagine some of my ageing relatives wanting to fire up an app to find their keys (they don't own smartphones anyway), but for my use I'd like the additional features that this solution provides.

Perhaps a StickNFind base station could be built at a later stage.

<comment><USER6> Exactly the sort of response I was hoping for - the "here it is" solution!

</comment></comment></comment><comment><USER8> I wonder if this could be used to track objects in a room as they move about, perhaps providing better resolution than GPS? Also, I would like to point out that one of the items on his list was a `cat`.

<comment><USER7> As he says in the video, they can't locate the position but can approximate distance from signal strength measurements.

To get location information would require one of the following: 1) An array of antennas pointing in different directions, this is certainly possible, but not using the single built in antenna in a smartphone.

2) The device to know its own location and to transmit this to the phone. This would only be as accurate as GPS and would use significantly more power.

Using signal strength to approximate distance is reasonable, but the location of the sensor, nearby objects and the design of the phone's antenna will all affect the measurements.

</comment></comment><comment><USER9> I'd stick one on my phone!

Wait...</comment>


Making money takes practice like playing the piano takes practice - <AUTHOR> http://37signals.com/svn/posts/1985-making-money-takes-practice-like-playing-the-piano-takes-practice

<comment><USER2> Making money definitely doesn't take the same amount of practice as piano playing. You won't find a single world-class piano player who started playing when he was 20 years old. But you will find many successful entrepreneurs that started to get interest in making money in their twenties or even later. The main reason is that luck alone can make you rich, but will never transform you into a good piano player. It may help you in creating a business if money is your primary interest (e.g. Friedrich Flick), but it will even help you more when you do something that's fun (e.g. Steve Jobs).

<comment><USER3> Maybe this is because sitting around practicing a piano for 8 hours a day is acceptable for 6 to 18 year olds but no 20+ year old is able to do this.

<comment><USER4> Almost nobody practices 8 hours a day, even among world class musicians. (Liszt and his cadre were some notable exceptions.) If you believe Gladwell averaging three a day from ages 10-20 is enough to make a prodigy.

</comment></comment></comment><comment><USER5> I asked the same thing on the blog, but would be interested to know what the HN community thinks.

Jason and other speakers at Startup School (like Paul Buchheit for example) talked about how they were already building and selling things to their friends growing up.

I did none of that and I was wondering if that's something that's part of one's character, or if that's something that can come later.

Also, I'm thinking one's environment (parents in particular) might influence you in that direction.

I sometimes feel that I grew up in a well-enough family that I didn't need to work for pocket money, but not entrepreneurial enough that I would be inspired. But it might just be my character then…

<comment><USER6> I had some entrepreneurial drive as a kid (selling origami, candy arbitrage, etc) but got in trouble and unfortunately the "Don't fight the system" message was louder than the entrepreneurial urge. I still worked hard mowing lawns, summer jobs, etc. What was missing was the idea that I could create arbitrarily large amounts of value for it and charge accordingly.

<comment><USER7> Ahh, candy arbitrage. That was a great opportunity when I was a HS freshman. I had resellers and contracts and everything...until the stupid administration called me into the office.

</comment></comment></comment><comment><USER8> I think this is a big part of why so many VC funded "we'll figure out how to make money later" startups fail. The runway encourages a weakness in the DNA of their company. If primitive man had a refrigerator full of food back at the cave, he would never have learned to hunt.

<comment><USER9> As a bootstrapped company I understand what you mean, but that doesn't mean companies like that cannot succeed. ie. Google, Yahoo, Facebook, Digg, etc.

<comment><USER10> According to Zuckerberg, Facebook already had thousands or hundreds of thousands of users when they took funding, and they were funding growth with ad revenue.

<comment><USER11> From what I've heard, they took funding primarily to build the photos app, which ended up being FB's killer feature over other social networking sites at the time.

</comment></comment></comment></comment><comment><USER12> So, on one hand, you wouldn't know how to make money before you gained experiance selling stuff, and the more experiance the better. On the other hand, you should gain experiannce by bootstrapping and putting your money at risk, instead of the investors?

Am I the only one this doesn't make sense to?

<comment><USER13> The whole point of bootstrapping is that you risk almost nothing before you have some positive feedback that suggests you can risk more. You bet a nickel that you can sell something for a dime. Then you bet a dime that you can sell something for a quarter. Repeat until you're Bill Gates and you're betting a football team that you can make a lot of money leasing the Eiffel Tower.

If you lose at any point, you can take comfort in the fact that you haven't lost more than you know how to make.

<comment><USER14> I was never in the hole more than $60 plus my own time. Seriously, some days I think being a computer programmer is too darn easy to be legal. We bang away on a keyboard, whammo, value ex nihilo.</comment></comment></comment>


Show HN: Use VS Code as a reliable note-taking/journaling app - <AUTHOR> https://github.com/aviaryan/VSCodeNotebook <comment><USER2> Thanks for this! It's incredibly easy to use. I'll be demonstrating it to my class and suggesting they use VSCodeNotebook, alongside it's integrated git backup, to keep a centralized repository of notes for our programming classes. Excellent work!</comment>


Positive Space – Have focused conversations with helpful strangers - <AUTHOR> http://www.positivespace.io/

<comment><USER2> Do you have a link to some examples spaces? E.g. of the founders?

<comment><AUTHOR> Here's an example: [https://www.positivespace.io/devin](https://www.positivespace.io/devin)</comment></comment>


Amazon's Position on Unions (YouTube video) - <AUTHOR> https://www.youtube.com/watch?v=uRpwVwFxyk4 <comment><USER2> This series of videos is pretty crummy, Amazon couldn't hire a decent actor (or was too cheap to do so), and proceeds to have their talking heads contradict themselves by saying they are neutral towards unions, but they will "boldy defend their direct relationship with employees" AKA they will fight unionization.

Another clip has "managers" (animated talking heads) calling unions thieves and crooks, followed by a quiz on which manager most closely reflects Amazon's position on unions.

The current worker <==> Amazon relationship is so imbalanced that workers feel they can't use the bathroom during their shift for fear of being fired.

Even the programmers here in Seattle are treated poorly, only "profitable" divisions get a breakroom stocked with cereal, but even those breakrooms were pretty threadbare compared to most other non-tech companies in Seattle.

<comment><USER3> Remember when UPS unionized and UPS management claimed it would make them uncompetitive, especially relative to FedEx? Curious that UPS maintains a much larger and healthier business than FedEx, _especially_ at the low-end where margins are tighter.

I think of that every time I feel the urge to defend Amazon's anti-union stance as a strategy to keep prices low. Now that Amazon's core (non-AWS) business is entering steady state, you need your labor invested in the organization to help streamline process, maintain discipline, and squeeze out profits, and one of the best ways to help accomplish that long-term is organized labor. It's not sufficient, but closer to necessary than American business is inclined to accept.

EDIT: I misremembered. UPS drivers have been unionized since the 1930s. I probably had in mind the 1997 strike where the union succeeded in forcing UPS to significantly increase wages and make a large number of part-time positions full-time.</comment></comment>


Google SearchWiki Vanishes  - <AUTHOR> http://www.techcrunch.com/2008/11/22/google-searchwiki-vanishes/ <comment><USER2> I added about 6 things to search wiki, 3 related to sites that I own, 3 that were generally helpful.

Google can figure out that I own the sites because of google analytics.

When searchwiki disapeared I thought it was because I was flagged for abuse. Apparently not.

<comment><USER2> nope, I wasn't flagged for abuse. Search wiki just reappeared.

</comment></comment><comment><USER3> In a perfect world that would have been a great feature. But I can't see google preventing abuse.

In the past I worked for this company and we all (200+ of us) gave our product a 5 start rating review at download.com.

This rating system is more open to abuse

<comment><USER4> You have to be a logged-in user to rearrange results, and (at least initially/officially) only you see your own rearrangements. As a logged-in user, Google can view your entire activity to judge your trustworthiness before propagating your judgements to others.

Compared to link spam or click spam (on ads or via toolbars), that's _easier_ to evaluate.

</comment></comment><comment><USER5> If Google can prevent SEO abuse and spam I think it's a great idea and would like to see it come back. But that's a huge "if".

<comment><USER6> it is easy to prevent SEO abuse and SPAM: Don't let people's rankings affect the search results for anybody except them.

That isn't to say that they have to ignore all the feedback they get. They can still analyze the feedback and use statistical analysis to help find places where their ranking algorithms are doing poorly. Once they discover problems, they can fix the ranking algorithms.

Eventually, they might be able to spam-proof this feedback system to an extent where they could incorporate it directly into the ranking function. However, this isn't happening now.

As far as I've heard, this is exactly the plan they have.

<comment><USER7> It was already used for ranking. Just take a look at the ranking when viewing everyone's notes.

</comment></comment></comment><comment><USER8> good, the feature was pretty annoying. Although can't say I used it that much, once I figured out that once you logged out it would go back to normal.

\+ I can't help but think that this thing would be ripe for abuse, think SEO but instead of optimizing your page, they'd just use bots to vote up your site, or vote down your competitor

<comment><USER6> A person's SearchWiki input doesn't change the rankings that other people get.

<comment><USER7> Actually it does! Take a look at what you get when viewing everyone's notes for a search query.

<comment><USER6> "The changes you make only affect your own searches."

\-- [http://googleblog.blogspot.com/2008/11/searchwiki-make- searc...](http://googleblog.blogspot.com/2008/11/searchwiki-make-search-your- own.html)

<comment><USER7> They are talking about the main ranking. There is however a secondary link ranking when viewing everyone's notes that is affected.

</comment></comment></comment></comment></comment><comment><USER8> oh, and didn't really vanish, it just moved to <http://www.google.com/experimental/>

<comment><USER4> I don't see it at /experimental/, so it looks like it's been put on ice to work out some kinks that turned up with the big launch.

Some guesses at what might have happened:

() failure to provide an easy way to turn it off drove user satisfaction down; workaround of logging-out is against Google's tracking interests

() some part of the system behaved poorly under full load

() futzing with the natural results distracted people from clicking on ads putting a noticeable dent in revenues

() something about the commenting system brought in embarrassing content (hate speech, etc.) faster than they could control

I suspect a slower rollout to follow after some adjustments.

<comment><USER9> I think the comments are a horrible idea and could really ruin the Google brand. You can use Youtube as a case study. They have an active community and a flagging system but there are still several- _ahem_ \- questionable comments on that site. Attaching use generated content to search results just seems like a bad idea all around. The ability to switch the feature on and off is good but maybe the comments should be left out altogether unless they have a great moderation system- which they do not.</comment></comment></comment>


Microsoft threatens its MVP dev - this is what happens when you base your business on proprietary platform - <AUTHOR> http://www.theregister.co.uk/2007/06/05/microsoft_mvp_threats/ <comment><USER2> My favorite analogy of being a Microsoft developer comes from this article:

<http://www.stepwise.com/Articles/Editorial/wjs_Windows.html>

"Lots of small programmers have a vision that working with Microsoft is like being one of those little toothbrush birds for crocodiles - sure, the crocodile is the one eating the zebras and gazelles, but there's plenty of crumbs left in the cracks between his teeth. The crocodiles don't hurt the birds, as they appreciate clean teeth, and the tiny birds can live very well off the morsels that the 20-foot crocodile deems not worth bothering with, so everybody wins.

The problem with this analogy is toothbrush birds never grow up to be crocodiles - they spend their whole lives just living off the gunk in crocodile's teeth."

</comment><comment><USER3> ... and this level of abuse is earned just by using a standalone tool in officially un-approved-of ways. It seems that using a fully-locked-down platform (e.g. F8, eventually Silverlight/PopFly or Flex) is an invitation to even greater headaches.

I understand the enthusiasm for these things - they promise to make development easier. But given that cell carriers take advantage of their devs, and that game console manufacturers take advantage of their devs, I wonder why more people aren't more worried about 'platform' taxes appearing in the future.

</comment><comment><USER4> That's a MS screw-up, not an argument against using proprietary platforms. God knows how many web site owners Google could sue if it applied its Adsense TOS to the letter, but they know better than doing that.

<comment><USER5> There are other known examples of proprietary platform problems (e.g. the Linux/BitKeeper debacle; abandoned products by Borland, Microsoft and others leaving developers alone in the middle of the desert)

Proprietary software is inherently bad for _practical_ reasons, not just for philosophical/idealistic reasons.

Now, I'm not saying software developers should not make a living (I'm one myself). It's just that we didn't solve the problem of getting income from open source yet (as far as I'm concerned, the service model of Red Hat, IBM and others is irrelevant).

<comment><USER4> It's not _inherently_ bad. There are trade-offs. Yes, proprietary software carries increased legal risks. OTOH, it is often better precisely because there is more incentive to build it than to build OSS.

</comment></comment></comment><comment><USER6> Pretty sure it's not " _the_ MVP," but " _an_ MVP," among thousands. This story is being overhyped to the max.</comment>


The Magic of a Y Combinator Pitch - <AUTHOR> http://www.vcdave.com/2012/03/22/the-magic-of-a-y-combinator-pitch/

<comment><USER2> "If you've never seen a YC pitch, find a way to see one, or a few dozen."

Does anyone have a list of (good) YC pitch decks? Sounds like a great idea to be inspired by what they have in common and what distinguishes them from the rest.

Edit: Found this after some googling, seems like a helpful list. [http://jonbischke.com/2009/11/13/a-dozen-of-the-best- start-u...](http://jonbischke.com/2009/11/13/a-dozen-of-the-best-start-up- pitches-on-the-web/)

<comment><AUTHOR> 500 Startups live streams their demo days: [http://www.livestream.com/500startups/folder?dirId=a83b6efd-...](http://www.livestream.com/500startups/folder?dirId=a83b6efd-12f5-43d3-9e79-985c32b62fb7)

</comment></comment><comment><USER3> BTW - if you are thinking about the section of a traditional VC deck, you get some info here : www.wisary.com VCDave actually funded my previous Company ;-)

</comment><comment><USER3> Great story + passion = great pitch, no matter how many slides you have...

</comment><comment><USER4> Its good advice. Does anyone from a previous YC round have any to share?</comment>


Zzuf – Multi-purpose Fuzzer - <AUTHOR> http://caca.zoy.org/wiki/zzuf <comment><USER2> Very useful and easy to use. It can uncover really weird bugs in your parsing code, the kind you don't believe is possible :)</comment>


Why Are Electric Vehicle Sales Low? Psychology Provides Clues - <AUTHOR> https://www.scientificamerican.com/article/why-are-electric-vehicle-sales-low-psychology-provides-clues/ <comment><USER2> I cannot disagree more. As someone who has dreamed of, and even build electric cars when I was younger, most people love the idea. However the way we use cars, and how electric cars must be uaed, is not compatible for most people. I drive a lot, and do not have time to seek out charging stations, wait for charge, etc.

For someone who takes short trips, never leaves the city, and has no friends in the suburbs, they are amazing. But road trips are more proof-of-concept than enjoyable experinces. ICE are still superior for energy density, aka range.

Add to that the myth of 'less complexity' that I hear parroted and its a no- deal. Modern evs have differentials, active braking, huge cooling systems, extra heating systems for the cooling systems, extra motors for ac, power steering, etc. They are as complex, if not moreso, than any ICE car, before I even bring electronics into the picture.

EVs are cool as hell. They are just not practical for many, if not most americans yet. Our country is just too large. Very few people, even naysayers like myself, harbor some need for pumping stinky dino juice into a burnig chamber to get coffee every morning. Its mostly practical, even if it looks a bit backward from a distance, much like americans.</comment>


Reasons to pick Amazon AWS over Rackspace and dedicated hosting - <AUTHOR> http://amix.dk/blog/post/19676

<comment><AUTHOR> A previous related discussion cited in the article: A Short Rant About Hosting <http://news.ycombinator.com/item?id=2926825></comment>


SpockFS – An HTTP-based network filesystem - <AUTHOR> https://github.com/unbit/spockfs

<comment><USER2> As a totally honest question, what about WebDAV is so bad that you'll never touch it and instead wen this route?

<comment><AUTHOR> Seeing it from the perspective of a network filesystem (WebDAV by itself is a lot more, albeit afaik has never been used seriously as an authoring tool) it is a bit over-engineered, but the real problem (expecially when dealing with CardDAV and CalDAV) is the clients/servers inter-operation, as it looks like no-one is able to respect the RFCs (check the amount of hacks the radicale project or davvy needed to make OSX clients happy, or the differences between lightning, korganizer and so on). So the reason is that my patience ended :)

</comment></comment><comment><USER3> I really like that it gets along without XML. I don't like that it ends with a lot of new methods and headers.

Unrelated: Have you ever looked into the 9P protocol? I'd wonder if one can tunnel that through http, too.

<comment><AUTHOR> POSIX has lot of methods, i did not found a more HTTP-compliant way to deal with it. If you have ideas feel free to expose them, i would be really happy to simplify the specs.

Regarding 9P, SpockFS is a fork of the 9spock project (unfortunately my company still did not released the sources, albeit the github repository is opened), and personally i think 9p is the currently best protocol available for sharing filesystems. Unfortunately the linux client is a bit weak as it does not manage disconnections/reconnections (once you lose the connection with the server you have to remount it)

</comment></comment><comment><USER4> Looks like fun. Back when "object stores" were all the rage this kind of layer was embedded in the network switch. My favorite flavor of that is one where you do erasure codes across a collection of services resulting in storage systems that look like more generic network traffic. Of course these days you would say "Why do I keep getting these weird mime encoded 512 byte blocks posted on my timeline Facebook?"

</comment><comment><USER5> XML used to be the in thing; now it seems to be HTTP. Will we look back in 5 years time and despise that too?

<comment><USER6> for the record, I've always hated XML.

<comment><USER7> I hated XML when it was on vinyl.</comment></comment></comment>


Cloudflare nearly killed us last night - <AUTHOR> https://www.indiehackers.com/JohnFiles/post/23eab453d8 <comment><USER2> I just tried uploading the file ([https://anonymousfiles.io/T6I22kgQ/](https://anonymousfiles.io/T6I22kgQ/)) to IO anonymousfiles, and everything is fine now. Even faster than before. Hopefully your cloud is getting better this minute and so on.</comment>


Ask HN: What should a recent graduate optimize for? - <AUTHOR> Here is my dilemma: I have 2 great options: 1. Work for a lot of money under one of the biggest (most notable) entrepreneurs in my country in a product I don't believe much in. 2. Keep my job in the AI startup I work for, with a little vesting and a modest salary, with bosses I like and the chance to grow and eventually lead a team. I ask this because I just graduated of CS, after working in THE hottest startup in my country directly for the CEO, cofounded a quick to die startup that got big and suddenly went down and give international tech talks. <comment><USER2> 1) If you have little/no debt, just graduated (you are 22 years old approximately) and have no kids: you don't need tons of cash in the short- term.

2) Working on a product you don't believe in will suck

3) You don't get rich with a big salary. You get rich with startup equity (and other assets that appreciate over time such as real estate). However, you probably know that startup equity involves risk. A big salary, however, can give you the possibility of doing angel investing (start by backing AngelList syndicates).

4) If you are seriously considering ever starting another startup again (even in the long future), you will have a hard time getting used to the startup life after getting out of the BigCo. Sam Altman elaborated on this on his latest post, arguing that YC founders that came from senior roles at Google and Facebook had a really hard time.

Assuming that you would also learn valuable technical skills at the BigCo, I think it all reduces to this question: Do you want to take the high risk of becoming rich via startup equity, or not?</comment>


Neural Networks - A Systematic Introduction  - <AUTHOR> http://page.mi.fu-berlin.de/rojas/neural/ <comment><USER2> Looks like a comprehensive volume covering the state of art in late 90s.

That's also about the time I stopped following the domain. So I wonder if there have been any advances in terms of new models and topologies since then?

<comment><USER3> I'm not any sort of expert on the neural network literature but these were some papers in the last three years that caught my eye, Yann LeCun also does work on neural nets, but I haven't been all that impressed by his results. One of the main advances has been ways of developing 'deep' architectures with multiple layers rather than the traditional shallow neural networks (arguably the SVM, for instance, is actually a very cleverly trained single layer neural network)

Here's a Geoffrey Hinton paper on training deep belief networks: <http://www.cs.toronto.edu/~hinton/absps/ncfast.pdf>

Here's some stuff from Andrew Ng's group: This paper shows how his deep belief network was able to 'learn' in an unsupervised manner certain plausible image primitives [http://robotics.stanford.edu/~ang/papers/nips07-sparsedeepbe...](http://robotics.stanford.edu/~ang/papers/nips07-sparsedeepbeliefnetworkv2.pdf) This won a best paper award (application paper) and its about fast ways of building a deep belief network: [http://robotics.stanford.edu/~ang/papers/icml09-Convolutiona...](http://robotics.stanford.edu/~ang/papers/icml09-ConvolutionalDeepBeliefNetworks.pdf)

<comment><USER2> Thanks a lot for the references, now I have some reading for tomorrow!</comment></comment></comment>


Free Anonymous Usenet Downloading With Just a Web Browser - <AUTHOR> http://torrentfreak.com/free-anonymous-usenet-downloading-with-just-a-web-browser-120609/ <comment><USER2> first rule of usenet. come on people..</comment>