skysight-inc/HackerNews huggingface dataset:
> Homoiconicity specifically means that the primary representation of the language is a datatype in the language itself; Erlang isn't that.

Literal datatype.

And please, prove it to me that "Erlang isn't that". My examples above indicate quite clearly that yes, it is.

> I don't find it particularly subjective,

I was referring to the word "similar" which appeared in the definition of homoiconicity given by flackjap.

> since the AST can be represented by types available in the language, no?

Yes, if the datatypes used in AST representation have literal forms in the language. No otherwise.
Agreed with you. This is full of holes. I don't know what to make of a statement like "because the trade is socially sanctioned [in New Zealand], there is no incentive for the government to provide exit strategies for those who want to get out of it. These women are trapped." I don't see the logical consequence; why isn't there an incentive to provide exit strategies out of prostitution regardless of whether it is legal? It's not illegal to be unemployed, yet governments offer programs to help people get employed. Or: we don't have to make homelessness illegal before we bring in solutions for housing.

Protecting minors is a separate issue from whether something is legal or not. Trading cars is legal; selling a car to an eleven-year-old is not. To prevent that, should we make auto trading illegal?
> Seeing irrational behavior around you means your model of the world is either broken or not applicable to the situation

Or that people are actually, as has been demonstrated in any number of ways, irrational. The idea that perceiving irrationality means there is something wrong with your world view rather than that there is actual irrationality in the world is somewhat odd.
Do you really need to use the dollar sign? That looks so childish.
3 “Fuck Yeah” Moments of Science
That's fair. Lots of other resources here: http://deeplearning4j.org/deeplearningpapers.html
How We Use It: Building Out the Window with React Native and Parse
It's written against an obsolete windowing model for a deprecated window system.

What's needed is a successor written as a Wayland compositor and tools that communicate via a d-bus interface to instruct the compositor where to place the windows.
My opinion probably won’t be popular, but for me the Airport configuration app is a selling point. It’s a simple, sane, nicely designed native app that works wonderfully for configuring either a single router or whole network of routers from a central point, as opposed to having to hop around between each router’s config page. I find it much nicer than most router web interfaces, which are often badly designed and look like they’re stuck in 2005.

What’s more is that the same app works for both my Airport Extreme from 2004 as well as the one I bought two months ago. The consistency is awesome.
My take has been that this is basically a combinatition of a smart hub (like wink and smartthings) and router/access point. The real question I have is whether radio level integrations for IoT really makes sense. The good news I suppose is that a lot of heavy hitters are following google. The bad news is that a lot aren't. As a consumer, there aren't that many use cases where I really need a radio level integration as opposed to something over the web (or even if it stays in my local network) so I would argue this is going to be a bit of a mess. With that said, if I were Wink I would be more afraid of this than if I were Linksys...
Just to be clear: the drug in question (Modafinil) is not an amphetamine, and has very different effects than amphetamines even though they are used for the same reasons (enhancing focus when tired).
Myths about /dev/urandom
The model I was shooting for was having your API be an independent HTTP rest service (whatever framework/language you want) with the nodejs server consuming it to render the initial view and then the client also consuming it in order to carry on with execution.

Martyjs (and the marry-express module) makes this very easy to do in that you can write your application without having to consider the context in which it is running (server or client).

I think the backend DB integration is a separate concern from how to build isomorphic js apps.

In terms of test coverage I don't have much experience testing js apps so I can't speak to the pain points there.
I just skimmed through the whole thing, and was pretty impressed. It definitely accomplishes its goal of giving non-experts a broad view of the whole field. The author alludes to technologies from bistatic radar to compressed sensing to stealth technology that are still actively-researched topics.

As far as the basic concepts go, there's really not much new under the sun in the radar business, but there's been a lot of refinement of principles that were already known by the 1970s when the book was published. Every few pages you run into a concept that practically screams for modern DSP techniques. Matched filters, tapped delay lines, correlators, target classification algorithms, stuff like that. About the only thing that's conspicuously absent is any mention of impulse radar.
Since you're quite obviously an AVM fan (given that you promote their product all over the thread) and it seems you're referring to them here as well (the "phone app" integration is a historical emphasis/accident of that company, given that they got into the DSL-Modem business by expanding from their telephone systems and ISDN cards, and much more of an issue for them than for any other vendor of dsl/cable/wifi modem/router thingies):

Outside the German (speaking) market AVM doesn't matter much. And looking at the tiny selection on the German version of http://store.google.com, the German market doesn't matter much to Google.

That's market segmentation at work, and OnHub likely won't be a threat to your favorite DSL modem brand (and it isn't a DSL modem, btw)
I was thinking about the way they slam the mars rovers into the ground with airbags. That certainly wouldn't work or the rover would bounce around for a long time. But I guess there are other ways. It would certainly be interesting to see what NASA comes up with.
Ask HN: Outbound transactional email service? 2015 edition
It's 2015. What services are good for ending outbound transactional email? I need to send 10,000+ purchase receipts a day and poor deliverability of my present service provider is producing a lot of support calls. Price is not a major issue, deliverability is.
Building an analog looping piano
I think the Chinese market has helped suck up some product.
and it will be heavily compartmentalized to that one thing.
I need a product industrial designer
someone who is affordable and reliable also can work with budgets
The mistake is an unsafe null: making every object type carry a value in its domain which says "Oops, though my type says I'm a Foobar, I'm not actually an object, la la la! Have a free exception on me, in your face!"

Lisp's NIL is brilliant. It's in its own type, the null type! And it's the only instance of that type. No other type has a null instance.

Null references in the language simply reflect the tension between the static type system which is supposed to assure us that if static checks pass, then values are not misused, and the need to have sometimes (at the very least) a "Maybe" type: maybe we have an object, or maybe not. Null references are the "poor hacker's Maybe": let's make every type support a null value, so that Maybe shows up everywhere.

Maybe, or something like the Lisp NIL, are themselves not mistakes by any stretch of the imagination. Sometimes you really need the code to express the idea that an object isn't there: directly, not with hacks like some representative instance, and some booelan flag which says "that's just a decoy indicating the object isn't there". You want the exception if the decoy is used as if it were an object; that's a bug. Something is trying to operate on an object in a situation when there is no object; safely operating on a decoy just sweeps this under the rug.
(Yet, not always: sometimes operating on the decoy is fine. Lisp's NIL lets us specialize a method parameter to the NULL class and deal with it that way in one place.)
Tep Is an Adorable Fitness Tracking App That Works Like a Tamagotchi
I've worked in restaurants before, so I want to create a scheduling app. Nothing fancy, just something less cluttered than current solutions. But thanks, I'll start working on the app first.
Engineers and programmers are usually where they are because they do have a "drive" and "passion" for what they do. Applying attitude of that group to whole population is just a selection bias. A lot of population has no learning drive, and is mostly interested in pleasures, not self-actualization. Can this be changed with proper education? Probably, at least to some extent.

Not to mention that even software developer work is not all that rosy. The open source ecosystem thrives where the work to be done is interesting and brings peer recognition (write a new sexy, fast, featureful framework XYZ), and sucks at the places that require more mundane and less esteemed effort (like QA, testing, documentation, integration).
I definitely agree with you. I was being a bit facetious, but I should also have said you don't solely want to be a cost-cutting measure.
There are very few people trading after/pre market hours.

And those after/pre market hours are only 4-6 hours.
Jobhop Had a Blab with Social Media Speaker Zoe Cairns
Specifically, section 6 (Compuation and Waterfalls), which gives the answer that System X computes Y whenever it saves you the work of computing Y -- i.e. if being able to use X as an oracle decreases the asymptotic difficulty of Y.

So waterfalls (probably) don't play chess in the sense that any mapping form the waterfall to a chess program would itself be as complex as the problem (and its execution). But a chess computer does, since its output has a very simple mapping to actual moves (and in practice, most chess computers add a view layer to provide that mapping transparently).
my frustrometer project, which does the same thing and predates this by a few years (albeit less flashy), at http://frustrometer.com/ can handle that fine.

I didn't finish all the build out, because I got really cold feet in the early pitches ... moved on to other things

should I get back on this? It's always so hard to tell if discouragement is a true representation or just people being internety. I also grossly lack self confidence. I don't know if I need pills, therapy, or what.
Light stopped completely for a minute inside a crystal
Telegram, AKA “Stand back, we have Math PhDs”
The Rehabilitationists: The Libertarian Movement to Undo the New Deal
Honestly, I do agree that reinventing the wheel is rather meaningless and silly. But the problem is that other programmers and engineers don't. And I'm pretty sure there are some open-source Slack clones out there, so money isn't a motivation. People just want to work on reinventing the wheel. Hence, work that has to be done. I'm not going to dismiss people's hard work just because I find personally it worthless.

And no, I don't see problems ever being solved, simply because they just expand. I've worked on a couple of free open source projects, showed them off to people, and have got feedback from users of "Hey, it would be cool if [insert-feature-here]". And if I implement that feature, "Ah, thanks...oh, and add this feature too." More and more 'suggestions' pile up, which means more work.

>Just because you've only worked with engineers at startups making shitty products or bloated companies doesn't mean there aren't people doing work right.

You make assumptions about me that you probably shouldn't.
Most Swedish educational experts feel the stark decline the OP is speaking of is a direct result of decentralization and the funneling of public funds into private, for profit, institutions. [1]

Generally, conservative elements in Sweden discount educational experts assessment saying that kids are allowed to be 'too free' in the class (e.g. blaming it on the declining moral fiber of children or immigrants or what not).

It served as a lab for what proponents of the voucher system in the U.S. are looking to do.

1. http://www.theguardian.com/world/2015/jun/10/sweden-schools-...
The state of virtual reality for Education
As per the famous Ghana postal workers recording ( https://www.youtube.com/watch?v=por5SopwHDc and http://faculty.weber.edu/tpriest/FacetsMdl_files/Postal%20Wo... ), it's perfectly possible to enjoy even tedious work if you have a good attitude. It helps to have a healthy culture.

In the U.S. we are culturally taught that we are supposed to dislike our work, especially if it isn't prestigious. If you dance around and have fun at work in the U.S. people look at you weird and generally discourage any such thing. But there's no reason not to bother enjoying your time.

This is on top of the various other points they make in the article and related stuff…
That's a pretty big jump between Ceres' small but still significant gravity and being in total freefall. Granted, Ceres is pretty tiny compared to Mars or even the Moon, but we don't know at what point on the spectrum between "microgravity" and "Earth" do we see noticeable health risks. Maybe we're finely tuned for Earth gravity, and we'll suffer even on Mars. Maybe it's just the freefall that's the most harmful, and that any gravitational sense of "down" will be healthy enough for a settlement to actually be viable. Some long-term lunar habitability experiments would be a good first step to finding that point.

If asteroid mining starts to catch on, Ceres would be a really nice spot for staging mining expeditions, materials processing, etc. Combined with the abundance of water ice, it could be even more ideal of a colonization target than even Mars, especially if the effects of longterm exposure to its lower gravity can be identified.
Highly unlikely for a drug like modafinil where the few potentially adverse side-effects are so exceedingly rare it's not even clear if they are genuine side-effects of modafinil or just unfortunate coincidences during testing. Most over the counter pain killers have well known side-effects that are far more likely to harm you, for example.
Google Starts Deprecating Web Hosting Support in Google Drive
Did China and Russia Really Need Our Help Targeting Spook Techies?
That's an interesting point. Think of someone getting into this stuff early in his career. How long will it take to get proficient? In my opinion, it's necessary to know the underlying principles to use the abstractions well. So 10 to 15 years sounds about reasonable.

In your case, the landscape was quite different 15 years ago. Simpler, in a lot of ways. Now think 15 years into the future and imagine how the Unreal Engine could look like then. If the changelist increases in this form for the next 15 years, how complex will it be to operate that thing? Will someone new to this still be able to learn everything there is to learn? If not, how will this affect the industry?
Google’s Self-Driving Car Tests Continue in Austin, Sans Humans
I don't view the "electrode stimulation and see what happens and then believe it's probably the same as patients experiences" as something scientific.

Given that we don't exactly know how the brain works, what if out of body experiences are real and the scientific explanation just tries to fit it in the general accepted world view as a brain bug just because it's too strange?
Oh, I didn't realize it was that bad. Looks like they barely implemented 1.2 and haven't announced support for 2.x at all. https://en.wikipedia.org/wiki/OpenCL#Timeline_of_vendor_impl...
> Nobody in the Perl world prefers that, outside of people who are complete newbies

I think these are actually old-bies. They don't opt-in to `use strict;` because they like it that way. I suppose they just have an astonishingly high pain threshold.
DevOps and Security: The Five Monkeys
The technical debt of the millenia
The Agile labor union
Sendwithus Is Hiring a Senior Engineer for Infrastructure
This mistake is fixed in Haskell.
Atom Text Editor: APT and YUM Repository for Official Releases
Well, that's clearly published using a blogging platform; also I don't know what you're on about, it's pretty clear for me.
For statically typed languages this is definitely an issue, but for dynamic languages less so. In Python, I wouldn't use an optional value,

x is None

seems to be just fine.
I'm still waiting for

std::optional

for C++.
Nightcore Legend
nil really isn't any better than null-pointers/references. In the end, you need to check for nil-ness anyway, and there's no mechanism that will help you ensure the check is made. Algebraic data types with pattern matching, that is, Maybe/option is really the proper solution.
Ask HN: Anybody know of a todo list that can create reports of what you did?
I'd love to find a todo list manager that can tell me the projects I worked on even if I only touched a subtask of that project. Then I can use it in our daily standup.

Any ideas?
N.I.G.E. Machine Design – Forth on FPGA [video]
I kind of like it how the example on this page is helping someone make their email more harsh, when it's already using exclamation points and starting sentences with "but" and is already heeps of negative.

"We can't blame the economy" is passive aggressive, but it gets coded as green.

Not being passive aggressive is good, but perhaps writing the sample email in a way that makes people want to work for this person would be a good idea instead.
> And do you really believe that more than $60 billion is being spent investigating?

I don't think it really matters, since you are the one who narrowed the original suggestion that the total cost of Medicare fraud -- which you've stated is $60 billion with a handwave at CBO without specific citation -- might be less than the total cost of resources expended in "fraud prevention" (not just investigation), including (explicitly, per the post upthread) the resources expended in all of the following activities:

* Congress and Medicare deciding what is and what is not covered

* deciding who is and who is not covered,

* what the rules and processes are for preventing and discovering fraud

* what the process is for handling fraud

* the actual time needed to enforce these rules and follow the processes

* time spent by care givers and patients complying with the rules

You reducing this to just investigation costs is, well, missing the point being made.
Polish edition of Valuable Agile Retrospectives book released
That's mentioned in the article. It gives Haskell's null handling a score of 5 stars, along with OCaml and Standard ML.

EDIT: The articles definition of 5 star null handling is "Does not have NULL." :)
Rust, too!

Edit: Btw, I disagree with how the article categorizes Rust in comparison to Haskell. It shows that Rust has std::ptr::null, but neglects the fact that Haskell has Foreign.Ptr.nullPtr. Either both should be "5 stars" or both should be "4 stars".
ruby nil is similar in that it's an instance of the Nil class. though, calling a method on nil that isn't there is a common error.

I like how swift handles things. strong type system that makes it a little painful to do things unsafely. guarantees some things that make it a powerful and more safe language than objective c. I think they lost a few dynamic patterns though in the transition but that's just what i recall from a blog post and the details of it are a little fuzzy.
Though the philosophy is different, I'm not sure I see an advantage for NIL when you just look at the effect it has on a programmer's code. You can still have a "NULL-pointer dereference" in CL, except the error is rephrased as "SYSTEM::%STRUCTURE-REF: NIL is not a structure of type X" or whatever. And you still have to have "(if (not (null x)) ...)" which doesn't do much for you, regardless of the underlying theory.
Uglier than a Windows backslash, odder than ===, more common than PHP, more unfortunate than CORS, more disappointing than Java generics, more inconsistent than XMLHttpRequest, more confusing than a C preprocessor, flakier than MongoDB, and more regrettable than UTF-16, the worst mistake in computer science was introduced in 1965.

That could be the greatest intro sentence ever seen on Hacker News.
Buddy Is a Really, Really, Ridiculously Cute Family Robot
AnandTech is the only one that has top tier content, but it's a bit too obscure
Yeh there is a lot of work going on in this area... check out all these lectures and the papers they cite.

http://cs224d.stanford.edu/syllabus.html

There is a race to create a virtual assistant and do question answering.. the big players are IBM Watson, Apple w/ Siri, Google, Microsoft w/ cortana, facebook M, and Amazon Echo.
NULL is okay as long as you pretend it doesn't exist. I mean, in these languages, uninitialized variables exist at some point (fields start uninitialized in constructor bodies, etc), and that's why there's null, instead of defining them with some garbage value that has undefined behavior. But the right solution for users is to just pretend that it can't exist, and that uninitialized variables have a garbage value.

Of course, that's idealistic, most languages don't have some Option<T> type without a performance penalty, and pre-existing libraries exist. (Usually you should design around needing Option<T> too.)

The right language design decision for these languages (managed languages like Java) might have been to make uninitialized references have a garbage value that reliably throws an exception when used (i.e. null) -- you can copy the reference and pass it around, but you can't compare it for equality and any attempt to inspect its value results in an exception.
This feature may be present in other manufacturer's devices, but I know that Ubiquiti's UniFi APs let you set a minimum client signal strength [0], below which the AP will disassociate the client. [1] Folks in the support forums report that this works really well, but that you do have to play around to find the right setting.

The three downsides to UniFi APs are:

* There is controller software which is required to configure (but not run) the APs.

* The price of the UAP-AC v1 and v2 models.

* Every AP setting change requires that the controller reboot the affected AP. The APs take ~60 seconds to reboot.

The controller software is reasonably well done [2], easy enough to use, and makes managing a swarm of APs pretty easy. I fire it up when I need to change channel settings or add an SSID or whatever and shut it down afterwards.

I hear that Ubiquiti is going to be releasing some new, lower-priced 802.11ac units soon-ish-ly that aren't much slower than (and are much less power hungry than) their existing 802.11ac units. So, if you want to give their hardware a try, you might want to wait until the new units are released. (Edit: Unless -of course- you don't care about 802.11ac, in which case I hear good things about the UAP-Pro, which does 2.4 and 5Ghz 802.11n.)

If you have questions about the APs or controller software, feel free to ask.

[0] AKA RSSI.

[1] The idea is that the newly-disassociated client will search for a new AP to attach to, find that the one it was ignoring has better signal strength after all, and attach to it, rather than the previous one it was attached to.

[2] It's some Java software that presents a web page on localhost that you log in to to manage your existing APs and adopt new ones that you've attached to your network.
It's only not an issue in dynamic languages in the sense that you have the same issue anyway without null because you have no type safety at all.
A large media organization.
What you call a proper VM cluster has been pretty terrible from my experience as both a developer on an early cloud and a consumer of large government facing clouds.

Typically the network or SAN becomes oversaturated and the vm's shit the bed. AWS on the other hand was considerably more reliable and I'd argue they've made better decisions rather than cut corners.