SEC due to review the definition of accredited investor - <AUTHOR> http://equityzen.com/blog/accredited-investor-standards-SEC-review <comment><USER2> Sorry to borrow a page from Reddit, but can someone explain like I'm five why I'm not allowed to invest my own money in whatever venture I see fit, just because I'm not rich?

I've already "invested" money in Pebble, Reading Rainbow, and a few other business ventures I've seen potential in, but I'm not allowed to benefit from those investments in certain ways because, why, exactly? For my own protection?

<comment><USER3> "just because I'm not rich?"

Yes for your own protection.

Because if you don't have money then the rest of society often becomes the "clean up the mess" of last resort if you make a mistake using one of your last dimes to invest in a potentially risky venture.

"but I'm not allowed to benefit from those investments in certain ways"

The chance of "gambling" is much higher if someone perceives a payout. Not to say there aren't many ways that people throw out their money (QVC, Casinos etc.) but those are grandfathered and part of a different discussion. (And the fact that they are allowed whether the same or different doesn't mean something else should also be allowed).

<comment><USER4> > if you don't have money then the rest of society often becomes the "clean up > the mess" of last resort

Case in point[1]. I guess it's fine when Wall Street does it.

[1] [http://en.wikipedia.org/wiki/Emergency_Economic_Stabilizatio...](http://en.wikipedia.org/wiki/Emergency_Economic_Stabilization_Act_of_2008)

</comment></comment></comment><comment><USER5> The Government seems to have completely forgotten about the JOBS Act[1], which was designed to create a regulatory exemption for crowdfunded investment, democratizing investment allowing everyone an opportunity. Yet instead it appears they want to raise the barrier to entry for investors and limit limit opportunities for start-ups. I mean regulation is needed, we don't want fly by night operations scamming would be investors, but if true this is disgusting.

[1][http://en.wikipedia.org/wiki/Jumpstart_Our_Business_Startups...](http://en.wikipedia.org/wiki/Jumpstart_Our_Business_Startups_Act)

</comment><comment><USER6> Given that there's been...

• …an immense explosion in available knowledge; and…

• …many new ways for non-accredited investors to invest and lose all their money in highly-leveraged public equities, real-estate, foreign-exchange, and other vehicles; and…

• …no appreciable complaints from existing accredited investors that they wish they'd been prevented from investing their own money in private equities;

...thus the SEC _must_ be looking into reducing the thresholds, in the spirit of the JOBS Act, to let more Americans invest in innovative upstarts? Right? Right?

</comment><comment><USER7> I was hoping this meant that they would lower the bar, but instead they think it's going to be being raised even higher, meaning that existing VCs could close their accreditation.

</comment><comment><USER8> Wow, this is the definition of nanny-state. This rule should be removed, not tightened!

What's next? I don't make enough to trade stocks? To gamble? To spend above my means?

</comment><comment><USER6> Use of net wealth, rather than a wealth-oblivious measure like skills/certifications, to disqualify people from an important part of the economy should be rejected on economic-rights grounds.

Currently you could be professionally certified to advise and manage a millionaire's money, and put it into private ventures, but not be allowed to invest even token amounts into those same ventures yourself, 'cuz you're poor.

</comment><comment><USER9> Over here in the UK we don't seem to have this restriction.

There are lots of other laws about it, but you don't have to be rich to sink some cash in private equity schemes. We even seem to have sprouted a kickstarter for equity in the form of Crowdcube. Which I rather like because kickstarter always felt a bit wrong. If I'm micro-investing, surely I ought to be micro-profiting too, if the company takes off?

<comment><USER10> It's comical that the $ amount requirements to invest haven't been adjusted for 30 years, but the real issue stems from the consequence of a rule created in the 80s. Tell me the last time you checked a stock price in a newspaper?!

</comment></comment><comment><USER11> "For example, why not allow relevant certified professionals, such as CPAs and CFAs, to automatically qualify as AIs?"

This strikes me as an incredibly bad idea. The bar for CPA is painfully low.

<comment><USER2> Better they manage someone else's money than their own?

</comment></comment><comment><USER12> Wow, thanks for the update. Enjoyed reading this. Looking forward to seeing more from you guys.</comment>


Handbook of Practical Logic and Automated Reasoning - <AUTHOR> http://www.cambridge.org/gb/knowledge/isbn/item2327697/

<comment><AUTHOR> The author of this book is John Harrison of Intel, where his knowledge of automatic proofs is used in optimally designing chipsets. He is also the author of HOL Light (<http://www.cl.cam.ac.uk/~jrh13/hol-light/>), a program that helps users prove mathematical theorems. The submission is a book that he published in 2009 describing automated proofs, with a full implementation in OCaml. When I was doing grad work back in 2007-2008, the source code that went along with this book was invaluable in my work. I'm surprised that I haven't seen much discussion about this book, which is definitely worth checking out.

Amazon has a few good reviews ([http://www.amazon.com/Handbook-Practical- Logic-Automated-Rea...](http://www.amazon.com/Handbook-Practical-Logic- Automated-Reasoning/product-reviews/0521899575)), and a CMU faculty member wrote an extensive review (<http://www.andrew.cmu.edu/user/avigad/Reviews/harrison.pdf>).</comment>


Animated ~realtime windspeed overay on globe - <AUTHOR> https://earth.nullschool.net/#current/wind/surface/level/orthographic=-74.27,29.21,316 <comment><AUTHOR> If you click the hamburger menu, it has other overlays like tides and aurora.</comment>


JPMorgan ship seized after found $1B worth of drugs on it - <AUTHOR> https://www.businessinsider.my/cocaine-ship-jpmorgan-owns-vessel-seized-by-us-cbp-2019-7/ <comment><USER2> Who is big enough to be shipping greater than $1B worth of drugs on a cargo ship? That's pretty interesting.

<comment><USER3> Well apparently J.P. Morgan is..

<comment><USER2> You say that like they are the source... Maybe I wasn't clear.</comment></comment></comment>


Droplet: An Arduino-based wireless display (e.g. weather, twitter, news) - <AUTHOR> http://rapplogic.blogspot.com/2009/08/droplet.html

<comment><USER2> reminds me of a less refined version of Googles "Radish" environmentally friendly meeting schedule. [http://www.youtube.com/watch?v=VyHaImmmkGs&feature=playe...](http://www.youtube.com/watch?v=VyHaImmmkGs&feature=player_profilepage)

</comment><comment><USER3> What does the "Feed Cat" button do?

<comment><USER4> Since he's a hardware-hacker, I would guess it feeds his cat.

<comment><USER3> Really? I wouldn't have guessed that...

I was hoping for some details.

</comment></comment></comment><comment><USER5> _Wireless_ ?

<comment><USER6> Yes, the information is received by the Arduino without a physical connection to a computer. It's still connected to power though.</comment></comment>


Why would Flickr prohibit Facebook/Google sign ins? - <AUTHOR> http://i.imgur.com/sIFPrGn.png

<comment><USER2> I would guess that it is part of Yahoo's strategy to keep everybody within the same "walled garden".</comment>


The end of El Dorado - <AUTHOR> https://medium.com/grains-of-salt/the-end-of-el-dorado-b7d26bd0962b#.49nkjeejg <comment><AUTHOR> An answer to Ev about the apparent end of startups.

I like how Ev compares the Internet with TV, radio or cars as an industry which will devolve into a slow behemoth entrenched in legacy corporations.

But i believe we could learn and prevent a systemic problem before it happens, had we any interest in doing so :)</comment>


The Semicolon Wars (Language wars and Lisp) - <AUTHOR> http://www.americanscientist.org/template/AssetDetail/assetid/51982/page/1

<comment><USER2> All on one page (instead of 5):

[http://www.americanscientist.org/template/AssetDetail/asseti...](http://www.americanscientist.org/template/AssetDetail/assetid/51982/page/1?&print=yes)</comment>


Using Wall Street secrets to reduce the cost of cloud infrastructure - <AUTHOR> https://techxplore.com/news/2019-08-wall-street-secrets-cloud-infrastructure.html <comment><USER2> Skimmed article, didn't read paper if there was one. The article talks about data center links. These are rarely the failure mode, the failure mode is most often a bad config push and that then brings about a gray failure. And while a route _may_ exist, because of priority levels and the way routes are announced, a part of the network is down even though there exists a physical path. This is a solution to a highly constrained model, not actual cloud computing.

<comment><USER3> For sure putting another complex system in front of any sort of traffic routing increases the failure modes, but the article makes a nod towards "signal quality" as the metric for traffic shifting.

> Failure probabilities were obtained by checking the signal quality of every > link every 15 minutes. If the signal quality ever dipped below a receiving > threshold, they considered that a link failure.

If the signal quality could be a higher level construct (Layer 7 errors), this could route around bad config pushes if they are constrained. I'm not going to pretend that this is definitely feasible, but at least that was my first thought.

</comment></comment><comment><USER4> Paper available here:

[https://people.csail.mit.edu/ghobadi/papers/teavar_sigcomm_2...](https://people.csail.mit.edu/ghobadi/papers/teavar_sigcomm_2019.pdf)

<comment><USER4> It just appears to apply VaR to failure rates, which is hardly a 'wall street secret'.

The authors also completely misunderstand how VaR works - it is the minimum value at risk, not the maximum.

 _Value at Risk (VaR) [33] captures precisely these bounds. Given a probability threshold β (say β = 0.99), VaRβ provides a probabilistic upper bound on the loss: the loss is less than VaRβ with probability β_

It is actually a probabilistic lower bound on the loss.

<comment><USER5> Value at risk is a probabilistic upper bound on the loss. See for example:

[https://www.risk.net/definition/value-at-risk- var](https://www.risk.net/definition/value-at-risk-var)

"It is defined as the maximum dollar amount expected to be lost over a given time horizon, at a pre-defined confidence level. For example, if the 95% one- month VAR is $1 million, there is 95% confidence that over the next month the portfolio will not lose more than $1 million."

<comment><USER4> That is incorrect, most definitions you'll see of VaR are incorrect. Think about it logically - the purpose is to quantify the tail events you've observed in the past. Practically that would be the lower bound (as the future can surprise you more).

Read the discussion on VaR here if you're interested in the detail: [https://martinkronicle.com/aaron-browns-red-blooded- risk/](https://martinkronicle.com/aaron-browns-red-blooded-risk/)

</comment></comment></comment></comment><comment><USER6> >for a target percentage of time—say, 99.9 percent—the network can handle all data traffic, so there is no need to keep any links idle. During that 0.01 percent of time, the model also keeps the data dropped as low as possible.

99.9 + 0.01 != 100

</comment><comment><USER7> "Wall Street secrets" to idle nodes less unnecessarily? Article writing truly is an art.</comment>


Ask HN: what SaaS do you currently pay for? - <AUTHOR> My list.
/mo.
Basecamp Backpack Campfire GetExceptional GitHub Tender Lighthouse DropBox
/yr.
MobileMe Flickr Vimeo Pandora One <comment><USER2> MobileMe and Flickr for me. For my previous company, we used Hoptoad, GitHub, and Lighthouse for a while.

I'd pay for Dropbox if I had more than one computer and/or I was ever anywhere near my storage limit.

</comment><comment><USER3> Right now I'm using Get Satisfaction, ZenDesk, Salesforce.com, and Basecamp

</comment><comment><USER4> DNS made easy, Get Clicky, couple software development related ones

</comment><comment><USER5> Basecamp, Highrise, Campfire, Glance, Blinksale.

</comment><comment><USER6> Pandora. I think that's it right now.

</comment><comment><USER7> github, linode, pandora, getclicky</comment>


Is 0 Odd or Even? - <AUTHOR> http://en.wikipedia.org/wiki/Evenness_of_zero

<comment><USER2> I can't believe there's a Wikipedia article about this. The best part:

        [Prospective elementary school teachers] found it to be
        a "tricky question", and about two thirds answered "False"

<comment><USER3> Why does that surprise you ?

I've had a fair argument with my sons school when he was between the ripe old ages of 7 and 10 about teaching him arithmetic using a calculator instead of learning how to do it by himself.

After the third school issued calculator came back to school nicely chopped in half they stopped trying and I managed to teach him what he needed to know, but the really interesting bit here is that once, during all this I quizzed the teacher on his arithmetic skills, hard stuff like 7 _6 and 72/9 and he instantly whipped out_ his* calculator.

It completely floored me, here was someone with a teaching certificate for all the 'basics' not knowing the basics.

And I was being accused of being a 'Luddite' for not allowing my child to use modern tools.

<comment><USER4> Whoah! I was actually kept inside for recess in grade school if I tried to use a calculator for arithmetic, and here, your son is being _issued_ a calculator by his _teacher_.

That doesn't mean that using a calculator at his age is necessarily a bad thing, but with the current math curricula worldwide being what they are, I can't think of anything more pedagogically unsound than what you're describing.

EDIT: (See also: "A Mathematician's Lament" by Paul Lockhart <http://www.maa.org/devlin/LockhartsLament.pdf>)

<comment><USER3> It seriously pissed me off, especially the fact that this guy was allowed to teach a subject he didn't know anything about.

Calculators have their uses, simple sums are not what they were made for. Fwiw this whole thing played out in rural Canada, Algoma district. I think they must have thought me to be an exceptionally cruel parent for wanting to teach my child how to do sums in his head or on paper for slightly more complicated ones. Fantastic piece by the way, that pdf, you should post that separately.

</comment></comment></comment></comment><comment><USER5> I don't understand why people have trouble with this. Perhaps because they are so used to zero being an exception to things? Perhaps because the sheer act of raising the question makes them nervous?

The everyday definition of even -- divisible by two -- applies just fine to zero, nor are there properties of evenness or oddness that should make one doubt whether the definition is appropriate. Questioning whether zero _should_ be even is like questioning whether six _should_ be even. It meets the definition, and there are no issues, so what motivates the concern?

Of course, one could always make another definition, but what you'd really be doing at that point is appealing to the mathematicians around you that you have a better definition of even. To them, that means one that makes things simpler. And it's unlikely that you have one.

I once had the following conversation with my abstract algebra teacher, while in grad school:

Him: If you study the history of this particular field, as time goes on, the definitions get more complex, while the theorems and proofs get simpler.

Me: Why is that, do you suppose?

Him: It's progress!

</comment><comment><USER6> My computer science teacher has a saying, "Mathematicians are always right." Why is zero even? Well, because it's _defined_ to be even. If you try to bring personal intuition into mathematics, you'll just repeatedly shoot yourself in the foot; there's no use arguing against it.

I had a similar problem with accepting that 1/inf = 0; to me, there could always be a smaller number, and therefore would never reach zero. Calculus made me realize I was wrong, and now I don't even bother trying to reason why mathematicians decided these things.

EDIT: Man, I knew as I wrote it that someone would get smart-ass with the sentence "Well, because it's _defined_ to be even," but I didn't expect so many. Yes, you're right, zero isn't defined to be even, but zero meets the definition of evenness. Happy?

<comment><USER7> _Well, because it's defined to be even._

This implies that defining it to be odd would be an acceptable choice. Defining zero as odd would break almost every generalization you can make about even and odd numbers.

And even number plus an even number is even. An even number plus an odd number is odd. And odd number plus an odd number is even.

Oh, whoops, zero was odd? Sorry, let me rephrase: "And even number plus an even number is even. An even number plus an odd number is odd. And odd number plus an odd number is even. SPECIAL CASE: IGNORE ALL THAT IF ONE OF THE NUMBERS IS ZERO."

Numbers alternate odd, even, odd, even, odd, even. EXCEPT AROUND ZERO.

Even numbers can be written as 2 * k, for k is some integer. Odd numbers can be written as 2 * k + 1, for k is some integer. EXCEPT FOR ZERO.

Even numbers can be divided into two equal parts by two. Odd numbers can not. EXCEPT FOR ZERO.

<comment><USER8> Which is why it was defined as even. Similar reasons apply for why one is not considered a prime number.

<comment><USER9> Not really. The set of even integers is 2Z = {2 _k | k is an integer}. 0 is in that set.

The set of odd integers is 2Z+1 = {2_k+1 | k is an integer}. 0 is not in that set.

The reason we don't like 1 being prime is because it makes stating lots of theorems that involve primes (in particular, the fundamental theorem of arithmetic) really tedious. Instead of saying "For every prime p" or "Let p be a prime" you'd have to say "For every non-unitary prime," etc.

Zero being even is a consequence of the above definition of even, while one not being prime is a choice for our sanity.

<comment><USER10> _The reason we don't like 1 being prime is because it makes stating lots of theorems that involve primes (in particular, the fundamental theorem of arithmetic) really tedious._

No, it makes the FTA wrong! If one were prime, then every number would have infinitely many prime factorizations instead of one unique one.

 _you'd have to say "For every non-unitary prime," etc._

In the even/odd case, one could just as easily say "for every non-zero odd number." This isn't somehow an argument that applies only to the question of one's primality.

 _Zero being even is a consequence of the above definition of even_

...as is one not being prime a consequence of the definition of primes. A prime is a number with exactly two distinct factors. One only has one distinct factor, therefore it is not prime.

If you don't buy this definition, or if you claim that I'm gerrymandering the definition to suit my preference that one not be prime, be aware that a reasonable person could make the same claim about the definition of even numbers, viz., that it was chosen for convenience. While it's might be entertaining to argue about such chicken-and-egg problems, at the end of the day the evidence is pretty clearly in favor of the properties proceeding from the definition in both cases.

<comment><USER4> Hmm, I wouldn't say that defining a prime number as a number n with prime factors 1 and a with 1 and a not necessarily distinct instantly breaks the FTA, but it sure does make it a lot harder to state while still conveying the same idea otherwise.

</comment></comment></comment></comment></comment></comment><comment><USER11> Is this surprising? An integer is even if it is congruent to 0 mod 2. 0 is congruent to 0 mod 2.

</comment><comment><USER12> Good luck suggesting that 2 is prime and 1 isn't...</comment>


I may walk more than this guy, but he does it with more style - <AUTHOR> http://www.thelongestway.com/

<comment><USER2> That guy actually seems normal and is above average compared to the absolutely crazy ex-paratrooper Karl Bushby. Karl crossed the Darién Gap on foot.

"Karl Bushby (born 30 March 1969) is a British ex-paratrooper, walking adventurer and author, currently attempting to be the first person to completely walk an unbroken path around the world. Bushby's trek is known as the Goliath Expedition."

<http://odysseyxxi.com/>

<http://en.wikipedia.org/wiki/Darién_Gap>

<http://en.wikipedia.org/wiki/Karl_Bushby>

<comment><AUTHOR> Looks like a wonderful walk, or dreadful depending on what else one wants to achieve in life.

I do enjoy wandering, but keep my walks local. I consistently travel on foot 70-110 miles per week (higher in summer) ~4000miles per year. It's nice being able to control one's route and very relaxing. These forced paths across the unknown require great planning and cost (not working for a year wouldn't sit well with me).

<comment><USER2> How do you deal with rain/inclement weather? I walk about a mile one way to the train station and if it really rains I change into dry clothes once I (eventually) get to work. Hypothermia is a risk with cotton..

</comment></comment></comment><comment><AUTHOR> Here's the awesome video/photo montage: <http://www.youtube.com/watch?v=5ky6vgQfU24>

</comment><comment><USER3> Stories like this trigger the wanderlust.</comment>


Show HN: Pi4 dual display/4K and HEVC/H265 support - <AUTHOR> https://info-beamer.com/blog/dual-display-or-4k-and-hevc-on-the-pi-4 <comment><AUTHOR> Hey. It took around two months of digging into (sometimes undocumented) APIs to get this one working on the Pi4. The player software ("info-beamer pi") can now use DRM/dispmanx/MMAL to place videos, either decoded using the traditional H264 decoder or the new HEVC decoder, on one or two displays connected to the Pi4. The raw software is also used at the core of the custom info-beamer OS that is used in the "as a service" digital signage solution. On the linked page there's a demo package that you can install with a few clicks on your own Raspberry Pi if you want to try everything out. Happy to answer questions.

</comment><comment><USER2> Is there a non-hosted version of this?

<comment><AUTHOR> Kind of. Originally, info-beamer for the Pi started as a standalone binary intended to run on Raspbian. This product (info-beamer pi) is still available and has also been updated to support HEVC playback. See here: [https://info- beamer.com/product/info-beamer-pi](https://info-beamer.com/product/info- beamer-pi)

As for usability: It's really "raw". So you have to manually create the content/code directory and start the tool pointing it to that directly. There's no UI, remote management or any other advanced features that you might expect. That's also the reason info-beamer hosted go started in the first place: The technical knowledge required to run the software was to much. The hosted solution fixes all this and adds a complete OS, trivial installation and remote management system around info-beamer pi.

<comment><USER2> Thanks for the reply and detailed explanation. I've been messing around with dashboards/signage just in a personal capacity (hobby/fun) which was what initially spawned my question.

</comment></comment></comment><comment><USER3> I've got nothing of substance to comment on the technical aspects of the project but I find it amusing that Germans create a lot of pseudo-English words (Denglisch) such as "beamer" (projector) and "handy" (mobile phone). I wonder how confusing this might be to anglophone people.

<comment><AUTHOR> In hindsight I should probably named everything differently, but I didn't expect the software to turn into a company at some point when I initially started it over 8 years ago for a hacker conference (see [https://github.com/dividuum/info-beamer](https://github.com/dividuum/info- beamer)).

The main challenge was to understand how to use the HEVC decoder. There's no documentation at the moment, so the only source of information is this patched FFmpeg release: [https://github.com/popcornmix/FFmpeg/commits/2711](https://github.com/popcornmix/FFmpeg/commits/2711)

Basically the decoder interacts with /dev/argon-hevcmem to control the HEVC hardware decoder. You let it decode into video core controlled memory and can then use the MMAL toolkit ([http://www.jvcref.com/files/PI/documentation/html/](http://www.jvcref.com/files/PI/documentation/html/)) to feed buffers through a scheduler and finally into the dispmanx layers handled by the hardware video scaler. That way the frames end up more or less directly on the screen. Except for the decoding part, the same pipeline of scheduler and presentation can also be used with the older H264 based encoder that's directly addressable using MMAL.

<comment><USER4> This seems like a large oversight given people usually decide to use the Pi for better documentation and support. The Pi 4 is being marketed as a "Real" desktop replacement option and I find it very surprising HEVC decoding documentation is this poor. So basically FFmpeg communicates with the HEVC hardware decoder via a bunch of rough code? Is this stable?

<comment><AUTHOR> To be fair, these kind of low level stuff is usually handled by only a handful people, so investing a lot of time in proper documentation might be a lot of work for something useful by few users. The same is also true for DRM and in general the modern graphical APIs on stock Linux. It was surprisingly difficult to understand how all that works together. I had to rely mostly on example code. Even the man pages are incomplete. I guess it's the same situation: The kernel devs build an API, a few people (maybe even the same people) from Xorg or wayland use it and that's it.

On the other hand, the initial Pi firmware for earlier models came with a bunch of bundled examples in the hello_pi directory that were incredibly useful in understanding how everything worked. (see [https://github.com/raspberrypi/firmware/tree/master/opt/vc/s...](https://github.com/raspberrypi/firmware/tree/master/opt/vc/src/hello_pi)). Right now the forum and maybe the firmware issue tracker is the only source of information. In general, the direction of using more standardized APIs like DRM, Mesa 3D for GL and so on seems like a good idea regardless. I guess we'll just have to give all that more time.

The HEVC decoder is using a patched FFmpeg with direct communication with the hardware API. In the future there will be an V4L2 API and corresponding method in FFmpeg (see [https://www.raspberrypi.org/forums/viewtopic.php?t=247897](https://www.raspberrypi.org/forums/viewtopic.php?t=247897)). But that's not completed yet and there's no release date announced. I would guess once that's out, the whole decoding process will be a bit cleaner than it is today. But so far I works pretty well. I ran into a ton of firmware lockups during development, but most of those are fixed now. One thing I didn't manage to do yet is to decode two videos at the same time. That's something the H264 decoder could do. See also [https://www.raspberrypi.org/forums/viewtopic.php?f=70&t=2520...](https://www.raspberrypi.org/forums/viewtopic.php?f=70&t=252061)</comment></comment></comment></comment>


Are JavaScript Linters the Answer? - <AUTHOR> http://www.walkercoderanger.com/blog/2014/04/are-javascript-linters-the-answer/

<comment><USER2> JS has some issues. But the examples in your articles mostly mean that you need to spend more time understanding the language. It seems as if you were expecting it to behave like C#.

        myRide = new Car("BMW");
        letsDrive = myRide.drive;

        letsDrive(); // alerts "You are driving a undefined"

The 'this' pointer refers to the object on which you wrote the 'dot' to invoke the function. If you wrote a.b(), then inside b() 'this' will be 'a'. In your example, you used a function pointer directly without the 'dot' and got undefined. That is not a bug or a "mine", that's how JS works.

From the last article (why CoffeeScript isn't the answer) in the series:

      eat food for food in foods when food isn't 'chocolate'

> The declaration of what food is occurs in the middle of the line and doesn't > even look like a variable declaration. That code could easily be worse if > "unless eat is undefined" was added to the end, making the whole line > conditional.

You'd probably have issues with Python too for it's comprehensions. You should see beyond elementary syntax if you want to make arguments about languages. These details aren't even a preference; you get used to it in no time.

Summary for people jumping into JS from other languages, buy some good books because JS is somewhat different. Also, the "minefield" isn't that big a deal in practice.

<comment><USER3> > Also, the "minefield" isn't that big a deal in practice.

I completely agree. The vast majority of complaints about JS have to do with not knowing what the language is designed to do. I previously cursed JS until I spent the time to read/reread enough JS books to know what it should do. If I get unexpected behavior now, I know it's an error in my code, or I don't understand what should happen (thus time for me to read and learn).

As you pointed out, the examples yield the expected behavior.

myRide.drive();

// outputs 'BMW' b/c `this` is pointing to the instance

letsDrive = myRide.drive;

letsDrive();

// model should be undefined b/c myRide.drive is a function that is assigned to the letsDrive variable. Thus, `this` points to letsDrive, which of course does not have a `model` property.

To get letsDrive() to output a value other than undefined, we can simply create a `model` property and assign it a value.

letsDrive.model = 'Mercedes';

letsDrive();

// outputs 'Mercedes' b/c letsDrive now has a model property.

Lastly, the `delayed` method returns an anonymous function which in turn returns this.model. As JavaScript has function scope, the `this` inside the anonymous function points to the anonymous function itself. As the anonymous function does not have an attribute named `model`, undefined is returned (as expected).

<comment><USER4> Your example is wrong. You can't attach object properties to a function.

Javascript context is pretty simple. The keyword 'this' by default points at the object that the method belongs to. When you invoke this function :

myRide.drive();

the myride object owns the drive function, so any keyword 'this' inside of the drive function will be referring to the myride object.

when you do this:

letsDrive = myRide.drive;

letsdrive is now a function that belongs to the global object (window) since we did not declare an object for it. So 'this' is reffering to the window object.To get the output in your example, you would say

window.model = 'Mercedes';

And invoking letsdrive() will now return the expected result

<comment><USER5> Functions are objects, and you can attach properties to them.

      function foo() {}
      foo.bar = 7;
      console.log(foo.bar); // prints 7

<comment><USER4> I stand corrected on not being able to attach properties to a function, but what I said still holds true. The keyword this refers to the object that owns the method. The original commenter was saying that it was the method itself that was what this points at.

letsdrive = myRide.drive window.model = 'mercedes'; letsdrive.model = 'bmw';

letsdrive(); // outputs mercedes

</comment></comment></comment></comment></comment><comment><USER6> I would love to see a nicer language replace JavaScript as much as the next guy, but it seems rather unlikely especially given the changes that ECMA has approved in the past.

I am really hoping that some day, we will be able to do front-end devwork that isn't just an abstraction of JS/HTML/CSS.

<comment><USER7> Out of curiosity, what pieces do you believe are missing from your dream of front-end development work? You can already get a WebGL context from languages like C or C++ (compiled to asm.js), which should provide all the necessary building blocks to largely duplicate the front-end development toolkits that you find in native environments.

I mean you're still hinging on some incarnation of Javascript to act as the virtual machine, and you need HTML to setup the basic environment, but those seems like minor implementation details. Nothing that should impact your creativity in any major way. But perhaps I'm just not thinking big enough?

</comment></comment><comment><USER8> Linting is not THE answer, but it's surely a useful tool that catches a lot of potential mistakes, and has the nice side effect of enforcing some sort of house rules.

The problem is with the linters themselves. JSLint is coded by Crockford, probably the most opinionated sw engineer on earth. It checks what he thinks is right, and mixes formatting checks with syntax checks.

JSHint is a small improvement, it allows you to switch off rules that Crockford doesn't even want to talk about, but apart from that it's not a great step forward. Plus, for no good reason at all they decided to rename some of the rules from JSLint, and switch some of the flags, so that sometimes "true" means enforce something, something it means refuse it. It's rather confusing.

Neither allow you to add your own rules easily.

The new kid on the block is ESLint. It has a pluggable architecture, different warning levels, and make no assumptions whatsoever. With its open architecture and access to the syntax tree it should be possible to create a plugin to check just about anything you care about. It is just coming out of alpha, their first step is to duplicate JSHint's functionality and then move forward from there.

It looks very promising.

</comment><comment><USER9> This is an area I think IntelliJ really shines. The built in JSHint/JSLint makes developing and finding problems a lot better. It is still a dynamic language at the end of the day, but it makes itmore bearable.

<comment><USER10> > but it makes itmore bearable.

not when you have a huge codebase and you have to remember what function takes what kind of argument and returns what kind of result.

People might hate java,but i rarely have to learn any api by heart in java.it might be more verbose but it's just easier to write on large scale(and to discover without opening any library doc). Can developpers learn the new version of express without viewing the source code or having the doc opened on their second screen?

i thought about the problem, and I like the typescript "header" system for quick documentation(instead of jsdoc or closure comments ) , maybe there is something that can be adapted to js here...

then you have ternjs that helps a little but it's far from perfect.

yet yes,linters are just MANDATORY for js development,and fortunatly are supported by most editors,even vim.

</comment></comment><comment><USER11> Great article. Love to hear how other devs run their linter of choice during their workflow.</comment>


Fun with compute shaders and fluid dynamics - <AUTHOR> https://blog.kummerlaender.eu/article/fun_with_compute_shaders_and_fluid_dynamics/ <comment><USER3> The idea to put input energy via the mouse is nifty. Nice work!

I dont think vertex buffers are the ideal storage mechanism for lattice methods. I used Cuda to rasterize a plain buffer but I have two GPUs, the one doing the sim wasn't the one rendering. Its better this way if you are looking to run the sim 1000s of cycles per sec, but only render 60 fps. Theres a lot of extra data that could be eliminated by simply using a linear block of memory versus a vertex buffer. Depending on the goals for the sim, efficient rendering should be a lesser priority than efficient simulation speed.

Here are two very similar frameworks I made for exploring parallelizable lattice sims:

[https://github.com/churchofthought/HexagonalComplexAutomata](https://github.com/churchofthought/HexagonalComplexAutomata)

[https://github.com/churchofthought/ScatterLife](https://github.com/churchofthought/ScatterLife) (Note: the video is of a skewed version due to hexagonal lattice coords - <USER2> is fixed in the latest commits)

To OP, you may enjoy the study of transformation between Cellular Automata and Partial Differential Eqs.

The PDF below is a gem, a good introduction to the techniques that will allow you to take any reasonable PDEs and produce CAs that produce equivalent dynamics:

Cellular Automata, PDEs, and Pattern Formation [https://drive.google.com/file/d/13cT_BU8LAaUK4KTYFfhVSpCVCmr...](https://drive.google.com/file/d/13cT_BU8LAaUK4KTYFfhVSpCVCmrWCkDA/view?usp=drivesdk)

<comment><USER4> (Author here) Thanks for the interesting links!

I agree that there is much that could be optimized. The choice to use vertex buffers was driven by the overarching goal of implementing the whole thing in GLSL. It really is just a small playground project to generate some nice visualizations. If we wanted to actually use the results beyond displaying them the tight coupling between simulation and rendering would certainly become a hindrance.

CUDA usage as you describe definitely seems to be the way to go for larger scale stuff. i.e. most GPU-based LBM codes that are actually used in research seem to be based on it.

<comment><USER3> Well it looks awesome, we all are just fooling around with this stuff :-)

If you did want to increase performance, you could try to use OpenGL for rendering but write your actual sim in CUDA C++.

The whole interop API is listed here: [https://docs.nvidia.com/cuda/cuda- runtime-api/group__CUDART_...](https://docs.nvidia.com/cuda/cuda-runtime- api/group__CUDART__INTEROP.html#group__CUDART__INTEROP)

Essentially it wouldn't involve any host/memory transfer, all would be processed on GPU.

Then you could limit your rendering thread to 60fps while running the CUDA kernel non-stop.

I haven't actually tested this out though because I had 2 GPUs for the sims above, and the beefy one running the sim was on TCC instead of WDDM mode (no attached display allowable.) [1] So I had the universe state buffer transferred to host memory, and then to the 2nd GPU for rendering to attached display.

I am not sure of the speed gains TCC vs WDDM really provides, but Nvidia says it makes "some difference."

[1] [https://docs.nvidia.com/gameworks/content/developertools/des...](https://docs.nvidia.com/gameworks/content/developertools/desktop/nsight/tesla_compute_cluster.htm)

</comment></comment></comment><comment><USER5> Love the use of compute shaders and interactivity! If anyone's interested, here's a very concise high-fidelity (3D with a volumetric renderer) fluid simulation I implemented in cuda. No frills (600 LOC), but pretty pictures! [https://github.com/PWhiddy/Fat- Clouds/blob/master/README.md](https://github.com/PWhiddy/Fat- Clouds/blob/master/README.md)

<comment><USER4> Thank you for the kind words! Your simulation looks fantastic. I am frequently amazed how compact fluid simulations can be in practice. Definitely something I am going to aspire to reproduce on my own.

</comment></comment><comment><USER6> Here's another classic article about fluids on the GPU: [http://developer.download.nvidia.com/books/HTML/gpugems/gpug...](http://developer.download.nvidia.com/books/HTML/gpugems/gpugems_ch38.html)

It's significantly older, but it's still good and it goes into the details for those (like me) who don't have a background in fluid dynamics. I had a lot of fun implementing it on the side a while back.

<comment><USER7> The one I remember is the last reference there:

Jos Stam, _Stable Fluids_ [1999]

[http://www.dgp.toronto.edu/people/stam/reality/Research/pdf/...](http://www.dgp.toronto.edu/people/stam/reality/Research/pdf/ns.pdf)

More of his papers:

[http://www.dgp.toronto.edu/people/stam/reality/Research/pub....](http://www.dgp.toronto.edu/people/stam/reality/Research/pub.html)

</comment></comment><comment><USER8> This really brought back memories and put a smile on my face. My Master's thesis was writing a fluid simulation on the GPU, also using OpenGL (with all work done in GLSL fragment shaders) and also restricting simulation to 2D (because I was specifically simulating fluid running across a surface).

The most interesting thing to me was how much this article resonated with my own experiences in GPU-based particle simulation. I instead went for a particle-based method and had to make do with the state of GPU hardware and drivers as they were back in 2011. But despite the difference in computational model and all the differences stemming from the evolution of GPUs and compute shaders, the main struggles are still the same: discretization and parallelization.

</comment><comment><USER9> Is there a reason the article is linked to #fnref3? I'm not seeing anything in particular there that is being called out.

</comment><comment><USER10> It's always a fun moment when you realize he's at the same university and might be sitting next to you right now. Especially because it's a rare occurence to see the KIT here. It makes you appreciate your education more (and also a bit humble...).

</comment><comment><USER11> Wow, great to see this classic from my dynamics days,

(∂t+ξ⋅∂x+ρF⋅∂ξ)f=Ω(f)(=∂xf⋅dtdx+∂ξf⋅dtdξ+∂tf)

Brings back many great memories.

</comment><comment><USER12> this is a really awsome article to get going with this stuff, thanks a lot!!</comment>


Wikipedia is the Nr 1. Result for a Google Search for [Twitter] - <AUTHOR> http://www.google.com/search?q=twitter&pws=0

<comment><USER2> I get twitter.com as the first link.

<comment><USER3> Ditto. The OP probably just visits Wikipedia a lot, so Google is bumping it up to the top.

<comment><AUTHOR> nope, pws=0 turns of personalization, but yeah from the ipad i get the screwed results (even after cookie clean), from the desktop the ok ones. probably some faulty debice targeting from google (and its new, wasnt like this yesterday)</comment></comment></comment>


.mixtape - <AUTHOR> https://mixtape.ai <comment><USER2> did you make this in 1 hour? cause its broken.

<comment><AUTHOR> you have to register first</comment></comment>


Ethernet Connected Remote Wifi Sniffing Station with an ESP8266 Module - <AUTHOR> http://phasenoise.livejournal.com/4003.html <comment><USER2> Would it be plausible to make a sort of mobile wifi scanner? Just something to output on an lcd what the strongest wifi is? So I don't have to pull out my laptop to check if a place has wifi? Just an idea that I've been tossing around.</comment>


The unknown browser with 300M users that's breaking your site - <AUTHOR> http://thenextweb.com/dd/2015/12/24/the-unknown-browser-with-300-million-users-thats-breaking-your-site/#gref <comment><USER2> If features are not supported by software that wasn't _designed_ to include them, that does not make it "broken".

Similarly, if my adblocked browser doesn't serve every desired ad or malware, that doesn't make my browser "broken", either.

</comment><comment><USER3> I used opera mini when I had a Blackberry, 6-7 years ago. On 3g it was an order of magnitude faster browsing experience than non-compressing alternatives, and it played well on a small screen.</comment>


Bay Area Startups Find Low-Cost Outposts in Arizona - <AUTHOR> http://www.nytimes.com/2016/08/22/business/economy/bay-area-start-ups-find-low-cost-outposts-in-arizona.html <comment><USER2> Comments moved to [https://news.ycombinator.com/item?id=12337027](https://news.ycombinator.com/item?id=12337027), which is the latest of several reposts of this article.

Some users flagged this one. I'm not sure why; it seems like an obviously legit post.</comment>


Jeff Sessions, Next Attorney General - <AUTHOR> https://www.washingtonpost.com/news/the-fix/wp/2016/11/18/10-things-to-know-about-sen-jeff-sessions-donald-trumps-pick-for-attorney-general/?hpid=hp_hp-top-table-main_sessionsdoj-954am%3Ahomepage%2Fstory <comment><AUTHOR> Quote: "Legal immigration is the primary source of low-wage immigration into the United States ... What we need now is immigration moderation: slowing the pace of new arrivals so that wages can rise, welfare rolls can shrink and the forces of assimilation can knit us all more closely together."

Expect strict enforcement of the rules on H1-B visas.</comment>


Would Google search make more money if they charged 1 cent per search? - <AUTHOR> https://capitalandgrowth.org/questions/1387/would-google-search-make-more-money-if-they-charge.html?childToView=1425#answer-1425 <comment><USER2> No.

First: A penny is _a lot_ for a search. Maybe not in First world countries, but in the developing world where average annual income can be a few hundred dollars, a penny per search could add up to a discernible % of your income.

Second: Even granting the premise that the cost wouldn't be a factor, this would add too much friction to the user experience. Given _any_ alternative, much less one that returned halfway decent results, most people wouldn't bother with the hassle of setting up a payment account.

Think about how Craigslist demolished the newspaper Classifieds business in an incredibly short period of time. They were pretty cheap, the local paper might charge $5 to start, but _everyone_ used them for services, for job listings, etc., so you got lots of eyeballs on your ad. In aggregate these used to be roughly 40% of ad revenue for a paper. It's estimated that by 2000, there was nearly $20billion in such revenue. There was, however, a lot (relatively) of friction for the average user: Fill out a form, get a check or money order, mail it in... Then came Craigslist. It was free. You didn't even need to login, you just typed and hit enter. When it went nationwide in the early 00's, it went viral fast, and in a matter of about 2 years it was all but over for printed classifieds. (Ebay was of course the other murderer, but "For Sale" classifieds were only a fraction of the volume, so I attribute this primarily to Craigslist. It's the story of how a company that even today grosses under $1billion in revenue killed a market that was 20x that size in the US alone.)

</comment><comment><USER3> I'm sure they are quite happy not having to paying for a free product to sell.

</comment><comment><USER4> No but that's because 1 cent is way too much for much of the world.</comment>


Amazon Kindle Fire review - <AUTHOR> http://www.engadget.com/2011/11/14/amazon-kindle-fire-review/ <comment><AUTHOR> just throwing this out there, the silk browser takes advantage of caching content. when you have only a dozen reviewers using it is not really indicative of how it will preform with a million users using it</comment>


Why do game developers prefer Windows? - <AUTHOR> http://programmers.stackexchange.com/a/88055 <comment><USER3> Already previously posted and very heavily discussed: <https://news.ycombinator.com/item?id=5124476>

<comment><USER4> Everyone is missing the point. They develop for Windows because they will have the most chance of getting someone to play their game. (95% of installed O/S in PCs).

</comment></comment><comment><USER5> Speaking from an independent developer's perspective:

Visual Studio + C# + Resharper = .extremely. productive development environment.

Video games tend to require lots and lots and lots of code, so productivity is absolutely critical - especially for independent developers who don't have a dozen man-years to blow on a project. Using autocomplete I can produce raw code an order of magnitude faster than I could by typing out each symbol name by hand. That combined with amazing refactoring/cleanup tools makes windows extremely lucrative for gamedevs.

<comment><USER6> When it comes to IDEs and things like refactoring and autocomplete, I could never get along with Visual Studio. I mean, the fact that you need Resharper in addition to Visual Studio which costs a lot by itself, is kind of a red flag. Java IDEs have been much more productive for quite some time and I especially like IntelliJ IDEA, being from the same people that provide you with Resharper.

Also, doing games development in C# doesn't make sense to me, C++ (maybe in combination with a scripting language like Lua) being the defacto standard for games. And if you are an independent that values productivity, C# has approximately the same drawbacks as Java. And there are successful games out there that make use of it, like RuneScape, Puzzle Pirates or Minecraft.

I mean, if you value productivity over runtime efficiency and want something that runs on top of a VM, might as well get something out of it, like portability.

<comment><USER7> C# is actually heavily used by Indies because its the language for Microsofts XNA Toolkit. Many successfull XBLA indie titles (Supermeatboy, Braid, Bastion etc) have been created using it. Using MonoGame you can also bring the games to Linux/OSX/iOS/Android and other consoles (<http://monogame.codeplex.com/>).

Furthermore the highly popular Unity Game Engine offers C# as its scripting language which is the language of choice for every bigger and serious project because huge projects written in Javascript are alot more pain to maintain. Part of this is Visual Studio excellent features (you dont necessarily need Resharper).

So there actually is alot of C# in game development these days, mostly used as the Scripting language while the engine and APIs are written in C++.

<comment><USER8> Are you sure about your examples?

I think you're confusing "xbox live arcade" with "xbox live." You don't have to create games with XNA to get them on xbox live. I specifically remember C++ code in Indie Game: The Movie (for Super Meat Boy). And I'd bet money that Jonathan Blow, the creator of Braid, prefers C++ over C#.

This isn't to say C# isn't a viable option on consoles. I believe FEZ is all C#...that game is incredible, from an art design standpoint at least. It did have visible garbage collection pauses though.

<comment><USER7> yep, guess ur right, but FEZ and Bastion are definitely made with XNA and in the case of Bastion the Linux/iOS Version uses MonoGame.

</comment></comment></comment></comment></comment><comment><USER9> A lot of industry domains prefer developing on Windows. I find this culture even in places like embedded programming world.

Want to develop for a TI processor/controller or a Analog devices one? Or anything for that matter? Its a certain that the Linux/Mac tool support is no where closer to Windows. Yes you can argue that you can bypass all that roll out your tool chain and use it. The argument works for a hobbyist set up. If you are doing serious work, which has some form of revenue or business impact at work then its pointless to be solving meta problems when the actual problem is on standby.

Its all about tooling support. If your largest customers are corporate ones. They will inevitably use Windows due to ease of administration and support for tools like Microsoft office. And since most of your customer are using Windows the vendors will always provide a degree of better support for Windows.

Windows wins.

<comment><USER10> > Ease of administration

Why is Windows "easier to administer than Linux"?

With Ubuntu you have one single place to keep all your OS packages up-to-date: apt-get. With Windows, each program installs its own installer, which means boot gets slower...and...slow...er... every time you start it up.

Those updaters all have GUI prompts. Good luck getting them to run remotely, or finding documentation on their command-line parameters (if they accept any).

For that matter, on Linux, you can run commands remotely with ssh. On Windows...there really is no good way to run commands remotely, is there? Other than installing an SSH server in Cygwin or mingw, that is.

And even if you can run administration scripts remotely, Linux distros usually have Bash and Python (at minimum!) installed by default. Although cmd.exe has improved since FOR was introduced, it still leaves much to be desired compared with the flexibility of Linux scripting languages.

<comment><USER11> RDP - Remote Desktop Protocol... runs a remote GUI better than anything in the *nix echosystem. NX is about as close as it gets, and that is still not as good.

That said, you can still put SSH/Telnet on windows even over a VPN. I currently have NodeJS on my servers, so I can run a pretty wide variety of tasks, even through the node REPL interface.

Not a fan of PowerShell...

<comment><USER12> > Not a fan of PowerShell...

It could be less verbose, but it is still way better than the old cmd.

<comment><USER11> I tend to just use node, and node's repl if I need something quick beyond what a shell can do these days.

</comment></comment></comment></comment></comment><comment><USER13> Most answers offer a triple-A game dev perspective, so here's some indie...

Toolsets are much more obtainable on Windows. That includes cracked apps, educational licenses, and plenty more sources. They're also more expansive; almost anything runs on Windows, even if in an intermediary way. There is also a vast majority of apps that run solely on Windows.

Huge majority of your end users are on it, so you need to have it anyway. Running a VM just to test stuff out is inconvenience to say the least.

Other devs to whom you communicate use it.

Documentation and help all over the internet covers Windows side much better than other OS'. Source files already available for inspection are usually made to compile on Windows.

Macs are expensive and whole experience of being jailed in OSX doesn't really go well with indie attitude. IOS gold rushes somewhat turned game dev eyes on it, but that's dying recently, as more and more devs try to find opportunities on various existing and upcoming Android stores. Toolsets for iOS sucked anyways.

Linux (on which I'm trying really hard to develop a workflow) lacks application ecosystem neccesary to fuel all the game development aspects.

Last, but not least - gaming. We game a lot. And a lot of it is nostalgic, some for inspiration. No other OS offers such a huge quality game title offering as Windows does.

</comment><comment><USER14> Same reason Willie Sutton robbed banks.

</comment><comment><USER15> I worked in the games industry for over 10 years. A platform other than Windows was not an option. Microsoft provide a solid platform with an excellent tool set. Not only that but all of the main content authoring tools (3DStudio Max, Photoshop) exist in Windows only (I realise PS exists on other platforms, but MAX did not).

Games studios operate on extremely tight budgets, often a hand to mouth existence on publisher deliverables. This is their only revenue stream. It simply makes no sense to move a team of 50 people to another OS when everything they need and know already exists in Windows.

I've been out of the industry for 5 years now, I still keep in contact with my friends in the industry, and as far as I know things are still the same.

</comment><comment><USER7> The rise of the game industry happened when Microsoft was the dominant force, thats where the users were and Microsoft made sure that games work great on their platform with DirectX and great Development Tools like Visual Studio.

Its really that simple, wed see alot more Linux games if the market was viable, right now it simply isnt. Even on mobile many games are iOS only because many developers think Android isnt viable yet in terms of monetization while Androids marketshare is bigger than iOS. Looking at that, Linux gaming still has a long road ahead but its getting better, especially when it comes to Indie games.

</comment><comment><USER16> Vast market share with a far behind #2 competitor? There may be other reasons, but this one is definitely #1 by far. If you really want to ask a question like this, better ask why do they prefer Direct3D over OpenGL, or why aren't they making the games cross-platform. But in most cases, the answer should be the same. Windows is "big enough" and they don't need the other platforms (at least so far - things might change in the next few years).

</comment><comment><USER17> Speaking as a professional game developer of 14 years, Windows is preferred because of two things:

      1. PC Games
      2. Visual Studio

Quake was developed using NEXT station (first version of QuakeEd was written in Objective-C and running on it), but since then the tools were transfered to Windows along with the game distribution. Modders could add new levels, change existing assets all on their own machines.

Windows is easy to get, easier to administer, or to say properly - <USER2> administer at all, and in the pre-internet years it was not a big deal.

Also all proper graphics cards, drivers were available first on Windows, and Microsoft somehow nailed it with D3D.

</comment><comment><USER18> This is probably part of the reason: [http://en.wikipedia.org/wiki/Usage_share_of_operating_system...](http://en.wikipedia.org/wiki/Usage_share_of_operating_systems)

</comment><comment><USER10> It's a classic chicken-or-egg problem:

Gamers would use Linux if there were lots of Linux games.

Developers would write games for Linux if gamers used it.

The situation is slowly changing, since the rise of widespread broadband has let indie developers break the hold of big publishers on distribution channels, and a fair number of indie developers are willing to support Linux for ideological reasons.

<comment><USER19> Another problem is that the Linux kernel is and has been mediocre in lots of little ways that Windows is not.

<comment><USER20> Care to substantiate? In not just my experience, the Linux kernel is wastly superior to NT one.

<comment><USER19> One example is Linux asynchronous file I/O versus Windows'.

</comment></comment></comment></comment><comment><USER21> Direct X.

<comment><USER11> +1 I would say D3D and the best available graphics support are probably at the top of the list... an addendum to that would be More users on windows, which makes D3D even more sane to use.

Now, there are plenty that prefer Visual Studio as well, over other dev environments. I very, very, very rarely do C/C++ coding (forgotten most of what little I ever knew), so can't comment there.. I will say I prefer VS + C# over most of the Java options I've tried... though I am using WebStorm for NodeJS dev (based on InteliJ)

</comment></comment><comment><USER22> I think there's a cultural element.

Visual Studio, although apparently beloved, is just an IDE.

Look at the rise of consoles, look at this thread.

See the talk of there not being 'standards' on Linux and consider the biggest way the Linux community gets around that: Open Source codebases that rely on users who are also devs to help fix things up and get them working everywhere.

Linux isn't an ideal 'uniform consumption device', so it's not an appealing target. Now it's starting to get some love because people are looking around and asking 'What about freedom?'.

</comment><comment><USER23> Because of Visual Studio?

</comment><comment><USER24> Direct 3D + windows only sdks + windows only 3d engines + proper graphic card drivers + huge userbase + 3d tools running exclusively on windows + easier binary distribution + not have 50 distribs to maintain + etc ... that's quite easy why , until Linux becomes game developper friendly , linux is dead as a gaming plateform...

<comment><USER25> > not have 50 distribs to maintain

I still don't understand that. Simply support ubuntu only, the other distributions will do the rest. E.g. the steam beta worked fine on archlinux and fedora from day one. And if they have problems you can either decide to look into it or ignore it because you officially only support ubuntu.

<comment><USER9> >>Simply support ubuntu only

Firstly historically speaking Ubuntu has gotten famous only now.

Secondly, another distro fan is likely to argue <insert his favorite distro here> should be supported rather than ubuntu because of <insert a pedantic reason here>.

Agree on a standard that works for every one and then we shall talk.

<comment><USER25> Actually I'm an Archlinux fan but I haven't yet encountered any software targeted at ubuntu that wouldn't work on archlinux too (with some work from repackagers, but as a company you don't have to do it because people who want to use it on an "unsupported" system will).

It's just another linux and everything can be ported from it if necessary. Even unity would work fine, once ubuntu's patched x.org and libindicator were on Archlinux.

As far as I know ubuntu has been the the most popular (for targetting software) distribution for several years now, so why not?</comment></comment></comment></comment>


Is PC World Havesting EMails or is it really down... - <AUTHOR>

PC World's website is down for maintenance at the moment.
If you visit the site now, they are offering a discount code via email to say sorry for the inconvenience...The news is spreading fast but are they simply harvesting emails?
http://www.pcworld.co.uk <comment><USER2> Who knows. "Give us e-mail, we give you something of value" smells very fishy though.

<comment><AUTHOR> pcworld.co.uk is a very reputable company here in the UK so I would not expect them to damage their reputation by harvesting email in this way for 'dodgy' reasons but it is not nice to simply ask you to hand over an email address without specifically saying 'it will not be used for purposes other then x y and z and will not be provided to 3rd party companies etc.'</comment></comment>


Why is processing a sorted array faster than an unsorted array? - <AUTHOR> http://stackoverflow.com/questions/11227809/why-is-processing-a-sorted-array-faster-than-an-unsorted-array

<comment><USER2> Why does this get reposted every three months?</comment>


Kayak's Paul English Plans to Bring Free Wi-Fi Access to Africa - <AUTHOR> http://www.fastcompany.com/1645485/kayak-co-founder-starting-initative-to-blanket-africa-in-free-wireless-internet <comment><USER2> Free sounds like a bad idea to me. Yet another band-aid on the festering wound that the west has created while raping Africa of it's resources. Instead, we should help build an economy.

For a while I've been considering trying to get a grant and working with GeekCorps to teach entrepreneurship in Africa. We would go from village to village, interview people to find those with entrepreneurial tendencies, teach them enough of the tech to build a WISP, and give them micro-loans for the hardware and connectivity that would enable this.

<comment><USER3> Read the rest of the article, he's partnering with local telcos and they'll be able to charge customers for upgraded access and faster connection speeds. "I want this to be completely self-sustaining," he says.

<comment><USER4> like partnering with the likes of Telkom? that would be awful.</comment></comment></comment>


Dear Silicon Valley, Thank you - <AUTHOR> http://wesleyzhao.com/2011/04/29/dear-silicon-valley-thank-you/

<comment><USER2> I'm sure a lot of people that traveled out here for YC interviews travel, do the interview and head back home. This guy is out meeting half of SV. That's the sign of a great entrepreneur. Props to Wesley for taking the initiative and making the most of the trip.

</comment><comment><USER3> Do you guys think this is disingenuous?</comment>


No, a vaccine or antiviral therapy won't save us from the first wave of Covid-19 - <AUTHOR> https://theprepared.com/blog/no-a-vaccine-or-a-re-purposed-antiviral-therapy-will-not-save-us-from-the-first-wave-of-covid-19/ <comment><USER2> I am interested in discussion about favipiravir.

<comment><USER3> well for one thing it jams up the enzyme that reads out viral rna-

and it likely incorporates into the viral rna transcript and makes insertions that destroy viral functionality</comment></comment>


If Steve Jobs were starting out today he would struggle to get funding - <AUTHOR> http://www.zdnet.com/blog/foremski/if-steve-jobs-were-starting-out-today-he-would-struggle-to-get-funding-hes-a-marketeer-not-an-engineer/2010

<comment><USER2> This is absurd. Steve Jobs would definitely get funding. He's persistent, persuasive, and full of ideas. He'll eventually convince an engineer to join him by any means necessary. He'll shine when it comes time to present to VCs. He made many of the initial inroads with Apple in the early days raising money, getting manufacturing components, and employees as a shoeless, unbathed hippie with long hair. He made initial investors believe in personal computing when there was no such thing. I think that's much more difficult than convincing venture capitalists looking for the next hot thing in an overheated market.

</comment><comment><USER3> Steve Jobs had a technical partner (Woz). If he didn't, he probably wouldn't have gotten funding (he wouldn't have had anything to necessitate funding).

What this article should have said is that there needs to be a better way to connect creative non-technical visionaries (whose primary skillsets are having an empathic understanding of the customer, product design, and an ability to build passionate followings/movements behind those products) with engineers from the start, rather than having startups/accelerators treat them like an afterthought (ie, post Series A, let's hire a marketing intern to do some A/B testing).

What Jobs proves is not that people like him should always run things, it's that they need to have a better seat at the startup/accelerator table than they currently do. Identifying them and plugging them in earlier in the process would help the startup scene as a whole.

<comment><USER4> As a domain expert and non-engineer myself, I've found it incredibly hard to get taken seriously by investors. Recruiting a credible technical co-founder has been tough, too. I agree that there is no well beaten path to capital for some like myself to follow. On the bright side I figured out how to just make my own money, and that's probably a healthier path to follow anyway.

<comment><USER5> As a technical founder - it's equally difficult to find a good sales/marketing guy. How are you supposed to interview them? Take four to a bar and compare how many friends they make?

<comment><USER3> Same things you'd do to find a developer:

1) Ask them what they've done before.

2) Test them. Ask them what they specifically would do for you/your product now. Taken a step further if you have the resources: narrow down a few candidates, pay each a nominal fee to write a marketing plan, upon which you base your final decision.

</comment></comment></comment></comment><comment><USER6> Fortunately he had an engineering genius as his partner.

I think a team like that would be fine today. Marketing genius/perfectionist and engineering genius.

</comment><comment><USER7> ...especially if it's for a new computer with a 6502 CPU running at 1MHz :-P</comment>


Futurese – The American Language in 3000AD (2003) - <AUTHOR> http://www.xibalba.demon.co.uk/jbr/futurese.html

<comment><USER2> I'm not sure the "(2013)" in the title is right; this page was last updated in 2013 but it is a decade older than that. Still, this is a fun experiment and a great read if you haven't encountered it before.

If I were to bet money on it, however, I would say that voice recordings and a world-wide broadcast system will turn out to have slowed down very considerably the rate at which sounds in a major language like English change. Barring catastrophes and conquests 2014 AD English is likely to be a lot easier to understand to 2700 AD English speakers than Middle English is to modern speakers.

<comment><USER3> Your intuition that modern technology is slowing down language change, while entirely reasonable, is generally thought to be wrong by experts in language change.

LETRA MAGNA - How do radio, television, films and popular entertainment affect language?

LABOV - Our studies of sound changes in progress indicate that the mass media have almost no effect on the development of every-day language, which is influenced far more by the interaction of peers in every-day life. Passive listening to radio, television, or teachers in school, does not appear to affect the basic machinery of language production. In North America, regional dialects are becoming more diverse even though the mass media are quite uniform. Actprs on television programs will often reflect changes that have taken place in the community a generation before. The same principle applies to grammatical innovations, like the new English verb of quotation, "be like." Rosa Saladino showed that watching television had no effect on the replacement of dialect words with Italian.

(from an interview with Bill Labov, "founder of modern sociolinguistics": [http://www.letramagna.com/entrelabov.htm](http://www.letramagna.com/entrelabov.htm))

[edit for whitespace]

<comment><USER4> And you can kind of see this already in existing dialect shifts. The "Transatlantic" dialect is largely gone, but for a long time it was extremely popular in any form of media involving voice.

</comment></comment></comment><comment><USER5> Stressed vowel breaking is very common in other languages. Swedish and Finnish both rely on it heavily. In Swedish it is generally denoted by a vowel followed by a single consonant. For example, "tak" means "ceiling" and "tack" means "thank you". They are pronounced similarly but the "a" in "tak" is breaking and "a" in "tack" is non-breaking. In Finnish, breaking vowels are just repeated. For example, the name Miikael and Mikael having a slightly different pronunciation due to the breaking and non-breaking "i".

</comment><comment><USER6> Kind of a random point, but demon.co.uk is something you'd want to add to the domain suffix list on HN, it's a bit like blogspot.com in that regard.

<comment><USER7> I'd imagine they're using (at least indirectly) [https://publicsuffix.org/list/effective_tld_names.dat](https://publicsuffix.org/list/effective_tld_names.dat)

Amendment procedure: [https://publicsuffix.org/submit/](https://publicsuffix.org/submit/)

</comment></comment><comment><USER8> Wrong on Premessis one.

We now have recorded video and audio. Things are now stuck here.

Anyone 40+ years old remember when everyone had a serious accent and you tell where a person was from after one sentence. Now a day NADA information UNLESS they lived in the epicenter of that accent(i.e. lives in Boston (Not Springfield MA to Boston etc.)

</comment><comment><USER9> Just go watch the movie "idiocracy" and there's the language that will be used even before 3000AD.</comment>


Ancient flower lives only on two Spanish cliffs, and uses ants to survive - <AUTHOR> http://blogs.discovermagazine.com/notrocketscience/2012/09/12/ancient-flower-lives-only-on-two-spanish-cliffs-and-uses-ants-to-survive/

<comment><USER2> The article is a great read!

I am reminded of [http://www.npr.org/blogs/krulwich/2012/02/24/147367644/six-l...](http://www.npr.org/blogs/krulwich/2012/02/24/147367644/six- legged-giant-finds-secret-hideaway-hides-for-80-years) \- which if you haven't seen yet, is amazing also.

<comment><USER3> Thanks very much for posting this. From the second paragraph of the Discover article I was thinking "this reminds me so much of something I read years ago...what the devil was it?". Turns out it was not years ago, but just last February (I thought time was supposed to speed up as you get older?). It's a fairly safe bet that NPR article was linked on here and that's how I came across it, too.

</comment></comment><comment><USER4> These types of complex mutualistic interaction between multiple species are precisely what biologists predict are most prone to being disrupted by environmental degradation and climate change, leading to high extinction risk for the dependent species. This fascinating flower (one of the few "living fossils" in the yam family) has been successful in persisting over vast evolutionary time scales, yet is now critically endangered. In the face of the mass extinction event we humans seem determined to inflict on our biosphere, conservationists often advocate concentrating our efforts on saving ancient species like Borderea chouardii, because they present relatively isolated, long branches on the tree of life. This means that saving them equates to saving the maximum evolutionary history - and thus the maximum phylogenetic diversity - with the minimum effort. (In practice, many other factors have to be taken into account.)

</comment><comment><USER5> Now that is a well-written article. The bookend plays on words are just smart enough to not be cheesey but rather make the article especially memorable.

<comment><USER6> I quite liked that as well, smart writing and having fun with the topic.

</comment></comment><comment><USER7> For what it's worth, using antweb.org I checked the geographic distribution of the ant species mentioned. _Pheidole pallidula_ is widely distributed in the Mediterranean, and both _Lasius grandis_ and _Lasius cinereus_ are found in the Azores, Canary Islands and Madeira.

</comment><comment><USER8> Well-written article and interesting read. What I didn't understand is in what sense that plant is considered "ancient"? Is it the lifespan of individual plants (300 years)? The article claims that "The plant is a relict, an ancient hanger-on from a time just after the death of the dinosaurs" -- I'd like to know what is meant by that sentence that isn't equally true for homo sapiens.

<comment><USER9> Good point. I'm assuming they mean ancient in genetic sense, i.e. kind of species that were typical back when dinosaurs were around and because of their somewhat isolated history, they evolved in a slightly different way from most plants in that geographical area.

</comment></comment><comment><USER10> Nice article with such a detailed information.

Research is never easy, but exciting and fun.</comment>


Brainiac Dating: Solve puzzles and meet your fellow nerds online - <AUTHOR> http://thenextweb.com/apps/2011/07/15/brainiac-dating-solve-puzzles-and-meet-your-fellow-nerds-online

<comment><USER2> I question whether enough women will bother going through puzzles in order to find a match. History might prove me wrong, but I feel this will turn the site into even more of a sausage fest than your average OKCupid. Women don't need to look that hard to find a nerd on a dating site.

<comment><USER3> On OKCupid, you can narrow your search by languages spoken. Two of the languages they list are C++ and Lisp. It's worked for me.

</comment></comment><comment><USER4> Interesting idea, but oh dear does the dating site need some serious help from a web designer.

</comment><comment><USER5> Though clunky and perhaps not entirely well thought-out, it does get at the question of how to meet the literally like-minded. While I doubt that I'd poke around with Mensa-esque puzzles to prove my intellectual worthiness, I do think there needs to be _some_ way to get male and female nerds in the same room with the potential for more than just a keynote speaker.

<comment><USER6> _Though clunky and perhaps not entirely well thought-out, it does get at the question of how to meet the literally like-minded._

I will now reveal my super secret method to meet literally like-minded people:

1\. Find a group engaging in something you like, perhaps a fantasy book club, or a frisbee team, or a wicker furniture building class, anything you have a real interested in.

2\. Join that group.

3\. There's no step 3.

<comment><USER5> I love your super secret method!! In the circles I travel in, there's quite a bit of shoe-gazing... so I am going to try and find that wicker furniture building class - it sounds delightful.

</comment></comment></comment><comment><USER7> Sometimes Scott Adams says it better than words alone can:

<http://www.dilbert.com/2011-07-14/>

</comment><comment><USER8> ... then argue about which of you is smarter.

<comment><USER9> Yeah, came over here to say, "Looks like an excellent place to meet pompous Mensa clowns, if you're into that sort of thing."

</comment></comment><comment><USER10> The problem with a lot of dating sites is the spam factor: people with fake profiles, scammers, etc. Why can't dating sites use a SMS-based verification system to filter out the riff-raff?

<comment><USER11> SMS verification is useless. Spammers have just as easy (if not easier) access to numbers as ordinary users.

That, and most people don't want to share their numbers with some site. For all they know, you are just collecting the numbers and reselling them.

<comment><USER12> I bet most people don't care. On a dating site for "fellow nerds" though, it might not fly.

</comment></comment></comment><comment><USER13> Just write well. You'll stand out on any dating site.

<comment><USER14> Photogenics factor in more than you might expect.

</comment></comment><comment><USER15> The first dating site designed _not_ to get you laid.</comment>


Ask HN: What are the alternative programs to Y Combinator? - <AUTHOR> My startup is an ecommerce chatbot b2b startup targeting the sellers in the middle east and emerging markets.
Ycombinator keeps rejecting my application, which is normal.
So I am interested to know what are the best accelerators and incubators alternative to ycombinator and has the same level? <comment><USER2> Since you mention that money is the main thing you need, I think you are mostly looking for a "seed stage investor". Crunchbase has a list of a ton of those (802 total) that exist in the SF Bay Area. Looking at the full list requires a pro account, but a free trial is available.

[https://www.crunchbase.com/hub/san-francisco-bay-area- seed-s...](https://www.crunchbase.com/hub/san-francisco-bay-area-seed-stage- investors#section-overview)

</comment><comment><USER3> Techstars

500 Startups

In SE Asia, there a few smaller ones like JFDI, WTF, 1337, but the success rate is nowhere near YC. Many have tried but very few people can do accelerators, and it's just as draining as running a startup for the people who operate them.

</comment><comment><USER4> Maybe I'm missing something, but why do you find that rejection normal?

<comment><AUTHOR> The acceptance rate at ycombinator is very low - 1.5% Only who get accepted.

<comment><USER5> Apply for startup school. I got more out of the school than attending "real" accelerators.

Pay close attention to what they are talking about rather than dismissing as not applicable to you

<comment><AUTHOR> We need money. :)

<comment><USER6> Well, to that point, YC or alternative programs be like "Why should we give you money?"

</comment></comment></comment></comment></comment><comment><USER7> Depends on what you were hoping to get out of YC.

There likely isn't any alternative that will provide you the same value when fundraising.

</comment><comment><USER8> Google search for ycombinator alternatives leads to answers on several social sites with interesting discussions.

</comment><comment><USER9> Search for "middle east startup funding" ?

How much do you need? Any recurring revenue?

</comment><comment><USER10> How about [https://tinyseed.com](https://tinyseed.com)

<comment><USER11> Hey, Tracy here, program manager at TinySeed. Thanks for recommending us, the OP's business is right up our alley. Happy to chat any time if anyone has questions: firstname.lastname@example.com

</comment></comment><comment><USER12> Do Entrepreneur First and Antler count?

</comment><comment><USER13> Techstars</comment>


HTML5 Security Cheat Sheet - <AUTHOR> https://www.owasp.org/index.php/HTML5_Security_Cheat_Sheet

<comment><USER2> I've tried to get Content Security Policy (CSP) rolled out in our new development at work, and to be frank I'm starting to lose faith that it is workable.

We're on report only at the moment, and it seems like every major JavaScript library depends on Eval() in one way or another (mostly new function()).

Just this week someone wanted to use Angular (1.3.1) and it generates dozens of CSP reports without ng-csp in the HTML element, but when the attribute exists $http responses (which depend on function()) aren't working (e.g. success(function(data, status, headers, config) {}).

Unfortunately Angular's documentation on CSP is a single page with nothing particularly helpful, and tons of stackoverflow results about Google Chrome extension development.

This is just the tip of the iceberg. Seems like every single major JavaScript library (even things you just take for granted) break CSP or need tons of exceptions.

<comment><USER3> As far as I can tell, the are no issues with the `function` keyword in csp mode, but the `Function` constructor, eg.

`Function("a", "console.log(a);")`

Your example is a callback with an anonymous function.

Do you have any links to discussions about your issue?

</comment></comment><comment><USER4> You can scan for a huge chunk of this with [https://www.tinfoilsecurity.com](https://www.tinfoilsecurity.com), and we're adding more every day. Most importantly, you should make it a regular part of your Dev cycle.

Note: this isn't an ad, it just seemed relevant to those interested in a "cheat sheet." Automating it by calling out to our API seems really relevant. :)

<comment><USER5> The problem with your approach is that you are assuming that people are fine that scan for in production for security issues. While it is true that everyone does it, this arguments falls flat because there are plenty of systems which will avoid the risk and for good reasons.

<comment><USER4> Nope, in fact you can scan in staging or Dev too, by using Bifrost: [https://www.tinfoilsecurity.com/developer/bifrost](https://www.tinfoilsecurity.com/developer/bifrost)</comment></comment></comment>


Ask HN: How to calculate pupil (eye) dimensions in mm using CV (computer vision) - ben-gy I'm embarking on a project using pupillometry (the study the pupil within the eye).
My requirement is to use computer vision to determine the size of an a closeup image of a pupil (for accuracy purposes the pupil needs to take up 80% of the image).
I can't use a reference object in the image.
I could use the LIDAR in the new iPhone (unreleased) but the people using this product will not all have the latest iPhone so a more mainstream solution is required.
Maybe there is a published scale standard that I'm missing? Maybe there's an ML dataset of eyes and measurements that I'm missing? Maybe I'm missing some other obvious solution?
Any help/input would be greatly appreciated :) <comment><AUTHOR> some resources you may want to use:

[https://news.cornell.edu/stories/2018/10/using-smartphone- ca...](https://news.cornell.edu/stories/2018/10/using-smartphone-cameras- track-alertness)

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

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

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

[https://www.researchgate.net/post/What_is_the_best_measure_t...](https://www.researchgate.net/post/What_is_the_best_measure_to_track_pupil_dilation_in_an_experiment_where_a_video_continuously_recorded_one_of_the_participants_eye)</comment>


Ask HN: A practical use for bot traffic - <AUTHOR>

As a by-product of I do in my day job we detect paid bot traffic. Just thinking there must be some practical uses for them - maybe in testing? Any ideas? Just curious <comment><USER2> As it is not my day job, can you elaborate on what is bot traffic?

<comment><USER3> Bot traffic I'm guessing is from spiders and scrapers.

And paid bot traffic is probably hits to artificially increase your website traffic so it seems more popular. Maybe this helps with SEO?

Another guess, it can be used for load testing websites. And if you are on the receiving end perhaps you could redirect them somewhere else using your .htaccess file. Probably lots of this on Fiverr.</comment></comment>