skysight-inc/HackerNews huggingface dataset:
China's PM2.5 output is overwhelmingly attributed to its coal power plants, so I think it's a bit of a rhetorical stretch to call what I said an "ignorant lie". Further:

* The Chinese coal industry is built out of boiler designs that are difficult to retrofit the "clean coal" stack of technologies on

* Despite aggressive investment in filtration and treatment in the US, field studies show fluctuating (at times increasing) levels of PM2.5 pollution in cities near coal plants

* Reductions in PM2.5 matching the levels stated by the coal industry documents you're providing depend not just on expensive retrofits of existing plants, but also on careful selection of (more expensive) higher-grade coal, and on expensive ongoing upkeep of consumable filtration components

I'm not opposed to clean coal, where its efficiency and effectiveness can be demonstrated and, equally importantly, regulated. But that's not the Chinese coal industry.
If you have a link, I'll be happy to gather several implementations. Thanks.
Not that I disagree with (m)any of the points you raise, but with due respect I think it's a bit off-topic from my comment.

Were it my choice, any time the need for concurrency comes up at my job I'd prefer to use a statically typed, compiled langauge like C++ or Java (or, once I've familiarized myself with Rust's implementations, that language), and this kind of discussion wouldn't even come up. I like python as a rapid-prototyping language. For the kinds of numerical computations and data-laden I/O bound work I do I find it sorely lacking, and consider it an unfortunate choice for production work.
"There are very valid reasons for China wanting that territory in their country" Or so the Chinese say. One person's security buffer is another person's colonization.
The problem for people isn’t advertising
Not entirely true. Both the British and e.g. Dutch had land divided up in a more market oriented fashion and farmers produced and sold for a market.

The bad luck for South America was that they inherited the Portuguese and Spanish structures of society. Europe was not a homogenous mass of countries. Success within Europe varied widely and South America copied the institutions and land laws of the most backwards countries in Europe.

Portugal and Spain could maintain an illusion of success based on all the wealth they got from their plunder and exploitation.
Looks[1] like from it went from $7B in 2004, to $11B in 2014 when ballmer left. So a 2x increase in 10 years vs over a 5x increase in 4 years.

Regardless, I still don't think that jives with the claim that Cook is focusing solely on short term returns. The "concern" about increased R&D outlay, by some big shareholders during earnings calls, has even been interesting to hear. The responses by Cook et al. have seemed pretty consistent too -- we are focusing on lots of long term projects.

[1]: https://www.statista.com/statistics/267806/expenditure-on-re...
I really think too many people are making a big deal of the TouchBar. I'm a vim user, and when the first rumors of it surfaced earlier this year I switched ESC to capslock and after a day or so adapted just fine.

I don't know that I really need any of the things TouchBar offers, but it seems to be unreasonably vilified without no one actually using it.

For me the key issue is the performance, which no amount of key remapping can solve.
There's a basic premise this article gets wrong: that there is a tradeoff between the Mac platform and the iUniverse. That's just not true, at least not on the 5-years plus timescales that we've been hearing these complaints. The most valuable company in the world can certainly afford staffing the Mac division with what they had back in 2000 or so or whenever people believe they were at their best. And the Mac business is without doubt profitable and that's the only thing that counts. We're not even talking about "innovation" issues anyway, where Apple may be constrained by not cloning SJ or JI. Note people don't want innovation (no floppy, no headphone, no F9) but rather simple grunt work like updating the chipsets.

I don't have any coherent theory. I'd say it's a combination of:

- Mac Pro: possibly waiting for something that then didn't turn out as expected? It's a segment that may actually be obsolete in that anything you can't do on an iMac happens on a cluster? I mean – what's there besides video editing and chrome compiling, two things the iMac is absolutely capable of.

- MacBooks: There's a minority complaining very loudly, who just! can't! work! professionally(!!) without 32GB of RAM and F7 – and they're real professionals by the way, not like those unprofessional hipster-wannabes.

Meanwhile, there have been quite a few advances but it's just not exciting any more: SSDs have had the most significant performance impact since the Pentium. Battery life has reached the point of diminishing returns (as has battery durability). Retina displays are on the level of vector fonts in terms of UI improvements. No idea about wide-gamut colors, but I certainly thought "why didn't this catch on 16 years ago?". A modern Apple trackpad is the hoverboard my fingers have been making memes about for a decade. Build quality and durability at the highest they have ever been, and if IFixIt complains, it's because YouDontHaveToAnymore.

Software is a different story maybe, but a large part of that may just be that it's solved. It's a stable, safe, fast, pretty OS. The Apple applications have seen a bunch of stumbles, indeed. But even Photos does what I actually need and there are alternatives for all of them.
> Someone could create ransomware that will never decrypt, even after the ransom is paid.

This already exists: http://arstechnica.com/security/2016/07/posing-as-ransomware...

> "Once it executes it, it pops up a ransom message looking like any other ransomware," Earl Carter, security research engineer at Cisco Talos, told Ars. "But then what happens is it forces a reboot, and it just deletes all the files. It doesn't try to encrypt anything—it just deletes them all."
I'm doing web dev on macOS. Tried to plan how I'd work on Linux desktop if I ditched Mac and it doesn't look that bright actually.

- I basically can't stand the usability linux desktop environments. But this is subjective.

- Our designers use a lot of mac software. I sometimes need to work with Sketch, Photoshop etc. Even if it's in read only fashion.

- Our team lives in Slack. Turns out these is no decent slack app for linux and I'd have to use the web app. No thanks.

Development generally requires collaboration with other people. I can't see myself easily working with non developers on a Linux desktop. I run Linux servers because only the developers touch them.
The point was to select the end-user applications projects, like "An extensible desktop mail app built on the modern web" and only highly-rated ones - the 1st in the list has more than 20K stars, the last one has 13 stars. I just saw the question in HN - https://news.ycombinator.com/item?id=12802121 and wanted to contribute for broader audience. The technique of selecting the repos is described in https://medium.com/@sAbakumoff/react-entourage-6d51e7df9944#...
> How is this not a solved problem?

Because we better understand the threat vectors that are imposed on the company from sloppy IT practices and as such are more willing to take security measures to prevent these things from happening.

We are also, at the same time, too stupid to realize that not everyone want's 5 applications just to encrypt their mail with a PGP key. When we make it so that by logging into a service with a password your browser can derive a private key and public key and use that to sign and send email we will have larger adoption. This will only be the case if it automatic.

Sure it's less secure but less secure is better then unused.
Kind of surprised no one's actually done this. I mean, there has to be at least a few really bored trolls and griefers out there who mess around with people's systems for 'fun' rather than money. I'm sure some teen in an ex soviet state somewhere would find it funny to watch someone have a breakdown when their cash doesn't get them their work back.

Or that some criminal group/mafia would use it to try and 'sink' their rivals. After all, a gang in competition with whoever makes these malware programs would probably love to shut down their revenue from ransomware. With say, their rivals name attached to the cruel hoax.

Still, I suspect something like this will happen at one point.
I'm really quite surprised that there are no big and used by default user facing sandboxing solutions for the major OSes out there.

With dynamic prompts akin to the firewall prompts familiar from Windows/Mac.

'The program "Chrome" wants to create the file "/home/username/.config/chrome/config". Allow "Chrome" to access [just this file / the diretory ~/.config/chrome / the diretory /home/username]'

'WARNING: The program "totally_legit_for_reals" wants to overwrite the file ~/.xinitrc. This is potentially dangerous. Allow access? -> Are you sure?'

'ALERT: the unknown program "xxx" has gained superuser privileges and wants to overwrite a critical system file System32/whatever.dll. This is very dangerous....'

Then again, non techie users usually ignore all those prompts and just click accept.

Just look at the mess that is Android permissions. Almost no one actually checks them or rejects apps that ask for way too much.

I'd still really like a kernel level protection mechanism that requires granting each executable the capabilities it requests, with dynamic pin the Linux world there are SELinux, AppArmor grsecurity, which are often cumbersome to use).
I am building a next generation database system.
> XML and json which are not typically meant to be viewed by a human

XML and json are meant to be viewed by a human. Those are visual encodings a contrario to binary encodings.
Why do people, even obviously skilled and well-read people, conflate functional programming with pure programming?

You so not need to have pure code to have functional code. You don't even need to have pure code to use a monadic approach.
> LOLOLOLOLOLOLOLOLOLOLOLOL
>Eastern India (Delhi)

Delhi is in Northern India, and not much to the east, AFAIK. There is plenty of land to the east of Delhi in India, before the border. And a good amount to the west too. Google "political map of India".
In my opinion, you've got the order wrong: types are the abstraction, and untyped-ness is the concrete implementation (just look at almost all assembly languages).

> Do you want to invest your time worrying about types or actually programming?

Another order reversal: type systems allow you to focus on programming, instead of hunting around for bugs because somebody 50 levels up the call stack passed you a value that doesn't support the interface it needs to support.

This is an endless debate of course, just wanted to throw in a typed pl fan's opinion in the mix.
This seems to speak to a larger problem for Apple of identifying their "Pro" markets and going after them. The iPad Pro seems to do a reasonable job targeting visual artists in the hardware, but the software isn't there yet.

Notionally speaking, what would a Pro work environment look like using tablets? I'd argue that Pro software tends to be hard to use and complicated -- but highly efficient in that domain, and this has been a struggle for Apple to get...and fundamentally there should be some kind of solution for cobbling together several iPads and a couple peripherals into some kind of workstation, where the iPads can do dual duty as both reconfigurable low-latency interfaces and displays for various parts of a pro-oriented workflow.

Or at the very least offer real support for pro workflows with a Mac as the main computer and the iPads acting as interfaces.

You sort of see some of this in things like DJ setups [1], but you'll notice none of these solutions lets you just use more iPads as additional screens/interfaces.

I write music as a hobby, and I wouldn't even know what to do with a single screen for it, and I feel cramped on two. I'd love to be able to get a tablet device, connect it to "the studio" and now it handles EQ or provides some virtual knobs, or gives me a spectrogram or something. And the system just sort of makes it work. A half dozen interfaces/displays would be great.

I also enjoy photography, why not have one display showing a gallery, one showing the before edits, and one showing what I'm editing, with one or two providing common edit controls?

But this interconnecting magic is simply missing.

1 - https://www.algoriddim.com/hardware
San Francisco is just kind of stupid at this point. I have lived in the Bay Area since 1989 and I am leaving on Tuesday. Whatever benefits there are to being here do not outweigh the huge monetary cost and substantial degradation of quality of life.

(And before you can thinking about paying rents or whatever, if you are in the top tax bracket, enjoy paying 13.3% state income tax, which, after Federal tax, is a staggering 22% of your income.)
That Youtube video is really amazing. Mountain Dew VR also seems to created a really beautiful demo in 2014 on the Oculus Dev Kit. But they used lots of custom software hacks, and it appears to have been abandoned before any distribution.

I've seen the cardboard kits, and similar headsets, but I'd like to get the best experience, even if it does cost a little bit.
I cannot read a blog post without seeing who of my fiends is online. Now, this is progress!
As an outsider you can only tell if the R&D money was spent wisely in retrospect.
Maybe a silly suggestion and probably one you've already considered, why not just an actual skateboard? I just did a quick search for 'skateboarding for seniors' and there's tons of results.
Including Mokyr's earlier work. He's been tackling this since the 1970s.
I can't testify to the rest of your issues, but the Windows client of 1Password runs reasonably well under Wine.
Sorry, I couldn't quite follow - could you break it down in simple sentences what the connection between those links you provided and the visualization is?

The coloring depending on response time happens in intervals, that much I can say.
I can confirm it's a native option in Sierra. I have not installed Karabiner. Actually, from their website: "Karabiner does not work on macOS Sierra at the moment."
I think that's one thing that would actually make sense. Maybe they're more open to the idea now that they're publicly supporting and advertising third party displays. (edit:spelling)
I...disagree. And I'll leave it at that.
I feel like what we are getting wrong is throwing the baby out with the bathwater... repeatedly.

Engineers love to engineer things. Why do people invent new languages? Sometimes it's a company trying to do something new, or something hard in a different language. Other times, it's someone who enjoys languages making a new language, thinking they've finally solved all the "hard problems," where "hard problems" is defined as problems they actually care about.

If you're not making a programming language, you're probably making a DSL or something on top of another programming language, so now you have the fun and quirks of two languages.

Instead, what if we had just a few programming languages, and made them more expressive? We'd avoid problems with language incompatibilities, libraries, and other general impedance mismatches.

I chalk this up to a few of factors:
1) Your syntatic sugar is probably not as sweet as you think it is. Many times, people claim something is easier to read or work with when it is merely easier for them, and different for others. This causes confusion for people who aren't used to that syntax. Please stop trying to make boring code look interesting. Boring code is the easiest to work with and fix.

2) Languages are hard, and working on a language is a lot harder than most people think. Once your "brilliant idea for a new language feature" actually gets implemented, the more it does, the more likely it is to screw something up.

To quote Scottie: "The more they overthink the plumbing, the easier it is to stop up the drain."

3) Because of #1 and #2, language development for major languages like python and C++ are slow. People hate slow, and so they'd rather build something special for themselves, or try some new language, because it's more fantastical. If this is a project for fun, go for it. But if this is for a business, people always constantly think some new tool is the silver bullet. What actually happens is you end up hunting bugs up and down your stack, lack robust programming tools, and end up keeping up with breaking changes rather than using that new margarita machine.
Agreed, if there is one thing that Apple are absolutely appalling at its power supplies. The amount of power supplies I've bought over the years, at £60 a pop is about 7, for two laptops over 7 years! And they ALL fail in the same way, with the either mag safe end fraying and sparking! or the cable cracking and exposing wires at the power block end (because of the stupid design decision to force a right angle bend when wrapping the cable around the pop-out cable hooks...)
> - Our team lives in Slack. Turns out these is no decent slack app for linux and I'd have to use the web app. No thanks.

the slack app for other platforms are made from the web app (Electron).
> Windows should take the pros back

Did you mean one Apple camp doesn't want "pros", as defined by video editing? Is that because those users have already left, or are not worth keeping?
I'm just wondering how one will install certain OSes if the Func keys aren't usable during OS install in Boot Camp. I don't remember being able to remap an installer hotkeys easily. Maybe Apple doesn't want that demographic, or perhaps we'll have to connect a USB-C keyboard.

Boot Camp drivers are also terribly out of date.
Hackintoshing is incredibly easy now. You can grab a build off of reddit that works perfectly. The issues lie in when you use hardware that has never been in an Apple, for instance there's no Kaby Lake support until Apple releases something with KB.

The most common issues if you don't buy all Intel/Nvidia are the wifi and BT which can be alleviated by $10 usb receivers. Touch screen of course is a no go.

Clover, the latest Hackintosh installer is very easy.
But there are real issues with the style of trashing on old tech for being old, which this post is full of. Emacs is being criticized for making what amount to practical technical decisions. This is a relevant point in the current tech climate of rewriting the last framework "because 2013 is so old".
From what I learned through youtube videos and meetups it seems to solve a problem that doesn't exist (getting all these patterns into python) and in return doesn't solve the problem people hope it would solve (multiprocessing made easy and pythonic). That's why people who want to pretend to be smart (like me a few years back) find this totally attractive, king's new clothes style. Nobody really understands it so they can act like they really do something meaningful with it.

How do I get to this painful conclusion? Well, as I said, I was (and probably still am to some degree) just like that. And to me it looks nearly irresistably interesting. But at the same time I also don't know what I would use it for, what it would actually improve for me. And since the need to pay my rent forced me to use my time more practically I didn't get around to looking at asyncio more in depth. Both these things together make me believe it's not really solving a real problem.
I really don't understand why developers use macs at all. They're not good dev machines. All production systems I work with are some flavor of linux (mostly ubuntu). There is actually a real impedance mismatch when I'm using my mac for work purposes. All those cores and RAM become meaningless when I have to do everything in a VM anyway. My personal dev machine is a project sputnik running ubuntu 16.04. I can understand why designers would use them but programmers never made any sense.
Nice to see another Fedora user! I find it runs better than Ubuntu. Faster and more stable. Recently I have been using Cinnamon over GNOME3. What DE do you use?
>>Everything from Das is really dysfunctional and sad.
I don't think that's fair. I've had a Das for a couple years now (Model S Pro, IIRC) and it's a solid, well designed keyboard. No obnoxious software AFAICT.

The whole "cloud keyboard" thing does sound gimmicky, I just don't think it's reasonable to paint their entire product line that way.
Consistency, intuitiveness, error rates, task performance - even if we just heard reference to these four more often things might improve.
Yes, open-plan dogma is at the root. I'd gladly give up free dog-boarding, massages, and meals for walls and a door.

Retaliation and escalation aren't solutions. Conscientious self-noise-reduction sets the example for others & makes it easier to politely ask the loudies to take their noise pollution out of the common area.
Show HN: WorldKoins app converts foreign currencies to eGift cards
IBM have the best showrooms.
Routers should be adapting to growing IoT. The ability to easily prevent Internet access or access to certain country IP pools like China. A really easy way to manage routers e.g. through an app will help mitigate the threat somewhat. But it would require a unified API or some sort and not installing CF.
>> Ever tried a hackintosh?

Yes, I've been running a hackintosh for several years now. It works flawlessly. What point are you trying to make?
This is a very good article. I do like Yaron Minsky's line, dismissing generally programming-student-based studies rather evocatively: "there is no pile of sophomores high enough to prove anything".

That being said, the idea that a programming language is a user interface and might be primarily evaluated like one, rather than a cult object to be venerated, is intriguing. If half the effort that has been put into ever-more-esoteric type theory had been put into serious long-term studies (perhaps with non-sophomore populations?) of usability, we might know rather more and might be able to design better languages. My suspicion is that very few researchers would be willing to follow UI-driven PL research wherever it leads; at best it might skewer some sacred concepts, at worst it might lead to a bunch of inconclusive statistical hints.

Far better to stick a bone through your beard and declare your chosen flavor of { functional programming, type theory, OO, logic programming, ... } the winner.
Funtoo as well, but the issue is that (at least for Funtoo), upstream that feeds the git has to be untampered with as well, which in this case is (you guessed it) Gentoo.
> swapping phones and swapping SIMs has been a reality in the rest of the world for years.

It's still prevalent here in the UK, although the competition is fierce enough for you to be able to find a vendor that sells a phone unlocked.
I've found that reading the source code (or at least the general structure) of kakoune[1] really helped me understand editors. I think it's a very high quality c++ codebase for a relatively complex editor.

[1] https://github.com/mawww/kakoune
Yes. And Microsoft was doing extremely well during Ballmers reign, and BlackBerry was doing extremely well for many years after iPhones release.

Current revenue doesn't necessarily say anything about future decline, you need to look deeper than that.
On the other hand, do you want your code to have to deal with any object or type from anywhere in the world or actually programming?

Programming is inherently the art of making something specific to a use. Types help that in that you limit what the code operates on, which makes the code you write simpler, because you have less ambiguity.
Unity still has its macish elements, true, but I think the post-Unity GTK+ and general in-default-app experiences tended to move toward "doing their own thing", rather than aping Windows or macOS.

Also, while the Unity side dock is iconified like macOS', I think it's functionality more different than the old Gnome2 bottom panel was from the macOS dock.

All subjective I guess.