skysight-inc/HackerNews huggingface dataset:
> What Haskell does in no more "safer" than if I do tag-checking at runtime.

No. Haskell checks at runtime which tag a value has. But, crucially, the compile-time check guarantees that these tags will always be valid. Assuming you have handled every possible variant of a type (e.g. `Just ...` and `Nothing` for the `Maybe` type), you are guaranteed that you are "covered". Unlike in, say, python, where you might get passed a string, or None, or...?

> The idea that compile-time checks is much better than runtime checks is also not obvious

Dynamic languages have their place, but there's no contest whatsoever when it comes to safety. What's better: discovering an error before the code has run, or discovering the same error while the code is running, possibly in production? In the huge majority of cases, the former is preferable.

> What is better - to clutter the code with explicit type annotation or clutter the code with explicit type-tag checking in the runtime code is another question.

With type inference, you get the best of both worlds :) Most Haskell code doesn't need any type annotations, and most of what's out there only has explicit type annotations for top-level expressions, for purposes of documentation.
Everything to do with the DNS system is so corrupt and shady. Half the domains dropping in the new GTLD process are "unavailable", "registered", etc. We tried to get an exact trademark for one of our companies in the new GTLD system during the Sunrise phase only to be told by Gandi that the new GTLD owner rejected it. We pushed it pretty hard and had a back and forth with Gandi's CEO who was pretty much on our side but the new GTLD owner (Demand Media) wouldn't budge. We have to sue them if we want it. That's what the privatized DNS system has come to.

You know who I feel bad for though? Those people who originally registered big corporate brands .COM in the 90s and had their domains ripped from them. That shit is ICANN endorsed nowadays.
It is great riding it cross-country, I just finished up my second trip from Los Angeles to New York City in August (Southwest Chief + Lake Shore Limited). I enjoy being able to finish books and get some coding work in, and the amazing views like riding through the midwest at night and having a far off lightning storm in the background. All the people I've met on the trains are really nice, and interesting. When I tell my friends here that it is actually quite a nice trip they think it is ridiculous to take a train for 72 hours, but it really isn't about the destination for me -- just the trip. I also prefer it to airplane travel.
I don't see why that would be done with a sealed order.
I wonder if part of the effect is simply studying a lot. It sounds as if she devoted a lot of time to studying Russian and then maths. Perhaps the actual way she spent the time is not that relevant? Not saying it is irrelevant, but for example maybe simply doing problems in maths for the same amount of time would have been just as effective?
Stopping Ebola now could be one of the single most important decisions the world makes this century. Just imagine what would happen if Ebola emerged in lets say India. It doesn't sound so far fetched now that we have seen a case in America.

Exponential growth tends to catch people off-guard. Just like Moore's Law lead to a rapid emergence of the home computer, a deadly disease could reshape the world overnight.
OK, cool. Of course, almost no languages check for totality. Agda is one of the few that does it by default. I think Rust makes you complete all pattern matches too.

However, if you do get a pattern match failure, one of two things is true:

1. You can easily fix it by accounting for all patterns (or adding a default match)

2. Your program model is conceptually broken and you should probably find a new model that accounts for all possible patterns.

Much easier to deal with than a type error :)
Show HN: X-Windows independent C library for Linux that simulates keyboard input
do it work?
Importing the stuff, complying with Canada's labelling has nothing to do with Trader Joes. That has to do with the Canadian government, and they don't seem to get too sticky about stuff like this.

Trader Joes has a right to refuse people who shop there, but again, you can't sue someone for trying to buy from you. Trespassing perhaps. Stalking?

Which brings us to your point about dilution of a brand. They lose that right when they sell it. It's called the first sale doctrine. HBO can stop Netflix from showing Game of Thrones streaming, but they cannot stop them from renting the video out. So, rather than listing things that aren't valid, could someone explain why isn't this covered by the first sale doctrine?
"I am also concerned not to come off as shrill or preachy when what I really am is confused."

The older I get the more I realize this seems to be the appropriate response to the world. In Zen circles this approaches the idea of the Beginner's Mind, and seems to be an incredibly powerful way to approach a contentious topic.
A 6% growth in the industrial automation market does not, by itself guarantee any set increase in productivity. All it guarantees is that companies are buying more robots.
The wheat board was dissolved two years ago: http://en.wikipedia.org/wiki/Canadian_Wheat_Board
Yes, it's all part of the experience. Reportedly, DFW liked the idea of jarring readers out of a steady progression through his text and used all kinds of notes to effect this.
5K .Com’s Taken Away by Sealed Court Order by Verisign
Probably, but since it is the one of the first to market, if not the first, it's not unusual for it to cost more than what is really reasonable for most people.
Actually, Haskell does let you write print statements for debugging.

If we have the following function:

foo :: Int -> Int
foo x = x `div` 0

and we want to add debugging, we can do:

import Debug.Trace

foo :: Int -> Int
foo x
| trace (show x) False = undefined
| otherwise = x `div` 0

The above will print the value of x before throwing an error due to division by zero. You don't have to make foo return an IO Int or change any other aspect of your program.
DFW's commencement speech at Kenyon is another terrific example:

http://web.archive.org/web/20080213082423/http://www.margina...
I actually found his talks of Maine and travel in general very interesting. I really liked this from one of the footnotes:

"To be a mass tourist, for me, is to become a pure late-date American: alien, ignorant, greedy for something you cannot ever have, disappointed in a way you can never admit. It is to spoil, by way of sheer ontology, the very unspoiledness you are there to experience. It is to impose yourself on places that in all noneconomic ways would be better, realer, without you. It is, in lines and gridlock and transaction after transaction, to confront a dimension of yourself that is as inescapable as it is painful: As a tourist, you become economically significant but existentially loathsome, an insect on a dead thing."
Lulzsec settled short
ghc has an RTS option to locate errors of that nature:

-xc
(Only available when the program is compiled for profiling.) When an exception is raised in the program, this option causes a stack trace to be dumped to stderr.
This can be particularly useful for debugging: if your program is complaining about a head [] error and you haven't got a clue which bit of code is causing it, compiling with -prof -fprof-auto and running with +RTS -xc -RTS will tell you exactly the call stack at the point the error was raised.

http://www.haskell.org/ghc/docs/7.8.3/html/users_guide/runti...
Yes.

Only reason I have nexus pass lol

Oh and my shipping mailbox at tsb shipping
The goal of technology is to eliminate labor, not to create the need for more of it. If everyone is fishing with their bare hands and catching just enough to feed themselves (edit: say one fish), then when nets are invented and people can catch 100 fish a day, 99% of the fishing industry jobs disappear. That's a wonderful thing. That means 99% of the population can devote themselves to less urgent priorities, like building shelters, making clothes, etc. Sure, those crackerjack fish catchers who could catch 2 or 3 fish a day have lost their jobs, and might become less affluent than they were...but the few losers in every industry when technology changes the employment structure are outweighed by the vast majority who benefit greatly. And lest this seem unfair, consider that if everyone's current job were obsolete, everyone would be astoundingly better off despite losing the comparative advantage they had built in their career.

The same thing has been happening since the first inventions. It's been one long history of job loss and rising standard of living, and no short term variance should obscure this fact.

The more jobs made obsolete, the better. People will simply shift to less important work, and increasingly people will simply work fewer hours, as technology makes the economy so productive that prices fall to such a degree that people can live on an hour of labor a week.
I have just read in a drone magazine that it's a good idea to use drones with 8 rotors when carrying expensive cameras, because they are more resilient. Apparently with 3 or 4 rotors, the drone will inevitably fall down if one of them falls.
Right, I caught a hint of that when he started talking about about the history (and pre-history) of lobsters. I thought, "Okay, this is actually interesting." Then it got a lot better later.
The point is that you can do something about these "flukes" if you, as an individual, don't only rely on timely response by emergency services.
Well yes and no. GHC does a pretty good job of warning you when you're missing a potential option in a pattern match, and it's generally pretty easy to write code that avoids partial functions as a result. But still, you're right - it's not 100% safety, and will only give you a warning.

There's no reason to throw the baby out with the bathwater though, since 90% safety is a hell of a lot better than 0% safety.

Personally I'm keen to see mainstream languages adopt better totality checking for that exact reason - my fantasy language would enforce that `main` is always a total function*

*(For this fantasy language, I'd probably allow infinite recursion to still exist, since the halting problem is theoretically impossible to solve without introducing a lot of pain to prove that your code will actually terminate, and that level of totality checking is often counter-productive for general-purpose code)
I actually do some work on Namecoin, and need to post in that thread. The current namecoind is based on a horribly old version of bitcoin, and we could really use some donations to help get a rewrite against something more maintainable done.
“The Periodic Table of Tech” Shows VC Firms, Angels and Tech Acquirers
Flying drones without permissions(registred aircraft, pilot license etc.) is illegal in some countries already.
i wonder why before various unobtanium requiring structures we wouldn't try some rail/coil gun in a [close to] vacuum tube going several kilometers up a mountain. After all, 2000 years ago it was possible to build that http://en.wikipedia.org/wiki/Roman_aqueduct , so building something like it up the Kilimanjaro (or any other mountain near equator like this http://en.wikipedia.org/wiki/Nevado_Sajama) should be pretty doable today.

Or how about just this http://en.wikipedia.org/wiki/Project_Babylon for starters - was worked on by a guy who knew what he was doing:

"The barrel was to be 156 metres (512 feet) long, with a bore of 1 metre (3.3 feet).[3] Originally intended to be suspended by cables from a steel framework, it would have been over 100 metres (300 feet) high at the tip. The complete device weighed about 2,100 tonnes (the barrel alone weighed 1,655 tons). It was a space gun intended to shoot projectiles into orbit, a theme of Bull's work since Project HARP."
It depends on what definition of safety you are using. If it's "won't segfault" or "allow access to a user's private data" then dynamic solutions can be as safe as static solutions. If you define safety as a lack of faults at run-time, then by definition static solutions are safer.

If you want to define safety broadly, then both static (upfront analysis, type checking) and run time solutions (hyper visors, tag checks, monitoring) are necessary to achieve it.
This is exactly where I'm at. My biggest problem is that wrapping non-persistent data structures written in C/C++ never seems comes out right in Haskell. You often have to write them in the IO monad, which is the absolute last thing you want for an otherwise general purpose data structure. I think there may be some solution here using linear types, which enforce that a data type is referenced only once at compile time. This would let you avoid being forced to guarantee persistence when all you care about is speed.

This argument may seem more abstract than what you mention, but in fact it gets to the very heart of why there aren't good unboxed mutable arrays in haskell. In truth, there are. You can convert Immutable Vectors (which are lists with O(1) indexing but no mutation) into Mutable Vectors in constant time using unsafeThaw. The problem is that your code is no longer persistent, and you've risked introducing subtle errors. My biggest problem is that the haskell community seems to look at non-persistent data structures as sacrilegious. As a scientific programmer, that makes me feel like maybe learning haskell wasn't such a good investment after all. But on the bright side, functional programming is on the rise, and I'm confident that all my experience with Haskell will transfer well in the future.
Image ZOOM Effect Using CSS Transition Scale
I'm very excited very this. Car makers are terrible at doing software and it seems to be getting worse as touch screens become the norm.
And the productivity difference between Windows XP and Windows 8 is...?
0.01%?
Also worth reading http://priceonomics.com/the-invention-of-the-chilean-sea-bas...
I'm happy to walk you through some of my work. It'd be more of a high level overview (building modular css components, organizing your styles, and how to integrate with html in meaningful ways).

jtfairbank+hn /at/ gmail /dot/ com
It looks like Belgians have some problems with water sources. This is in the news here in Luxembourg http://www.wort.lu/en/luxembourg/pesticide-spill-tap-turned-...
Well with only two RAM slots you wouldn't. Intel CPUs can't use 16GB SODIMM RAM modules, http://www.anandtech.com/show/7742/im-intelligent-memory-to-.... So with two slots, you are limited to 16GB.
Talk to a lawyer. My best guess is that if you used the account as a part of your job (promoting the company, etc) then they own it. You may be able to remove your personal information or ask the company to.
Ebola Victim Thought Dead Comes Back to Life Minutes Before Cremation
Something I like to do is:

import Debug.Trace
wtf v x = trace (show x) v

someFunction x = anotherFunction x `wtf` x

This allows me to tack `wtf` onto the end of otherwise unchanged expressions to do print debugging
http://bit.ly/WorkAtGlassdoor works (missed a caps on At)
The first sale doctrine does not let you do business under a name that is confusingly similar to someone else's trademark.
Again, of course there are cases for which knowing CPR or other training makes a difference - an obvious one is having basic first aid training around pools, particularly in the case of diving accidents leading to spinal injuries. Knowing the proper procedure to stabilize the person until paramedics can arrive on the scene does a lot to lessen the chance of secondary damage (eg, from the being moved wrong while trying to keep them from drowning).

I don't think that anyone is arguing that having more people know CPR or first aid is bad, but rather, the number of cases cited were too small to even infer that kind of information from: it's quite possible that there's nothing that could have been done for many of the cases the paramedics were late to respond without actual medical equipment onsite, ie, having more than just bystanders who know CPR or basic first aid. The gap in size between the cited number of cases and the number of cases that happen is too great, especially considering that the cited number of cases were from a biased selection, eg, only cases that matched a particular profile.

It's important that we not let emotion or our desire to do something about tragedies cloud our vision of what's actually helpful and what things actually matter.

I would expect for every case cited to me where someone saved a life being a bystander, I could find one where bystanders with basic training and good intentions ended up making the situation worse. That is, of course, beside the point, because both collections of anecdotes would be just that, and not actual data about what's a good idea.
How does it make it useless? Why wouldn't you pay a license fee for developing commercial (closed source) software? If you want to sell the code to the client, use the AGPL, if you want to sell the (closed) service, get a commercial license?

The AGPL allows you to develop closed internal tools (no distribution to third party), optionally distribute without a cost under the AGPL -- and they also offer an option for commercial development. Asking for the code under a BSD license just sounds like you want to avoid paying for the cost of developing, supporting and maintaining a (presumably) quality product.

It's less than 400 USD/year for a freelancer... if it's any good it should pay for itself, practically?
This is called intrusion detection, and there are a number of ready-made products that do it more efficiently. For an example, see tripwire. This will easily handle /Applications/.

On first run it gets a hash of all the files, and then you schedule subsequent runs in cron to see what has changed.

The problem with any approach like this is that if it were in common use that it'd be easy for the malware to change tripwire itself to stop it from detection. It also won't detect something that only infects running processes, infects firmware, or otherwise leaves the local filesystem alone. That's why you'd want to have defense in depth, such as having a separate box monitoring traffic, looking for anomalies.

I'm not sure what the appropriate approach would be on a end-user machine. Any security measure that's implemented in software on the machine itself is a arms race against the malware authors. This has been going on for a long time in the Windows world, and I don't think there is anything fundamentally different about Linux and OS X that would protect them if they received the same amount of attention from malware authors.
Being able to abstract over the monad leads to monad transformers of the `transformers`, `mtl`, and `extensible-effects` varieties. You can argue that those aren't valuable, but I don't think you can argue that type-checked generic monads are critical for achieving them.

In practice, 75% of the time that I use monads I am using some kind of monad stack. I'm sure you can argue that this is unnecessary or that I only do so because Haskell affords it... but on the other hand, I believe that transformer stacks do a good job of elaborating the space of effect types with an efficient, expressive language. Without them you either elide side effect reification or build a lot of one-off monad stacks.
Has nothing to do with the size of organization, but the nature of the context. A small org can have a lot of clients, stakeholders, external partners or other communication overhead between the team and the rest of the world.
Does anyone know what typical equity grants translate into on average. I.E. 1% typically will payout in the range of y to z, etc.
OhLife is shutting down today
It is.

I'm currently building this sort of thing and it's a glorious feeling. Clustering is hard, like "search engines before publishing of the page rank algorithm" hard. Sure there are lots of options, some very good ( I have fond memories of HotBot's advanced search, it was my go to search engine for a few years ) but tractability changed drastically after that paper. Now search engine theory and building a basic search engine from scratch is suitable for students instead of postgraduates. It's fun to work on a bleeding edge.
Kamcord Is Looking for iOS App and SDK Engineers
Kamcord recently raised a $7.1M Series A and is growing like crazy! We are receiving 1-2 video uploads every second and are doing 1% of YouTube’s upload traffic. The bread and butter of our business is our iOS SDK for game developers that lets players record and share videos of their gameplays. Our product is currently running on 30 million devices every month!

We’re facing insatiable demand from game developers across the world and are looking to grow our iOS SDK team to take our product to the next level. We’re building both really hard tech and a beautiful consumer-facing product, all in one. If that excites you, definitely get in touch!

RESPONSIBILITIES

Build and own core features of our iOS recording and sharing SDK.
Interface with and support developers ranging from small indie shops to the biggest game studios in the world.

WHAT WE'RE LOOKING FOR

Driven team player who doesn’t need hand-holding to get things done.
We love folks that own things 110%.
Deep understanding of Objective-C and iOS programming best practices.
Comfort with multithreaded code. You eat race conditions for breakfast.

BONUS POINTS

Loves to play games :)
You speak OpenGL. glEnableVertexAttribArray ...
You’ve built a game or game engine from scratch.

Why You Should Join Us

We are kick ass - Our hiring bar is very high so you’ll work with the brightest people in the industry.
We work hard & play hard - From ping pong battles to late night hack sessions, we move fast and get stuff done.
We are making a difference - The community we’re building changes people’s lives: http://www.kamcord.com/v/8IMDuw1vd6p.
We are a true start up - You’ll be joining at the ground level and will have an immediate and measurable impact.
We believe in entrepreneurship - We’ll provide support and guidance to those who want to eventually start their own company.
The atmosphere only attenuates sunlight by a factor of order unity. Won't it always be much, much cheaper to build slightly larger solar panels?
Steal This E-Book
Can Big Data Tell Us What Clinical Trials Don’t?
>It's less than 400 USD/year for a freelancer... if it's any good it should pay for itself, practically?

The problem isn't paying 400 USD/year. This is negligible cost compared to how much it costs to hire a developer. The problem is that software created in such a way wouldn't be widely used for reasons mentioned in one of my other comments.
How do you figure a 24% tax won't affect flippers much? It raises the price of kicking tenants out then TIC-ing a building by the 24% tax, or 4.5 years of property taxes (probably at the remodeled price), or becoming a landlord.
Technology Claims Another Victim

Oh bullshit. Every film professional I know hated voice overs and thought they were cheesy years ago. Nobody liked the way marketing companies cut trailers so more and more directors and editors started supplying trailers along with the final cut.
Here in the UAE there are a tonne of unauthorised resellers. Mostly importing products as they are cheaper and don't come with local restrictions (FaceTime is blocked on iPhones bought in most of the Middle East). Apple has authorised resellers, an online presence, and next year are opening a retail store, so you'd think they would try and do something about it...