skysight-inc/HackerNews huggingface dataset:
A command line utility in python for downloading Hollywood/Bollywood or Punjabi songs by just typing its name.
At the risk of having my junior philosopher's secret decoder ring taken away, the true definition of philosophy is an elaborate logical structure built to decorate your previously existing, unreasoned prejudices.
Best root apps for your android device
The quality of their opengl drivers has been really lacking.
> Writing integration tests or unit tests around existing functionality is extremely important but unfortunately might not always be feasible given the time, budget, or complexity of the code base.

Bottom line: If the project cannot afford to properly maintain the code, it's a failure of the business model. Projects can be maintained indefinitely, but it costs money. And that means the project has to bring in enough money to pay for those maintenance costs.

The options, as I see them:

1. Accept that this particular project, and those that intimately depend on it, has a lifecycle and will eventually die, either slowly or quickly. Prepare for that fact, staying ahead of the reaper by quitting, transferring to another project, etc.

2. Build a case to leadership that the project is underfunded long-term. This takes communication skills, persuasion skills, technical skills, and political skills. You'll need to go to all the stakeholders in their frame of reference and explain the risk involved in fundamentally depending on legacy code.

Anyway, engineers tend to see the "legacy code" problem as a technical one. It is in the sense it takes technical work to fix it. But the root cause is a misallocation of resources. If the needed resources aren't there in the first place, the problem is a bad business model.
Automating Django Deployments with Ansible
TIL! (Though, note that both indexing and .length operate in code units in JS.)
Writers Write
Lots of folks missing the forest for the trees. Objecting to Penrose' argument on the grounds that it assumes Humans are logically consistent when that is no the case misses the point.

The claim is that you can not adequately model the Human mind with a Turing machine. Pointing out that Human's are not logical only strengthens this claim and does not refute it. Further, the claim at this non-Turing machine-like ability of Humans is valuable and allows us insight that Turing machine is fundamentally incapable of.
Good. Bring on more cores. I could use them.
Thanks for explaining 80000h to me.
As I said, I'd choose SD835 simply because it's more energy efficient even if the speed improvement is insignificant (even though it is not), and for most people more battery saving is a very welcome improvement. Moreover, it's not just that. Here's what's new in SD835 besides being 'faster' -

- Around 25% less power consumption

- Quick Charge 4 (up to 25% faster charging than Quick Charge 3)

- Faster, more reliable and efficient Wireless (Gigabit LTE)

- Bluetooth 5.0 support (significantly better than BLE 4.*)

- Inbuilt Dual camera support and Electronic Image Stabilization version 3.0 for much better shake free videos.

- Considerably smaller size so that phone makers can fit more 'stuff' inside.

- And more ...

All of these features are quite important to me. Of course, we'll have to see how these numbers turn up in real life, but to say it's an overkill for most people is equivalent to saying any new phone with new features is an overkill.
WRT architecture: In my experience, you would be lucky if you are free to change the higher level structure of the code without having to dive deeply into the low-level code. Usually, the low-level code is a tangle of pathological dependencies, and you can't do any architectural refactoring without diving in and rooting them out one at a time (I was pulling up ivy this weekend, so I was primed to make this comment!)
There is rarely a situation where you can't slip a printf or log message into a piece of code and observe how it's working in production. Depending on the complexity of the problem the debugger can also hide a lot of problems- is there a timing issue? is it intermittent? What happened the last 200k times? An interactive debugger technique doesn't help you at all if all you have is a coredump of an issue that happens once a month.

It is definitely a personal preference, but I just find myself in too many situations where the constraints to make a debugger in a dev environment work well end up adding a lot of complexity to the problem space. I know printf/write to a file works every time, everywhere.
I think some of this already exists using APM and code analysis. The only issue is existing toolsets often display ugly diagrams in like ER format or some flow diagram. Hard to read.
I agree about the YMMV part. The same caveats, small scope and developers with expertise, apply in the gradual migration plans as well in my experience. It's clearly true in the extreme cases (python2 -> python3) and I've seen the same patterns happen inside companies as well.
So your claim is that the Human mind is a physical machine and that computers are also physical machines and thus both are bound to physical laws... and this negates Penrose how?

Do you think Penrose disagrees that the Human mind is bound by physical laws??
No, I think we played around with it but decided to stick with the known quantity of the mainline interpreter, 'devil you know' and all. Because the types of bugs we found were not readily apparent at first, the types of things that would only manifest in statistics accords thousands of machines on 24/7, so pushing a new interpreter out was seen as too risky
Dual boot windows 10 and windows 7
I will reply to myself, as I get 4 upvote and many downvote, but no comment. Argue a little is not possible?

AI is clearly not a problem, only a trends.

The main and only problem is the industrialisation, people that don't have access to water, food, liberty. Liberty I mean, that I own a land that I want, do like I want, because I'm currently living on earth, I don't care about your old purchase of your family. I had the right to life how I want. Liberty mean that I can die for smoking if I don't care and it's my opinion and it's not your problem to solve it. Therefore had nothing to do on the biggest problems.
Maker here. Side note: Took all the feedback from HN on my previous demo. Still working hard on a searchable database with a ton of curated newsletters. My goal is to make it easier for fellow creators to share their startup & side projects with thousands of potential customers. And to have newsletter owners monetise their emails. Creating a win-win situation for both sides.
Beyond GVFS: more details on optimizing Git for large repositories
If you have computers on both sides of the turing test, how do you know which one you're testing?
That sounds like a perfect use for Intents.
Is anyone else flabbergasted by the amount of effort required to mock a function call in Go, as described by this talk?

Like, when at 3:20 the presenter says there's a thing you can do that makes it utterly trivial to test this feature, I immediately assumed she'll just have to write some mocks for the `comm` package, and plug that in. Cool, I guess she'll talk about a nice mocking library or something, or there's some business complexity involved where the comm package is particularly stateful and so difficult to mock.

But no. The big difficulty seems to be that the language doesn't allow you to mock package-level functions; and so before you can mock anything you have to introduce an indirection - add an interface through which the notify package has to call things, move the code in the comm package into methods on that interface, correct all code to pass around this interface and call methods on it.

Why would you choose to work in language that makes the most common testing action so painful?
Can I call other Echo devices in my house?
> Of course, someone will have to setup a micropayments processor

... and that someone will soon be bankrupt due to fraud.
Indeed. To make such a claim demonstrates a misunderstanding of what formalism is. When human beings develop formalisms, they do so on the basis of semantics. If I wish to formalize something, I must first have a relevant understanding of the nature of the thing, or things involved and the relations between them. The development of formalism is a translation of semantics into syntactic rules devoid of meaning. Doing so allows us to mechanize reasoning. Algebra is an example of an early move in this direction. Something we learn in mathematics is that two theories concerning different objects can be formally equivalent.

Computers are strictly devoid of semantics. They are, at best, purely syntactic machines. There is no amount of syntax than can ever lead to semantics. Strictly speaking, computers don't even compute.

Further reading: http://edwardfeser.blogspot.com/2013/10/do-machines-compute-...
Okay so quickly, without google, how many gallons are there in a cubic yard?

Now for the people who know metric it's fairly trivial to calculate how many liters there are in a cubic meter. A liter is defined as being one cubic decimeter. A decimeter being one step down from a meter means for cubic measurements it's a factor 1000. one cubic meter multiplied by a thousand is 1000 cubic decimeters or, equivalently, 1000 liters.

Note how in both examples you start with nice round numbers. I havent cherry picked a starting point that ends up nicely in metric.
We did an experiment where we vary the number of training samples and measure validation accuracy (Fig. 3). Basically, the system keeps getting better as you give it more data. (For good real world performance I'd say 10s of thousands of training samples would be needed).

Initially, we were using an off the shelf dataset donated by an anti-virus company. Later we did some experiments using a much larger dataset collected by our colleagues at ASU. Although I was not involved with collecting that dataset, as far as I know the Android APKs were scraped from various online stores and checked for malware using virustotal.com
PHP 7: The Important Stuff – Course
Alternative hypothesis, with regard to roughnecking, provided by Occam's Razor and biology:

https://www.reddit.com/r/dataisbeautiful/comments/4vcxd0/alm...
How a 33-year-old turned $200 into $1M in 92 days selling Kevlar pants online
Lots of good insight here, you ought to cut n paste this into medium to get it out there. I particularly find your perspective of academic high achievers, who have already over come many obstacles, to still find CS as an impenetrable discipline.
I cannot recommend enough a paper called "A Garbage Can Model of Organizational Choice" (1972) by Cohen, March, and Olsen. Maybe the best thing I was assigned to read during my whole PhD. The authors propose that decisions are made by random co-occurrences of problems looking for solutions, solutions looking for problems, and people looking for opportunities to make decisions (not exactly in those terms). The authors even did a little computer simulation, which might prove enlightening (or distressing) given your objective. Link: http://www.jstor.org/stable/2392088

Thanks for reminding me of this.
That's an interesting — and mildly dystopian, to me — thought. I would argue that the cost of having not understood these things is taking quite a toll in the form of tech debt, however. While it is certainly true that I, and others passionate about the field, can potentially educate (though it's debatable how good I am at that), I find I'm usually doing that after-the-fact: I can't know that someone lacks knowledge until they've someone demonstrated that, typically in the form of tech debt, at which point it is much more expensive to course correct.

(In the BTree example, I find people often think they understand how BTrees work, so they're not going to raise questions, since they don't know what they don't know.)
Semantic Designs[0] is one of several companies that sells software for working with legacy codebases and programming language translation. [1] is a SO post by one of their founders that describes some of the difficulties in programming language translation.

[0] http://www.semdesigns.com/

[1] https://stackoverflow.com/a/3460977/3465526
Managers only hear about problems which extend past our team. On the other hand, if I have to spend a whole day chasing an esoteric dependency conflict in our uber-jar, the manager won't be involved in it (and it's probably more annoying and mentally taxing than coordinating work with people on other teams).

Btw there is an interesting trend in London where individual contributors (at least in Big Data) are paid more than their managers - that's because ICs are brought in as consultants at 500+ quid a day, while companies often insist on managers being full time employees, who genrally get paid less.
Now bittorrent has one of the greatest catalogues of films available to the public. You can find many rare and obscure films that are unavailable elsewhere.

For example, I heard that Stanley Kubrick's student war film he made was actually pretty good. But it wasn't available for sale or stream from anywhere. I found it almost immediately on a (public) torrent site with a decent quality. I've had this experience on a couple of occasions.

It's too bad that Netflix doesn't keep a backlog of old films plus a rotating selection of newer films. But I guess their licensee's business models comes before their customers wants.
Thank you for the recommendation. I've been looking for some good technical podcasts. Would there be any others that you would recommend?
I dont underestimate the benefit of soft skills and also benefit masters of org/office politics can lend to the rest of the team, especially when your one step away from a contract renewal. Ive had great PMs before that add the benefits you mention. But occasionally you get a toxic bullshiter in the coding space, dabblers ranked as technical peers, out for themselves and somehow pulls the wool over management, asshats.
> It’s getting hard to remember, but a decade ago — before iPhone — all our mobiles were dumbphones. We’d use them to call or text and perhaps play the occasional game of snake. But that’s it. That’s all we could do.

Tell that to my HTC Wizard / Cingular 8125 [0], released almost two years before the iPhone. The term "smartphone" was already in use before the iPhone also [1]. I don't mean to downplay the arrival of the iPhone; it did a lot to advance the state of the art. But to say that these things just flat out didn't exist before the iPhone is grossly wrong.

For those who want to know, this is how history is rewritten.

[0] https://en.wikipedia.org/wiki/HTC_Wizard

[1] https://www.engadget.com/2006/02/21/review-cingular-8125/
It makes sense to use Lisp-specific tools with Lisp, otherwise the whole experience is underwhelming. The best Lisp tools are usually written in itself or some variant of it.

On the Mac you can download Clozure Common Lisp from Apple's Macintosh application store:

https://itunes.apple.com/us/app/clozure-cl/id489900618?mt=12

It comes with a small IDE written in itself.

A lot of people who use CL as a serious hobby or for work use one of the commercial development environments: Allegro CL or LispWorks.

There are several other (some are obscure) options, but many use GNU Emacs / Slime or its fork Sly.
Well real-time is often not a requirement like radio talk show there's often a 7-10 seconds delay before next audio is emitted (usually to beep on inapprioiate lanuage) But being able to have most viewers watching the same frame almost simultaneously would be awesome.
https://github.com/ankitmathur3193/song-cli
Daytona: A Framework for Automated and Application-Agnostic Performance Analysis
And I have been working with this for 25 years so what? That's not relevant as this is a fairly recent development.

You keep missing the larger point and you are mixing two discussions.

You wrote and I quote

"Good column but this ongoing idea that the smartphone is the new personal computer is wrong. It's a different type of device."

What you are forgetting in all this is that people who never used computers before for their work are now using smartphones and tablets instead, what they are replacing is mostly pen and paper. Construction sites, drivers, inspectors etc. They skipped the personal computer and moved directly to smartphone.

No one is claiming that people don't use computers, what is being claimed and what is right is that people are increasingly using smartphones for things they used to use computers for and that some people are going directly to smartphones instead.

Which means that in the overall economy which is what Mossbergs article was about, the phone is the primary computation device for most people and that even in areas where the computer is a primary device the mobile takes over more and more of that work.

Thats the point and isn't negated by some notion that your wife use a computer for some of her work. With regards to whether the smartphone is a different device then you are arguing against yourself as you just said your wife uses it for things she also do on her computer.

Not sure where you get the patronizing tone from. The numbers speak for themselves both when it comes to webstats, sales stats, usage etc.
> It’s my hope that at least one person in the room today gets the opportunity that’s opening up here

Is this a transcript of a speech?
Justified true belief: https://en.m.wikipedia.org/wiki/Justified_true_belief

The Gettier problem: https://en.m.wikipedia.org/wiki/Gettier_problem
I'm curious: if storing lots of photos as .dng, .png or .jpg on ZFS without ECC, one presumably gets bit flips eventually. How does this affect the files? Do you just get artifacts in the photo? Or does the file become unreadable? If so, can you recover the file (with artifacts)?

I guess the answer boils down to how much non-recoverable but essential-for-reconstruction metadata there is in these file formats.
Absolutely. Sorry I missed that name.
“App Development with Swift” a free, 900 page book for beginners from Apple
In the latest matches, though, you'll find that some of the odd things that AlphaGo did ends up being adopted by the Go community. So are we now playing oddly, or did AlphaGo simply teach us?
Perhaps I should have stated "const vs let", with "let" being JavaScript's modern, scoped version of "var"... but even so, I think this is just the sort of confusion that the author is trying to clear up.

"let" in JS doesn't mean "mutable" just as "var" in Kotlin doesn't either. While one can use them as reminders to the programmer as to the mutability of the underlying object, there is nothing in the language that enforces this, so this is technically, syntactically incorrect.

In both languages, it might make more sense to simply label variables directly with something like `${variable name}_IMMUTABLE`, which gives a clear clue to the programmer that the variable is immutable, but doesn't imply anything that's untrue about the how the language is used.

Further, one can assign these variables using a library like immutable.js (https://facebook.github.io/immutable-js/), or Kotlin's immutable collections (https://github.com/Kotlin/kotlinx.collections.immutable) to enforce a mechanism for mutability.
Show HN: AudioNotes – Easily record and share audio messages from your mac menubar
I have considered farming in the past, quite seriously. I think bringing an engineering/scientist mindset to it might be a distraction, but it might also actually help me stay interested in what looks like otherwise very tough work.

Farmers have moderately high suicide rates: isolation, hard work, long hours, and the inability to just stop, as you state.

I read your account - and have read many others like it - and immediately start to think of farming more like Hemingway's "The Old Man and the Sea": hard work, rewarding, but there's little choice in getting on with the work.

Maybe one day. Maybe.
That's a good point I'll update the post. Thank you.
How to Earn an “A” for Android Accessibility
> At the very least, write a doc that explains how to build the product, including where to find the parts in source control, what the dependencies are, what servers it'll get installed on, and so on.

... in the form of a Jenkins build configuration. (If possible; if the system requires legacy compilers that only run on old Windows versions or a proprietary compiler for an embedded target, good luck.)
- Solving copyright right internationally (faire use of patent or reuse if value added)

- Solving overfishing

- Solving industrial slaving

- Solving capitalism (we know that we can't continue to grow like this without having a proper solution)

- Solving war

- Solving right to travel and stay where you want, global identity "Citizen of the world"

Note: Not in order
GANs can be trained without gradients using reinforcement learning. Even without GANs, just being able to tune hyper-parameters with such a discriminator should be a strong signal for the synthesizer.
I did not imply that large corporations solely exist because of using Google Analytics to gain insight into the value of their marketing efforts.

My point is this. If your company spends a couple million on online marketing / year, your boss will want to know if you're spending it wisely. And if it's your job to spend it wisely, effectively and report the results, good luck doing so without using tools like Google Analytics.

But regarding your opinion: I happen to know a couple of SMB's that do rely on online marketing to sell things they would not sell otherwise. They are good businesses with great customer service and experts in their field, but without the reach of online marketing they would indeed cease to exist, as their local market is just too small and their margins are under pressure from large retailers like Amazon.

Their margins don't allow for ineffective marketing campaigns and without insight they would fly blind. Are you saying they should just give up and leave the market to behemoths like Amazon? That's just stupid.
ARM Announces New Chip Design Aimed at Cracking Intel Stronghold
If I turn the light on in my closet with the door closed, can anyone explain why you can't see it?
But what about spot betting during a sports game?
>details of a processor

To give a counter view, at the university I attended we went deep into the processor, effectively building a simple model from NAND gates all the way up to an optimized CPU pipeline. The class had one of the most interesting grade curves I've every seen, with no B's, and very few C's. Most grades were either A's or D's.
The article talks about immutable objects vs read-only objects. Final and Val means read only, the reference is immutable, not the object. For class variables Val and final are almost exactly the same.
> ...you would be lucky if you are free to change the higher level structure of the code without having to dive deeply into the low-level code.

The problem, in my mind, is that code can't be accurately modeled on one axis from "low level" to "high level". You can slice a system in many ways:

- network traffic

- database interactions

- build time dependencies

- run time dependencies

- hardware dependencies

- application level abstractions

...and certainly more. On top of that, the dimensions are not orthogonal. You might need to bump the major version of a library to support a new wire format, for example. Anyway, since there are many ways to slice a project, what is "high level" in on perspective can be "low level" from another. And vice versa.
>My go-to strategy has been blackbox (comparison) testing. Capture as much input & output as I can. Then use automation to diff output.

Same here - you have an oracle, it would be a waste not to use it. You can probably also think of some test cases that are not likely to show up often in the live data, but I would contend that until you know the implementation thoroughly, you are more likely to find input that tests significant corner cases in the live data, rather than by analysis.