skysight-inc/HackerNews huggingface dataset:
Ask HN: Code tests from potential employers
After applying for a position, it is not uncommon for a potential employer to sent some kind of assignment or code test they want completed before moving forward in the hiring process. I usually don't mind this sort of thing, so long as the assignment is reasonable.

My question for the community is, "What do you consider reasonable?"

How many hours are you willing to put into one of these projects?

I am asking because earlier this week I received a code test from a company I had applied for and was kind of intimidated by the amount of work involved. I'm guessing that it would take me around 10 hours of work to complete, and am not sure how to feel about this...
Either I am unqualified for the position, or they are asking too much of their applicants.
Tbh I think PGP probably failed because it's flawed the moment you move to webmail, and webmail is just so compelling from a user experience POV. I think the rest of the friction could have been overcome given enough UI candy.
I don't know how can you make this comparison. IeSF was universally condemned for that decision on various gaming subreddits and by prominent community members on twitter. In fact that controversy is the most publicity they've ever gotten. Their actual event has gone largely unnoticed, got ridiculed a bit on /r/starcraft.

It seems like you have an axe to grind.
Oops sorry, it wasn’t my intention to put your opinion in the spotlight. I just thought you had some good literature recommendations.
I came in this thread to say that Microsoft are implementing WebRTC, but when I double checked it looks like it's more complicated than that. There's an API that they want, and may have gotten into the spec called the Object RTC API, but they aren't currently planning on implementing WebRTC as existing browsers speak it: https://status.modern.ie/webrtcobjectrtcapi
What's nokia up to?
I'm a fan of statically compiled binaries for things like this. Given that I'm already treating containers as immutable once deployed, and containers (processes) aren't sharing libraries, the normal issues with static binaries are already issues: if I need to patch a library, I'm going to need to rebuild my containers and I'm going to need to replace old containers with new ones.

That lets your container build be "add this binary, add some configs". If we really want to have shell access via docker exec or similar, we could base the image off of busybox or similar to get that.

For dynamic things that resist compiling down (I'm looking at you, PAR::Packer), I can see more reason for building in a minimal distro userspace, but ideally there you're using something that's more minimal based on your use case. For example, if I run a fleet of rails apps, I might build out an image that had busybox + static ruby, with my codebase added alongside it.

The minimal distro method has very powerful up-front value, which I suspect is why Docker is focusing on it: it allows users to dive in with a familiar environment and learn to do Docker things without having to discard a lot of their previous understanding. For that use case, it is magnificent. Users can use their existing understanding of packaging, of OS tools, and of service management and apply it when dockerizing their services.

The methods I'm describing would be the next step, roughly akin to writing out a new codebase and then identifying where to optimize it. Once a user is comfortable with Docker and is using it to run their services, they can make a determination as to whether or not pushing around distro userspaces is helping or hurting them, and react appropriately.

For example: a use case where each host is running service containers in a variety of languages or where the admin knows they're going to want to interact with userspace tools on the container. In that case, basing on Debian or such makes great sense.

Another case: each host is running a collection of containers with golang binaries to crunch the last digit of pi or design the cutest protein or whatever. There's no reason to base on a full OS: build your protein builder statically, drop it in an image, and you have an extremely lightweight image to throw into your fleet.
What the URLs look like is not a concern of REST though.

Can you cite your latter point, since that's contrary to how I've seen HATEOAS explained? Many libraries do expose a browser-navigable form of the API, but I can't see how that's how it's originally defined nor it being a requirement.
When you read the examples given of super programming prowess such as making a function for repetitive tasks and bunching calls to db it gives the illusion that that is all it takes.

Hey I do all these best practices, doesn't everybody else?

Then you return back to reality of being a lazy 0.1xer and realize that there is a great deal unwritten and glossed over in these kind of general interest pieces.
Apologies, I did not mean to imply that "simpler papers" would be easier. Indeed, I suspect that depending on where you are wanting your paper submitted, it will not be possible. :(

My main thought is that as you bring in more and more libraries to accomplish things, you start bringing in more and more sets of assumptions about the underlying abstraction and these don't always hold. Somewhat ironically, I think of paper layout now as an optimization problem, akin to how TeX thinks of paragraph layout. That is, it will be somewhat iterative. No getting around that.

So, I sadly don't have any prescriptive advice. Just the observation that the simpler papers out there of Knuth's are quite a bit easier to read in source than many of the ones I have ever authored.
Something the author (me) is aware of. See the Notes section of the README (https://github.com/klarna/ponos#ref1).

The original name is based on the Greek god of hard labor and toil (http://en.wikipedia.org/wiki/Ponos).
OK, the screen filled with garbage happens the first time you use curl, then you read the README or --help, which you should have done before, you learn -o and… it never happens again.

No big deal.
> but using c-types and the c-python c-api is very kludgy

It's easy enough to use CPython extension modules via cpyext, but it's really slow.
It's just that IDE developers would want to eat as well. For some reason open-source only works for frameworks and libraries. But it works really great for them!
The GOP used Twitter to skirt campaign finance laws, CNN says
It sounds like maybe you are most familiar with GUIs or the web. Curl is a UNIX tool and doesn't work like those things. If it's the only unix tool you use, that might seem jarring.

Of course it would be a smoother experience for you if it worked more like the rest of the tools you are familiar with, but changing it would be a mistake. If curl were changed, then it would be one of the few unix tools that differs from the rest. That would make it jarring to people who use unix. Nobody wants to erode the good parts of unix and destroy the unix way just to make some commands slightly less jarring to people who don't regularly use unix.

Especially when you don't even need curl. That's the wrong option for you. Right next to the option in Chrome to copy a curl command is the option to copy just the url. Just use that and paste the url into your browser, which will work more like you'd expect.

If you must use curl, you almost certainly don't want to use "-o". That's an advanced option for when you are downloading multiple resources with a single command. You use it to provide a template for the multiple output filenames necessary in that particular situation.

If you only want to specify a single filename, then do like you would with any other typical unix command and redirect the output to a file. For example, append ">filename.html" to the end of the command.

Unix tools rarely have options to specify output filenames. They are as unnecessary as a button in a web browser that will let you "Display this webpage." Displaying webpages is what a web browser does, and writing output to a file is what a unix command does. It's just that the default file for a unix command is your terminal. Your shell makes it dead simple to pick a different one if that's what you want.
chromecast or apple tv competitor it seems
I'd say maybe half of these are actual good practices. In my experience, these are not:

I agree that keeping resource names consistent is good, but using plurals is not the only, and probably not the superior, solution.

Versioning is an idea that gets talked about a lot but can easily create more problems than it solves. Small improvements in APIs should be backward compatible and major ones should be new APIs. Whatever you do, putting "v1" in the middle of your URL is the wrong way to do it. (And so is putting "api" in your URL. It's better to keep your URLs clean of ambiguous and redundant information.)

Nesting resources is an anti-pattern that quickly creates a mess. I've learned this the hard way so please don't repeat my mistakes.

The 3rd principle of REST interface constraints is "descriptive" error messages. It is better to be clear and thorough than consistent. Consistency gets you nothing, especially if it is consistently bad.
On the other hand

> After the run-in with the academic community in the late 1970s, the NSA history asserts that Vice Adm. Inman “secure[d] a commitment” that the Office of Naval Research would coordinate its grants with the NSA.

Tor was (and continues to be) sponsored by the Naval Research Lab.
I think the plan is for Microsoft to ship Object RTC API in IE, and then to ship some sort of a polyfill on top of that that lets you talk to WebRTC over Object RTC.
The use of 401 Unauthorized is an annoying one because of a little thing in the spec: The response MUST include a WWW-Authenticate header field (section 14.47) containing a challenge applicable to the requested resource.

AFAICT, This makes it makes it inapplicable to REST APIs that do not use basic or digest authentication, at least without violating the spec for the 401 response code.

Is there something that I've missed?
I have found personally A* is particularly difficult to scale across cores because it's never a shared-nothing problem. For two reasons. One, each core has to know about the other cores' search space and avoid it (to avoid duplicating effort) so you will contend on some sort of 'visited node' cache. Two, the graph your building itself must be shared, obvs.

Are most of the interesting problems to solve always limited by Amdahl's Law? Will we never see the gains of single-core speed we saw in the last century again?
Generally speaking, for a language like Python, having only one implementation is considered a bad sign. Anything serious has multiple implementations.
More Free Lunches Could Spoil Data for Researchers
This isn't greed. It's incompetence. It sounds like they they've outfitted their planes with high-end internet connections that are typically reserved for private jets.

Don't misunderstand me, this is different from the system you use on domestic flights that use ground base stations. Singapore airlines fly everywhere and that sort of ground base station system would never work for them, so getting a connection over international waters isn't cheap.

This is like offering business class passengers a 1960 Petrus as the house red wine.
Thalmic Locks Users Out of Raw Data Access to MYO Armband
What do you think about the lens library?

I have been trying Haskell for a few weeks and this library feels strange. Also I don't really think I need the things it provides. But perhaps I just don't understand it.
So don't run it from your downloads folder, run it from the place you actually want it extracted to. You're only locked into a downloads folder if you're using a web browser, which in this case you aren't.
Reminder: The FBI’s ‘Police Homicide’ Count Is Wrong
Hackaday redesign
What niche is the store in? Holiday/seasonal store?
What surprises me in, for example, the image of the doves drinking from that bowl is how well observed the animals appear compared to the straight lines of the edge of the slab which look like something I would draw. It's like a primary school child roughed out the straight lines and then a master artist filled in the rest.

Does it speak to the ability for the mind to overrule what one clearly sees - it's almost like some sort of platonic perfectionism.

This sort of [trompe l'oeil] mosaic work seems to me now to foreshadow impressionism: an idea I find quite interesting.
HTTPie is a command line HTTP client, a user-friendly cURL replacement.
http://httpie.org
This looks really cool. I really wonder how hard this will be to embed into a site manually.
it sounds like your issues had nothing to do with MS SQL Server and more to do with system administration nightmares and with php.
It very much depends on whether it's new code or maintenance mode as well. I've managed to put out 2kloc of MFC C++ over the past two weeks for an internal test app, but that's very unusual and my maintenance work is more like 100 loc a week.

I think the most extreme of this was a colleague of mine years ago who spent two weeks bug-hunting and eventually removed a single wrong minus sign. Vital work that this metric is completely useless for.
Americans of across the political spectrum are cognizant of the fact that you have to keep businesses happy. You can see this particularly clearly at the local level. Mayors and governors in "liberal" places across the country are governing like conservatives. Why? You can talk about campaign funding or whatever, but I think the real answer is that nobody wants their city to become the next Detroit or the next Philadelphia. In a globalized world, businesses can just pack up and leave, and when that happens there are no jobs nor any tax revenue.
I call BS on this. Your telling me that you can do a avg task in one day while it would take some avg developer 5 to 10 days. The amount of information that is out there -- it would take a simple Google search or a day or two of researching to get enough info to complete the task. I am not saying that there aren't tasks that require highly specialized knowledge -- but this is pretty much not true for most jobs out there.
That's more-or-less the randomness of Hacker News in play. Which makes the analysis referenced in the post especially flawed.
Do it. I'll get involved.
first of all, congrats on shipping.
Love the minimalist look of the app, let's you focus on your thoughts.

Some mistakes you are doing: The <TITLE> in mindscope is different from the App Store title, it appears nowhere else. You should either reinforce it or drop it.

Another mistake: the app is free, but the CTA is not clear enough, you should make that easier to see.

Congrats.
The model I have seen is the family unit ( mom and dad ) have kids and those kids go out and have children without a partner. Then the grandparents are in a two income household and they provide shelter and income subsidy to the children. As far as that not mattering, it totally matters two parent households have many more options in terms of childcare and employment. The number of households where both parents have off hour jobs that are low paying is marginal at best. With two parents just by one parent staying home you can make almost as much as you would pay to have extended daycare for the kids.

So your numbers make sence. First generation Immigrants typically move as family units. They would also lack the social net to assist with kids, so they might be prime candidates for this kind of service.
I don't think we will ever be at a point in our existence, where we know what to do before we have to do it.

> It's also a task of every engineer to consider what could go wrong.

Within a reasonably defined threshold. If I have a business making rubber ducks, I don't have to design those rubber ducks with the specification that they withstand temperatures of 200 degrees C.

> Then, not in theory, but in practice, do you think we should care about the topic of the article?

I do care. I choose to not work for places that I disagree with the intent and usage of such things. I know I have the capacity and capability to work at those places. I don't want to contribute my intellect to something I consider destructive, to the best of my knowledge and awareness to do so.

But even given my choices, I never feel like I have the right answers. I always can find perspectives in where I could be wrong. I try to pick the one I consider 'least wrong'. It's not really a lesser of two evils thing, it's more reducing the probability for things to go wrong. I'm also young and probably very naive in many ways.
The title and some of the critics are unfortunate but this post nevertheless is hitting a soft spot for me. I've been through backbone & angular and I'm starting to question the necessity of a full blown framework when all I want is some structured js for each page/resource.

More fundamentally it seems the offer on js libraries are either tailored to eye-candy widgets or the big SPA. Nothing has popped in my radar as proposing an incremental step from server side HTML to MV([A–Z]) Dom/json manipulation which entices you to almost build the app twice.

What I'd really like to see rather than a client-side-solution is a server/client migration path from html to spa without being tide to one or the other

The links he included (see below) bring up the same concerns....

http://mir.aculo.us/2013/02/26/client-side-mvc-is-not-a-silv...

http://www.shopify.com/technology/15646068-rebuilding-the-sh...
My understanding is that SR doesn't go quite as far as saying 'there is no absolute time', rather it dismisses the concept as undetectable and unnecessary (and useless).

In other words, it doesn't disprove absolute time, it just dispenses with it.
If this article piqued anyone's curiosity, I cannot recommend The Oxford Companion to Beer highly enough.

http://en.wikipedia.org/wiki/The_Oxford_Companion_to_Beer

Especially if you're an all-grain home brewer, like me. :-)
Not being a biologist, I can't really say anything with regards to the hormonal advantage, though I wouldn't be surprised if it did play a part - the brains of young men and women are different, and it's likely that hormones play a role.

She does attract a ton of hate. Any reddit thread focusing on Scarlett will have heaps of ridiculous comments (in both directions). James Harding made his famous comment about Scarlett which InControl decided to white knight even though Scarlett herself said she found it harmless, and everyone on reddit took that opportunity to shit all over her.

I do think she gets about 1000% less hate than she would have if this were 1994, but there's still stupidity on both sides of the gender equation.
The article gives some motivation for its best practices, you do not. Would you care to provide some?

> using plurals is not the only, and probably not the superior, solution.

Why?

> Whatever you do, putting "v1" in the middle of your URL is the wrong way to do it.

Why?

> Nesting resources is an anti-pattern that quickly creates a mess.

Why?

Edit: not sure why the downvotes. I'm genuinely interested, but the parent doesn't contain much useful content.
Thanks, feroz1! In addition to the ephemeral messaging aspect that makes lightweight chatting fun, Moment also doesn’t require any personal information to sign up and use, instead it uses a set of unique URLs for chat room access. And, the GIF-like messages embody a richer chatting experience that I think add a lot to the interactions you can have with friends through the app.
For any kind of product search I'd go for an external index (I'm strongly biased towards ES, but SOLR is certainly on par feature-wise). Postgres is my go-to relational database and I do love it's json/hstore features, but it does not offer features such as stemming, aggregation, proper weighting or any other analyzer based features.

Adding ES as a secondary datastore just for search is relatively easy in terms of technical complexity, especially if you already have json data. The more complex part is deciding on a relevancy model, but you'd have to do that for every technology you choose.
I read the essence of that statement without the same time constraint applied to it. i.e. the type of 1000 lines you should be working on each week is the type (systems code) that enables (application) programmers to write the rest of their code effortlessly.

e.g. Rails core (system) vs people who use Rails (applications).
> Do "rockstar programmers" really work so cheaply?

Absolutely. You can find amazing programmers even in San Francisco for < $150/hr.

But the thing is that software development is a market for lemons in the worst sense. In fact I can't think of a hiring market that is more opaque. You have clients who are technologically illiterate, and then you have massive Dunning-Kruger effect from the fact that knowing how to FTP a file to a Linux server made everyone worship them as a computer "genius" from a young age. Then you have the fact that the quality of the deliverable is inherently hard to measure. If the expert software craftsman builds something that is rock solid and scalable for 10 years, it might not be appreciated as much as the spaghetti-code time bomb that a whiz kid drops on their plate in half the time but ends up requiring a complete rewrite.

Heck, even after being a professional web developer for 15 years, all I can say about myself is that I am better than average, but only because I've worked with hundreds of developers and seen that the average is not great. I have no idea really how much less valuable I am than the elites. I even suspect that context plays a big role in the relative merits of different developers.

It sounds like you're moving up the food chain in terms of being able to deliver value. Expert programmers who also understand business are thin on the ground and exponentially more valuable than either one of those skillsets in isolation. However the thing to remember is that most businesses aren't throwing the kind of cash that they can pay a programmer $250/hr. Lawyers can make that much because of the nature of the work (ie. time-limited, risk mitigation), but software people? Investment banking is one of the few places where people won't balk at those rates. There are many other profitable businesses that could afford it, if you can prove your ROI to them, but those industries (manufacturing, etc) are much further behind on the curve than ones where the competitive advantage of good software is already well understood (finance, tech).
I don't play Starcraft 2 much, or video games in general, for that matter, but I do enjoy occasionally watching SC2 casts, mostly out of nostalgia for the original game which I enjoyed quite a bit as a kid.

I've seen Scarlett's games before and while I had gathered that she is a woman, I had no idea she was transgender - honestly, a pleasant surprise, because I'm a trans woman too. I enjoyed this article, and I found it refreshing that it wasn't invasive with regards to her gender identity, while still being explicit and not just sweeping it under the rug. I'm quite happy with this kind of representation - and I'm even happier to find out that I have this in common with such a highly-regarded player.

One note to some of the commenters in this thread, though - please don't speculate on our biology like that, it's incredibly rude. She deserves to be celebrated for her accomplishments regardless of the gender assigned to her at birth.
Ponos in grid besides being the god of Hard Labour also means pain itself in modern greek
Oh, playable in the browser, cool!
Is this actually serious? I would actually really love that. Would save so much strain on my fingers and it would probably even give my legs a bit of a workout.
Lessons from curating a link blog
Assuming you're talking about my landing page (http://www.mindscopeapp.com) - thanks, those are all great points. Will act on them as soon as I get home. :)