skysight-inc/HackerNews huggingface dataset:
Not really.

Memorising the manual is the strategy of a surface learner. Surface learners can make pretty good PHP programmers, but they'll struggle with, say, passing Javascript closures.

A deep learner will look for the underlying principles and abstractions. They can quickly get an overview that, even when it's fuzzy, is still accurate enough for them to know where the gaps in their knowledge are, so they can fill those gaps quickly when they need to. They're like Mendeleev with his first periodic table. He didn't need somebody to show him a sample of gallium to know that it existed: he could inferred its presence and properties from the overall structure of the system.

Of course, a really advanced programmer will have done both. They will know and understand everything. But those guys are few and far between.
What is the chance of not inheriting *any* DNA from a particular grandparent?
Ditto. I clicked them both.
- Cheers from Italy.
I'd hope that by that point I'd have sold them on my company enough that they really thought it was better.

Also, I don't think it needs to be a long gig. Maybe even just a day, which isn't much longer than the gauntlet of technical interviews some companies will put you through. Even that short period should be enough to see if someone works well.
Better might imply more freedom or flexibility, which short-term gigs could offer.
Philippines!
Think about a product that could be "bought" acquired by big companies "sepicially" social network companies!
> Google bought Android in 2005, two years before the iPhone was announced.

Not only, as has already been pointed out, did the UI change, but if you look at the Android architecture it's clearly evolved along an very different path to iOS.

I remember when the first Android SDK came out the programming manual made it very clear to developers that we weren't to expect devices to always have discrete GPUs or touch-screens.
> Now if they want a hardware platform to run on, go find one outside the Open Handset Alliance ecosystem.

Imagine you want to sell a Linux laptop with your own Linux distribution. You're just a small shop in California, and you're shopping around to find a manufacturer for your laptops. And you find that anyone connected to Microsoft (Foxconn, Asus, Acer, Gigabyte, etc) can't do any job with you. Would you say "that's fair, Microsoft isn't evil by forcing hardware manufacturers to work exclusively with them" in such situation?
As an Android developer, I love that Google is doing this!

Android has come a very long way in the last few years in terms of usability and design. A large part of this has been due to an increasingly uniform design language and feel. That, and the new distribution model for what are basically Android updates (Google Play Services) has made Android feel more polished and actually allowed it to stand on its own against iOS. It also means that developers like me don't have to spend nearly as much time worrying about fragmentation in the traditional sense. Each day the percentage of people using sub-ICS phones falls, and we all get one step closer to the day we can support ICS+ only.

However, companies like Amazon would force me to rewrite the maps integration, the sign-in portion, the wallet, etc... Amazon did a great job of replicating Google Maps API V1 but they have yet to mirror V2 and don't mirror the other components I mentioned.

Aside from fragmentation and developer sanity, the article mentions another key point here:

"[M]any of Google's solutions offer best-in-class usability, functionality, and ease-of-implementation."

Exactly! Google APIs are not perfect, and there's bugs (like when Google Maps broke map markers on high resolution phones like the HTC One). But generally speaking, I'm really happy with the quality of the APIs and services. In an ideal world, Amazon and Google would work together to provide great and uniform single-sign-in APIs, great maps, etc... As it currently stands though, I don't believe either party is interested in doing so. Prisoner's dilemma?
Hashtags are a very powerful way to find online communities with a given interest. As the OP found out, you also need to find the "right" hashtag for you, among the many alternatives there are for most subjects.

In case you need that, try out my free tool: http://hashtagify.me/#gators
In which category does Pakistan belong :(
I see what you're saying, but we probably don't have the same interpretation of the words 'job' and 'artist'. More broadly, the nature of creativity is to challenge authority. Look at any time period, any medium, and the most creative work is always going against the grain. Breaking the rules can be as simple as using an uncommon kind of brushstroke. It doesn't have to be against the wishes of whoever is paying for the work, and furthermore, just because something is challenging authority doesn't mean it's creative.
I think you don't get my point: I expect a domain expert to be a domain expert, but I don't expect a trainee to know anything and I'll structure my interview accordingly. I'll ask the domain expert questions about his domain. But I don't expect a domain expert to know the programming language that we work with just because he's a domain expert. And seriously, I'll prefer the eager-to-learn math graduate with little coding experience over the bored cs graduate that knows the java reference doc by heart and now thinks he knows how to build stuff. In any case coding examples in your interview will show you little beyond the fact that somebody memorized the docs.

The actual pain point I read from the article is a different one: There's a mismatch between hiring process and expectations. If I need a lead programmer for the iOS project that I'm about to start next week then I can't hire anyone that doesn't know Objective C and then I absolutely need to structure my interview accordingly. But if I have a couple of weeks more I'll happily teach him. And if I'm hiring somewhat smart I try to avoid those "we need someone urgently" situations.
> Sorry, note my "pedantics:" note on the bottom. If you ignore errors then you're actively going against the idiomatic way to write Go.

Just wait when Go spreads into the enterprise. You will see _ everywhere.
Math puzzles are great if the problem is easily understood, the solution achievable without a math degree, and you ask them to solve it by writing code.

For example: "This database contains 100,000 problems with standardized parameters. The problem definition is defined in the file spec.txt which you can grab from our code repository. Write the code to solve these problems efficiently, passing each solution to a remote service via POSTing to a REST API, the documentation for which you can find here. Bonus points for parallel execution. Feel free to use any editor/IDE and reference online documentation, Stack Overflow, etc. that you want. If anything's not clear or you need a hand with something, just ask as you would if you were an employee already. Ready to get started?"

The great thing is that once you've identified a candidate, you can do remote screen sharing and have them write code before they even have to come into the office. I've interviewed a fair number of remote people this way and it's excellent for weeding out the people who can talk the talk but can't program worth a damn. And it limits bias because you don't care about much beyond their communication ability plus their technical ability.
They are religiously against any change, from what is to be seen in golang-nuts.
I definitely agree with a model that places emphasis on past work/projects.

"To find out if they can get stuff done, I just ask what they’ve done. If someone can actually get stuff done they should have done so by now. It’s hard to be a good programmer without some previous experience and these days anyone can get some experience by starting or contributing to a free software project."
http://www.aaronsw.com/weblog/hiring
Ciao - Italy here too ;)
Berlin. :)
What I have learned from bootstrapping 3 startups (2 failures, 1 success)
The advantage of shooting yourself in the foot if your prototype turns out to be worth a damn is that it forces you to rewrite it with more rigorous development practices ASAP. Usually, choice of a storage engine isn't the only problem with a throwaway MVP - you've probably written it in a language that won't scale, and skimped on error handling, and are using really inefficient algorithms, and didn't bother documenting anything.

That said, I would use PostGres for my MVPs, using it as a key-value store initially until its more clear what the schema should be. That is, if I still bothered using code for prototypes; of late I've been more fond of napkins and Adobe Fireworks.
Here's the frightening story I recalled on Social Security from 2011. http://www.informationweek.com/government/enterprise-archite...

Woe be to the phalanx of ACA consultants that has to integrate with those systems... :/
Best way to go is to ask them about their projects and hear them as to how they will explain them and how enthusiastic they are about building new things and ask them to probably build one in 2 days with the help of google. Then i think the quality would just come out naturally and now you can decide whether to hire this guy or not.
Here is an interesting idea that I had reading this. As a startup, what if you were to create a simple computer language that looked different from most other computer languages, at least somewhat different. Alternatively, just use one of the many really obscure programming languages out there, just make sure the applicant does not know it ahead of time. Give the applicant a 10-20 page reference manual for the language and ask them to make a simple program of some sort. Have them read the manual and write the program, hopefully while not looking over their shoulder, so they can relax. In the manual you give them omit one critical function or API reference, but make sure that info is available online (make it available if you made up the language). Then see what happens.

This would test programmers ability to learn a new language.
What I mean is that people who enjoy programming probably tend to be smart. I haven't done any statistical surveys, but the motivational feedback loop for learning programming rewards intelligence.
Then why make a free "open" OS in the first place? If it was such a concern that Google should control the OS they could have done what Microsoft did with licensing Windows, or like Apple where they keep iOS to themselves for their own hardware.
Note that even with the changed default to 'acknowledged', data is not guaranteed to have been written to the journal. So, there is still no full durability in writes (by default) and there is a chance data might be lost (e.g. a mongod instance crashes).
Only 8 were sold, 4 to one guy to decorate his new home in Chicago. I bet he's happy.
segment.io needs more pure black. It seriously looks really dull.
Wow its not often you meet a fellow Somali!
Paul Phillips explains why he lost faith in Scala and left Typesafe [Slides]
I think being able to have flexible data storage with indexing is where they are better than most other options. There's something to be said for some of what they do offer. I was able to replace the search system for a site that used SQL to MongoDB, which often includes geolocation, it works fairly well, I had considered using a ElasticSearch, or something similar, Mongo was a better fit.

Today, I would be inclined to use PostgreSQL with JSON support, and some triggers to update an aggregate search table, or look more seriously towards RethinkDB.

With any NoSQL system you give up something.. you just need to be aware of what you are giving up, why and for what gains.
2G Mobile Internet Rates Hiked In India; No Consumer Consent For Plan Changes
I've heard this argument before, but I've never really understood it.

Aren't the mandated exams extremely easy? Isn't the barrier to pass so low that they don't really matter that much anyway?

Why would this be that big of an issue?

I'd also assume that having some sort of standard by which to judge public education is difficult, but I can sense the need for some sort of standard. I went to public school, and while personal anecdotes aren't that valuable - the quality of teacher varied wildly from great teachers who made memorable impacts to teachers so damaging I still remember how horrible they were years later.

If standardized testing is the issue then what's a better way to work towards improving it? Better teachers? Being able to fire bad ones? It's a complex problem.
I go to an Engineering school, and there are only two classes that use C and are required for my CS major.
The first one is the second programming class we take and is three quarters java and one quarter C. Pretty basic stuff.
The second class is Operating Systems, and is C the whole quarter.
I'm pretty sure those are the only two required classes that use C. And I didn't have to take the first one cause I tested out of it with AP credit, and I didn't do C in HS. So some people will only take one class in C when they graduate.
As functional_test said. Also note that this e.g. depends on how long lived your data is.

(An update routine can be run at any point with low use like Xmas, etc. This is potentially neat, depending on use statistics.)

I'm not saying this is a common thing, but the lack of joins makes the data a bit more flexible -- this can't be too much, if nothing else because then the Javascript will begin to break.

(I do think there are much more use cases for nosql than as a Memcached with more features. Where an old job used MongoDB wasn't one.)
After the Jobs Disappear
Certainly at the school I went to you had quite a lot of choice over what courses you took. I imagine it would be quite possible to get a CS degree without ever touching C, especially if you took either a more math/theory approach or a more UX/HCI approach to your degree. Of course it was equally possible to spend half your degree writing operating systems and programming micro-controllers in C and assembly if that was your cup of tea.

Basically CS is a huge field and any assumption you make about someones skills just because they have a "CS degree" is almost certainly false to a greater or lesser degree.
> But honestly, why can't we just start giving IQ tests?

It's illigal. Or at least very very legally questionable.[1] Theoretically good proxies could be attacked in the same way, but there's a difference between doing something that could conceivably be the basis of a lawsuit and doing something that the Supreme Court has specifically ruled on.

[1] See Griggs v. Duke Power Co. (1971)

http://finduslaw.com/griggs-v-duke-power-co-1971-401-us-424-...
Corporate open source: Intellectual property and the struggle over value
The magic quote:

One major problem slowing repairs, people close
to the program say, is that the Centers for Medicare
and Medicaid Services, the federal agency in charge
of the exchange, is responsible for making sure that
the separately designed databases and pieces of
software from 55 contractors work together.

We're talking about integrating a slew of both legacy (think decades old) and new (think untested) systems, many of which don't have half-decent APIs to work with (I'd be willing to bet there's at least one "database" in there somewhere that consisted of an Excel workbook on a shared drive, perhaps with an "API" of a paper form and a fax number), and many of which almost certainly weren't built to scale to consumer web traffic. Steve Yegge's platforms rant comes to mind here, and from talking with some of my federal employee friends about the challenges they face, get to root of the problem. Building protocol-centric services from the beginning goes a long way towards fostering interoperability.

More broadly (and apologies for the non-HN bent to this), the project serves as an example for the utter shitshow that is the United States healthcare system. The exchange is intended to serve as an abstraction for the process of figuring out what public and private options are available to you. The motivation for building the exchange was "Hey! Figuring out what options exist for healthcare is complicated!". Of course, building such a system doesn't make the complexity go away - it just makes it someone else's job. Perhaps that this determination is so complicated that it requires a ridiculous system is an indication that we're "doing it wrong".
TL; DR: "No new syntax features are planned for Python 3.4."
If your program is expected to operate in a pipeline, as most UNIX programs are, shouldn't you always check for printf returning an error? For example:

yourprogram | head -100
Exactly. "Tell me about your last project" can easily turn into a 2 hour conversation with any developer who has built anything of substance. It will tell you everything you need to know about them.
[selfless plug]
I wrote an introduction to AWS as an e-book here
https://gumroad.com/l/HGlv

But it mainly serves as an architectural overview though.
RMS is satisfied with anything that has a GPL licence. He's always supported creators rights to manage projects however they choose, and sell software as they choose. Google would fall short simply because the BSD licence isn't copyleft, but not for much of what they're being accused of here...
What does Duck Duck Go do to mitigate this sort of SEO attacks?
I doubt that. There's a lot of people going into programming because they think

a) IT is akin to playing computer games all day.

b) It's easy work in a climatized office with solid pay

c) The jobs are relatively secure and abundant.

I've seen many people go into IT that would much better have been employed elsewhere, so I think that we, as programmers are not more intelligent on average than the rest of the population. I might agree that people who enjoy programming have a knack for a certain type of intelligence and problem solving ability, but I don't think that programmers are limited to the group of people that enjoy programming.
Yes absolutely. I currently cannot buy a house despite having a six-figure income for 4 years, money in savings, and having no debt save my student loan. All because of bad decisions I made in years past.
>Percentage of market share is not a clear indication of monopoly

True, and the reason is that a 30% UK-wide or a 50% Europe-wide market share can easily turn out to be a 100% market share in many local markets. Tesco defended itself by saying that 98% of consumers have access to five different super market chains within a drive time radius of 30 minutes. Make that a more realistic 10 minutes and the picture changes dramatically.
One specialist said that as many as five million lines of software code may need to be rewritten before the Web site runs properly.

In comparison:

Windows 95 had 15 million lines of code.
Windows 98, 18 million
Windows XP, 35 million

http://www.nytimes.com/2006/03/27/technology/27soft.html?pag...

Luckily they have about 8 weeks.
But it means that they can learn quickly.
Google Search is broken.

Even Verbatim search starts to look fishy.

Search for 'engine oil' and you will find 'health benefits from using fish oil'. I'm tired.
Isn't this thread about non-serious use? Pretty much everything I see here is about how MongoDB is only suitable for prototypes, how it doesn't even guarantee writes, how they just want something quick & dirty to build a MVP with. The parent poster asked for something to replace MongoDB with - if the use-case is prototypes and "web scale" startups that don't have users or a product yet, I think a single server with in-memory data structures is a perfectly adequate starting point.

If you do get to the point where you need some redundancy (and don't yet need to scale horizontally), you can proxy all writes to a second server running the same codebase, have it update its in-memory data structures in the background, and hot-swap it over if the master dies.
What if all your most relevant work is owned by previous employers? Restricting hires to people with decent personal projects and/ or extensive open source contributions isn't ideal either.
>When people assume MongoDB was similarly designed with their best interests in mind, that's when things go wrong.

No, I just assume that a database has a similar set of features as other databases have had for decades. Mongo does not; it is clearly the exception - and for possibly nefarious reasons, as well.
>Most of the examples of Google closed apps that are not part of the AOSP release are in fact apps that are based off of Google data-center services. Would it really help Samsung if the source to the Gmail app was open? Since Google controls the server side, and the client-server protocol, it limits the amount of innovation they can do.

I don't think Google's development of their own services is issue here. The issue, in my understanding, is that Google ties its services to Android under "Android compatibility" label.

Skyhook is a great example (the article mentions it) - mapping is important for Google, and Google literally pushed the company out of business by strong-arming manufacturers to stop using Skyhook services.

Can, say, Samsung make a deal with Yahoo to drop gmail, include only Yahoo mail on their phones and still pass "compatibility" test in Google, and have access to Google Play store and the rest of the services? Can you imagine HTC phone with Nokia maps? (speaking of maps and Nokia, anyone is quick to point that Nokia made a huge mistake not betting on Android as Symbian replacement. And couple of months ago we saw that mapping is so important to Nokia that they're ready to let negotiations with Microsoft fail just to keep mapping in their hands. Does anyone thinks that Nokia would be permitted to make Android phones with Nokia maps?)

The fact that Google services are (mostly) better than competition isn't relevant here - back in the day Internet Explorer was way better than Netscape Navigator, but that fact didn't made MS actions any better.
Politics were allowed to trump project management.

“One highly unusual decision, reached early in the project, proved critical: the Medicare and Medicaid agency assumed the role of project quarterback, responsible for making sure each separately designed database and piece of software worked with the others, instead of assigning that task to a lead contractor.

Some people intimately involved in the project seriously doubted that the agency had the in-house capability to handle such a mammoth technical task of software engineering while simultaneously supervising 55 contractors. An internal government progress report in September 2011 identified a lack of employees ‘to manage the multiple activities and contractors happening concurrently’ as a ‘major risk’ to the whole project” [1].

It is speculated that "facing intense opposition from congressional Republicans, the administration was in a bunker mentality as it built the enrollment system, one former administration official said. Officials feared that if they called on outsiders to help with the technical details of how to run a commerce website, those companies could be subpoenaed by Hill Republicans, the former aide said” [2].

[1] http://www.nytimes.com/2013/10/13/us/politics/from-the-start...

[2] http://www.politico.com/story/2013/10/obamacare-aca-website-...