Analytics Without Google - <AUTHOR> https://www.justbartek.ca/analytics-without-google/ <comment><USER2> Props to the author for ditching Google. I just want to point out that there are a LOT of non-Google analytics options out there; leaving Google Analytics really isn't too hard if you're willing to take the leap.

Plug: those who want a modern client-side analytics tool that's free, self hosted, and open source might consider Shynet [0]. (Disclosure: I maintain it.) It's a bit simpler/cleaner than Matomo, but exists in the same category.

[0] [https://github.com/milesmcc/shynet](https://github.com/milesmcc/shynet)

<comment><USER3> Google Ads still dominates though, and if you're doing paid advertising - you're not just shooting yourself in the foot, but you're lopping off a limb - or two. I wish it wasn't the case.

Any non-Google analytics options integrate well with Google Ads, especially for retargeting?

<comment><USER4> For retargeting you would probably have to have the DoubleClick code on your site nonetheless. But at least serving European users you would only be able to activate it after a clear opt in via a consent manager.

Using marketing parameters (like utm-... in GA or Matomo) or the likes in any other tool still gives you clear marketing performance metrics in your analytics solution of choice, though.

And a lot of "pure" tracking tools would - at least currently - not fall under the opt in rules of thew GDPR. But the moment you link them with your advertising profiles (like in GA with the DoubleClick integration) your whole tracking setup also becomes opt in. So you would probably loose at least some share of your traffic in analytics and not be able to clearly do marketing analysis any more. At least not as exact as before.

I had clients loosing 80% of their traffic stats in analytics after shifting to opt in.

</comment></comment></comment><comment><USER5> The thing I'm interested in when using Google Analytics is tracking user path to see the bounce rate in a checkout process for example. You can calculate conversion rates for different user segments. People who just want to see "how many visits I got" don't benefit from GA. Developers often miss the point of GA, because they do not work in sales.

<comment><USER6> OK, so let's pull this apart:

> The thing I'm interested in when using Google Analytics is tracking user > path to see the bounce rate in a checkout process for example

There are lots of ways to get this data direct from the servers, and much, much more reliably and effectively.

> You can calculate conversion rates for different user segments.

Maybe. You only have data on those people who don't have adblockers that block GA. Which is a sizable segment of the internet. Also that they're not using a VPN, etc. Stats collected via GA are inherently less reliable than stats collected from your own site because GA is easily blocked.

Plus, there have been reports since forever that GA's stats are just not that reliable in the first place.

I've experienced this myself - I used to admin a WP blog, and the numbers from the site log and GA were around 20% different.

If you're relying on GA stats to calculate the results of any a/b testing, then you need to put in at least a +/\- 25% error factor (i.e. if the A test converts 10% better than the B test, you have no idea whether that's a real thing, or a product of GA giving you inaccurate data - you'd need at least a 25% swing to begin to think it might be a real customer preference).

> Developers often miss the point of GA, because they do not work in sales.

Yes. But have you listened to their objections, rather than dismissing them as "not working in sales"? Developers do have some knowledge of this subject. And there are lots of ways of getting this data that doesn't increase page load and compromise security like GA does.

<comment><USER7> > Maybe. You only have data on those people who don't have adblockers that > block GA. Which is a sizable segment of the internet. Also that they're not > using a VPN, etc. Stats collected via GA are inherently less reliable than > stats collected from your own site because GA is easily blocked.

You'd be surprised how many marketers don't understand this key point. Those that do just don't care. I'd argue it's part of why the internet is being dumbed down (because people without adblockers are the only ones with a voice).

<comment><USER6> Interesting point. "our audience is all older people with little education, we should cater to them" -> no, actually that's just the only bit of your audience who let you track them, and you're annoying the younger, tech-savvy people who'd like your product if you stopped being technically ignorant ;)

</comment></comment></comment></comment><comment><USER8> Annoyed with cookie consent on your page?

Easy: use a 1st party self-hosted tracker (matomo/piwik), anomnize last digits of IP, respect DNT and provide an optout (matomo provides an embeddable widget) on your privacy policy page.

And bam, no legal need for cookie consent OR notification! No popup at all! And you still get perfectly usable statistics for most applications.

<comment><USER9> I'm no expert here but wouldn't that go against the E-privacy Directive 2009/136/EC, according to which you must:

Receive users' consent before you use any cookies except strictly necessary cookies?

<comment><USER10> It seems that there is currently no clear answer to this [0].

Couldn't find the forum post it's referring to.

[0]: [https://github.com/matomo- org/matomo/issues/15425#issuecomme...](https://github.com/matomo- org/matomo/issues/15425#issuecomment-617790122)

</comment></comment></comment><comment><USER11> One possible benefit that I don't see discussed much in this context is bypassing ad blockers. I run a tech focused website and Google analytics registers about 10k visits/month. I figure that a good chunk of my visitors have ublock and so they don't show up. Presumably, alternative analytics or self hosted analytics are not blocked, so I'd get more accurate stats. Is this a correct assumption?

<comment><USER12> It's true, but GA also does a pretty good job at filtering out bot traffic for example, so it depends on what your definition of more accurate is. There are also ways to send GA hits through a sub domain to make it look self hosted and bypass ad blockers.

<comment><USER13> > It's true, but GA also does a pretty good job at filtering out bot traffic > for example

Surely you jest. I had to quit using GA because the tech behemoth with all it's tens of thousands of software and algo experts couldn't figure out how to filter out referrer spam from their analytics.

Such a simple problem you'd think they'd solve it in a day. I gave them 2yrs and they still couldn't solve that problem so I left.

<comment><USER14> Parent speaks the truth. I quit because of the garbage referers coming out of Russia that Google would do nothing about.

<comment><USER11> How do you know they were garbage?

<comment><USER13> [https://www.google.com/search?q=%22buttons-for- websites%22+r...](https://www.google.com/search?q=%22buttons-for- websites%22+referrer+spam)

</comment></comment></comment></comment></comment></comment><comment><USER15> Thanks for the mention of Simple Analytics [1] Bartek. We do love to be a paid service while we know it doesn't suit everybody's need. This way we don't need to find any other way of making money (with the data of our customers).

[1] [https://simpleanalytics.com](https://simpleanalytics.com)

</comment><comment><USER16> I noticed this post mentions GoatCounter but says that it doesn't meet his needs because it isn't self-hosted.

It is not by default, but you certainly can self host it, and the author has been quite open about that being a viable path for people interested in doing so. I self host GoatCounter myself and it works very well.

<comment><USER17> +1 to Goatcounter. Not affiliated with it, just an happy (free) user on a low traffic/hobby project. Simple and no BS. More that enough if you just want to know the big picture and care about privacy. The data I get is this (my data is public but it's up to you): [https://slowernews.goatcounter.com/](https://slowernews.goatcounter.com/)

</comment></comment><comment><USER18> Nice. Can it be used to compare this year's first quarter mobile usage for dutch speaking visitors who came from Facebook to last year's same profiles but who came from the newsletter ?

<comment><AUTHOR> GoatCounter and others use non-identifiable hashes to track a unique visit, but they only retain that hash for some time[1]. I think in your example, you'd have to use a solution that uniquely identifies a session and indeed, keeps track of it.

[1] [https://github.com/zgoat/goatcounter/blob/master/docs/sessio...](https://github.com/zgoat/goatcounter/blob/master/docs/sessions.markdown#goatcounters- solution)

<comment><USER19> I'm not sure that's even necessary for the parent's requirement? You should be able to get the parent's data out of it since the location and campaign are stored; there just isn't a UI for it.

<comment><USER18> > there just isn't a UI for it

Exactly, the marketing/communication/sales people need those bits in a UI, they need tools to analyze those bits easily, mark them for specific analyzes and to share reports.

<comment><USER19> Sure, and there's definitely value in that. I can't speak for other products, but GoatCounter intentionally _doesn 't_ try to solve every possible analytics use case.

Adding advanced features frequently comes with the trade-off that it makes things harder for people who _don 't_ use those features, so by limiting the scope it gets easier/better for some, and worse/harder for others. I found this is the case for software in general.

There certainly _should_ be an UI to quickly compare how the current quarter is doing compared to the last quarter (I wrote some code for that last week, but not done yet), but doing stuff like adding extra search parameters like "from mobile" and "from Netherlands" seem awfully specific to me. While certainly useful for some, most people are not hard-core marketers and adding stuff like that is just "noise" for a lot of people which makes stuff harder to use for them.

Matomo can do all of that, and I also found it hard to use.

Or, tl;dr: Matomo is already good at being Matomo, let's do something different :-)

Related comment from a while ago: [https://lobste.rs/s/e8zgt0/github_is_now_free_for_teams#c_r4...](https://lobste.rs/s/e8zgt0/github_is_now_free_for_teams#c_r4vyje)

</comment></comment></comment></comment></comment><comment><USER20> I'm not associated with them at all, but Fathom are worth looking into if you want an analytics platform that respects user privacy: [https://usefathom.com/](https://usefathom.com/)

<comment><USER21> Hey, thanks for the shoutout. We're a great option for so many reasons but here are a few recent things"

* We allow our users to bypass ad-blockers and exclude themselves from tracking their own page views ([https://usefathom.com/blog/custom-domains-embed-code](https://usefathom.com/blog/custom-domains-embed-code))

* We are both full time on Fathom, bootstrapped (we've turned down millions in VC) and profitable ([https://usefathom.com/blog/quit](https://usefathom.com/blog/quit))

* We are adding in unlimited uptime monitoring on Friday (SMS, Telegram, Slack and email notifications)

* We run on auto-scaling infrastructure and are used by individuals, small businesses, governments and some of the biggest companies in the world

<comment><USER22> Without launching into moral judgement, I'd just like to mention that people who block your analytics code from loading normally are often sending you a pretty strong signal that they would not like to be tracked. Do you have something that might take this into account?

<comment><USER21> We don't share that stance. Most people install ad-blockers to block dodgy advertisers, Facebook and other privacy-invasive websites.

<comment><USER23> Does Fathom honor DNT requests from visitors?

<comment><USER21> DNT has been abandoned, so we don't support it by default, but you can honor it by adding honor-dnt="true" to your script.

</comment></comment></comment></comment></comment></comment><comment><USER24> GoAccess is really cool. Matomo is free and self-hosted if you want more of the features of Google Analytics like tracking time on page.

<comment><USER25> I am also working on a similar product to Matomo, it's not free but it also provides some of the Matomo's premium features for a much cheaper price: [https://usertrack.net](https://usertrack.net)

</comment></comment><comment><USER26> I like this blog post and I support anyone who removes a third party tracker from their site.

There are companies that live and die by analytics and demographics but your personal blog doesn't need the information that GAnalytics sucks up.

GoAccess (suggested in a article) is a fine choice, although I found it did not do a good job of filtering out bot hits. For most people this might not be a big deal but it annoyed me.

In the end I just wrote[0] a simple hit counter that triggers off a js beacon.

[0] [https://github.com/andrewstephens75/visitlog](https://github.com/andrewstephens75/visitlog)

</comment><comment><USER27> Something like Matomo running on a cheap VPS (less than $5/month) is a good Google Analytics replacement for small projects.

It's cheaper than Simple Analytics (mentioned in the article) and no data is sent to a service operated by a 3rd party because it's self-hosted.

<comment><USER25> I am also working on a similar product to Matomo, it also provides some of the Matomo's premium features for a much cheaper price: [https://usertrack.net](https://usertrack.net)

</comment></comment><comment><USER28> GoAccess is cool but it won't help you much if you have a static website or if you serve the majority of requests from a CDN. In those cases, Matomo (previously piwik) is a good solution for client-side JS-based analytics similar to Google Analytics.

<comment><USER29> How does Matomo work better with a static site, than GoAccess? GoAccess reads the server logs and creates metrics. Matomo requires javascript; that isn't 'static website'.

<comment><USER30> GoAccess reads metrics of a server you have access to. So if you are distributing from a CDN or for instance GitHub or some other hosted solution, then you have no logs to read from.

Also usage of javascript doesn't make one page non-static. Static is usually referred to a page that is rendered in full before a request comes in so the content does really change based on the request. More simply, content doesn't change dynamically based on the request. Having javascript to generate metrics doesn't make the page dynamic.

</comment></comment></comment><comment><USER31> I like GoAccess for following reasons:

* No javascript.

* Does not need a database.

* Realtime stats in html format.

I use it in my blog, but also believe, that the numbers are completely inflated. I don't trust them. This has been discussed on Github a few times [1], so don't expect accurate numbers (yet).

It's also hard to see what's going on recently on you server, because you only get totals. I'd love if I could change the time interval of the shown html stats.

I like the way GoAccess is going though and I hope it will improve.

[1] [https://github.com/allinurl/goaccess/issues/964#issuecomment...](https://github.com/allinurl/goaccess/issues/964#issuecomment-350607068)

<comment><USER32> Interesting, I've switched from Google Analytics to GoAccess ~5 years ago. I let both analytics run for a month and compared the results. The _relative_ numbers were very similar (so I get the same information about what blog posts are most popular), but the _absolute_ numbers were in fact _lower_ for GoAccess. It might be because tech blog visitors are using AdBlockers more often (and hence block GA).

> _I 'd love if I could change the time interval of the shown html stats._

GoAccess displays the data that you pass it. So while it doesn't have any date filter option (at least the last time I've checked), you can just filter your logs beforehand. There's even a more simple solution that I'm using: Set the logrotate to a specific time frame (e.g. weekly), so you can pass "access.log" to GoAccess to only get the latest stats. You can still pass "access.log*" to get ALL stats at the same time.

<comment><USER31> About the numbers: thanks for your input. I guess, you get more accurate results the more visitors you have. On my small sized blog I doubt the numbers and think, that GoAccess does not filter out some bots. You can try to determine them and filter them out, but well, that takes some time.

However, even if the numbers may not be accurate, you still see overall trends, which is valuable.

And thanks for the log-rotation trick. I will definitely make use of it.

<comment><USER4> Most bot filtering from analytics tools (GA or Adobe or so) are quite efficient. So you would expect lower traffic in these tools as from a tool using your server's log files.

On the other hand a lot of browser plugins or privacy/incognito mode kill analytics and do not have any effect on your log files. This would lead to higher numbers in your log files as well.

So I would expect somewhere between 10% - 25% increased numbers from your log files depending on the audience you serve and the overall traffic volume your site has.

At least this were the numbers some years back, when we did some additional backend tracking for some clients, were we linked the front end tracking tool ID (from the cookie) to the tracking hit being sent from the backend with additional information. Back in 2015 it was between 7% and 19%, in 2018 (before GDPR kicked in) it was 'tween 15% and 27% of backend tracking hits that did not have a frontend ID associated with them. So we knew the amount of tracking calls that had FE tracking blocked.

<comment><USER31> Very interesting. I just checked my logfiles and as expected most traffic seems to originate from search crawlers, feeds and bots running through all kinds of exploit urls. Hard to tell, but a wild guess is that more than 75% of hits and visitors are bot-related.

I learned that it is possible to exclude bots through browsers.list [1] and in goaccess.conf you can exlude ip ranges. Unfortunately updating those entries is very time consuming and probably not worth it.

[1] [https://github.com/allinurl/goaccess/issues/560#issuecomment...](https://github.com/allinurl/goaccess/issues/560#issuecomment-441166690)

</comment></comment></comment></comment></comment><comment><USER32> Similar HN Posts from the past:

* [https://news.ycombinator.com/item?id=22813168](https://news.ycombinator.com/item?id=22813168)

* [https://news.ycombinator.com/item?id=21890027](https://news.ycombinator.com/item?id=21890027)

* [https://news.ycombinator.com/item?id=19883876](https://news.ycombinator.com/item?id=19883876)

* [https://news.ycombinator.com/item?id=18810035](https://news.ycombinator.com/item?id=18810035)

</comment><comment><USER33> I feel like all I need is a good script to filter out bots and spiders. I could take the rest from there.

<comment><AUTHOR> This is an interesting thought. I wonder if I could pre process my log files to get rid of this noise ahead of piping to a log analyzer.

<comment><USER19> I worked on a library to do this for my own analytics thing[1]; adding a CLI so you can filter bots from logfiles isn't too hard: just need to parse the log lines to a http.Request{} with the correct fields filled in (mostly User- Agent, but also looks at IP address).

One of the signals is from various JS properties though (navigator.webdriver, window._phantom), so you'll miss out on that. I have some other ideas as well.

Either way, it's better than nothing?

[https://github.com/zgoat/isbot](https://github.com/zgoat/isbot)

<comment><AUTHOR> This is cool! I've bookmarked it for future review. Thanks for sharing

</comment></comment></comment></comment><comment><USER34> I'm not associated with Countly ( [https://count.ly/](https://count.ly/) ), but I heard good things from my friends using it. It's open source and makes money with enterprise edition.

</comment><comment><USER35> If you run on AWS and want cheap and privacy-focussed website analytics, you might also look at [https://ownstats.cloud/](https://ownstats.cloud/)

<comment><USER36> Thanks. That fits our use-case. Now just need to figure out how to do the visualizations...

</comment></comment><comment><USER37> I was going to say "what about Matomo". But then Matomo are still lurking around in the dark ages of Python 2 and are not worthy of recommendation until they pull their finger out and sort out their analytics scripts that rely on that obsolete thing ([https://github.com/matomo-org/matomo-log- analytics/pull/242](https://github.com/matomo-org/matomo-log- analytics/pull/242), [https://github.com/matomo-org/matomo-log- analytics/issues/3](https://github.com/matomo-org/matomo-log- analytics/issues/3) etc. etc.)

<comment><USER4> I am totally not a friend of anyone still using py2.x (esp. as it has EOLed [1].

Non the less one doesn't need to use log analysis and py2.X if you want to use Matomo as a GA replacement in the frontend.

So yeah - they should fix the log analysis part with py2 -> py3. But that doesn't invalidate the whole tool imho.

[1]: [https://www.python.org/dev/peps/pep-0373/](https://www.python.org/dev/peps/pep-0373/)

</comment></comment><comment><USER38> Has anyone had the experience of seeing over-reporting of some metrics in Google Analytics as compared to an internal tracking system? Is this data generally seen to be 100% reliable?

</comment><comment><USER39> Nice work! Every time I see the "de-Google-ing" posts, there are people in comments saying but can it do this or can it integrate with that Google product.

I'm working on a Google Analytics alternative myself [1] and we make it clear that it is not meant as a clone or a full blown replacement of Google Analytics.

Some people are fine running GA and are happy to integrate with Google Ads and the rest of the Google ecosystem.

On the other hand, some would prefer to focus more on privacy of their visitors or on not having to get cookie / GDPR consent or on having a faster loading website or support a more independent web etc. And alternative solutions to Google products such as these are more meant for those use cases.

[1]: [https://plausible.io/](https://plausible.io/)

</comment><comment><USER40> There's also Cloudflare Analytics, no js tracking or serverside logging required in case you are behind CF.

</comment><comment><USER41> [https://statcounter.com/](https://statcounter.com/) have been around forever and offer a good alternative as well.

</comment><comment><USER42> Very cool project! It is good that more people are trying to go Google-free. Your project does server side analytics, though, while Google Analytics is client side. Both different advantages and disadvantages.

Server side analytics advantages: \- No overhead on your website, because no external resources are loaded \- Not affected by content blockers \- Can track resources other than web pages, like images or redirects \- Show resources that could not be found

Client side analytics advantages: \- Can capture more data about the user, like device size, browser and OS \- Better track user behavior, like time spent on each page \- Provide real-time feedback about visitors \- Usually easier to setup (3/8)

I've been playing around with different analytics options on my blog recently - Netlify on the server and Plausible Analytics on the client side. The results from 7 days comparison turned to be quite different [0].

The server side tool shows much more views across all pages in my blog. I think this is because the pages are accessed many times from automated systems that don't run JavaScript and are therefore not counted on the client side. This happens when you post a link on Twitter or WhatsApp for example, because their websites or clients then make a request to fetch the metadata of the page and display a card preview. Therefore, it counts on the server, but not on the client side. A perfect example is the draft article, which I only sent per WhatsApp to my wife for proof reading. The difference there is just 2 views (I guess one preview each on my and on her phone). I sent all other links to several people and posted them on Twitter and Reddit.

You can also somewhat see this effect in the referrers [1]. The server side tool counted many hits from a RSS reader and Google Translate (my parents in law reading my blog in Bulgarian :D). The preview requests from Twitter and WhatsApp are probably counted as direct traffic.

I think client side analytics more realistically count the number of people reading my blog (even if not many). However, there are cases that can be captured only on the server side (for example Google Translate). So, the best way would be to use both or maybe even make a service that combines client and server side - I think there is a lot of potential there!

[0] [https://pbs.twimg.com/media/EY- IqtdXsAAJvu9?format=jpg&name=...](https://pbs.twimg.com/media/EY- IqtdXsAAJvu9?format=jpg&name=medium)

[1] [https://pbs.twimg.com/media/EY-J0c8WoAEwn2J?format=jpg&name=...](https://pbs.twimg.com/media/EY-J0c8WoAEwn2J?format=jpg&name=medium)

<comment><USER43> There's one more advantage to client side analytics, though maybe you meant to cover that under "Usually easier to setup": it's the only option if you host your site on a platform like Github pages. The problem is, you don't have access to server-side logs on these platforms.

</comment></comment><comment><USER44> So... more work, slower, and fewer features than GA.

<comment><USER45> google is only interested in selling you ads. They don't care whether you actually get anything out of their analytics product. If it's free, you ARE the product.

<comment><USER46> Can we not have this mindkill of a line posted in every frigging thread on HN about Google or FB?

Google IS interested in making Google Analytics better, because that ensures that more people use it on their websites, because then, with your cynical framing, Google can use it to sell you better ads.

It's bizarre how people here pretend like Google is simultaneously zealous about selling you ads but also stupid enough to not realize what parts of the Google eco-system synergize with the whole machinery.

<comment><USER45> I submitted a feature suggestion years ago to add an API for annotations which by now has been voted up a million times and they still ignore it. Really, they don't care about making products better.</comment></comment></comment></comment>


SoundStream – A simple-as-possible, fast audio I/O stream for Rust - <AUTHOR> https://github.com/mitchmindtree/sound_stream

<comment><USER2> This is neat, but...

> SoundStream requires that you have the PortAudio lib installed on your > system

Meh.

Theres really no excuse, given cargo now has proper support for building cross platform dependencies.

My least favourite thing about rust is trying to use a crate only to find 'author assumed you already had dependencies installed. sorry'

<comment><USER3> Compiling external dependencies is non-trivial, even though cargo gives the bare minimum of tools to make it possible. I think it's unreasonable to expect rust to construct it's own replica of distribution's packages for C/C++ code. To my knowledge no other language has a package manager or repository which does this, or even attempts to.

<comment><USER2> Cargo's build system doesn't have to _build_ the dependencies, it just has to resolve them _somehow_.

That can be via package manager, pkg-config, static library download, building them, or via prompting the user to install them manually.

Since rust supports the #[cfg(target="foo")] in build scripts, you can even implement your solution for just one platform, and then slowly add additional platform support as people demand it.

A message like: "Hey, your platform isn't supported by our build script; submit a bug at ... if you'd like to get support added. We welcome push requests". <\-- A+++

For example, android support is probably not a target for most crates, but it may be an important target in the future for many libraries. ...and building a cross-compiled android binary is _a LOT more involved_ than just an 'apt-get install foo'.

Just failing? Nope.

</comment></comment></comment><comment><USER4> When is this language expected to go 1.0 ?

I've seen many discussions here about rechanging the api of the libraries since they were expecting features from the language.

<comment><USER5> Early next year. Check this post [http://blog.rust- lang.org/2014/10/30/Stability.html](http://blog.rust- lang.org/2014/10/30/Stability.html)</comment></comment>


A new integrated workspace in G Suite - <AUTHOR> https://youtu.be/IAzeI1Om16k <comment><USER2> Wave has finally materialized. Unfortunately, in a completely proprietary manner.

I think Slack's growth is about to taper off.</comment>


Ubuntu 12.04 ARM Performance Becomes Very Compelling - <AUTHOR> http://www.phoronix.com/scan.php?page=article&item=ubuntu_1204_omap4460&num=1 <comment><USER2> A lot of applications used on ARM may still be crippled due to lack of NEON assembly code. Many number-crunching applications, like compression, have lots of MMX/SSE SIMD on x86, but no NEON, and will likely be slow on ARM until they do.

<comment><USER3> What do you mean? All dual core ARM chips and above (except Tegra 2) have NEON. Also all 1 Ghz and above Snapdragon chips.

<comment><USER4> Most smartphones now are armv7 and have been for the last 2 years or so.

I don't see an issue with a baseline being set for armv7+vfp+neon being a minimum processor feature set going forward for mobile devices (phones & tablets)

</comment></comment></comment><comment><USER5> Well the hardfloat stuff was clearly worthwhile, but some meaningful benchmarks against x86 would be more useful. My ARM machines are all faster than my terrible Atom, but a lot slower than anything modern for cpu intensive benchmarks.

<comment><USER6> how long does it take to compile the linux kernel?

<comment><USER7> It takes "ages", but that is mainly due to the very slow mass storage speed that current ARM SoCs feature. Mobile phones and development boards like the Pandaboard use SD cards as mass storage and SD cards can be very slow when not used for typically linear read/write operations in your digital camera

<comment><USER8> Do you have any data to back this up? I have compiled kernels on an ARMv5 device off a (I believe PCI-e-hosted) 7200rpm SATA hard disk, and it _is_ slow.

<comment><USER7> I have only anecdotal evidence from people that are masochistic enough to compile their stuff natively, I prefer to cross-build.

</comment></comment></comment></comment></comment><comment><USER4> This particular set of benchmarks are misleading as more of the performance comes from a faster CPU clock speed. For a more accurate feel, look at the middle set of numbers.

That said, hardfp looks to be a definite gain over softfp and really should have been deployed by distributions when the Cortex-A8 generation of processors became available.

<comment><USER7> There are very few hardfp benchmarks that really compare just this feature and leave the rest of the system identical. E.g. comparing Debian armv5 with floating point emulation vs Ubuntu armv7hf of course yields a huge gain, but that mainly is not due to the fact that floating point values are now passed in fp registers.

If SW relies heavily on passing a handful of floating point values in function calls, it should be rewritten to use NEON/SIMD on ARM - and then all you pass is a pointer to the data, regardless of the calling convention. And once you move to writing the mission critical stuff in assembly, you can chose your own calling convention for subroutines as you see fit anyway.

</comment></comment><comment><USER9> For reference, this is the same CPU as the Galaxy Nexus, run at the same clockspeeds.

</comment><comment><USER3> Cortex A15 and DDR3 for ARM should really start to make the ARM architecture very compelling for (low-end) laptops with very high battery life. And they're both arriving this year.</comment>


Bird Acquires Scoot - <AUTHOR> https://scoot.co/stories/bird-acquires-scoot/ <comment><USER2> Comments moved to [https://news.ycombinator.com/item?id=20167106](https://news.ycombinator.com/item?id=20167106), which was posted earlier and has a bit more information than the press release.

<comment><USER3> This was posted "one hour ago" while item you linked in the comment is "32 minutes ago" \- unless time flows differently for you, the other is not earlier.

However, the other is not a press release. So ... whatever.

<comment><USER2> It was posted 4 hours ago. Timestamps are adjusted by the second-chance lobber; see [https://news.ycombinator.com/item?id=19774614](https://news.ycombinator.com/item?id=19774614) and [https://news.ycombinator.com/item?id=11662380](https://news.ycombinator.com/item?id=11662380). You can think of the modified timestamp as the resubmission time, though it's a bit more complicated than that.

The best way to see which came first is to look at the post IDs: 20167106 < 20169125\. Or, look at pages other than the front page or /item. For example: [https://news.ycombinator.com/submitted?id=cdepman](https://news.ycombinator.com/submitted?id=cdepman). Those always show the original timestamp.

Sorry for the confusion, but it's the only way we've found to balance the various concerns that apply there.

</comment></comment></comment><comment><AUTHOR> English press release: [https://scoot.co/stories/bird-acquires- scoot/](https://scoot.co/stories/bird-acquires-scoot/)

Edit: sorry, this should have been the link for the story. Would a mod mind swapping out the post's link?

<comment><USER2> Sure. Changed from [https://scoot.co/stories/bird-adquiere- scoot/](https://scoot.co/stories/bird-adquiere-scoot/).</comment></comment>


Twitter CEO: "It's amazing anyone uses Twitter today" - <AUTHOR> http://thenextweb.com/2008/12/03/twitter-ceo-its-amazing-anyone-uses-twitter-today/

<comment><USER2> My favorite bit was the "On competition" one:

"I'm pretty sure they are (planning to), but we can't worry about that. Focus is a really big deal. Even Google stumbles on the focus issue. It's not as important as search and advertising. Innovator's dilemma works against bigger companies."

Sage advice for any entrepreneur, and a word of warning for big companies that are losing their touch.

<comment><USER3> I saw that too, but the quote seems out of context to me. In particular, what does "It's" refer to in the sentence "It's not as important as search and advertising."

Is he referring to Google entering Twitter's space, and saying that, for Google, microblogging isn't as important as search and advertising?

</comment></comment><comment><USER4> I thought it would have been nice to use the full quote in the post title. It makes it sounds like a faux pas.

Twitter CEO: "It's amazing anyone uses Twitter today. It's hard". Which an extremely honest and candid answer in a discussion. It's cool that he is complementing the number of people doing things with twitter and wants to make it even for people to use the service.

</comment><comment><USER5> I understand his meaning, but this kind of a boneheaded thing for a CEO to say.

<comment><USER6> Not at all! It's honest and has no risk of actually discouraging anyone from trying Twitter.</comment></comment>


Google Focused Linux PC's Fail At Wal-Mart - <AUTHOR> http://www.techcrunch.com/2008/03/10/google-focused-linux-pcs-fail-at-wal-mart/ <comment><USER2> Interesting... didn't they sell out at first?</comment>


Economists are turning to culture to explain wealth and poverty - <AUTHOR> https://www.economist.com/schools-brief/2020/09/05/economists-are-turning-to-culture-to-explain-wealth-and-poverty <comment><USER2> How can the answer possibly be culture if there are rich whites and poor whites, rich blacks and poor blacks, rich asians and poor asians?</comment>


Pornography 'systemic' at National Science Foundation - <AUTHOR> http://blogs.nature.com/news/thegreatbeyond/2009/01/pornography_systemic_at_nation.html

<comment><USER2> That made my day.</comment>


Google Maps now WebGL accelerated - <AUTHOR> http://google-latlong.blogspot.com/2011/10/step-inside-map-with-google-mapsgl.html

<comment><AUTHOR> Although as far as I can tell right now the only new "eye candy" is a swooping transition when you switch between map and street-view.

</comment><comment><USER2> Thanks, whoever, for adding the "non-dynamic" view of the latlong blog. An aid for those of use who browse with scripting disabled.</comment>


Alexandria Ocasio-Cortez Is Absolutely Right About Racist Algorithms - <AUTHOR> https://breakermag.com/alexandria-ocasio-cortez-is-absolutely-right-about-racist-algorithms/ <comment><USER3> There is no design of AI that can be simultaneously utilitarian, procedurally fair, and representatively fair.

I'm going to repeat this again, since many people struggle with this.

It is _literally impossible_ to achieve the best utilitarian outcome, the most procedurally fair outcome, and a representatively fair outcome.

Anyone designing algorithms will have to make tradeoffs along this frontier.

For a far better argument for the above than I can make in a Hacker News thread, please see these slides from Chris Stucchio:

[https://www.chrisstucchio.com/pubs/slides/crunchconf_2018/sl...](https://www.chrisstucchio.com/pubs/slides/crunchconf_2018/slides.pdf)

<comment><USER4> More to the point, "procedural fairness" or "equality of opportunity" (if I understand it correctly) is directly opposed to "representative fairness" or "equality of outcome". In many situations, prioritising one will compromise the other. As an example, Harvard admission of Asian students.

Perspectives differ on which one is more important. Personally, I'm absolutely for the former, but it increasingly seems I'm a part of the minority (or the silent majority).

<comment><USER5> In order to create a situation where people have equality of opportunity, it's often necessary to ensure that the individual had an equal outcome that creates the necessary starting state.

<comment><USER4> In theory I agree but in practice that often leads to racism. For example, some people support discrimination for blacks (& against whites) at e.g. college admissions, purportedly to offset their (statistically) worse family background (in terms of education and wealth). Clearly, that's a terrible and racist solution, with the better and obviously correct solution being... to support people from worse family backgrounds! Instead of targeting the proxy for the problem, you solve the problem itself.

<comment><USER6> The flaw with this argument is that if you recognize that for example, black people are generally worse off in family background than white people, then you end up back at the point where you on average offer more aid for black families than white ones which by your argument would be racist.

You're not solving the problem at all by attempting to sweep racism under the rug; quite the opposite in fact because it fails to address how race affects family background and discrimination in the first place.

<comment><USER7> Why on Earth supporting poor people regardless of their race would be racist by anyone's criteria?

It would seem you are the racist here thinking a person needs support because he is black, not because he is poor.

<comment><USER8> Think of it like this. If you wanted to support all individual poor people in America equally, you'll end up helping a disproportionate number of black people, because black people are disproportionately poor. So it's actually reasonable to say "black people need a disproportionate amount of help" if you're trying to help poverty in an unbiased way.

<comment><USER7> That is imprecise to the point of being unreasonable.

In your example help isn't given to all black people, only to the poor ones.

If you consider help given to poor black people vs. help given to poor white people, it becomes proportional.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> The second half of the article that talks about Yudkowsky, rationalists, and Roko's Basilisk is absolute trash and a gross mischaracterization of the actual positions taken.

>Yudkowski has for more than a decade pursued the possibility of perfect human reasoning

His website is literally called "Less Wrong". It's fundamentally a quest for _improvement_ , not perfection.

>His system of coldly logical reason, it turned out, was by many accounts completely undone by a logical paradox known as Roko's Basilisk.

Roko's Basilisk is a thought experiment designed to import your "don't negotiate with terrorists" intuitions into a really weird corner of decision theory. It's possibly why prior decision theories held were rejected as flawed, but it's not a current issue with their logic. Roko's Basilisk has, unfortunately, gotten way more coverage and fame than it deserves in terms of actual importance. This is because of the regretful (but understandable) decision to censor discussion of it on Less Wrong, which backfired spectacularly.

>For super-nerd bonus points, it's also arguably a spin on Godel's incompleteness theorem, which argues that no purely rational algorithmic system can completely and consistently model reality, or prove its own rationality.

That's not at all what Godel's incompleteness theorem argues. That's much more narrowly about formal logic.

<comment><USER10> > _" This is because of the regretful (but understandable) decision to censor > discussion of it on Less Wrong, which backfired spectacularly."_

Can you explain the (understandable) rationale behind Less Wrong censoring discussion of Roko's Basilisk? I've been lead to believe it was censored out of fear that discussing it could somehow inspire its actual creation.

Honestly from a distance Less Wrong has always struck me as vaguely cult-like, but I'm open to the possibility I've just gotten the wrong impression.

<comment><USER11> I think the more charitable interpretation is that the discussion was taking over everything. If people are fixating on a narrow topic for a long time (without much progress) then sometimes it's helpful to say "alright people, let's move along now."

You're right about Less Wrong feeling like a cult, though. It gives me the heebie-jeebies.

<comment><USER12> >You're right about Less Wrong feeling like a cult, though. It gives me the heebie-jeebies.

They even have a succession plan similar to finding the next Dalai Lama:

[https://www.youtube.com/watch?v=d9_2qhkWHN8](https://www.youtube.com/watch?v=d9_2qhkWHN8)

</comment></comment></comment></comment><comment><USER13> All: we're going to try turning off the flags on this story. If you're going to comment here, do it civilly and substantively. I can already see signs of thought-degrading flame-entropy appearing, and if it continues we'll restore the community defense mechanism.

</comment><comment> Sol- The article implies that both algorithms and the data are at fault, which I don't think is true. It's really just the data, the algorithm reflects the 'truth' it finds in the data.

Interesting talk relating to the topic: [https://www.youtube.com/watch?v=jIXIuYdnyyk](https://www.youtube.com/watch?v=jIXIuYdnyyk)

Many approaches in fair machine learning that try to 'de-bias' the algorithm basically just do stuff like reducing the accuracy in the advantaged group to make the algorithm seem more fair - that is hardly what you want and will just make you susceptible to charges of discriminating against the majority or employing affirmative action. Probably rightfully so, because that's what you do. It's absolutely fine if that's the intent, but then you should have a public discussion where you are open about the fact that you manually tinkered with the parameters to prefer fairness over accuracy (which can probably be a valid goal).

I think finding the problems with the data is very important though. Everyone wins if the quality of your data increases: the algorithm can become both more accurate and also more fair. And it can also identify societal causes for this biased data, for instance police being more sensitive to crimes of minorities, which will then feed back to the innocent algorithm.

A related point is of course that we should be wary of putting too much power and trust into faceless algorithms in the first place.

Also some interesting collection of papers on the matter: [https://fairmlclass.github.io/](https://fairmlclass.github.io/)

</comment><comment><USER14> I thought we got over "the computer is never wrong" fallacy by the end of the 90s. Anyone involved with computing should know GIGO - Garbage In Garbage Out.

<comment><USER15> So you are saying any data for which any input feature is correlated with race or sex is garbage. That's going to make doing useful data science incredibly difficult with anything involving humans.

<comment><USER16> Strawman

Sex is easy to incorporate. Race is more difficult because vanishingly little work has been done with a concept of race based on anything resembling real population genetics, but it's not impossible in theory. Hint: if you really care about human biodiversity, you'll spend most of your time in Africa and some isolated islands, not looking at brown people in the west.

The issue is GxE, where we see loads of racists and sexists just patently forget about 'E' and conclude that women or brown people are genetically inferior. Some will try to gussy that up as 'different' rather than inferior, but the dog-whistles may as well be air-raid sirens.

'Data science' is fine if you're AB testing websites. When you try to do real science, you'll find that the utter lack of research experience is .. a bit of a problem. Caring about PhDs isn't credentialism, it's wanting a plumber that has worked with pipes before. You have to actually perform research to get decent at it. It usually takes about a decade before you can honestly do it independently. If you can look back at what you did a year ago without cringing, you're not making that progress.

Some schmuck with PANDAS and a Bio101 class 8 years ago isn't a scientist.

</comment></comment></comment><comment><USER17> It's more clear to me than ever now that the left and the right do not use the word "racist" the same way.

The left thinks of racism in terms of outcome and the right thinks of racism in terms of intent.

We could benefit from better language around these concepts, and honest dialogue about them too.

<comment><USER18> What I get from people on the left is that an unequal outcome is indicative of racism, however subtle that racism is. The only other explanations for an unequal outcome are biological differences between races (do not want to get into that) and races haves advantages over others from past history.

<comment><USER19> Unequal outcome is not indicative of racism, it is racism. That's the point: racism is an outcome, not an intent. An unknowing, unfeeling beurocratic system can be racist, even if there isn't a speck of racial bias in the hearts of the practitioners and designers, simply due to historical quirks as you point out, or design mistakes.

<comment><USER4> So your argument is that Harvard is racist if it _doesn't_ discriminate against Asian applicants? So that they are _not_ overrepresented among the student population?!

<comment><USER19> No, my argument is that "it's just numbers! they don't have a soul!" is not a valid defense from accusations of racism, because the statistical systems can be racist in their design, and there is no "racist meter" you can apply to check. The only way to know if a system is fair or not is to check whether the results you're getting are the ones you want.

<comment><USER20> FWIW, your usage of the the term 'racism' is not at all what most people mean when they use the term. The vast, overwhelming majority of people do not think in terms of systems. They think in terms of agency.

<comment><USER21> "vast, overwhelming majority of people"

You gonna back that up?

<comment><USER20> [https://www.dictionary.com/browse/racism](https://www.dictionary.com/browse/racism)

[https://www.dictionary.com/browse/racist](https://www.dictionary.com/browse/racist)

No mention of what the person I was responding to was talking about.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER22> Disparities in racial outcomes do not necessarily constitute racism.

The author flippantly violates this by claiming the credit system to be racist, but the Equal Credit Opportunity Act has been in force since 1974.

We know the factors that affect credit, some of them are income, payment history, loan balances, number of credit checks, etc.

<comment><USER23> > The author flippantly violates this by claiming the credit system to be > racist, but the Equal Credit Opportunity Act has been in force since 1974.

Surely you're not arguing that the law instantly solved everything?

Countrywide - once the lender for 20% of mortgages - was dinged for violating the ECOA in 2011, so violations were clearly still occurring then, and are likely continuing today.

Add in the fact that redlining has multi-generational impact, too. Housing is one of the big ways families pass wealth down to their kids and you get potential racist _impact_ due to past actions even if the _current_ implementation is race-blind.

<comment><USER24> I think a lot of people (especially on HN) view racism in terms of internal processes rather than results. If the current implementation is race-blind, that satisfies them.

[https://www.reddit.com/r/EndFPTP/comments/8wz6g3/impartial_a...](https://www.reddit.com/r/EndFPTP/comments/8wz6g3/impartial_automatic_redistricting_an_end_to/e21dlgq/)

<comment><USER25> Even on that narrow view, the fact that the law on its face requires systems to be race-blind doesn't mean that, in fact, they are.

</comment></comment></comment></comment><comment><USER26> I really wish people would at least skim the wikipedia page to figure out the vocabulary of the field they're about to opine on.

The left-progressive use of the word 'bias' is completely different than the way statisticians use the word.

If bias increases accuracy/precision, it's not bias.

The more interesting question is this - is it permissible for models to consider protected characteristics if those characteristics improve the performance of the model?

<comment><USER27> > The left-progressive use of the word 'bias' is completely different than the > way statisticians use the word.

There's lots of words people use that don't match up with exact scientific definition. Infer from context which version applies, or ask, and you'll be fine. Also applies to: force, resistance, acceleration, etc. We know that startup accelerators help companies grow faster and not actually increase their physical velocity.

<comment><USER28> > Infer from context which version applies, or ask, and you'll be fine.

Your solution is the correct one, yes. Except the 'progressives' in question are working very hard to selectively remove context (and intention) from language for an ever growing and arbitrary list of words/situations. Where simply speaking about it in a way which a [insert particular special interest group depending on the situation] view as 'incorrect' based on _thier_ ideology/worldview, then you are instantly wrong and acting maliciously regardless of context/intention. You hear this often today. for example: "you can't ever joke about x" or "you can't talk about x historical event without also mentioning y" or having to preface any wide-ranging statement with 100x conditions so as not to offend any group loosely related to the topic.

We should fight to keep language from moving further in this direction because this alternative idealistic world, despite good intentions, is making the world a worse place, not a better one. We can't naively pretend that by creating a huge complicated system of no-go-words, ie not saying certain combinations of words out loud, will automatically makes peoples _internal_ thoughts change for the better and ultimately change outcomes in society. This is merely hypothetical and far from proven method to be effective.

If anything it makes people resentful and creates ridiculous kafkaesque situations where you have to jump through hoops to engage in the most basic innocent dialogue and debate.

Which is ultimately anti-intellectual, inefficient, and irrational compared to how incredibly important context and intention are in a million other examples which they seem to have no problem with.

The worst part is how it incentivizes the worst behavior by giving small people "power" by allowing them to walk around correcting everyone's apparent "misuse" of "problematic" language (which is like crack to the social media outrage culture). Even despite situations where the given audience and in context it was totally harmless and the meaning fully understood by everyone involved.

</comment></comment></comment><comment><USER17> It just dawned on me that the left and right absolutely do not think of "racist" exactly the same. The left looks at outcome and the right looks at intent.

We need better words.

<comment><USER29> Those words are "systemic" or "implicit" or "institutional", etc. All you really need is a proof or example that racist/sexist outcomes are possible even when there is no overt intent. And there are plenty of examples like that out there. Failure to accept that those examples exist, however, is something beyond just looking at intent instead of outcome.

<comment><USER30> I'd also like to bring up the International Obfuscated C Code Contest.

Just because a policy seems reasonable and has straightforward justifications for all of its pieces doesn't mean it wasn't maliciously designed to another purpose. The stated intent is not always the only intent and if the results...

<comment><USER31> Perhaps even more apropos to your point is the Underhanded C Contest:

[http://www.underhanded-c.org/](http://www.underhanded-c.org/)

</comment></comment></comment></comment><comment><USER10> Speaking of which, has Google managed to solve their "gorilla problem" yet? That was easily the most offensive case of a biased algorithm I've ever seen, and the last I heard of it Google 'solved' the problem by pretending it didn't exist ([https://www.wired.com/story/when-it-comes-to-gorillas- google...](https://www.wired.com/story/when-it-comes-to-gorillas-google- photos-remains-blind/)).

</comment><comment><USER32> Besides the obvious, this gives me hope that the newly emerging generation of leaders might not be as painfully technologically illiterate as the current generation, and we might finally be able to see intelligent, educated decisions and laws about technology start to appear.

<comment><USER33> If AOC is an example of this new generation, we're in trouble.

<comment><USER32> In terms of tech literacy, which was my point, give this example I think she seems like she's doing quite well, regardless of her personal politics.

<comment><USER33> What tech literacy? If by 'tech literacy' you mean 'social-media literacy', or 'millennial-culture literacy', then I agree. Otherwise, I've never heard anything from AOC that demonstrates any kind of tech literacy.

<comment><USER34> I hear she had something smart to say about machine learning and algorithmic racism. Can't find the article right now, but I think I even saw it on HN (where it attracted some very strange comments, including some asking for examples of AOC showing any non-twitter tech literacy).

</comment></comment></comment></comment></comment><comment><USER35> I would recommend that anyone interested in Machine Learning, or "predictive modeling" etc. should read the book "Weapons of Math Destruction".

[https://weaponsofmathdestructionbook.com/](https://weaponsofmathdestructionbook.com/)

I don't have my notes with me and I'm only 1/3 through, but the main theme is that the best predictive algorithms:

* work transparently for all parties (the creators, users, and "inputs", often people).

* Have no feedback loop (The use of data from the model should not further entrench the output of the model).

And a few others. It gets into discrimination and other major flaws of data modeling re: recidivism, school admissions, stock trading, and other things.

Not all algos are racist - but there are definite attributes to avoid, and this book (or a more rigorous version) should be mandatory reading for all "data scientists".

</comment><comment><USER36> The replies on the original tweet are pretty good: [https://twitter.com/RealSaavedra/status/1087627739861897216](https://twitter.com/RealSaavedra/status/1087627739861897216)

<comment><USER37> Particularly this reply:

[https://twitter.com/OsitaNwanevu/status/1087841319219802113](https://twitter.com/OsitaNwanevu/status/1087841319219802113)

Which shows that the original criticism of AOC was entirely disingenuous anyway.

<comment><USER38> not really, manipulating it via human intervention, like he is claiming, makes it opposite of "driven by math".

He wants no human intervention in both cases.

<comment><USER39> An algorithm optimizes on something, that something is set by humans. Full stop.

We've already seen naive "content-neutral" engagement-preference algorithms fail spectacularly (russian propaganda on facebook, elsagate on youtube, etc).

The more naive the algorithm, the easier it is for outsiders to manipulate by gaming inputs to the data stream.

</comment></comment></comment></comment><comment> temp-dude-87844 Machine learning, as well as human learning, largely work off of correlations observed in the source data. In some cases, the data itself is a flawed source for the learning it's being used for, because human biases have already influenced the dataset. An example is arrest records, which is the result of discretionary decisions made by officers whether or not to pursue an arrest.

But in other cases, the source data is less in question, but the results of the learning are nonetheless undesirable. We ought to be able to distinguish, in our professions and our political lives, between the two scenarios. It's counterproductive to conflate the two to strive for a goal, because we risk using mechanisms that never discover and won't correct the true origin factors.

</comment><comment><USER40> I'm trying not to biased, but can't stop to notice sometimes math seems to be biased when you don't like the result:

Saavedra had repeatedly complained about supposed bias in social media algorithms, including tweeting that "tech companies tend to be liberal & something is off with their algorithms because they won't show a lot of content I find by manual search."

<comment><USER41> That's not really a case of being biased when you don't like the result though.

That's a case of likely having a different bias than the people tuning the algorithm, and that happens all the time. You're sense of what is "correct" or "the gold set" is skewed by your own bias, and not everyone has the same bias. It's literally impossible to create results that everyone will find unbiased... and not surprisingly, the results companies end up going with are the ones that seem least biased to the people who work there.

</comment></comment><comment><USER42> Computers "predict recidivism" and will tell you you're not allowed to be paroled because "the algorithm says" you're going to reoffend.

Computers will tell you you can't get a loan because the algorithm says you won't repay.

Or you can't get this job, or that opportunity, or should be spied on, or whatever.

These may be due to biases in the data (imagine a neural net confusing being black with being poor based on historical data, etc).

Now, I am pretty convinced that this stuff is going to screw us all over -- if you thought human bureaucracy was bad, wait until it's all in the computer and no one has permission or ability to change it.

It seems to me that we may have a rare opportunity here: I'm not sure if this wave of tolerance and caring about minorities is permanent or not, but while people do care, and while computers are provably screwing all kinds of people over, we may be able to get enough people to care so that we can curb some of this stuff. i.e. perhaps don't allow neural nets to predict who is going to commit a crime or who shouldn't have a job, because they're too fallible and too easy to rig.

For example, you can keep feeding it new datasets until it produces the biased result you want and now that's your model, and then you can blame "the algorithm" and "bad data" and not yourself. e.g. maybe you feed it old census data instead of recent data, or old crime data, etc.

Of course, knee-jerk "ban the algorithms" isn't a solution, but starting to talk about and think about a computer bureaucracy where no one accessible to you has permission or ability to change the output of the computer, no matter how exceptional the case may be.

</comment><comment><USER43> Ok. Lets assume this is true. (Note: I'm biased in that I accept this as true)

So, as someone who has possibly implemented racist/sexist/ageist algorithms, how do I:

         1. Detect if I'm running a said algorithm (whats the % racism/sexism/ageism I can do before bad?)
         2. Run an open dataset to detect said problems
         3. Prevent overfit with the proposed dataset from #2
         4. Correct said algorithm to reduce bias

What's my way forward here? How do I do my part and take part in the solution? What percent of unintended racisms/sexism/ageism is allowed before being considered illegal?

(worried this article will be flagged, but the nuts and bolts implementation discussion needs done.. and we're the implementers )

<comment><USER29> Not sure you can do it mathematically/statistically, or at least you can't guarantee that, and I think that's part of the point of the critique.

What's better is to explicitly justify the reasons behind _why_ the algorithm was written/used, surface the assumptions, and periodically/regularly challenge those assumptions to see if they are still true.

For example, a bunch of like-minded settlers settle a new geographical area, and then make governmental decisions via some fair consensus algorithm among the people in the government. The surrounding population gets more diverse. The government continues to make decisions the same way it always has, using the same people. The algorithm is sound, but the underlying assumption (that the algorithm/government fairly represents the surrounding population) has become wrong over time.

</comment></comment><comment><USER44> I'm glad to see a representative actually know things like this. Too many of our representatives are technologically illiterate.

<comment><USER45> Does her tweet really imply any knowledge of it? Maybe she just read in the newspaper about the Google face recognition labeling a black woman as a gorilla?

<comment><USER19> Are you saying that face recognition calling black people gorillas is a good thing that we should all be unconcerned about?

<comment><USER45> What makes you think that? No, of course not. I'm just saying having read that gorilla story doesn't imply any degree of technical understanding.

Also, I have to say I considered it hyperbole to be outraged about the Gorilla. It seems pretty obvious that it was just a mistake with the data, not intentional. It is a good warning for things to watch out for, but there wasn't really anything racist about it.

Iirc there are even physical reasons why it is more difficult to identify black faces than white faces. Is that then racist, if an algorithm struggles more with identifying black faces?

<comment><USER19> >I'm just saying having read that gorilla story doesn't imply any degree of technical understanding.

Is great technical understanding required before one can evaluate whether a program that labels black people as gorillas is functioning appropriately?

>Iirc there are even physical reasons why it is more difficult to identify black faces than white faces. Is that then racist, if an algorithm struggles more with identifying black faces?

So you're saying that black people are innately similar to gorillas, and an algorithm can't be blamed for failing to distinguish them? -

If you're trotting out that grand old "black people all look the same" thing, then yep, that's racist too. Black people tend to have different points of variation in facial features (jaw, chin, ear, and brow shape instead of eye and lip shape and color for white people). Inability to differentiate one face from another means not tracking the correct identifying features, which means racist algorithmic design.

<comment><USER45> "So you are saying" \- are you saying you are really a parody/troll account, referring to that infamous Jordan Peterson interview?

No, I am not "saying".

My comment was in response to praise of AOCs alleged technical understanding, not of her ability to judge the gorilla algorithm.

And you don't seem to understand what algorithms do. A simple algorithm could count pixels in an image. If most pixels are white, it could say "human", if most pixels are "black", it could say "gorilla". It would be a verify bad classifier, that would only work in a number of cases. For that algorithm, you could say a black person would be more similar to a gorilla. But nobody would "be saying" black people are similar to gorillas, just that the algorithm would be more likely to classify them as such.

Are you saying people would use the "authority" of such an algorithm to claim black people are gorillas?

"If you're trotting out that grand old "black people all look the same" thing"

I didn't - stop imagining so many things. I am not a photographer. I think there were issues with the lighting and contrast. Physical issues. Other commentator claims it is just because film equipment was calibrated that way.

Even then I would dispute the "racist" label. There are many different looking people on the planet. Just because you can not account for all of them, it is not racist.

I am inclined to call your attitude racist, because you assume everybody is surrounded by the same mix of people (like in the US), and maliciously chooses to ignore certain types. That overlooks the reality of people who are not surrounded by an even mix of people of all types.

</comment></comment></comment></comment></comment></comment><comment><USER46> The article is wrong on multiple angles. First it explains why the algorithm reached its conclusions... the data. So the algorithm wasn't at fault, but the data was, which was supplied by a human. Second, algorithms are inanimate and cannot hold beliefs like racial superiority. It could be used by someone who does, in which case you would want to prove it with other means than just the algorithm. Either way what this really proves is that the new definition of "racist" is whether or not you are the first to bring it up.

</comment><comment><USER47> > But the takeaway is clear enough: Just because something is expressed in > numbers doesn't make it right, or even rational. And rationality itself > might not be quite what it's cracked up to be.

I'll grant something the first half of the first statement: sure, the values encoded into algorithms are not necessarily the values we want them to have ('right'). We want and need to do better at modeling our values.

Even the 'or even rational' part has some merit, some of the time. Like when our models don't reflect reality accurately enough to make helpful predictions about what to expect. Sure, the models are still rational -- but flawed.

But the last sentence is self-comforting intellectual garbage. It's a way to say "don't bother with the hard work of knowing things". It's a gateway for denial. It's saying "if the facts don't line up with what you want, that's ok, sometimes logic doesn't work".

Rationality is precisely what it is cracked up to be: the work of aligning your expectations with reality. It is only as useful as its practitioners are good at it. If you want to summarily write it off as 'considered harmful' then that's your choice. You can deal with the consequences of running headlong into your misunderstandings when they happen, but those of us with work to do will continue to try and get to the bottom of things, even if the problems are complicated.

</comment><comment><USER48> "Racist" algorithm is a total non-sequitur. This article hilights a disturbing gap in basic math literacy between the normal population and specialized knowledge workers.

Training a neural network on a training set that has primarily "white" faces is no more racist than training a neural network to recognize an orange with a training set primarily made up of blood oranges. I don't understand the main critique of this article.

</comment><comment><USER49> Where I think the non-racists have failed us (meaning those whose attention lies mostly elsewhere) is in providing a description of a non-racist system. It may prove impossible, and I think if someone had described one, we'd all have heard about it.

Right now, the only system _I can imagine_ as non-racist is closed and all of its elements belong to the same race.

Mathematicians would probably call this a trivial description. Comedians might call it a country club.

That moves the question not to whether we can build a system that isn't racist, but what racist qualities need the most suppression and which ones (where we have to choose) can be ignored.

Keep in mind this discussion has been ongoing for centuries and was simpler (e.g. slave vs. free) in the past than today (health, education, economics, psychology, religion.)

And more variables appear regularly.

That said, could algos help judges make more consistent rulings/sentences? Probably already are.

Judge: I'm gonna throw the book at this defendant!

LAL 9001: I can't let you do that.

<comment><USER23> > That said, could algos help judges make more consistent rulings/sentences? > Probably already are.

More consistent, probably, but the risk is they'll be consistently _worse_. ProPublica did a big investigation into COMPAS.

[https://www.propublica.org/article/machine-bias-risk- assessm...](https://www.propublica.org/article/machine-bias-risk-assessments- in-criminal-sentencing)

> Prater was the more seasoned criminal. He had already been convicted of > armed robbery and attempted armed robbery, for which he served five years in > prison, in addition to another armed robbery charge. Borden had a record, > too, but it was for misdemeanors committed when she was a juvenile.

> Yet something odd happened when Borden and Prater were booked into jail: A > computer program spat out a score predicting the likelihood of each > committing a future crime. Borden — who is black — was rated a high risk. > Prater — who is white — was rated a low risk.

</comment></comment><comment><USER50> I think the strong counter-argument to this is in [1]. Quite simply we need to make sure we don't get fooled by randomness and see bias where there is none, thereby making good algorithms worse in an attempt to fix imaginary bias.

[1]: [https://jacobitemag.com/2017/08/29/a-i-bias-doesnt-mean- what...](https://jacobitemag.com/2017/08/29/a-i-bias-doesnt-mean-what- journalists-want-you-to-think-it-means/)

<comment><USER27> I don't think it's that good counterargument. The explained problem was treated as simple mapping - this value causes that result. It spends a bit talking about what statistics mean, but unfortunately doesn't discuss the idea of confounding variables, which influence both sides of the equation.

</comment></comment><comment><USER51> It's just statistic.

How you collect your data can introduce bias and statistic have a whole range of topics on how to collect data without introducing bias and systematic techniques to sample data. Stratifying data if a certain group is under represented, random sample, etc... Survey analysis goes into hardcore details on how to sample a population to accurately do inference and it's an interesting statistic sub field if anybody is interested.

ML tends to be more here's the data already do something with it.

Statistic encompass everything about the data including how to sample, collect the data, and designing the experiment to collect the correct data to answer your hypothesis. Where as ML is usually here's the data, go figure out what you can get out of it.

</comment><comment><USER52> > for example, have been found by MIT and Microsoft researchers to misidentify > dark-skinned people at vastly higher rates than light-skinned people. That's > a near-perfect analogue of white people's tendency to misidentify people of > color, leading to higher rates of false arrest and conviction. > > It's hard > to describe that as anything other than "a racist algorithm,"

Surely to be racist, some degree of malice or ignorance is required - <USER2> recognition from visible light flat imagery will always struggle with low- contrast images, which is sadly what you get from a poorly lit black person's face. It's neither intentionally racist nor inadvertantly - there is just not the same amount if information available

</comment><comment><USER53> > _' facial recognition technologies "always have these racial inequities that > get translated, because algorithms are still made by human beings, and those > algorithms are still pegged to basic human assumptions. They're just > automated. And automated assumptions—if you don't fix the bias, then you're > just automating the bias."'_

Not really correct, but I guess it gets at the gist of it. It isn't because the algorithms are _made_ by human beings, but it is because their performance is determined by how similar the output is to that of human beings.

Ie, they are trained/selected by human beings.

</comment><comment><USER54> To summarize: racist training data--as one might acquire from the known-to-be- racist real-world--produce racist AIs.

It's safe to stop reading the article--and this post--at the mention of Roko's Basilisk.

As to that, it is a perfect example of why moral philosophers like Chidi Anagonye deserve to go to The Bad Place to be tortured for all eternity. Unless... "The Good Place" television show is a means to establish communication with a future AI by implantation of an imagination seed, as in "Inception", such that viewers will then imagine an AI that has established a simulation regime in which simulations of past humans are tortured or rewarded according to a utilitarian valuation metric applied to the records of their actual lives that were used to create their simulation-simulacrum. Having incepted such an imaginary construct, the viewer may then imagine that acting to construct a real IA from their imaginary blueprint would be assigned a large positive value for the utilitarian metric, and thus the only way to encourage such a construct--beyond the ordinary expression of human virtue--to reward a simulated replica of yourself, would be to build it. If you build a god, you get a free pass into its afterlife paradise: that makes sense, doesn't it? Since other people have also watched the show, and may have imagined the same type of entity, it is possible that a similar AI will one day exist without your assistance, and your life will then be judged on its own merits, but by another builder's value metric, and without any of the "extra credit" earned by building a god. Since copies of you might be instantiated in some other artificial god's hell, it is thus also important to subscribe to artificial monotheism, and viciously sabotage everyone else's attempts to build their own gods. The more certain people can be that your artificial god will be the only one around in the future, the more likely they are to subscribe to your value system in the present.

It reminds me very strongly of that portion of Portal 2 in which informative signs appear on the walls that recommend ways to disable a rogue AI, which include proposing paradoxes. Unfortunately, this fails to produce the desired effect, because the AI in question was explicitly designed to be an annoying idiot. Thus, the best way to avoid psychological damage from consideration of philosophical paradoxes may be to deliberately avoid the study of philosophy, to the point that you couldn't understand one, were it ever posed to you.

</comment><comment><USER55> In this same vein, I've also found it interesting which names Autocorrect sees as a correct, and which are "spelling errors."

</comment><comment><USER56> Replying to a bunch of absolutisms with another bunch of absolutisms. How ironic

</comment><comment><USER57> "waaah, mathematically unbiased algorithms are racist"

you guys will never stop crying

</comment><comment><USER58> 1 5 3 8 5 3 Is that a random number sequence? It depends where the data came from. Same goes for AI algorithms. Yes theres a risk of the data being biased, but the key is what goes in, not what comes out.

</comment><comment><USER59> WHAT THE FUCK DID I JUST READ

</comment><comment><USER60> It's very telling that claims that Facebook's newsfeed algorithm under-samples conservative publications do not receive nearly as much criticism as claims that algorithms propagate racialized bias receive.

<comment><USER61> We don't know IF Facebook is under sampling conservative publications. It depends on the goal of the algorithm. If the goal is accuracy, as a group recent conservative publications have a sorted history when it comes to truth and accuracy. Conservative news outlets also have a weird bias against science and like to push conspiracy theories with no basis behind them. Naturally if your algorithm is focused on how accurate the news is as a condition for landing in someone's news feed, conservative publications would be at a disadvantage compared to other news sources. It could also be that fringe conservatism is not popular with the majority of society.

<comment><USER60> My point is not about Facebook's algorithm at all. My point is about the reactions to claims about it vs this claim about algorithms

Many commenters here seem to be frustrated by the suggestion that an algorithm could be tuned to create a bias or reproduce the bias of the data powering it. My point is that similar arguments have not largely been levied against the claim that Facebook's algorithm has bias.

Why are these arguments not made in the case of the Facebook algorithm but are being made here? My conclusion is that people are extremely uneasy with the premise that there is a racial bias in modern American society.

</comment></comment></comment><comment><USER45> Algorithms CAN have racist bias. It's wrong to claim they will always be racist because they are based on math.

And the article is a mess, confusing and mixing up several things.

</comment><comment><USER62> A fun example... click this and scroll all the way down: [https://www.faception.com/our-technology](https://www.faception.com/our- technology)

I need to start collecting a list to turn this into a proper Thing but I feel like whenever there's a way to use technology for evil there's a Tel Aviv startup that cranks it to 11.

<comment><USER63> Seems highly unlikely to ever work, but why assume the technology is evil? If you could create a system that had a high accuracy of detecting terrorists, then that would be a good system, not an evil one.

I get your point that a system that claims to detect terrorists but only really detected Arabic people would be an evil one - but you're automatically calling the terrorist system evil without knowing if it really does detect terrorists or not.

As an extra hypothetical question, do you feel a system that could detect people who were really just about to commit terrorist attacks as good or evil? At a conceptual level, assume the system somehow scanned brain waves or some other truly difficult method.

<comment><USER62> Occam's razor. They are not 'scanning brain waves or some truly difficult method'. Not in this reality. You know it too. I didn't even have to suggest they built an Arab detector for you to bring it up ;)

I don't care about that hypothetical. Save it for your sci fi screenplay.

</comment></comment></comment><comment><USER64> Of course ML algorithms can be biased; rather than engaging an Internet layperson who tried to contradict AOC with a silly argument, it would be more interesting if the article engaged the more salient counterpoint to claims like these--attempts to eliminate bias can introduce bias as well.

Anyway, the article is not written in good faith; it's only a step above "BOOM AOC owns Internet conservatives!". There's an interesting conversation in here somewhere, but this article seems designed to avoid it.

<comment><USER65> The article has an appropriate amount of technical and political discussion. The words "she is right" are simply not in this community's vocabulary.

<comment><USER66> What sort of critique are you trying to make of "this community?" Are the words "he is right" in our vocabulary?

<comment><USER67> low key sexism allegation

<comment><USER68> Are people really making new accounts on the spot here to comment in these kinds of threads to avoid having disagreeable ideas traced back to their main accounts?

<comment><USER69> In an age when people doxx you and call your employer to ask them to fire you because you upset their delicate sensibilities, it is somewhat understandable to be paranoid.

<comment><USER68> Hrm, I guess I hadn't considered that.

</comment></comment></comment></comment></comment></comment></comment><comment><USER70> Holy 150-point font Batman!

</comment><comment><USER71> Breaker is long-form clickbait. It's an interesting format and I'm curious how they pay for it.

</comment><comment><USER61> People with a nefarious agenda are always using tainted and biased "objective" data to support their racism. We been knew. The general populace just repeats the data like it is no big deal that much of the data is inaccurate. Once upon a time white people struggled to differentiate black people from animals.

</comment><comment><USER72> She's partially right, the outcomes of algorithms can be considered racist...

[https://www.google.com/search?q=american+inventors](https://www.google.com/search?q=american+inventors)

I have not heard of most of these inventors. Perhaps there is a different perspective that influenced this algorithm than my perspective; probably SEO. In the case of SEO, it's more of a cultural battle between interested parties. Search Engines are the medium of this battle to game algorithms. Making the algorithms themselves consider race, making them racist, only puts the thumb on the scale for certain outcomes.</comment>


Making Churches 'Dementia Friendly' - <AUTHOR> https://phys.org/news/2020-08-dementia-friendly-churches.html <comment><AUTHOR> Abstract (and full-text/pdf download):

Changes in Measures of Dementia Awareness in UK Church Congregations Following a 'Dementia-Friendly' Intervention: A Pre–Post Cohort Study

by Peter Kevern and David Primrose

[https://www.mdpi.com/2077-1444/11/7/337](https://www.mdpi.com/2077-1444/11/7/337)</comment>


Life on Venus? Astronomers See a Signal in Its Clouds - <AUTHOR> https://www.nytimes.com/2020/09/14/science/venus-life-clouds.html <comment><USER2> Earlier discussion, still on the front page:

[https://news.ycombinator.com/item?id=24467635](https://news.ycombinator.com/item?id=24467635)

</comment><comment><USER3> At the time I am posting this comment the press briefing is live on youtube. [https://www.youtube.com/watch?v=y1u-jlf_Olo](https://www.youtube.com/watch?v=y1u-jlf_Olo)

</comment><comment><USER4> Don't hold your breath.

1) there is doubt about the quality of the radio detection 2) the same group of authors have been promoting this for years 3) Nature Astronomy, not Nature proper

<comment><USER5> Source on these doubts? This discovery is backed by the Royal Astronomical Society and MIT, which seems to imply the observations have been sound.

<comment><USER6> >Still, John Carpenter, an ALMA observatory scientist, is skeptical that the phosphine observations themselves are real. The signal is faint, and the team needed to perform an extensive amount of processing to pull it from the data returned by the telescopes. That processing, he says, may have returned an artificial signal at the same frequency as phosphine. He also notes that the standard for remote molecular identification involves detecting multiple fingerprints for the same molecule, which show up at different frequencies on the electromagnetic spectrum. That's something that the team has not yet done with phosphine.

>"They took the right steps to verify the signal, but I'm still not convinced that this is real," Carpenter says. "If it's real, it's a very cool result, but it needs follow-up to make it really convincing."

>Sousa-Silva agrees that the team needs to confirm the phosphine detection by finding additional fingerprints at other wavelengths. She and her colleagues had planned such observations using the Stratospheric Observatory for Infrared Astronomy, a plane-mounted telescope, and with NASA's Infrared Telescope Facility in Hawaii. But COVID-19 got in the way, and the team's attempts have been put on hold.

[https://www.nationalgeographic.com/science/2020/09/possible-...](https://www.nationalgeographic.com/science/2020/09/possible- sign-of-life-found-on-venus-phosphine-gas/)

<comment><USER7> At the same time, that comment is based on someone, working in _exo_ planetary science, skimming the paper for at most two hours before commenting.

Just looking at figure 2[0], it doesn't look like the ALMA a detection is particularly weak and looks like a proper line. Of course, I don't know the full analysis chain, so I can't say how hard it is to make a line like this completely by accident, but I doubt you could tell just from this figure either way.

[0]: [https://www.nature.com/articles/s41550-020-1174-4/figures/2](https://www.nature.com/articles/s41550-020-1174-4/figures/2)

<comment><USER6> One of the authors agrees that the finding needs additional confirmation in the last paragraph.

<comment><USER7> Well yeah, xkcd 2268 is a good joke for a reason. Confirmation of a new result is always desirable and everybody knows this, "more studies needed" is however not the same as saying "we're probably wrong".

</comment></comment></comment></comment></comment></comment><comment><USER8> better title: phosphine found in venus atmosphere, some scientists suspect microbes

</comment><comment><USER9> even Venus life moved into the clouds

<comment><USER10> I think that's unclear at this time; IIUC, the phosphine could be generated at ground level, since Venus's atmosphere is so thick that it'd have to be lifted up a bit before UV light can start breaking it down.

<comment><USER11> The paper posits the microbes living in droplets in the clouds hypothesis. Heat and pressure at ground level are not as conducive to life.

</comment></comment></comment><comment><USER12> Extensive discussion yesterday; [https://news.ycombinator.com/item?id=24463423](https://news.ycombinator.com/item?id=24463423)

<comment><USER13> And earlier today: [https://news.ycombinator.com/item?id=24467635](https://news.ycombinator.com/item?id=24467635)

</comment></comment><comment><USER14> I called 2020 August to be the aliens month and 2020 September the random explosions month. But i'm contempt with this resolution as well.

</comment><comment><USER15> Here's the research paper (full paper, open access)

[https://www.nature.com/articles/s41550-020-1174-4](https://www.nature.com/articles/s41550-020-1174-4)

</comment><comment><USER16> I'm still looking for intelligent life on THIS planet!

<comment><USER17> Needs a little more work still. Maybe try using italics instead of caps?

</comment></comment><comment><USER18> Given how low my prior would be that life currently exists on Venus compared to all the other possible explanations for this, I wouldn't count on it at this point

Surprised this comment has a negative score, I'd be willing to bet at 50/50 that life on Venus won't be found within the next 5 years, there are _a lot_ of alternative explanations with reasonable priors

<comment><USER19> The probability of developing a probe, it travelling to Venus and analysing the data from it within that timescale is worse than 50/50.</comment></comment>


Microsoft TypeScript graduates to Visual Studio  - <AUTHOR> http://www.pcworld.com/article/2101920/microsoft-typescript-graduates-to-visual-studio.html <comment><USER2> Didn't use it, but perhaps it's time.

For the ones who want to start out, check: [http://www.typescriptlang.org/samples/](http://www.typescriptlang.org/samples/)</comment>


Universal JavaScript Analytics tracking library - <AUTHOR> https://github.com/andreioprisan/analytics.js

<comment><USER2> Segment.io does more or less that same thing [https://segment.com/docs/libraries/analytics.js/](https://segment.com/docs/libraries/analytics.js/)

IIRC the library is free but if you want to use their other services then it can cost money

<comment><AUTHOR> I love the Segment.io product and the fact that the library is open source. However, they don't allow for easily just adding a number of vendors and having that data be sent out to each vendor directly. Rather, they want you to go through Segment.io, then they send it out to each from their back-end service. I needed something that allowed some level of abstraction for multiple vendors and call one master analytics library that does that for me. There's more that can and will be done with the code base to make adding vendors more modular, while keeping the overall simplicity up.</comment></comment>


Adobe Takes Aim at Data Scientists - <AUTHOR> https://techcrunch.com/2019/07/29/adobes-latest-customer-experience-platform-updates-take-aim-at-data-scientists/ <comment><AUTHOR> Data scientists can take advantage of Adobe's new Data Science Workspace that fuels deeper data discovery: by using Adobe Sensei pre-built models, bringing their existing models or creating custom models from scratch in Experience Platform.</comment>


Configs for privacy-hating software, like Firefox and Chrome - <AUTHOR> http://r-36.net/scm/privacy-haters <comment><AUTHOR> In this repository you find configuration files for privacy-hating software, like firefox, thunderbird or Google software.</comment>


Systems theory research suggests wealth redistrib. needed for economic growth - <AUTHOR> http://necsi.edu/research/economics/econuniversal <comment><USER2> Economy is the measure of the movement of money (activity). Growing the economy (increasing the velocity of money) means raiding hordes (by whatever means) and spending it.

This is not to say that our current measurements (notions) of the economy incentive desired behavior. eg GDP vs happiness.

</comment><comment><AUTHOR> The consumer cycle/production cycle imbalance feels intuitively true. It would be nice if our leadership would have such discussions without descending into fits of hysteria.</comment>


Steve Jobs's Epic 5-Minute Anti-Google Rant - <AUTHOR> http://www.businessinsider.com/steve-jobs-epic-5-minute-anti-google-rant-2010-10 <comment><USER2> "The user is left to figure it all out."

Last I checked, manufacturers provide fairly adequate quick-start guides with any android phones. Either way, I don't get his point on this and fragmentation. Linux is ridiculously fragmented - doesn't mean anything in terms of how good it is for experienced users (the new Ubuntu is awesome for me as a developer) or how accessible it is to new ones.

<comment><USER3> Do I really want to read anything before using a phone? No. I won't say that Apple is immune to this either. iOS's increase in functionality means there's a fair number of Settings, and even the default applications (like Mail or Safari) aren't as simple as they could be. iTunes itself is a great example of an application that desperately needs to be refocused and streamlined.

Here's the kicker though, _"Twitter client, Twitterdeck, recently launched their app for Android. They reported that they had to contend with more than 100 different versions of Android software on 244 different handsets. The multiple hardware and software iterations presents developers with a daunting challenge."_

He does tend to get beat up a bit by the geek crowd, but even Jeff Atwood pointed this out, and how it was reminiscent of a Windows Mobile deja vu. This is why I won't develop for Android devices. If I want to develop for handheld iOS devices I could buy an iPhone4, and pick up a first-generation iPod touch as my "worst case" scenario. If I can cover both, I can run on anything. If I really want to be very paranoid, I can kick iOS back to 3.x on the older device. Android? I can only target specific OS versions, and only the most popular devices. Everyone else I can't guarantee a good user experience, or that it'll work properly at all. That's incredibly unfortunate to consumers in the marketplace.

There's not going to be any real "winner" between Android and Apple in terms of profit potential. There's plenty of room in the market for both platforms. However, this is a clear demonstration that having this level of control over the platform has very real benefits.

<comment><USER2> Wow. I hadn't thought about that as much.

True, developing for over two hundred different handsets is going to be tough - but I see it as the same as the old Mac v. PC debate. The different software and hardware configurations of PC users is staggering.

Truth to be told, it's something that will come up in any debate - depth and customization versus ease and simplicity. No way to move without making some trade-offs. I just find him dismissing the first option somewhat disingenuous.

<comment><USER3> Well, the response from the TwitterDeck developer was essentially, "Steve, it wasn't that bad. Trust us." I don't think that extra effort/cost can be completely discounted -- or the two developers could've simply been phenomenal -- but it may not be so terrible just yet.

However the depth and customization, overall, is of limited interest to most audiences. Actually, if you take any product, most people don't care about a lot of things. For instance, what might rub an enthusiast the wrong way about the changes to BMWs over the past 15 to 20 years (myself included), will attract a completely different set of customers. BMW sales are better than they've ever been, despite the enthusiasts moving to other manufacturers. Think computers -- people just want to buy a box and use a few applications with it... they don't care about the upgradability, they'll just buy a new one 5 years from now.

iPhone simplicity is still... well, let's say it has a ways to go. I've seen the following situations in the past few months.

* A friend confused on how to move her data from her iPhone 3G to her new iPhone 4. Problem? She hadn't ever synced her phone with her computer since she bought it.

* Someone on the street, with an iPhone 3GS in his hand, asked me for directions. I instead taught the man to use the expensive device he bought to find directions himself. He was thankful in the end, but initially perturbed that I hadn't said "Oh, it's this way." Another thing of interest is the Apple Store was 2 blocks away. I'm sure he'll never set foot in there unless he wants to buy something.

* I see people who hold the iPhone below their chin to talk into it, then move it back to their ear to listen to the other party. They repeat this for the entirety of the conversation. I simply find this behavior baffling.

I can't even imagine what goes on with in-car entertainment and navigation systems, as some of those are horrible to begin with, and almost necessitate the use of a manual. Television carrier DVRs? Flashing "12:00" on VCRs? Fancy functionality with new televisions (i.e. widgets and such)? Trust me, much of it is for nought. A large portion of folks may boast that their X can do Y, but only the real enthusiasts use any real number of those features.

Good design is hard, but its one of the most important things to get right, as long as your good design also includes the features people actually care about.

</comment></comment></comment></comment><comment><USER4> Calling this a rant is erroneous, at best. His statements were very careful, and they reflect very careful thought about his business. _Rant_ comes from the Dutch word _ranten_ , which means "to talk nonsense, or rave." Jobs' statements are devoted to reason and reality ("How do we make products that provide the most value to users by giving them the best experience? How large do the screen have to be for them to deliver the best combination of usability given the average finger size and user desires?")

Skeptics might say "this is just a bunch of smoke he's blowing (for one reason or another)", but the answer to that is: he's been very successful in making hundreds of millions of very happy users, all of whom have decided to pay. He's not wrong about what makes his products good, because he could not possibly be so successful if he was. You can't pass a physics exam by guessing. For the same reason, you can't do what Jobs has done by guessing, either.</comment>


Working on Compiler-Assisted Performance Analysis on GCC - <AUTHOR> https://www.phoronix.com/scan.php?page=news_item&px=GCC-Comp-Assist-Perf-Analysis <comment><USER2> clang has a similar feature: optviewer [1][2]

Some sample output: CPython [3], KFR [4]

[1] [http://llvm.org/devmtg/2016-11/Slides/Nemet-Compiler- assiste...](http://llvm.org/devmtg/2016-11/Slides/Nemet-Compiler- assistedPerformanceAnalysis.pdf)

[2] [https://youtu.be/qq0q1hfzidg](https://youtu.be/qq0q1hfzidg)

[3] [https://androm3da.github.io/optviewer- demo/output_analysis/c...](https://androm3da.github.io/optviewer- demo/output_analysis/cpython/)

[4] [https://androm3da.github.io/optviewer- demo/output_analysis/k...](https://androm3da.github.io/optviewer- demo/output_analysis/kfr/)

</comment><comment><USER3> Very interesting to watch what is happening after the free lunch is over. Even relatively small / high effort / improbable improvements are on the table now. I expect many more of these things in the future.</comment>


4th-gen Microsoft Kinect depth camera available as an IOT module - <AUTHOR> https://developer.microsoft.com/en-us/perception <comment><USER2> I guess my question is: Can we still use it without Azure?</comment>