skysight-inc/HackerNews huggingface dataset:
And there's no incentive to use Objective-C on any other platform, so with Apple pushing Obj-C on their platforms it makes sense to get a Mac for iOS development, particularly if you spill over to desktop development (which you can do in C++ of course).
It would, but switching the use case from a 'normal' pattern to a hijacked pattern may need an order of magnitude more traffic and as such, more coins. But coins (or mining resources) are a limited supply, so this means the DDoS or spam could only work if the botnet will keep the volume of illegitimate traffic equal the replaced 'legitimate' traffic. This may cause some alarms.

But ultimately, your argument is: if one system can be cracked, a more complex system could also be cracked.
It's important to note that this is not just a Facebook problem - though Facebook may have the largest install base of affected applications.

Many applications on Google Play ask for excessive rights - I always presumed this was being pushed by mobile advertising services.

I think it's an important issue for Android, as most users are unaware of or careless with these things, and it's just one high profile (perceived) abuse example away from seriously damaging Android's reputation as a platform.
I second buying a second hand Mac mini. Even the late Core 2 Duo ones were very respectable performance wise.
Developers – Microsoft Is Back
Drone deliveries: Beyond the publicity stunt
Honestly, I don't know. No one seems to have mentioned anything like that as an obstacle to kotlin on android, but I haven't done a ton of research.
You've found an excuse to give up on your dreams, have you?
The only time I have found cucumber testing useful is when I was working in a "corporate" scenario where we had tedious UAT tests written for humans to run manually.

I convinced them to use plain-text cucumber syntax files.
We had to use detailed imperative, not declarative, tests with the default steps which all cucumber gurus hate, and in fact were relegated to a "cucumber-training-wheels" repo. But in this scenario they were the only option. Old school Enterprise test thinking) then I just automated them myself and made them part of the CI build.

The result, 100% pass on the first UAT run (minus a few % from UAT testers reading tests differently to how everyone else had been reading them up to that point), everyone happy, we look good and client hired contract testers finishing early and saving money.

Without cucumber we would have been in excel spreadsheet "UAT Test file" hell.

I am not sure I would use them in any other scenario though.
Out of interest why programming languages / frameworks do you use?

I can relate to your description, as it seems to be similar to my experience between back end development using Django / Python, which I found well put together and well thought out.

Compare that to front end Javascript frameworks, and (it may just be my lack of experience in JS) everything seems far more fragile, poorly documented, incomplete.
It really depends on your application. Each language, platform and framework has a niche. Depending on what you're doing none of the above might even be the answer. You might be better served a serverless solution like firebase.
Netflix for Sports. But not quite the same. There wouldn't be just 1 subscription were you get all. You would be able to pay per game and as well a pass for all games of a certain team.
You would be able to watch any games live or any other time of your convenience. It would be cool also to have just 'a show main highlights of the game'.

Prices per game should be relatively cheap, like 1.99 or 2.99; except some cases like championship finals.

I would try first to secure the rights to show some of the European soccer leagues and championships as they should be easier to get than any of the main American leagues. Hopefully none of the US networks have an exclusivity agreement.
Indeed.

Most jumpers now have several cameras so you can assume the proportion of skydivers is enough. It‘s still less than ten millions minutes overall, while billions of humans live half a million minutes each year. Now considering three recorded events (listed in your source) over the course of five centuries… This still means it would take billions of years of jumping to reasonably come across such an event. That calculations makes it far more likely that the previous one I made, most likely because I highly underestimated the number of meteoroids.

The weakness of that method is that you are limiting the visibility of humans on the ground to being struck, although one can argue that the buy in Uganda was a case of it coming close enough to notice.
Here are a few 360 videos:

http://www.360-degree-video.com/pages/360deg-video.php
I pay a price with my privacy but so far I'm fine with the tradeoff

Some people aren't alright with the tradeoff. I manage to stay in touch with family and friends without using it, but they happen to use it extensively. I suppose the "it sucks" opinion is just as polarising as the "I have no privacy but it's fine". Looks like the argument will never be settled!

I can imagine attempting to send letters to friends in other continents would be slow, but a nice touch if you received a letter.
I wouldn't be surprised if Apple someday has a Windows (or whatever) version of Xcode. That is, in a kind of parallel to the OP's essay, Xcode as we know it isn't necessarily "Mac-only" but simply built for Mac first.
The Future of Safe Sex
He said that you don't have to have a Facebook account.

I wouldn't call that hateful. That's just a fact. And it would solve the problem.
Than you Captain.
> A web and software developer in Africa earns from $10,000 to $20,000 dollars per annum whereas their colleagues in Europe and the US earns at least $100,000 dollars per year.

"at least $100,000 dollars per year"

..."at least $100,000 dollars per year"

Where can I find one of these mythical minimum-100k-salary programming jobs, without having 10+ years of experience and working for a massive tech company?

Source: UK twenty-something.
-3 on that one.

i forget this is the tech hangout for the wanna-be-rich.

so now i'm sitting here trying to decide whether i can
come up with something that will make you all understand
how the super-duper-massively-rich have rigged the game.

poisoned the planet in their winner-take-all grudge-match,
killed off animals like they were pit-bulls in a dog-fight,
treated the polar ice-caps like ice-sculptures at a party,
and kept throwing bigger rocks (a.k.a. bombs) at each other.

and by the time the split shifts the span, and you _might_
figure it out (or maybe not even then), it'll be too late.

way too late.

but i can't come up with anything, except just to say it,
and since (as i just said) it'll be too late anyway, then
i guess it doesn't even really have to be said at all, eh?

so yeah, chase your dreams, kids, and try to become rich...

probably best not to have any kids of your own, though,
because you might find yourself getting attached to them,
and worrying about their future, which they will never see,
because the human race ran out of time before they got old.

-bowerbird
2048 for Excel
I think this forum post will help you out:

http://www.thefastlaneforum.com/community/threads/how-to-cho...
Map Reduction Strategies Using C#
This functionality is build into chrome. Just right click the tab strip and the bottom option is "Bookmark all Tabs" or use the CTRL+SHIFT+D shortcut. Then they are just saved as tabs in a folder which has the benefit that they show up in address bar searches and are backed up via chrome sync.
Google Analytics for Pirates (of Dave McClure) – grow your startup guide
This moves firmly into the absurd given a computer is an imperative machine with memory that's persistent between steps.
I think that they probably take that approach to a point. For example when introducing brand new products. But when growth is slowing or no longer existent you have to look at your competitors and see what they've done differently. The "narrative that they don't _really_ pay that close attention to what their competitors do" is more of a testament that they don't operate like Samsung (watch their competitor and copy everything about their product).
I don't see the logic of a seller offering a 10% discount to save 1%. That makes no sense.
Did those old times include being insulted and outraged at every word your co-debaters said?

It's quite ironic for you to be sad about the lack of civil discourse, when you used the opportunity to hijack the original point of the poster and start discussing a 'bannable offense' on the occasion of a silly colloqual phrase they used.

You think you're taking the high ground? I for one long for a debate where the people talking can stay focused on a topic without being constantly insulted by this or that for the purpose of cheap outrage.
Comic Sans, meet Comic Neue
SAS vs. R vs. Python
I think REST and "nice" URLs are orthogonal - HATEOAS definitely doesn't require you to be assembling URLs but human readable URLs make life a bit easier as a developer so why not have them?
I might be a stickler here, but this strikes me as a good example of a "domain-specific language" rather than of a general programming language.

Now, it's certainly possible to nail general-purpose programming features onto a DSL (e.g. matlab or R), but the approach (also used by Halide) to embed the DSL into a general-purpose language that allows you to do so (here:C++) is, in my eyes, vastly better suited for scaling up from experimentation code to something that can become part of a larger system (think OpenCV in robotics etc.)
Indeed but McLaren and Williams manufacturer their own gearbox.
also, give the user the ability to refuse some permissions. There is no way i'll give any app access to my SMS. As the article stated not even my closest friend or my girlfriend have access to my SMS.
I would gladly start working with programmers in Africa. I'm based in Europe (Poland), and for a long time I've been thinking about how we're working with people around the globe while completely ignoring the huge continent that is right within ±2h of our timezone.

The problem begins with the word "Africa". Obviously, this is a meaningless word, describing an entire continent full of radically different countries. And yet we use it. I know how I get annoyed when my country gets generalized as "Eastern Europe" (first, we're Central Europe, and second, countries in this part of Europe are quite different from each other). I can't even imagine what it feels to be thrown into an "Africa" bucket.

Then there is the issue of whom to work with (and where), how to start, how to build trust. It's just immensely difficult. I know next to nothing about African countries, much less about major cities, good schools, places where I could find programmers and business partners.

I am hoping for more ties between European and African developers and entrepreneurs, so that we can start working together. Which would hopefully make the life of an African programmer easier, at least on a practical (economic) level.
> In Quake 1-3 I felt heavy/bulky...

Quake 2...maybe. Quake 3 is anything but heavy/bulky, that game is 100% twitch and your character flies around (sometimes literally with those jump pads) like they're constantly sliding on a slick floor. Great game.
So then the solution that comes to mind before I drop my entire stack to use yours, is to simply use the language the CMS itself was written in (Python, PHP, whatever), instead of the CMS. Sorry. Work on your value proposition.
Call me dyslexic but I find it hard not to read "4K A7" as "AK 47" ...
The syncing adds unnecessary complication for desktop apps. For apps that needs to be accessible via mobile devices, it means the difference between whether or not your app is usable at all for a lot people. About 30%-50% of my commute is "dead zones" where I'm lucky to get GPRS speeds, and often have no signal at all... This is in one of the busiest commuting corridors in London....

Getting syncing right is tricky, though, because you do need to think through your possible conflict resolution issues in case the user moves from device to device, potentially while one or both devices lack a connection.
Overflow completely overrides the effect of S-bend. There is a (pretty important) reason behind S-bends.
Regarding fraud, I think that African (huge generalisation) governments just don't seem to take it seriously enough. Even in South Africa, where every SIM card should be registered, it isn't uncommon to see phishing emails with local numbers.

Companies also don't really care: phones stolen in one African country are sold in others (South Africa to Nigeria seems to be one popular route), and blacklists aren't shared cross-border. In South Africa, SIM-swap scams result in people's bank accounts being cleared out with cellular networks and banks both disclaiming responsibility.

Until the attitude to this sort of fraud changes, I don't blame payment companies for staying away from Africa.
But I thought Google Now doesn't offer an API either? I use both Siri and Google Now (I have an iPhone and Nexus I find myself regularly switching between) and I feel like they are two different products, not meant to compete (yet). Yes, Google now can answer questions like Siri but because it's main focus is on showing me stuff I need when I need it I tend to forget about the Q&A part of the product. I also feel that's Siri's Q&A is better. Google Now needs to pull in more sources and open an API to keep competitive with Siri. Siri needs an API and more contextual awareness to keep competitive with Google Now.
DO need to to a lot of things. They don't even have IPv6 yet, which is, TBFH, beyond a joke, even for a $5/mo provider. Then the censorship guarantees I will never use them even past that.
> What happens here? Well it doesn't matter to the caller, they know they get a new ImmutableState back, and if they chose to ignore it then the original state object they passed in will be unaltered.

Yes if they choose, but how are they supposed to make this choice? :)

You can't make an informed decision about it UNLESS you know what is the difference between ImmutableState instance returned by DoSomething and the original one.

We're back to the same problem, then. We can't be sure what DoSomething does without peeking into its implementation.

That it produces another instance in process may be nice, but the core problem is the same.

Can I know for sure how the state of my MutableState object changed?

Can I know for sure what is the difference between the ImmutableState I passed to you and the other ImmutableState you made me pull out of your blackbox? I'm flying blind just the same

> It also allows for free transactional behaviour with rollbacks, which can be super useful:

Agreed, but there is more than one right way to achieve it. This could be also done with mutable objects and deep copies. Just make yourself a backup clone before you go wild.

The cost of your approach is that all behaviour and logic is moved into some ImmutableLib class, so you're creating various "Libs", "Managers", "Services" and the like, which means that you're essentially writing procedural code.

This OOP anti-pattern is known as anemic domain model.

http://www.martinfowler.com/bliki/AnemicDomainModel.html

Thanks for the link to Rich Kickey's presentation, it seems to be some food for thought. I'll watch it when I have some free time on my hands and maybe it will affect the way I see it.
I got an email when my $20/month linode box went down (collateral damage from a DDoS)...
APNG support can be implemented on top of regular libpng. I have the working code.
Option 2 shouldn't be a link to an empty HN post. It should be a link to the content. If the people who read it then decide it should be submitted to HN/upvoted they can go and do that.
> "Download Comic Neue, free for a limited time"

What does that mean? There's no real license information anywhere.
Ask Apple. They seem to have solved this problem quite a while ago.

The iOS implementation allows rejection of individual permissions, doesnt prevent install, and allows the developer the freedom to choose the best possible time to ask. See https://medium.com/p/96fa4eb54f2c
Agreed on the specific permission to read a text from a certain source. This "access to all SMS" sounds crazy - next step is let an app peruse my email inbox I guess? Even though I'm sure that isn't too far fetched with the latest news on email privacy.
I believe it's crowdsourced. There are many items I eat that they don't have in their database. The app allows you to submit the nutrition info to their database and it gets recognized afterwards. MyFitnessPal is very popular. They should have one of the biggest databases out there.
My mother was a librarian of a small library in a village in Scotland - from about the age of 13 she used to let me take the key and go and take books out myself any time I wanted (subject to the same rules as everyone else about number of books and keeping records).

I still love books :-)
The photo collage shows that the distance travelled by the rock between each frame is approximately 2-3 m (assuming the rock size estimation of 8-20 cm is correct) . If the GoPro recorded at 60 fps, it means the rock's speed was 120-180 m/s, which is very plausible!
Remember that immigration effort is once-off, and the payoff is life-long.
Books to Teach Yourself Probability and Bayesian Statistics
It is 'the most read' so I suppose it's what their readers want...
Since this is a language and a compiler, my guess would be the answer to your question is: the compiler will optimize for the underlying platform. The whole point of Halide is stated in their abstract: "... make it easier to write high-performance image processing code" which is the exact opposite of "hand optimization". Halide allows developers to express what to do in a powerful, domain specific language - the compiler takes care of the "how".

This approach makes a lot of sense: abstract the annoying low level architecture details. They have a lot of targets which is fantastic: x86/SSE, ARM v7/NEON, CUDA, Native Client, and OpenCL. Let the architecture specialist worry about the architecture specifics. The disadvantage: the achieved performance then depends on quality and wisdom of the compiler. But once certain things are optimized for a specific architecture, every user will benefit.

How they do it on the compiler end of things, I'm not sure. There are a number of techniques. Among the simpler is auto-tuning. There is also a new term: "copious-parallelism" [0]. It acknowledges that to achieve performance portability across platforms, algorithms must offer explicit ways of parametrization and tuning to adapt to different platforms. I think this is the right concept but believe that it could be implemented within the compiler. The domain specialist should not have to think about those things.

[0] http://www.hpcwire.com/2014/01/09/future-accelerator-program...
Another one could say that it ultimately boils down to your trust in Facebook. Do you trust enough Facebook to give them a full access to your SMS? I don't.
> I would try first to secure the rights to show some of the European soccer leagues and championships as they should be easier to get than any of the main American leagues.

Maybe the Lithuanian 3rd Division. European soccer leagues cost a fortune to get rights for:

UK Premiership: £1.78bn [1]
UK Third Division: £88mn [2]

Annoyingly I couldn't find actual costs on much else, but my point is that European soccer is huge, and you won't pick up the rights cheaply.

[1] http://www.premierleague.com/en-gb/fans/faqs/how-much-clubs-...
[2] http://en.wikipedia.org/wiki/Football_League_Championship#Br...
Do you know of some tutorials or even better some examples for getting started with this stack? I know of this JHipster [1], but it's Java and doesn't use Akka AFAIK.

[1]: http://jhipster.github.io/presentation/
Well, another way of looking at the excesses of the market is that the rest of the world had a glut of savings, while America had a huge trade deficit and a lack of saving, so this naturally dictates a capital account surplus/net capital inflow.

People in Europe and Asia have to put their money somewhere, and if the US is generating higher returns for less risk, they're going to go there, for either safety or opportunity. So if you have a huge influx of funds hungry for American assets, it is no surprise you see asset price inflation, as well as cheap, easy money.

You could argue that perhaps, if it weren't for the fact that the US dollar is the world's reserve currency, we wouldn't be able to print dollars and run a trade deficit, and foreigners would never be storing up huge amounts of dollars to reinvest or loan to the US, but you could just as easily argue that raising taxes would increase national savings and reduce the trade deficit.
Social chat network has arrived.
Think facebook but the bigger picture, A social chat network that aims at socializing but in real time. Fully customized profiles and integrated community, You can view every feed not just your friends. What makes this so different? The fact that you are in control of what you see and who you interact with.
My attempt to try to help you:

1st picture: you see a red signal and “f” which means that the signal is in the “time world”. The x axis represents the time.

2nd picture: The “f” disappears and a lot of signals in blue color appear. If you add up all these blue signals the result is the red signal. As you can see there are a lot of different blue signals with different frequencies.

3rd picture: they do that 3D breakdown where you can see each signal and on the right appears another graph/plot which represents the Fourier Transform. This graph/plot is in the “frequency world” and the x axis represents frequency. Each frequency of each blue signal is represented as a straight line. This line is a only blue signal located in its frequency and the more larger is in the y axis the more representative is in the final result (which is the red signal). The largest straight line is the one on the left because is the one with more energy in the “time world” and for that is the more representative in the frequency plot. The f with that arch is the Fourier Transform.

4th picture: they show you the signal on the “time world” and the signal in the “frequency world”.
Yes, it is incredibly hard. But on the other hand, the problem of clients losing connection does not go away just because syncing is hard. If you're targeting mobile users, you have the choice between your app being unavailable a lot of the time to a lot of users, or handling syncing.
Ask HN: What's your greatest epiphany?
I have had a single downtime, got an email and autocreated ticket. This was about a month ago so maybe it's relatively recent, or maybe it depends on the dc.
I can understand paying attention to what competitors do. I can also understand tying all your products together.

But how human is this? so we further lock customers into our ecosystem

My personal favorite is: what about email? It shows solutions to big problems slip through the cracks even in top product companies.