skysight-inc/HackerNews huggingface dataset:
> I trust the previous author, the test suite and ultimately, the project.

I agree with your first point (functions should abstract some things away), but I disagree here. I feel like this falls into a "let's just not do stupid things" category of stuff that we just can't achieve. If people didn't make mistakes, we wouldn't need tests or monitoring.

I trust people but that doesn't mean I assume everything they do will be flawless. What if you're working on this project and you're debugging an issue where the function's not working right?

Or, what if you want to change how the function works? Pi is admittedly a poor example of this but the general concept is sound I think.

> Programmers seem to fall into two camps. Those that need to know details to understand a method and those that need to know the contract to understand a method.

A user of a software module shouldn't need to know the details of a function, but readability is much more for other engineers working on the codebase than it is for users of the codebase.
I think testing itself is the second-best thing short of proving correctness. It won't guarantee that your code is correct but ideally it greatly helps reducing bugs. TDD, as far as I understand, seems to promise more than just the benefits of testing. It promises an emergent design that produces a solution to your problem. I think this works well for some problem domains, like a lot of web/CRUD/LOB apps, and not so well for others, eg. the Sudoku solver mentioned in this thread. On the other hand a lot of real world problems can be successfully solved by solutions that are adequate but not optimal, ie. good enough solutions and TDD seems to be a viable strategy for these. I personally yearn working on problems where TDD based emergent design is not enough and human ingenuity/intelligence/creativeness is needed. Sometimes I bump into these but at the same time I realise that most of my day-to-day job involves problems that is solvable by TDD alone. That said, while all my production code has extensive tests, probably less than 50% has a test driven design and I'm content with that.
> Concurrency is a b*

I have to say. I spent way too much time trying to understand what b* trees have to do with concurrency, and what system you are using that implements them.
Yeah, if they're pulling $5/mo from each premium subscriber, that's... well, some pretty easy math. They could put a cap on the userbase if they wanted and still be pulling millions per month just off subscriptions, not even accounting for ad revenue.
If you don't need high throughput and otherwise don't have a reason to add a separate technology to the stack just to have a queue, SQL can make a great, simple and reliable queue!

* Postgresql and Oracle with skip locked

* MS SQL Server with readpast

* DB2 with skip locked data

If you use MySQL, it's going to be a bit more difficult.
Joe Armstrong said that in the context of code re-usability in OOP. At first it took me a while to understand what he actually meant with that, because OOP is about making code re-usable, after all. But then I read an article that explained this quote in great length and other potential pitfalls of OOP, and then it all started to make sense.

I would write all of this in my own words, but it would become really long and I don't have the time at the moment. I tried to find the original article I read, but I'm unable to, but here is a similar article I just found: https://medium.com/@cscalfani/goodbye-object-oriented-progra...

I'd understand if the inflammatory writing style and the memes are not yours, but I skimmed through it and I think it does explain some of the problems well. I'm sure there are better written articles on this subject, but I have to leave now unfortunately.
Interesting that they have been able to raise prices over time - a fixed number of cheap seats available at any moment means the more users on the email list, the less likely an individual user will be able to extract value from the list - hence list growth actually reduces the value it delivers.

I guess fear of missing out is a strong sales tool!
The Art of Computer Programming, perhaps?
quality.

I would expect many things to be prone to fires like both Samsung and Takata. I wouldn't trust them in a Prius, a Tesla, or a Galaxy Note. Gas tanks haven't spontaneously burned down cars for over a century, but they will do it this century. Put money on that. I expect the first examples will be shown in China, where manufacturers (21+ of them) can put carcinogenic insecticidal fire-retardant poison in infant milk and pet food for years with what is effectively impunity until it hits newspapers. This will translate to electric vehicles.
I stopped reading at

> mature ecosystem of tooling and libraries

That tells me the author is either blind or so lost in his world that he thinks this is actually true.

This fanboyism around languages and frameworks is apparently ever-growing. Haven't we learned by now that everything is about trade-offs and there is no One True Way?
A Tale of the Mirror World, Part 3: A Game of Falling Shapes
Fun video I made about the code Easter Egg in Ex Machina: https://www.youtube.com/watch?v=JsDt1laSRzU
State of visualization in Python by Jake Vanderplas:

https://speakerdeck.com/jakevdp/pythons-visualization-landsc...
Amazing how much they did without too much technology or upstart cost!
> The Internet mainly has access to the very best promoted material that the human race has created on any given subject.

I disagree, insofar we're not talking about some obscure lone genius work which for some weird reason isn't known to anyone else. I mentioned Reddit and Quora for a reason - communities around specific topics can recommend best sources pretty well, and evaluate them by quality.

> Of course, it can't be best if it's not in English.

Well, for better or worse, English is the dominant language of science and technology today, so it's expected that best resources will be created in, or translated to, this language.
It depends on the child. Children are mini-people, and they all have different personalities and temperaments. Some will do really well with a very independent approach, some will need more guidance. What they all need is love and respect.
Judges are essentially prescribing medication without an MD for behavioral modification. Who will be liable when a patient/defendant experiences a complicated reaction as a result? You would think judges would be aware of their exposure to the legal risks of their actions, so maybe they have insurance.
The Brave web browser
> this idea that TDD is a panacea where no bugs ever survive didn't ever make sense to me in the first place.

The idea only exists as a straw man for those trying to attack TDD.

TDD doesn't ensure there are no bugs. TDD ensures that everything you can think of that can go wrong does not, even as you think of new ways something could go wrong and fix that.

I was in one job a few years back without tests. We had a case where someone got a bug which was easy to fix, but they didn't realize their fix broke something else. Then we released and got the bug report which was fixed by reverting back to the original bug - we went through 3 rounds (over 6 years - a different contractor on the bug each time so who didn't realize what was going on) before someone realized what was happening and fixed both bugs.
In my eyes (where the GP makes perfect sense), a message broker is asynchronous, there's no implicit wait while your consumers work on our request. A request-response interface will stop the producer until the consumer is done.
The point is that the Gap is narrowing not that there is no Gap.
Root issue is that Go's "packages" are in fact stateful modules, and since Go does not support 'finals' or 'vals', you actually never know if somewhere malice or mishap has changed an imported package's global variables.

I wonder what a marriage of Go's light touch syntax, the golden nail of go/select (but generalized to include IO), and a proper type system would look like.
Looks like the top of a spray-can to me, spraying yellow paint.
Thanks for clarifying!

My question still stands, even though people consider it offtopic.
There's a lot of music that isn't even available anymore in any formats other than digital.

It would be cool if there was a service where one can "burn" (or press) a vinyl record from a bunch of mp3/wav files, and print a nice sleeve.
Thanks for the clarification but I'm still a little confused.

>VueJS keeps two way data-binding between the template and the component

In what sense? If you need to update your data on the JS side from the DOM you have to use events. There's v-model, but this is just syntax sugar for binding an event on input to update the value prop.
nice! murray mentioned that scene :)
> tthe perception of sound quality is highly influenced by things like ritual, genre, equipment, environment, age... as well as technical limitations that impose a particular sound on an entire generation of listeners.

Yeah, I guess my comments are driven by a desire for an objective concept of "better". Perceived quality is clearly also an important consideration.

Book ordered, thanks! (Real books are clearly better than eBooks).
There are plenty of non-Musk factories being built in the West, they just don't get the mainstream press :

https://www.greentechmedia.com/articles/read/10-battery-giga...
Bit-bundler: a bundler designed to simplify the JavaScript bundling experience
The title is kind of misleading. From the article:

>The program will use "red team, blue team" exercises to conduct an "at-length evaluation of U.S. climate science," the official said, referring to a concept developed by the military to identify vulnerabilities in field operations.
Thanks for the lead!
If someone puts up a site or page claiming to be a company or entity that they're not (i.e., "We make Stack Overflow, where the world's developers get answers...") then that's not a domain name or TLD issue.

It's another issue altogether that should be dealt with legally.
India’s dreadful pollution is threatening its booming solar sector
If an HMO got stupid amounts of marketshare it would probably fix the system naturally. It would also improve stuff like allowing HMOs to be able to better take advantage of medical data and provide better care through understanding the patient. The problem is there is too many HMOs, which makes HMOs in general less convenient.
> if go into any downtown anywhere in the world at 7 pm to 8 p.m. you will see people drinking beer in bars.

Those people are still working, they just don't know it
It makes for a rare look into what happens when you finally elect the "just run government like a business" candidate. Whoops, turns out there's a reason we have different words for those two things. OTOH, that hospital deal, man, someone on the city council better have been getting some kickbacks if only to excuse such poor negotiating.
> Religion is morality, history, worldview, behavior, traditions, habits and more all wrapped up into one. Why would I want to deprive them of all that especially if it s a faith I subscribe my life and salvation to, even if it were possible?

This is perhaps the best argument I've heard for raising your child in religion. I suppose it should be obvious, but I had never thought about it like that before.
I've commented on this before, but matplotlib is sort of stuck between a rock and a hard place of supporting the cruft of MATLAB plotting syntax, and trying to be pythonic. I'm still a big fan of it because I've grown with it, but I also don't expect that it is the future of python technical plotting.

Its more domain-specific, but I do like the seaborn library.
> Li Fengzhi, a longtime employee of the Chinese Ministry of State Security who came to the United States in 2003 as a graduate student at the University of Denver, said that the Chinese government did not see the group so much as a spying operation, but rather as a propaganda and “information collection organization.”

I could not find any other sources to cross-reference this information. All the information that I could find about Li Fengzhi (wikileaks, washingtonpost) talks about his link to Ministry of State Security (MSS), and make no mentions of comments made on the student groups. So it would appear that he was talking about MSS when talking about "the group".

- http://www.washingtontimes.com/news/2009/mar/19/exclusive-ch...

- http://voices.washingtonpost.com/spy-talk/2010/09/li_fengzhi...

- http://voices.washingtonpost.com/spy-talk/2010/10/li_fengzhi...

- https://wikileaks.org/gifiles/docs/12/1231001_re-spytalk-li-...

Of course I could be wrong and NYT had the first hand information on that, but the entire Li Fengzhi story ended in 2010 so it is not likely that NYT had the information without publishing it before 2017.
not after China can build 6 aircraft carrier combat groups.

btw, Japan is no longer in the equation.
> I mean comments like "Also my hair gets paler and my body grows weak thinking about using defer with named return values" are borderline silly.

I regret my deliberate silliness only reaches "borderline" with you. Do I also need a unicycle. What does it take?!

> StrToBool

Make this function 30 lines long, take 6 arguments and then you have my original argument. It creates context sensitivity, something Golang tries not to do.

> But most of the code I write and collaborate with is more around 20 lines or less.

I'm tempted to write a github crawler to work this out. Golang is C-like in that its lack of reuse capabilities incentivize longer functions or copypaste functions.

I'm simply against this kind of context-sensitivity in a language that prides itself on being reader friendly. It's not. Let me rephrase my argument.

Question:

return a; // What does this do?

Response: It returns the value at a. I don't know what that value is, but it must be a local or a function parameter. This function definitely returns a value, one value.

Question 2:

return; // What does THIS do?

Response: Well... all I can say with confidence is that this returns, the functions execution will end. But I can't tell you if it returns nothing, or a value, or how many values.

The existence of this makes bare returns much more confusing than... well... I struggle to come up with a syntactical convention in Golang that can do this. I haven't written Go for reals for 2 years so maybe you have something better.

To me, this is way worse than even the "worst case" Haskell scenarios where your code only makes sense in the context of its caller.
I had been thinking of a similar sort of product offering. If anyone knows about about record presses and is interested in ideas, please get in touch.
Lithium Ion is always prone to fire. If you wrap it in a hard-enough case so it can't be punctured, and then slap electronics on the end to "emergency cut power" when a catastrophe is detected... you can prevent the fires.

The issue with Samsung's "explosive" battery was that it had to be thin (so it had a soft case), and when you sat on it... it'd bend internal connections and then short them out.

--------------

Honestly... I'd expect China to build the typical 18650-cell without any issues.

Unfortunately for China, Tesla isn't putting "typical" 18650 cells into their cars. They're putting in Silicon enhanced Lithium Ion with optimized chemistry for maximum power with minimum weight.

THAT's the problem. I don't think there's a very big marketplace for "typical" Lithium Ion cells. Its about the recent innovations that have made batteries lighter, more flexible, and deliver more power.

So the real question is: can China build Silicon-Lithium Ion Cells to the specifications of Tesla's Gigafactory? I have my doubts. There's a reason why Elon Musk built his own factory (with help from Panasonic)
DOJ Asks Supreme Court for Permission to Search Any Data Center in the World
Speculation: it's possible that the source sites are actively hostile to scraping and intentionally mess with the layout regularly, or may even have ruled out any kind of automation in their ToS - so if you don't want to get sued or blacklisted, you can do no kind of (detectable) scraping.
The benefits of transactional queues in your database are hard to overstate; commit the result of the task in the same transaction as you commit the queue update. Don't worry about idempotency, lost messages, or duplicate messages.

I suspect the advice to avoid it because of performance has become invalid for all but extreme use-cases. My company has dozens of high activity 1-100M item queues in single postgresql databases. It works great.
Is it (theoretically) possible to learn concepts in one game, learn concepts in another game, and then immediately play some weird hybrid of the games that uses concepts from both? For instance, play a mash up of breakout and space invaders after learning each individually.
We'll travel the stars, baby
And REEs, and commercial genomics, and commodity SoCs, and greentech, and mass produced CFRPs and so many other things

China systematically seals all upcoming greenfield opportunities for tech companies and industry in West. A very smart play
I like it that they are adding more and more functionalities from J, probably because Roger Hui is involved in this. The namespace system in Dyalog APL works far better than J's locale, IMHO.

The only problem is that you can't get the source code. Look around, in this 21st century, how many interpreters are still closed sourced? I really worry about their long term survivability.
> out of a sheet of paper and a needle

Don't do this with any vinyl you care about. It will destroy it pretty good. Microgroove records since the 50s were made for a fine tipped stylus, not a needle.
Do you mean development/complexity cost or performance cost? If it is the former, then I don't really see it. If it is the latter then yes - RDBMS backed queue is probably going to hit scaling limits earlier then dedicated product.
In the summer of 1962, the U.S. blew up a hydrogen bomb in outer space
>No, I don't think that's fair. The people are nice, that's all.

A statement that will offend voters in CA may not offend voters in CO. Getting in a public debate about the politically correct way to address any given group is typically frowned upon by voters not within a 2hr drive of the ocean (or gulf).

Edit: Politicians in CA should probably say this.
Dubai police to deploy self-driving vehicles which will identify criminals
I'm a mostly-backend dev that's been pressed into service on the frontend recently and I've worked on React and on Angular.

In my experience, I like the React way of defining components and functionality a lot better. The errors that Angular spits out from the HTML-templates are difficult to parse. There's also an unfortunate combination of a fractured community and incomplete first party documentation that makes Angular hard to ramp up on.

That said, Angular has a huge advantage that has made developing in it a lot faster for me. It's got everything right there. Angular doesn't have unique functionality, but it starts you off with a standard set of design patterns that stand you in good stead. React is just a frontend and when you're new to the space you don't know what else you need. Frequently, the productivity gain of not having to think about how to solve a problem is greater than solving the problem the "right" way.

Realistically, most teams solve this problem by having a senior team member who can pick technologies and design patterns. I haven't had that luxury on this last project, so I appreciate the Angular ecosystem. Javascript is great, but it's still very wild-west like.
Delete Hate Speech or Pay Up, Germany Tells Social Media Companies
Falun gong... Your wiki link has 4 external links and they are all YouTube videos... I am not sure there is any credibility in this form of data source...
> recommend best sources pretty well

The face value interpretation of your original statement is that not does the Internet accurately recommend the best sources, but it also hosts them too.

"access to the best material" is more than merely "access to reliable recommenders of the best material", right?
Top books mentioned in comments on Hacker News last week (week 25)
Wow these deals look too good to be true! But I guess I'm in the US lol
Biggest question being how the teams are chosen.
You might like NGRX, then. It's basically Redux for Angular 2.

http://onehungrymind.com/build-better-angular-2-application-...
Didn't the oil industry already try this tactic for the past few decades?
> Whoever did the detective work in the top answer to this article should get into investing, if they aren't already.

I know some person who does this kind of detective work, let's express it this way: as a private, really time-intense hobby. Among others he revealed a complicated case of insolvency fraud and investment fraud involving multiple countries and stooges.
The sole reason he started all this detective work was because some customer was not willing to pay him as agreed for a web design job that he did (surely not more than 2000 €) - you cannot make up such a reason and story.

While he has a lot of talent for this kind of detective work, I would never give or lend him any money for the single reason that he simply has not the slightest magic touch for making money.
Why are you mocking those 3rd party things? I find in most cases I can test with the 3rd party thing in an integration style test. When the data I'm testing is trivial those 3rd party things can give me an answer in less than a millisecond and so my whole test is fast enough. I find that even when I need to do things like database query that setting up a database with fake data is enough that mocking the database isn't worth it.

As a bonus if there is a bug in the 3rd party code I'll find it before we go to production. My boss doesn't want me to point fingers and some 3rd party code when we are losing millions of dollars because of a software bug: he doesn't want to lose those millions of dollars in the first place!
"the US is going to be left in the dust in terms of renewable technology"

China is already dominating the battery and solar panel industry.
You really have to stop thinking of the US as being #1.
True. It cuts both ways though (I guess like most things).

That is, once a person has invested in that learning curve and spent significant time working in a tech, tunnel vision tends to set in. It becomes the only tool, which that person fiercely defends. They've now got too much invested to just let it go.

It's actually not unreasonable from a raw self-preservation/self-interest perspective, but I do think it contributes to a lot of the emotion-filled tribalism we see. In other words, the intensity comes as much from interest in maintaining self-relevance and personal financial security as from the viability of the actual tech.
Security Data Scientists Without Borders – Thoughts from Our First Colloquium