McCann Japan hires first artificially intelligent creative director - <AUTHOR> http://www.thedrum.com/news/2016/03/29/mccann-japan-hires-first-artificially-intelligent-creative-director <comment><USER2> > The AI has been built to respond to a product or message with the optimal > commercial direction, based off historical data. The AI has also been built > to then learn from the results of the campaigns its directed, in theory > creating an increasingly more effective AI creative director.

So its "creativity" lies in doing what already worked well but based on a more exhaustive knowledge of former results. It is then reinforced by adding its own results to the set of historical data. I am not sure McCann and I have the same definition of "creativity"...</comment>


How I TRAINed to learn Rails - <AUTHOR> https://medium.com/how-i-learned-ruby-rails/e08c94e2a51e

<comment><USER2> This is my motivation for the next school quarter. Self taught myself html, css, and some php. But I really need to up grade my programming skills if I want to start the company I want. Wish me luck!!!</comment>


The Misfortunes of a Trio of Mathematicians Using Computer Algebra Systems [pdf] - <AUTHOR> http://www.ams.org/notices/201410/rnoti-p1249.pdf <comment><USER2> If you ask Mathematica whether x^n + y^n = z^n has solutions for n>2 and x,y,z>0, the system will simplify it to "False", displaying knowledge of Fermat's last theorem. This is taken from documentation (last example in [http://reference.wolfram.com/language/ref/FullSimplify.html](http://reference.wolfram.com/language/ref/FullSimplify.html)).

I asked about x^n + 1 = z^n, which is a simpler special case with y=1. The system no longer recognized it to be False. So the theorem was programmed as thoughtless pattern matching. I think one day computers might become authentic "creative" tools for mathematicians (as opposed to "computational" tools), but Mathematica's philosophy seems to be a dead end in this regard.

<comment><USER3> To be fair... I would imagine you could catch more than a few humans with the same trick. Specifically folk that might recognize the textbook Fermat's theorem, and miss the special case.

(Sadly, I can offer no data point, as I probably wouldn't have recognized either case...)

<comment><USER4> y=1 isn't just a special case, it is an absolutely trivial case that is easily shown to have only a degenerate solution.

<comment><USER3> Apologies, I did not mean special as in edge or hard. I meant simply that it was a specific case of the same thing.

Regardless, I don't think that changes my point.

</comment></comment></comment></comment><comment><USER5> I think the interesting stuff starts on page 2:

 _With the help of Mathematica, one of us found some counterexamples to our conjectures. Fortunately, another one of us was using Maple and, when checking those supposed counterexamples, found that they were not counterexamples at all. After revising our algorithms from scratch, we concluded that either the computations performed with Mathematica or the computations performed with Maple had to be wrong. Things started to become clear when the colleague using Mathematica also found some "counterexamples" to the above-mentioned result of Karlin and Szego for the case in (1) and, even more dramatically, his algorithm yielded different outputs given the same inputs. Our conclusion was that Mathematica was computing incorrectly._

<comment><USER6> And because it's all closed-source, you'll never know _how_ it was finding the wrong answers!

I think that the use of closed-source software in any public research or scientific undertaking should probably be verboten.

<comment><USER7> That would be Sage, but (and I say this as somebody who uses Sage wherever possible) it's light years behind Mathematica and always will be. Do _you_ want to be the guy in charge of implementing all of the incredibly complicated functionality in Mathematica? Or even better, writing quality documentation for all of it, which Mathematica has? There is a lot of software out there for which the intersection of the people who possess the technical knowledge to write it correctly, and the people who are willing to do so for free, is empty. (In the cases where it's not, we call those "graduate students" :)

<comment><USER8> I just used Sage to find all sets of 1 quadrillion positive integers that have the same product and sum. Feel free to try that in Mathematica.

<comment><USER9> Is this a finite set? If so, what's the simplest way to show this?

<comment><USER8> I came up with my own algorithm and found several speedups, but I haven't written an expanded article yet. I've implemented it in Julia, but Julia's built-in factoring is (unfortunately) far slower than Sage's.

A short preliminary article:

[http://angrystatistician.blogspot.com/2014/08/learn-this- one...](http://angrystatistician.blogspot.com/2014/08/learn-this-one-weird- trick-and-easily.html)

Here's the Sage code:

[https://github.com/octonion/puzzles/tree/master/product- sum](https://github.com/octonion/puzzles/tree/master/product-sum)

I'd be curious to see the speed of the corresponding Mathematica or Maple code.

<comment><USER10> The Mathematica code below is roughly comparable to your vanilla version. Using a 2013 iMac (3.2 GHz Intel Core i5) I get the following timings for Sage/Mathematica (Mathematica gets more competitive for larger problems):

10^8 22s 65s

10^9 225s 635s

10^11 14h20 16h05

However, I found that Sage seems to calculate divisors faster than Mathematica for large numbers. The following are the times to sum the divisors of one million numbers starting at 10^8, 10^9, 10^10, 10^11:

Sage: 18s, 21s, 24s, 27s

Mathematica: 12s, 14s, 28s, 49s

Solutions[pSum_, pProd_] := With[{term = 1 + pSum _pProd}, With[{div = Divisors[term]}, Map[Function[x, If[Mod[x + 1, pProd] == 0, (1 + {x, term /x})/pProd, ## &[]]], Take[div, Ceiling[Length[div]/2]]]]]

WithNonOneValues[n_, nval_] := Last[Reap[If[nval == 0, Sow /@ Solutions[n - 2, 1], Module[{val = Array[2 &, nval], idx = 1}, While[idx <= nval, With[{pSum = Plus @@ val + n - nval - 2, pProd = Times @@ val}, If[pSum + 2_val[[1]] < pProd*val[[1]]^2, If[(++idx) <= nval, val[[Range[idx]]] = val[[idx]] + 1], Map[Function[x, If[Min[x] >= val[[1]], Sow[Flatten[{x, val}], ## &[]]]], Solutions[pSum, pProd]]; idx = 1; val[[1]] = val[[1]] + 1]]]]]]]

AllSolutions[n_] := Flatten[Map[Function[x, WithNonOneValues[n, x]], Range[0, Log2[n]]], 2]

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> There is an excellent blog by the creator of Sage:

[http://sagemath.blogspot.it/2014/08/you-dont-really-think- th...](http://sagemath.blogspot.it/2014/08/you-dont-really-think-that-sage- has.html)

Sage is absolutely amazing, but it is very far behind the cutting edge CAS systems (MAGMA/Mathematica) - I think he is being a bit harsh in his assessment, but he has incredibly ambitious goals - and by those goals, he has fallen short.

<comment><USER12> When I first came across the Sage Wikipedia page and especially the »Software packages contained in Sage« section [1] I immediately wondered how well that approach works. I admittedly don't know anything about the way Sage is build but you get the impression that they glued together many existing specialized solution to form one comprehensive solution. And while every piece is a mature solution and many people invested years of effort to build them, I also experienced over and over again how hard it is to integrate heterogeneous components. And that raises the obvious question whether it is more effective to integrate mature but heterogeneous solutions or to build a less mature but homogeneous solution at the added costs of reinventing the wheel.

[1] [http://en.wikipedia.org/wiki/Sage_(mathematics_software)#Sof...](http://en.wikipedia.org/wiki/Sage_\(mathematics_software\)#Software_packages_contained_in_Sage)

<comment><USER13> When you have a relatively tiny budget, and an absolutely massive difficult system to build (requiring input from a wide range of specialists), there is no possible way to make significant progress without fostering a strong environment of community and collaboration. Integrating heterogenous components from a wide range of high-quality specialist communities (GAP, Pari, Maxima, etc.) as I did with Sage, brought many of these communities together, with them work toward a common goal. We had over 60 coding spring workshops in the last 10 years ([http://wiki.sagemath.org/#Past_and_future_workshops](http://wiki.sagemath.org/#Past_and_future_workshops)). Also, we wrote an _enormous_ amount of new code in Sage itself, likely more lines of code than all other math components put together.

<comment><USER14> I somehow doubt the amount of code in Sage itself is close to the sum of its mathematical components, though Sage does contain a huge amount of new code (most importantly a lot of high level mathematical code not found anywhere else).

According to openhub.net [[https://www.openhub.net/p/sage/analyses/latest/languages_sum...](https://www.openhub.net/p/sage/analyses/latest/languages_summary)], Sage has 1.7 million lines of code. Maxima alone has 700K lines, Singular has 640K lines, SciPy has 650K lines, SymPy has 480K lines, etc.

<comment><USER13> We haven't done "lines of code" estimates for Sage in a while, so I'm not sure. Of course, lines of code being large isn't necessarily something to be proud of (though there's some meaning in lines of code that have come and gone overall). I'm very dubious about your lines-of-code estimates above. For example, you claim "Maxima alone has 700K lines", but I just downloaded Maxima from [http://sourceforge.net/projects/maxima/files/](http://sourceforge.net/projects/maxima/files/), then ran sloccount on the src directory and I get 129,584 lines of code:

        /tmp/maxima-5.34.1$ sloccount src
        ...
        Total Physical Source Lines of Code (SLOC)                = 129,584

<comment><USER14> Yeah, I don't know what's up with that. I got the number from openhub. But sloccount tells me that sage-6.2 only has 570K lines of code. And sloccount says that Singular has 280K lines of code.

</comment></comment></comment></comment></comment></comment><comment><USER12> A couple of weeks ago I noticed that Wolfram Alpha when asked for a uniquely 3-colorable graph [1] will hand you a graph that is not uniquely 3-colorable (which is easy to verify by evaluating the presented chromatic polynomial at 3 which should yield 6 for a uniquely 3-colorable graph but actually yields 12 indicating two possible 3-colorings).

If you have a look at the Wolfram MathWorld article »Uniquely k-Colorable Graph« [2] you see the same wrong graph with the following information.

 _It is implemented in Mathematica as GraphData[ "UniquelyThreeColorableGraph"] and Uniquely3ColorableGraph in the Mathematica package Combinatorica` , in the latter case replacing the incorrect graph (from Harary 1994, cover and p. 139) present in earlier version._

So this bugfix did not really fix the bug. I reported it using the feedback form and we will see if the third attempt will get it right.

[1] [http://www.wolframalpha.com/input/?i=Uniquely3ColorableGraph](http://www.wolframalpha.com/input/?i=Uniquely3ColorableGraph)

[2] [http://mathworld.wolfram.com/Uniquelyk- ColorableGraph.html](http://mathworld.wolfram.com/Uniquelyk- ColorableGraph.html)

</comment><comment><USER14> Relevant: [http://reference.wolfram.com/language/tutorial/WhyYouDoNotUs...](http://reference.wolfram.com/language/tutorial/WhyYouDoNotUsuallyNeedToKnowAboutInternals.html)

</comment><comment><USER15> Symbolic math is not the same thing as formalized math, and doesn't carry with it the same guarantees of correctness. That's the price one pays for having black box functions spit out answers to hard problems in a reasonable time, they won't spit out proofs of correctness alongside their answer.

Any symbolic system should be treated with care, but they can of course be extremely useful. My typical use case is to have it compute very challenging symbolic expressions for me. I then treat it as a "very plausible hypothesis" which I then prove.

<comment><USER16> That's only true for closed source systems. You can easily debug open source ones, look at their insides and so on.

This whole article is really just telling people to use the scientific method in computing too: if you don't know how to reproduce a result it's not science. Fast computation which a human can't possibly do is something that's new from the last 30 years and most scientists still don't know how to deal with it.

It is very sad to see that statisticians have switched to R, biologists to python, computer scientists to the gnu tool chain, yet physics and maths seem to have been colonized by mathematica when you have a whole set of open source tools which are superior in every way: pari pg, gnu arbitrary precision libraries, axiom, maxima and sage is you want everything under one roof with a unified interface.

<comment><USER17> As a former physicist that used Mathematica heavily not that long ago, I have to disagree. It would be great if there were open source alternatives that were "superior in every way" but that is just not the case.

For some use cases at least, Mathematica is clearly better than anything else I have tried.

I feel like something like ipython notebooks with the right combination of libraries might eventually get there, but that is unfortunately still years away.

<comment><USER16> As another physicist who used mathematica what you mean is that you were too lazy to think about what assumptions were made implicitly in the calculations you were performing and liked mathematica because it did them automagically for you.

This is shown no where better in the paper than when they try to calculate Integrate[Exp[-p _t]_ (Sinh[t])ˆ3, {t, 0, Infinity}]. In a good cas, such as maxima, you will get no result and a ton of errors. Which is what you should get without specifying what sort of variable p is, is it a matrix, polynomial, group of some sort? That it's implicitly assumed to be a real number that might turn out to be complex under some circumstances isn't a feature, it's a bug.

<comment><USER17> I am genuinely surprise at how confidently you (quite wrongly) diagnosed my problem.

What I did mean, was that for my use cases, I found Mathematica was superior to the alternatives. You are welcome to think this was because I was lazy or misguided, but it was definitely not because I liked not having to specify domains for my variables (and I do remember having to write Assuming[p>0 && x \in Reals, ...] and the like often, it definitely does not assume everything is a positive real).

One thing I used Mathematica a lot for was numerical integration of ODEs (that had been derived using the CAS part of Mathematica and had some pretty nasty coefficients). NDSolve in my experience was just better than competition. You can definitely get nonsense out of it, but with a modicum of care it works incredibly well.

</comment></comment></comment></comment></comment><comment><USER18> Interesting. You may wonder how a calculation could generate different results when run twice on the same arguments (assuming no obvious flaws such as global variable usage). I once tracked down such a bug when calculating with bignums in an open source program. I don't remember the details, but it was something to do with garbage collection, perhaps not protecting part of the data from getting collected so that it randomly became corrupt.

</comment><comment><USER19> Does Mathematica not have some kind of "show me the work" mode? I seem to remember that Macsyma had this..

<comment><USER20> No it doesn't. The primary reason is the way a CAS solves problems is not the way a human does.

A secondary reason with closed systems in particular is that it may reveal methods it uses which is a competitive advantage to other systems.

<comment><USER21> > A secondary reason with closed systems in particular is that it may reveal > methods it uses which is a competitive advantage to other systems.

I doubt this is the case. Mathematica at least doesn't really contain any "magic" in the actual algorithms and uses pretty well-known methods that are for the most part documented, if not open-source. Most of their competitive advantage is in the design of the language itself, the interface and in their internal virtual machine. These details aren't really things you would get any insight into with a "show the work" mode.

Your first reason is totally right though. "Show the work" mode requires a lot of extra stuff, because the way a person reasons through solving some thing like an integral isn't much like how a computer solves it. To make it spit out something really comprehensible to a person, you have to have lots of heuristics and it isn't generally very reliable. Even automated theorem provers (which Mathematica has some very basic functionality for) spit out rather hard to follow or extremely long proofs. Those are much more rigorous and less reliant on heuristics than a CAS and still don't produce "pretty" output (AFAIK, I'm not super experienced using automated provers or proof assistants).

Showing steps has been done before, e.g. by Macsyma like OP mentioned and by Wolfram too (Alpha does it). It's just not that great for problems of any substantial complexity.

<comment><USER22> You could feed the proof to a (simple, verified) proof checker rather than check it by hand. Then you only need to check the statement that was proven was the one you wanted, without having to vet the code that spits out the proof line by line (until you actually hit a bug and the proof fails to check). I don't think it would be inconceivable for mathematica to implement something like that, though perhaps it's not really their core business.

</comment></comment></comment></comment><comment><USER23> Makes me wonder if Timothy Daly has it right with Axiom: [http://www.axiom- developer.org/](http://www.axiom-developer.org/)

Pity it never compiles, and has been forked into two other projects.

</comment><comment><USER24> It struck me as odd that they avoided floating point numbers because of impreciseness, then used some other type of number without evaluating how precise it was. They're certainly not using typical integers with values like 10^9000. I wouldn't be surprised if those numbers are internally divided by 10^n and stored in doubles anyway - bringing them back to the same problem they're trying to avoid.

"the determinant of bigMatrix is, approximately, 1.95124219131987·10^9762."

Approximately? How many significant digits in the exact answer? If Mathematica promises arbitrary precision, even to 10,000 digits, they have a case. If not, it shouldn't be any surprise.

As for getting different results on each run, I've seen this with iterative algorithms that use random starting values. For numerically unstable problems, that can lead to different results each time because it converges to rounding error.

That doesn't mean Mathematica is wrong any more than getting wrong results from doubles means its wrong. It just means it's poorly designed so the user doesn't know about this limitation.

<comment><USER25> It's clear you aren't a mathematician. They work with "typical integers" like 10^9000 all the time, and certainly not as a trivial scaling of doubles.

There are 9763 significant digits in that calculation. They wrote it in shorter form because the actual digits were irrelevant. The numbers they got from Mathematica had the wrong sign and were off six orders of magnitude. There's no reason to list more digits to show that's the case.

Mathematica promises arbitrary precision. Here's the documentation. [http://reference.wolfram.com/language/ref/Det.html](http://reference.wolfram.com/language/ref/Det.html) . It says "Use exact arithmetic to compute the determinant", for the construction given in the paper. The also submitted a bug report, and got the statement "It does appear there is a serious mistake on the determinant operation you mentioned."

Yes, of course random algorithms can end up with different answers. The determinate definition is not random, the documentation for Det doesn't say it uses a random implementation, non-random methods to compute it are well known. Again, the vendor says it's wrong - why are you disagreeing with practicing mathematicians and the vendor? Why do you think you know enough about the topic to be able to judge what "odd" means, in the context of this sort of field?

</comment></comment><comment><USER26> Quote from the paper:

> To avoid the usual problems with floating point arithmetic (rounding, > truncating, instability), we construct all our examples with integers.

I think this is complete overkill. I know floating-point arithmetic can be tricky, but it's not at all random. If you have a stable algorithm and a multiple precision floating-point library, you can use floating point numbers. It won't necessarily give you a proof that your result (unless you spend time to derive rigorous error bounds), but it will certainly be good enough.

I think people sometimes do slightly irrational things for fear of floating- point arithmetic.

<comment><USER27> As someone who has done lots of work with floating point, I disagree. My fear (or more properly caution) with floating point includes tricks like if you are going to add up an array of floating point numbers, you need to sort them first. The experienced floating-point programmer will know what order you need to do this in.

The inability to represent 0.1 properly in binary floating point is not a problem solved by increasing the precision your floating point library.

Also, there can be be surprising cases where single-precision might not be enough. For example, if you are going to represent exchange prices for, say, futures, you need to take into account that some of the price increments are in pennies, some in fractional dollars. You need the calculations to be reversible, and to have enough precision and accuracy to represent the whole range of price increments and expected volume.

One example of a lack of appropriate paranoia about floating point numbers was the i'm-not-very-good-at-writing-parsers' author of ASP and the result was [http://www.exploringbinary.com/php-hangs-on-numeric- value-2-...](http://www.exploringbinary.com/php-hangs-on-numeric- value-2-2250738585072011e-308/) denial of service to all unpatched PHP sites. Also bit java.

Note that interesting prime number work depends on integers and won't work with floating point. Including factoring large numbers in cryptography.

<comment><USER28> >tricks like if you are going to add up an array of floating point numbers, you need to sort them first.

...I think you'll want to use a priority queue, with the smallest numbers on top, adding the first two, and then pushing the result back onto the priority queue. Repeat until you only have one item left.

<comment><USER29> The number of people who add up arrays of floating point numbers and don't know about Kahan summation is really incredible.</comment></comment></comment></comment>


The single biggest usability quagmire in computing - <AUTHOR> http://asserttrue.blogspot.com/2009/09/single-biggest-usability-quagmire-in.html

<comment><USER2> This article is perpetuating a myth: that the Sholes keyboard was designed to slow-down typists. It wasn't, it was designed to make keystrokes come from alternating sides of the keyboard. THAT was what prevented the hammers from sticking, not the reduction of typing speed.

In fact, the QWERTY keyboard accidentally _increased_ typing speed, because as one hand was hitting a key, the other hand was targeting the next letter. This alternating hand movement was the greatest factor in increasing typing speed, and Dvorak's tweaks to the layout produces benefits too marginal to measure.

When people switched to Dvorak and found they typed better it was because they'd paid more attention to their typing for a while, not because the new layout was superior.</comment>


Android is built for piracy…if you ignore the facts - <AUTHOR> http://venturebeat.com/2012/07/25/android-is-built-for-piracy-if-you-ignore-the-facts/

<comment><USER2> In my opinion the fact that you can install Apps without having to root the device and without having to go through a central market actually is an advantage for Android over iPhone. I don't care if it encourages piracy or not, but it certainly gives more control and openness to the end user.</comment>


GitHub Hacktoberfest 2016 - <AUTHOR> https://github.com/blog/2260-hacktoberfest-is-back <comment><USER2> DigitalOcean and Github sponsored event. Sign up, submit four pull requests, and they'll send you a shirt. Ends Oct 31. Also has a spot for repo owners to advertise collaboration ready issues.

<comment><USER3> It's not clear. 4 pull requests on any project? Or does it have to be to close an issue with the 'hacktoberfest' label?

<comment><USER4> Any project on GitHub. The labels are just too make it easier to find stuff to do.

<comment><USER5> Thanks - I was confused by this too.

Also, do you just need to open the PRs, or do they have to be merged before Oct. 31?

Also also, what's to stop me from making an empty project and opening 4 pull requests against it just to get the t-shirt?

<comment><USER6> Nothing. It's based on the honor system.</comment></comment></comment></comment></comment>


Mac Apps Are Dead - <AUTHOR> https://medium.com/@vojto/mac-apps-are-dead-5f192524f88b <comment><USER2> This Mac developer has a low opinion os his users if he thinks they will just buy anything and they're too dumb to pick a good native app.

<comment><USER3> Well Mac user's buy crappy expensive hardware with even more expensive wheel's and crappy keyboard's...so maybe he's right ;)

<comment><USER4> Apostrophe-S isn't used for pluralization.

<comment><USER3> Sorry was the fault of my butterfly ;)</comment></comment></comment></comment>


E-Cat has energy density 10x higher than any conventional energy source - <AUTHOR> http://phys.org/news/2013-05-rossi-e-cat-energy-density-higher.html

<comment><USER2> This is bogus. Without revealing the nature of the "fuel" it is impossible to even say that it is an energy source. The electrically heated coil could just be releasing the binding energy in the "fuel". Even the 10X results of this "experiment" support this view as the most likely explanation, Occam's razor and all that. Barring full disclosure of the nature of the fuel and how it is made this should be dismissed as a con.

<comment><USER3> I'll just assume it works like a catalytic converter in a car, and needs to be brought up to a certain temperature before the reaction can occur. The secret ingredients could be the same metals used in automotive converters, the actual fuel could be anything that would be combusted in that process.

The energy density claims are based on the assumption that the spent fuel leaves the center cylinder, which is probably untrue. The weight change could simply be due to leakage.

Of course that's all just speculation. At least I didn't suggest transmutation of elements like the article did.

</comment></comment><comment><USER4> Wait until a customer confirms their claims. You may be waiting several (more) years before you give up.</comment>


Show HN: Free Indicator Alert App for Cryptocurrency (MACD, RSI, Ichimoku) - <AUTHOR> http://bitcoinCrazyness.com <comment><AUTHOR> Hi, we recently launched this app to be an advanced alerting system and coin tracker that can calculate true gain/loss for each coin in your portfolio.

It currently supports more than 1500 different coins, and can send hourly buy/sell alerts for price limit, price changes, and indicators such as MACD, RSI, and Ichimoku.

It also has a query system that can find all coins that meet a certain criteria, for example, all coins that have RSI>20 and Volume > 1,000.

We look forward to any feedback and suggestions.</comment>


Show HN: Ethereum token trading front-run, in 150 lines of Python - <AUTHOR> https://hackernoon.com/front-running-bancor-in-150-lines-of-python-with-ethereum-api-d5e2bfd0d798 <comment><USER2> This is comically simple, if I'm understanding correctly.

The attacker watches the mempool for rancor txs, and creates higher fee rancor txs to frontrun.

I think miners could monopolize this exploit, since they ultimately can order the txs however they like.</comment>


Military officers don't need college degrees - <AUTHOR> http://www.wsj.com/articles/military-officers-dont-need-college-degrees-1439249756

<comment><USER2> will people who post WSJ links _please_ indicate that they are subscriber- only?</comment>


The Sad End of Intel Desktop Boards - <AUTHOR> http://www.os2museum.com/wp/the-sad-end-of-intel-desktop-boards/ <comment><USER2> Now that Intel exited the business, what is the motherboard brand for people who just want a motherboard that works? One without any lights on it at all. It seems like supermicro would be the straight-faced alternative, but they don't pay attention and often their boards just don't work. I want a board that advertises its attention to signal integrity and thermal safety.

<comment><USER3> I've always had really good results (performance and longevity) with Asus gaming boards despite them having all the LED "features." I just turn all that junk off in the bios.

<comment><USER4> Anecdotal, but my Asus Z170i from 2015 has been solid for 4 years. Doesn't have any lights, maybe there wasn't room for them in the miniITX form factor.

EDIT - had the date wrong, it was mid-2016.

<comment><USER5> Also anecdotal:

My desktop is still running smoothly on its Asus mobo from 2014 (I believe it was the Z97-P but I'm not home at the moment to double check). No fancy RGB LEDs, but I haven't shopped for one in a while so that may be harder to accomplish now. Not sure.

Either way, they've always been competitively priced and well supported. Used them to build both gaming and general use machines for friends/family over the past several years without issue.

</comment></comment></comment></comment><comment><USER6> I used to buy Intel boards because they were more likely to work well with the latest CPUs of the day. I've switched to SuperMicro boards for our desktops (which are mostly dual Xeon boxes) and have had few problems.

I wish they'd come with a TPM. The integration issues are frequently around the TPM and getting it recognized. It's required for BitLocker whole disk encryption which is part of our standard build. (If a machine or drive goes AWOL, we don't have to worry.)

<comment><USER7> In case it's helpful for you to know, you can set up Bitlocker without a TPM. Google for instructions. It works well.

<comment><USER6> Don't you need to type in an additional password every time you boot?

</comment></comment></comment><comment><USER8> I have an intel board in my current daily desktop PC, it's socket LGA1150 also, but previous generation, Ivy Bridge. Of all the desktop motherboards I've had (and I've gone through a lot) it's the most stable I've ever used.

<comment><USER9> Are you overclocking or doing other fancy things? Last time I had an issue with a board was core 2 duo times. PCIe would magically cripple itself to 1x for all slots as soon as I overclocked the CPU. There was a workaround for that on the gigabyte forums. But that's about every problem I ever had.

<comment><USER10> Overclocking desktops in 2019 is only extremely rarely a productive use of your time.

<comment><USER11> Overclocking desktop in 2019 is a 10 minute affair to gain a permanent >20% performance.

<comment><USER12> I think you're saying the same thing. A one-time 20% bump isn't worth that much these days to the vast majority of people. (Even if it is only 10 minutes... which I tend to think might be an underestimate, given the testing, etc. you'd have to do to make sure it's all stable. 10 minutes to an overclocked boot, fine. 10 minutes to an overclocked configuration that can run a workload without problems for eight hours a day for several years... that seems like more of a challenge).

.)

<comment><USER13> That's all true (I personally don't OC either), but you should still run stability checks when you first get your computer. This Coding Horror post is great:

[https://blog.codinghorror.com/is-your-computer- stable/](https://blog.codinghorror.com/is-your-computer-stable/)

<comment><USER14> IMO the use of Linux for out of the box stability testing is poor unless you're absolutely certain the hardware config works perfectly under Linux without any specific tinkering.

<comment><USER13> Pretty much any PC will boot linux nowadays, maybe you need wifi or graphics drivers, but that post only uses Linux to test the CPU and disk.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER15> I did not know Intel stayed in the desktop motherboard business as long as they did. I had an AL440LX motherboard-based system that I'm sure still works, after a few battery and power supply replacements, if it hasn't been disposed of. (I'm sure it has been disposed of)

The author fails to understand some things:

 _Not so for the owners of Intel boards. To show just much Intel values its customers, they were informed that BIOS updates were not forthcoming and the newer, faster processors were not supported on Intel boards. That was no doubt particularly galling to the owners of the DZ87KLT boards, which sold for around $300 when new and are worth $150 or more even today (2019).

...

After all the hoopla in 2018 about Meltdown and Spectre, guess what happened: Intel somehow magically managed to update the BIOS for those boards after akl. For the DZ87KLT-75K, nothing really changed because the ME firmware did not get updated. But for the DQ87PG board, the 2018 BIOS updates did update the ME firmware as well._

It's precisely because Intel "values its customers," or more precisely because Intel understands its value add for customers versus the other motherboard manufacturers, that they would not just slide support for a few extra CPUs into the firmware. To do the job to their own standards they would need to fully retest everything with those new CPUs before officially supporting them. The economics of the Meltdown and Spectre fixes is an entirely separate matter.

(it'd be fair to point out that home power users who want to upgrade the CPU on a motherboard after purchase were never a large proportion of the Intel motherboard buying public and, in recent years... there cannot be that many)

</comment><comment><USER16> Ha. I recently upgraded to a 4790s and a intel desktop board. I thought the restarting problem was a faulty board, now I know better! Wonder how hard it is to update the ME...when I updated the bios the problem was still there.

<comment><USER8> The intel drivers page for your board should have an update package for the ME (if one is available).

<comment><USER16> Following a few links and searches there is a github page with all the ME bins and related tools. The key is installing a newer version of ME than comes with the board BIOS.

</comment></comment></comment><comment><USER17> Looking at the attitude of locked down chipsets and ME, would you expect any better? Intel's goal is to sell a product that fulfills some short-sighted requirements and never look back.

Their main business customers aren't interested in mixing and matching pieces of already purchased computers. Just like they don't particularly care that the whole house of cards is theoretically subservient to some inauditable backdoor.

<comment><USER18> That's how I feel about the NUCs. They are only being produced by Intel to try and advance a market.

Intel makes processors. The will sell things like motherboards, Compute Sticks, and NUCs just to push their primary line. Even their Flash, Intel doesn't want to be a Flash Fab, but it helps their processor line in many ways to have a presence.

It's like the Microsoft Surface. Microsoft will drop support for it in a hot minute when they feel the Surface has succeeded or failed. They already did it once with the Surface RT, but maybe I'm wrong and Microsoft is pivoting with the Surface to be more Apple-like... lol

</comment></comment><comment><USER19> What does the article mean by the "end" of desktop boards? Is it the end of sockets accepting multiple generations of CPUs?

I can see that it's not entirely true either, Socket 1151 supports both Skylake and Kaby Lake: [http://asrock.com/mb/Intel/Z390%20Phantom%20Gaming%20X/index...](http://asrock.com/mb/Intel/Z390%20Phantom%20Gaming%20X/index.asp)

What change did actually take place?

<comment><USER20> They used to make their own motherboards and sell them to consumers. They were known for being very high quality and very reliable. Now you can only get boards for their chips from third party OEMs who tend to have much more variable quality (which vendors are "best" tends to change each board/chipset generation).

<comment><USER21> I dunno about that. If you're buying whatever's on sale, yeah, you're at the whims of the stamp-it-out gods. But I build a lot of PCs and Gigabyte, for example, has been consistently reliable across...five or six generations of Intel chips? Plus some AMD builds in there. Absolutely zero failures.

Anecdotal, but it also seems to line up with most of what I hear out there.

<comment> kube-system I see a lot of mentions of Gigabyte and Asus in this thread -- I have had good luck with MSI boards too.

Maybe the reason Intel quit making boards is because there are lots of good motherboards now?

<comment><USER22> It might also matter what "tier" of board you buy.

Getting the "basement bargain" board for $20... well, you get what you pay for.

But for each of those top brands, Gigabyte, ASUS, and MSI, buying their top tier products gets you a seriously good board.

The gaming boards tend to have a lot of features a workstation user might not need, like great overclocking support, etc... but with that quality comes stability. Worth every penny to get a good motherboard when doing a build.

That... and I no longer get cheap cases either... but that's another story. The moral? Don't skimp on your components, and you'll wind up with a much better system that lasts you for years.

<comment><USER23> With cases, I think it's less about price and more about good airflow design, which will often mean buying more fans and/or a fan hub. There are really good cases from as low as $40 that will do better than some $120+ cases.

<comment><USER22> The problem with cheap cases does tend to be airflow and locations for fans... but also the build quality of the case.

Things like ports for routing cables without causing a rat's nest... cheap stamped sheet metal with sharp edges to cut yourself on, decent I/O backplate, temperature control zones, bottom mounted PSU, etc. A good quality case will cost you... but you can likely get several builds out of it over the years... so well worth it.

<comment><USER23> While I agree... performance is also an issue... Personally, I've been using the various Fractal Define series cases more often than not. Latest personal build is a Lian Li O11 Dynamic Razor Edition (frankly regret going RGB on a Linux box).

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER24> I wish Intel would allow third party chipsets again. I liked the days when companies would compete on features like more PCI lanes and faster interconnects.

<comment><USER2> The PCIe root ports are integrated with the CPUs these days. If you want more slots, get a breakout box. Nobody can get you more lanes.

<comment><USER25> Or get just AMD.

</comment></comment></comment><comment><USER26> It is not clear the situation, but guess may be you need to have those board.</comment>


How to spot whodunnit: academics crack Agatha Christie's code - <AUTHOR> http://www.theguardian.com/books/2015/aug/02/academics-unlock-formula-agatha-christies-mysteries

<comment><USER2> Now this is a mysterious affair!

The article notes that M=27 books were analyzed to create the "whodunnit" formula, but N=83 books were published in her lifetime. So, does the formula work for N, or only M?

If we employ our little gray cells, it should be possible for us to determine just how accurate the formula is by running it against the novels that weren't analyzed.

If I had to put my cards on the table, I'd guess that the formula is overfitted.

<comment><USER3> For one, theta is parametrized on {Poirot, Marple}. According to the list on Wikipedia, only about 45 of her novels featured those two detectives.

</comment></comment><comment><USER4> Or, to put it another way: no.

[http://www.badscience.net/2006/12/mediaslut-ideas-money- corp...](http://www.badscience.net/2006/12/mediaslut-ideas-money- corporatewhore/)</comment>


Show HN: DonateYourStreams – Fund Watsi and Charity: Water with music royalties - <AUTHOR> http://donateyourstreams.com

<comment><USER2> Interesting idea. I see Apple and Spotify being pissed about this, but being stuck in between a rock and a hard place if it takes off. If they squash it, they get bad press, if they don't they have to fund these charities indirectly (since they aren't the content rights owners of the two songs). If Watsi or CharityWater were on board, maybe they could write it off as a donation (apple/spotify).

<comment><AUTHOR> Watsi is on board. I don't know anyone at charity:water.

If it comes down to the streaming services being stuck between a rock and a hard place, I imagine a large one time donation to the charities would be fair in exchange for me voluntarily pulling the tracks from the stores and shutting down the project. But the donation would have to be very generous.

</comment></comment><comment><AUTHOR> It's nothing super technical, just a fun little project I did with my sister over the weekend to show the YC Fellowship folks that we can ship something together.

Simple concept - loop these tracks on your favorite streaming music service while you work, meditate, or sleep and all royalty payouts will go directly to Watsi & charity:water.

In my mind it's the equivalent of donating spare CPU cycles to SETI or script- clicking those "donate rice to a hungry child" ads.

Idea came from a combination of two things - a band who uploaded silent tracks and had their fans stream them to generate tour money, and Taylor Swift accidentally uploading a track of static that hit #1 on iTunes.

There are tons of ambient noise & nature tracks people use for work, meditation, sleep, etc. available on all of the music services. The only difference is we're putting our royalties to good use!</comment>


5 Things an Apple TV Must Do - <AUTHOR> http://mashable.com/2012/12/12/5-things-apple-tv-needs/

<comment><USER2> No I don't want a second screen seamlessly attached to my TV. No Apple does not have to play nice with providers. Apple is a behemoth and a bully. They likely make more money on content than any other company in the world. If one cable provider, plays hardball, Apple can go to another.

This is the iPhone all over again. Verizon turned down Apple, ATT knew it had to or it would come back to bite them. It bit Verizon for Three years after. Verizon publicly said we would like to be selling iPhones only two years after launch.

Now you have a larger playing field of cable operators, they all have antiquated systems, and Apple is going to revolutionize one of them. The rest will be begging to have a piece of the pie within three years. The only difference is the monopolistic practices of the cable operators coverage.

This article seems to miss the point of innovation when approaching the current TV climate. Adding needless features is not innovation. Changing the way we viewed a problem by solving it in seemingly unheard of way is innovation. To paraphrase ford, 'If I ask people what they wanted, they would have said "a faster horse"'.

</comment><comment><USER3> To be quite honest I am not sold on the idea that home TV will be revolutionised any time soon. The television niche is corned heavily, some would argue the mobile phone market was cornered heavily when Apple introduced the iPhone, but I can't honestly see what Apple can do that connecting up an XBOX or media PC to a 55" LED flat screen can't already give you. Apple might be able to win with content, but they'd need to onboard a few notable networks like AMC and HBO to get decent content but even then the problem of networks already licencing content to sites like Hulu, Netflix and launching their own online distribution sites.

If it were that simple, Apple would have already entered the market a long time ago. It was rumoured Steve was working on the problem, but the fact nothing has come to fruition might mean that they either don't have a solution or don't see any viable means of entering the market.</comment>


RubyDoc.info: Auto-generated RubyGems and GitHub library docs - <AUTHOR> http://rubydoc.info

<comment><USER2> The site isn't loading for me, but how is it different from <http://rdoc.info> ?

edit: rdoc.info is down, too. I think they're the same site. Nevermind!

<comment><USER3> It's back up. From the site: "If you've arrived here from yardoc.org/docs or rdoc.info, don't be alarmed. We've finally merged the two sites just like we said we'd do, And we made sure none of your project URLs were harmed."

Excellent! I think one of the biggest wins of rails 3 is the partial undoing of fragmentation that the community was going through. Wins all over the place.

</comment></comment><comment><USER4> It's like wikipedia smashed into github … but prettier. Nice work.</comment>


VideoLAN launches new website - <AUTHOR> http://www.videolan.org <comment><USER2> That's a _very_ bold place to put "Made by Argon", especially at that size.

Is the Web site about who made it or is that auxiliary information? If the latter, that's the wrong spot for that graphic, and I wouldn't have let them get away with it. Even if they were doing it for free.

There's a pretty well-defined footer where that belongs.

 _Edit:_ Ouch. Compare:

> <http://www.videolan.org/>

> <http://www.videolan.org/vlc/>

That is _confusing_. Try going back and forth a few times. The text growing legs in the logo and walking a few pixels is rough, especially since it's in the exact same spot and completely obvious when you click. There's some consistency issues that can use improvement. They're clearly still tweaking it, too - I refreshed and the footer completely lost its centering.

<comment><USER3> Well, the designer wasn't paid the price a design should be paid, so, the designer gets some visibility. This is normal...

And this is temporary...

About the tweaking, yes, a lot of work is needed, but so what? Small steps for iterations...

Remember, we are not professional and the website isn't our main focus...

<comment><USER2> Before I began my response to you I scrolled through your responses in this thread. I remember your responses regarding VideoLAN's successes against Applidium, too, so that weighs in to what I'm about to write.

> Well, the designer wasn't paid the price a design should be paid, so, the > designer gets some visibility. This is normal...

I'm not sure if you intentionally overlook things that the comments you reply to clearly say (you did this in <http://news.ycombinator.com/item?id=2082505> too), but I acknowledged that the designer might have been doing pro-bono work for you and I _still_ consider the self-promotion inappropriate. The promotion there gives the designer equal footing with the very message of the site itself, which isn't how a Web site works.

The best analogy I can draw here is a production company spokesman standing in the corner of a TV drama, waving and holding a sign that says "we produced this!" for the entire length of the show. Credits in television are reserved for the _end_ , because such a thing as I describe would dilute the message. Your Web site is your public face and your message, and the upper-right side is very prime real estate. The placement, honestly, could be perceived as a sell-out.

I am perfectly aware that pro-bono work or discounted work is traditional for a Web development shop to build a portfolio. I didn't kid myself that the VideoLAN project paid full-price for a site such as the one you have (which looks great, by the way). Even with that in mind, the promotion you are giving your designers, while your prerogative, was very quickly perceived by me and other developers in this thread as being inappropriate. I wouldn't consider the placement and size of their promotion to be "normal" at all.

That defacement of your message is something that I would never do as a designer, myself.

> And this is temporary...

What is? The entire site, or the promotion?

> About the tweaking, yes, a lot of work is needed, but so what?

You're right, so what? I didn't draw a conclusion based on the tweaking, I simply expressed some criticism. You'll notice I didn't write "they're still tweaking, man, their site sucks".

Feedback is feedback, and jumping on the defensive when it's offered is suspicious. I went to great lengths not to offer destructive criticism. I expressed great surprise ("ouch!") at the lack of consistency between something as elementary as your _logo_ \-- look at the type alignment between / and /vlc/ on your logo. That's a _big_ deal, and I'm surprised it slipped. That's the identity of your brand right there, and I was really surprised that one made it through, that's all.

I was also expressing surprise that the tweaking was being done in production. That is traditionally considered a bad thing, and it makes you look sloppy.

> Remember, we are not professional and the website isn't our main focus...

With respect, that is _absolutely_ the wrong attitude.

Your Web site is your brochure. It is the first thing people see when they want to know what VLC or the VideoLAN project is. That is your brand. It is your initial impression with anybody who has never heard of you.

I don't care if you consider yourself a professional or not. Everything about VideoLAN, from start to finish, should be treated with extensive polish. You should have a lot of pride in what you do, not excuses ("we are not professional" -- something I am flabbergasted to hear a _chairman_ of a project say).

<comment><AUTHOR> Hi. I am the designer of the website.

The logo of my portfolio at the top may have been a bit bold, but its temporary. I had asked for it, to get some additional exposure during the initial few weeks, when people would be curious about the new design.

I tried my best to make the logo blend into the design.

About the logo inconsistency. It's my fault. hanks a lot for pointing that out, I'll fix it.

As far as tweaking in production goes, its usually better to launch and iterate, than to sit and try to make it perfect before launch. The current version works well enough for most people to use it, and I'm sure that not many people really care if the logos or design on all pages aren't consistent (I'm not saying that its not important, just that its not critical enough to hold off on launching).

As far as being professional with the website is concerned. I only did the designs for a couple of pages in Photoshop. The folks at VideoLAN had to code it up themselves and also adapt the designs I gave to fit all other pages. That takes a lot of time and effort. Although I don't speak for VideoLAN, I am sure that they would rather focus on their software than the website.

That being said, I agree that they should work on making their website, and everything else about VideoLAN from start to finish, perfect, but it can only happen if more people volunteer. I'm sure they wouldn't mind if they had more designers and developers offering to polish up their brand.

<comment><USER2> > As far as tweaking in production goes, its usually better to launch and > iterate, than to sit and try to make it perfect before launch.

So tweak on a staging site is my point (and has been all along). If I refresh the page and suddenly the bottom footer is no longer in the center but flush left (with dead white filling the right), that looks sloppy. I'm not saying hold up the launch, I'm saying try your changes on a non-visible site.

To reiterate what I mean here: you should not be running vim on the box hosting www.videolan.org. I watched you do it earlier today.

Commit those changes as a unit, then pull them over to production. Half-baked edits to production should never happen on a public-facing site, especially with $20/mo VPS providers that can spin you up a server in minutes.

<comment><USER3> > To reiterate what I mean here: you should not be running vim on the box > hosting www.videolan.org. I watched you do it earlier today.

Very unlikely. The Website is open source, and the www.v.o pulls the svn every few minutes and recompiles it.

You'll see the website change quite a lot in the next days, because of that...

But the main thing is that you don't like the way we see the website, ever- evolving and not 100%-tested before. I agree, but we don't have the teams to do that.

</comment></comment></comment></comment></comment></comment><comment><USER4> The "made by" tag looks unprofessional. As if the website designer is as important as his customer.

<comment><USER3> Great. We are not professional.

</comment></comment><comment><USER5> The huge "MADE BY X" in the header is a bit overkill

</comment><comment><USER6> A bit OT:

VLC, while it often just works, is one of the slowest players I know. I often have a lot of jittering, esp. when doing some CPU/IO intensive work in the background but also without. Sometimes when I play from a Samba share, it may also because of slow connection, whereby the connection should be fast enough to play it in real-time without a problem. I already played a lot around with settings like skipping frames, cache size, etc. but I never really got it removed completely. And the UI, esp. controls like play/pause, also feel a bit laggy. E.g., when I hit pause, it still plays for about half a second.

MPlayer is among the fastest players I know. One good sign of that is that I can normally play Xvid/H264 videos with it on my 350MHz PII with an onboard graphics card (Riva128) in Xorg without any problem. And on my normal PC, it never has any performance problems, no matter what I do in the background. And it also responds really fast. When I hit pause, it instantly pauses.

Only problem with MPlayer: It often does not integrate that well, at least on MacOSX (maybe most of this is Mac related). And there are no real official binaries and the ones which exists are outdated. Also, all of the available GUIs often have further problems and make the performance a lot worse (which I don't really understand).

Anyway, why I am writing this: Often enough, I have thought about that the VLC GUI and OS integration (also including automatic updates, etc.), with MPlayer as the engine, would be the best thing.

<comment><USER7> Likely a Mac related problem. I have no trouble with VLC on my Windows machine nor on my work iMac. However, the home iMac has issues.

In my administrator account on the machine the video is fine, but in my wife's non-privileged account the video can stutter. And all video stutters--flash, VLC, QuickTime. And it comes and goes with various OS updates.

I've never been able to find the root cause.

<comment><USER6> What I also experienced under Linux: It eats more power. When playing videos just on battery on my notebook, I could play much longer with mplayer and the CPU cooler stayed very slow/silent. This difference was very notable on my PowerPC notebook but also later on x86 notebooks.

But I never tried it on Windows.

<comment><USER8> Same story, use better video drivers and an updated version of VLC. VLC with vdpau on my system screams.

</comment></comment></comment></comment><comment><USER9> Too many traffic cones.

<comment><USER10> 10 years, and I still don't know what the deal is with the fscking cones...

<comment><USER11> The cone was a placeholder/warning for early builds. By the time it got stable, everyone recognized the cone = VLC and they decided not to change it.

</comment></comment></comment><comment><USER12> Looks nice, I hope they will also improve design of vlc player soon. :)

<comment><USER3> I am working on that, but it is quite hard...

If you have any insightful ideas, ("it isn't pretty" isn't one), please mail me...

</comment></comment><comment> matthew-wegner The line spacing makes things quite hard to read. What's going on here? [http://dl.dropbox.com/u/173540/Screens/Screen%20shot%202011-...](http://dl.dropbox.com/u/173540/Screens/Screen%20shot%202011-02-02%20at%2011.56.48%20AM.png)

And on other pages columns are quite constrained, which makes for ridiculous word spacing with justification: [http://dl.dropbox.com/u/173540/Screens/Screen%20shot%202011-...](http://dl.dropbox.com/u/173540/Screens/Screen%20shot%202011-02-02%20at%2011.56.28%20AM.png)

<comment><USER3> Totally agree. Any idea so we can improve it?

<comment><USER13> To be honest, a lot of the front-end issues are going to be tough to fix for a number of reasons. There are 50+ instances of inline CSS styling on just the home page, and the CSS is minified so it's hard to pass on changes that can be made in Firebug.

As well, much of the copy on the page is using line breaks rather than new paragraphs, which is why you see funny spacing like in these examples.

While I do think the bulk of the design is quite nice, the HTML/CSS end of it could use some refactoring.

<comment><USER3> [http://svn.videolan.org/filedetails.php?repname=VideoLAN+Web...](http://svn.videolan.org/filedetails.php?repname=VideoLAN+Websites&path=%2Fwww.videolan.org%2Fstyle%2Fstyle.css.in)

</comment></comment></comment></comment><comment><USER14> Does anyone know if they are going to put more effort into their VLC browser plugin?

I tried it a few months ago and it only work semi decently in Chrome on Windows. For Mac it was totally broken.

<comment><USER3> Well, we thought <video> was going to work a bit more, so we didn't work on the plugins at all...

But seeing the current mess, maybe we should :D

</comment></comment><comment><USER15> Cool, I Like it !

</comment><comment><USER16> They're finally displaying the version number on the download button! That was my main gripe with the old site.

<comment><USER3> Well, the old site was confusing in many aspects.

The documentation and support was impossible to find and it was almost impossible to maintain...

Of course, this is a first step and we need to improve; but we are C/C++ developers on our free time, not web developers...</comment></comment>


Ask HN: Where can I get civil discussion on issues spanning politics and tech? - <AUTHOR> I understand and respect HN's desire to steer clear of politics in this forum even when it mixes with technology in some manner. I would like to know if there is a place like HN that already exists where I can have those kinds of discussions, or if I should consider making my own subreddit or website. <comment> evil-olive Tildes is the best place I've found, a mix between HN's high bar for moderation and Reddit's openness to more than just technical topics:

[https://blog.tildes.net/announcing- tildes](https://blog.tildes.net/announcing-tildes)

Currently in closed alpha, though.</comment>


Show HN: Thousand – keep track of your home workout - <AUTHOR> https://apps.apple.com/us/app/thousand-workout/id1507695611 <comment><AUTHOR> With work from home and gyms closed, I found it hard to stay motivated and get in a good workout. I started doing the Thousand workout (1000 total reps of 9 bodyweight exercises) and thought I could learn some mobile development by building an app to keep track of my reps throughout the day.

Happy to get any feedback about how I can make the app more useful and hope it gets you motivated to stay active!</comment>


Measuring Openness, from Android to WebKit: The Open Governance Index - <AUTHOR> http://www.visionmobile.com/blog/2011/07/the-open-governance-index-measuring-openness-from-android-to-webkit/

<comment><AUTHOR> PDF report: [http://www.visionmobile.com/rsc/researchreports/Open%20Gover...](http://www.visionmobile.com/rsc/researchreports/Open%20Governance%20Index%20\(VisionMobile\).pdf)</comment>


Flood Maps - <AUTHOR> http://flood.firetree.net/ <comment><USER2> A few odd glitched zones and it doesn't cover the whole world but overall this one is pretty neat. With all of the work put in it's a bit of a bummer it doesn't let you select negative values.</comment>


Games on GitHub - <AUTHOR> https://github.com/leereilly/games <comment><USER3> Many companies in the games industry have settled on using Perforce or SVN (or more recently Plastic DVCS) internally as, out of the box, it can handle both code and non-code assets (i.e. large binary files) well in tandem. Git has problems with the latter - people have tried to correct this with solutions like git-annex and git-LFS but these have failed to catch on thus far.

<comment><USER4> The problem with non-code assets in git is (or at least it was for us) not with such assets being large blobs with weird in-git storage model, but with such assets being _unmergeable_ in case of two parallel edits of the same object.

Since merges are not generally possible (except for some special usecases), one would expect version-control system's help in avoiding parallel edit situation at all. This is where svn's centralized server helps, allowing "pessimistic locking" of certain files and folders. AFAIK, Plastic also offers such a feature, when git cannot do anything like that by design.

<comment><USER5> > _The problem with non-code assets in git is (or at least it was for us) not > with such assets being large blobs with weird in-git storage model, but with > such assets being _unmergeable_ in case of two parallel edits of the same > object._

I tried storing large images in git once. And one problem was when git would try to do garbage collection every now and then. And start diffing all the images against each other to repack them to use less space. This was very CPU and memory intensive.

<comment><USER6> git lfs was buggy/clunky for a while but it now seems to actually be pretty stable and usable.

We've been using it pretty much since it was integrated into github.

</comment></comment></comment></comment><comment><USER7> Quite a few (well, 2 out of 3 or 4 that I've tried) of the project's off- github websites are either domain-squatted or, worse, result in "your computer has been infected" popups. Obviously, that's going to happen with projects as they get abandoned, but I think the compiler of a list such as this one has a responsibility to make sure everything's legit.

</comment><comment><USER8> I don't know if this was reason it was posted for, but looking at how the code is structured in some of hose projects is extremely insightful for game making.

Too bad that, at least in the games I looked at, all the non-game code (e.g. Google play integration, analytics, etc..) is missing.

<comment><USER9> And when you're actually taking games to market, all that non-game code makes up a huge percentage of the development cost. It's highly predictable code that most game devs have done many times before (which is why I always argue that once the gameplay is locked and loaded, which it should be before you go into large-team production [if there are still big changes to make, you should stay in prototype and _not_ have a full team doing production quality art, UI, sound, servers, etc that might need to be replaced], mobile game dev projects should always be waterfall, not agile), but it's still a lot of work, and it can't ever be 100% reused.

Speaking just to mobile, you need to add, on top of "the game" itself:

      - scalable persistence that handles play on multiple devices and platforms (add load testing to this if you're "Doing It Right")
      - in-app-purchase integration
      - metrics instrumentation, collection, analysis, etc.
      - social integration: authentication, sharing, invites, leaderboards, etc., often with backend components, not to mention the hell that is integrating with social SDKs and keeping them all up to date
      - dynamic content loading, if your game is too big to fit in the ipa/apk
      - TOS, legal, COPPA compliance dialogs/data filtering
      - a proper audio integration (chances are your initial approach, whatever it was, won't work for a full game)
      - dynamically loaded variables system (can't do an App Store push every time you need to change something about the game tuning)
      - A/B testing
      - customer service mechanisms
      - <USER2>
      - push and local notifications
      - user acquisition attribution (to know which ad networks are effective at pushing users)
      - landing page optimization
      - platform nonsense (a carrier just pushed a new version of Android to one of their phones that has a crappy GPU driver whose bugs are only fully exposed in the latest OS version? Congrats, now half of your shaders draw black squares, have fun tracking that one down, esp. since that particular driver/chipset combo only exists in phones sold in Canada and eastern Europe!)
      - and so on, when I was in this field we'd end up with lists 40-50 items long of basic stuff that every game needs, along these lines

It gets _really_ messy, "the game" is really just the barest start. All the stuff I listed above can easily take 50%+ of total man-hours in a dev cycle, even if you have well-factored code from other games to work off of, just because it all requires game-specific UI and design (both of which always have some non-zero code cost).

I imagine single-player premium desktop games are quite a bit simpler, but I've never had the pleasure.

<comment><USER10> Jeez, can't remember the last time I saw... well, anything relating to COPPA - it was probably when signing up for a forum in the early 2000s.

</comment></comment></comment><comment><USER11> Got a DMCA hit pretty quick: [https://github.com/FullScreenShenanigans/FullScreenMario/](https://github.com/FullScreenShenanigans/FullScreenMario/)

</comment><comment><USER12> What, no id[1] in the major companies?

EDIT: Nevermind I found it way down the list, but still, id is pretty major company when it comes to games.

[1]: [https://github.com/id-Software](https://github.com/id-Software)

<comment><USER13> >If you'd like to add a repository to the list, please create an Issue, or fork this repository and submit a pull request.

</comment></comment><comment><USER14> [https://github.com/spring](https://github.com/spring) [https://github.com/ZeroK-RTS/Zero-K](https://github.com/ZeroK-RTS/Zero-K)

are missing in strategy

</comment><comment><USER15> Here's another nice once, if you'd like faithful remake of Settlers II [https://github.com/Return-To-The-Roots/s25client](https://github.com/Return- To-The-Roots/s25client)

</comment><comment><USER16> How on earth could they miss OpenRTS?

</comment><comment><USER17> Very cool idea. I've just added my library to the list of libraries (opened a PR).

</comment><comment><USER18> I never knew how much I need this. Thank you.

</comment><comment><USER19> Opensource things are always good.</comment>


CALTECH CS 155 Machine Learning and Data Mining - <AUTHOR> https://www.youtube.com/playlist?list=PL5HdMttxBY0BVTP9y7qQtzTgmcjQ3P0mb <comment><AUTHOR> Instructor Yisong Yue @ CalTech, Winter 2016

homepage for reading list and slides [http://www.yisongyue.com/courses/cs155/](http://www.yisongyue.com/courses/cs155/)</comment>


Microsoft's Effort to Build Apps and Reward Engineers - <AUTHOR> http://www.nytimes.com/2011/02/27/business/27novel.html?ref=technology <comment><USER2> Thanks for posting this :). Earlier thread when my wife and I created the app here -> <http://news.ycombinator.com/item?id=2173298>

This entire PR exercise has been fun. It went something like this

\- Pitch TC with a very standard email. I was up the previous night looking through HN for advice on pitch emails. TC wrote a great post on us (it helped that both Path and Instagram announced funding that day)

\- Pitch Techflash with the TC post. Todd Bishop is a great guy and he had done an earlier article on an older app of mine so this was a nice tie-in.

\- Mail Anne Eisenberg of the NYT and point to both of the above. I had interacted with Anne several years ago and dug out her email address. Anne is just an amazing person and it has been great fun to work with her this past few weeks. Anne also pulled in Microsoft PR who pulled in Brandon Watson who run the show when it comes to Windows Phone development.

For both Aarthi and me, coming from a typical developer/engineer background, this entire experience has been very educational.

Now I'm off to see how many hits I got from the NYT linking to bubblegum.me :)

<comment><USER3> Brilliant and Congrats... I am going to try out the app today :)

<comment><USER4> Thanks! let us know if you have any feedback (firstname.lastname@example.com)

</comment></comment></comment><comment><USER5> I have to give props to Sriram...I usually don't get the NYTimes calling me about being in a story. He sold them all on his own. Great personal effort on his part.

<comment><USER2> Thanks Brandon - we appreciate all the support from you guys :).

To be clear, Aarthi (arithmetic on HN) did more than half the work, both in terms of code and in PR. It turns out that being married to someone who can code circles around you has its benefits :).

Separately, I think that helped with some of the press - the fact that we were a married couple (and her being a leading female coder/engineer in an industry which doesn't have that many) added a human interest angle.

</comment></comment><comment><USER6> In terms of Microsoft's external efforts to spur on WP7 development, I haven't been as impressed. Maybe it's just that I'm bitter about sitting through an evening's worth of presentations with a room full of iPhone developers at MS's Mountain View campus and not being offered a free developer phone at the end ;-) But seriously, Google has done a lot of developer outreach to try to catch up with Apple, yet I don't see MS doing much other than expecting us developers upgrade to the latest Windows, buy ourselves a copy of Visual Studio, find and purchase a WP7 handset, etc., etc.

<comment><USER5> I run developer mktg for phone. Sad to hear you think we aren't doing a good job.

Handing out phones to everyone is a bad ROI. Are you building apps? If yes, we have phones for people commited to building on the WP7 platform. Send me an email at brwatson at Microsoft and we'll get you sorted.

Oh, and our tools for WP7 are free.

<comment><USER7> I suspect you may come to regret posting that.

<comment><USER5> Why?

</comment></comment></comment></comment><comment><USER8> I agree with one theme of the article. It is a good idea for Microsoft to encourage its developers (and other employees) to write WP7 apps. Pizza parties etc. are also good.

However, the article is misleading when it talks about "rule changes".

 _> >"We tend to have strict moonlighting rules," he said of the company."But we've changed those rules so developers can do this in their spare time"_

 _> >MICROSOFT'S new rules fit into the broader rethinking of how large companies manage research._

For most of the past decade, Microsoft had fairly liberal moonlighting rules. You could start your own business and work on it as long as you didn't see a conflict of interest with your work at Microsoft.

In the 90s, manager approval was required for moonlighting. For most or all of the 00s, you didn't even need to inform your manager about moonlighting (unless you saw a potential conflict of interests)

These rules aren't new (and have nothing to with WP7). In fact, many of the people I know used these liberal moonlighting rules to write iPhone apps in 2008. Some of them are still at Microsoft and some of them quit Microsoft after their iOS business did well.

<comment><USER5> Not true. We had to make changes to how IP was treated. Yes employees can work on non-related-to-MSFT stuff, but profiting from apps would have had troubles without changes to the policy. It was the collective work of a lot of people associated with WP7 that made this happen.

</comment></comment><comment><USER9> The main problem that Microsoft is facing is the same as they faced with Silverlight.

Developers are only one part of the equation. It's the designers and creative/visual developers that you need to make your platform really stand out.

For what it's worth though I saw the Windows OS on WMC and it looked pretty great especially for games. Although I am not sold on their basic GUI, but time will tell.

I am not saying this to belittle the importance of developers but that is to me rather obvious.</comment>


Mistakes every programmer makes - <AUTHOR> http://www.techradar.com/news/software/applications/10-mistakes-every-programmer-makes-909424

<comment><USER2> Back when I started programming VB many years ago, I discovered the following expression:

      ON ERROR RESUME NEXT

Armed with only the help file (no manual), coding felt easy. "An error, you say? Just skip and pretend it never happened"

</comment><comment><USER3> Also, apparently not putting a captcha on your comments.</comment>


Chat Now In Public Beta - <AUTHOR> http://blog.stackoverflow.com/2010/08/chat-now-in-public-beta/ <comment><USER2> (If you have a foo account and a bar rating and jump through other hoops). So not quite 'public'.

<comment><USER3> And thank the Lord for that. Joel has mentioned on his podcast that high school kids are remarkably adept at finding places on the web that they can use as makeshift IM replacements that the school hasn't found and blocked yet. This way those kids will at least have to learn to answer a few programming questions before they can use the site for their own purposes.

<comment><USER2> It's certainly _one_ way to deal with spam and abuse.

</comment></comment></comment><comment><USER4> I like the interface and the url embedding feature. An IRC gateway would be great addition.</comment>


Raspberry Pi devices you can build yourself - <AUTHOR> http://www.zdnet.com/six-clicks-insanely-great-raspberry-pi-devices-you-can-build-yourself-7000029300/#photo

<comment><USER2> Shameless (Pi-related) plug: [http://www.streetsign.org.uk/](http://www.streetsign.org.uk/)

I wrote a digital signage system for a large (3000 participants + staff) conference last year, running on a bunch of pis around the campus. I've been developing it since then, with a few other teams in our organisation installing it for their sites.

It's written in Python (Flask), and reasonably easy to install and use. Anyone interested? (core released as GPL, I can do project work / features on request / commission as well...)</comment>


Microsoft Edge is now the exclusive browser to support 4K streaming in Netflix - <AUTHOR> https://www.neowin.net/news/microsoft-edge-is-now-the-exclusive-browser-to-support-4k-streaming-in-netflix <comment><USER2> It apparently requires Kaby Lake. I assume that means a DRM scheme using Intel SGX.

Intel SGX allows dynamic creation of a so-called secure enclave on the chip, bound to a segment of code. Once setup not even the kernel can read the contents of memory within the address range of the secure enclave (at least, not unencrypted). Only code within the address range can read and write memory in that range. The protections are implemented and enforced by the CPU and MMU, somewhat similar to ARM-based secure enclaves, but more dynamic and flexible.

Each SGX-enabled chip also includes hard-coded symmetric and asymmetric keys, and only Intel has the database for the secret components of those keys. Long story short, this allows vendors to ship a small program that can setup a secure (confidential, authenticated) channel to somewhere else on the network that is impenetrable to the host computer.

It would be a malware writers wet dream, except your program needs to be signed by Intel, and you need online access to Intel's database to initially authenticate a channel. So instead it's a wet dream for businesses implementing DRM schemes and who can afford paying the Intel tax.

In this case Netflix is likely shipping an SGX-protected program that decrypts and decodes the stream, installed using new hooks in the Edge browser. Pushing the contents to HDMI probably requires another layer of software provided by Windows. Perhaps even another SGX-protected program, authored and signed by Microsoft, that can securely push to HDMI.

SGX includes features to allow two SGX-protected programs to authenticate each other at runtime--that is, that each is legitimately SGX-protected. That allows two SGX-protected programs to setup a secure channel between themselves, using the platform's native ABI (if within the same process) or IPC mechanisms. I don't think SGX supports mechanisms for direct bus access, so Microsoft's half probably requires some kernel work to provide and authenticate the public key for the HDMI/HDCP controller, unless Intel also keeps a database of HDCP keys.

SGX could also theoretically be used for so-called secure computing. For example, being able to process sensitive data in shared hosting environments without worrying about bugs in the kernel or virtual machine manager. But because it requires Intel to sign the binary code, it's not really useful for implementing Free or Open Source software. Even development is a giant PITA, which is why Linux still hasn't (AFAIK) implemented the necessary infrastructure to make it work from user space.

You could theoretically implement a virtual machine inside an SGX enclave, but Intel would never sign such a thing as it would permit malware to proliferate. That cat should never be let out of the bag, given how keys are hard coded in each chip. Intel's verification and validation process is presumably _extremely_ rigorous.</comment>


Ask HN: Python vs Ruby, syntactic sugar? - <AUTHOR>

I have been using ruby for last couple of years and I can say that I am in love with this language because of its such a simple syntax. I have very limited exposure to python and would like to know from guys who have experience with both languages that what do they think about python's syntax? Is syntax the only difference between these two language? <comment><USER2> Definitely not the only difference between the languages.

There are too many differences to list here, but Google is your friend for this stuff. Read stuff from both camps.

Python is the first language I learned so it has a special place for me. But I am completely unbiased when I say that, syntactically Python is just loads better than Ruby. At least for me. I find Python code to be much more readable and better organized.

<comment><AUTHOR> This is what I wanted to hear. I was suspecting this to be the case. I can keep my mind open about working in python in future.

</comment></comment><comment><USER3> Do a Google search for "python vs ruby site:news.ycombinator.com" and read all of the past discussions on this topic. This question gets asked every few weeks.

</comment><comment><USER4> No, definitely not the only diff</comment>


There's a vampire squid in your neighborhood playground - <AUTHOR> https://medium.com/@jase/there-s-a-vampire-squid-in-your-neighborhood-playground-d726e8b6d5c9

<comment><USER2> This is such an insightful write-up! If you want to read more about this issue there's a whole lot more @ [http://www.neighborly.com](http://www.neighborly.com) and [http://blog.neighborly.com](http://blog.neighborly.com)

</comment><comment><USER3> Vampire squid. reference to Matt Taibbi's article in rollingstone about Goldman sacks bankers.

<comment><USER4> [http://www.rollingstone.com/politics/news/the-great- american...](http://www.rollingstone.com/politics/news/the-great-american- bubble-machine-20100405)</comment></comment>