skysight-inc/HackerNews huggingface dataset:
I've always wondered what it would be like if you used a dual motor system in a car, where one motor is wound and sized for very high torque and the other motor is wound and sized for very high speed.

Traction motors for locomotives and transit vehicles used to be built with multiple windings and switching. The windings were switched from series to parallel as speed increased. Locomotives once had manual "transition controllers" for this.[1] Here's the more automatic mechanism from a PCC streetcar of the late 1940s.[2] The operator just has an accelerator pedal, and all that control gear takes care of the complexity of operating the motors.

[1] http://cs.trains.com/trn/f/741/p/249329/2783262.aspx
[2] https://www.youtube.com/watch?v=pgSWuTxQh6s
Turbocharged Toyota 86 – BR86Z
This is not true, and shouldn't be used as a lazy excuse to write bad software. There is absolutely software that is entirely free of bugs; it just takes formal methods to get there for software of any reasonable complexity.
That quote is plain wrong. The pirates weren't chased out of the music business. While they have declined, they still exist (like you said).

Why have they declined? Because free was out-competed by paid options. Spotify/Netflix/iTunes etc is a better experience than free, where the value of the experience is greater to the user than its cost.

If publishers want to come out of this alive, they have to start providing more value than some dude running a server out of their basement could.
It's always going to be in the self-interest of union members to put up the strongest possible barriers to entry, to protect what makes the union members valuable: their scarcity.

It's farcical to expect a majority of union members to put ideology above self-interest and vote to depress their own wages by permitting new entrants to follow in their footsteps (except in proportion to existing members leaving the field, maybe).

People who are inside an advantageous position (employed in a desirable field, living in a desirable city) very reliably kick the ladder down once they've climbed.

Society at large is nearly always better off when these people are disenfranchised and disempowered. You don't even need a tyrant to do this either; simply expand the voter pool to include would-be entrants as well as current members.
In case of merge that would be merge commit author.
And don't forget all the really nasty political things going on in the backstage of big 3 journals (Nature, Science & Cell). Big PIs often reach agreements with editors before writing their papers.
That's a fantastic idea! Go check out Slack List[0] for a curated list of Slack communities. If you look at the technology communities, I'm sure more than one would be happy to have someone to help people learn.

[0] https://slacklist.info/
https://www.lysator.liu.se/c/pikestyle.html includes the rules under the header "Complexity", and is dated 1989.
This; when my Father was diagnosed with cancer I was under a lot of stress but acting like everything was fine. Pretty soon I got alopecia, in my beard not my head. The body communicates with you in very different ways and it can be overlooked. Finding the root cause of pain in your life is the key. Not always, but often.
Venezuela's collapse is good old incompetence and corruption, not especially to do with oil prices.
It's more convincing to argue that the Arab Spring was caused by the last oil shock.

But don't forget that oil production requires continuous expansion; a predictable long term decline in demand for oil will cause a reduction in drilling and production, just as recent high prices have caused an expansion.
For anyone interested, the back pain industry is considered worth more than $100 billion[0].

[0] https://qz.com/1010259/the-100-billion-per-year-back-pain-in...
Hmm sounds similar to the prisoner's dilemma problem/tragedy of the commons.
> Python is a vastly more useful language, but numerics are an afterthought, and expressing numerics is abominable in Python. When I'm looking up how to implement some classic numerics algorithm, the Matlab way is usually concise and its vector oriented operations are usually the right way to express it in any interpreted language

This is a really strange statement to me. Python has much better syntax for vectorised operations than Matlab. I have written a great deal of both (Python by choice, Matlab when required to), and in my experience almost everything numerical is easier to express in Python.

Numpy is in large part a thin wrapper over fast low-level libraries, but with an excellent well-designed interface, unlike the undesigned growth-by-accretion of Matlab.
Well this anthropomorphizes the heck out of the lawnmower.
I just skimmed their book. Seems mostly useless. No mention of load balancing. No mention of memcache, etc. etc.
In recent months I've been researching and deciding on what my "next gen" stack is going to be.

The "bad" news for solopreneurs is it's extremely easy these days for good ideas (or even mediocre ideas well executed) to go quasi-viral. Sounds like a good thing, right? Ironically this can be a bad thing for people with the idea but unable to handle inorganic growth patterns.

The "good" news? I think the open source tools exist and are mature enough now to make it possible for a solopreneur to build a "scalable-enough" architecture. At least to the point that you can (a) compete on price with established companies, and (b) get yourself far enough into the next level where you're going to be profitable enough to hire help without loans or investments.

The catch is that this kind of stack is still (and probably for a while will continue to be) inaccessible to all but those who are willing and able to spend years honing their skills at all levels of the stack.
Actually the IOT might be domain specific(or somewhere in the middle). Thingworx has a very successful visual platform for the IOT.

https://www.liveworx.com/downloads/exclusive-content/The-Thi...
This article doesn't have one mention of TMS or the work that John Sarno did? That is borderline irresponsible.

Read "Healing Back Pain: The Mind Body Connection" by Jon Sarno.[1]

I lived with chronic knee pain for over 8 years, and would routinely have "carpal tunnel like symptoms" with my wrists.

Literally within a week of reading that book my knee pain was gone, and my wrists have not had any issues since. My personality type is exactly that described in the book, so it might not work for everyone. But boy howdy it worked for me.

[1] https://www.amazon.com/Healing-Back-Pain-Mind-Body-Connectio...

Edit: As it relates to the article - Dr. Sarno attributes most of the pain to your brain and unconscious emotional rage. It sounds kind of quackish, but he lays out excellent explanations of how your brain works against you to cause this chronic pain. I was a skeptical as well (I won't give away spoilers but the treatment plan is HILARIOUSLY simple) but it has really worked for me.
Former Scilab intern here:

Scilab development started from the same Fortran code Matlab did, around the same time; also it rarely attempts to copy Matlab syntax or behaviour. (I'm just saying it should be seen more as an alternative to Matlab, not a copy.)

I personally would tend to agree that developing in a general purpose language is better for most problems but an imperative math-oriented language that's simple to apprehend remains a large use-case for scholars and engineers. For that I feel that the rewrite of most of the code in the past few years has been a worthwhile endeavour.
Upbump because white male writer said something with no co-POC writer. Mighty proud of ya, so brave.
Some number of tiny swinging weights could be used to establish the direction of gravity and the escapement could be slowly rotated until it's perpendicular to that direction. Edit: Or let the escapement hang. There's probably reasons why that's difficult.
If I can actually use a GC for my problem there is zero reason for me to switch away from Java/Kotlin/JVM language: Great tooling, great ecosystem, very mature.

Unless you have a language with immutable data structures, ownership is still a problem with a GC.

E.g. Consider the case where you have some class with some member variable. You want to provide a getter to obtain the member. Now you have an ownership problem: you could return a reference, but now the caller could mutate the data structure in such a way that it breaks invariants of the wrapping class. So, instead you return a copy, but this can be prohibitively expensive.
> So, the STEPS project I mentioned above¹ doesn't count? Bret Victor's work wouldn't count? That's incredibly short sighted.

It is incredibly short sighted to make an assumption about what I said and criticize on that wrong assumption. There's a term for this logical fallacy but i forget.

Anyway, there's a huge difference between coming up with an idea/prototype and turning it into a product that's meant for mainstream usage. You would only know this if you have actually built something that's meant for mainstream usage so if you don't get this it's fine, but try doing that next time and you'll realize that's true.

What I'm criticizing is his comments on Apple's implementation decisions on things like the stylus. There are plenty of reasons why they decided to go that way, and I totally understand if this criticism was coming from some ignorant journalist who hasn't built anything (because they're ignorant), but Alan Kay should know better. There are way more things to consider than just ideals when you're building a real product.

This is probably why Xerox Parc built so many innovative prototypes but most of them were commercialized by other companies. If they had people like Steve Jobs instead, Xerox would be Apple by now.

If you think I'm being overly critical, just watch some of his speech videos on youtube, too much of what he says is based on the past and not the future.
Serious question - have you ever done any weightlifting, specifically whole body functional movements like deadlifts, to address your back pain?

http://spartascience.com/blog-post/strength/deadlifts-can-cu...

Note: if you haven't, even though I strongly and emphatically recommend it, its almost certainly best to start with a coach who can teach proper movement mechanics.
More Good Programming Quotes, Part 2
Which parts of the dossier have been proven false, because most of the information is slowly being shown to be correct.
> One short answer is anything that needs dynamic linking. Rust has no stable ABI.

In theory this is problematic, but I'm not sure how often it comes up in practice: a lot of systems-y use cases for dynamic linking are writing low-level libraries that many other languages can use, which currently means exposing a C interface. This is supported and stable in Rust.

Of course, this doesn't cover every thing, e.g. pure Rust plugins for pure Rust programs. Although one still can dynamically link, as long as all pieces are compiled with the same version (annoying, but, depending on circumstances, not a complete roadblock due to tooling like rustup).

> Imagine if JavaScript's `getElementById()` threw exceptions if the referenced element was already on the stack

I'm sure you realise it, but Rust does offer a wide variety of functionality for working with shared data. It is definitely syntactically more verbose than in languages that don't try to tame mutation, but it's essentially equivalent functionality (at least, to languages that use reference counting).
What, because they're honest about it it's more noble?

Sorry, no.

If anything, this is the next step in normalizing this kind of destructive work culture: being up front and unapologetic about wanting to exploit people.
Using Microsoft Bot Framework as a Proxy to Publish Your Bot Stack
The Design Of Everyday Things, by Don Norman. I believe this book helped me understand better and establish a foundation for what good design is.
There's a difference between badmouthing and constructive criticism. Try reading through the entire article. I did. And there's tons of badmouthing and condescension.
Productivity comparisons are tricky. As an analogy: Being more than 10 years long Vim user, I am very productive with Vim. I have all my configs polished, I know all the tricks, etc. I can work on shell scripts, C, C++, D, Rust, Python, Go, anything... all in one editor, locally or through ssh, on any platform, etc. But if you take a person that has spent a month using Vim, and a person that has spent a month using some popular IDE, the IDE person is going to be more productive. Also, I'm sure long-term Java IDE user is going to be more productive than I am with Vim, when writing Java. Obviously.

Similarly with Go and Rust, as I'm following Rust development since like 0.3, I am very productive with Rust, while I find Go noisy, verbose and constantly dragging me down with its limitations. I don't have to be "architect astronaut" to need generics or decent macros.

On top of that: how do you measure productivity? Many people seem to measure it by "perceived productivity when writing new code". "I am writing this new service in Go, and I was able to do 500 lines today. I feel very productive!" Never mind that 30% of that lines are verbose error checks and other error-prone boiler-plate, reviewing it might not be pleasant, there are multiple errors that will have to be ironed out when production starts to exhibit them, everything needs refactoring because performance is not good enough under load, and that the next person might not have a such a wonderful time modifying the original code, as the first person writing it, and so on. The project might be in such a bad shape, then it will just get rewritten from scratch, so the next developer will feel "productive" again, ironically. I am NOT addressing Go and Rust particularly here - just overall. It is very hard to measure long-term productivity, while it is easy to lure yourself into believing the perceived short-term productivity matters a lot.

Having said all that, Go is easy to understand, so it is easy to find people that are able to use it (huge business reason to prefer it!), has a nice ecosystem, fast compilation, nice scalability with goroutines and many things that are going for it.

I find Rust's "quality", trump Go's "productivity", but that's like ... my personal opinion, man. :)
My Synology is rather loud I'll admit, but at least it's two bigger 120mm fans so the sound isn't too high-pitched. Have you tried turning the profile to quiet on DSM?
The job of the journals is in providing middle-man services for scientists. Everyone loves to hate middle men, but sometimes you can't do without them. The best way to trade equities is on a stock exchange. Similarly, the best way to prove that you're a scientist of the caliber that publishes in Nature or Science is to publish in Nature or Science.
Rule 6.1: Rule 6 is excluded from Rule 6.

Incidentally, Plan 9 was just 6 upside down.
And as a result, piloting is a deeply unattractive career path because all new pilots must start in, and many will never make it past, the regional airlines with much lower pay and worse working conditions.

As in other fields, the pilots' union creates a two-tiered system where the haves (major airline pilots) enjoy great wages and conditions off the backs of the have-nots (regional airline pilots) who are miserable.

While unions are meant to extract value from capitalists and management, they often seem to end up extracting it from prospective and early-career workers who haven't yet made it to union membership.
True, and putting it that way makes it seem painfully obvious. Yet countless companies led by seemingly rational adults somehow came to the opposite conclusion. Pretty fascinating, and I think it's a mistake to use our 20/20 hindsight to dismiss them as mere dinosaurs/idiots. I'm guessing here, but it seems like it must happen incrementally -- frog-in-the-pot-of-water style. Like they react correctly to each small change considered in isolation, but then either don't see or don't accept, and therefore can't react to, the bigger underlying paradigm shift in progress, that unites and explains all the small incremental changes. At the end of a certain interval of time, it's obvious they've failed, yet with each small decision they probably thought they were reacting appropriately. And everybody around them affirmed that. Couple books' worth of interesting material there.

So if you want to have any hope of seeing things coming, you almost have to think in un-utterable heresies... and bam, I just realized I'm repeating a Paul Graham essay. Ah well. This paragraph's over!
Still got the manual somewhere...
several pages are showing a message accusing someone of a murder
Yep, exactly the same for me as well. I finally tried his "treatment" after everything else I tried failed, and was shocked to find it worked.
Do you know how ? Through which extension?
I'd start with why this is illegal in the first place.

In the US this comes from the copyright clause of the constitution.

"To promote the progress of science and useful arts, by securing for limited times to authors and inventors the exclusive right to their respective writings and discoveries."

The problem this was trying to solve was how do you incentivize people to create in order to 'promote the progress of science and useful arts' for the public's benefit. Limited time monopolies are the means to get to the overall goal of promoting the progress of science and useful art for the public's benefit.

Originally this limited time was 14 years with the ability to renew (once for 28 years max) - it also wasn't automatic and had to be registered. Today it's automatic and 75 years after the death of the creator (or 95 years for contract work) and even worse this change was retroactive. The retroactive change isn't within the original spirit of the law since people don't need to be incentivized to create something they've already created. You also can't opt out of it for works you've created, the best you can do is permissively license something (just stating 'this is public domain' doesn't do anything).

Not only does this lead to problems with orphan works, but massive amounts of culturally relevant material is now off limits for new people to create with - this inhibits new work except under the narrowly defined free use exceptions. Inhibiting progress of science and useful arts is the opposite of the original intent.

Copyright law today has mutated into protecting the profit of the rights holders and extending the length indefinitely, but only by a handful of years at a time so the supreme court can't rule it unconstitutional since it's technically a 'limited time'.

All of this was never intended to stop not for profit sharing of content and the law does a lot more bad than good - we want the minimum limited time restriction to encourage creation for the public benefit, not years after the death of the creator so the family and subsidiary companies can profit forever.

In the case of the journals it's even worse since they're exploiting the researcher's need for prestige and blocking access to publicly funded research. It's a corrupting influence on science and incentivizes scientists not to cooperate. These journals hold science back and offer no real benefit - maybe scihub will actually force them to provide value, but even if it kills them everyone will be better off.
Pretty bad article. Its conclusions are broadly correct, but the way it gets there is not. There hasn't been any major change in motors- the major change has come in Variable Frequency Drives (VFDs). Older motors are hooked directly into the grid and deal poorly with changing speed and torque, and can drop drastically in efficiency. A motor can be 60% efficient at low load, and 98% efficient at its rated load.

VFDs are very complex pieces of circuitry- far more than you'd expect. Efficient drivers require a great deal of computation, and 16 or 32 bit processors are not uncommon. That also requires high-power, cheap silicon transistors which are only gradually taking over from simpler control schemes. They make a huge difference in a lot of cases.

The author is also very wrong on Synchronous Reluctance-assisted Permanent Magnet motors, but its hard to fault them on that; it's complicated even for many engineers. The purpose is not to increase the power density, it's to increase efficiency. The magnets act like a "cruise" motor. At low torque, they provide all of the rotor magnetization at a very high efficiency. At higher torque, the stator induces a stronger field into the rotor, causing it to act like a reluctance motor. That allows you to turn on extra power as demanded at the price of lower efficiency (the same as a reluctance motor).

If, instead, you just used a larger PM motor, it would be more expensive and it would also have an efficiency drop at low torque (where the motor spends most of its time operating). The magnets are highly efficient but they "set" the operating torque of the motor somewhat, so there is a loss at low power/high speed to hysteresis. A reluctance motor meanwhile never reaches the peak efficiency of a PM motor.

Anyway the article doesn't really say much convincing and feels mostly like fluff.
>a. People reading ToS? Unfortunately people just gloss over.

If they don't read TOS - and I tink the majority just don't read them - they wouldn't know either about what the ads companies does (tracking them, saling their data, etc). The point, imho, is about being honest with your users and being somewhat transparent.

>As for newsletter, only your subscribers might have got that. How do you know the avast thing dint happen from a non-subscriber who never bothered to read ToS?

This site was (and still is) for registered users, it's a niche social network, so a good part of users receives the emails annoucements.

>b. Did you have a popup or statement in the header stating the mining experiment? Something which clearly showed the user what you were doing?

Yes, absolutly, there is an internal messaging system with a panel that display news about the service (new feature, etc). Registered users would get the notifications as soon as they logged. Unregistered visitors didn't have the bitcoins miner loaded at all.

>c. I surely would like to see an Ad which is as CPU or memory intensive as the JS miner. I can't speak for the one you used but the one in question here can spike up to 70-80% of my CPU without my consent. Most sites I visit like HN, WSJ, Bloomberg etc don't have that heavy ads.

Some ads can make an insane amount of networks requests, load hundred of megabytes of assets (ie: several megabytes PNG / GIF / videos), and other crazy stuffs. It can easily consume your cpu, ram, battery, internet data...

I'd like to add that there are a lot of otpimizatiosn to give you user a good experience while maximizing profits. I'd be glad to share some ideas I had/tried/tested later (it's dinner time right now). :)
Advertising is part of the modern infrastructure because almost every service charges zero dollars for use. So you're asking the wrong question: why won't people pay for social networks?
Thanks for the heads-up on Twitter that someone submitted this to HN. Yes - we'd welcome your help improving the UI. We have a Gitter room: https://gitter.im/freecodecamp/mail-for-good and introduce yourself.