skysight-inc/HackerNews huggingface dataset:
We deal with maps a lot, and I usually ask this one: assume a matrix. Fill the matrix with numbers, so that the outer 'ring' of numbers has the value 1, one 'ring' more to the center has the value 2, and so on. To visualize this, imagine that this matrix represents a height map, where each number represents a cell in a surface, and the value of the number is the elevation of the area of that cell. The result should be a height map of a pyramid. To make things easier, assume that the number of rows and columns in the matrix is equal, and that that number is uneven.

Followup-questions may go into the direction of what if some of the assumptions are loosened, or what are the performance implications of several possible solutions, or how to do it when iterating in whatever is the most optimal manner performance-wise considering the storage implementation of the matrix (avoiding cache misses or disk seeking etc.).

I've only had a single person ever pass this test, out of 10 or so interviewees.

Another one was where a colleague of mine drew a car on a piece of paper and asked the candidate to explain how he would design a class hierarchy if one were to model a car in OOP. His answer was to have a class 'rectangle' and two classes 'circle' (referring to the box and the two wheels my colleague drew on the paper). Seeing the incredulous looks on our faces, he then proceeded to an unintelligible story of 'has-a' vs 'is-a' as it related to the point in the middle of the circles, and how a 'point' somehow 'was-a' circle except that it had room in the middle. True story.
Never under-estimate the ability of a stressful situation to completely decimate your ability to perform as hoped, regardless of programming ability.
Darwin Among the Machines — Letter To the Editor of The Press Christchurch, 1863
Engine Yard Local
But the specification is to print the number, not the character with the character code corresponding to the number. So unlike your "correction", his code does what it should.

Admittedly, having a variable that contains either an integer or a string is atrocious programming style, but some people do actually like languages that allow that, so it is par for the course in the given situation.
Are you suggesting 11/15 i.e today at 3pm or Saturday 11/17 at 3pm?
Ray Kurzweil on the future workforce
Does HP's opinion about anything count anymore?
it's kind of funny that he puts on a bit of a mock indignation when he talks about getting his organic traffic killed yet goes on to explain that he was serving unoriginal ad farm content loaded with affiliate links. duh?

wouldnt a month long seo engagement working for someone with real products and/or content pay similarly and would have the bonus of not being completely without redeeming value?
edit: In order to avoid overwriting output, the solution should read...
if !multiple_of_3(i) && !multiple_of_5(i)
output << i

No. Though output << i.to_s will produce the same result, his code is correct. And yours isn't if you do output << i

1. If not a multiple of 3 or 5 or 15, output = i.

2. If a multiple of 3, output << fizz.

3. If a multiple of 5, output << buzz

4. If a multiple of 15, "fizzbuzz". Already covered in 2 and 3 owing to <<

Apparently people mess up fizzbuzz even when they know it:)
Hell ya. Haha
resizing and rotating the shapes that contain that text

Maybe it was hardware acceleration in the particular machine with the particular video driver you use?

Can you try the test on an entirely different video setup just to prove it can get through, even if the numbers cannot be compared?
I teach math, and I am definitely showing this to my class today! I am pretty sure this will help some students make sense of prime numbers for the first time in their lives.
From section 6 of LGPL 2.1: http://www.gnu.org/licenses/lgpl-2.1.html

""" For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. """

I believe this makes #1 insufficient, (and by reference, #3, #4, #5) - as that requires apple to also distribute the material needed to sign the executable for your specific phone (as an end user) if they give you the executable signed for your specific phone.

Do you have reason to believe otherwise?
The solution is to logout, then it works as intended.
Yes. However, you have same issues with DB tables receiving tons of inserts/deletes/selects. This is the worst possible DB load :)
Not sure what to expect, really. Checking email, checking HN, and keeping my phone charged. :)
I'm surprised. Maybe marketing to the wrong audience? I told 2 people, my wife, and her sister, and they both became hopelessly addicted. Neither are techie people at all.
If you someone didn't realize what indexes do then they were using a technology they had no idea about. I love Mongo but its users tend to be clueless.
I don't work in the mobile-games space myself, but it feels to me like the real problem here is the massive collapse in accepted prices that market has seen.

If people were willing to spend $10 on mobile games -- which is still 80% less than what AAA titles on console and PC cost! -- the "hit-driven" model he describes would be much more tenable. But when everything has to cost 99 cents there's just no way for anything other than a truly massive, once-in-a-lifetime hit to be worth it financially.
Is it just me or does his "sample" program look needlessly complex ? Does he really need to create all those function definitions ? I'm not super familiar with ruby but those ARE function definitions - right ?

Since when is it good programming practice to have functions for every little thing ? (I'm picturing myself scrolling or jumping around in an editor to figure out what exactly the call does). This is like doing hello world with a function. Or having a function to add two numbers. Yes, sometimes it's necessary for syntactical clarity but in this case it just seems like overkill.

Also why are some people on HN talking about edge cases to FizzBuzz ? There are no edge cases that I know of unless you talk about the number zero - which isn't part of the question.

EDIT: Why the downvotes? I don't see why trying to discuss what's clearly a programming related problem on HN brings you downvotes ? Interesting.
The stewards of vision and culture
10 things never to do with a relational database
Israel military Twitter account suspended amid Gaza conflict
Initially I found the model you describe as repulsive. Could there be a future in games that were actually somewhat enjoyable to play? Or would that all be well optimized at manipulating you through a combination of impatience, greed, and misery to hand over real cash to keep going?

After thinking about it more, this model is just in its own little boom cycle, and it will go bust too. I've played some of the top grossing in-app purchase games on iOS and they are down right aweful. The audience that is shelling out this money are "newbies" to one degree or the other.

Just like people who sit in casinos pushing a button all day, the audience for these games will never disappear. However, the market for normal games will not vanish. Players will get burned out on these things a lot faster, because a) its on their phone not in a distant casino and b) they don't win money playing them.

I think Valve has the right model, sell in-game items that are not mandatory in order to play the game successfully.

At the end of the day, your player has to want to play your game. If I developed games, I would be asking what keeps a player around for years rather than how do I monetize the player over the long term.
Meet Quiet LA: A new open-source base map, and the lessons we learned making it
Today's Los Angeles Times features an investigative report that found wide geographic disparities in how quickly LAFD rescuers deliver aid in response to 911 calls. http://lat.ms/W8mXMy

It is accompanied by an interactive map that allows Angelenos to look up response times where they live. http://graphics.latimes.com/how-fast-is-lafd/

I work on the team behind the project. To coincide with the release we are open-sourcing our map's base layer, which was made using MapBox's TileMill. http://datadesk.latimes.com/posts/2012/11/introducing-quiet-la/

I'm posting it here because I'd love to share the lessons we learned making our own tile set and hear from the HN community on how we might improve it and our development methods.

Thanks,

Ben.
In both examples, concentric circles are a pretty good approximation. Considering that the 15-minute walk area will have high variability due to walking speed and traffic lights, detailed contours just give a false sense of accuracy. Like a bathroom scale that reports your weight to nine digits.

Don't get me wrong, I love travel time maps in the right context. I actually made an interactive travel time map for transit in Toronto. It only works in Chrome but can be found here: http://ttcvis.s3-website-us-east-1.amazonaws.com/

Thanks for the link in the edit, I love write-ups of data visualizations and from a quick skim this looks really interesting.
Some comments on Wired are hilarious :

# Tired of hearing you cry about getting hacked dude. Get over it. #

#This guy is the laughing stock of our organization, he's almost achieved meme status. This guy is a "technical" writer at Wired for god sakes. A magazine I've been reading since almost Issue 1.

He's comes off as if he's been traumatized by the experience, like he's survived some sort of violent crime. It's an insult and he just keeps milking this experience over and over again.

I've been working in IT Security for almost a decade, his experience is trivial compared to some of the incidents I've worked and seen.

Maybe he's just milking his tale as link bait, who knows, but I'm tired of hearing him whine.

Grow a pair and move on.#

#"Tech writers" that don't backup or protect their data obviously chose the wrong career. Honan is a bigger joke than Wired has become.#
The normal definition of refining grains includes milling and sifting, both of which are ancient. They extend the shelf life of grains, among other benefits.

You are correct by your narrower (and unconventional) definition. Sugar has only been common for a few hundred years.
If you don't understand why others have failed, how can you claim to even understand the problem, much less provide its solution?
Google backs Iowa wind farm, has put close to $1B into clean power
Perhaps what you're experiencing is the Dunning-Kruger effect: that people who are unskilled frequently rank themselves as more competent than people who actually are skilled.
Today's Los Angeles Times features an investigative report that found wide geographic disparities in how quickly LAFD rescuers deliver aid in response to 911 calls. http://lat.ms/W8mXMy

It is accompanied by an interactive map that allows Angelenos to look up response times where they live. http://graphics.latimes.com/how-fast-is-lafd/

I work on the team behind the project. To coincide with the release we are open-sourcing our map's base layer, which was made using MapBox's TileMill. http://datadesk.latimes.com/posts/2012/11/introducing-quiet-...

I'm posting it here because I'd love to share the lessons we learned making our own tile set and hear from the HN community on how we might improve it and our development methods.

Thanks,

Ben.
If you're so stressed you can't write fizzbuzz in an interview then how are you going to deal with any workplace stress?
You do something that isn't quite covered under a strict reading of the regulations that are in place, then you hire a good lawyer.
Find all duplicate entries in a list, with Big O.
Yes, because it's a user-visible string. It'll appear in the firmware boot menu.
A nice play to refine their map accuracy with Waze-style gamification (plus advertising, of course).
Awesome, simple is not simple.
The faster version looks like it might not be numerically stable; if sum(l_quantity) is greater than the maximum value that can be represented it would overflow and give meaningless results. Given the arrays mentioned by the average function, it could also be maintaining a heap and adding the numbers from smallest to largest for more stability.
Here is another fascinating visualization that I'm sure will ring a bell for some of you. For those that haven't seen this type of explanation, it's really neat. Eduardo's explanation both easy-to-read--hey, he's a writer--and detailed.

http://www.sievesofchaos.com/
Might wanna read this one too:

http://gigaom.com/cleantech/google-backs-iowa-wind-farm-has-...
Yes. Who would give functions such cryptic names as "multiple_of_3" or "multiple_of_5".
It's the OS installer that sets the string, not the bootloader, so it's not a problem for signing.
Adobe Edge Inspect: Preview & inspect web designs on devices
'Vein readers, on the other hand, are fast and accurate. “Finger veins are also very difficult to steal,” Kitayama points out. Even if a thief were to hack off your hand to fool a vein scanner, he’d have to keep all the blood inside your severed appendage to make it work.'

http://spectrum.ieee.org/biomedical/imaging/the-biometric-wa...
It's funny, if Hacker News was the product of a startup it would have been redesigned, A/B tested and tons of features/tweaks added. Any growth would be seen as the result of those actions, however HN has grown anyway despite being stagnent for 5+ years.

Makes you wonder what all the software development really achieves, or if HN would be bigger still if they had done that - or if PG wants HN to be bigger at all.
Well, stop reading the LGPL interpretation, and start reading the LGPL itself - it is written in English (rather than legalese) and is very clear on most subjects.

Specifically, it cares that the end user can "swap out" the LGPLd code for their modified version, which is not available in the iOS AppStore regardless of compilation vs. derived work interpretation (a distinction without difference if I understand it correctly).
I'm not sure. My old account became blocked for some reason. I never submitted anything bad or submitted often. That said, I've never posted with this account yet.

The way I realized I had a blocked account was sending a link to my submissions page to a friend who couldn't see it.

The page is http://news.ycombinator.com/submitted?id=[your_name_here]
I capped it at 10000 to prevent someone from accidentally leaving it on fast-forward and wedging their browser. Try this if you want to go farther:

http://www.datapointed.net/visualizations/math/factorization...
Pleasingly some mobile networks in the UK are doing this, but that's only because they have an incentive to retain customers. I don't know of a good competitor to Skype. Google Voice, perhaps, except it lacks subscriptions and a nice native iOS app (to my knowledge).
Glad to read the story that all has been resolved now! :)
I agree, let them use a computer, however I would just yank out the ethernet cable. I don't want to see how well someone can Google.
What would be safer here? Paying PayPal or credit card, assuming there is some kind of data leak?
This is great research. However I completely disagree that this work supports their conclusion statement:

> In summary, partitioning SQL queries into smaller commutative ones helps you get linear performance improvements as you scale out. And in some cases, they may help you get even more. :)

The time difference between avg() and sum()/count() is merely a performance tuning opportunity in this specific case in specifically Postgres. MySQL, Oracle, etc. are going to have completely different implementations of these functions, and hypothetically could be the exact OPPOSITE performance. However this is not to degrade the insight presented in the actual body of this blog post.
It sounds like his website was pretty popular. People came to his website looking for something, and left having found it. That sounds like enough "redeeming value" to me.
Most of the games I make are free to play and have a resource that can be earned as well as paid for. This allows the player to buy time. Time that would have been spent earning the resource. So, if you are a patient player you can play free with ads, if not, buy some of the resource, and I'll remove the ads. This model has worked very well.
from the first 'quora' link

"Petr almost never submits any solution without having a rigorous proof even when good mathematical intuition is enough and the proof is hard."

wow! reading this brings home how much I still have to learn. Humbling.
The Hazards of Growing Up Painlessly
Apology granted :).

This really isn't an issue of what should we be doing and is what we're doing enough. That's a larger question and applies every tragedy.

As a business (and a startup) we aren't involved in any specific charitable organization. This one seemed to align with our goals as a company. And even more as an open source company who received funding from the Shuttleworth Foundation.

Will be gain publicity? Probably. I hope so. But that doesn't mean we can't offer our services to people who might need it, even if it's not the most important thing on their mind right now.

So yes, I agree with you philosophically. But pragmatically, not as much.
> Also why are some people on HN talking about edge cases to FizzBuzz ? There are no edge cases that I know of unless you talk about the number zero - which isn't part of the question.

I don't know about you, but I sure see it as an edge case.

# This is incorrect due to edge case.
# If divisible by 3, fizz
# If divisible by 5, buzz
# If divisible by 15, fizz buzz
# Else number
1.upto(20) do |i|
if i % 3 == 0
puts "Fizz"
elsif i % 5 == 0
puts "Buzz"
elsif i % 15 == 0
puts "FizzBuzz"
else
puts i
end
end
Fizzbuzz is unrealistic? Really?

It's a for-loop, some conditionals, and printing. If you can't produce this in a few minutes, you can not program.

The point isn't to make a perfect, working fizzbuzz in the first try, the point is to find out if your applicant can program at all in the first place.

Ridiculously enough, there are people that can't program that would pass a normal interview with flying colours, but who utterly fail at fizzbuzz, which makes it a very valuable tool.
The original source is Planet Money on NPR:

http://www.npr.org/blogs/money/2012/11/15/165143816/why-coke...

I have no idea what "weku.fm" adds to the mix
Prototyping iPhone apps on paper with POP
How To Hire Hackers: A Realistic Guide For Startups
HP’s Todd Bradley: Surface is no competition to us
Thanksaving
How about this swedish self cleaning toilet: http://www.youtube.com/watch?v=o5ul7prwoiM
I mostly agree with your comment except for the first sentence.

The problem is that while Arafat officially recognized Israel in 1993, Israel never reciprocated. Would it still be war if Israel recognized the right for a Palestinian State to exist, and how this Palestinian demand for a right to have a state can be denied by people who asked for the exact same thing and obtained it (leading to the existence of Israel) a few decades before ?
I'm not sure why this was posted on SEOMoz. Seems to me Scott is looking to get quality links any way he can due to his penalty from spamming and buying links.

While I find the post informative, I am extremely disappointed by his methods.

More can be found on Reddit: http://www.reddit.com/r/IAmA/comments/12wyk7/i_run_a_black_f...
Hmm.. perhaps. Still it seems a wildly bold to overestimate yourself by such a large amount. We're talking about the absolute basics here. I mean, I look at job postings and come away depressed after realizing I don't recognize half the stuff they want 5+ years experience in. So what does for-loop-not-knowing guy think we he sees the same requirements?

I dunno. I just think it's strange that they even get to the interview stage.
I think part of the problem is that IE is the browser of choice for the Dept. of Defense. If you've ever worked for the DoD, you know that updates, etc. take forever because of security concerns. I wonder if that relationship informs IE's decision to hold back on their browser capabilities.
What We Learned from Free the Files—and How to Make It Better
>a look on the Opera website and now it says "Faster & Safer internet" yet it performed worst on this test. //

Which page were you on, the front page of the website doesn't say that to me?

My first instinct would be that they're referring to their "turbo" implementation and their large mobile install base, cf http://www.opera.com/browser/turbo/.
Going Free – Results and market observations from App Rewards Club
Interview stress and normal workday stress are completely different beasts, in my experience. Coping with one is not always an indicator of the ability to deal with the other.
how productive is everyone today? my email client is getting a lot of attention and my dev. env. is not getting much use. LOL. Good Luck to all.
I like the problem of printing the leap years (or deciding if a year is leap). It's the same as FizzBuzz in the core (though a bit more complicated), but presents itself as something real, not like an artificial task. And as a bonus, you can see if the applicant knows the rules for inserting leap years (there are no negative points for not knowing that, only positive if you do).
> they used my Apple account to wipe every one of my devices, my iPhone and iPad and MacBook, deleting all my messages and documents and every picture I’d ever taken of my 18-month-old daughter.

If having an Apple account gives that much control over your data, then that's your own fault for having one in the first place.
What Can you Do to Cater to this New Market?
Reminds me of a test in my intro computer architecture class, where the prof was making the key while we were taking the test, and partway through was like "This is taking me longer than I thought it would, so you guys can take this home and work on it."
So, when production is down, and clients are calling, and revenue is lost, it's okay to say "I'm too stressed to fix this bug?"

I'm sympathetic to complaints about overly technical interviews (I've bombed a few in my day because of stress and/or ignorance), but as others have pointed out, this is FizzBuzz. I'm generally very bad at interview/algorithm puzzles, but I could even figure this one out pretty quickly.
> You can have perfectly encrypted communication that no one can eavesdrop on (not even theoretically).

That is an interesting observation because there is a flip side to it. I can sell you some ordinary looking gear that contains a quantum entanglement based eavesdropper. You can have your device in a cave 20 miles below the earth's surface in a bunker running off diesel generators, with no connections outside the bunker, and here I am, watching everything you do.
Ron Paul's Congressional Farewell Speech
This is awesome. Anyone have a pointer to Win2003 Server (ie7)? We have a bunch of folks there with a hard-to-knockdown bug not showing up elsewhere. Our solution so far has been to say: Upgrade the OS.
Worse than that: from my end on Chrome (beta) running in Ubuntu, the bars appear to stay in their original location when scrolling which makes them cover content and generally bug out. I could not read the article at all!
I think you could save time by showing people code like this:

int x=5 % 3

and asking "What is the value of x?" Because a lot of jobs are CRUD and that form of programming rarely involves the modulus operator.
Mozilla Releases Annual Report For 2011
It's like a hacker version of this: http://www.amazon.com/Withings-WiFi-Body-Scale-Black/dp/B002...