Can A.I. Be Taught to Explain Itself? - <AUTHOR> https://www.nytimes.com/2017/11/21/magazine/can-ai-be-taught-to-explain-itself.html <comment><USER2> I've not read the article, but I'm highly skeptical, to the point of cynicism, when news dailies like New York Times take the liberty of commenting so much on tech. Have their columnists actually tried doing anything? I did rather follow Jeff Hinton / Andrew No / Yoshua Bengio's tweets to stay updated.</comment>


Your iPhone works for the secret police - <AUTHOR> http://blogs.hbr.org/cs/2013/06/your_iphone_works_for_the_secret_police.html

<comment><USER2> Annoying link-bait title.

Given the iPhone's lack of fully integrated "Google Now" Apple seems notably less likely to be able to provide watchers with structured data that 'knows what you're doing before you do' than, say, an Android phone syncing with Google, or Blackberry phone with RIMM's cloud (in fact, we know RIMM made govt data pipe agreements).

The only mention of "iPhone" in the article is in the headline. Nothing in the article itself singles out Apple.

For today's TLDR crowd, the headline scanning takeaway is "damn, guess I better get any phone that's not an iPhone" when that's not the author's intent at all.

I'd consider this headline actually harmful because it's not the device that's doing anything to you or with your data. It's not Apple, it's not Android, and it's not even Google Now software, no matter how potentially scary that big data insight might be.

It's the corporations, the "all American alliance" he describes, that you sign ToS with, and the senators and representatives we elect to oversee the agencies that oversee them. Put the spotlight where it belongs. Put that in the headline.

<comment><AUTHOR> OK, I'm the article author, and I think that's great feedback. I didn't pick the title; originally it was "Rebuilding the Berlin Wall"… but editors will be editors :)

I was a little annoyed at the arbitrary change, but on the basis of your feedback, went back and asked the editor to change it. It's still not exactly what I wanted, but it does address some elements of what you've written above. The iPhone clickbait is out.

As a writer, honestly, it does get mighty exasperating when this happens. And, fwiw, you guys have all got insight into the messiness of the editorial/content process :)

\-- james

<comment><USER2> Thanks for remaking the sausage.

</comment></comment></comment><comment><USER3> I never thought I'd end up pitching something I worked on in a Hacker News thread, but here it goes anyway:

I actually just finished building an MVP of a product business with a friend that we're launching later today: [https://www.burnerphone.us](https://www.burnerphone.us)

Essentially, we sell these pre-paid disposable cell phone kits that 'expire' after 30 days of usage (and come with unlimited talk and text, nationwide US coverage).

We actually built the thing with security in mind, specifically because of the incredible amount of information that's now gathered not only by phone companies, but by the government as well. Want to make a phone call that won't be personally associated with you, from telephone company phone records? If so -- you really need to use a separate device (a Burner Phone).

Anyhow, sorry for the plug in this thread, but thought it could lead to an interesting converstation.

<comment><USER4> GREAT idea! I ordered 5 of these with my credit card...

<comment><USER5> That made me laugh, I didn't even think of the fact that you needed to use a credit card. I suppose you could get a prepaid card.

</comment></comment></comment><comment><USER6> Comparing what the NSA is currently doing in the USA to what was going on in East Germany is a stretch. I hope we learn more about how the NSA is scaling their operation due to the absurd amount of data they have. In East Germany they had to use lots of people listening to every phone and apartment bugged conversation. That doesn't seem realistic for the NSA. Do they have software that is processing the data looking for keywords or phrases? That seems useless because an actual terrorist probably doesn't say 'bomb' on the phone.

<comment><USER7> "Comparing what the NSA is currently doing in the USA to what was going on in East Germany is a stretch."

Well, let's try this: which agency, the NSA or the Stasi, does the following describe:

* Keeps records of who talks to whom

* Knows personal details of most citizens' lives

* Monitors the personal, business, and political communications of large numbers of citizens

* Operates in secrecy

* Has the cooperation of the nation's industry

* Collects more information that it can possibly process

* Claims to be working to protect the public

No, the NSA is not kidnapping people; that's the CIA's job. The NSA is a signals intelligence service. The Stasi's signals intelligence/surveillance system is what is relevant to conversations about the NSA, and there is nothing wrong or stretched about the comparison. Where the Stasi had informants, the NSA has Facebook. Where the Stasi had wiretaps, the NSA has room 641A.

<comment><USER8> We need to teach more history to the youngsters.

</comment></comment></comment><comment><USER8> This could never happen on Android.</comment>


Apple Bank / iBank - Would you go for it? - <AUTHOR>

With the "new iPhone" / iPhone5 around the corner. We shall probably see NFC and everything. With the $100B in the bank, Apple seems to be a safer place to stash your cash than most "Banks".<p>If Apple would start a bank, would you get an account? <comment><USER2> Presumably an Apple-run bank would protect me from scams by only allowing me to spend my money on Apple-approved products and services?</comment>


Get customers to read your emails - <AUTHOR> http://www.inc.com/geoffrey-james/get-customers-to-read-emails-7-tricks.html

<comment><AUTHOR> This popped up on my 'should read' list. Found it very useful for my startup (I had adopted some of them unknowingly) which is quite in an early stage and when many of our updates and conversations happen over email.</comment>


Amazon: 762 Billion Objects Stored on S3 Cloud - <AUTHOR> http://www.datacenterknowledge.com/archives/2012/01/31/amazon-762-billion-objects-stored-on-s3-cloud/

<comment><USER2> If you're like me and you haven't played with S3 and are wondering what an object is, here's a relevant excerpt from the Wikipedia entry on S3 to add some context:

"S3 stores arbitrary objects (computer files) up to 5 terabytes in size, each accompanied by up to 2 kilobytes of metadata. Objects are organized into buckets (each owned by an Amazon Web Services or AWS account), and identified within each bucket by a unique, user-assigned key. Amazon Machine Images (AMIs) which are modified in the Elastic Compute Cloud (EC2) can be exported to S3 as bundles."

<http://en.wikipedia.org/wiki/Amazon_S3></comment>


Rails 3 beta: First impressions on a new app - <AUTHOR> http://nathanhumbert.com/2010/02/rails-3-beta-first-impressions-on-new.html

<comment><USER2> I don't use Rails but this post looks like it provides close to 0 informational value.</comment>


How VCs Win Deals: Comic Books, Big Meals and Diapers - <AUTHOR> https://www.theinformation.com/articles/how-vcs-win-deals-comic-books-big-meals-and-baked-goods?pu=hackernewshu4jm2&utm_source=hackernews&utm_medium=unlock <comment><AUTHOR> Curious to hear if anyone else has any outlandish VC experiences like the ones shared in our latest story.</comment>


Stop Branching Agile is soccer, not american football - <AUTHOR> http://mikemainguy.blogspot.com/2011/11/stop-branching-agile-is-soccer-not.html

<comment><USER2> It totally depends on how you work. Agile isn't set in stone. That's why it's named Agile.

For some, it's really nice to be able to try out an idea, and if it turns out to be impossible, just trash the branch. The alternative is to have all that mixed in with good code, and then try to undo the mess you've made and hope you don't introduce bugs while doing it.

Sure, there are tools (like unit testing) to help you out if you go that way, but it's still a lot cleaner to just trash a branch.

And some of us get projects that interrupt other projects. It's nice to be able to set that code aside and work on something else for a bit, then come back to it.

And finally... Just because we are branching doesn't mean we aren't sharing that branch. Git makes that really easy, too.

</comment><comment><USER3> People working off of their own branches in complete isolation is probably not a good thing, even if you aren't "agile". Also, non fast-forward merging should only really happen between long-lived branches. Short-lived experimental/feature branches should almost always be brought back to master with a rebase. Otherwise you are cluttering up your git history with unnecessary merges.

In the same vein, rebase should almost always be used when you are doing a `git pull` to sync a branch up with master - e.g. `git pull --rebase origin master`. You can set rebase to be the default pull strategy for newly created branches in your .gitconfig like so:

      [branch]
         autosetuprebase = always

</comment><comment><USER4> This article : utter piffle.</comment>


We only hire the best means we only hire the trendiest (2016) - <AUTHOR> http://danluu.com/programmer-moneyball/ <comment><USER2> Previous discussion: [https://news.ycombinator.com/item?id=11326940](https://news.ycombinator.com/item?id=11326940)

</comment><comment><USER3> So here's the thing... hiring at larger, growing companies often means weeding through a stack of a hundred resumes, for one or two or five roles. Most of those resumes need to go away. The interview process, for competent candidates, is going to cost you at bare minimum a half hour of one person's time for initial screening. A quality interview is going to take a couple of hours each for a few important people - managers and senior/lead tech staff, for engineering jobs. Considering pg's maximum about maker schedules, the hiring process is _very_ disruptive for the productivity of some of your most valuable tech staff.

So you want to get rid of 19 resumes out of 20, without ever interviewing them. And for that, you need heuristics. And those heuristics are, in all likelihood, going to be biased and stupid in some ways.

For example, I will automatically reject any resume that has more than two typos. I consider it evidence of carelessness - I don't care if you can't spell, but I do care if you don't bother to run it past someone else who can for editing.

The danger is that a heuristic - any heuristic - for filtering out resumes will inevitably lead to missing some candidates who would excel in the role. Oh well. I'm not going to waste time interviewing every possible candidate, just hoping to catch that magic person. It's irresponsible.

<comment><USER4> I'm a web developer who has been thinking about engineering hiring and culture a LOT over the last 6 months. I'm confused about employers' desire to cast a wide net, only to filter through applicants thoughtlessly. Instead, why don't engineering teams save time and energy by articulating their specific engineering values, and sharing that information up front? Be honest. Say divisive things. This will allow job-seekers to self-filter. Your goal is not to attract every software engineer. Your goal is to attract the people you are most likely to hire. (Career pages can be fluff, and job descriptions are dry and uninformative beyond a list of technologies.)

I've been working on Key Values ([https://www.keyvalues.io](https://www.keyvalues.io)) for many months now trying to do just this: surface details about actual team members, day-to-day processes, and a team's engineering culture. At least this way, we as engineers can be more informed when deciding where to apply, where we'll devote hours/energy interviewing. Of course engineers might be skeptical or have questions, but at least we have _something_ to respond to.

Ultimately, neither job-seekers nor employers want to waste time and energy interviewing people they aren't culturally aligned w/. Maybe the lesson here is that engineers should seek out the teams that care about what they care about, whether it's mentorship, high quality code, or work/life balance. I know it's controversial (especially here in HN), but is salary really more important than doing work that is exciting/challenging/energizing/stimulating or feeling valued/appreciated/respected/passionate?

<comment><USER5> Applicants do not self-filter. If you've ever read resumes for a job listing that haven't been prescreened, you'll be blown away by how many people refuse to self-filter even for basic fitness for the job. Put out a job listing asking for a college degree, and you'll get applicants who are still in school with their graduation date two years in the future looking for an internship. That's an extreme, but people will apply for jobs they are very much not fit for. Frustrated job seekers will often submit things under the assumption that "the worst they can do is tell me no" (they're not wrong). If someone is receiving unemployment benefits, they may have to apply to X number of jobs every week/month in order to qualify. The incentive of the applicant is to apply to as many jobs as possible and get one.

<comment><USER6> As an applicant, I don't self-filter from positions I think are interesting, because I've gotten several offers from companies after to applying to jobs I wasn't technically qualified for.

Some companies are pretty strict about their qualifications. For some, the qualifications are more like guidelines. But if the position is interesting, I'll take that chance.

<comment><USER7> and for some, they're just nonsensical. Like when you see 5 years min. experience with Swift

</comment></comment></comment></comment></comment><comment><USER8> This was the most depressing part to me: "Another person I know is in a similar situation because his group won't talk to people who aren't already employed."

It's a long story, but both my wife and I have most recently been at places, in a small-medium city, that have had huge turnover in the last several years due to mismanagement (her entire unit, except for her, left twice while she was working with them; we've lost about 30% of our employees in the last few years). She was pressured to resign after returning from her maternity leave because, as far as I can tell, they figured out they could cut her position and offload the work onto others while she was gone. So she's stayed home to raise our child. I haven't lost my position, but every week brings a new clusterfuck of horrors that I'm running out of ways of coping with.

The problem is, now she's wanting to return to work, and has a job offer, but it's in another state, and it's created a situation where basically I have to give up a job and probably career, or she has to run the risk of her career dying off because of lack of opportunities in the area.

So if I take time off to watch our child while my wife rebuilds her career, and maybe move to a different career myself, somehow I'm penalized? Pardon my language, but fuck that.

I'm also in my early 40s, so there's that.

I'm starting to feel like my life is ending, really, like opportunities are just vanishing left and right. It's odd because up until this point I always felt optimistic, like there was always something out there for us. My wife comes from an elite school, we both graduated with Ph.D.s from a program in the top 5 in our field (according to dubious rankings), if you're into that. I don't mean this narcissistically, but I just feel like there's this huge discrepancy between what I know my wife and I are, in terms of work ethic and competency, and what our opportunities are.

<comment> the-dude Raise the child, build a business from home.

I would sign for it in a heartbeat.

<comment><USER9> Small kids are a lot more work than many people realize. Ditto building a business. Trying to do both at once without being financially independent first is not a choice anyone should make if they can help it.

<comment><USER10> Building a business, particularly a consulting business, is pretty easy and doesn't take financial independence, especially if it's IT related. Incorporating is easy, you can do it online. Then call up ye olde consulting firms and have them find business for you until you build up a customer base that calls you directly when they need work done. Do this enough and soon you'll have so much work you'll have to farm it out to acquaintances (your first employees).

</comment></comment></comment></comment><comment><USER11> I disagree with this article, to some extent at least. Perhaps it's specific for trendy companies and startups. Most of which are just looking for the next shiny object, true.

However, when you look at companies that move the needle in different industries, companies that have repute, market share and profitability, they couldn't care less what is trending these days. They look for domain expertise and excellence.

I have friends who work at Renaissance, the hedge fund. The company couldn't care less about your grasp of the latest ML framework or Keros or whatever you were. As long as you know what you are doing and are exceptionally good at it.

Having worked, full time, at Microsoft, I'd say the same goes there and at Apple, Oracle, even Google for the most part. They don't care about what is trending, just prove your weight.

I think this conclusion was drawn from the companies that make the most noise but are actually not major players in industry. The same companies that are hot for a minute until they meet their eventual demise.

The most robust, relevant and profitable companies out there basically say, 'F __* trends, show us your worth in salt '.

It's the hippie companies that ruin it all yet dictate social media conversation...for the 2 minutes their company is hot, then it dies.

Long live domain expertise and exceptionality.

<comment><USER12> Except all of those companies put an unreasonable amount of weight on degrees. Good luck getting Google to talk to you if you didn't graduate a top collage, let alone not having a degree.

<comment><USER13> There are advantages to going to college over a boot camp or self learning. In fact, CS and SE degrees are ones that pay for themselves. If you're not willing to put in the work, that tells me you won't last long at Google.

<comment><USER14> Being self taught I haven't learned a single thing in college. Besides networking I do not see any advantage.

> If you're not willing to put in the work

Why should anyone who already knows everything for a degree have to waste 4-6 years of their life?

<comment><USER13> I'm sure you don't know everything. Looking at your profile, I see the words "technician" so I am thinking you were trained at some point.

<comment><USER14> Yes the Navy "trained" me by saying "here are 20,000 pages of documentation on the E-2 Airborne Early Warning aircraft avionics, now go fix it".

That has nothing to do with my CS studies, of which I have learned nothing from college and could have CLEPed a BS degree on day one if it was possible and moved on to a masters where I should have been initially placed.

> I'm sure you don't know everything.

I never claimed I knew everything.

<comment><USER15> How many classes did you take in college? Because my first few CS classes I didn't learn a whole lot from either. It wasn't really until the 200 and 300 level classes that I started learning anything substantial that I hadn't picked up on my own beforehand.

<comment><USER16> If waiting for 2-3 years before you're able to learn anything substantial is considered normal - and we're not talking about monasteries and such - then I think there is something seriously wrong with the system.

<comment><USER15> I was already writing various types of software, taken a class in high school, gone to summer camps, etc, before I reached freshman year of college. There was plenty of students who had never even touched a programming language before and it was all brand new to them.

And I still learned things my first year (especially in ancillary classes, I only took three computer classes my freshman year), I just didn't get much out of CS classes until sophomore year. One of those classes was a gimme class I really should have tested out of ahead of time in hindsight, though (basically computers 101, I had quizzes on identifying what was the desktop, mouse and monitor).

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER17> When I hear "we only hire the best" it just sounds like generic crap an HR person added, not a big red flag that they are snobs. I don't think it really means anything. By definition, anyone hiring anyone wants to only hire the best. Nobody wants to hire only the mediocre. If I hear things like that I generally just ignore it.

Anyway, the author makes all kinds of unfounded assumptions. Someone with .NET and Windows experience may not actually be relevant to a backend Unix system. Their assumption though is "they don't like Windows people." Is it not actually possible their work experience was irrelevant? Is the first or most reasonable conclusion you come to really, 'they don't like windows people." Seriously?

That is purely an assumption driven by their own stereotypes and opinions. "They said they didn't hire me because my experience was irrelevant, but I know the truth. They are bigoted against Windows people! That's the REAL reason!"

<comment><USER18> >By definition, anyone hiring anyone wants to only hire the best

I agree with your overall sentiment, but this isn't true at all. The best cost money, and the best don't want to work on boring stuff. Most software is boring. A team of mediocre devs is more often than not just fine to do the job and it keeps cost down (and turnover likely lower).

<comment><USER19> so mediocre is better than best sometimes?

<comment><USER20> I'd say so, do you want to drive a ferrari/porsche around your local city/town traffic? How about if nobody ever saw what you were driving and you just arrived at locations?

High-end resources are a pain in the ass to acquire and maintain... the best usually know they're the best and expect a lot of upkeep. The truth is that most work (as someone else mentioned) is boring and using high-end resources when lower-end will do is bad economics.

Most times when you get in a car, you're not racing someone else for your life or pink slips... you're just looking to go to the store and come back. Why waste half a tank and risk a flat in a racing machine just to go pick up milk?

<comment><USER21> The question becomes what you optimize for - optimizing for speed picks you the Ferrari, optimizing for gas mileage gets you the Prius.

</comment></comment></comment></comment></comment><comment><USER22> > We like to think that we're different from all those industries that judge > people based on appearance, but we do the same thing, only instead of saying > that people are a bad fit because they don't wear ties, we say they're a bad > fit because they do, and instead of saying people aren't smart enough > because they don't have the right pedigree… wait, that's exactly the same.

This is a great quote and an interesting point. I don't know what it's like in the US but in the UK it's not unexpected to wear quite formal clothes to an interview, even if the position is at a very relaxed company.

I don't think I would judge someone for what they wore in an interview, but I fear I might if they continued to wear something overly formal at work.

<comment><USER23> Also in the UK, and I would definitely not be surprised to see candidates show up with suits at places where that's obviously not required. No one cares. "Pedigree" that's another question.

I did show up in a tailored three-piece suit with a tie and pocket for my interview at Deliveroo (a notorious streetwear influencer now). There was an eyebrow justifiably raised (by a guy in a t-shirt who, I learned afterwards, was the CEO) and I felt the need to explain that I had another interview for a very different company just after. That other interview went horribly and I got the job at Deliveroo! I'd still recommend showing up wearing biking gear.

<comment><USER24> We had an interviewee showing up in shorts and t-shirt. Turns out he wanted to combine the interview with a tee off time in the afternoon. While not customary (even though we don't wear suits/business attire at our company) he totally got away with it and it didn't affect the interview.

<comment><USER25> I've only interviewed in jeans and a tshirt, never had issue, but was thanked by one company for not showing up in a suit.

<comment><USER24> I did interviews in suit before, but if I ever have to do interviews again I'm not going to do that anymore. I hate suits, they don't fit me well and I don't feel comfortable in them. I think it is silly that it is 'expected' to wear a suit for a job interview where none of the employees wear suits. For finance/legal it's different matter, obviously.

</comment></comment></comment></comment></comment><comment><USER26> It would be nice if the process were a little more transparent.

If people just knew that a company rejected them for reason X, that would make a huge difference. If X were stupid, they'd know they missed a bullet. If X were rooted in a misunderstanding, they'd have a chance to clear it up.

There is so much side-channel information used in the corporate hiring process, and it gets mixed-up in HR far more often than any company is willing to admit.

<comment><USER27> > If people just knew that a company rejected them for reason X, that would > make a huge difference.

Give a thanks to the discrimination laws. Companies don't want to give any leads for getting sued.

<comment><USER28> The practice is exactly the same in countries that aren't the U.S. And countries that don't even have discrimination laws.

The fact that companies behave the same in the presence of dramatically varying legal norms suggests that your belief that discrimination laws are the problem is baseless.

<comment><USER27> At least I know that in Germany before the "Allgemeines Gleichbehandlungsgesetz (AGG)" (general equality law) was passed, companies were more open about reasons. Since this law was passed, any openness can easily lead to a lawsuite against the company where the company has to prove that they did not discriminate against the candidate. Indeed when the law was passed there were lots of lawsuits of really untuitable candidates, where the company could nevertheless not prove up to "valid in court" that it did not discriminate against the candidate for reasons specified in this law and thus had to pay the unsuitable candidate some months of salary as compensation.

<comment><USER29> US discrimination laws are not that strong. Unless you're doing something idiotic like telling people "sorry, we didn't hire you because of your religion" it's hard to win. Of course anybody can sue for any reason of they want, though.

</comment></comment></comment></comment></comment><comment><USER30> What strikes me about this is how little weight recruiters put on referrals from current employees. I would have thought that being recommended by an internal employee would get you an initial interview at the very least. Surely a trusted employee's recommendation is more reliable than whatever random sift the recruiters have.

Does anyone with experience of recruitment have any stats on how successful referred applicants tend to be?

<comment><USER31> I don't think recruiters keep metrics on anything. Once the candidate is hired, they consider their job done. Companies appear unwilling to measure recruiting and employee success, so the inefficient hiring processes continue.

<comment><USER32> Depends upon the type of recruiter. An external one will likely have a few follow-ups, because it's how they get paid. An internal one, however, won't bother unless the company is excessively on the huggy-feely side.

</comment></comment></comment><comment><USER33> I´ve recently been in charge of hiring a lot of people and have probably done +100 interviews in the last year.

I generally don´t mind the stack/language candidates have been using but I always value very highly that they have used different stacks and languages during their whole carrer. When I interview 5+ years .NET developers who haven't used another language, not even in their spare time, the result is usually a rejection. Since the time I can spend on interviews is limited I need to discard candidates based on signals, even if that means discarding good candidates.

<comment><USER34> I've been at the other end of that scale. I've had a fair few candidates that have used 10 different stacks, but wasn't truly good at any of them. On the other hand, I've had candidates with 10 years of C#, but used it in different settings, web, backend, actor based system, ect, and they blew the socks of most other candidates. What I look for, is that they show versatility and depth. The combination is really important.

I usually sift through candidates based on CV, and then a first interview where I try to asset how good the candidate is at his/hers prefered stack. Then I throw them in the deep end of the pool to see how they cope in the unknown. That can be having a pure C# OOP guy write some SML, or Java/VB/C++ guy write Haskell. I've also tasked a guy that worked with OCaml to write some workflow component in JS.

<comment><USER35> "Then I throw them in the deep end of the pool to see how they cope in the unknown." That's a good sign that the tech interview process is very broken.

<comment><USER34> > That's a good sign that the tech interview process is very broken

That could be the case, or maybe at that stage we're past a verbal phone screening, 1. interview, and they've been selected for the last round of interviews. They know before hand what the nature of the interview will be, including the "deep end of the pool" question. It is far and away the best way I've found to see how well they can adapt to new things, which is important to us.

<comment><USER35> Do people interviewing for orthopedic surgeon positions often get randomly asked about the latest antipsychotics in job interviews?

<comment><USER34> did you miss this part?

> see how well they can adapt to new things, _which is important to us_

</comment></comment></comment></comment></comment></comment><comment><USER36> Your job, as a job seeker, is to get passed HR to a hiring manager. You can go through HR, around HR (a buddy ships your res to a hiring manager) or over HR (an exec or VC flips your res to a hiring manager). You will not be working for HR. They are merely an impediment to be overcome.

If you wish, you can think of it as the border. You can apply for legal immigration (lengthy and dicey; think of the immigration and interview scenes in _Thunderdome_ ), you can have a mule help you across (ideally this should cost you a lunch; the mule will get a bonus from BigCo), or you can be awarded special status based on your illustrious and meritorious service to the glorious republic as determined by and at the sole discretion of its benevolent leaders.

Any which way, get passed HR. Do not complain about HR. Just show your skill set (networking, interview prep, ...) and get passed them.

<comment><USER37> *past

<comment><USER36> Doh.

</comment></comment></comment><comment><USER38> Thought this article looked familiar. Dan please add dates to your blog posts, Admin please add 2016 to the title.

</comment><comment><USER39> "We only hire the best" is a statement made by those who subconsciously don't believe they project outward quality and excellence in their everyday execution. It's as if those on the selling side believe that others see them as just-another-job, and they need to refute it. It's not a red-flag, but quite literally ignore the remark -- it's pointless white noise.

As for uninformed biases about tech stack and experience and what-not -- yep, that's going to happen. It's fairly well-known that hiring is basically a broken experience, even at the very best of companies. Don't expect everyone to get it.

In terms of MS stack vs non-MS stack, the reality is it's a hit and miss proposition. The OP's story about his colleague being competent in general comp-sci can be matched with plenty of others where the individual's competency seems to stop at Win32. My advice -- if your resume points only to MS-stack systems, get something non-MS on there.

I'm in Seattle, we run non-MS systems and I see quite a few MSFT-based resumes. I'm ex-MSFT and feel I can gauge competency across these lines fairly effectively. Many companies are willing to give some a chance, but learning Linux on their dime-and-time? That's a lot to ask.

With all of this, take it with a grain of salt. The common basis most people are told to follow is "hire slow, fire fast". In reality, this just means be super-conservative in your hiring decisions. Super-conservative leads to people "checking off all the boxes" in case something doesn't pan out -- that way they won't be criticized later.

</comment><comment><USER40> If Google's hiring is as good as this article suggests, it must have changed a lot in the last few years. Can anyone point me at an up-to-date article on Google's hiring process?

Not so long ago, they were _very_ focused on school rankings, GPAs, and academic qualifications. I always felt this was misguided because it was nowhere near as objective and quantitative as they thought. More recently they said they had a big data-driven effort to improve their process, but it was hard to tell if that really led to new ideas, or if it was just more of the same veiled elitism.

<comment><USER41> I was resume screened/rejected from many no name companies. Google was one of the only few who took a chance on me and I think that's so cool.

<comment><USER40> That's great!

As an anecdote from the other side -- a friend of mine got referred to Google, was interviewed but not hired. A year later they called up and asked if he was still interested, interviewed him again, and rejected him again. Then a year later they called him again, and... you get the picture!

</comment></comment></comment><comment><USER42> Damn, this paints a picture where only the shiniest candidates matter, and the rest of us mere mortals should apologize for breathing their air.

How do you know if you're "the best", and if not, how do you become "the best" (or at least employable), or is this industry a "ya got it or ya don't" kind of place like music or art, where only the top 10% deserve to make a living?

<comment><USER43> This doesn't just paint the picture, it holds a mirror up to the reality of our industry. If you aren't in SV (or NYC maybe), don't have a degree from an expensive college (or worse, no degree at all!), or haven't worked for FB/Google/Apple, you're basically dog shit to any interviewer.

All the clamoring for developers is because so many companies delude themselves into thinking they should only hire the shiniest candidates, as you put it, even though there are thousands of other people who could do the job almost or just as well if they would look at people living in another city, without degrees, and who haven't worked at a huge company and/or unicorn startup. As a bonus, people like that (like me!) are generally cheaper since they don't have to pay the ridiculous cost of living in the Valley, or realize that making enough salary for a comfortable living without going into multiple hundreds of thousands is perfectly fine.

</comment></comment><comment><USER44> "who was tragically underemployed for years because of his low GPA in college"

Who puts their GPA on their resume, or even discusses it, 2-3 years out of school? I have never discussed GPA or anything about their academic experience to mid/senior level candidates, nor has anyone ever asked me.

<comment><USER17> Totally agree with this. If they were tragically underemployed for years, I'd bet almost anything it was not because of their college GPA.

Nobody looks at GPA, or cares, or even expects it to be there, unless you have never had a job and have nothing else to put on your resume.

As someone who has interviewed many developers, GPA has never, ever even come up as a topic.

</comment></comment><comment><USER45> _My engineering friends thought Mike's resume was fine_

If they thought it was fine, they could easily tell HR, "Interview this person" and just like that, they're past the screen. (I don't know why it too me so long to learn this.)

</comment><comment><USER46> I thought this was a great commentary and it reminds me of the tendency of early-stage CEOs to say, "we really don't care that much about your current skill set, we just want to hire athletes" ('athlete' in this case meaning someone very talented and hard-working).

The message these founders are trying to communicate here is, "we want to hire people who have the capacity to learn and grow and who are willing to work long hours, so we'll overindex on those qualities and be accept the fact that many people who fit these criteria are more risky hires, in that they have not been doing a similar job at another company prior to us hiring them."

Based on anecdotal observations of many hiring decisions, what these founders often actually have in mind is, "we want to hire people who've achieved prestigious milestones". And so they will hire a person whose school prestige/GPA/employer prestige factor is high, but who is not likely to succeed in the role.

Anyway the upside of all this is, as OP mentioned, there's a lot of underserved talent out there.

</comment><comment><USER29> This is an older piece but it's really timeless.

I have some experience because my first job programming was at a small nonprofit, on a tiny team, doing .NET software, and during the job search when I sought to move on there were a lot of backhanded complements about how they didn't expect me to do that well on their evaluations.

</comment><comment><USER47> I love the format of this blog post (plain text in full width of the screen).

Reminds me of the 90s and is a breath of fresh air (no ads or performance issues on the page)

<comment> amiga-workbench The web is responsive by default after all :)

</comment></comment><comment><USER48> This is great news for any company who's able to see a few millimeters through the bullshit. Just hire people who are strong with computer science fundamentals, any maybe a few others who can play cross-functional roles. Treat them like a team and create proper mentorship/leadership dynamics. Work towards a common goal and empower the team. Watch them become one of the more functional teams in the tech industry.

The companies that hire fresh-out programmers from top schools have such an uphill battle. They have to handle people who have huge ego's from being sought after all bickering with each other on the team. They have to deal with the mistakes of people who think they know how to build something good for the company but are actually just wide-eyed and pig-headed. And then they have to deal with the fact that these people who are the "cream of the crop" will leave in a year or two to another companies' offer because even though this first company hired with a high salary no company in tech understands how to promote or give raises from within. It's always about the fresh and shiny new employee because almost all of tech is broken and once the reality of a team/person is seen it never meets expectations.

</comment><comment><USER49> I was there a few years ago: good academic title, good coding skills, some industry experience. But I also hit a wall trying to get a job ....

My problem was that I was doing it "the right way" which turns out to be the wrong one. The application process is terribly broken, as somebody noted above.

Which makes me think, as developers we get this entire hiring thing wrong. Next time I want a job, I will think hard about a way to hustle it without entering the application process.

</comment><comment><USER50> Large companies IMO aren't setup to take advantage of arbitrary levels of ability. They're antifragile in being able to ingest common denominator type skills and plod along despite bad engineering. The lynchpins are already in place BEFORE the hiring/growth phase. New hires that can actually compete with the established lynchpins only scatter the attention and increase the failure rate by questioning leadership.

A lean chain of intent is necessary to hit a goal as the slack compounds each layer down the chain. This is terrible for exploratory action because the output space is myopically limited but necessary for goal setting. Fatter chains often produce more total value but that energy is dispersed and the revenue streams often cannot take advantage of the innovation.

An analogy I like to use is trebuchets and daggers. JavaScript ability is like a dagger, generically useful but fungible and always in some sort of demand. Trebuchets are much more complex and much better at doing certain types of damage but the only buyers are castle seiging kings who may have already invested everything in a catapult producing supply chain.

Most fields like archaeology or art history don't expect their specialization to be highly compensated but often fields that go through periods of hype don't realize their skills can lose relevance. There are a lot of people learning ML now for example but once commoditization of tools and techniques happens the actual number of jobs may become too low to have market liquidity. Unlike A/B testing consultants.

Currently everyone in software can have their cake and eat it too but it's a position of privilege and luck and often this is forgotten.

</comment><comment><USER51> The comments about Microsoft tech stack are interesting. The best, most successful, most reliable most loved by users application I worked on was distributed C# SOA system windows with a relational database. However coming off that job I had trouble finding work. Now I work on a Scala/Java/Python with containers - we have so many problems - its difficult to use and maintain but suddenly I'm drowning in job offers.

<comment><USER52> Sorry, but it's not JavaScript

</comment></comment><comment><USER53> How important is GPA?

I will soon get my Master's degree in CS, but it is via the path of least resistence. Therefore GPA is not shiny. I decided that spending my finite time and energy can be better, so I concentrated on coding (my own projects) and socializing, sports and games etc.

When I studied for exams, at point where I knew that I was going to pass, I shifted to other projects.

Next year when I join the workforce and start looking for jobs, will low GPA bite me?

<comment><USER54> In my experience there are three types. Note: We don't have GPA, but some companies look at study grades (some only masters, others bachelors grades) and some even go further back to high school/middle school which would be sort of GPA.

The types I've met (companies/recruiters alike):

1) Don't care, look at what you think you can do and your motivation for that assessment. They usually also give some form of shorter first contract or traineeship with reduced pay while in training but at least you will get a chance. On the other end, they hire you simply because you have the relevant skill set and show good work ethics (e.g. can work on your own, which is somewhat deducible from your curriculum).

2) Select solely on bachelors/masters grades and don't care about GPA/High school. In my experience this dies out as soon as you have +3 years of work experience. There are so many levels in this category from only looking at relevant fields or looking at all even non relevant.

3) Look at GPA/High/middle/etc school grades and everything else to 'properly select' their employees. They pay good though and usually wear suits, most of them to hide their incompetence in the field they should excel in (I'm not claiming they aren't any good, but usually not in what they are supposed to do).

<comment><USER55> > Look at GPA/High/middle/etc school grades

 _Really?_ There is a possibility that this is my lack of industry experience talking, but I find the idea that a company looks at high school grades very difficult to believe. As for middle school... I would seriously wonder about the basic competence (and sanity) of someone who asked me about middle school grades.

<comment><USER56> No I have never heard of a company asking for grades below college. And after a few jobs plenty of people leave their GPA off their resume completely.

This is in the US. From OP's comment history they are somewhere in Europe.

</comment></comment></comment></comment><comment><USER57> Bryan Cantrill at Surge 2013 "Leadership Without Management: Scaling Organizations by Scaling Engineers" aka "Middle management, a toxin or a cancer?"

[https://www.youtube.com/watch?v=bGkVM1B5NuI](https://www.youtube.com/watch?v=bGkVM1B5NuI)

He said clearly - it _is_ possible to hire only the best.

<comment><USER58> Step one is to figure out what "best" means for your company and the positions you have open.

Step two is to figure out how to evaluate that effectively.

</comment></comment><comment><USER59> This is a culture of fabricated hyper-competitiveness just for the sake of making a few feel special. It's completely integrated, cultural and also immature.

There is really not that much difference between people for the range of jobs available to create this mythology. The stars or 'the best' are Sergey and Larry not the people now working at Google etc. Employees could be talented, efficient but they are like the millions of other faceless people working at corporations and this is not meant to diminish them.

But the special ones usually made their own way and are know for that. And you don't have to be a billionaire. There are tons of software folks who have distinguished themselves. There is a lot of self aggrandizement and pandering to egos on among employees and hiring companies.

</comment><comment><USER60> >By going after people with the most sought after qualifications, TrendCo has narrowed their options down to either paying out the nose for employees, or offering non-competitive compensation packages. TrendCo has chosen the latter option, which partially explains why they have, proportionally, so few senior devs – the compensation delta increases as you get more senior, and you have to make a really compelling pitch to someone to get them to choose TrendCo when you're offering $150k/yr less than the competition.

What is the "compensation delta"? Is that part of a formula for calculating expected compensation? For that matter, what is a good formula for calculating compensation when weighing job offers?

</comment><comment><USER61> Are there not plenty of companies that hire only older, more experienced people? Such as government entities and large corporations? Seems like we always hear about the pro-youth companies. Perhaps its only silicon valley.

<comment><USER29> Silicon Valley is an extreme example, but I don't think it's bucking the general trend.

</comment></comment><comment><USER62> Some companies hire by buzzword. Some by looks / first impression / "culture fit" / age. Some care about real skills and behavior.

That's pretty much it. Go hunt for the latter and you'll be fine.

</comment><comment><USER63> A lot of people in this thread need to read about the Secretary Problem: [https://en.wikipedia.org/wiki/Secretary_problem](https://en.wikipedia.org/wiki/Secretary_problem)

This method would help solve a lot of the issues people have with hiring and applying to jobs. The argument is then how to set N correctly.

</comment><comment><USER64> I think reason people don't want to hire windows/.net is because of very low signal to noise ratio. This makes detecting a good developer very difficult from bad developer as 9/10 times it is a waste of time interviewing them and after doing this for a while u develop unconscious bias towards some technology/platform.

</comment><comment><USER65> is this a problem just in areas with the big trendy companies?

I've always liked working at smaller companies as it always feel like what you do is more significant and a lot more diverse. I know other smaller companies < 30ish people and they tend to like broader experience and people who can get stuff done. School background counts for little.

</comment><comment><USER66> Yeah hiring seems to be something hard. I mean it is not as simeple as writing a value to every candiate, sort them and choose the best, but instead you have to individually rate each candidate while considering the effect it will have on your existing company.

</comment><comment><USER67> This article is from 2016, per the main page at [https://danluu.com/](https://danluu.com/) . Can we get a (2016) in the title?

</comment><comment><USER68> Institutional bias is perpetuated this very way.... Who do you think was more likely to go to the elite school given the same or inferior test scores?

</comment><comment><USER69> Pattern matching has problems but it also evolved because other signals are even weaker, I'd like to see an analysis centered around this idea

<comment><USER70> Evolution works over many generations and is most pronounced when there is an evolutionary advantage. Certain kinds of "pattern matching" could be vestigial like wisdom teeth or less important than other things, like freckles and moles.

Point being, maybe the company has great sales or some unassailable market advantage. They could form an untested hypothesis around their hiring preferences since the success of the organization is largely unaffected by it.

</comment></comment><comment><USER71> Whether you are trendy or not, what counts is your expertise in your niche. You just have to prove your worth and you are good to go.

</comment><comment><USER72>
        body {
            max-width: 960px;
            margin: auto;
            padding-top: 2em;
        }

<comment><USER73> There is a school of thought that the user should be in charge of resizing a window.

</comment></comment><comment><USER74> It's strange that this article does not appear in the RSS/Atom feed:

[https://danluu.com/atom.xml](https://danluu.com/atom.xml)

Is that feed broken?

I was quite surprised finding this via my secondary news sources (HN, etc.) rather than my primary news sources (RSS/Atom feeds of blogs I follow).

<comment><USER75> I think there's a simple answer to this: this is an old post and thus won't be covered by the "10 newest posts" feed.

<comment><USER76> It's from March 2016.

Source: [https://danluu.com/](https://danluu.com/)

</comment></comment></comment><comment><USER52> There not enough developers to fill the demand though!

</comment><comment><USER77> then what happens to us from no name schools ? get interviews only to be told you're too early into your career.

</comment><comment><USER78> Why is this guy so obsessed about salaries?

</comment><comment><USER79> Is ToolCo Google and ProdCo Microsoft?

<comment><USER80> Judging by his resume... yes.

</comment></comment><comment><USER81> Good for them honestly. We can only hire the best who aren't recruited out of college by Google, Facebook, etc.

</comment><comment><USER82> I just want to say that I absolutely love this no-frills type of page - tapping the link on mobile and instantly getting nothing but content is such a pleasant surprise!

<comment><USER83> I find it really difficult to read on a laptop though, due to the long lines.

<comment><USER84> I've been using Firefox's reader mode to good effect lately. I'd give it a try, or something like it for Chrome.

</comment></comment></comment><comment><USER85> Does anyone else find full-width text hard to read? I had to actually turn my head. Instantly closed the page.

<comment><USER86> It is truly funny how first people want 4k monitors but when an application actually uses the given size at full, they cry about "oh, it is too wide", and we end up with disgusting design of web pages with ultra-narrow column of content and wide empty (or ads-filled) columns by both sides.

<comment><USER69> Do you run your IDE with one file 4k fullscreen?

<comment><USER87> One file full screen is the best. SublimeText searching allows you to remove the file nav bar. Complete freedom and less junk.

</comment></comment></comment></comment><comment><USER88> first impression is important, but clothes dont make the man

<comment><USER29> But there are plenty of fish in the sea and one man's trash is another man's treasure. On the other hand, what's good for the goose is good for the gander.

</comment></comment><comment><USER89> Dnsnd

</comment><comment><USER90> What the hell does top 10 school mean anyway? Top 10 most expensive?

</comment><comment><USER91> That's why it is supremely important to read through the lines, and discern which trend will last long and which trend won't.</comment>


Marvel Still Pissed at Fox, Using Inhumans to Kill the X-Men - <AUTHOR> http://comicsalliance.com/marvel-fox-inhumans-x-men/ <comment><USER2> This whole thing is just conjecture and conspiracy theory. Conspiracy theory that doesn't even really make sense.

Comics sales are minuscule compared to movies and merchandise. How does killing off the X-Men in the comics help Marvel Studios or hurt Fox. It's not going to affect the box office at all, so what's the point?

Also killing off mutants happens so often it's a trope. Their existence is always threatened--that's kind of their thing. There's no evidence this story arc is any different.

</comment><comment><USER3> It's kind of a shame that there are serious politics in Hollywood or wherever that are dictating the storylines of comic books and movies. Kind of a downer for a guy who's like X-men et al since I was a kid.

<comment><USER4> X-men ought to be public domain by now and the politics and studio bickering irrelevant (at least with regard to rights). Anyone ought be able to make a movie about Wolverine and Cyclops by now.

<comment><USER5> I'm guessing that since Disney own Marvel we can expect perpetual copyright of all the characters they want forever.

<comment><USER4> Agree that the zeitgeist of copyright is definitely that it should be infinite in duration, regardless of whatever apologists want to tell you. That said, I'm a bit more optimistic, simply based on a gut feeling that you can only enforce such a policy, which runs directly contrary to basic human nature and how our species implements culture, for so long. People already complain that the stuff coming out of Hollywood is derivative rehashed crap - once enough of us make the connection between that and copyright law, copyright law will be reformed and not even Disney will be able to do anything about it.

<comment><USER6> Corporate desires not the real zeitgeist. The real zeitgeist is represented better by the millions of people who think it's stupid they can't watch game of thrones the day it airs in America.

Our Convenience Culture views copyright as an unnecessary impediment to satisfying market demand. Look at how Netflix sponsored content creation to bypass the traditional copyright barriers.</comment></comment></comment></comment></comment>


Why I Chose Ember Over Angular - <AUTHOR> http://enlightenedpixel.com/why-i-chose-ember-over-angular

<comment><USER2> This article lists similar reasons I've heard around the net to choose Ember over Angular. I'm on board.

I'd love to see some Ember vs. Angular vs. Backbone stats on YC startups. I do a quick cmd+F on every "Who's hiring" post to get a rough estimate, and it seems Angular > Ember > Backbone in requested technology familiarity.</comment>


Ask HN: Why is Facebook still wildly popular but MySpace, not - <AUTHOR> Friendster, MySpace and others have come and gone but Facebook is still here and extremely popular. Why? <comment><USER2> One of my favorite pieces about this is _Viewing American class divisions through Facebook and MySpace_ : [http://www.danah.org/papers/essays/ClassDivisions.html](http://www.danah.org/papers/essays/ClassDivisions.html)

The short of it is that during a crucial point in time Facebook positioned itself as a high-class alternative to MySpace. But the article puts it better than I do.

<comment><USER3> I agree with this, but fashion happens in cycles. The trend shifted from the classiness of Facebook, to the quirkiness of Insta or TikTok.

Somewhere towards the end of this cycle, we'll probably want something a little classier again (a new classy, not the old classy).

</comment></comment><comment><USER4> MySpace Tom peaced out after its purchase and News Corp. didn't really know what to do with it.

<comment><USER5> He laughed his way to the bank.

</comment></comment><comment><USER6> There is an interesting article on Forbes on Exactly this -> [https://www.forbes.com/sites/adamhartung/2011/01/14/why- face...](https://www.forbes.com/sites/adamhartung/2011/01/14/why-facebook- beat-myspace/#7f71e2db147e)

</comment><comment><USER7> I really liked Orkut. Damn google.</comment>


The IBM Pentium 4 64-Bit CPU - <AUTHOR> http://www.cpushack.com/2019/10/01/the-story-of-the-ibm-pentium-4-64-bit-cpu/ <comment><USER2> You may wonder, what was in this for IBM? The answer is fairly straightforward. IBM used to make proprietary chipsets for Intel chips!

The pride of the xServer/xSeries systems were "complex" setups -- multiple chassis -- with up to 32 sockets, and 512 GB of RAM. These required a lot of IBM internal engineering, where they made pin-compatible sockets for what Intel was offering at the time, and glued those chips into _hugely_ different topologies than Intel had in mind.

These systems sound small today, but back in 2001, this was a really big deal for x86. The IBM-proprietary chipsets were much more expensive than off-the- shelf systems, but still a fair bit cheaper than going with NCR or Unisys, competing vendors with proprietary x86 MP designs.

IBM had a lot at stake when that socket changed. Achieving pin-compatibility is hard! Intel is very jealous of their documentation, and prefers to offer paper only, with water-marked copies. It's like owning a gutenberg bible. Engineering something pin-compatible with an Intel x86 CPU has never been easy.

It was no doubt worth it to their "big" x86 server business to ask Intel to make a special run of chips with the old socket layout, but the new emt64 extensions. I bet it was a complete no-brainer compared to the costs of integrating a new socket!

<comment><USER3> In the era of dual socket, single core xeons, ServerWorks also produced non Intel chipsets, North and South bridge, for motherboard makers to use. There were tyan and supermicro boards that used them. Common at the time in 1ru and 2ru size servers. Also found on big quad socket supermicro boards.

From 2002: [https://www.extremetech.com/extreme/73498-serverworks- ships-...](https://www.extremetech.com/extreme/73498-serverworks-ships-grand- champion-chipset)

I actually think the ibm systems used the grandchampion chipset.

[https://www.supermicro.com/products/motherboard/Xeon/GC- HE/P...](https://www.supermicro.com/products/motherboard/Xeon/GC-HE/P4QH6.cfm)

Serverworks was later acquired by broadcom.

<comment><USER4> IBM was locked in a brutal fight with HP and Dell to take share in the early x86 server market. Their chipsets were neat but they looked silly next to an HP Opteron box. Integrated memory control ended the chipset race.

Still their chipsets had neat features worth remembering, such as the ability to use local main memory as a last-level cache of memory read from remote nodes. And of course they went to 64 sockets which was respectable.

<comment><USER2> These are pretty bold words, my friend.

Opteron had vastly better architecture than the Intel chipsets of the day, but it topped out at four or eight sockets, I forget.

IBM, at the time, could offer you Opteron-like architecture and performance, with up to 32 sockets, using Intel chips. That was worthwhile to some customers. "Intel" wasn't the selling position. It was x86 or x86-64, with "big" as the selling position.

I'm not here to apologize for Intel. I'm just saying, those IBM proprietary chipsets had their nice bits.

<comment><USER5> Early Opteron (with Socket 940) topped at 8 sockets _glueless_ \- with the same chipset one could drive a socket 754 chip.

However, with custom glue logic, one could expand it very far - AMD offering in that space was "Horus" chipset which connected 4 sockets with external fabric (infiniband, iirc) to create 64 socket systems. Similar tactic was (and still is) offered by SGI in their UltraViolet systems which utilize the same principle using NUMAlink fabric and Xeon cpus.

</comment></comment></comment></comment></comment><comment><USER6> Excerpt:

"Having such a unique processor at your disposal, it's absurd not to build a powerful x64-retro system on it. One of the options for using such a system in general can be to build a universal "PC-harvester" that supports all Microsoft operating systems from DOS to Windows 10."

All Microsoft OS'es on the same PC? Cool! Also, if that's indeed the case, my guess is that most versions of x86 Linux and other x86 OS'es, historic to present, would work too... which is no small feat for a single PC...

</comment><comment><USER7> I really admire all the lengths that the author went for this. Hard to see types of efforts now a days.

<comment><USER8> Right. I imagined this as a loose script to a Netflix special.

</comment></comment><comment><USER9> I was once looking for a used Intel Core2Duo processor on eBay, not sure, I think it was the E6300, 7x266Mhz, great FSB overclocking potential, and then settled on buying a CPU that was advertised as such, but its lid had " _Intel Confidential_ " on it.

IDK, did the seller delid and relid it with something exotic? Or did I snag one of the first prototypes? What was up with that lid? Does anyone have a clue?

MB identified an E6300, and it had amazing overclocking potential, it went 7x333Mhz without any voltage increase. Not sure what the max was, but considering only a few people were bidding on it (I'm guessing most were turned away due to that lid), I was quite lucky to get a CPU with a lot of potential for very little cash.

<comment><USER10> I've had Intel engineering samples from work (we got them under NDA and such). They were tossing some Sandy Bridge engineering samples at some point and let us take them home. The hardware was buggy and didn't get microcode updates IIRC. The case and mobo was leaf blower loud and very unwieldy. I could run Linux for a few hours before it would segfault. I ended up trashing it. So I don't think an Intel engineering sample is better, I think it is worse.

<comment><USER9> Did those have "Intel Confidential" on them?

The CPU I bought was working fine though, the seller guaranteed it and he had the reputation on eBay to back it.

My (possibly) naive logic then, was that an early sample was likely to be made from the best silicon, which often correlates with good OC potential...

</comment></comment></comment><comment><USER11> > Having such a unique processor at your disposal, it's absurd not to build a > powerful x64-retro system on it. One of the options for using such a system > in general can be to build a universal "PC-harvester" that supports all > Microsoft operating systems from DOS to Windows 10.

I thought all modern intel/amd cpus are backwards compatible back to the 8086, and so capable of doing that?

<comment><USER12> Unfortunately not, the biggest change being "pure" UEFI-without-legacy-BIOS firmware that a lot of motherboards already have.

That and the question of drivers for OSs newer than DOS (which is not as big of a problem, since they can still be written and doing so is easier than changing the BIOS. The existence of USB drivers for DOS, and HD Audio for Windows 3.1x[1] are examples of that.)

Modern x86 CPUs are _theoretically_ still backwards compatible, but I suspect they don't test things like 16-bit mode and VME[2] much anymore.

[1] [http://www.vcfed.org/forum/showthread.php?50867-Windows-3-1-...](http://www.vcfed.org/forum/showthread.php?50867-Windows-3-1-drivers- for-newer-hardware)

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

<comment><USER13> Intel is supposedly dropping the support to boot in 16 bits mode next year.

[https://arstechnica.com/gadgets/2017/11/intel-to-kill-off- th...](https://arstechnica.com/gadgets/2017/11/intel-to-kill-off-the-last- vestiges-of-the-ancient-pc-bios-by-2020/)

[https://www.zdnet.com/article/intel-were-ending-all- legacy-b...](https://www.zdnet.com/article/intel-were-ending-all-legacy-bios- support-by-2020/)

<comment><USER12> Those disturbingly happy articles should really be titled something like "the openness of the PC is about to end forever" \--- because that was likely the end-goal all along.

<comment> core-questions These new machines are not PCs. It's not out of the question for some company to build a new BIOS-architecture machine in the future, though it will probably eventually require sourcing x86 chips from vendors other than the Big Two as crypto keys will probably be required to even boot the chip if they aren't already.

</comment></comment></comment></comment></comment><comment><USER14> What's striking is that 3.4GHz 64 bit Intel CPUs were shipping 15 years ago. That's still about where we are, but with more cores per package.

<comment><USER15> Frequency stalled because we stopped being able to efficiently cool the CPUs at that point. Heat output is proportional to power consumption, which is proportional roughly to the cube of frequency (power is normally proportional to the square of frequency, but to drive higher frequencies, you often need to drive up the voltage--which also has an effect on power).

<comment><USER16> That can't be the only reason, with every shrink power requirements have been reduced. P4 had up to 115W TDP. The same frequency and raw power could probably be achieved on 15W today. But you can't get most current CPUs to run stable beyond 4GHz base clock, even with liquid cooling.

<comment><USER17> Not sure what cpus you're looking at but everything in the desktop space is over 4ghz nowadays. My last cpu was at 4.6ghz its entire life and my 3900x stays at over 4ghz on all 12 cores when doing a render.

<comment><USER16> Your CPU has 3.8GHz base clock (guaranteed), it can't sustain 4.6GHz turbo clock on all cores.

<comment><USER17> Yes, I know, but it never actually goes below 4.0 for me on all cores when doing a render. The 4.6 was referring to my 4770k which was at 4.6 on all cores all the time.

</comment></comment></comment></comment></comment></comment><comment><USER18> Prescott was 64-bit from the first stepping (C0), but EM64T was disabled with fuses. It wasn't just introduced for E0, and it was disabled in the G steppings that were 32-bit the same way. That big a change is too large to do in a mask change (the letter incrementing in a stepping indicates a mask change, the number a metal change) rather than a microarchitectural one. There are probably engineering samples of C and D steppings floating around out there that don't have those fuses blown.

The same is true for the LGA775-based 32-bit Prescotts. 64-bit disabled by fuses.

</comment><comment><USER19> Was actually pretty good read. How far are we from 128-bit architecture ?

<comment><USER5> IBM's AS/400 (and all of its renames) is a 128bit architecture. The huge address space is beneficial for implementing capability security on memory itself, plus using single level store for the whole system (addresses span RAM and secondary storage like disks, NVMe, etc)

<comment><USER20> One of my mentors is one of the IBM engineers who developed the original AS/400's capability-based security architecture way back in the early eighties. I can confirm that (according to her) the 128-bit addressing was indeed a very convenient manner of implementing the system. However, nobody ever expected (nor expects, I suspect) that those addresses will ever be used to actually access that amount of memory. It's a truly astronomical amount of memory, on the order of grains-of-sand-on-countless-planets...

<comment><USER21> To put it another way it's not just enough to count the grains on sand on a beach, it's enough to count all the atoms in all the grains of sand on planet Earth. Give or take a few orders of magnitude[1].

[1][https://www.explainxkcd.com/wiki/index.php/2205:_Types_of_Ap...](https://www.explainxkcd.com/wiki/index.php/2205:_Types_of_Approximation)

<comment><USER22> $ echo '2^128' | bc | rev | sed 's/.../&,/g;s/,$//' | rev

340,282,366,920,938,463,463,374,607,431,768,211,456

...rrright.

Actually let me line up the [https://en.wikipedia.org/wiki/Orders_of_magnitude_(data)](https://en.wikipedia.org/wiki/Orders_of_magnitude_\(data\))

      340,282,366,920,938,463,463,374,607,431,768,211,456
              ..  ??  YB  ZB  EB  PB  TB  GB  MB  KB

(There's no meaningful notation of size here - the denotations are just to show just how much data you can fit in 128 bits of space.)

 _Blinks a few times_

 _Ultimately fails to mentally grasp and make useful sense of the number due to its sheer size_

As an aside, apparently DNA can store a few TB/PB (I don't remember which). The age of optimizing for individual bytes as a routine part of "good programming" is definitely over, I guess. (I realize this discussion is about address space and not capacity, but still)

</comment></comment></comment></comment></comment><comment><USER3> This really isn't anything special, at the time of release it was a low end single socket 1ru server. It overlapped with available 64bit lga775 versions of the same product.</comment>


African swine fever hits China, home of half the world's pigs - <AUTHOR> https://www.economist.com/china/2019/05/25/african-swine-fever-hits-china-home-of-half-the-worlds-pigs <comment><USER2> Unfortunate title</comment>


What can "The Girl With The Dragon Tattoo" teach us about Web Design - <AUTHOR> http://tosbourn.com/2012/01/web-stuff/what-can-the-girl-with-the-dragon-tattoo-teach-us-about-web-design/

<comment><USER2> You're absolutely right. Look at this (real) article I found on the internet, called "What a New York Prostitute Can Teach You About Conversion": [http://www.conversionista.com/what-a-new-york-prostitute- can...](http://www.conversionista.com/what-a-new-york-prostitute-can-teach- you-about-conversion/) -> it sounds like a title The Oatmeal would put in his cartoons.

<comment><AUTHOR> Jesus, that exists.</comment></comment>


Beyond vi - Towards a modern command mode - <AUTHOR> http://e-texteditor.com/blog/2010/beyond-vi

<comment><USER2> You cannot really suggest a vi replacement that runs on non-UNIX. Sorry, I'd like to try it out.

<comment><AUTHOR> Actually the source is available and quite a few people have made it run on Linux. From what I hear it is still pretty unstable on Linux, but if a few gurus grabbed hold of it, it would probably quickly get up to speed.

<comment><USER3> I think it probably could have been working on linux with outside contributors if the license[1] did not contain strict requirements such as maintaining licensing.

So the source is indeed available but it isn't really open so it hurts in outside contributions.

[1] <http://github.com/etexteditor/e/blob/master/docs/license.txt>

<comment><USER4> What problem do you have with the license? It doesn't require any release of source and it doesn't prevent sale of the software. It looks a lot like a BSD license.

<comment><USER5> I'm guessing this part:

      * Any redistribution, in whole or in part, must retain full licensing functionality, without any attempt to change, obscure or in other ways circumvent its intent.

That would imply that you have to keep the binary blobs, and that you wouldn't be allowed to reverse engineer them (say, if the E-text editor guy goes out of business).

<comment><USER4> It sounds to me like reverse engineering would be fine. All it says is that redistribution must retain the license as-is with no attempt to change or obscure _the license_.

<comment><USER5> That's "licensing functionality", which is not necessarily just the license itself. Given that the original program is licensed ($49 or something), that seems pretty clear to me - particularly given that otherwise it's a BSD licence, so clauses 1-2 cover the case that you mention.

Obviously the only real test of the wording is in court, but it'd be enough to make some people steer clear of it.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> Oh sweet, I hadn't noticed the new feature and I've been looking at a bridge from my current text editors (e and BBEdit) to vim. Thanks for linking to this.

</comment><comment><USER7> I was paying attention up to the part where you make it start in insert mode for use with the mouse, menus etc. I like working in the terminal, with as little mouse action as humanly possible, and (for crying out loud) in normal mode. Normal mode is where the action happens, and I'm fairly sure I'm not the only vim user who feels that way.

The commands definitely look interesting though.

<comment><USER8> Most windows users will not be familiar with modal editing, so making it start in insert mode is a good choice to avoid alienating users.

On the other hand, this would be a good preference.</comment></comment>


Facebook: Political ads are ineligible for fact-checking - <AUTHOR> https://popular.info/p/facebook-says-trump-can-lie-in-his <comment><USER2> Because the Republicans will otherwise stop paying Facebook ad dollars

<comment><USER3> Also, because all political messaging is essentially bullshit in the Frankfurtian sense. Whether a political ad's content is factual is besides the point, because its object is persuasion.

[https://youtu.be/lArA7nMIqSI](https://youtu.be/lArA7nMIqSI)</comment></comment>


OCaml release 4.06.0 - <AUTHOR> https://sympa.inria.fr/sympa/arc/caml-list/2017-11/msg00005.html <comment><USER2> I have always wanted to try OCaml, but there sure are a lot of things marked as breaking changes. Makes me a touch nervous.

Is this normal for OCaml?

<comment><USER3> >a lot of things marked as breaking changes

Which ones? safe-string can be disabled.</comment></comment>


Everyone needs to stop paying attention to Elon Musk's tweets - <AUTHOR> http://www.wired.co.uk/article/elon-musk-artificial-intelligence-world-war-3 <comment><USER2> TL;DR: It's like everyone's tweets. It's hard to condense complex opinions to 140 characters, so treat EVERYONE's tweets (not just Elon's) with a grain of salt.

<comment><USER3> Yeah, it's like a bumper sticker for the times. If it piques your interest, research further.</comment></comment>


In China they're closing churches, jailing pastors, and even rewriting scripture - <AUTHOR> https://www.theguardian.com/world/2019/jan/13/china-christians-religious-persecution-translation-bible <comment><USER2> Religious institutions are in a very odd place these days.

They are on the front lines, in terms of contact with the weakest, poorest and most troubled members of society. They attract people who are suffering.

The growth and existence and passionate defense of religious institutions, despite all our advances, signal society isn't providing alternatives that perform the same function that contribute to well being and community.

The more religion gets attacked the less is focus on providing those alternatives. And those alternatives will come only with a deep understanding of what religion got right in dealing with human suffering.

<comment><USER3> > They are on the front lines, in terms of contact with the weakest, poorest > and most troubled members of society.

Indeed, and in many cases, exploiting them for their own benefits.

<comment><USER4> Do you have any sources to back that up? I can't imagine what (beside altruistic) benefits would be received by donating time, energy, and money for the benefit of people who don't have it?

</comment></comment></comment><comment><USER5> > The plan calls for "retranslating and annotating" the Bible, to find > commonalities with socialism and establish a "correct understanding" of the > text.

With the age of the Internet I'd be surprised if a tactic like this would have any affect. There will be so many websites pointing out where things were changed. The Chinese government can try to block all of these sites and access to the original content but information is hard to contain.

> "What really makes the government nervous is Christianity's claim to > universal rights and values."

That this wouldn't be a common truth sounds radical as someone who has lived in the US my whole life and takes this world view for granted.

</comment><comment><USER6> Religion is so popular in China in part because of the great ideological changes in the country. Over the last century or so it has gone from Confucianism to Sun Yet Sen's Christian social democracy to Maoism to Deng Xiaoping's moderate capitalist socialism to Xi Jin Ping's new authoritarianism. The result of all these swerves is that a large part of the population has lost any ideological belief in the government, and looks for meaning and guidance elsewhere.

And when it comes to this Christianity presents a particular threat to the government. Besides being associated with the West, it is universalistic, as the article says. All people are children of the one God, so they all have rights and the right to criticize the government, and the Chinese government also has no right to try to imperialistically dominate the world.

You know, when a government engages in this sort of suppression, it likes to say it is because it is so strong, but actually it usually means it is in a panic over lack of support by the population.

</comment><comment><USER7> Two words sum up why China would have issues with the Bible: Taiping Rebellion.</comment>


Latest Coronavirus R0 estimate: from 3.30 to 5.47 - <AUTHOR> https://mobile.twitter.com/ncov19/status/1221507196070002689 <comment><USER2> I had no idea what this meant.

Here's a tweet that clarifies it a bit.

JustSayin @NowUpdateMe Replying to @nCOV19 What it means is that every one carrier can infect between 3 and 5 other people. This is a very dangerous R0.

[https://mobile.twitter.com/NowUpdateMe/status/12215433216270...](https://mobile.twitter.com/NowUpdateMe/status/1221543321627029504)</comment>


Google opens up its JavaScript development toolbox (Closure) to all - <AUTHOR> http://arstechnica.com/open-source/news/2009/11/google-opens-up-its-javascript-development-toolbox-to-all.ars

<comment><USER2> A lot of comments @ <http://news.ycombinator.com/item?id=924426>

</comment><comment><AUTHOR> This is huge. I've been wanting Closure as OSS ever since I interned at Google. The compiler is optimizing -- it is not a simple obfuscator like YUI Compressor.

<comment><USER3> YUI is not just an obfuscator--it also minifies and dramatically reduces file sizes. Closure seems to outperform it in most cases, but to say that it's a "simple obfuscator" is a great disservice.

<comment><AUTHOR> You're right, I meant "minifier".

</comment></comment></comment><comment><USER4> Looks very very cool. Unfortunately quite a few of the examples didn't work when I tried them in Safari. Not sure why :/</comment>


AT&T ShopAlerts: first location-based ads from a US carrier - <AUTHOR> http://www.engadget.com/2011/02/28/atandt-shopalerts-first-location-based-ads-from-a-us-carrier-kick/

<comment><USER2> LOC-AID is the location data provider for ShopAlerts - <http://www.loc- aid.com/ShopAlerts_powered_by_LOC-AID></comment>


Employee Referral Bonus Jackpots: 15 Companies with Awesome New-Hire Incentives - <AUTHOR> http://www.hrworld.com/features/referral-bonus-jackpot-031108/ <comment><USER2> I was expecting a list of rewards other than cash, trinkets and junkets. I'm especially unenthused by the _chance_ of winning a mountain bike. Just give them a bike or don't give them a bike.

</comment><comment><USER3> the article lists 15 companies that give "fat bonuses" for employee referrals. many of those 15 companies give less than $1000. How is that a "fat bonus"?

Bonuses need to be up and above $1000 to be "fat".

<comment><USER4> I agree...to a point. Most referrals like this happen at lower level job descriptions where sub-$1000 bonuses are still a meaningful % of overall compensation. I know one consulting firm where a guy doubled his take home on referral bonuses.</comment></comment>


Ask HN: Machine Learning Dataset Aggregator/Market Place - <AUTHOR> I have created a MVP for a machine learning dataset aggregation site which can also become a market place. I was looking for some feedback from the community if there was a need for such a site and what features would be good to add. Do checkout the search page.
Also do you think there is a potential for buy/sell in machine learning dataset space.
I have added around 1000 datasets and I can add another 3K which I have scrapped.
Here is the link to the MVP -> http://classif.ai/ <comment><USER2> I've watched the "market for data" market for a while and it is tricky to make work. I'd like to see it work for somebody.

If you are a business, your data (about your operations, customers, etc.) is valuable to you. Other data sets, not so much.

For instance you list the NIST digits, which are popular for tuning up algorithms, but are unlikely to be the core data set for anything that brings in revenue or lowers costs. This is free data, which means you can't make much if any money selling access to it.

Data cleaning is a major cost of any data project; I remember the time a marketing guy I knew bought 250,000 email addresses and some didn't even have @ signs! Give business people something that has value for them and lower the barriers to using it, and you might have a product.

Click on my HN profile and get in touch if you want.

<comment><USER3> Yes, I agree with you. Public datasets haven't been of much worth to us in the data analytics department of a financial institution. It's messy and doesn't join well with our internal data.</comment></comment>


Corn Industry's Response to Merucry in High Fructose Corn Syrup Report - <AUTHOR> http://www.hfcsfacts.com/HFCS-Mercury-Study-Outdated.html?utm_source=Google&utm_medium=ppc&utm_campaign=CN%20Mercury%20Myth&gclid=CIneoYm6sZgCFQIvgwodF3y8Sw <comment><USER2> PR spam - flagged</comment>


My God-Awful Year with the Apple Watch - <AUTHOR> http://gizmodo.com/my-god-awful-year-with-the-apple-watch-1772724490?utm_source=pocket&utm_medium=email&utm_campaign=pockethits <comment><USER2> i love the title of this. I feel so bad for him. I mean, the watch ruined his _entire_ year.</comment>


Student science experiment finds plants won't grow near Wi-Fi router - <AUTHOR> http://www.mnn.com/health/healthy-spaces/blogs/student-science-experiment-finds-plants-wont-grow-near-wi-fi-router

<comment><AUTHOR> _the cress seeds placed near the router had not grown. Many of them were completely dead. While the cress seeds planted in the other room, away from the routers, thrived._

</comment><comment><USER2> Substantial discussion: <https://news.ycombinator.com/item?id=5729564></comment>


Google Workers Reject Silicon Valley Individualism in Walkout - <AUTHOR> https://www.nytimes.com/2018/11/06/business/google-employee-walkout-labor.html <comment><USER2> What a bad headline. Google employees are protesting the really crappy way that the company handles claims of sexual harassment. To say this is about individualism is trivializing to the point of being irresponsible.

<comment><USER3> Really terrible article overall. "The walkouts followed a New York Times report". Indeed...

</comment></comment><comment><USER4> This is an opinion piece disguised as news.

</comment><comment><USER5> New York Times Reporter Talks To The Youngs, Saves TheOutline.Com Link To Pocket</comment>


Planck.js – JavaScript rewrite of Box2D physics library - <AUTHOR> https://github.com/shakiba/planck.js <comment><USER2> Planck.js developer here! I have posted this to reddit before, so I'm just going to include it here too:

I have ported/rewritten Box2D physics engine to JavaScript, for cross-platform HTML5 game development. Planck.js includes entire Box2D algorithms, a simple HTML5 Testbed, more than 50 examples and some new game prototypes. The project is pre-released and there may still be minor issues, which I'm working to fix. So far I have spent more than 400 hours for developing this project and it consists of around 20k lines of code.

[https://github.com/shakiba/planck.js](https://github.com/shakiba/planck.js)

My main motivations for working on this project are:

\- Taking advantage of Box2D's efforts, achievements and community knowledge

\- Developing readable and maintainable JavaScript code

\- Optimizing the library for web and mobile platforms

\- Providing a JavaScrip-friendly API

Your feedback is highly appreciated, and I hope you use Planck.js to make some awesome games soon!

<comment><USER3> The more things change the more they stay the same...I did a manual port of [http://www.box2dflash.org/](http://www.box2dflash.org/) to JS a few years back to make educational simulations:

[http://schoolnotez.com/](http://schoolnotez.com/) [http://appynote.com/app- store/](http://appynote.com/app-store/) (see the pendulum example.)

good job.

<comment><USER2> Great work! I decided to directly rewrite Planck.js from Box2D C++ code, so that I can keep it updated (as far as I remember that flash port was few years old).

</comment></comment></comment><comment><USER4> It baffles me that all those JS physics library never provide proper docs or even an API reference and always link to the C++ Box2D manual as if it was an acceptable alternative. Always have to guess what the JS equivalent is but even then you're in for a surprise: [https://github.com/shakiba/planck.js/blob/master/CHANGES.md](https://github.com/shakiba/planck.js/blob/master/CHANGES.md)

<comment><USER5> For me, an example is worth 10 pages of documentation. The documentation is good for reference but only after you understand the ideas behind it.

One of the biggest criteria I have for using a library is whether they have a rich set of examples to draw from.

<comment><USER6> Conversely, after the initial struggle getting the ideas behind it, examples are worthless and documentation is king.

<comment><USER5> Sometimes. Examples are good at giving concrete working code to use as a basis but they only express a few ideas. Documentation will let you understand the different pieces so you can build what you like.

Both are beneficial for different scenarios. I find I use examples much more often but when examples fail, documentation is necessary.

</comment></comment></comment></comment><comment><USER7> You reminded me, that I made a Javascript game with Box2D five years ago: [http://www.loudrider.com/](http://www.loudrider.com/)

I was using Box2DWeb [https://github.com/hecht- software/box2dweb](https://github.com/hecht-software/box2dweb) . It could be good to mention other javascript versions of Box2D and say, what are the differences between them and your library.

<comment><USER8> Neat game. The time trial scores seem a bit strict though. I mean, I can't seem to get 3 stars on the first level of the tutorial even though it's literally just holding down a single button. Am I missing something? :P

<comment><USER7> You should "lean backwards" to push on the back wheel to decrease friction and accelerate faster :) BTW. you can play it on your phones and other devices with browsers, too :)

</comment></comment></comment><comment><USER9> I love that you kept the tried and true Box2D API as that'll make porting what I'm working on much easier. I've been using the emscripten version [1] but the automatic port from C++ makes the JS API quite painful at times, especially with the manual memory management that's required to prevent leaks. Thanks for doing this!

[1]: [https://github.com/kripken/box2d.js](https://github.com/kripken/box2d.js)

</comment><comment><USER10> In most of the demos, you can grab the objects and drag them around. In other demos (like 8 ball) you can 'shoot' them.

I wasn't expecting it to be so smooth and precise... this is really great work. It makes me realize why I got a C in physics, because I could never make this!

<comment><USER11> It's not just physics though, as I remember Erin the author of box2d mentioning that most of the work is concerned with allocating and deallocating tiny pieces of memory. After that the physics are rather simple Newtonian equations.

<comment><USER12> But then, in order to calculate those newtonian equations, you need an integrator, right?

</comment></comment></comment><comment><USER13> This seems like really great work.

I could have sworn this was done already but looking at all the search results that came up the alternatives seem awful at first glance. At the very least this project is better at marketing.

As an aside, does it bother anyone else that the 8-ball demo has two extra pockets in the table?

<comment><USER14> Or that the asteroids game has (a lot of) friction?

<comment><USER15> space dust

</comment></comment></comment><comment><USER16> Off topic:

I'm interested in a physics library based on waveform collapse. It seems like performance would be so much better. A body could arc through empty space, without writing any new data to the GPU, just the clock changing, until an "observation" event where you wanted to check whether it interacted with anything, at which point you collapse some number of waveforms into particles, do rigid body math, and then generate new wave equations for the subsequent timeline. There would be no centralized "tick" just a tree of nested timelines forking whenever your code decided to do an observation. When rendering you'd just render all the waves, which means you can do arbitrary precision. You could do 90hz rendering of the waves for head position, while only collapsing particles every half second or so. Do that at multiple scales and you have a physics system with arbitrary fidelity traded off for performance. You can have different ticks at different scales (waves within waves). The properties of a given surface would just be the sum of maybe 3-4 waves at different levels of detail. You could collapse these independently depending on how much compute you wanted to devote at different levels. I think this would pair well with an SDF-based renderer, which lets you have screen-aligned surfaces that kind of act like particles already.

It would lead to bizarre physics bugs, but I suspect they would be very interesting and could lead to interesting gameplay. Perhaps they might even help us learn things about how our own universe works.

</comment><comment><USER17> Cool! Is there a big advantage to a manual rewrite vs emscripten? With emscripten folding in updates from Box2D 'native' would be easier, it seems.

<comment><USER2> Thanks! Repost from reddit:

The main reasons that I decided not to use Emscripten port was usability:

\- First, it is generated and unreadable code, therefore it is impossible to understand how it actually works in JS to use it optimally, debug it or improve it for JS. While it possible to improve Planck.js if it is not as fast in some cases, it is not possible to do anything with Emscripten port.

\- Second, API of Emscripten port does not follow JavaScript conventions and is inconvenient to use in JavaScript. For example it returns an empty object, instead of no object (null or undefined) as last element of a linked list (which is very confusing in JS). Here are some more usage comparisons:

        // emscripten
        var bd_ground = new Box2D.b2BodyDef();
        var ground = world.CreateBody(bd_ground);
        var shape0 = new Box2D.b2EdgeShape();
        shape0.Set(new Box2D.b2Vec2(-40.0, -6.0), new Box2D.b2Vec2(40.0, -6.0));
        ground.CreateFixture(shape0, 0.0);

        // planck.js
        var ground = world.createBody({});
        ground.createFixture(planck.Edge(Vec2(-40.0, -6.0), Vec2(40.0, -6.0)), 0.0);

        // emscripten
        var bd = new Box2D.b2BodyDef();
        bd.set_type(Box2D.b2_dynamicBody);
        bd.set_position(ZERO);
        var body = world.CreateBody(bd);

        // planck.js
        var body = world.createBody({
          type: "dynamic",
          position: Vec2(0, 0),
        });
        // or just world.createDynamicBody();

        // emscripten
        myQueryCallback = new Box2D.JSQueryCallback();
        myQueryCallback.ReportFixture = function(fixturePtr) { };

        // planck.js
        myQueryCallback = function(fixture) { };

</comment></comment><comment><USER18> great, included in [http://www.tapirgames.com/blog/open-source-physics- engines](http://www.tapirgames.com/blog/open-source-physics-engines)

<comment><USER2> Awesome, thank you!

</comment></comment><comment><USER19> Great work! This is really impressive stuff, and it's applaudable that you saw this project through to the very end!

I'm actually seeing some hitching in the car demo on my reasonably fast dev machine, particularly when I'm interacting with the bridge (computing contact forces of a bunch of bodies connected with joints is a lot of work): [http://piqnt.com/planck.js/Car](http://piqnt.com/planck.js/Car)

Have you looked at perf yet? How does the performance of your rewrite planck.js compare to a compiled emscripten version?

Would you ever consider using something like ASM.js or WebAssembly? Physics libraries are definitely one of those performance-critical applications where this kind of stuff actually matters a whole lot.

<comment><USER2> Thank you!

I have not seen any problem with car example on my own laptop, but I will try it on some more different devices to find the issue.

Regarding performance, because Planck.js code is hand-made and readable it is not difficult to improve it if it is not fast enough with some cases.

asm.js looks promising, I'm going to have a closer look at it.

</comment></comment><comment><USER7> I made a graphics library IvanK.js and made a Box2D demo for it (using Box2DWeb). It ran smooth even back in 2012 :) [http://lib.ivank.net/?p=demos&d=box2D](http://lib.ivank.net/?p=demos&d=box2D)

</comment><comment><USER20> Cool.

Did you contact the Phaser people( Or well, that one guy mostly)? This could replace Box2d there.

<comment><USER2> Thanks! It is easy to integrate Planck.js with other liraries and dev tools.

</comment></comment><comment><USER21> I've messed around with various incarnations of Box2D, including at least one other Javascript port. How does this one compare performance-wise? Does doing a full rewrite perform better than the automatically generated Javascript of the other ports?

<comment><USER2> The main difference is that it is a hand-made rewrite, so the code is readable and improvable, so performance can be improved and optimized even if it is not fast enough in some cases. Also see my other comment about comparison with emscripten port.

</comment></comment><comment><USER22> Awesome!! Makes it a delight to use

</comment><comment><USER23> I'm currently using Box2D intensively in one of my games: www.braains.io What would be the easiest way for me to replace the existing Box2D implementation with Planck.js?

</comment><comment><USER24> What I remember from Box2D is that the simulation wasn't deterministic but rather dependent on frame rate for example. Is it the same case for this?

<comment><USER25> If you tie the frame rate to the physics step, then yes - that will be true for pretty much any physics engine.

The classic advice here is [http://gafferongames.com/game-physics/fix-your- timestep/](http://gafferongames.com/game-physics/fix-your-timestep/)

</comment></comment><comment><USER26> How difficult would it be to integrate with Phaser? I believe Phaser currently has Box2D support but only through a closed source commercial plugin.

<comment><USER2> Probably it would be easy, I would be happy to help with that, please feel free to open an issue on github.

</comment></comment><comment><USER27> Nice job!! Love the 8 ball example ... really fun :)

</comment><comment><USER28> Nice demos! I like how in the soccer example you can play as a self-driving ball :D</comment>


Amazon Defends Sale Of Pedophile How-To Guide - <AUTHOR> http://techcrunch.com/2010/11/10/amazon-defends-pedophile-how-to-guide/

<comment><USER2> This is something straight out of an xkcd comic where the guy builds a bot to buy random $1 items from a website and he keeps getting things that could put him on an FBI watch list.

<comment><USER3> <http://xkcd.com/576/></comment></comment>