skysight-inc/HackerNews huggingface dataset:
Microservices here are mostly fancy word for an API or an app consuming API or listening for events. At least in my department, we have a fair amount of legacy code, coupled together, as the application and CMS grew over the years; we're now working on splitting things up, e.g. reports don't need to be part of the same code as CMS. Scheduled jobs for grabbing 3rd party feeds can be separated into its own app. Any significant part of the system is eventually going to be living on its own - so that deploying one part shouldn't break others; running a bad query on our reporting DB will not affect production DB etc.

I guess the downside of this approach is having to manage overhead of each of these services (setting up puppet, nginx, caching etc.); majority of our apps live in a shared puppet config so it's not too difficult to spin up a new box in EC2 and apply puppet to it, but also as you grow bigger you might want to split out these configurations (different teams = different needs) or have a curated/moderated central configuration (that's sort of the way we have it now).

Regarding communication between services, not sure exactly what you mean, usually when we split something out of existing system, the legacy code just makes a call to this new external service to get the data.

Regarding Developer Anarchy.. no of course we're not just developers :) Each dev team works with designers, marketing and commercial people. Priorities/objectives come from business people and we just help them figure out how to reach their goals and inform them on possibilities from technical side. Day to day however, we're mostly left to our own, so it's pretty great. We don't have project managers in a typical sense, we decide our timelines and tools.
I haven't seen that video yet, it's also before my time here (I've been here 1.5 year), but either way it's very developer friendly environment with plenty of freedom.

Ping me on Skype (tomasz-tomczyk) or email if you'd like to know anything more.
This whole "competing languages" is backwards.

We write our own application code. We often write our own (specialized) library code. Sometimes, we even write our own little frameworks. But we very rarely write our own languages. There's a wall somehow between languages and everything else: the language is something you chose. Everything else is something you might build —or at least adapt to your ends.

Why? This is beyond silly.

Take one example: Closures in Java. Closures are very useful. If you put garbage collection in your language, but forget about closures, you fail at language design forever. Java made this mistake, and forced us to use anonymous inner classes, and other equally horrible workarounds instead. Java need closures and we knew that for years.

What did we do? We waited for the landlord.

We didn't have to. I'm sure some of you have heard, there's this nifty concept called "source to source transformation"[1]. Here's how it translate in Java: you take source code that is like Java, but is not quite Java. Feed that into your compiler, output Java code, and voilà, you have modified the language. In the specific case of closures, it would mean invent a syntax for closures, and compile that into those ugly anonymous inner classes.

Some people probably have done that, and I just don't know about them. Anyway, it seems the technique didn't get any traction. (The only example I know of is here[2]. Skip to page 6 and 7. Then read the whole thing.)

I don't know about you, but the next time someone forces me to use a language that sucks, I'm going to at least write a preprocessor, and modify the damn language. In other words, I can write LISP in any language, and I will. And when I'm done, even COBOL won't suck.

[1]: http://www.youtube.com/watch?v=EGeN2IC7N0Q

[2]: http://www.cs.indiana.edu/~dfried/dfried/dfried/mex.pdf
>Today's primary threats are bullets, and I believe they have more luck stopping those with sheets of flexible, fibrous materials.

Those sheets stop lower power bullets, all the body armor that stops high power weapons has large ceramic panel inserts.

Besides ceramics there are things like metal–graphene nanolayered composites that hold the promise tipping the armor/firepower balance back in the favor of armor.
Upvoted.

"The answer seems to be growing that internal expertise."

Or you can go with OCaml. :)
Many hackers are black hats.
All black hats are hackers, they're a subset of the larger group.

And that's what the problem is. Calling a cracker a hacker is technically correct, but lead to the assumption that all hackers are black hats.
Colluding to keep down wages, which would attract more people into programming, and then always complaining that there are not enough software developers while, also illegally, discriminating against expensive older programmers.
Shows money is the main factor with respect to programmers ability.
Yes, people _are_ irrational, especially the gaming community, that is largely driven by emotions.

Also, Facebook gaming is seen as a huge danger for many "core gamers", so it isn't just anyone buying their stuff.
>The benefits Clojure brings to the table more than make up for the work in either case.

No one's saying "stop using clojure". The argument here is "build a clojure framework lots of people use".

>There's equal risk in relying on a code base incorporating features with underlying concepts that you or your team does not understand.

You do this all the time. I mean, I understand on a high level what my computer does but I can't describe to you the exact tree balancing algorithm my filesystem uses, how my CPU performs cache invalidation and branch prediction or even how exactly the JVM works.

Computers are too complex to not rely on underlying concepts you or your team doesn't understand.

The point is, within just the context of a web developer developing a web application there is too much stuff to know to always get it right. We need to reduce the number of things people have to think about, or else we'll always miss something.
Optimize Your Facebook Cover Photo: 7 Best Practices For Brands
> Http redirects to https, which is awesome.

Huh..? Here it's doing the opposite (but will check again once I get home if it's just at work..)..

Or weren't you talking about the eso.org website?
It seems that the room message state is synced via a poller, as seen here: https://github.com/HashNuke/mogo-chat/blob/master/assets/jav...

I'm curious why you decided to implement this with a poller instead of with a Websocket. There's actually a reasonably detailed answer about how to do this sort of thing with Ember Data in the emberjs.com guides: http://emberjs.com/guides/models/frequently-asked-questions/...

Either way, how did you find working with Ember Data in general? What were the main sticking points?
You can use rr on 64-bit systems. rr requires 32-bit processes at the moment, but does not require 32-bit systems. 32-bit application on 64-bit kernel is a supported configuration.
It may be illegal (I agree it is) but I don't think that changes anything. It's not like the employee was whistleblowing or protesting the illegality of the rule, they just broke it through negligence.
I agree with Mike here. Bear in mind that we're talking about the attitude of the execs, not the substantive issue at hand. Imagine if the issue at hand had been a Google employee deliberately breaking Google Maps for iPhone (back in the day when Google and Apple got on fine). Would anyone be surprised / outraged by Google firing the employee, and Steve Jobs forwarding the email informing him to Scott Forestall with a smiley face? I would think not.

Now, just to be extra clear, I agree with most people on HN that the substantive issue of non-poaching agreements is not acceptable. I expect all companies that were involved to be justifiably raked over the coals for it. But Steve Jobs responding with a smiley when he receives confirmation that the agreed-upon policy has been enforced? Total non-issue.
That's because wages are too low. Eventually an industry hits an equilibrium and people stop changing jobs unless it's too move up the ladder.
It seems easy to avoid to me. You either pay the wages required to keep important people in the building or you illegally collude with your competitors to keep them in the building. Bonus that the second option lowers your payroll costs as well.
Bicycle Maintenance and Repair Products
ZeptoLab Files Objection in EU Against King.com's "Candy" Registration
I think you should see how the difference of mentality clashed between East and West Germans after the reunification, and amplify that a bit. I suspect it would take one or two generations to close the gap between the two Koreas after the hypothetical reunification.
I think English dictionaries should redefine "don't recall" as an idiom meaning "find it convenient to pretend not to remember" :)
I haven't seen anything that beats IRCCloud in the ease of use and UI departments, especially their mobile apps.

That said, the full service is $5/month and so not for everybody. Also, you mention security and I'm not sure whether you'd consider a cloud service permissible in that sense or not.
Not, really. In a free market, everything is allowed, no? There is no arbiter to enforce any rules.
I enjoy working at smaller companies because I actually feel like I make a difference. How little do you actually contribute to your company if you can be fired within the hour.
That's why I took so much trouble to give him the benefit of the doubt, because it probably was accidental.
Therbligs for data science
I get where you are coming from and appreciate the desire to keep things rational. But sometimes there is a time and place to get angry about things that are wrong. Everyone has their own issues, and I can see that this particular one wouldn't get everyone fired up, but it certainly flips my bits: they summarily fired and "made a public example" of a person for not following an illegal policy.
> You don't make an app/website secure by deciding on a list of things you need to sanitise.

I agree

> You sanitise everything to start with.

So you need to list everything you need to sanitise...

A better approach is to ban "innerHTML" from your code. You should always display user generated text in text nodes.
I understand and sympathize with that point of view, but I also sympathize with Facebook's position. Their success, after all, was based on making it easy for people to connect with each other, and anonymity is an impediment to that goal. The average user doesn't really mind, as it turns out, otherwise the populous would have flocked to Diaspora as soon as it was released. I guess all we can do is wait and see how Facebook handles it, but if history is any indication, they will likely let Oculus continue to operate autonomously and provide whatever resources necessary to help them reach their goal of viable VR.
I, for one, am glad to see example Elixir apps with some polish that are published freely. I've been meaning to get into Elixir and Erlang, but lack of polished example apps has been a stumbling block for me, and though I have no immediate need for a TeamChat app at all, it's one of those examples like "The Todos App" that you can even perform as a code-kata in your language of choice.

It would be great if I didn't have to use any Off-the-Shelf code at all, or if I must, if I actually had the time and knowledge to review it for serious vulnerabilities. But posts like this are why I come to HN.
I've scratched my head on what exactly the use-case for this is. I'm going to need a computer of some sort to access my remote anyways. So what's the point?

Then I remember the remote freelance job my wife had for a while. They mailed her the employment paperwork, she filled it out, once they processed it they sent her a remote desktop URL, username and password and voila she was "at work". A day or two later she had everything she needed installed by the IT staff and off she went. She never actually went into the office, even once, and never met any of the employees there face-to-face. When she completed her contract they simply nuked the account she was using and reclaimed the licenses. They didn't ship her a laptop to work from and she didn't have to ship it back. If she had ever needed to go into the office, they could have let her use an aging extra machine with Remote Desktop to get back to work. Not a single piece of the company's "property" ever needed to come in contact with my wife's home computer and if she was waiting for her work computer to do something she could just minimize the RDP client and do something else.

I have no idea what they would have been paying for the Terminal server on their end, I've heard it runs north of $100k/year, and this service seems to be competing with that.
I would want to turn the question around and (genuinely, not rhetorically) ask: which ecosystems right now do have a good security baseline? Am I wrong when I guess Java/.Net/Ruby and possibly more recent PHP frameworks?
Watching the demo is like watching TwitchPlaysPokemon, except it's HN/NuttyPlaysLinux. They've already done rm -rf / on the demo that I was watching.
Three Case Studies on Optimising the Sales Funnel
Is it a smaller crime if you take smaller amounts from more people? Had these been outright unpaid wages, the answer would be clear. The dollar value here is probably similar.
Is a man not entitled to his own worth and value? I see nothing wrong with that, if your engineer can easily be sniped by a competing company willing to offer enough salary increase to convince somebody to move out of his job and jump to a new platform/environment/learning process, maybe you should be paying him more. You're not willing to? Well maybe that single engineer wasn't that vital to your company after all.
A CA is not a gendered grade I think it is you who are being sexist by assuming that I meant a female secretary here.
That's a fair point - think of all the attempts to displace them (cough diaspora). But that's also why the onus falls onto them now, right?
I second one buying their own modem and wireless router and not using the supplied ISP equipment. Netgear WNDR3800 router here and I have been thinking of trying OpenWRT or DD-WRT on it myself...
Hah... yes good idea. But the screens should instead or in addition, flip up or fold out of the way for normal sight, while still keeping the headset on.

It will be a special occasion thing for mainstream Facebookers, and people in general. People like their "secondary things" too much I think. Those things we miss if they're not within reach -

- sipping a beer
- patting your cat
- talking to someone in the room
- Seeing with your own eyes
- glancing at TV in corner of room
- people watching/ people in your house watching
- checking phone messages
- looking at different distances to give your eyes a break.
- multi-tasking
- heaps of other things we do while using normal screens. VR makes it hard to continue doing those things in parallel.

Basically, these VR toys need to be flickable with very little effort, to get them off your face real quick! 2 billion. Funny.
Or F#, if you are using .net or mono. It's pretty well integrated into Visual Studio these days, and quite good in Xamarin Studio.
What an odd spin on this story. Job's response is just a detail, the policy is agreed upon between both companies which is clear from the correspondence and Google's actions here.
Kepler is fairly useless for mining.
Pedius App Allows Italy’s Deaf Make Phone Calls
I think the conclusion is that you can't trust random internet users with a terminal.
Good guy Excel... doing functional programming before it was cool. SUM(A1:A10)
AngularJS: A Retrospective
Taking a look back after working with AngularJS for a year.
You lack imagination about all the different things that can be done with uniformly black, straight, fine hair. Length is not the only variable, and there is still a huge range of hairstyles that people could choose from if they were free to do so.

Also, if I was subject to an edict requiring me to trim my fingernails, that would be a pretty big deal to me. A big, intolerable deal. You imply that from their perspective it wouldn't be, but are you so much of a cultural relativist that you think such a perspective isn't seriously unhealthy?
Ionic Framework Beta Released
And facebook always makes good decisions right? Look at how they interpreted mobile. It's a device which is multi-faceted, multi-purpose... and they turn it into a bloody facebook window (facebook home) - getting in the way of how most people actually interact with their phone.

If you think they are going to let Oculus develop freely without their completely self-absorbed facebook centric mindset, you're kidding yourself.
Adobe PhoneGap Enterprise
> What I'm getting at - Bad code can be written in any language. IMO what's more important with regards to the language is how easy does it make to fix it.

Hm, not sure I agree with this. As a professional rubyist I am aware of the wide variety of bugs that can and do happen because of things that Haskell simply wouldn't allow you to do (at least without pathological abuse of the language that would never pass a code review). The thing that makes Haskell special to me is just how much the commitment to functional purity and a powerful type system buy you in terms of decreasing the surface are of potential problems.

You've rightly pointed out that Haskell has its own memory and performance pitfalls that are very difficult to debug, but my instinct is that those things, while perhaps being showstoppers for embedded and realtime systems, are not intractable in a typical server environment, and that it's orders magnitude easier to improve the tooling around detecting and solving these problems than it is to ever make a language like Ruby code safer and require fewer tests.

Of course I'm an utter beginner at Haskell, so I don't have a real sense of its downsides at scale, so take my opinion with a teaspoon of salt.
Kinda seems like the queue order during the Qing dynasty in China.

https://en.wikipedia.org/wiki/Queue_%28hairstyle%29#Queue_Or...
This is going to be big for Chromebooks, I suspect.
Probably WorkSpaces is not designed to be active 24/7. Desktop CPU usages are also usually much lighter than server usages.
Yeah, perhaps I was a bit vague, I didn't mean Jobs.

I should have said he/she because I don't know the gender of Shona Brown. Jobs was drunk on power too, but I don't think this incident is the best example of it.
Sure, or any strict language. There are a lot of benefits to laziness though even before you start to consider other Haskell/OCaml deltas. Laziness provides a much better platform for separation of concerns which has enabled Haskell programs to have an unheard of degree of decomposition and reuse.

As always, it's a tradeoff. At this point, I don't personally feel afraid of debugging core or profiling space leaks. I don't feel like I'm much more than 50% up to date on techniques to fix them... but when they arise I have little trouble eliminating them.

Lazy resource deallocation is a problem of lazy IO. The solution is to not use lazy IO and that's tremendously tenable today due to libraries like pipes and conduit.
I think the more recent issue you're referring to is this?
http://www.haskell.org/pipermail/libraries/2014-February/022...
>"Although I get that these sorts of agreements may well have been illegal and unethical, all this outrage over the attitudes of the executives seems overblown to me."

I wouldn't quite say that...

I believe you're absolutely correct about the strategic concern, the act and the result is easy to understand.

What's really distasteful is the tone from all parties. The whole exchange is dripping with polite passive-aggressive nastiness, boot clicking and ass-covering.

It's possible to be pragmatic and decent about it.
The real complaint is that there are not enough programmers that they can pay cheaply. The idea that there are not enough programmers is just bs.
The thing I despise about this and many other techno-dreaming articles is that they leave it up to the reader to do all the work of dreaming:

> "I love where that train of thought is going"

> "the sky’s the limit."

> "it opens the door to some serious possibilities."

Such as WHAT WHAT WHAT? I refuse to fill in the blanks here. The author is gassing me up to get me on board to figure out some brilliant use for their trivial activity.

And I don't think the author even knows, they're just trying to generate hype.
Ask HN: how do you commercialize something like 2048?
Today I went for a talk, and before it started I saw two people with their laptops playing 2048. Also a tonne of twists on the game have sprung on HN.

I was wondering how would the author make money out of this sudden popularity? Perhaps charge for the mobile platform version?
Exactly! Didn't want to go into how Excel is actually really strict FP in the post, but that's totally true.
I just wonder how did Steve find out this email? Did the employee hand it in? Did Apple have a scanner on their email server?
I would be curious to see a more detailed writeup of this, as I haven't understood how this algorithm is applied.

Question that I didn't understand the answer to:

> There are implemented 3 cost functions:

> 1. sum of all tiles in the playing field

is this a useful cost function at all? Surely the sum of the tiles is not affected by strategy played, only by whether a 2 or 4 was randomly received.

> 2. number of all unassigned tiles in the playing field

> 3. average value of an occupied tile

Then, for similar reason, I would be surprised if these were not equivalent.
I thought that was the point of the subsidies? It's not like the subsidies were designed to exist forever. They're just to accelerate the development of tech that isn't yet economical.
I did. This isn't about Jobs, it's about the reaction to his demand.
This reads like a UK tabloid article. (the internet should never feel that way)

As in, you're told what to think in advance of all info.
Well... those are not mutually exclusive, as far as I can tell.
Ugh no another one of these.
Even the attitude irks me. You need to fire someone, you fire them, you don't "make a public example" of them as a sign of obeisance to the head of a competing company. I want to know my boss has got my back, rather than thinking they're willing to throw me under the bus without so much as asking me about it if they get a harshly worded email from someone else.
> The argument here is "build a clojure framework lots of people use.

The argument I am addressing is that people are deploying products with poor security because a great, all encompassing, framework does not exist. There's no excuse for doing that.

This is not about having to understand cryptography, it's about knowing when and where you need to use it and making sure it's included when you do. The issues outlined in the video are trivial.
The Sheer Idiocy Of The Markets In One Chart – Oculus Edition
>> That tells me he's doing the right thing for his company and his shareholders.

Except when he does something illegal that leaves his company vulernable to a massive class-action lawsuit from his own employees. That doesn't seem like the right thing for his company and his shareholders.

Plus, in order to get this conspiracy off the ground and keep it running, he had to produce documentation of the conspiracy that would be embarrassing and possibly incriminating when it was made public. I'm not sure that he did the right thing for his company there.

It's now clear to current and future employees that he has conspired against them with other companies. That doesn't seem so good for his company either.
I loath valve because it made drm and always online cool.

But this is worse. Will we have farmvilleVR only now? Either way, they're now in position to make further drm on oculus games, such as Facebook login only.

But seeing that Sony added a share button on their controller this is probably the inevitable future anyway...