Hacker Newsnew | past | comments | ask | show | jobs | submit | vimes656's commentslogin

Even if it's satire — which I think it should be more clear when you write about such a delicate topic — I think it represents quite well the levels of "assholiness" the software industry is reaching these days.

I think they can get away today with so many silly hoops because the supply of engineers is quite high these days, and I guess, the FAANG industry standard is the "fair" way to identify the best candidates.

Engineers now are putting up with all this because there is not much choice than to spend more time training for this kind of interviews.

No matter how much do they talk about talent, judgment, IQ or whatnot, the fact is the more you train, the better you get at this kind of interviews, independently of how capable in your day to day job you are as an engineer. Proof that training works is the whole emerging cottage industry around interview preparation that is thriving these days.

Perhaps this is a bubble that will burst at some point, but I'm afraid the bar of ridiculousness will keep raising. If any of the FAANG companies started requiring to complete a marathon in less than 5 hours, they will still find great candidates that will train hard to achieve it.

The rationalization after fact would be something like the ability to complete a marathon correlates well with the ability to deliver a project or whatever, but they are just selecting for engineers that will do whatever it takes to get the position, no matter how silly the requirement is.


It's so great the whole code is available under the MIT license.

After seeing many open source projects with paid services going for more protective licenses, like the AGPL or the newer eventually open licenses (i.e. Business Source License), I wonder what was your rationale to still pick the MIT.


thanks! we're big fans of open source so wanted as permissive licence as possible.

one of the things we spend a lot of time thinking about is how to make our project sustainable while still being as open as possible in everything we do.

a bit more details in this post "How to pay your rent with your open source project" https://plausible.io/blog/open-source-funding


It's all fun and games until someone spins up a competitive hosted service using your MIT licensed codebase.


And ..... they've switched to AGPL.


Conditions are improving in Madrid and Barcelona for startups, but in general I'd say the laws, the banks, the bureaucrats and the system in general are all very startup unfriendly.

That I think it's the root of the problem. Dev salaries don't rise because there is no real competition for top talent. Many established software companies in Spain can get away with mediocre programmers with low salaries because they operate in captive markets and the quality of their products don't really matter.

If politicians really wanted to fix this problem they'd make it easier for new companies to compete with the old ones, but they are doing just the opposite.


The tricky bit is to decide when not go to along with his demands and take a stand to not get trampled. Sometimes giving in too much makes the situation worse, other times it's the opposite.


Is this using the Facebook GraphQL C bindings? If not, what's the advantage of a full reimplementation in Scala?

I'm not implying that the bindings should have been used. I'm now considering writing a implementation of GraphQL in Haskell and I'm trying to assess whether it's worth using the Facebook C bindings or it's better to implement the whole protocol from scratch.


In contrast to some other languages, it's not common in JVM community to use native (platform dependent libraries written in c, c++, assenbly, etc.) libraries. I only saw examples of it for code that tightly integrates with the host hardware (e.g. directly uses drivers of some uncommon hardware devices) or other similar scenarios, where you generally don't have other choice but use native libraries.

I think main reasons for this are platform independence and ease of building/packaging/deployment. Also JDK (standard library) and library ecosystem are strong enough to provide pure jvm-based library implementations for most of the scenarios. JVM performance is also pretty good, so there is no necessity to write/use native libraries just to make application more performant.


Portability and easier compilation.


The libgraphqlparser project only provides C bindings for a GraphQL language parser but not an query runner or validator which often have differing APIs to feel natural in each language. Sangria implements query running as well.


Is hypervisor memory ballooning widespread in major cloud providers these days? How does it compare to bare-metal kernel memory allocation?


No it is not widespread. Underprovisioning is a bit of a dirty word too - it breaks isolation.

The Google Borg paper says they use non production batch jobs to eat the spare, so you can kill them if necessary. Cloud providers could offer this as a service in theory, although they are not really architected that way.


Exactly, the price for a driver spot is driven by demand, it's not expensive just by law.

Traditionally, getting a driver license in Spain has always been like signing for a relatively well paid and secure job for life. And moreover, there is no need for any investment learning any particularly difficult skill. This is all supported by ridiculously high fares backed by regulations.

This is not to put the blame on taxi drivers, I truly believe they are choosing a honest option to make a living. But considering that an important factor, if not the most important, for the Spanish economical crisis is the inability to adapt to a global economy, with this kind of actions, the message the government is sending is: "don't invest your time learning to code, or getting engineering degrees because we are still trying everything in our hand to keep traditional professions secure and well paid, not like those new risky technological jobs". The average Spanish programmer is in a more precarious situation than anyone with a highly regulated unskilled profession.

Here in Spain, I'm constantly seeing measures to try to maintain the old ways of living at any cost with total disregard about how the rest of the world is evolving. I'm not claiming globalization is good or bad but it's happening, and if the Spanish government keeps trying to hide it from its population with more debt, in the long term, it only means less economical competitiveness for the country and slimmer chances to catch up with the rest of the world in the future.

Defending these minority groups only means more poverty overall for everyone in Spain.


The corresponding reddit thread at /r/programming: http://www.reddit.com/r/programming/comments/1t8y6g/why_rust...


I'd love to hear more about the potential of Nix for language agnostic isolated development environments: https://nixos.org/wiki/Howto_develop_software_on_nixos

Could it be a unified alternative to Python virtualenv, rvm, rbenv, cabal sandbox, etc? This would be specially important for projects needing heterogeneous builds.

It'd also be interesting to see a typical Nix development workflow taking advantages of Nix goodies like continuous integration with Hydra or staging and production deployment with NixOps.


Yes, Nix profiles are package manager (or system level) alternative to virtualenv, etc. They can be used to give different evironments, be it development or production.

Actually, your system is a "system" profile. You update profiles independently from each other.

Example of collection of such environments: https://github.com/chaoflow/skel/blob/master/.nixpkgs/config...

I'll mention examples with NixOps and how I've used it in practice. Good call about "development workflow", I'll think about how to explain that in minimal words.


> But the thing is that if they push the "pure" ideology to its limits they will uncover a number of useful things along the way.

For example new elegant approaches to parallelism/concurrency that would be very difficult in an impure language.


Indeed. For instance, something like

http://hackage.haskell.org/package/parallel-3.1.0.1/docs/Con...

Would be very difficult to implement in a language that is not referentially transparent and lazy.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: