skysight-inc/HackerNews huggingface dataset:
I also prefer option 3 over option 4. It bothers me that the article recommends exceptions without seeming to understand their drawbacks (the major one: as soon as you use exceptions you suddenly need to apply nonlocal reasoning everywhere in order to understand what your program will do at any point. They turn your program from a simple local thing into a complex nonlocal thing, which is not a good idea if you want to understand it well.)

This article seems not to have a lot in the way of new contribution; it is just parroting the oft-repeated idea that you need exceptions to pass "error information" up several layers of abstraction. But here is what I think about this:

1) In this age when we are realizing strong typing is a good idea, that hidden state is a bad idea, and that in general you should be very specific about what is going on, why are we even conceptualizing this as "error information"? Why instead, when we try to open a file, do we not return "all information you might need to know in the case of opening a file" (which includes what happened if it didn't open properly). As soon as you make that conceptual switch, all this hand-wringing goes away. It's a non-problem. You certainly shouldn't add heinous complications to your program to solve this non-problem.

1a) This conceptual change also helps disambiguate between what the article calls "hard errors" and "soft errors". In portions of the code where you have attempted an operation that might have failed, and you are not completely sure that it didn't fail, you have the full body of "what happened" information (it is a small struct or whatever). After the situation has been checked and you know it is exactly what you need to be, you may drop the other information and pass the raw file handle. At this point it is clear that these parts of the code should only be executed if the file handle is valid, and if that is not true, the programmer made an error. This is analogous to the situation with nullable and non-nullable pointers (in some languages you would even use the same mechanisms to deal with null pointers and invalid file handles, etc, but I am not sure this is really helpful.)

2) If one insists on not making the simplifying leap from (1), well, maybe the other problem is that you have so many layers. If you didn't have so much glue, your code would be simpler and easier to deal with, and it would run faster, and you wouldn't be so worried about needing to pass lots of context information up several layers between modules, because those situations don't really arise.
I'm in the exactly opposite (and seemingly rare situation). I started with iOS mobile app development and now would like to move into web apps and not sure where to start. I have basic HTML and CSS knowledge. Should I learn javascript properly first (where) or learn about layouts, handling different browsers and things like that. Very sorry for being completely off-topic
While i wouldn't personally become a clown (matter of preference), i really admire this guy's courage. I frequently think about upping and leaving the security of a cushy job, and it's a lot easier said than done. Freedom is scary!
If this is true, he is one of the most courageous guys in Americas.
Thanks for this - I've been working my way through it, and it's fascinating, far more so than I would have imagined.
Only if it's a 3-stage pipeline without a hazard detection. Otherwise the area would at least double. But, yes, I'd also like to see a pipelined core in this new HDL.
A carpenters job hasn't changed much in hundreds of years

Coming from a vocational bg the idea was you took kids at 14/15/16 they then did a craft apprenticeship for say 4/5 years - spending the first year fileing and fetching tea

Then if you where intelligent you did the technician level course which took another 4 years
Zeigarnik Effect
Keep writing! This is great.
Mind-blowing. Absolutely mind-blowing.
But the "industry" doesn't want to pay for this training
> "That's a sweeping generalization which presumes far too much. It depends on the person. Some people enjoy monotonous factory work because it removes the burden of thinking. Other people need a manager because they don't want to, or can't, plan the next logical thing. Others need constant variety or don't like being told what to do."

If you like monotonous factory work, then you are free to choose to do it. There's no problem here. Again, you get to choose what you do yourself.

> "The other issue is that getting paid for a "meaningful job" which doesn't turn a profit is not going to scale. Millions of people suddenly wouldn't work in fast food, farm fields, industrial tanneries or meat processing plants because they're really shitty/dangerous/disgusting jobs. (But I'm sure some scary/crazy people enjoy them.)"

If a job isn't turn a profit and can't pay a decent wage, it means that that job is being out-competed by something else. And risky jobs should pay for the risk involved. If the pay is high enough, then someone will choose it over basic income.

> "And, when people have infinite choices and opportunities, the Paradox of Choice comes in to play and people become even more dissatisfied. See also: Zillions of wealthy housewives in perpetual existential boredom (depression) filling psychology & psychiatry offices."

You don't have infinite choices. You are only good at a few things. Only able to do meaningful work in a few ways. With Basic Income the culture would change. People would start learning about meaningful work. Wealthy housewives would learn to do meaningful work. The culture right now is not helping wealthy housewives, because it says that they should already be happy without meaningful work.
I believe that unaligned memory access on ARM is not only slow (if traps/kernel fixups are enabled), but if fixups aren't configured, you will actually just read garbage data!

https://wiki.debian.org/ArmEabiFixes#word_accesses_must_be_a...
The point I've taken away from Dismaland is how most theme parks are already Dismaland.

Think of what would make for an awful theme park: high price to enter, long queues everywhere, screaming kids, highly priced low quality food, security checks, a constant push to buy crap.. that's already what we allow to pass as a theme park, yet people willingly sign up to enter.
> I believe the use case is for scheduling systems that need to do something at (say) 1:30am. On every day at 1:30am, please run the accounting job.

In the instance where someone wants something to happen at 1:30 AM, if they aren't specific in the specification, then they should expect that it may happen twice or not at all at at certain times of the year. This is an imprecise specification problem, not a problem in representing time in structures that can and do contain timezones. That is, it's a failure of cron, or the user specifying the time, take your pick. What it's not is a failure of dates, times and timezones, which specifically address this problem. Timezones or UTC (which is just timezone offset 0), are what we have to deal with this specific problem.

For example, specifying the originating timezone would disambiguate the time, as would specifying it in UTC, (or automatically converting to and using the UTC equivalent on entry).

> Storing the timezone with the time doesn't really solve the above issue.

It doesn't address the "do this thing at this local time daily" problem when someone chooses a time that has special behavior, but it does address the "do this thing at this offset from UTC daily" which may be the best you can expect when specifying a time for a recurring action and not taking into account timezones. If you want to use local time, you have to deal with either the actually time the job runs possibly shifting slightly throughout the year in some locations, or possibly running twice or not at all.

My real problem with the proposal is that adding a .first() method doesn't solve anything, and really just makes half the problem (it doesn't work if the time doesn't exist), and in a way that's already easily solved, since you can't get a valid result from .first without knowing the timezone already.
Then you do agile. It's very suitable for maintenance mode or continuous enhancement.
In a way he did suffer, by renouncing financial security and steady employment, in order to achieve a more meaningful life.
Because VMware is generally quite slow. However it is very easy to manage large estates of machines using the out of the box tools.

Unlike Xen or KVM
I recall we had a 20 year COBOL guy move onto our web team he found Perl a challenge :-)
Makes Amazon seem a good place to work
Maybe we colonized parts of the Earth quicker than our body clocks can change to cope with the seasonal variations?
But we were talking about a situation where you find two guns.
Strategic Priorities for Omnichannel Retailers over next 3 years
Bing announces availability of the knowledge and action graph API
Go's preference for 3 over 4 is a big chunk of the reason I've never used it in anger. Rust's situation is slightly different; code typically uses a monad (Result<T,E>) for error propagation, which is mostly isomorphic to exception throwing, but more verbose. And Rust has macros to cope with some of the verbosity.
This is not just true of art but even with businesses that get funded by VCs or that make it into Y Combinator. The latest group dating or photo sharing app might just be another dull piece of crap until it gets validated by the celebrity of VCs or an accelerator.
Yeah, I think I picked rounding because the article primed me to think about it (the proof presented is essentially based on the ability to create steps, and rounding is my go-to example of a step function). However, any attempt to construct such a network would have a finite amount of steps in it, while the actual step function would have infinite.

In practice, if we needed such a network, we would probably have a restricted domain, so there is only a finite number of discontinuous, and there would be a sufficiently large network that could solve it to an arbitrary precision.

We would not be able to do this with more exotic functions that are densly discontinues, such as the function:

f(x) = 0 iff x is rational
f(x) = 1 iff x is irrational

There is no way a neural network can reasonably model that function.
Is compliance standing in the way of enterprise cloud adoption?
Does Your Startup Need a Dedicated Product Manager?
I love the inline videos and graphs. How was this done?
Without intent to offend the tool's author(s), I can't see how this does anything more than Ctrl-Shift-K in Firefox.
There's been hardware support since arm11, and if your OS disables it to do kernel fixups, kindly update to something from this decade.
I use monitive.com totally happy with them.
In case the end of the article got you as curious as me, this is the guy's page:

http://www.movingtothebeat.net/about-robert.html
You've reduced the word count with that edit, but you've also lost some texture. The voice and texture of Patrick's writing contribute greatly to its being so absorbing... there's no point in trying to turn a Melville into a Hemingway.

My advice to Patrick would not be to change his style, which is clearly very effective, but to also throw some shorter update emails into the mix so people can keep tabs with less of a time investment if they so choose.
Hiring is an incredibly difficult problem to solve at any scale, though it's different on different scales. As times goes on my impression of how hard the task is keeps shifting upwards.

It's a huge deal for both parties. I think that if there is a way to spend money and/or time to solve it, both sides can come out on top with room to spare.

There's plenty of evidence that both sides are willing to invest a lot in it. For employers that's easily measurable in fees they pay for recruiting services (which usually suck), for referrals and such. For Applicants, it's harder to say. But, people do whole degrees and certifications in order to appeal to employees. Often that stuff is at a total tangent to acquiring useful skills or pursuing interest. It's basically time an money invested in being (more easily) hirable.

Basically, anything that can improve hiring meaningfully may be worth this kind of big investment for an employee as well as an employer. One way it could pay off is higher salary. A higher quality, de-risked hire is worth more.

I think one of the things that rely needs to happen though is that applicants need to be able to evaluate their chances. Spending 3 days interviewing may be no big deal in the context of a job that will last 3 years, but it is in the context of some unknowable probability of getting said job. A third party would probably be helpful here.
Stable problems get high quality solutions.
"just making a lot of money keeping actual criminals out of prison".

If the defendants were not found guilty then they are not "criminals". Unless you were in court then you really ought not to judge. (Though I am aware the the American justice system is probably way less perfect than it claims to be).
Debug Mode Is the Only Mode (2012)
Erm, no.
The post-spectacular economy
I wonder how React with Immutable.js would fare in "Unchanged Render" benchmark.
It's not that much different to this when logged out:

https://www.facebook.com/

In fact, they are remarkably similar (and bland). No public search for Facebook either, which does not seem to be hurting them.

To be honest in a Google/search-dominated Net, I firmly believe homepages are irrelevant. You can see that in how little effort these large companies are investing in them: they only represent a tiny percentage of their total traffic.
Lead Telecom Software Engineer at Close.io
About us
At Close.io we’re building the sales communication platform of the future. We’ve built a next-generation CRM that eliminates manual data entry and helps sales teams close more deals. We’re looking for our first dedicated telecom engineer to build out a platform to ensure each call through Close.io is flawless.

Our native app stack for Windows and Mac OSX is built on Chromium Embedded, Qt, and PJSIP.

About you

You should
… be intimately familiar with both SIP and WebRTC protocols.
… have extensive networking experience particularly around QoS, NAT/STUN/TURN/ICE.
… enjoy creating tooling to monitor individual client connections for latency/jitter.
… be able to build out internal web applications to identify and visualize problem endpoints and customer locations.
… love creating new and exciting ways for customers to leverage the PSTN to close more deals.
… have experience writing web applications using Python or Java.
… have native-level English proficiency and feel comfortable speaking directly to clients when debugging difficult telephony based issues.
… Want to build an SFDC rival over the next 25 years.

Bonus points if you
… are an open source contributor to any of our technology stack projects.
… are interested in learning about sales tactics / techniques or just generally improving your sales iq.

Skills Required
Objective C, C++, VoIP/SIP, Qt, PJSIP, Freeswitch, Python

Why work with us?
Above market salary, equity, healthcare, dental, and retirement benefits package.

Work remotely from anywhere in the world, or from our HQ in Palo Alto, CA with a beautiful view. Just be willing to do a bit of traveling every quarter for some face-to-face time with the whole team.

$100K – $180K Salary
0.0% – 1.0% Equity

email a (_at_) close[dot] io and include a link to your github/homepage/linkedin along with a brief paragraph about your experience with VoIP.
> You need to look deeper if you think it has nothing for you.

Surely the onus is on Twitter to make the information easy to locate? This is one of their key failings, if you have to wade through too much noise to find something of interest, then the app isn't good enough.
I would suggest that this is apples to oranges.

When you have VMware vcenter, the power is not in the inherent speed (its not the fastest) its the simplicity of creating a cluster.

If you have a network file store, its almost always going to be slower than local storage (assuming using the same hardware) thats not the point. Using a network file system/ block storage allows you to have HA disks. (or Load balancing, or much larger storage, or wider performance)

With pNFS you can have Active-Active with n servers (assuming you're using Netapp(yes they are still relevant), or GPFS)

As for vcenter, creating a HA cluster with ten hosts takes about 3 hours from scratch (assuming you install all ten servers at once.) Thats using the default tools, and the only thing that's scripted would be the install. (also using the vcenter appliance, not the shitty windows thing)

KVM whilst much faster is so very much harder to set up, monitor and operate. Yes you can use config management, but with vmware, you don't need it. (cough, ignoring machine profiles)
Wow, that looks like a pretty inspiring adventure. Aren't you worried about safety, especially in north-east Africa? How will you be dealing with that?
The moment a topic becomes trending, it gets overrun with spam and shitposts by attention-seekers who know exactly where to find attention. That's not the best first impression.
In this age when we are realizing strong typing is a good idea, that hidden state is a bad idea, and that in general you should be very specific about what is going on

Java tried to be typesafe about errors, about not obscuring the state, and it was a dreadful idea. The way code fails is a function of its implementation; communicating high quality error information is fundamentally an abstraction violation, but a strongly typed facade that forces you to rewrap all your error cases in some other type just obscures the underlying problem.

Strongly typed error information also breaks composability. How do you write a 'map' function that can accept a callback, where the callback may want to communicate back one of several distinct kinds of error information? With unchecked exceptions, the way forward is clear. Without them, you either need to write a lot of boilerplate to unify your error types in some kind of container, or rely on subtyping to fit them into a single type and live with the lack of strong typing via another route.

Dynamically typed programming languages improve usability over statically typed languages particularly when a precise description of the types used in the static case is difficult or tedious to express. Error information, and its intrinsic implementation-dependent content, is one of the strongest instances of this.
It's linked in the third paragraph.
Something the article doesn't touch is on is that multiplayer online games are as much about the community as about the game itself. By that I mean that Steam keeps on trying to get me to buy CS-GO because I play Day of Defeat a lot (like most days for 30 mins to 1.5 hours). So I should be interested in what is essentially the same game but skinned differently. For some reason after trying CS-source (the direct equivalent of DoD) I have never gone back to CS. In DoD I play the same servers all the time and if they are full I have in the past paid membership to get on, but mostly I'll just play a completely different game, different genre, usually single player.

If my favorited servers are not available I'll not play either, because it's about who I'm playing against/with and the culture of the servers/people there.

My point being, you can clone a game, its genre and all other aspects, but you won't magically gain players from doing so. An analogy could be that people who are interested in cars don't just buy any car because they are "car guys" (gamers like games right!), they probably have a favorite even if they know it isn't the best car, leaks oil and has electrical problems. Something about Rovers or Fords or Buicks appeals to them. Same for games, you can't make a guess why people will like one thing over another very similar thing. But something original... or something with a twist...
I live in Spain, and I haven't been aware of a large contractor market here.

The financial industry in London does seem to attract a lot of contractors. Its also fairly corporate style languages that look for a lot of the time (Java .NET).
I'd like to also see Linux KVM vs ESXi vs Bhyve benchmarks, but excellent article!
Good job pissing all over their EULA! :-)

Arguably where VMWare shines is management tools and so on, not exactly performance - this is kind of widely known, anecdotally at least and probably the number one reason they forbid benchmarks in the EULA. They know they're going to suck. :-)

Big corps with big money don't care that much about performance, they're more interested in ease of use, interoperability, SLAs, support, integration with other enterprise crap etc.
The first few levels are specifically designed to be solvable by someone near your skill level, and after you get through them, you might surprise yourself on the "hard" ones.
I assume that metrics are why every site I go to has a glossy landing page with a huge "Sign Up" button, and then the "sign in" link is hidden in the corner. I'm sure that passes all the A/B tests but it gives me the impression that returning Web users just aren't that important.

A site I signed up for recently at least lets you log in by typing your existing username and password into the huge sign-up form. That was a breath of fresh air.
> Much of the trouble with error returns comes from the strange C convention that functions with return values can be called as if they didn't return a value.

The "warn_unused_result" GCC function attribute makes the compiler emit a warning when you do `func(something);`: https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attribute...
But this is mistaking games for real life, right?
Because you compare it to a couple of previous summers. On average it goes steadily upwards.

Relevant xkcd: https://xkcd.com/1321/
Which is fair enough to gripe about, but with ports or homebrew it's hardly an issue these days.
How is that enforceable?
Website for share discuss report problem
website : http://speechz.io
note * mobile view only
want to make a post .. go on web desktop
Considering http://www.ourladyofperpetualexemption.com is legal[0] and the requirements for a church John Oliver listed during his show[1][2] are not exactly stringent, it would probably work.

[0] which you know because the phone number is 1-800-THIS-IS-LEGAL, it's a real phone number too: https://soundcloud.com/user-950117376-873717325/outgoing-cal...

[1] https://www.youtube.com/watch?v=7y1xJAVZxXg

[2] straight outta the IRS: http://www.irs.gov/Charities-&-Non-Profits/Churches-&-Religi...
MIT, Harvard find metabolic 'master switch' behind obesity
> "Short phrases with meanings that don't match the individual words used being parsed as individual words instead of the short phrase" is kind of wordy and a little confusing.

These are called "idioms", or, if you want to be really technical for its own sake, "non-compositional phrases". But I note that, at least according to wikipedia, "idiom" is the technical term as well as the vernacular one.

https://en.wikipedia.org/wiki/Phraseme#Non-compositional_phr...
You know, an article about deep linking might be more meaningful if they took their own advice and deep linked to what "deep linking" is (https://en.wikipedia.org/wiki/Mobile_deep_linking). This IS a hypertext medium you know.
Not really. I think that you are wrong you think that I am wrong. We will never resolve this. Goodbye.
That's pretty common in a lot of low end microcontrollers --- I've met one (the MSP430) where the low bit of the address bus will be wired to zero when doing a 16-bit read. It's a bit rage-inducing when trying to track down a bug caused by it, but totally unsurprising.

I am surprised that recent ARMs have hardware support for unaligned accesses. What sane person expects these to work?
Why the C Programming Language Sucks
If you do apprenticeships, look at Germany how to do it correctly.
Apprentice.at is not the solution to the problems you are facing.