skysight-inc/HackerNews huggingface dataset:
That's all true. But there's a dilemma we can never completely avoid. The more expressive power a language gives you, the more productive you can be when you really know the code in and out. The same expressive power will make it more difficult for others or for your future self to understand what the code does.

It's always going to be a trade-off. The more focused you are on one piece of code, the more it makes sense to use an expressive language. The more you switch between projects, the greater the developer turnover, the dumber the code needs to be in order to stay close to maximum productivity.

If we really want to have an impact on productivity, we need to change how teams are put together and stay together.
Yes, personally, I wouldn't do anything like this for less than a few thousand unless for some reason I found the assignment intellectually interesting.
Interesting piece, but i wonder why did the author felt the need to add the part regarding muslims integration in western societies. The profound divisions between muslims and non-muslims is present throughout the world. I don't really see the link with french idealism.
The syntax vaguely reminds me of HLA:

https://en.wikipedia.org/wiki/High_Level_Assembly
Building codes are there for a reason. Have we had our equivalent of Tacoma Narrows or Triangle Shirtwaist yet? The event that Schneier said would be the "privacy Exxon Valdez"? Possibly the OPM hack qualifies as the latter.

Provided we get codes that recognise the difference between personal, small business, and large business, it won't be so bad.
Yes, that's the one :-)
I suggest marking the link that is not no. 1 as a duplicate then.
I agree that the Harry Potter airplanes analogy is dreadful nonsense but Nintendo are definitely in the wrong trying to claim that they're the only people allowed to perform their works in public.
My hunch is that a translation is obviously a derivative, therefore you cannot.

Edit: of course now you can, but before this ruling you couldn't. Or to be pedantic, you still can't, but there's noone to stop you.
I would qualify this better. Most people take a day off for an interview. If you explained to the interviewee that they were to turn up at 9am, would be given a small project using X technologies, to be completed within the day to be ready for a code review at 3:30 and presented to the team at 4pm. Lunch would be provided and they would be paid for their time.
Anything awful the NSA do for patriotism (however misguided), Palantir do for money.
We did not have detailed enough monitoring for this dimension (membership size), and didn’t have enough capacity allocated to the metadata service to handle these much heavier requests.

As much as I admire and rely on AWS' scale to build architectures and fault tolerant applications, it can't be ignored that the marketing towards going "full cloud" doesn't take into account how hard it is to build resilient architectures in the cloud.

I see those disruptions events as stop signs: when the cloud itself fails to scale, I rethink a few decisions we all make when surfing those trends.

http://yourdatafitsinram.com/ also comes to mind.
What makes you say this? It's not even remotely true.
"I suspect that that might be a secret feature."

Yes, agreed. It may also test, if you are really serious with your application. If you are, there will be a way to free some time.

This goes both ways: companies blow time to interview candidates, who just want to see how far they get. Or who plan to negotiate better terms with their current employer (happened to us recently, we paid flight, hotel, lost 3 months and a whole application round).

Candidates blow their time by implementing stuff for companies, who just want cheap code or who want the best solution for a problem they cannot solve, or simply re-decide their plans after you invested your time for the coding.

Both sides should find out how serious the others are. Payment for code is a good step. But if you pay, you can also ask for something, right?
Megabots – Real Life, Full Scale Fighting Mechs [Interview]
A presumption of guilt? Better DRM their currency.
If the stock is high, then stock options are unappealing. Basically just illiquid cash.
It's five words, you forgot the "dear"
Another way to do this is to already have an existing mini project with a bunch of unit tests.

It should be functional but contains known bugs, of which, some are easy for junior developers, and some are much harder for senior devs. Whilst I don't like checking broken unit tests into source control, leaving a broken unit test in the source code is also another good test of the candidate, to see if they can fix the code to match the assertion.

It would also contain methods that a senior dev should be able to look at and then appreciate that there is a optimization that could be made to improve performance.

Everything is in a private Github repo that the candidate can be given access to and a week to play around with, giving people time (some people have families and busy lives) to complete.

They should issue a pull request when they are finished and their changes should be well documented.

Most companies have an existing product and developers are needed to support, fix and extend those existing products. It isn't often developers get greenfield development. They need to fix code written by other developers.

The really good developers:

- figure out how to clone the repo

- comment their changes well

- fix all the bugs

- figure out how to run the unit tests

- fix the unit tests that don't work

- optimize the poor performing methods

- manage to issue a pull request

If the developer is junior, then they might miss a few bugs and the potential optimizations, but if they can get to the point of issuing a pull request with some bug fixes and good documentation, then they have done pretty well.

Most importantly, check the developer's knowledge beforehand. For example, they might not have had Git experience before. If they can figure things out for themselves, then it shows they can solve things for themselves without someone else having to hover over them constantly.

Finally, if they ask questions to validate their assumptions, the developer isn't going to be one of those devs that goes off on left-field for 3 days, only to find out they got the wrong end of the stick. People that think they understand but don't, are dangerous and expensive to your organisation in the long run.
Anna Creek Station
Cassandra Rewritten in C++, Ten Times Faster
It didn't render on my mobile.
great thanks both for the tip.
Tips to slow hair loss
>I also made a short (and now defunct, though I can rehost it) web-based puzzle for people on /g/ to learn a bit about encryption. Starting with a simple ROT13 and working up to audio stenography.

Durrcada? If so, I found it very fun even though my attention span is too short for that sort of things.
This looks to me like making C++ more "rusty" which is a good thing IMHO, exactly for the reason that I don't need to bring all my existing code to a new language but instead can make it 'safe' in incremental steps.

There are many good reasons to evolve a language instead of inventing a new one, the situation is a little bit like with OpenGL: 'modern OpenGL style' has nothing in common with the original OpenGL, and many ideas have been introduced in past versions which are now considered bad or dead. Still I can take the OpenGL Gears sample (which is who-knows how old) and run it on a modern GL driver.

This is both a good and bad thing. The bad is that it is confusing to learn OpenGL if you haven't been following its entire history. Googling OpenGL questions will give you 10 different answers, all correct, but only for a specific time in its history. The good thing is that this approach allows me to bring a large piece of GL code incrementally to modern standards without having to rewrite everything.

Of course there are the new fancy 3D APIs (just like there are fancier statically typed, compiled languages compared to C++), but in general, people are underestimating the risks of rewriting a large piece of code (this is still just as true as when it was written 15 years ago: http://www.joelonsoftware.com/articles/fog0000000069.html)

What I would like to see in C++ is to have very detailed control over language features and enforce coding guidelines in my own code base. The more fine grained this control, the better. Something like 'don't allow pointer arithmetics', 'don't allow C arrays', 'don't allow multiple inheritance', etc... Going with your example: as soon as the rotten meat layer is reached, the compiler would no longer accept the code unless you specifically allow it with an exception to the 'modern rule-set'.

A combination of such rules could result in a 'safe subset' which would have the same compile-times guarantees as Rust, and if the rules are violated, the compiler will complain (I think/hope this is what the presentation is mainly about).
Plenty of shops insist on strict test first development. If this is one of them, then why wouldn't they insist on it in their hiring process? As long as it's an explicit requirement of the assignment, what's the problem?
Looks pretty but I can't find pricing information.
"they're still an insanely large target"

But they seem to be orders of magnitude better at keeping it safe than, let's say, your government or health insurance companies that have orders of magnitude more data than Google.

I trust more my data with a business than with a government. Business have a lot to lose by leaking or selling your data, governments couldn't care less.
It's not necessary to allocate a large stack, there is always one available because threads have their own stack, and you can switch to it at all times because goroutine threading is cooperative. In other words, if you are scheduled to run on a thread, you and only you have access to that thread stack.

Stack switching doesn't take more than a few machine instructions.

The problem with tcsetattr is that it's a library function, so you (generally[1]) need the target library in order to create a program that calls it. This is bad because in Go we value cross-compiling a lot, so we can't depend on having other people's shared libraries available in the build environment.

Syscalls, however, we know how to do them and we know what they are, so we don't need any special target library in order to generate programs for the target.

[1] On platforms like Solaris and Windows, where we are forced to use target shared libraries, we cheat a little and encode the target symbol names that we need, and we rely on standardized ELF/PE symbol resolution mechanism creating a scheme that's essentially equivalent to having import libraries available. But this is very complicated and takes a lot of code in the linker, so it's not at all unexpected that we avoid it whenever possible.
Yep, he meant "stipulated" I guess.
If you are purely looking for some beautiful datasets, checkout NASA's Datacasting website[1]. They have a large RSS feed directory[2] with a lot of data on earth science. They even built their own RSS feed reader[3][4] to download and filter the data. And I think everything is already geo-tagged.

[1] http://datacasting.jpl.nasa.gov/

[2] http://datacasting.jpl.nasa.gov/feed_directory/

[3] http://datacasting.jpl.nasa.gov/download/

[4] http://sourceforge.net/projects/datacasting/
I don't understand the disdain for technically literate people shown a few times in the article. Solving the problems is the better solution but in the face of how impossible it is due to the changing landscape maybe it would be a good idea to educate tech illiterate people instead. I think it's a viable alternative with possible positive side-effects of getting enough momentum to make legal solutions possible as well.

Additionally, sad news is that there a lot of people who don't care about their privacy or the homeless however hard you find that to believe.
This is a PR piece for genius.com; there should be adblock rules to detect these.
The point of it is: it's better than what we have now, and it's something that you can actually have (Assuming only systems that are traceable will ever be legal).
> In fact, I've been running Windows 7 with paging disabled.

You should never disable the page file, no matter how much physical memory you have. Just set it to system managed and it will usuyally sit around 1-2Gb usage.

For explanations as to why you shouldn't disable it;

https://superuser.com/questions/810170/should-i-disable-swap...

https://serverfault.com/questions/23621/any-benefit-or-detri...

http://www.howtogeek.com/126430/htg-explains-what-is-the-win...

The way windows handles virtual memory hasn't changed much up to Windows 7. Windows 10 changes it up a bit but you still shouldn't be disabling it completely.
Unless you pay your programmers by the hour, how long they take to complete a project should not matter (within reason, i.e. a weekend). Judge the quality of their code, not their coding speed.

In fact, intense time pressure has a very adverse affect on cognitive tasks.
EU-U.S. Data Sharing Deal Can't Be Trusted, Top Court Aide Says
It's amazing how frequently this seems to happen. A lot of the huge downtime events I've read about have occurred because of failures in the systems used to recover from failures.

It seems that perhaps more time/effort needs to be spent testing the systems (and the use of those systems) which are critical for handling failure. While building them, it's easy to dismiss their scaling requirements on the basis that they shouldn't ever be under significant load.
How is it any harder to do in the cloud than on a rack in a warehouse? At least you don't have to muck about with cables and phoning power companies up.
When the author doesn't understand the difference between a module system and a dependency injection system, it's hard to take the rest of what he says seriously.
No, the stack switch overhead is trivial. As explain in my other comment, Go does system calls in order not to have any dependencies on target libraries.
China spies on airline passengers with IMSI-catchers
It's like taxes. Set them to 0% or 100%, and society can't function.
Why does OEM versions of Windows even exist in the first place? How is a bloated, crapwared system ever going to be a better user experience than a clean install?
That is a fantastic idea. Have a crowdsourced list driven by users of an extension clicking "this is 100% shill". Once enough distinct people click it, the url goes on The List and is distributed to everyone who wants to use it in their adblocker of choice.
> I will purposely challenge their solution to see how they react.

> If they get defensive, it’s an immediate no-go. Remember, there’s a difference between defending which is good and being defensive which is bad. The difference is that the former is based on rational facts, the other is based on emotion.

Are you always able to challenge them based on "facts", or are you going to challenge them with your current world view? I can see someone getting defensive if your challenge is perceived as deliberately provoking.
Given they had ~300 minutes of outage in 3 years, you're looking at ~99.98% reliable in just that region. That's pretty good for a stateful serving system, and indeed you'd be pushed to do better.
Objective-C to Swift API – iSwift
I agree. Just had this come up with an interview I did yesterday. We agreed that a week for a ~6 hr assignment was reasonable. I explicitly noted that I have a family so they were aware I couldn't spend more than a couple of hours/night coding :)
Show HN: Oomni - Your services over Instant Messaging
Multirust – tool for managing multiple Rust installations
> I wonder if they use exponential backoff?

More importantly, did they use randomised exponential backoff?

Having all the retires hitting at the same time can lead to a pulses of outages until things settle down.
By using this method, you exclude candidates that cannot (or are unwilling to) allocate the time necessary to do the assignment, plus the time needed to take care of tax-related issues just to be able to write you a receipt.

In other words, you are excluding people who have a job.

Also, I fail to grasp this idea that potential candidates must prove their worth through numerous hoops to compensate for the interviewers lack of skill in judging character and competence (i.e. seeing through the bullshit).

In any hiring process not only the interviewer is interested in avoiding a bad hire, but the candidate is also interested in avoiding a bad employer. Both stand to loose from a bad choice, but that's why even the most strict employment laws allow for an experimental period.

Certain hiring requirements tell a lot about the culture of the company. Avoid sending candidates the message that you have a culture of distrust. You may end up loosing the ones you wished to hire.
Just an example: during the issue even people serving 10 ops/sec, but very important 10 ops/sec, were affected by a huge complessive load which was not their for most of the part. It's true that when you "go cloud" you don't have to manage your operations, but you are basically putting everything in the hands of other op people, and what happens to you is related to a more wide set of conditions.

So managing your stuff is hard, but you are in control and can do things in a way you believe is completely safe for you. Or you at least may incur in the same events sometimes, but perhaps paying a lot less for the same services. Or you can create your deployment with characteristics which are often impossible (a lot of RAM for each server is an example) to be cost effective in the cloud.

It's not stupid to use AWS services but is not stupid to manage your operations, either in your own hardware or at least using just bare metal and/or the virtual machines service certain providers give you, but still being in part accountable, responsabile, and in control, of your system software deployment and operations.
> but we should have posted the green-i to the dashboard sooner than we did

Use full orange or even half orange circle or something else if you want to convey 'subset of customers may have issues'. If possible move 'having issue' items to the top - this way people do not have to scroll down to see whats broken.
Well, this looks very promissing...
See linksbro's comment about the song still being under copyright, just not Time Warner's.
Looks fast.
This is a classic, even because those software parts usually are the least tested in a variety of conditions, even when they are relatively well tested. It's very hard to simulate real failures.
Would be cool if there was some small web framework you could use so you could avoid having your state in RC(RefCell)'s. Perhaps it's the Haskell guy in me but I always try to make my code have zero RC or even RefCells. I'm also a complete rust noobie, so perhaps that's not good practice at all :)
>What I would like to see in C++ is to have very detailed control over language features and enforce coding guidelines in my own code base.

Maybe something similar to JavaScript's "use strict" would be good, including the ability to restrict it to function/class/source file scope.
The author didn't really imply that it was important
You can just as well write large pieces of C++ without using pointers or heap allocations at all. In fact this is considered 'good style'. As soon as you have stuff living on the heap, Rust also needs (smart) pointers to track these heap objects, and the compiler is clever enough to guarantee compile-time safety (although I guess this is the main reason why compilation in Rust is so slow), while in C++ these checks are done at run-time (of course compile time checks would be better).
I will try it, thanks
But on the other anecdatal hand, there are plenty of devs who accept that piracy exists and manage just fine, e.g. Jeff Vogel

http://jeff-vogel.blogspot.co.uk/2010/07/sometimes-its-ok-to...
Online Marketing Analytics Insight Generation [pdf]
There ought to be a "donate the money to a charity of your choice" option for this eventuality.
Yes. I've twice been criticized on "short" interview coding assignments for not having _enough_ unit tests. I had unit tests, just not enough in their minds.

One position was CTO and the other was a Software Director position.

Tech interviews are getting crazy.
Актуально – «Vip-персона»-Особые привилегии для избранных пользователей
Interestingly, this is exactly the same method I use to weed out bad employers.

Maybe when the market's a bit worse I'll be forced to jump through one of these hoops. But right now...
It doesn't, but it's no different than using a mask these days to hide your identity.
If two people say "yea I spent two hours on this" and one of them shows something that they actually spent 40 hours on, you're probably going to get the impression that they are the better developer because their code should be better. Is that a useful comparison to make between the two of them?
Clever Cloud, Heroku Alternative, Announces GA for Its API
Yes, always propose paid assignments, otherwise you'll miss many good candidates. Many of them will not explicitly refuse, but just move your company below in the priority queue... This happened to me - i.e. I did move the company back and eventually accepted another offer. If they had proposed me the paid project (instead of unpaid one), I'd immediately started working on it and continue the process...
My takeaway was somewhat different. To me the article was saying "Gardner was awesome, Genius kind of sucks." It made me want to check out Gardner's book and share it with my daughter.
Dropbox: the first dead decacorn
Yeah, or there could be a tax-free allowance for such a thing.
My current setup blocks almost all ads by simply blocking trackers. It's ridiculous, really, since there is no targeted adblocking going on.

The only ads I see are native ones like you describe, and they're usually actually useful.
What a load of bollocks.
once you poke the ball, you'll be hit by the stench of the rotten meat inside

The whole point of this article seems to be to teach people to by default not poke the ball, unless really really needed, and in such caes do it while wearing a proper mask.

Which is not ideal (that would indeed be to start over I guess), but given the current situation probably the best they can do.
Introduction to Lua
Having a pet project for a team is a really important thing. You have some way to bond that is not so stressful, you have something to show for, some reason to spend friday nights and weekends with colleagues, can show of some of _your_ skills to potential hires, and a good chance for an interview task.
That would be an idea for an alternate ad network. Simply let website owners select ads, every week, to be displayed. Or in order to scale better, create pre-agreements for some brands.

Ad networks work by letting you select categories, but not much more. Obviously that's because they want to keep control and maximize short-term revenues.
"With the next article we’re going to introduce you to React JS, [...] that have won us over entirely."

How can you take the article seriously with that kind of conclusion.
"If they get defensive, it’s an immediate no-go. Remember, there’s a difference between defending which is good and being defensive which is bad. The difference is that the former is based on rational facts, the other is based on emotion."

And whose call is it to make that distinction? Presumably the author of the optimal-hiring-procedure #122327 that has been posted here.
Again, the reasonable expectation and misconception. When you have a remarkably elastic demand for housing (tech workers and college students WILL pay), then it signals to property owners that they can raise rates by a few ticks. Like I mentioned above, if you create a ton of prime housing stock and charge a ton to live there, then you've effectively moved the goalposts and set the new normal for rent. So while that rich person may not live in the boring neighborhood, the middle class family will have to pay more to live there because of the presence of proximate wealth.
Two kinds of People