skysight-inc/HackerNews huggingface dataset:
"Object-oriented programming" is like "God" or "feminism"-- pointless to debate until you define terms, and ranging from the agreeable/probable to the ridiculous depending on precisely how terms are defined.

The original idea was that, when a piece of software becomes complex, it should be factored out and given a simpler interface. Alan Kay used the cell as a metaphor: it's a complex machine that interacts with the rest of the body using a simpler language of chemical and electrical signals. And that turned out to be such a good idea that you see it even in non-OOP programming tools. Haskell's type classes are a comparable idea. FP picks the best noun (immutable data) and verb (referentially transparent function) for most purposes (of course, the world is stateful and there's some debate over how to manage that). At scale, we also have to deal with the "adjective problem" because we want to be able to code against abstractions rather than (less stable) implementations.

For example, it's a good thing that languages support a File object (an abstraction that Unix is built on) that allows application programmers to avoid having to know what kind of "file" they are dealing with. It's nice being able to use the same language (open/read/write/close) regardless of the physical machinery that the file lives on.

The problem is that corporate OOP has become complexity for it's own sake. Alan Kay wasn't saying, "Go out and design massive, complicated objects". He was only proposing strategies for when complexity became inevitable. Unfortunately, Business OOP (a bastardization of OOP, which had some good ideas at its core) rewards complexity, and you have "enterprise architects" who can't code but are paid to generate massive tangles of lines and boxes.
All sorts of fun games on ITA. Another good one is to set very long connection times, to get a 23 hour stopover in an interesting city for free.
> Their stated rationale was that because Apple was unlikely to ever support Pointer Events and Apple is the dominate force in the mobile web; Touch Events would always be required.

That's only one of their reasons.

https://code.google.com/p/chromium/issues/detail?id=162757#c...

https://docs.google.com/presentation/d/1qRqLKQjOnGgrM-UkMAb2...

In particular, see the notes in slide 6. They have several reasons that include performance, flexibility, and compatibility.
Source Code to Read Barcode from External Image URL Using C#, VB.NET, Java, PHP
Have you noticed the plugin that has put an explorer on the left hand side?
10 Internet of Things startups that got the most investment in 2014
Show HN: InstantCryptor – File Encryption Web-App for Dropbox and Google Drive
Sad to see that Ting was left out of their list of MVNOs. Ting just added GSM service, too, so they offer service on both the Sprint and T-Mobile networks. Sprint roams on Verizon, so there's no loss in voice/SMS coverage by switching.

There's a thriving used market in phones at Glyde, and Ting's refurbished phones have been great.

I've heard good things about the other MVNOs too, but haven't tried them. Decoupling from Verizon was a great financial move; as a bonus, I'm actually happy about my phone company.

(Disclaimer: I'm both a happy Ting customer and happily own a few shares in Tucows)
What made you decide to include social sharing options in a program whose mission is to be simple? Is social sharing the kind of functionality that's critical enough in your opinion to fall under the threshold of simple, or is it just so easy to implement social sharing in OS X Yosemite that there's no reason not to include it?
Don't you think everyone will be better off in using a decentralized reputation/review management system? How many centralized solutions are we going to see in the arbitration space? What's different about your service than the half dozen other marketplaces for arbitrators?
See also Singapore, arguably a democracy in name only. Or its neighbour Malaysia, ditto (and rather less successful).

I could cherry-pick examples until the cows come home, but I suspect other factors are at work -- and not just the obvious cultural stereotypes (look at how the two Koreas diverged after 1973, for example).
> It's a Microsoft-backed spec

So it's a case of Not Invented Here? or more accurate: Invented By the Enemy?
That used to be the case. That iPhone really did cost you $200, because you paid $70/month (or whatever) regardless of whether you bought the thing subsidized or unsubsidized.

Now, the carriers are getting away from that model. AT&T, for example, charges you less if you bring your own phone, or buy it from them at full price. The monthly difference is almost exactly 1/24th of the subsidy.
It's super fast which certainly cannot be said about other similar services.
this sort of positive discrimination is ruining generalisations for everyone.
Kayak's explore is pretty nice when you have uncertainty: http://www.kayak.com/explore/BER/

Although unlike Google Flights, it doesn't let you search for specific dates.
Looks like I misunderstood how the leak happened. I was thinking they infiltrated Gemalto's infrastructure and stole the signing key. But it looks like the keys (lots of them - one per SIM) were stolen while they were in transit, because of weak/no transmission security.

Since I have no way of knowing if my personal SIM key was stolen, I'll have to wait until AT&T works their way through their existing stock of SIMs and then request a new one. And hopefully get one that wasn't exposed.
When you suggest handling it like American GREs and SATs, what do you mean? Do you mean computer-given multiple choice tests? Or is there something about how they handle paper and pencil exams that you think should be widely adopted?
Built by one of our team members as a side project over the weekend.
I disagree. I spent nearly a year as a UI designer/engineer for a flight search/booking tool and evaluated all the major interfaces. The #1 killer feature google flights has which kills all other flight search tools (I have seen) is speed. They bought a company (ITA) for something close to a billion dollars which provides near realtime search results for flights.

Kayak (and others) do a good job of streaming search results, but you still have to wait seconds before you're able to make decisions.
The nice thing about Next is that you have the option. The upgrade option is a stupid option, but you don't have to take it. It's basically only there to trick suckers who can't do the math.
http://dave.cheney.net/resources-for-new-go-programmers
> Don’t wait until you become an expert in the language to make your voice heard.

You can do anything!

https://www.youtube.com/watch?v=gSjLiQxEZlM
The author is cherrypicking here. See what Google actually said:

https://code.google.com/p/chromium/issues/detail?id=162757#c...

https://docs.google.com/presentation/d/1qRqLKQjOnGgrM-UkMAb2...

Look at the slide notes on slide 6. They make a compelling technical and business argument against it; a reason the author acknowledges and dismisses because doesn't align with his thesis.
Thanks, having basically understood the "Cosmos" account of her life it was good to read a detailed researched account.
what's wrong with testing multiple web servers on "MY MACHINE"
I'm the app's author, happy to hear your feedback!
How much do you pay per month for your cell phone? Republic Wireless is a great deal because you can get a high-end smartphone without a data plan.
the latter. Actually, just wanted to differentiate it enough to get it in the Store. Now I will listen to my customers and tweak until perfect.
I can't praise Republic Wireless enough - it's a wifi/cellular hybrid Motorola phone. My phone bill is $25 a month for unlimited 3G data. Was able to make/ receive calls to / from the US in Russia last summer with no issues. Paying $100 for a contract phone is insane.
Chrome on Android and Safari on iOS support it for more than a year now => 93% of the market
I used Google Flights back in November to plan a 10-day getaway during December. BWI->MIA, MIA->LAX, SFO->BWI. Total airfare cost: $420. It was far easier to do this with GF than with Hipmunk or any other website i'd tried.
> most non-VC late stage rounds are done by the like of investment banks or private equity firms who have a reasonable idea of what they're doing.

They know exactly what they're doing, but their customers don't necessarily. Investment Banks are more than happy to buy and flip overvalued assets to suckers provided they don't have to hold on to them for too long (c.f. 2007.)
> Don't you think everyone will be better off in using a decentralized reputation/review management system?

We touched on that at https://news.ycombinator.com/item?id=9101489

Edit: the sibling comment by Sam from OpenBazaar is also relevant to your question: https://news.ycombinator.com/item?id=9102209

Also, it should be noted that while the technology is decentralized, the decision-making and arbitration process itself is distributed/crowdsourced using an open market model.

> What's different about your service than the half dozen other marketplaces for arbitrators?

Do you mean for cryptocurrencies or for traditional currencies? Which ones are you familiar with?
Where are you reading into that?
Why do you believe that biotech has higher long term returns than the valley?

That's precisely the problem. Within my lifetime the current antibiotics will become useless, we will be where we were before 1937 (discovery of sulfanilamide), physicians will be as good as they always were at prognosis, but helpless in the face of bacterial infections. The apocalypse is coming, and capitalism is no tool against it.
I see. Nice :)

My library of choice is http://www.preludels.com
As a developer who spent the last few months trying to get a website with touch events to work on the surface 3, I need to get this off my chest.

Microsoft, make up your mind. Do you want a browser that websites 'just work' in or do you want to keep implementing broken standards and forcing other browsers to adopt them? Pick one and don't try to find some weird middle ground where you implement webkit touch events on ie11 mobile but not desktop even though you want us to treat them as the same browser. I'm also looking at you, pointermove events that don't ever give you x and y values other than 0. You tell us you want us to do feature detection instead of browser detection, but how am I supposed to do that when window.pointerEnabled is true for all instances of ie11 even though I don't want to register touch events when I know the user is using a mouse? Before you respond with "you should just be listening for pointer events and not worry about type", you've just asked me to make my site incompatible with every other browser on the market instead of making it slower on ie11 by registering lots of unnecessary event listeners.

Microsoft, it's over. I'm moving on, and don't try to pretend like you can change with project spartan.
My wife used this to upgrade her 5s to the 6 Plus. By the time the 6 Plus came out, she had half the installment plan paid off, and the residual value of the 5s (sold to a private party) covered the rest.
You've been able to pay full price for the phone and get a reduced price contract for quite a while. It's just more common for people to get a $50-$150 Android phone with that plan. Many people who get an iPhone can't afford the one-time purchase of a $650 phone but don't have a problem paying $90/month for it.
Multitouch events perhaps?
"cheaper isn’t always better"

BS. Non-business flights are the most price-sensitive type of product there could possibly be.

Near 100% of people only apply a few very basic filters, e.g. no 12-hour layovers, doesn't depart at 5am, and then choose the cheapest. It's not some sophisticated "balance" that needs some advanced machine learning or personalization to accomplish. It's a few obvious filters that are the same for practically everyone.

I'd love to see partial dependance plots for each of the obvious filtering factors, vs how often people chose that flight. That's the best way to do this type of analysis.

Not to mention that many times the cheapest flight listed on these travel sites isn't actually available when you try to book it. Wonder how that may have skewed Google's analysis.
I'll just remind everyone this is the same Charles Stross that wants Bitcoin to 'die in a fire': http://www.antipope.org/charlie/blog-static/2013/12/why-i-wa.... Beware taking advice from individuals in the throes of massive cognitive dissonance.
True.

And those US prices seem insane to me. As an example of what you can expect with prepaid operators, here's what Virgin Mobile in Poland charges:

$5.1/month buys 2GB, unlimited sms, 100 minutes
$7.8/month buys 2GB, unlimited sms, unlimited talk time
$16/month buys 10GB, unlimited sms, unlimited talk time.
Why not use multiple stacks with a micro-services architecture?
These are quite good and definitely result in quite surprising output in some cases.

I would have liked the descriptions/answers to be a bit more detailed though. For example, why is the static constructor called only after the instance constructor (in part 2)? As far as I can see in the docs, this should not be the case?
> The extreme short-termism of capitalism that stifles innovation is missing from the analysis

What would that add? Civilisations don't have to innovate. In fact, the people on top may be perfectly happy with stagnation and the status quo.
You miss my point. You're saying we should forgive Apple of their current transgressions because they did something nice 7 years ago? Give me a break.
Overseas travel can be one big reason. Overseas roaming is typically extremely expensive (T-Mobile being a notable exception to this) and having an unlocked phone means you can just pop in a local SIM card rather than farting around with workarounds or paying lots of money.
Stickshift: Open Source Query and Analysis UI for *SQL and RedShift
Blogging and Personal Branding Workshop for New Software Developers
As someone who is interested in QoS on their home network I've always wondered if this was possible. I've considered running smokeping to a Digital Ocean box and tracking the result but what better way than to track the performance of real traffic.
I doubt it. Even without knowing exact surface power density that can cause damage to retina, the magnitudes discussed here sound far from dangerous.

You should know that even an impossibly tiny point source will get projected to a spot of finite size on the retina. The eye is not perfect - there is always some optical aberration. Plus, since we're talking about a star, there's also atmospheric distortion to think about.

The chances of light from Betelgeuse igniting a fire are very much zero. We're talking about light intensity about 10x lower than moonlight.
thanks for the downvotes. bitches
Which protocol will take over for HTTP?
s/fast enough/at all/
OpenJDK: Project Nashorn
Wow, this is wonderful input. I always love finding an overlap in terminology. If you find the same description of something in more than two places, I think it's safe to say that it's some kind of standard definition.
> City Fears Being Overrun

What does the city exactly fear?
Kickstarter, the pre-order website for the rest of us...
Where does this idiotic idea cames from that being "idiomatic" is some kind of virtue?

Idiomatic Java was the FactoryProxySingleton EE-wank fest from Apache, SUN, Spring and co.

It was by changing those idioms around (e.g. how the Play framework wrote Java), that saner alternatives emerged.

The de-facto idiom of PHP before 2010 was messy code.

It started getting more coherent after that, but the preffered idiom now (e.g. for Zend, Synmphony, Laravel) is still a tedious, verbose, copy of the Java circa 2006 style (large class hierarchies, singletons, "Facades", DI, etc).

Idiomatic JS pre-Cockford was ad-hoc BS. After Cockford it got a lot better, but then it changed again (can't say for the worse) with all sort of functional tricks and patterns that weren't in vogue before.

In all of those cases, if they have stuck to the same "idiomatic" way from the start, it would have been worse.

Within a single project, sure, enforce some idiomatic way of doing things.

But within a whole language people should be able to experiment and not be called upon for being "unidiomatic" all the time. This is exceptially disturbing and often in Go, where there's some cargo cult in many advocates that they have found the be-all end-all way to code.

It seems to me this push for "idiomatic" is also related to the Blub paradox. Blub programmers know a couple of ways of doing things (the "idioms" of their language) and cannot understand why someone might want to program with higher (or just different but convenient) concepts he learned in another language.
An example of an undemocratic failing capitalistic state does not repudiate the statement "capitalism does not require democracy", but an example of an undemocratic succeeding capitalistic state proves the statement. And we have several examples of such states. Logic is like that.
Even though the government is not configured as a democracy, Chinese people seem to be generally OK with what the government does. So they still have most of the benefits of "consent of the governed".
My comment, slightly edited, from the previous posting of this, at https://news.ycombinator.com/item?id=9106813

> One kind of coupling that people tend to overlook as they transition to a microservices architecture is database coupling, where all services talk to the same database and updating a service means changing the schema. You need to split the database up and denormalize it.

That sounds like a decision you wouldn't want to take lightly; the kind of thing you might do once your company is already big. I wouldn't want to start out that way though, it sounds like a recipe for a mess.
Thanks, good advice. I live in the flyover states, but in my experience location is less of an issue these days than in the past. (Current company is on the east coast.) I'm old enough now (40) to be at an inflection point in my career where I'd like to write less code but still remain technical.

I've started to reach out to my network, quietly, as you suggest. Mostly I think I just need to be patient to find something that's interesting and motivating, and resist the urge to grab the first available option.
I think that on linux, you ideally don't want /dev/urandom, you want a recent kernel and getrandom(buf, len, 0). From the manpage:

If the GRND_RANDOM bit is not set, then the /dev/urandom pool
will be used. Unlike using read(2) to fetch data from
/dev/urandom, if the urandom pool has not been sufficiently
initialized, getrandom(2) will block (or return -1 with the
errno set to EAGAIN if the GRND_NONBLOCK bit is set in flags).

Then again, that's probably not important if you interactively launch gpg on a desktop system that wasn't just installed a minute ago or so.
Baseball pitchers regularly play well into their 40's. Jamie Moyer was still pitching a month or two shy of turning 50. For soccer players, still playing at 40 is nearly unheard of. Ryan Giggs did it, but that's about it, and it was mostly sentimentality that kept him playing that last year or so. So I would disagree that baseball is that much more taxing than soccer.
Managing CSS with react.js
I really like some aspects of CommonJS/OCaml -- while digesting the whole thing, I've put together an `opam-boot` tool that does the standalone bootstrap so that you can build OCaml/OPAM applications without either OCaml or OPAM installed.

https://github.com/avsm/opam-boot
(still unannounced and being debugging, but essentially working)

I'm liking the Merlin integration in CommonJS as well -- perhaps specialising it for js_of_ocaml applications would be one way to deploy it.
So? I don't see anything wrong with someone being anti-bitcoin and all his points seem salient. His points in this piece are well-considered and argued as well.

I would downvote you but I'm just going to register my disapproval of your sort of criticism, which seems empty and baseless.
option to switch easily = incentive to compete.
> I think the focus on algorithms can be an underhanded way to prefer young, fresh out of school applicants.

This is exactly the thought that came to mind when I started reading this chain, and I'm happy you hit on it. This is definitely part of that elusive ageism that we keep hearing about in SV.

I was one of them; I participated in my school's ACM ICPC [0] teams. Just knowing the algorithms wasn't enough; we had to know what problems they applied to and how to quickly and effectively code them, often with a translation layer for the required inputs and outputs. This was hours of practice every week, and I suspect the top teams are a combination of natural talent and even more practice than I put in.

Even just four years later, I would read through the packet of problems for the year and feel out of practice. I would read problems and recognize that, once I could have coded it within a half hour, but not anymore. I have traded having deep knowledge of problems with the daily practice of "engineering in the real world", and I would not even want to have it another way.

[0] http://icpc.baylor.edu/
Thanks, we updated the URL.
Ditto. For Xmas my wife and I bought republic wireless phones. My phone works great and costs 10 bucks a month. Works perfect because I'm surrounded by WiFi all the time.
Given that Next is effectively a 0% interest financing plan with no prepayment penalties, it's easy to compare the market rate for your used device vs. the amount of remaining payments you still owe and make the best choice from there. (That "best choice" could be driven by financial reasons, or by convenience.)
I use Mr Number Blocker for this on android. You can whitelist / blacklist specific numbers, and set it to hang up or go to voicemail. There's also a crowdsourcing aspect, where after a certain number of people flag a number as spam, it shows up as "likely spam" when the phone rings. I believe you can have those go straight to voicemail as well.
static constructor does get called first. The problem is in this line:
static readonly Singleton _instance = new Singleton();

The static variable depends on the instance. So static gets called first and starts running, but before it could call the Console.WriteLine, instance of Singleton gets created due to the above line and hence the instance constructor.
The question is how you see it as a good deal.

If you need to defer up front costs and facilitate it through increments then yes.

If you see it as the total cost, then it is not a good deal.
I said "I" not we, and nothing about forgiveness.

Flash not being on iOS was not a point in time, but a continuous good thing.
So take a note: if you bank with Goldman, you have no idea of the actual identity of the person you're dealing with.

"Stole client money & fled the country" isn't exactly common, but it is a thing that happens.
Not only does this sound like Ad Hominem, but I also think you are taking that statement too literally... the very sentence it's contained in should give a clue as to where his sentiment lies on alternative currencies(emphasis mine):

> I want Bitcoin to die in a fire: this is a start, but it's not sufficient.
Show HN: RustDT, an Eclipse Based IDE for the Rust Language:
Those images accurately show size, correct? Stars are big.