skysight-inc/HackerNews huggingface dataset:
> >In OCaml, “Functor” is a well-defined term with a completely different meaning

> No, it has the same meaning. It does not behave identically because the languages do not have identical designs.

Functors in Haskell and OCaml are different things. Haskell Functors correspond to the category-theoretic notion of a functor (a thing mapping objects to objects and morphisms to morphisms in a reasonable manner). In OCaml and ML, Functors represent parameterized modules. These are not known to correspond to category-theoretic functors in any reasonable way (and there have been proposals for category-theoretic models of the ML module system). I guess the term Functor is a bit of a misnomer in the ML-like languages.
Not to be overly cynical but "safety" is the rationalization. They really were hoping to catch a car thief.
It depends on how fast you can switch context. If you can switch context in 1ms, then waiting 50ms is a waste of 48ms. But if context switch takes 100ms then sure, it's better to wait idling.
It's funny you should mention this. We just started tracking the time to completion of all zendesk tickets (everything we do is ticket-based) to deliver weekly reports to $uppermgmt.

Sigh, yeah, it's a sinking ship. Sadly. My team is the best team I've ever worked with, and my boss is the only boss I was ever excited to work for. I Don't blame him, though, his hands are just tied now that the penny pinchers run the show.
Discover Improved Coaching Experiences
I'm not personally opposed to Tensilica "dying", especially if it doesn't involve Cadence dying, since they are a (somewhat indirect) competitor from my point of view, but ARM is not a substitute for Tensilica. You can't extend its ISA unless you license the arhictecture for $30M. A DSP like Tensilica's is also much more efficient than ARM on a range of tasks, and in particular, having local memory instead of caches is done for a reason. (The least efficient accelerator of all and the favorite of academics who have easy access to it, GPUs, also have this.)

As to their compiler licensing - that's what happens when you develop for a small niche, you get more expensive tools which are worse than the free ones used by the majority. But it doesn't mean that the thing doesn't have its uses. I hear that a recent chip by AMD had 40 Tensilica (smallish, inaccessible to most software) cores.

The same is true about CEVA (which was mentioned in a sister thread), more or less.
"The only thing that matters in software is the experience of the user."
"if you add unnecessary hierarchies in your code directories, if you are doing anything beyond just solving the problem - you don’t understand how fucked the whole thing is."

Oh really? So making the code easily maintainable and easy to understand is just a waste of time? Comments like that makes it hard to take the rest of what he says seriously.
This is because of Samsung's garbage software. Years and years go by and every single time they manage to make the best hardware and slap a laggy and bloated version of Android on top of it. I'm sure that a Note 7 with a more Nexus-like build of Android is a dream for many.
Totally not against solid critique. But it becomes a culture, a signal of intellectual superiority. Which is too easy. You can be, and I have been highly productive in plain ole JavaScript. Same with Java, Same with Ruby, same with Python. Are the language debates irrelevant, absolutely not. But
“Node.js is one of the worst things to happen to the software industry” Hey if it is then I fully submit that I'm just some stupid fool that should rage quit the internet and give up because.... Wait no that would be stupid.
Flippant, but:

VR: Everything is in the computer

AR: The computer is in everything
I am chagrined by the impoverishment of my imagination.

Thanks, in more ways than one.
> As a side effect disabling javascript also makes pages load faster

Ironically on our rather elderly laptops NoScript actually increases page loading times by a factor of two and that's with the out-of-the-box configuration. I haven't looked to see what pattern-matching algorithms it uses but they're very slow.

Core2 Duo Dell Latitudes.
It's dynamic typing with a prototype-based object model. This type system tends to be very good at iterating quickly and testing out many alternative approaches to solving a problem without committing to a data representation up-front. It tends to be pretty bad at communicating invariants to other programmers or nailing down APIs for other subsystems to build off.

Small wonder, then, that the Node.js ecosystem tends to very good at iterating quickly and testing out many alternative approaches to solving a problem, and pretty bad at communicating invariants to other programmers or providing a stable API for other programs to build off. You tend to get what you ask for.
And yet people laugh at me when I tell them how I buy as much as possible with cash.
The reason that EpiPens are expensive is because they're patent protected. In this case, regulatory protection that is the explicit issue. Demand for the product is clearly there; supply is not, not because there is nobody willing to provide it, but because the government prevents would-be competitors from doing so.
> But, DSP core itself is nice, very well thought out in contrary to mainstream DSPs from TI or Freescale(now NXP).

Could you please elaborate on this statement?
When the difference is $1 vs $600, I think a lot of people would be willing to take that risk, especially for something that is basically an unexpected expense; I doubt any allergic people are getting stung by bees on purpose.

Most people I know couldn't handle a sudden $600 expense
like a car repair without help from someone like their parents (I'm mid-20s living in JP).
But that only happens when the result is the same as if the instructions were ran synchronously, and synchronization primitives are still needed at the end of these sections.

Even if they weren't, the abstraction layer that you work at with Node is far, far above the point where you care about instruction reordering. If synchronicity is an inherent property of the process that you're implementing (e.g. you want to insert something in the database and then log an event) then no amount of shuffling will alleviate the fact that the logging has to happen after the database insertion.

Edit: the fact that deep down they reorder instructions is a bit scholastic, but if we are to go into these details, it's worth remembering that even the instruction reordering happens synchronously, and that even asynchronous events, like input from an off-chip peripheral, are treated synchronously. The turtles are synchronous all the way :-).
Managers are usually the less technically inclined at certain companies. They don't know what to ask and they don't care
It is important because we have the power to wipe out all life on this planet. We need to spread further than our destructive power or face the end of our species.

If you are happy for the end of the species, then that's fine.
I feel the same way, it's very hard to do anything important if you only have one hour. There might be a positive aspect in that it will force you to slice things up into smaller pieces that will be more easily updated, replaced.
Xterm.js is a front-end library only. You can use the "attach" addon though to connect it to a WebSocket stream and interact with a process.
I am not against thinking in terms of coupling and cohesion but I found the following different and interesting ways to think about separating software:

https://www.destroyallsoftware.com/talks/boundaries

http://shaffner.us/cs/papers/tarpit.pdf

The common theme in both these viewpoints is that the biggest enemy is state, and who is responsible for it, rather than just responsibility on its own.
They drastically pared down the software differences in the last version or two. Me from five years ago would be shocked to hear me say it, but it's to the point that with the s6, I preferred the new stripped down TouchWiz by a long shot to stock android (TouchWiz has always had design advantages that stock android sometimes incorporates, e.g. Quick settings in the notification bar).
Isn't this essentially saying that events need a catalyst, there needs to be some external stimulus for something to occur? That's fine. Synchronous programs have that stimulus. It's called "user action". The program, like the CPU, waits until the entity running the show tells it it would like something to happen. Then it does that something in the order specified.

So yes, the CPU waits for the program to ask for some work, just like the program waits for the user to ask for some work. When that work is requested, the program is executed synchronously. I really don't understand how this argument supports the mess that is Node.js.
Facebook launches Lifestage app for school teens
Even today, Android and iOS are not comparable in terms of what they allow apps to do, which is why iOS tends to win responsiveness comparisons and Android (still) tends to win feature comparisons, even years after Apple fell behind the features race and started simply duplicating Android's featureset (multi-tasking, notifications drawer, gradually allowing more and more background operations etc).
Limit access to your login page by IP and stop hackers
"The only thing that matters in software is the experience of the user."
"if you add unnecessary hierarchies in your code directories, if you are doing anything beyond just solving the problem - you don’t understand how fucked the whole thing is."

Oh really? So making the code easily maintainable and easy to comprehend is just a waste of time and simply ads complexity? Comments like that makes this hard to take seriously.
This is why I've decided to wait 3+ years to jump aboard the AR-VR train. The tech is still too raw.
Would there be any benefits from newer GCC on such specific and simple (compared to general-purpose CPUs) hardware?
Dou want to transfer old iPhone5 datato new iPhone6s without,Try SmartIO App
Media net acquired in the third-largest ever ad-tech deal
Man, every other comment is trying to talk you out of moving.

Atlanta is kind of like that Facebook friend who thinks she is a "model". Atlanta start-up scene believes it is hotter than it really is.

If I were you, I would rent a cheap house in SF for 2-3 months as a team, stay there and spend at least 50% of the time networking at meetups and pitching.

It will give you clarity in 3 months if you idea is sellable or not. If you get major breakthrough in 3 months, stay longer otherwise fly back home and start over with a new idea.
I would like to read what is your definition of "hipster". It's used for everything nowadays and mostly to describe negatively people someone do not like.
> make pretty much everything async.

This isn't intrinsically bad. It just makes Node.js biased towards use cases that benefit from asynchronous I/O, which is a perfectly valid design choice. Sensible programmers already know that computationally intensive tasks that benefit from actual parallelism are best served by a different tool.

What's absolutely horrible about Node.js is how they make everything asynchronous: explicit continuation passing everywhere. In other words, the user is responsible for manually multiplexing multiple logical threads through a single-OS-threaded event loop. If it sounds low level, it's because it is low-level. A high-level programming language ought to to better than this.

Other languages get this right: Erlang, Go, Clojure, Scala, Haskell, Rust, etc.
I work at a 50-ish person services agency. We used to do reviews at the end of every project. Everyone staffed to the project has the option of publicly or anonymously evaluating anyone else, and we offer the option for clients to give us their feedback on anyone they want.

What we found is that nobody gives a shit. People with glowing reviews... still leave the company (even with reviews tied to bonuses). People who are great performers still get shit reviews from their peers based on personality instead of merit.

So it's pretty much all just shit that wastes time.

We dropped reviews in favor of public praise mechanisms where anyone use an open mic at our weekly staff meetings to praise a co-worker if they feel so inspired (holy fuck it's a lot of sales people patting each other on the back though), and a karma-tracking tool that keeps a tally in Slack. We also send out a very simple questionnaire at the end of a project to our employees, clients, and contractors... it's in a Google Form and they can opt not to leave their name... we just ask, "What sucked about this project?"

Love to find a better way to do it... but meh, I don't want to waste any more time on this. We all know who we like to work with, we know bosses give bonuses based on who they like, and anything else is just a BS time-sink designed to make you lie to yourself.
So they have taken both the capital costs of manufacture as well as delivery. And they have a product near the grand price point in a market saturated by Target, Amazon, Walmart, IKEA, and who knows who else.

To get a billion dollars of that market, they need to move 1e6 of their sofas--and that's assuming pure profit. How many sofas can they make a day?

The math suggests this is not a growth industry.
> with Babel you can use TypeScript

Be careful with throwing "idiocy" at otehrs when it seems you yourself don't even know what you are talking about. To write TypeScript you use... TypeScript (their compiler).
>The degree to which pre-modern Britain included people of African origin within its population continues to be a topic of considerable interest

Why?

Also, aren't all people of African origin?
It'd be really interesting to see a performance analysis of what's going on there. Is it just a weaker CPU or are the apps less optimised as well? The two phones were comparable right up to the time they loaded a game and it just fell behind further and further from that point on. Why is loading that particular game so much slower? The developers didn't care to optimise it?

edit: The article points out that the resolution of the Samsung display is a lot higher, so it's not quite comparing apples and oranges here. I'm guessing that a much higher resolution is pure win when drawing mostly vector graphics i.e. apps but really kills you when loading games as presumably they're paging in much larger assets from disk.
And what would the advertisers do next?

That would just further the arms race.
6 Ways to Turn Your Social Media Followers into Customers
Fascinating. I'd understand why GitLab and Gogs might not be competing with each other, but why invest in Gogs? How does that benefit GitLabs the company?
This same root issue - trying to implement "reliable multicast" - is why DaveM rejecting the AF_BUS IPC implementation a few years ago. In any multicast or broadcast system you can't allow one stoned endpoint to wedge the bus for everyone.
And you don't use an adblocker yet?
If by promises you mean the `some.fun(had).catch(had, function(){handle stuff here})` syntax compared to async/await, that is actually a very fair point and it does make two syntaxes similarly verbose.

However, it is still easier to follow a ladder of conditional statements using async/await compared to escher-style stairs of callbacks inside callbacks.
You're right, I always though my desk was held together with bolts but today I learned it uses screws!
Protector líquido para lentes ópticas y gafas de sol
and let's not kid ourselves that anyone trying to get maximum performance out of anything would be running JavaScript. If you need max performance, you write C, and sometimes raw ASM.
That's great to hear compil3r - were super excited about getting Jaan Tallinn as a judge I'm glad he's inspired you to join us :) We've been fortunate that most of the judges we've invited to take part have accepted. There's a lot of experience and talent to help mentor the teams so I hope you take advantage of it. Good luck with your project. Thanks for posting the video lamalama
Maybe they're just getting better at pitching you?
How to serve your blog to a quarter million readers without paying a penny
So you're saying that Petroleum Exporting Countries would never say... create an Organization intended to increase the price of oil?

How does that help your case? The members of that organization are governments, not companies. OPEC is regulation.
TL;DR:

>I hate almost all software.
If you're trying to reason about your program, this is huge. It very much matters where these points are. A concurrent thread being allowed to jump in and modify memory at any time at all, even halfway through a primitive math operation (the deranged C / Java / Python[1] memory model) means a correct program is a morass of locks and defensive programming and an obvious program is horribly broken.

This can be solved by functional programming. Since the original article was written, JS has `const` and `let` [1] . Also, there are now numerous statically typed functional languages that compile/transpile into JS.

Also, if a developer understands exactly how JS is executed, the problem is mitigated:

var mutableState = {}

asyncFunc.then(nextAsyncFunc)

syncFunc()

If you ignore web workers and node.js threading libraries people have written, Javascript always (by design) finishes executing synchronous code before executing any async handlers (your code is in a queue of handlers). This means that syncFunc will never be interrupted by nextAsyncFunc and have mutableState mutated during its execution. Of course, this means that if you do any intense computation synchronously inside a web server, it will block all other requests until it completes, and it will only use one core.
Like where? Even the best JVMs do basic counted profiling of branches only, as far as I know.
And that's exactly when shit hits the fan. Now they expect everything will work out with commands managing a language.

At one point, sooner or later, you have to tell them they just need to learn the language.

I'd rather spend time explaining the language than teaching them workarounds.

Having said this, we already do have ways to dodge the language for example using imperative package management. But that's exactly how another such blog post could be written how it doesn't always work due to "freedom" that Nix tries to provide.

Lesson learned here is: pick your fights carefully.
I would like to start digging into Neural Tensor Networks, will Keras be also a good choice?
Thanks the Babel thing was incorrect, Typescript is separate.

To clarify, I'm certainly not implying this person is an idiot. I'm saying, they lean toward thinking that the typing system is more of a bad idea (idiocy) than a valid tradeoff.
This is correct and the comment should not have been downvoted. (The article is wrong.) This is essentially just about allowing Wayland to remain the default during alpha, but it can very well be removed as default later on.
React Native on Android has gotten way better over the last year. In general, Android phones just have worse performance than iPhones (even when they have better specs -- I'm not totally sure why) regardless of whether you're dealing with React Native or not.

Sometimes you might have to spend some time wrangling your code to get the performance results you want, but that's usually the case in building software.

Check out https://play.google.com/store/apps/details?id=st.li.listapp . It is built with Exponent/React Native and has pretty great performance. Got featured in the Play Store.
Maybe they hired some managers who can't manage, but interview well and have a lot of experience managing at top companies?
Every place I've ever worked (to a greater or lesser extent). Every year I'm there "doing the same thing" the better and more productive I get at doing that thing. I also become harder to replace as the cost of training a new person up to my level becomes higher. Thus I'm worth more to the company and it's in their interest to make sure I stay another year, and paying me more is a fairly persuasive tool for achieving that.
This statement is completely wrong and ignorant.

Please don't say things if you don't know about them.

Just to prove my point, we've recently merged a branch for hardened compiler flags. This is mainly for server security.

https://github.com/NixOS/nixpkgs/pull/12895
I assume at this point that you're being paid to shill some political viewpoint on the internet, because you just explained that the price of software isn't actually zero, because it's unusable (to the customers that buy a service contract) without a service contract

Yet here I am, using self-hosted Gitlab without having paid for a service contract, to write code for Odoo without having to pay for a service contract, using Nginx as a frontend proxy without having paid for a service contract and deploying it with Ansible without having paid for a service contract, on Ubuntu without having paid for a service contract.

Sure doesn't sound unusable to me.
Yes, apparently Canada has something called the Patented Medicine Prices Review Board:

http://pmprb-cepmb.gc.ca/about-us/frequently-asked-questions
I had the exact same idea which I just sat around on...more along the lines of open requests ("I will do X in exchange for Y")

Oh well, good for them - they executed
Poverty as we know it today was created the instant money came into existence.
The only way for a tiny group of people to become obscenely rich is for huge masses of others to be kept chronically poor.
Which is beside the point, since it doesn't mean all "alternative future killing decisions" are equal.

Besides, people are actually (in this universe and at the present) in love, getting married etc with other people in their workplace, and you are telling those people not to do it, thus constraining with arbitrary dictums their present experience, not some future universe one.

And if my argument about "most people after thirties socialize more at their work than any other place" is true, this advice also severely limits their options.

And for what?
re posting the video, totally my pleasure. it was a great event and i hope to be able to make it to the next (not sure when that is...)
I'd just like to point out the linguistic paradox of the "one of the worst" syntagm, as only one thing can be the worst, and "one of" implies a multitude of such things; if 20 things are the worst, then none of them are. In short, this is a lazy way for the writer to express his opinion but label it as a fact.
The US "are tomatos fruits or vegetables" was always the "canonical example" of the legal/tax system interpreting words with fixed technical meanings in opposite but finacially-beneficial-to-the-government ways. (any botanist will tell you a tomato is not a vegetable, and neither is a longbean... But we'll tax them both as vegetables, not fruits ot legumes, "just because"...)
Testing in the emulator is way slower, as is testing with all my conditional breakpoints in place, as is testing with all debug assertions enabled. Devkits are often more expensive than retail kits by a significant margin.
Or IPv4 DHCP, if you're not IPv6-only.
If someone does the same thing exactly the same way year after year, they either have a trivial job, or aren't very good at learning. Assuming this isn't the case and, the cynical, baseline answer would be "the guys who know that you'll leave if they don't". The favourable answer would be "the guys who know that experience matters".

There's always, always a company out there's who will be willing to give you 5-10% extra, if only to screw up with their competition by taking their indispensable people.