Why Haskell is Kinda Cool - <AUTHOR> http://amtal.github.com/2011/08/25/why-haskell-is-kinda-cool.html <comment><USER2> There are a few missteps in this article. To begin with, the author claims that a variable of type Double is "a function with no arguments". This is not the case [1]; not everything in Haskell is a function. A Double is just that: an instance of the numeric type Double.

They also say that "[T]he Ord "typeclass" ... implements comparisons." But of course the typeclass itself doesn't implement comparisons. A typeclass defines an interface which its instances implement. Consider the Eq typeclass:

        class Eq a where
            (==) :: a -> a -> Bool
            (/=) :: a -> a -> Bool

So to make a type an instances of Eq, we need to implement (==) and (/=) functions with the type signatures provided by the class. It's pretty obvious how this should go for the Bool type, so let's define that and make it an instance of Eq.

        data Bool = True | False

        instance Eq Bool where
            True  == True  = True
            False == False = True
            _     == _     = False

            a     /= b     = not (a == b)

This is all covered very well by Learn You a Haskell [2].

[1]: [http://conal.net/blog/posts/everything-is-a-function-in- hask...](http://conal.net/blog/posts/everything-is-a-function-in-haskell)

[2]: [http://learnyouahaskell.com/making-our-own-types-and- typecla...](http://learnyouahaskell.com/making-our-own-types-and-typeclasses)

<comment><USER3> The points you describe are valid, but there are a few nits:

Regarding your first point, your referenced article makes a misstep of its own, conflating the implementation with the semantics. From the article: "Do some folks believe we're still doing what Church did, i.e., to encode all data as functions and build all types out of ->?"

From a semantics perspective: Yes. If it makes it easier to reason about, then treat variables as nullary functions. In the Spineless, Tagless G-Machine paper, both values and thunks are represented as closures, which may or may not be evaluated. For example:

      infiniteSeries :: [Integer]
      infiniteSeries = iterate (1+) 1

Is this a variable or a function? Having a special case for Double ("a closure containing a value") versus [Integer] ("a closure containing a thunk") is a distinction only important once the implementation becomes an issue (ie, lazy evaluation affecting memory usage).

As for your second point, typeclasses can include partial implementations. For example, the Eq typeclass [2] has a minimal definition required, either (==) or (/=), as one can be defined in terms of the other.

[1] research.microsoft.com/pubs/67083/spineless-tagless-gmachine.ps.gz

[2] [http://haskell.org/ghc/docs/latest/html/libraries/base/Prelu...](http://haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html#t:Eq)

<comment><USER2> Great points! That we can treat infinite streams as having the same semantics as lists is of course dependent on Haskell's non-strictness—it's not the same in ML, for example.

For me one of the more convincing arguments that article puts forward is that Haskell only has unary functions; the type Int -> Int -> Int is just a shorthand for Int -> (Int -> Int), i.e. functions which appear to have more than one argument are considered for the purposes of the semantics to be of the form (λa.(λb.c)).

The core point that I think Conal Elliot tries to make is that as far as the denotational semantics is concerned, Haskell has values of many types, some of which (the ones of (abstract) type a -> a) are functions.

You are of course correct about Eq and partial implementations. For me the key point is that where one function is defined entirely in terms of other functions and class constraints which ultimately rely on the instance implementing those other functions, they encapsulate the logic of the typeclass—in other words, they define a property of the interface. So equality for values of a given type is ultimately defined by the _instance_ , but the relationship of equality to inequality—a property of the concept of equality in general—is defined by the _typeclass_.

<comment><USER4> > For me one of the more convincing arguments that article puts forward is > that Haskell only has unary functions

It's not specific to Haskell, you can trivially argue that all languages with functions have only unary functions but most languages use tuples as the function's sole parameter.

Haskell even lets you switch a function between the two systems via `curry` and `uncurry`.

</comment></comment></comment></comment><comment><USER5> I liked Haskell when I tried it for all of these reasons. However, there were a few problems I had:

1\. Debugging logic. I LOVE its typesystem, which catches most of my errors. However, sometimes I have algorithmic/logic errors. In a perfect world, I would have worked those out well before coding. But once I have coded it, I just don't know how to debug my code. I have gotten so used to gdb/pdb as my last resort that I am lost without it. Does anybody have any idea debugging Haskell programs?

2\. Its Lazy evaluation sometimes get in the way of tail recursion optimization unless you force it, and can lead to the stack getting full. But this can be handled by forcing evaluation with seq.

<comment><USER6> 1\. There's the ghci debugger, though I don't know if it is practical (I don't use it myself).

Alternatively, you can use Debug.Trace (or the [http://hackage.haskell.org/packages/archive/TraceUtils/0.1.0...](http://hackage.haskell.org/packages/archive/TraceUtils/0.1.0.1/doc/html/Debug- TraceUtils.html) extension), which makes "print-based" debugging easier than in imperative languages:

Say you have:

      processValue f =
        after .
        map f .
        before

If you want "print-based" debugging, you can use Trace.Utils.traceAround:

      processValue f =
        traceAround "processValue" $
        after .
        map f .
        before

Or, if you just want the results of "after":

      processValue f =
        traceId "Result of after: " .
        after .
        map f .
        before

Alternatively, there's also the FileLocation package, which gives you filenames + line numbers in your debug prints via Template Haskell macros.

2\. Controlling evaluation is indeed tricky. Haskell programmers take manipulation of infinite data structures (of any kind) for granted -- but then if they want to control stack use, it gets a bit tricky. Other languages take stack use management for granted, but if you want to have infinite arbitrary data structures, it gets tricky.

I personally prefer Haskell's choice, because it means that having infinite structures doesn't contaminate the code with effects (which explicit suspensions/resumptions of computations would do), but it could probably be done better (e.g: move laziness/strictness annotations mostly to the type- level).

<comment><USER7> Haskell doesn't even really have a stack. It's more like a spaghetti stack.

<comment><USER6> Is that supposed to be derogatory? :-)

<comment><USER7> No. It's at technical term that crops up naturally in the discussion of e.g. continuations and closures.

</comment></comment></comment></comment></comment><comment><USER8> Does anyone know how to turn off the extra mouse cursors? That is bugging the hell out of me and I can't concentrate on the article enough to read it (but I really want to).

<comment><USER9> Scroll to the bottom of the page and click the power icon on the enflock widget.

<comment><USER10> Which still leaves mouse pointer images all over the document. Horrendous.

<comment><USER11> Type javascript:$('.ms-mouse').hide(); into the address bar and hit enter after you turn off Enflock.

<comment><USER8> this is the dumbest thing in the world

</comment></comment></comment></comment></comment><comment><USER12> Here's a question for the Haskellers out there:

How does Haskell help you write less code? What mechanisms are in the language that allow you to write higher level abstractions (as compared to, say, Ruby or Python)?

How does Haskell help you to express concepts that are very difficult to express in other languages?

<comment><USER13> Haskell abstracts things at an even higher level than most programming languages. For example, the infamous monads are a way of abstracting out the details of how 'effectful' computations (i.e. computations that do something other than simply taking arguments and returning values) should work. Monads model effects like exceptions, mutable state, input/output, nondeterminism, and so forth, and by abstracting them into the same pattern, it allows you to write functions that work with _any_ effect in the same way. For example, if I have a list of operations which have effects and all have the same result type, I can sequence them together using the _sequence_ function, so for IO:

        sequence [putStrLn "foo", putStrLn "bar", putStrLn "baz"]

will print those three strings on their own lines. However, I can use the same function for Haskell's equivalent of null:

        sequence [Just 3, Just 8, Just 5] -- results in Just [3, 8, 5]
        sequence [Just 3, Nothing, Just 5] -- results in Nothing, because Nothing is
                                           -- propagated if it occurs

or for nondeterminism

        sequence [[1, 2], [3, 4], [5, 6]] -- results in every possible list whose first
                                          -- element is drawn from the first list, whose
                                          -- second element is drawn from the second
                                          -- list, and whose third element is drawn from
                                          -- the third list.

or for any other effect that Haskell has. A lot of learning Haskell has to do with looking at the abstractions Haskell offers (monads are only one; you also get things like arrows, functors, applicative functors, &c) and understand how you can phrase your problems in terms of them and consequently use Haskell's abstractly written functions to your favor. A great practical example here is parsing; parser combinators can be expressed as monads or as applicative functors, both of which make your parsing code very small and quite natural to read. For example, the following is a function to parse strings like "(552,864)" using the Parsec parser combinator library:

        parseDigit = oneOf ['0'..'9']
        parseInt = many parseDigit
        parsePairOfInts = do
            string "("
            p1 <- parseInt
            string ","
            p2 <- parseInt
            string ")"
            return (p1, p2)

<comment><USER14> Why can't you use monads in ruby? A monad is essentially just an interface, right?

The original question was about the _mechanisms_ , not the style or libraries.

I don't really know haskell, so correct me if I'm wrong.

<comment><USER6> Type-classes are _like_ interfaces, but not quite the same.

They allow return-type polymorphism, which ordinary OO interfaces do not. And the Monad type-class requires this feature.

Basically, when you call the "return" function in Haskell, (e.g: return 5) -- the code being called depends on the type of the result. The type of the result is determined from the context (by type-inference or rarely, type annotations). In Ruby or Python, there's no easy/direct way to encode something like "return" such that it works with any Monad instance.

<comment><USER14> Interesting. I see what you are saying, but could you provide an example (or a link to an example) for clarity? Preferably something not easily accomplished in ruby?

<comment><USER7> I found an article about return-type polymorphism. See [http://vpatryshev.blogspot.com/2010/01/dispatch-by-return- ty...](http://vpatryshev.blogspot.com/2010/01/dispatch-by-return-type-haskell- vs-java.html)

One thing is impossible, though: defining two methods that differ only in return type, something like

Most important point:

Something like

        int i = parse(String source);
        long l = parse(String source);
        boolean b = parse(String source);

is possible in Haskell, but not in Python, and barely imaginable in Java.

<comment><USER6> Elaboration:

      class Read r where
        read :: String -> Maybe r

Note that it's polymorphic on the type of the return _within_ the Maybe. It's very flexible, the polymorphic type can appear anywhere within the type signature.

Now you can write various functions that use "read" and they all remain return-type polymorphic. For example, you can write one that loops, requesting the user to repeat entry until parse-able data (of the wanted type) is given:

      repeatReadingUntilValid :: Read r => IO r
      repeatReadingUntilValid = do
        line <- getLine
        case read line of
          Nothing -> do
            putStrLn $ "Invalid input: " ++ show line
            repeatReadingUntilValid
          Just result ->
            return result

That's just a silly example, because read isn't that interesting.

Another example is QuickCheck, which uses type-classes to auto-generate fuzz- testers for functions.

For example:

      import Test.QuickCheck

      pretty :: MyType -> String
      pretty = .. pretty print my type here ..

      unpretty :: String -> MyType
      unpretty = .. parse the pretty printing of my type here ..

Now I can test that unpretty is indeed the inverse of pretty:

      quickCheck (\x -> unpretty (pretty x) == x)

(for every x, the unpretty of pretty of x equals x).

I can generalize this property to:

      isInverse f g x = f (g x) == x

And then use:

      quickCheck (isInverse unpretty pretty)

Similarly you can define:

      commutative f x y   = x `f` y == y `f` x
      associative f x y z = (x `f` y) `f` z ==
                            x `f` (y `f` z)
      transitive f x y z = x `f` y && y `f` z ==> x `f` z

Which makes an important type of unit testing a breeze.

The type system is saving us from writing code here.

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> > _Since most of my bugs in other languages stem from unwanted interactions > between pieces of code via side effects, this is kind of a big deal._

Is this really the case for most people? Most of my errors are syntax, pattern matching, not considering certain cases, unrefined logic, etc.

Creating external side effects such as writing to files or sockets is not that big of deal or as error prone, because after you learn that trick once, it behaves in the same way. The POSIX standard does not change as frequently as my own code :)

</comment><comment><USER16> How awful is enflock? (NB: Very)

<comment><USER17> Indeed. I refuse to read this. Haskell is probably awesome, but this site is clearly not. Time to get noscript running again...

</comment></comment><comment><USER18> Good illustration of why unreadable text colors are kinda lame.

<comment><USER19> Perfectly readable here. Although not knowing Haskell some of the syntax is a bit difficult to grok.

<comment><USER2> Haskell syntax is actually pretty straightforward, once you know what you're looking at. It's difficult at first blush because of the weird infix operator symbols ($, ., <> etc.) but once you get used to them there's nothing too scary.

That being said, why not post any problems you have here? I'm sure plenty of people would be happy to help explain Haskell's syntax, and no doubt more people than just you would benefit from that.

</comment></comment></comment><comment><USER20> I'm thoroughly convinced Haskell is the String Theory of programming. You may not be convinced by it, but you sure as hell have to be smart to grok it.

<comment><USER2> Arguments of this kind are both wrong and dangerous. Becoming a good Haskell programmer isn't easy, but then neither is becoming a good programmer _simpliciter_.

The language itself is conceptually novel compared to imperative languages, but the concepts themselves are neither difficult nor abstruse. Actually I find Haskell refreshingly simple; it's a lot like Lisp that way.

I'm sure you'll agree that it's unfortunate that so many people are put off by a subject's alleged difficulty, rather than encouraged by it. However, given that this is in fact the case, wouldn't it be better if we concentrated on saying how enjoyable, intellectually stimulating and useful learning certain things was rather than discouraging people from even having a go?

</comment></comment><comment><USER21> You convinced me to give it a try. I'd still be interested in an opposite view. Are there any non-ranty articles about the problems of the language?

<comment><USER13> A sibling comment mentioned that mutation is difficult; another prominent problem is that reasoning about time and space efficiency in Haskell is rather unintuitive. It's easy to learn a little bit about optimizing functional programs (e.g. through CPS-transforming your functions and taking advantage of tail-call optimizations), and then find your Haskell program even more slow and space-wasteful because it creates a huge number of thunks. (A "thunk" in this context is a zero-argument function whose sole purpose is to be evaluated later; in Haskell's case, to be evaluated when it's "needed" à la call-by- need.) On the other hand, laziness also means you can write apparently inefficient code that nevertheless performs incredibly well, e.g. constructing infinite data structures.

There are also both major and minor squabbles of various levels of importance (e.g. Haskell got :: and : mixed up, you can't have two records with the same field name, Bob Harper argues that laziness _itself_ is a mistake, various people would prefer abstractions other than monads for dealing with state) but I think Haskell's performance and Haskell's initial impedance with imperative programming are the big problems—at least, those are the big problems I hear people complaining about.

(Then again, I'm an enthusiastic Haskell person, so you probably should find someone who likes the language less to give you a better opinion.)

</comment></comment><comment><USER22> >most classes of bugs are caught at compile time

This is false, can we stop pretending that hindley-milner solved the Halting Problem?

<comment><USER6> You don't need to solve the halting problem to solve most classes of bugs.

<comment><USER22> Most? No.

Some, a few? Yes.

Also, stop trolling ##C with your Haskell stuff, nobody cares.

<comment><USER6> <http://ycombinator.com/newsguidelines.html>

<comment><USER22> I've been here much longer than you, don't hide behind the url.

<comment><USER23> I've been here longer than either of you and he's right. You're being needlessly abrasive.</comment></comment></comment></comment></comment></comment>


Lines Of Code - Dispelling The Myths - <AUTHOR> http://www.callingshotgun.net/geekery/lines-of-code-dispelling-the-myths/

<comment><USER2> So for startups, what is consider to be a good-sized project? Are we talking about thousands, tens of thousands, or hundreds of thousands lines of code?

<comment><USER3> I've been doing this for years.

The best metric I have for you is hours of work per dollar of value to the customer. Paul G makes an observation in one of his many essays about having customers call up with problems and being able to fix the problem immediately -- while the customer was on the phone. No muss, no fuss. That's direct value to the end-user in a minimal amount of time. That's what you want.

Somehow we always get into these "terseness of language" discussions. It reminds me of the old game show "Name that tune" in which contestants made wagers on how few notes they needed to name a popular song. Programmers are like that -- "I can write an entire TCP stack in just 3 lines of code!"

Something about this seems to miss the point, but what do I know? At any one point when programming on a modern operating system, I'm responsible for hundreds of thousands if not millions of lines of code. Hopefully 99.999% of that I never touch. But guess what? Those three-line-code guys are responsible for just as much, it's all just a matter of how you want to count things.

So focus on time-to-value, not lines of code. You can add-in time-to-unique- value, which is the time it takes you to provide unique value to your customers. This is a little more interesting, but not all software projects have to be unique. In fact, some guy right now is probably writing the next million-dollar app and the code base probably is something like printf("Hello World");

</comment></comment><comment><USER4> I think cyclomatic complexity might be what he's looking for.</comment>


Nondeterministic programming - <AUTHOR> http://www.ccs.neu.edu/home/dorai/t-y-scheme/t-y-scheme-Z-H-16.html#node_chap_14

<comment><USER2> As a practical use, a while ago I "resolved" the Einstein's Riddle using this operator: [http://ticsblog.com/2010/12/07/solving-einsteins-riddle- usin...](http://ticsblog.com/2010/12/07/solving-einsteins-riddle-using- nondeterministic-computing)

</comment><comment><USER3> Nice, but I'm not sure I get it. There is no such thing as a _concrete_ non- deterministic operation. How does the expression evaluate? If all the parameters are evaluated in order, there's nothing non-deterministic about it.

<comment><USER4> There is no known real world non-deterministic Turing Machine. We could only simulate it using a deterministic Turing Machine (like a common computer).

Using this operator make the code really clear (IMHO) and I suppose it is its purpose.

Furthermore, if one day we discover an hardware able to be a non-deterministic Turing machine is discovered, the code will work.

[1]: I doubt such an hardware exists. But you could look about quantum computer for something close to what is a non-deterministic Turing machine.

<comment><USER5> Navia Systems is designing nondeterministic hardware.

<http://www.naviasystems.com/>

<comment><USER6> Maybe I'm missing something, but their web site appears to discuss probabilistic procedures, which is not nondeterminism in the Turing machine sense.

<comment><USER5> No you're right. I missed the "preferring those choices that cause the program to converge meaningfully" part. Sorry. Disregard.

</comment></comment></comment></comment></comment><comment><USER7> Isn't this just the prolog-ism of backtracking imported into other languages? Especially as long you just evaluate the options in order?

<comment><USER8> The article mentions that it's related, but somewhat simpler because it's "only" backtracking, versus Prolog's full logic programming:

 _The embedding recalls the continuation strategies used to implement Prolog- style logic programming, but is sparer because the operator provided is much like a Scheme boolean operator, does not require special contexts for its use, and does not rely on linguistic infrastructure such as logic variables and unification._

</comment></comment><comment><USER9> I don't understand the point of the solutions - why is a non-deterministic output of a function better than iterating over a list? If anything, it would be worse.

</comment><comment><USER10> In arc: <http://arclanguage.org/item?id=6669>

</comment><comment><USER11> In ruby: <http://www.randomhacks.net/articles/2005/10/11/amb-operator>

<comment><AUTHOR> Cool, I was wondering if it could be implemented in ruby; it's a shame that callcc isn't present anymore in ruby 1.9

<comment><AUTHOR> I was wrong, ruby 1.9 has callcc back since 2009, you have to `require 'continuation'` now, though.

</comment></comment></comment><comment><USER12> SICP covers this too: [http://mitpress.mit.edu/sicp/full-text/book/book- Z-H-28.html...](http://mitpress.mit.edu/sicp/full-text/book/book- Z-H-28.html#%_sec_4.3)

The references are better than the posted link.

I have found a couple of uses for this in the past and deparately tried to port the examples to C# (unsuccessfully).

<comment><USER13> I agree. I had to use NDP for solving a few CSPs recently. SICP was a godsend.</comment></comment>


Reducing the HN overload ... - <AUTHOR> http://jeffmiller.github.com/2010/07/23/a-cure-for-hacker-news-overload

<comment><USER2> Normally, I like watching the RSS because I see everything, and I find things that are interesting that never get voted up high enough to hit those feeds.

However, lately, there's been a ton of crap that has nothing to do with hacking or startups. That makes it really tempting to start using those feeds and let others do the work of weeding out the crap.

<comment><AUTHOR> My problem is that the items I'm most interested in never really get the upvotes to pass the thresholds, so I'm looking to train a Bayesian filter to match my interests, and rank items based on that.

I'm sure I'm not the only one.

<comment><USER3> But isn't that the point of a social news website that the community (whose members should of course have similar preferences as you have) does the filtering for you by upvoting interesting articles. Otherwise I could run such a filter over a collections of rss feed aggregators, couldn't I? By using a social news website, users IMHO implicitely claim that community-based filtering works better than any algorithm could, don't they?

<comment><AUTHOR> Perhaps you miss my point. I said:

      > ... the items I'm most interested in never
      > really get the upvotes to pass the thresholds,

I've found dozens of items that I'm interested in and which never got more than one or two upvotes. They never made it to the front page. Often they've been resubmitted, the timing has been right, or the title has been changed, and suddenly it's got tens, on some cases hundred of upvotes.

There are many, many items that slip through, unnoticed, unloved, that should get upvotes, but due to poor timing or poor titles don't.

I want a system that helps me catch them.

</comment></comment></comment></comment><comment><USER4> "It's also terribly inefficient to repeatedly check HN, because you have to rescan stories you've already seen."

That, and the small font.

</comment><comment><USER5> I subscribe to the RSS feed for cperciva's Hacker News Daily:

<http://www.daemonology.net/hn-daily/></comment>


Ask HN: Securing My Phone Number - <AUTHOR> Phone numbers are becoming ubiquitous two factor authentication channels (or one factor, because some services allow a reset via SMS) for critical services like email addresses, domain names, and financial accounts.
Are there any best practices to secure my phone number against malevolent actors who want to hijack it or intercept its incoming SMS/calls/voicemails? Are there any carriers that are better or worse than average at preventing these attacks?
I live in the US but feel free to share about other international carriers as well. <comment><USER2> I'd recommend ringing your provider and ensuring that you have some form of password on your account. Most providers should allow this and it will make sure that whoever is calling regarding your account will have to mention this password.

This doesn't fully secure your account as some level of social engineering can always be used to circumvent this. This has become apparent in the news when members of the hacking group Lizard Squad apparently pretended to be store employees of the company calling on behalf of the customer.

Securing your phone number is not an easy task as the infrastructure behind providers isn't as secure as it needs to be.</comment>


Upgrade your Amiga PC to HDMI with this FPGA-based video time machine - <AUTHOR> https://forums.xilinx.com/t5/Xcell-Daily-Blog/Upgrade-your-Amiga-PC-to-HDMI-with-this-FPGA-based-video-time/ba-p/736889 <comment><USER2> While not on home machines, high-resolution displays were fairly common on UNIX machines with the same processor as the Amiga. The 68000 was a fairly impressive chip.

Still, this is pretty amazing - the Amiga was very tied to NTSC timings, one of the reasons higher resolution only appeared in later models.</comment>


Ask YC News: Why doesn't Google provide a useful Adsense API? - <AUTHOR>

By useful, I mean an API that lets users specify the content to provide contextual ads for? <comment><USER2> The page you put the ad on is the content you provide.</comment>


Apple introduces Apple Arcade: a game subscription for mobile, desktop and TV - <AUTHOR> https://www.apple.com/newsroom/2019/03/apple-introduces-apple-arcade-the-worlds-first-game-subscription-service-for-mobile-desktop-and-the-living-room/ <comment> sahin-boydas dup: [https://news.ycombinator.com/item?id=19484808](https://news.ycombinator.com/item?id=19484808)

<comment><AUTHOR> This is a first-party source, when that is just a report from the livestream

<comment> sahin-boydas It is totally ok to post sources under the first submission in HN [https://news.ycombinator.com/item?id=19484808](https://news.ycombinator.com/item?id=19484808)

</comment></comment></comment><comment><AUTHOR> Original title is "Apple introduces Apple Arcade — the world's first game subscription service for mobile, desktop and the living room", but its too long for HN.</comment>


Show HN: Online directory for finding best resources through curated collections - <AUTHOR> https://www.jooseph.com <comment><AUTHOR> Hey Everyone,

We're Firat and Tolga, building this online directory. We are frustrated by the time wasting content out there and most of the search engines are optimized for that. So, normally we would open thousands of tabs and spend hours to find great content. But we think maybe with a good community who curates best resources and a mechanism of ranking can solve this.

What can you do with Jooseph?

\- Follow high-quality human curated collections to learn topics.

\- Curate and share collections for others, or simply curate private collections for your read later list.

\- Search content that is curated and ranked by community. Filter by their types (video/ text / audio)

\- Like/Dislike content for ranking it.

\- Save content to your library.

We're building extension, so you can easily like/dislike or save contents from your browsers and create collections for organizing your researches. But we need some early users to help us, would you be interested in our beta group to build Jooseph together.</comment>


Keep the score online - <AUTHOR> http://keepthescore.co/ <comment><AUTHOR> This is a Python flask app for creating a online scoreboard and sharing it with friends.</comment>


The UBI already exists for the 1% - <AUTHOR> https://medium.com/@MattBruenig/the-ubi-already-exists-for-the-1-d3a49fad0580 <comment><USER2> "In 2015, according to PSZ, the richest 1% of people in America received 20.2% of all the income in the nation. Ten points of that 20.2% came from equity income, net interest, housing rents, and the capital component of mixed income. "

How can you possibly equate this to UBI? Everything listed here is money earned through risk/work. UBI is a free check from the government.

<comment><USER3> The article equates the difference between the capital gains and income taxes as UBI for rich people.

</comment></comment><comment><USER4> It's somewhat of a stretch to compare capital income and UBI. The people receiving capital income today are reaping the benefits of their prior income that they had paid taxes for, and chosen to save instead of spend. This is qualitatively different from someone getting a no-strings-attached payment from the government.

I'm all in favor of UBI, but this doesn't sound like a valid argument.

</comment><comment><USER5> Saying that rich people who earn money from people paying rent on houses/apartments that they own or investments paying back over time, is like saying that a farmer who planted the crop earlier in the year is "getting it for free" later.. I would agree if the UBI was equated to "my dad is super rich and I don't have to worry about money...". so those rich kids with no cares in the world, how do they usually turn out?

</comment><comment><USER6> I've met a number of wealthy people in my life who never had to work and I wouldn't wish that life upon my enemies. I don't know how else to phrase it but having to work builds character.

That being said, I'm a fan of the idea behind a UBI.

<comment><USER7> I wonder how much selection bias is embedded in this (common) sentiment. It takes a certain type of character flaw to want to flaunt your money. I'd imagine there's a silent majority among wealthy heirs that just never bring it up, try to blend in, and are perfectly well-adjusted.

<comment><USER8> Very true. I have coworkers who I only found out years later were wealthy through family money. They worked as hard as anyone else, and no one had any reason to know they were wealthy.

I'd love to see studies on this, though.

<comment><USER7> Just did some googling on this. For the most part, there doesn't seem to be much research on inheritance & personality disorders, which is odd because 'does money make us happy' is one of the biggest questions in sociology. I did find this paper however, which is full of tangential information:

[https://www0.gsb.columbia.edu/mygsb/faculty/research/pubfile...](https://www0.gsb.columbia.edu/mygsb/faculty/research/pubfiles/2669/Too%20much%20not%20enough.pdf)

</comment></comment></comment></comment><comment><USER9> Discussion from four days ago: [https://news.ycombinator.com/item?id=13303420](https://news.ycombinator.com/item?id=13303420)

</comment><comment><USER10> _" The universal basic income — a cash payment made to every individual in the country — has been critiqued recently by some commentators. Among other things, these writers dislike the fact that a UBI would deliver individuals income in a way that is divorced from working. Such an income arrangement would, it is argued, lead to meaninglessness, social dysfunction, and resentment. One obvious problem with this analysis is that passive income — income divorced from work — already exists. It is called capital income. It flows out to various individuals in society in the form of interest, rents, and dividends. According to Piketty, Saez, and Zucman (PSZ), around 30% of all the income produced in the nation is paid out as capital income. "_

</comment><comment><USER11> Please don't overlook the more valid point: Simply uniformly distributing a portion of the passive interest on the wealth of the top 1% globally would suffice to eliminate the most brutal poverty worldwide.</comment>


Why robots will soon be picking soft fruits and salad - <AUTHOR> https://edition.cnn.com/2019/09/04/business/robot-farmers/index.html <comment><AUTHOR> _Vegebot is the first robot that can identify and harvest iceberg lettuce — bringing hope to farmers that one of the most demanding crops for human pickers could finally be automated._</comment>


A Pair Of Dice Which Never Roll 7 - <AUTHOR> http://www.chiark.greenend.org.uk/~sgtatham/dice/

<comment><USER2> I don't like the "after a couple of rounds, 7s are allowed". It undermines part of the randomness. Our 'house game' simply had the problem that the robber arrives too quickly. So we made the rule that the robber can't advance until Player 1 is rolling for the third time. From that point forward, the robber advances. This gives the advantage of allowing more development, but without obviating the 'randomness' of robber landing.

Also: Free settlers-like multiplayer: <http://games.asobrain.com/>

</comment><comment><USER3> With three d10s and one d6 you could do this: d10 a: 6,6,6,6,6,8,8,8,8,8 d10 b: 4,4,4,10,10,10,3,3,11,11 d10 c: 5,5,5,5,9,9,9,9,1,12 d6: d10a,d10a,d10b,d10b,d10c,d10c

One roll, no relabeling. d6 tells which d10 to pull your number from.

</comment><comment><USER4> This is interesting, but this is a bit more hackish than simply re-rolling the dice. Most people would just reroll.

My personal opinion is that dice-hacks should be done to reduce the amount of thinking necessary, not increase it while producing a slightly better result.

I designed a role-playing system once based on the median of 5 d10s. That worked pretty well. It generates a similar bell-curve distribution to the one you get by adding dice, but doesn't require mental arithmetic with large numbers (e.g. 5d10 involves a range of 5-50). I think m5d10 is better than 5d10 because it's easy to develop a feel for "difficulty 7" vs. "difficulty 8"... whereas if the numbers are 37 vs. 38, it gets to the point where 1 point doesn't mean much, and the numbers seem completely made up (which, of course, they are, but they shouldn't _seem_ so).

<comment><USER5> "This is interesting, but this is a bit more hackish than simply re-rolling the dice. Most people would just reroll."

It's the point...

<comment><USER6> 1\. Rerolling the dice is still a faster (and thus better) way of solving this problem.

2\. He could've used the time he spent writing that article to release a free dice rolling iPhone app that implements his special Settlers roll. It could even keep track of when to stop rerolling sevens. There are several similar apps already in the store. It would be trivial to write one that auto-rerolled sevens. This is something that might actually be of use to people, though, then again, maybe not.

To me it looks like the author wasted his time.

<comment><USER7> _1\. Rerolling the dice is still a faster (and thus better) way of solving this problem._

Ah, but it's not guaranteed to terminate.

<comment><USER8> Frankly, if I discovered that a pair of die were summing to seven, it would be more fun to roll over and over than actually playing a game.</comment></comment></comment></comment></comment>


Ask YC: Best Resource for Configuring LAMP for a Windows Geek - <AUTHOR>

So here's the deal: I've got a new project that requires some database and mostly static web pages. My plan is to use VMWare and LAMP environment for the server-side because of scaling and licensing issues.<p> I'm a MS geek, though. Where's a good resource to get started with something like this? All I want to do is to connect to MySQL from a windows client, set up the IP of the box, and copy some files over to the proper directory for them to appear on the web. Seems like that shouldn't be a lot to do. Hey -- how hard could it be, anyway? <comment><USER2> I hate to say it, but it's going to be a bit of a long, hard road. Windows and Linux are very, very different animals. And, if you're cominig from a no command line, GUI filled world, it's going to be a very steep learning curve for you.

If you're not familiar with shell scripting, it will take some time, just to learn your way around the command line. Then, you have to figure out how to install and configure Apache. That's difficult. Then, installing and configuring MySQL... Again, difficult and time consuming. Then, you're talking about installing Perl/Python/PHP scripts and having them talk to the web server, that's an additional learning curve.

I'm thinking that a very knowledgable Windows geek who has set up IIS before, and understands web dev on a Windows box, but without any linux experience whatsoever is probably looking at a couple of months of dedicated learning to get all the technologies to work together well. And then, security is an issue.

I mean, just learning how to edit a config file over the comand line using Emacs or Vi could take a week.

If you're familiar with Windows, try using WAMP on Server 2003. You can ususally get Windows 2003 hosting for a $10-20 premium over Linux hosting. There will still be a learning curve, but it will be a lot shorter.

That being said, any forray into Linux land is a good one. It teaches you a lot of really good things about how computers and networks work that you just dont' understand from a Windows only world. And, knowing *nix is a skill that won't be obsolete the next product cycle. Unix is well worth learning, but it is probably not the best option if you want to launch your startup next week.

<comment><USER3> Heh, from your commend I understand that you find windows obsolete the next product cycle :))

</comment></comment><comment><USER4> (an honest question) -

For the people recommending WAMP setups, I'm really curious why the typical dynamic startup would even _want_ to use Windows. The license costs and hassles alone don't seem worthwhile (to me), when you're really utilizing very little of the OS, and more relying on the components you load (Apache, MySql, etc).

<comment><USER5> Windows Server licenses through an ISV program are not that expensive. Obviously Microsoft knows Linux is a big competitor. More costly are other server licenses like SQL Server and Exchange.

One reason to use Windows could be because you like .NET, Silverlight, etc. Another reason would be because you know Windows well. If you develop on Windows it may be easier to also test and deploy on Windows and administer the servers. It is easy to set up an Ubuntu server in a few hours and use apt-get for updates, but an internet facing server will probably not be very secure if you or a coworker does not have a few years of Linux experience.

In the end an OS is just a tool. I would say pick the one you are most experienced with or the one on which your chosen techology works best.

</comment></comment><comment><USER6> [http://www.howtoforge.com/installing_a_lamp_system_with_fedo...](http://www.howtoforge.com/installing_a_lamp_system_with_fedora_core_6)

</comment><comment><USER3> Why don't you use WAMP instead of LAMP ? <http://www.wampserver.com/en/>

<comment><AUTHOR> I thought about that.

I'm not opposed to going with WAMP. It's just out of everything that's stuffed into Windows, I only need a very small subset. With an imaged LAMP, I can copy and scale very easily. I guess I'd rather have 20 boxes whose CPUs were only the doing the few things I care about than all the other stuff that goes with Windows -- patches, updates, Active Directory, Kerebos, etc.

But no, I'm not ruling WAMP out. I was curious to see what kind of learning curve we're talking about moving from a windows to a LAMP environment. A couple of months ago, I downloaded a LAMP vritual appliance, but didn't have a good grasp on how to do even some very simple things.

</comment></comment><comment><USER7> For windows - <http://www.apachefriends.org/en/xampp.html>

I recommend linux though. :)

</comment><comment><USER8> Which P?

For php lookup Ed Tanguay.</comment>


Life on the tiny island of Migingo – in pictures (2018) - <AUTHOR> https://www.theguardian.com/artanddesign/gallery/2018/oct/24/life-on-the-tiny-island-of-migingo-in-pictures <comment><USER2> This illustrates a phenomenon that I find interesting - how we've come to believe that our personal identities are tied somehow to our nationalities.</comment>


Jeff Jarvis on the Need for a Twitter Witness Tag - <AUTHOR> http://thefastertimes.com/mediaandtech/2011/03/14/japan-and-twitter-we-need-a-witness-tag/

<comment><USER2> I think this is a great idea.

Over the last few weeks, I had been interviewing at Twitter for a position - which I didnt get :( -- and just this last Monday, through the couple of rounds of interviews I went through, I had the opportunity to share this with the team that I met with.

I told them what I thought of twitter as a service, that it operates as a Sixth Sense - That Twitter can instantly and effectively route global attention. Something will happen - and twitter will be able to drive the attention of millions to deeper dive information regarding that event.

This event illustrates just that, but as is being pointed out here - there is another layer of refinement of the service users could benefit from; relationship to the topic.

I had mentioned that Twitter does a superb job of routing our attention to an event - be it vids, articles, comments etc.. and that while it doesnt (yet) host that content, the utility it provides is extremely valuable.

The thing about it is that, outside of the inane status updates that happen in calmer times, the view it gives into global awareness is stunning.</comment>


Evolutionary Advantages of an Addictive Personality - <AUTHOR> https://blogs.scientificamerican.com/observations/the-evolutionary-advantages-of-an-addictive-personality/ <comment><USER2> Just an anecdote, so feel free to ignore. I have a family member who is a drug addict. It seems obvious to me that the same part of their brain which is responsible for their addiction is also responsible for them being a pretty amazing athlete. They would practice sports obsessively, chasing those tiny little hits each time they made a basket or caught a ball, in a way that was categorically unlike every other kid I ever knew. I'm not saying the addiction mechanism works like that for everybody else, but it's pretty clear to me that this person would do extremely well in an environment without modern drugs.

</comment><comment><USER3> If anyone is unfamiliar with the work of Gabor Mate, he basically says childhood trauma is the source of our addictions. Listen to his talk on Tim Ferris's podcast.

<comment><USER2> Susceptibility to addiction is highly heritable (around 50% of variation is due to genetic factors according to this[0]).

[0]: [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3506170/](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3506170/)

</comment></comment><comment><USER4> How does sensation seeking and novelty have to do with addiction? Isnt addiction the opposite? Addiction is the seeking of the same experience over and over again.

<comment><USER2> Yeah, but you have to decide that you're going to pop that first pill, snort that first line, inject that first syringe, etc.

<comment><USER4> When it comes to addiction itself. There are people who can take heroin once and not be addicted while others who are addicted on the first try. The article is unclear about whether "addiction" correlates with novelty or whether novelty is actually correlating with trying out new drugs.

</comment></comment></comment><comment><USER5> Mmm, yes, my confirmation bias.

</comment><comment><USER6> This article was needlessly flowery.</comment>


Ask HN: What's your reason for doing a startup? Money/Independance/Technology? - <AUTHOR>

What moves you to bootstrap your starup up?
Is it money?
The feeling of working for yourself? Want to shape the world? Prove yourself you did it? Impress others? Other reason?
Seriously, at several points in my life, the reasons to bootstrap a startup have been different, and would like to know what your reason is.
Thanks a lot <comment><USER2> Personally I'm sick and tired of working on "charge of the light brigade" projects that are run by people who've got no understanding of technology, no understanding of target markets and that are doomed to fail from square one.

Honestly I'd rather have a secure job with benefits and a fat paycheck, but that doesn't seem to actually exist anymore, so I'd rather hitch my star to something I believe in. The way I see it, "playing it safe" means that I'll fail 100% of the time -- with my startup it's possible I'll succeed.

</comment><comment><USER3> I quit because I wanted independence and I felt I couldn't learn new things in my previous job. But the perspective of making money helps me focus and continue working hard in my startup.</comment>


The Gervais Principle, or the Office According to "The Office" - <AUTHOR> https://www.ribbonfarm.com/2009/10/07/the-gervais-principle-or-the-office-according-to-the-office/ <comment><USER2> The hierarchy chart shown unfortunately sums up government structure and society as well :-(</comment>


"Unfocus" on foc.us: commercial tDCS headset impairs working memory - <AUTHOR> http://www.ncbi.nlm.nih.gov/pubmed/26280313 <comment><USER2> tDCS is a technology that seems so absurdly simple it's amazing that it works at all. Given the prior studies showing various effects on cognition and working memory, I don't think this one negates all of that, but it does suggest there's more nuance to getting it right that we presently appreciate.

Location, surface area, intensity, polarity, individual anatomy... we have a lot to learn before I would be ready to attach one of these to my head.</comment>


Shatner vs. Wheaton: Star Trek Stars Narrate Mars Rover's 7 Minutes of Terror - <AUTHOR> http://www.wired.com/wiredscience/2012/07/shatner-wheaton-msl/

<comment><USER2> This line would've been much better in a traditional Shatner voice:

"But! Which Will. Will win!? The competition!"</comment>


Elon Musk says Tesla is "vastly ahead" on self-driving - <AUTHOR> https://arstechnica.com/?p=1490473 <comment><USER2> Meanwhile, Waymo's CEO says they're not even close to have all weather autonomous cars. [0]

Highway auto speed matching, emergency braking, lane changing, ok yeah, it's almost completely there if you forget about the few crashes. But all weather driving outside of highways won't be there in 2 years, not for tesla, not for waymo.

[0] [https://www.cnet.com/news/alphabet-google-waymo-ceo-john- kra...](https://www.cnet.com/news/alphabet-google-waymo-ceo-john-krafcik- autonomous-cars-wont-ever-be-able-to-drive-in-all-conditions/)</comment>


OnePlus Uses A Sexist Contest To Sell Their New Phone - <AUTHOR> http://techcrunch.com/2014/08/12/oneplus-tries-to-prove-chivalry-isnt-dead-by-launching-online-beauty-contest-for-ladies/

<comment><USER2> Where is offense and/or sexism in that?</comment>


People Don't Hate Change - They Hate You Trying to Change Them - <AUTHOR> http://www.fistfuloftalent.com/2009/04/people-dont-hate-change-they-hate-you-trying-to-change-them.html

<comment><USER2> This is not just true of the corporate world; it's also true of relationships. People are constantly changing, trying to better themselves or their lives or their jobs.

People embrace change -- as long as it's the right type of change. It needs to be change that they own, change that they think/feel is productive, change that they view as a positive.

If you find people resistant to changes you're trying to impose, chances are, it's not "change" they're resisting, but your particular choices. Identifying a common goal and then allowing the other person to come up with a solution is often a far better approach than declaring a solution someone else must implement.

</comment><comment><USER3> Basically, people aren't slaves. If you want a significant change in their daily lives, involve them rather than dictate to them. I'd like to say this is so well known and obvious that it's absurd to write an article on it, but seeing the corporate behavior and especially HR that I do, it's not.</comment>


Paul Krugman, Nobel Luddite - <AUTHOR> https://medium.com/algebraix-data/paul-krugman-nobel-luddite-e172589b8b9f <comment><USER2> Questioning the value of a thing that has yet to prove it has a practical function doesn't make one a Luddite (if we assume being a Luddite is a bad thing itself).

</comment><comment><USER3> There are better arguments for trashing on Krugman than his opinion on Bitcoin, which means this as an attempt to ride the Krugman-trashing train to defend Bitcoin.

>If he surfed a few cryptocurrency resources he would find coherent explanations of how blockchains work in general and how Bitcoin works in particular. While it might require a little intellectual effort, it is well within the capabilities of the average Nobel laureate.

There is more to understand about cryptocurrency than the technical implementation details.

Furthermore, the technical implementation is so complicated there is no way to avoid adding yet another class of people responsible for keeping some part of the financial system running.

If anything, by saying "nobody really understands [bitcoin]" he's letting bitcoin off easy.

</comment><comment><USER4> Paul Krugman is the classic example of how achieving awesomeness in one narrow field does not make you automatically even average in other fields. Those who actually study economics including those I known to have worked with Bhagvati often told me that Krugman was nothing short of genius in his field. But when you look at Krugman writing op-eds you realise that he is what Taleb would call "Intellectual Yet Idiot". Something that HN itself has in plenty.

In general there are people who think they are smart and lament that only if they had the power to fix things properly they would help the brainless masses. Krugman is not the only one though representative of that class.

<comment><USER5> Number of mainstream pundits opposing Iraq War: 1

Paul Krugman

<comment><USER4> A broken clock too is correct twice a day.

Clearly you have not been reading enough though. Almost all Libertarians have been opposed to Iraq war from day 1.</comment></comment></comment>


Rev=canonical: url shortening that doesn't hurt the internet - <AUTHOR> http://revcanonical.appspot.com/ <comment><USER2> There's already a rel=canonical element supported by the major search engines:

[http://ysearchblog.com/2009/02/12/fighting-duplication- addin...](http://ysearchblog.com/2009/02/12/fighting-duplication-adding-more- arrows-to-your-quiver/)</comment>


Suicide Bomibng or Drone, for it's the same, a Pakistani got killed - <AUTHOR> http://pakistanbodycount.org/ <comment><USER2> That's a really powerful way to put it. I doubt this will make the front page, but thanks for posting

<comment><AUTHOR> I hope it does nonetheless for the data if not the message.</comment></comment>


A house designed like a web application - <AUTHOR> http://davidgalbraith.org/essay/use-case-study-house-1-a-house-designed-like-a-web-application/2723/

<comment><USER2> Here in southwestern Europe most people live in apartment buildings. Their design is usually guided by cost concerns, developed and approved by people who never set foot in them. As a result, most of us end up living in apartments which don't really work. Mine has a niche for the washing machine but nowhere to dry the laundry, for instance.

Reading the op's post, I wonder if there's room (excuse the pun) for hackers to disrupt the house construction market with affordable, highly functional units that make their tenants' lives better in a much more tangible way than another photo sharing app.

<comment><USER3> > Mine has a niche for the washing machine but nowhere to dry the laundry, for > instance.

Are you sure it's not meant for one of these? <http://i.imgur.com/e4sMH.jpg>

</comment></comment><comment><USER4> Feels like it needs a conclusion - if the method of designing websites doesn't work well for architecture, then what happens when you try and design a house like a website: what works surprisingly well, what leads to a less-than- optimal house or one that just feels wrong, etc? Does this demonstrate the author's original theory of the architecture flow of work being better, or does the beautiful house designed at the end of the article suggest that different workflows can still lead to a good product?

</comment><comment><USER5> A diagram demonstrating a series of functional/spatial relationships is the most distant thing from design in architecture. Although the relationships are important and may need to be maintained for the project, they rarely map literally into the projects actual physical embodiment.

Architecture is an utterly holistic process that unifies physical structure, conceptual structure, aesthetics, finishes, functional programming (space planning), user experience into a physical entity that can be deciphered by its users. Designing a house "like a web application" addresses only one tiny part of this process. Maybe the author intended this as a critique of the process of designing a web app (I'm not sure, his conclusion was very brief) being too limited in its scope.

</comment><comment><USER6> Reminds me of Christopher Alexander's book 'A Pattern Language' where he explains exactly this.

I even think the programmers of 'The Sims' and others used it. Sometimes it's also called Object-Oriented Design.

</comment><comment><USER7> How is this better than standard architectural programming techniques?

</comment><comment><USER8> Cool living room!

</comment><comment><USER9> Hah, I don't know if eat/play really belongs in the hub. I have little time for either, maybe i'm doing it all wrong?

Lol.</comment>


India's $10 Laptop Sounds Like a Bad Joke  - <AUTHOR> http://www.pcworld.com/article/158871/indias_10_laptop_sounds_like_a_bad_joke.html

<comment><USER2> With a new pc windows 'costs' something like 30 bucks, that doesn't mean that's what it 'cost' to produce. Now with software that's a lot easier than with hardware since the actual costs involved in creating another copy are substantially smaller.

But both of these examples are subsidized, a similar copy of windows at retail goes for a lot more and nobody bats an eye at that.

I'm reading this whole $10 laptop thing as a 'cost to buyer', including the subsidies, not a 'cost to manufacture'.

The cost of the parts (kb, display, cpu, memory, battery and circuitry) do not make it possible at any economy of scale to beat the roughly $100 mark, so it's pointless to try to interpret this as the 'manufacturing cost'.</comment>


Shadowrun Returns: an old-school turn-based RPG on Kickstarter - <AUTHOR> http://www.kickstarter.com/projects/1613260297/shadowrun-returns <comment><USER2> What I find most interesting about this Kickstarter trend is that it is proving game publishing companies wrong. Publishers think that it isn't worth the money/time to build games like this. They want the next Angry Birds/Modern Warfare, full of DLC upgrades, in-app purchasing and facebook spam with the core gaming experience being secondary at best.

While the investors/publishers don't think its worth it monetarily, users are demanding higher quality games and putting their money where their mouth is.

Its also a huge shift. Instead of guessing what gamers might want, putting money in, and seeing how the game does- this enables developers to get their idea fully vetted monetarily and demand-wise upfront, then take the time to develop the game.

<comment><USER3> _They want the next Angry Birds/Modern Warfare, full of DLC upgrades_

I chuckled at this as one of the kickstarter levels on this project gets you enhanced abilities.

Really, though, does everything have to be so binary? Isn't HN above this "stereotype the worst of the worst and cast it as the only alternative" false dichotomy?

There are plenty of incredible games that publishers have supported. And in this case these guys are claiming that they're going to create a PC and a Mac version for $400,000? Really? Most "real" game cost many millions of dollars to bring to fruition.

<comment><USER4> $400,000 seems like a reasonable amount to make a game. Maybe not a super polished AAA game, but it seems they are being ruthless about cutting features to keep it in budget.

for $400,000 you could easily retain 4 people to work on it full time for a year.

</comment></comment></comment><comment><USER5> I'm wondering if a good idea for a startup would be to take the Kickstarter model and flip it backwards. Fans propose projects they would like to fund, others fund it, then the respective rights owners see this interest and receive the money for the project.

There is a downside to this, which is the respective author might not be motivated anymore for the project and thus would do a poor job. Or worse, the company owning the rights to the projects, may decide it's not worth selling it back to the original author and therefore create their own version that's not up to par with the author's vision. Perhaps this could be avoided by specifically targeting the original author so that only s/he could receive the funding.

But ultimately, I guess the problem is that if it's proven there's a huge interest in a project, then the current rights owner may be more reluctant to give up the rights or only at a much higher cost.

</comment><comment><USER6> I am glad that more developers are deciding to do this and putting more control into the hands of their consumers.

The biggest benefit to the developer here is that they have paid for initial development up front AND they get to sell this game on Steam and other market places once it releases.

Even with a moderate PR push from any one of these companies if they sell 100K copies at 10 dollars a piece (or even less) they have come out WAY ahead on this project.

Obviously a big publisher like Activision or EA is going to scoff at something like a 10 Million dollar profit when they need to fund the rest of their operations + split that revenue with the developer. They take risks but only when they know the chances of meeting their return percentage is higher than a certain threshold.

What was the last game you can remember from a big publisher that took a huge risk?

</comment><comment><USER7> I don't understand what exactly they are proposing: a new computer game? The remake of an existing computer game? Or a reprint of the pen & paper RPG?

<comment><USER4> I think it will be a brand new computer game based on an existing pen & paper RPG.

According to the video other games were made based on the same RPG (I never played any of them) but the video hints that these were not so popular with the "true" fans of the original RPG and this game aims to right those wrongs.

At least that's the impression I got.

<comment><USER8> In my experience people like the Shadowrun game on Sega Genesis (it's one of my personal favorites actually), but not so much the Super Nintendo one. And the recent Shadowrun first-person shooter borrowed the Shadowrun branding without much of its essence, angering people who were expecting a deeper Shadowrun experience.

<comment><USER9> I actually really enjoyed the Super Nintendo version and I was too young (at that time) to try the Sega Genesis version. Anyhow, I've decided to pledge $60, for the game, the t-shirt and the docwagon.

</comment></comment></comment></comment><comment><USER10> Shadowrun is such a great universe, that mixture of classic fantasy elements like elfs, orcs, magic with cyberpunk ala neuromancer really hit a nerve.

wonder why there never was a movie or tv series in such a setting, seems way cooler than vampires.

kickstarter seems to become the ycombinator for gaming, which is awesome in its own. will be interesting if they'll ever compete.

</comment><comment><USER11> It slightly irks me they moved from "Linux support is definitely on the table too!" to "a Linux version [...] beyond the scope of the project." But not quite as much as their move to add more technical content when they reach one million, rather than the expansion into GNU+Linux support.

I do however understand their reasoning. Their cold, realistic and undoubtedly true reasoning.

</comment><comment><USER12> I still play the Shadowrun pencil and paper game weekly with a group of friends. I will definitely support this kickstarter.

</comment><comment><USER13> This morning's update talks about the interface and UI, and they describe it as "X-Com like"...

So excited..

No Linux or multiplayer in the first version though.. But I'd rather have a solid and detailed core product, and get MP in v2, if v1 works out..

<comment><USER4> There doesn't seem to be mention on a Linux version at all, rather just a Mac version.

I have to wonder, if you create a Mac version of a game how difficult would it be to port it to Linux?

I understand that games designed specifically around Windows (and therefor DirectX) are going to be a pain to port over to a platform without DirectX.

Surely though Mac versions of games are all based on OpenGL and most Linux distributions have OpenGL support too (as well as both being Unix type OSes) so surely the port is not that difficult?

It almost seems justified to have some project that aims to make it easy to port Mac games to Linux, if that was the case then you would see a massive increase in the number of Linux games available.

<comment><USER14> They are using Moai (getmoai.com) which is a cross-platform LUA based open- source game engine. It outputs to Android, iOS and Chrome. From what i gather you can develop+test games on Mac or PC but it doesnt compile to them much more so for Linux. The Chrome part may play in linux but not so sure about that.

<comment><USER4> Interesting, I had a quick look at the moai docs and the library mostly looks like a wrapper for OpenGL and it already targets android which has a Linux kernel.

</comment></comment></comment></comment><comment><USER14> Wow! a bunch of people put in $10,000...

<comment><USER4> It wouldn't surprise me if that was the developers themselves and that was the money they used to buy their rights back.

<comment><USER15> That doesn't make any sense. They're going to claim their own $10,000 slots and pay Kickstarter their cut on their own money?

<comment><USER16> By the way - the cut appears to be 5%.

<comment><USER17> Plus the payment processor's cut. Another 5%.

</comment></comment></comment></comment></comment><comment><USER18> I've backed a few great tabletop RPG products on Kickstarter/IndieGoGo.

</comment><comment><USER19> YESSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! I'm BACKIN THAT SH __! That is all.

</comment><comment><USER20> A bit off topic, but the new google glasses keep making me think of augmented reality in Shadowrun 4th Edition. So cool :p

I'm really glad this kickstarter got funded, the Shadowrun universe has always been one of my favorites.</comment>


Ask HN: How do I start with Elm? - <AUTHOR> I want to try Elm, by I have no experience with Haskell-like languages. What is the best way to learn Elm's concepts? <comment><USER2> Wild guess... click the big "get started" button on elm website and read the documentation it leads to?</comment>


HCaptcha is a popular alternative to Google's reCaptcha - <AUTHOR> https://www.fastcompany.com/90377406/suspicious-of-googles-recaptcha-heres-a-popular-alternative <comment><USER2> So when do we NEED captchas? Is it truly just an anti spambot for site comments?

Browsing around with noscript, uBlock Origin, a VPN, and Waterfox means a I see way more of the internet's anti-bot stuff than before and in many, many cases, I get to sit and point out crosswalks and chimneys and fire hydrants because a webmaster apparently cannot do any request throttling from an IP address...Although I guess I need to partially correct myself since with a large enough botnet the IP address can change significantly in a quick manner.

In those cases I guess I downgrade this to a grumble about captchas being annoying, but overall, I continue wishing for a way to have the open web without a long term need for 'em.</comment>


Linux NFSv4.1 Performance Under a Microscope [pdf] - <AUTHOR> http://www.fsl.cs.stonybrook.edu/docs/nfs4perf/nfs4perf-microscope.pdf <comment><USER2> If someone were making a network of workstations at a company that needed high performance from commodity hardware, what would be the best thing to use if they were starting from scratch?

<comment><USER3> That's too simple for specification. For instance: How much are you ready to pay for the performance in terms of usability, and what are the actual use cases?

For instance NFS is pretty poor if your use case is serving shared network directories for workstations (not really great with complex ACLs), or if you require proper authentication for the resources (the Achilles' heel of NFS - where's my kerberos support?!?!!). You might be better off with CIFS.

As the other comments already pointed out, there are several alternatives for several needs. Performance alone should not guide your selection.

<comment><USER4> v4 (or v4.1) added a few things for increased security. You can probably use LDAP/Kerberos with it. In my experience, R/W throughput with CIFS is fairly bad.

<comment><USER3> It seems I have some reading to do! I will check this out..</comment></comment></comment></comment>


Trapped in His Body for 12 Years, a Man Breaks Free - <AUTHOR> http://www.npr.org/blogs/health/2015/01/09/376084137/trapped-in-his-body-for-12-years-a-man-breaks-free <comment><USER2> A warning to those who check comments first: this is a teaser, not the whole thing.

<comment><USER3> Here's a link to the full transcript: [http://www.npr.org/2015/01/09/375928124/dark- thoughts](http://www.npr.org/2015/01/09/375928124/dark-thoughts) and [http://www.npr.org/2015/01/09/375928581/locked-in- man](http://www.npr.org/2015/01/09/375928581/locked-in-man)

<comment><USER4> There is video on YouTube where he is interviewed, he still can't speak though but other than that he appears fine. Well, maybe not great he is in a wheelchair too.

[https://www.youtube.com/watch?v=GBFntsxK- vc](https://www.youtube.com/watch?v=GBFntsxK-vc)

</comment></comment></comment><comment> V-2 > That was his first strategy — disengaging his thoughts — and he says he got > really good at it.

> "You don't really think about anything," Martin says. "You simply exist. > It's a very dark place to find yourself because, in a sense, you are > allowing yourself to vanish."

Isn't that what certain Eastern schools of thought advocate? To unite with the world, liberate from your ego, accept yourself as nothing more but a wave in the vast ocean of consciousness?

<comment><USER5> This is a good question. Just my two cents, but he says it is a "very dark place" which I assume means bad. If so, then there must be some resistance or dissatisfaction with his situation (not that I blame him). I think Eastern schools of thought advocate something similar (i.e. allowing your self/ego to vanish) but with complete acceptance of how things are, which leads to peace.

</comment></comment><comment><USER6> His story is featured on NPR's new Invisibilia podcast: [http://www.npr.org/rss/podcast/podcast_detail.php?siteId=370...](http://www.npr.org/rss/podcast/podcast_detail.php?siteId=370162154)

</comment><comment><USER7> It really reminds me of "Johnny Got His Gun" [1].

> He is a quadruple amputee who has also lost his eyes, ears, mouth and nose. > He remains conscious and able to reason, but his wounds render him a > prisoner in his own body.

Parts of this movie, btw, are included in the famous Metallica - One song.

1: [http://en.wikipedia.org/wiki/Johnny_Got_His_Gun_(film)](http://en.wikipedia.org/wiki/Johnny_Got_His_Gun_\(film\))

<comment><USER8> There was a quite famous sci-fi short story, published in 1967, with a similar theme[1]: I Have No Mouth, and I Must Scream. Perhaps it was also inspired by the 1939 novel, Johnny Got His Gun?

[1] [https://en.wikipedia.org/wiki/I_Have_No_Mouth_and_I_Must_Scr...](https://en.wikipedia.org/wiki/I_Have_No_Mouth_and_I_Must_Scream)

</comment></comment><comment><USER9> "I cannot even express to you how much I hated Barney," Martin says.

A deeper pit of hell is difficult to conceive.

</comment><comment><USER10> This is very interesting because I think a lot of people think wisdom and personal self growth can only happen through human experiences, but just him sitting there thinking about it helped him grow as a person. It's amazing what the human mind can still do without the resources of a body.

<comment><USER11> Yes, how he viewed the society and what he absorbed while he was going through it in all these years, the experiences he had and how it affected his thinking/reasoning - a conversation with him about these would be a rare privilege. :)

</comment></comment><comment><USER12> I tuned into this as it was playing. I had to explain to my kids why I was laughing (it was in regards to how his face hurt from smiling when thinking about his wife -- I laughed because it was such a wonderful problem to have).

</comment><comment><USER13> The story is remarkably similar to this Polish movie, based on a real story:

[http://en.m.wikipedia.org/wiki/Life_Feels_Good](http://en.m.wikipedia.org/wiki/Life_Feels_Good)

</comment><comment><USER14> In a troubling world were people believe in facilitated communication this is not tackling this issue well at all.

There will always be a spiritual crazy pushing crazy beliefs, if he is legitimately talking, sadly this needs to be explained exactly why it's not the crazy 'facilitated communication'.

Any intelligent person on seeing the headline should think 'religious fever'. This article is not explaining why it's not the case.</comment>


Show HN: Clone of the Simon game cross platform for free - <AUTHOR> https://victorqribeiro.itch.io/genius <comment><AUTHOR> I've been working on a "real" game this past days, but In the mean while I've been releasing this mini games I've made to kind kick start my game dev career.

On this particular version of the game I've added several input methods as well visual and mental aides.

In order to go longer you can try memorize number, or letters, directions, colors or even sound. Cause I figured several people would approach this with e different technique to remember as much os the sequence as possible.

I had a second goal, that I kinda gave up, that was to collect anonymous data to compare people's performances.

I was curious to know if people perform better using the colors, or the letter, numbers... But that would require me to implement some back end and a server to gather the data.

Maybe next time.

</comment><comment><USER2> I love Simon!

So I like to input my sequence as fast as possible, but there is some sort of event throttling that prevents me from doing that.</comment>


Core Memory Shield for Arduino - <AUTHOR> https://www.tindie.com/products/kilpelaj/core-memory-shield-for-arduino/ <comment><USER2> I have searched for a bit more info about core memory recently and found "Core Memory Explained (and Demonstrated)" (~25 minutes) quite interesting:

[https://www.youtube.com/watch?v=AwsInQLmjXc](https://www.youtube.com/watch?v=AwsInQLmjXc)

</comment><comment><USER3> Anyone have details about about where you get these tiny ferrite cores? I just assumed they were no longer available.

I have a card of core memory from maybe a DEC10, but the fine copper wires woven through the cores are starting to break. Not sure what I should do to preserve it.

<comment><USER4> When I asked Jussi (in July, 2016) he pointed me to [http://www.ebay.com/itm/1000x-VINTAGE-RAW-FERRITE- CORES-5221...](http://www.ebay.com/itm/1000x-VINTAGE-RAW-FERRITE- CORES-5221-3-2113-35-FOR-CORE-MEMORY-BOARD-/311037935957)

<comment><USER3> Ooh, awesome! Thank you!

It would be cool to weave some rope memory with this.

[https://en.m.wikipedia.org/wiki/Core_rope_memory](https://en.m.wikipedia.org/wiki/Core_rope_memory)

<comment><USER4> Yeah, rope memory is genius. Practical storage from such as simple structure. There's a demo somewhere on Youtube of someone who made a 7-segment decoder with rope. Pretty simple circuit compared to what you need to read-write core memory.

If you like this kind of things, you might want to check out the amazing ROM implementation of the HP 9100: [https://www.hpmuseum.org/tech9100.htm](https://www.hpmuseum.org/tech9100.htm)

</comment></comment></comment></comment><comment><USER5> This is only tangentially related, but as someone who is incredibly new to the Systems programming world, what would people recommend for getting into Arduino programming? How different is it from programming the GPIO on the Raspberry Pi?

<comment><USER6> That's an excellent question; one to which I would also like to know (more) about. So far I've thrown a bunch of money at it to just buy random pieces and cobble them together in spare time and see what happens.

So I _have_ raspberry pis; I _have_ arduinos. I've done some simple programming for both, to read from sensors. Water sensors and thermal sensors and buttons and sound pins all on breadboards were fun.

I figured I was ready for the next step: soldering together a kit. So I soldered together an ethernet kit for the arduino. That project fell flat: the arduino powered up while the ethernet shield did not; the arduino reported that it didn't even "find" the ethernet controller even though it was piggy- backed onto it. Usually when you plug in the RJ45 jack to a NIC you at least get the lights on the RJ45 port to light up. But no dice for me here either. And I have no idea how to debug _that_ problem.

<comment><USER7> Sounds like you need to triage your circuit. Every trace should be connected to a certain number of other points. Turn off power and use a multimeter on the continuity setting to verify each trace connects to where it's supposed to.

After that, turn on power and verify that each trace has the correct voltage on it.

The two steps above should let you determine which part is failing.

</comment></comment></comment><comment><USER8> Next up, punch card reader for BeableBone

<comment><USER4> Punch cards are mechanically demanding. A paper tape _reader_ is feasible. A _writer_ is probably fairly challenging.

<comment><USER9> Early in my programming career (probably late 60's), I came up with the universal data storage media: punched magnetic tape!!!</comment></comment></comment>


Instagram faces $500B in fines alleging it harvested biometric data - <AUTHOR> https://www.businessinsider.com/instagram-facing-500-billion-in-fines-in-facial-recognition-lawsuit-2020-8 <comment><USER2> > the tool automatically scans the faces of people pictured in other users' > posts, even if they don't use Instagram and didn't agree to the terms of > service.

This suggests to me that the number of people affected is much more than the 100 million Instagram users, and the potential fine much higher.

<comment><USER3> Sort of related. I always wondered how people in my photos would react knowing Google Photo was essentially scanning their face without their approval. I am sure this is covered by Google Photos T&Cs somehow, nevertheless, it's a real problem. Should I disclose anyone I snap about this? Even someone walking in the background?

<comment><USER4> I'm guessing the easiest way to fix this would be to just disable the feature?

According to documentation, Google mentiones that face groups are deleted when you turn the feature off: [https://support.google.com/photos/answer/6128838?hl=en](https://support.google.com/photos/answer/6128838?hl=en)

(And if they're not, winning a lawsuit against Google should be trivial.)

<comment><USER5> I wonder if they are deleted from generated machine learning models?

</comment></comment></comment></comment><comment><USER6> Today I learned: the idea that a corporation can commit a crime is a very new one. [1]

People commit crimes, not companies.

[1] William Blackstone, Commentaries on the Laws of England 464 (1765) ("A corporation cannot commit treason or felony or other crime in its corporate capacity though it's members may in their distinct individual capacities.")

<comment><USER7> > _People commit crimes, not companies._

I thought corporations are people, my friend.

<comment><USER8> I really wish people would stop repeating this line thinking they are making some kind of interesting point. Go watch the video:

[https://www.youtube.com/watch?v=St1wSWtm_BI](https://www.youtube.com/watch?v=St1wSWtm_BI)

Romney's point was that corporations are made up of people and that corporate taxes are, in the end, taxes on people.

The fact that this was treated as some kind of gaffe at the time, and is still being repeated almost a decade later is just terribly disappointing.

<comment><USER9> "Corporations are people" is literally in US law [1]. It has nothing to do with a gaffe from Mitt Romney.

Very famously the US supreme court ruled in 2010 that corporations have free speech and money is speech [2]

[1] [https://en.wikipedia.org/wiki/Corporate_personhood#Legislati...](https://en.wikipedia.org/wiki/Corporate_personhood#Legislation_in_the_United_States)

[2] [https://www.npr.org/templates/story/story.php?storyId=122805...](https://www.npr.org/templates/story/story.php?storyId=122805666)

<comment><USER8> 1) The "my friend" at the end of OPs comment is the connection to Mitt Romney. It's a relatively famous quote, much to my dismay.

2) No corporations are not people. That is, quite obviously, a non-sequitur. They do, however, have some (but not all!) of the rights that people do because of the fact that they are _made up of people._

</comment></comment></comment></comment></comment><comment><USER10> The most depressing part about this is: to me, as an individual who probably has my biometric data harvested, I see nothing of this money and my data is still gone. It's almost as if there was a hidden price tag: "Do crime X and pay Y to make money Z." As long as Y<Z and the business can continue to operate with a new crime, it's just like there was no law. Just costs.

<comment><USER11> > my data is still gone

How exactly is your data "gone"?

<comment><USER12> If you reveal one of your secret, you no longer have a secret. Private data is the same, it's not private anymore when public, it lost its value.

<comment><USER13> You chose to show your face in a public place. You have no expectation of privacy. The value was already lost.

<comment><USER14> >Go to private party on private property of a friend

>Someone who also attended takes picture of party and posts in on instagram

>Instagram harvests your face from said picture

No public places involved in that scenario.

</comment></comment></comment></comment></comment><comment><USER15> It's pretty obvious that the fine won't be $500B since it was likely set that high specifically so when it's knocked down it doesn't go to something absurd like $1,000. However, I do hope this sees some traction, especially as Facebook is now fully moving forward with its plan to merge Instagram, WhatsApp and Facebook.

<comment><USER16> How is that "pretty obvious"?

</comment></comment><comment><USER17> Article about the Illinois Biometric Information Privacy Act (BIPA) fails to mention BIPA's name even once.

</comment><comment><USER18> > In a statement to Business Insider, Facebook spokesperson Stephanie Otway > said Instagram does not use facial recognition in the way the Facebook app > does. "This suit is baseless. Instagram doesn't use Face Recognition > technology," Otway said.

Later on in the article:

> Facebook did not immediately respond to a request for comment.

So, which one is it?

</comment><comment><USER19> This sounds almost like the previous lawsuit (mentioned in the article) that was settled by Facebook for $650 million, which was concerning Facebook's use of facial recognition, wasn't noticed by the lawyers of this case. The best they can hope for would be one more settlement that will be a tiny fraction of a percentage of the $500 billion ask. Hopefully they have strong evidence against Facebook's statement that Instagram doesn't do facial recognition.

<comment><USER20> The judge hasn't allowed the settlement yet, and it is not clear that he will allow it. He rejected the original $550 million

[https://www.courthousenews.com/judge-wont-sign-off- on-550m-f...](https://www.courthousenews.com/judge-wont-sign-off- on-550m-facebook-facial-data-settlement/)

> "The Illinois Legislature said this is meant to be an expensive violation," > U.S. District Judge James Donato said during a preliminary settlement > approval hearing held via video Thursday.

> The Illinois statute carries civil penalties of $1,000 for each negligent > violation and $5,000 for each knowing violation. With a class of millions of > Facebook users who had photos of themselves uploaded in Illinois, damages > could have reached tens of billions of dollars.

> Donato demanded lawyers for Facebook and the plaintiff class explain why the > higher damages amount of $5,000 per violation was taken off the table.

> Last year, Facebook paid a $5 billion fine to the Federal Trade Commission > to settle claims that it violated a 2012 FTC order by allegedly deceiving > users about their ability to control private information. Donato said that > settlement could provide adequate evidence to support a push for higher > damages.

> "It looks to me that what Facebook did to violate the BIPA may also have > been a violation of that prior FTC consent decree, in which case you have a > pretty good argument that this is an intentional or reckless violation of > BIPA that would warrant $5,000," Donato said.

</comment></comment><comment><USER21> Where do those fines go?

<comment><USER20> > Where do those fines go?

They aren't fines. They are damages and go to the people affected.

In the case of the $650 million proposed settlement for Facebook proper (The judge in the case already rejected a $550 million settlement agreement as "far too little"), all Illinois Facebook users would get a check for $1000+

By the way, this article is really poorly written. The $5000 * 100 million users is not the way it works. The Illinois law says it is $1000-$5000 per violation, so the few million Illinois Instagram users (I have absolutely no idea how many there are) would be entitled to $1000-$5000 every time Instagram did a facial recognition lookup on them, which could easily cause a total liability to be in the tens or hundreds of billions of dollars.

Facebook fought against their lawsuit for years until it was finally ruled that they would have to go to trial. And now they are settling. That's likely what is going to happen here too. If they can keep it out of the courtroom, they'll pay nothing. If they can't, they'll offer up a few hundred million to make it go away.

<comment><USER22> Given it is class action suit, I would say the lawyers make most of the money and the people who have the standing to sue will get nowhere close to $1,000 .

</comment></comment></comment><comment><USER23> It's about time. Facebook has been violating this law for years.

<comment><USER24> No FB user here. Is it possible to get myself labeled on FB-posted photos with my full name by some FB user?

<comment><USER25> Yes, though it would be equivalent to a label or sticker on an item in a store (note: not a barcode). It wouldn't carry meaning from a technological perspective (though I guess Facebook could try to mine that).

The problem with Facebook's facial recognition features is that it has to recognize all faces, even faces that don't want to be recognized, to know which faces to legally not recognize. It's an all-or-nothing feature across its entire user base. It can't even be geofenced because users travel and upload from all sorts of parts of the world and wind up in the background of several photos.

Facial recognition is a "logical feature" in that it mimics how people recognize people, but is problematic when applied at scale.

<comment><USER26> If I don't upload a picture of my face and tell Facebook "please let me know when you'd see my face, it looks like this". Then any time they see a face they don't recognize they should just do _nothing_.

That's not at all how Facebook _chose_ to implement their face detection and pretending it's a hard problem does a disservice to anyone interested in their privacy.

Parsing the image and seeing faces is one thing. Persisting and correlating that data is another.

</comment></comment></comment></comment><comment><USER27> B or M?

<comment><USER28> > "Under the Illinois law, Facebook could be forced to pay $1,000 to $5,000 > per violation, meaning the full damages could reach $500 billion if Facebook > is found responsible."

<comment><USER29> $500B is pretty nuts. Does anyone else here feel that this whole thing is nuts?

Facebook's market cap is $700B. Making them pay $500B in damages would put them out of business. So, to be clear with what we're talking about here, we're considering the corporate death penalty.

The alleged crime? Processing photo data to find objects that look like people that look similar to other objects that look like people. Yes, by the letter of the law, that's against BIPA (which is a problematic law motivated by a historically anti-tech cash-grabby legislature (see: Netflix Tax)), but what are the _actual damages_ to the injured party? It is a tall order to convince me that having your name pop up as a recommended tag in your friend's photo caused you any material harm, let alone $1000+ per incident.

I get that there's a privacy angle, I get that PII is toxic, I get that we care about data protection and all now. But this? This is a dumb law, and a dumb lawsuit.

<comment><USER30> Hmm, I question whether it really would put them out of business. FB made about $18B net income last year. Shouldn't that be more than enough to pay the interest on issuing $500B of long term bonds? It almost seems like a sweet spot of a massive fine that _wouldn 't_ kill them.

Also, it would just be satisfying to demonstrate they aren't above the law. Ordinary people don't get to say "but that law is _obviously_ unreasonable" when, you know, it's very debatable, and get exempted.

</comment></comment></comment></comment><comment><USER31> Should be $500T instead

<comment><USER32> You want Facebook to be fined 5 years of world GDP?

</comment></comment><comment><USER33> They need to make people responsible, not the corporate entity.

<comment><USER34> Why? The company profited from the crime. That would create some interesting incentives.

<comment><USER35> You can't effectively punish a company, especially not a company the size of Facebook.

But if individuals go to prison for their actions, people will be more careful how they act.

<comment><USER36> Corporate death penalty.

<comment><USER37> Not sure why this is downvoted as it brings up an interesting position. Why can't there be violations so severe that they force the corporation to be dissolved?

<comment><USER38> It happens, just less often than is probably healthy.

[https://www.nytimes.com/2020/08/06/us/ny-nra-lawsuit- letitia...](https://www.nytimes.com/2020/08/06/us/ny-nra-lawsuit-letitia- james.html)

[https://en.wikipedia.org/wiki/Arthur_Andersen](https://en.wikipedia.org/wiki/Arthur_Andersen)

</comment></comment></comment></comment></comment></comment><comment><USER39> There are 100 million Instagram users in Illinois' jurisdiction?

<comment><USER40> _There are 100 million Instagram users in Illinois' jurisdiction?_

At this moment, no.

During the time that this law was in effect, easily.

Though I no longer live in Illinois, I am probably one of the people covered by this lawsuit.

50 million tourists visit Chicago each year. They're probably covered.

104 million people travel through ORD and MDW airports each year. They're probably covered.

Probably another dozen or two million people travel to or through Illinois each year on business. They're probably covered.

It adds up.

</comment></comment><comment><USER41> Instagram doesn't do facial recognition though, so this seems pretty baseless.

<comment><USER42> Instagram does do facial recognition, they are just not doing it for your benefit, or showing you the results.

<comment><USER43> > Instagram does do facial recognition

I wouldn't be at all surprised if it's true, but still...do you have a source for that claim?

<comment><USER44> How do you think the "tag so-and-so in this picture" feature works?

<comment><USER45> What feature are you talking about? Can you link to any official documentation or post a screenshot?

</comment></comment></comment></comment></comment><comment><USER46> They should be fined trillions for having videos with no volume control.

</comment><comment><USER47> Arguably, merely storing a photo of someone is 'harvesting biometric data'.

Comparing photos to one another to see if they match is hardly nefarious.

Paradoxically, it's probably irrelevant: it doesn't help them make money in ads, it probably has no otherwise material effect on the service.

I'm glad someone is suing FB but I'm not sure this is the right angle.

</comment><comment><USER48> $500 billion? Reminds me of this: Minnesota woman to pay $220,000 fine for 24 illegally downloaded songs - [https://www.theguardian.com/technology/2012/sep/11/minnesota...](https://www.theguardian.com/technology/2012/sep/11/minnesota- woman-songs-illegally-downloaded)</comment>