Programming Notes for Professionals books - <AUTHOR> http://books.goalkicker.com/TypeScriptBook/ <comment><USER2> Is everyone aware that this is merely a dump of "Stack Overflow Documentation" (not Stack Overflow Q/A), repackaged in PDF format ? (Also a request for bitcoin donations.)

[https://meta.stackoverflow.com/questions/354217/sunsetting-d...](https://meta.stackoverflow.com/questions/354217/sunsetting- documentation)

[https://stackoverflow.com/documentation](https://stackoverflow.com/documentation)

[https://archive.org/details/documentation- dump.7z](https://archive.org/details/documentation-dump.7z)

There is no indication that these books are curated or edited.

<comment><USER3> Agreed. The Haskell version has advanced topics such as Free Monads in chapter 8 and higher-order functions in chapter 35! The author for each piece of content has also not been included, which means I have no way of knowing if the content has been authored by a computer science professor or his/her student.

<comment><USER4> There is a list of contributors at the end of each book, but it's only their site user name with a link to the profile.

</comment></comment></comment><comment><USER5> You can grab all the PDFs with wget:

      wget --random-wait -R ".html,.png" -r goalkicker.com

Or download the archive directly (Not PDF, data is in JSON format): [https://archive.org/details/documentation- dump.7z](https://archive.org/details/documentation-dump.7z)

<comment><USER6> Alternatively you can download all from [http://books.goalkicker.com/all.zip](http://books.goalkicker.com/all.zip) :)

</comment></comment><comment><USER7> I haven't compared the text to see how much editing was involved here, but based on the credits line in the books this appears to be the abandoned StackOverflow Documentation beta in PDF form?

[https://stackoverflow.com/documentation](https://stackoverflow.com/documentation)

<comment><USER8> Why did StackOverflow shut it down? It was really useful.

<comment> happy-go-lucky > Why was this decision made and why now?

[https://meta.stackoverflow.com/questions/354217/sunsetting-d...](https://meta.stackoverflow.com/questions/354217/sunsetting- documentation)

</comment></comment></comment><comment><USER9> What an amazing initiative — not least because they're providing something consumable for offline.

Does anyone have any knowledge on the quality of this material? I'd love to dive into quite a few of them where I have surface-knowledge...

<comment><USER10> Agreed, this is incredible - especially to have something that can be perused in physical format.

Looking through some of the examples for the languages I know well enough to judge, these seem to be good quality. As a simple case in point, for how to open a file in Python they only show using a context manager. Even though you can easily read files without that, it is the better, safer, perhaps slightly- more-intermediate-level option and also makes a person more familiar with context managers in general. So it is nice to see best practices presented as the defaults.

<comment><USER9> Thanks! Python is one of the ones I'm going to check out so that example makes me feel confident about using this as a resource :)

</comment></comment></comment><comment><USER11> A lot of effort went into this, I also took a look at the languages I'm familiar with. They even have screenshots of the results and provide an excellent way of showing exactly what you would input and see. I really appreciate the fact that they are pdf that you can save and don't have to rely on an internet connection.

</comment><comment><USER12> This is a really great effort to compile relevant answers into a narrative.

Is there any way that the community can contribute to adding new resources to the list, so that the books can be updated in future releases?

<comment><USER13> _> great effort to compile relevant answers into a narrative_

Don't confuse "StackOverflow Question&Answers" with "StackOverflow Documentation":

[https://stackoverflow.com/documentation/](https://stackoverflow.com/documentation/)

Goalkicker "only" provided formatting and beauty. They _did not_ reformulate tons of Q&A into a documentation - that work was already performed by the StackOverflow Community.

<comment><USER12> Wait, did the Stack Overflow community compile these answers into the ordered list provided by the book?

What I had assumed is that the "author" of the book hand picked these answers and arranged them together along with their chapter names into a narrative to aid understanding.

Is my understanding incorrect?

<comment><USER14> No, it's "just" converting selected tags from Stack Overflow Documentation ([https://stackoverflow.com/documentation](https://stackoverflow.com/documentation) \- now shut down) into PDFs.

</comment></comment></comment></comment><comment><USER15> Several years ago, I would ask StackOverFlow questions on esoteric topics like elisp, with the idea that by asking small, well-defined questions, you could eventually create enough of a trail that no topic would remain difficult to learn. For example, here are a few I could find:

[https://stackoverflow.com/questions/2170528/writing-hello- wo...](https://stackoverflow.com/questions/2170528/writing-hello-world-in- emacs)

[https://stackoverflow.com/questions/1541682/lisp-script- to-p...](https://stackoverflow.com/questions/1541682/lisp-script-to-parse-csv- and-generate-html-table)

[https://stackoverflow.com/questions/2264286/generating-a- qui...](https://stackoverflow.com/questions/2264286/generating-a-quiz-in- emacs-lisp)

While books are great, something more interesting would be a little app window in your editor, where you could type (or ask Cortana, Siri, Google) "How do I declare a set", "parse csv", "open file for writing", etc., and you would see small examples. The language is known by the editor so no need to include it in the query.

So, for instance, if I wanted to write an F# program, which I don't know, I could learn it on the fly.

StackOverFlow has the database of knowledge by now. Now, how to get your exact answer, faster?

"Siri, how do I round the corners of a view in iOS?"

<comment><USER16> What you're describing is not unlike howdoi: [https://github.com/gleitz/howdoi](https://github.com/gleitz/howdoi)

</comment></comment><comment><USER17> I was hoping that someone had harvested every PDF cited in SO answers and culled it down to a definitive list of most popular reference works. Now there is an idea.

</comment><comment><USER18> Not impressed. I downloaded the python book, chose a section at random (chapter 15: dictionaries), and found an error on the first thing I looked at.

The book says that:

        d=dict(**otherDict)

only works if otherDict's keys are strings, but in reality it also works if the keys are integers:

        >>> dict(**{1:2,3:4})
        {1: 2, 3: 4}

<comment><USER19> Looks like a 2 vs 3 thing:

      Python 2.7.14 (default, Jan  6 2018, 14:37:03)
      [GCC 5.4.0] on linux2
      Type "help", "copyright", "credits" or "license" for more information.
      >>> dict(**{1:2,3:4})
      {1: 2, 3: 4}
      >>>

vs

      Python 3.4.5 (default, Jan  6 2018, 14:44:12)
      [GCC 5.4.0] on linux
      Type "help", "copyright", "credits" or "license" for more information.
      >>> dict(**{1:2,3:4})
      Traceback (most recent call last):
        File "<stdin>", line 1, in <module>
      TypeError: keyword arguments must be strings
      >>>

<comment> happy-go-lucky This works in Python 3.6:

        >>> {**{1:2,3:4}}
        {1: 2, 3: 4}

:)

</comment></comment></comment><comment><USER20> Absolutely incredible. Thanks for all the effort.

</comment><comment><USER21> Looked at some pages on Algorithm and Java, the content looks very relevant to current practices and it is well organised!

</comment><comment><USER22> goalkicker.com is related to codeday.top afaict. They are the only two sites on Google that match some of the snippets. CodeDay is a machine translation blog which is very sophisticated. The PDFs appear to be a reorganization of those blog entries.

Very interesting. Well-written by machines.

</comment><comment><USER23> Is anyone aware of a resource which allows me to store programming documentation on .txt files? I have perused the internet but haven't found any. I am asking because I would like to view the documents within my text editor.

</comment><comment><USER24> Great collection. Thanks for making them available to the community.

</comment><comment><USER25> I'm tempted to print them for those moments when the internet is down and I still need to access SO.

<comment><USER13> Why do you need to kill trees just because the internet is down?

<comment><USER26> Think about the trees that are used to produce paper in the same way that you think about wheat that is used to make bread. There will always be demand for bread, so it makes sense to manage your natural resources responsibly. No natural resource means no product which means no business. Timber is managed like any other crop.

If there were no paper or wood products, those trees would be cut down to be replaced with homes, farmland, mining operations, etc. Owning land costs money, selling timber to the fiber & wood products industry actually preserves the forests occupying the land.

</comment></comment></comment><comment><USER27> I'd love to throw the guy a few bucks in bitcoin, but the network fee is going to cost me $11.

</comment><comment><USER28> Why are there notes on Angular 2 and just Angular?

<comment><USER29> AngularJs is different from the completely redesigned Angular (2+).

</comment></comment><comment><USER30> Wow. This is awesome. Thank you!

</comment><comment><USER31> This is why I come to HackerNews everyday to find resources like this. Thanks OP.

</comment><comment><USER32> Amazing, thankyou!

</comment><comment><USER33> This could use some explanation on the "from Stack Overflow" bit. How is GoalKicker related to SO?

<comment><USER34> From the bottom of [http://books.goalkicker.com/DotNETFrameworkBook/](http://books.goalkicker.com/DotNETFrameworkBook/) :

"The .NET Framework Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow. Text content is released under Creative Commons BY-SA. See credits at the end of this book whom contributed to the various chapters. Images may be copyright of their respective owners unless otherwise specified

Book created for educational purposes and is not affiliated with .NET Framework group(s), company(s) nor Stack Overflow. All trademarks belong to their respective company owners"

<comment><USER35> Beat me to it :)

</comment></comment></comment><comment><USER36> Why free? It seems like a lot of labor went into making these books.

<comment><USER37> The same came be said of so many things. However, computing has a long history of sharing knowledge freely. I applaud efforts like this to keep that tradition alive.</comment></comment>


Ask HN: Is your business a company or a product? - <AUTHOR>

When I read the stories on HN of people promoting their new product, I see many people starting businesses whose names are the same as the product they're selling.  This is different than some traditional notions of companies where their name is different from their product, and they have diversified into one or more product categories.
My feeling is that if the company's name is different than the product that they're selling, the company can create any number of potential products without having to reincorporate or shut down operations (under the previous business name).
There no 'one right way' of doing it, but is there an advantage (revenue, tax, buy out, etc) between having a company whose name is the same as their product (e.g. MobileWorks), or one whose name is different from their product (e.g.: 37Signals)?  If there's no advantage, why do people name their company after their product? <comment><USER2> When you are early, you should only have one product and your name should be synonymous with it, unless you want to spend every encounter explaining the distinction. That doesn't include the numerous people (press, investors, potential hires, potential customers / biz partners) that will have your business card and not associate your company name with the product they used.

From my experience, startups can work on one thing at a time (and that's hard enough). The more difficult you make it for someone to associate your company with your product, the worse off you will be. You can always change your company name later.

</comment><comment><USER3> By definition a "product" is not a "business". A business is a company that has products that bring in revenue.

Businesses that scale tend to have multiple products, so tying product name to company name could restrict your positioning going forward.</comment>


Slack Hacks: 14 Ideas for Dev and DevOps Workflows in Slack via AWS, Twilio - <AUTHOR> https://cto.ai/blog/slack-hacks-14-ideas-for-developer-devops-workflows-slack-aws-twilio-lyft/ <comment><USER2> I wouldn't be able to LIVE without the /reminder flow! I used to live in email and had a few tools that did this and was a power user! But now I work in a place that is all slack for internal comms so I was excited to port that over!

</comment><comment><AUTHOR> "The average company loses more than 20% of its productive power to organizational drag. Put Slack in the picture though and development teams using Slack deliver 5% more output overall, with 23% faster time to market, 27% less time needed to test and iterate, and faster identification and resolution of engineering-related bugs, according to IDC research."</comment>


Why It's Safe for Founders to Be Nice (2015) - <AUTHOR> http://www.paulgraham.com/safe.html <comment><USER2> As someone who has been screwed by "rapacity", all I can say is be very very careful being "nice".

As Pink Floyd said in a song "You have to be trusted by the people that you lie to, so that when they turn their backs on you. You'll get the chance to put the knife in."

As someone who lost out on a billion dollar business, be nice, but watch out for knives in the back. Often those knives are in the form of law firms.

<comment><USER3> That sucks. Can you share more about this purported exception to the rule?

<comment><USER2> My experience was not with user rapacity but with partner rapacity. I have always found good will towards users pays back 10 fold. Partners on the other hand are much trickier.

For me it was around what I thought was a carefully crafted contract. Long story by my partner seized all of the IP, than said "sue me". It was specifically prohibited in the contract, but I was not in a position at the time to spend a LOT of money fighting a team of lawyers.

Unfortunately what my team had made look easy was beyond the capabilities of the team he hired to replace us. So the product floundered.

<comment><USER4> Off topic, but are you the BatFastard in Generals.io, by chance?

<comment><USER2> I am indeed. Whom are you?

<comment><USER4> Ha, small world indeed. I mostly play as an Anon, after losing my last account (can't even recall the username).

I think you've bested me a fair few times. :)

<comment><USER2> It's an insanely fun, intense few minutes. Get a name! Not enough socialization in the game.

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> What about paying fair share of taxes that are expected to be paid by the society?

Just like loopholes are legal, most of the time being not nice to people is legal.

Meaning, nothing stops YC companies to sign a treaty that paying taxes is part of being nice and decent citizens of the world. I'm talking about Dropbox, for an example.

Very often the moral police stops when it impacts you or your wallet. It's called a sacrifice for a reason.

<comment><USER6> I'm not a libertarian anymore, but I still don't really buy into this criticism, for a few reasons.

Taxes are a legal obligation. If taxes aren't high enough, it's the government's job to fix that. Paying more taxes than you are legally obligated to pay is a disservice to shareholders, which in the case of a YC company includes almost all of your investors and employees.

Corporate taxes in particular are economically inefficient. Corporations are just straw men. Any money that a corporation earns is either paid out as dividends (at which point it's taxable as individual income) or reinvested into growing the company (at which point it turns into things like "salary", which is taxable as individual income).

The US in particular has exceptionally high corporate tax rates--among the highest in the developed world. And if you're going to choose a tax to avoid paying, US federal corporate tax is pretty much an ideal choice. Very little of that money goes to things like schools (which are paid for on the local and state level) or Medicare (which is paid for with payroll taxes). The biggest chunk of it pays for the US military, and a huge chunk of US military spending is pork for defense contractors.

In other words, US federal corporate taxes are largely a mechanism to redistribute money from corporations like Dropbox towards corporations like Blackwater and Lockheed Martin. And you think it's _nice_ and _decent_ of Dropbox to play along with this scheme?

<comment><USER7> Nameplate tax rate is basically meaningless.

US effective corporate tax rate after deductions is lower than the OECD average. Though by how much is up for debate.

PS: You can debate various points, but it's only 11% of total federal tax revenue.

<comment><USER8> The US effective corporate tax rate is not lower than the OECD average in fact.

The most authoritative, recent report on the matter by the CBO:

[https://www.cbo.gov/sites/default/files/115th- congress-2017-...](https://www.cbo.gov/sites/default/files/115th- congress-2017-2018/reports/52419-internationaltaxratecomp.pdf)

It clearly makes the case that the US is non-competitive with other G20 nations on the corporate tax rate. The US average corporate income tax rate for 2012, was 29%. In Canada it was 16%; Brazil 22%; China 19%; UK 10%; Germany 14.5%; Australia 17%; South Korea 20%; France 20%. How much more non- competitive can the US get exactly?

And when it comes to the OECD, the US is once again far from competitive:

"The most recent estimate comes from the World Bank and International Finance Commission, which put the United States' effective rate for 2014 at 27.9 percent. That's second-highest behind New Zealand among OECD countries and 15th-highest among the 189 countries measured."

[http://www.politifact.com/punditfact/statements/2014/sep/09/...](http://www.politifact.com/punditfact/statements/2014/sep/09/eric- bolling/does-us-have-highest-corporate-tax-rate-free-world/)

<comment><USER7> Sanity check,

What is total US corporate profit before taxes per year? And what's 27.9 percent of that.

Or from GAO: [http://www.gao.gov/assets/660/654957.pdf](http://www.gao.gov/assets/660/654957.pdf)

"For tax year 2010 (the most recent information available), profitable U.S. corporations that filed a Schedule M-3 paid U.S. federal income taxes amounting to about 13 percent of the pretax worldwide income that they reported in their financial statements"

[https://en.wikipedia.org/wiki/Repatriation_tax_holiday](https://en.wikipedia.org/wiki/Repatriation_tax_holiday) dropped actual tax rate to 5.25% in 2004. Companies are more than happy to wait for the next one.

PS: Also of note a lot of overseas profit is anything as it's easy to pretend US operations only break even by shifting around costs on paper.

</comment></comment></comment></comment></comment><comment><USER9> I can appreciate the article.

However, while it may be safe to be nice, I don't think being nice is important to success in business. And I think that's what probably concerns more people. This kind of disappoints me though. I wish it were important to success to be nice, but my experience tells me otherwise. It's more important to right and just nice enough to get that across and be heard.

How do you maintain your power and influence while being nice? I feel like you could kill your self by performing really well and setting a stellar track record and then earn the privilege of being able to be nice and still be respected... or you just swing your proverbial dick around and slam anyone who won't listen to you and rule by fear. The net payoff seems to suggest favoring dickish people at the top. And sad to say it seems that way many times.

Also being nice can make people think you're weak and so it's harder to run a team with that mindset.

I think the more definite path to success is being intelligent, shrewd and a competitive person. If that implies being nice then so be it, otherwise it doesn't seem so relevant.

There's also different types of nice. Like superficial nice and genuine nice. Which are we referring to?

I do envy those charismatic leaders that are successful and earn the love of their colleagues and employees. That's something I'd love to aspire to.

</comment><comment><USER10> > I grew up with a cartoon idea of a very successful businessman (in the > cartoon it was always a man): a rapacious, cigar-smoking, table-thumping guy > in his fifties who wins by exercising power, and isn't too fussy about how.

I think when something new comes about it can't _look_ like something old if it wants to succeed. Basically it's hard to build a successful startup by looking like a cartoon businessman from the 80's, wearing a tie, being overtly and openly aggressive etc.

If you're building something new and "cool" you had to be playful, dress informally, wear hoodie or t-shirt, on the surface appear to be super nice and friendly. Of course business is business and at the end of the day someone is getting stabbed in the back. But before that day comes it is all hugs, smiles and pats on the back.

Anyone remember Google, how they succeeded not just by providing a better search experience, by also by building a "cool" company image -- playful bright colors, the whole "don't be evil" shtick, we'll feed you with gourmet food, etc. They were positioning themselves to be as different as possible from a traditional company.

Now the funny thing is, the image of the startup has also become cartoonish with the shows like the "Silicon Valley" running for a few years. So CEOs wearing hoodies, being all informal and superficially nice, open office spaces and so on is getting a bit stale.

I wonder what's next. Back to wearing ties and smoking cigars? Probably not. But I have heard people say they'd rather get back to having the previously derided and hated cubicles than doing the "cool" open office plan.

Maybe working remotely is the new thing? But some companies have been doing that for a while as well. I hope that's the next revolution, when large giants as Google and Facebook, who sell digital connectivity as their primary product embrace the digital connectivity themselves and don't require workers to be in a physical location to get work done.

</comment><comment><USER11> When talking to startups as their prospective client, I feel I can often tell which ones are from a Y-combinator batch; they are nice, responsive, and thoughtful.

<comment><USER12> What type of thing puts you in position to be a client of many startups?

<comment><USER11> I work in one of the data-related verticals that has a fair number of startups selling to companies like ours.

</comment></comment></comment><comment><USER13> Why do we believe "nice" is correlated with how much you charge for your product instead of how aggressively you grow?

Let's take Uber as an example of a company that a lot of people would call not nice: their prices are great (I think it's widely believed that the prices are VC-subsidized and unsustainable in the long term), but it's their growth strategy that a lot of people have problems with. I have never once heard Travis Kalanick criticized because Uber charged too much.

<comment><USER14> The essay is using a very narrow definition of "nice," which is used to differentiate them from the greedy, and is essentially an business economics essay. This is to say, we don't "believe" it, it's just the way the essay is written.

Uber has gotten a lot of criticism for surge pricing.

<comment><USER15> There is nothing wrong with being greedy. Greedy does not mean that you need to take or steal from others. It means you have an excessive drive for success. "Excessive" is usually defined by society at large, and society at large is unquestionably a cesspit of low consciousness, and self-centered thinking.

What I take from this article is the perception of being nice is important. But the reality between the lines is that nobody is in business to be nice (unless you're running a non profit). We're here to make money. If startup founders don't realize this someone else will, and they will eat their lunch.

<comment><USER16> Isn't greed self-centeredness?

> society at large is unquestionably a cesspit of low consciousness, and self- > centered thinking

That's a heck of a personal projection :)

And pg disagrees with that last sentiment in the footnotes:

> Many think successful startup founders are driven by money. In fact the > secret weapon of the most successful founders is that they aren't. If they > were, they'd have taken one of the acquisition offers that every fast- > growing startup gets on the way up. What drives the most successful founders > is the same thing that drives most people who make things: the company is > their project.

<comment> unkown-unknowns When someone characterizes someone else as being "driven by money", I think that in their mind they are seeing the other person as being interested in nothing but having as much money as possible for no apparent reason.

But to me and I think probably to most people who have an interest in creating a successful product or service, we the hackers and the makers don't want money just because we want money. We also don't want the money just so that we can have a private jet, ridiculously big mansion or other forms of luxury.

No doubt I would afford myself a higher living standard and some luxury on top if I had a lot of money but it's not my primary motivation, and again I think this is true of most of those who wish to create something.

I want my product to succeed because I believe in it. I believe that I can bring value to my customers. I believe that my solutions have properties that the products of my competitors don't. I believe that I can improve the lives of others, even if not in drastically new ways.

Now since I believe this it only makes sense that I want "unlimited" funds (i.e. there is no upper bound to the amount of money I would like for my business to have), so that I can grow a business that can reach as many people as possible and produce as many products as possible. I need money so that I can hire people, good people. I need money for everything that my business needs to do because without money I can't do it.

</comment></comment></comment></comment></comment><comment><USER17> Yeah, I think successes of the likes of Apple and Netflix show that providing the most benefit to the consumer is what always wins in the end.

<comment><USER18> Explain Comcast.

<comment><USER17> Right now, lack of choices. But I think when we see Musk's satellite internet service, it'll be a completely different story.

<comment><USER19> Bandwidth and latency aren't exactly favorable on any sort of satelite internet connection. How will the Elon Musk brand change this?

<comment><USER20> The idea is lots and lots of low orbit satellites with cell-phone-like handoffs as they zip across the horizon. LEO is only 200 miles high or so, which is ~1ms for light to travel if they can make it work.

Existing satellite internet goes out to geosynchronous orbit which is much, much farther away.

<comment><USER21> Notable exception being Iridium. The wiki points out interesting design goals including coverage and doppler shifts. I do worry about 4000 new objects in orbit. We've got tons of orbital trash already.

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

</comment></comment></comment></comment></comment></comment><comment><USER22> I love the Muslims saying: "Trust God, but tie up your camel".

</comment><comment><USER23> My take on this: [http://www.yegor256.com/2017/08/22/to-be-nice-or- not.html](http://www.yegor256.com/2017/08/22/to-be-nice-or-not.html)

</comment><comment><USER24> Interesting. Makes me wonder about what lead Uber to be so aggressive.

</comment><comment><USER25> 5-star cook says: "Cows are much more successful in life when cut in slices and being in a pan."

The truth is that you not just need to be cunning, you need to be routine at it, so you can act nice while doing selfish things like removing founders without paying them out, putting competitors out of business, and telling guys who just spent the first three years of their child in your office instead of with their families that they need to clean out their desks. Without that ability what you can do is to sizzle nicely while being turned around in the pan.

<comment><USER26> It used to take around 20 farmers to support a single non farmers, such as a noble or black smith. We now have many people supported by each farmer in the modern world.

If people are too "nice," we can totally go back to a hunter-gatherer way of life instead of keeping modern institutions alive. I imagine billions would die to get there from here. But, at least we would no longer need to make hard decisions like which poor sucker to fire.

<comment><USER27> I'm not entirely sure I understand your metaphor in this case. I appreciate that it had something to do with efficiency but then I got lost because a 20:1 farmer-to-other feeding ratio seems incredibly unrealistic and made it hard to understand whether the ratio was relevant to the metaphor's point or was just an off the cuff sort of detail.

<comment><USER26> It isn't a metaphor. Without modern farming technology and techniques, the world cannot support 7 billion people. We deal with that fact or we die in droves. Those are our options.</comment></comment></comment></comment>


Python Ported to WebAssembly - <AUTHOR> https://twitter.com/wasmerio/status/1146477876151115776 <comment><USER2> Previous discussion of Pyodide:

[https://news.ycombinator.com/item?id=19677721](https://news.ycombinator.com/item?id=19677721)

[https://news.ycombinator.com/item?id=19684321](https://news.ycombinator.com/item?id=19684321)

</comment><comment><USER3> My experience with the wasmer entity has been and continues to be that it is just copying/repackaging stuff other people do to get VC money.

Something of this sort was done a long time ago with pypy[1] and more recently CPython[2]

1: [https://pypyjs.org/](https://pypyjs.org/) 2: [https://hacks.mozilla.org/2019/04/pyodide-bringing-the- scien...](https://hacks.mozilla.org/2019/04/pyodide-bringing-the-scientific- python-stack-to-the-browser/)

<comment><AUTHOR> We've been in contact with people from Mozilla regarding Pyodide, so our intention is not really repackaging but being able to use Python server side via WebAssembly (eventually we want to get rid of our package and use Pyodide directly).

We don't want to steal other people attention but to bring more people into the WebAssembly ecosystem, and you can only do that by helping bringing more packages to it.

If you are aware of other ways of running Python server side with WebAssembly I'd love to know more!

</comment></comment><comment><USER4> Not sure what the "Show HN" part of this is, but here's a link to the original announcement post for Python-on-WASM by Mike Droettboom and the team at mozilla: [https://hacks.mozilla.org/2019/04/pyodide-bringing-the- scien...](https://hacks.mozilla.org/2019/04/pyodide-bringing-the-scientific- python-stack-to-the-browser/). This seems to just be repackaging that.

<comment><USER2> syrusakbary is the CEO of Wasmer.

<comment><USER4> Sure, but to what extent are they "showing" us that they "Ported Python to WebAssembly". Isn't this more of a "Show HN: Python packaged for Wasmer"? To my mind, part of the purpose of these show HN threads is to ask questions and give feedback about whatever it is that the post is showing, so I'm asking to what extent the Wasmer folks actually did any "porting", since (to me) that seems like the interesting part.

</comment></comment></comment><comment><USER5> We should just up and have an "OS" on WebAssembly. It could be based on packages from something like NixOS. There could even be a local server with cached packages

<comment><USER6> You mean we should replace Windows/macOS/Linux and package managers with a web browser? Cool.

<comment><USER7> My understanding is that the wasm runtime is substantially independent from the browser, like NodeJS but maybe moreso?

<comment><USER6> I suppose you are correct. But AFAIK at the moment it's not really used anywhere except in browsers. If you need to run it locally, why not just use normal Python?

</comment></comment></comment></comment><comment><AUTHOR> Hi HN,

I'm Syrus, CEO of Wasmer. I started the company with the goal of running WebAssembly server side (same concept on what Node.js did with js).

We believe WebAssembly will be very relevant in the future and we are betting big on it.

Please check more about our project here: [https://github.com/wasmerio/wasmer](https://github.com/wasmerio/wasmer)

<comment><USER8> How do you believe to make money with this technology instead? Other than maybe make it proprietary.

</comment></comment><comment><USER9> Super excited to see this used in scientific computing; python notebooks will get quite a big upgrade.

</comment><comment><USER10> So... Python now runs in the WebBrowser, kind of?

just... every website that wants to serve you Python-generate content now needs to ship the entire Python runtime as a WASM dependency? :P

<comment><USER11> Just think, we'll be able to send whole applications over the Internet that will be able to run without being connected. That will be totally game changing.

<comment><USER12> Smart browsers would cache the 10MB python.wasm file across applications.

But so far each refresh results in a new download.</comment></comment></comment>


Planet Nine could spell doom for solar system - <AUTHOR> http://phys.org/news/2016-08-planet-doom-solar.html <comment><USER2> Key phrase on the timing of this doom: _when the sun dies_

Interesting article nonetheless.

<comment><USER3> I don't know if it even rises to that. Somebody ran some simulations which can't possibly be checked against reality. If it is interesting, it's the lowest grade.

</comment></comment><comment><USER4> Science reporting is so awful.

</comment><comment><USER5> Well, this seems useless.</comment>


Itsy Bitsy Data Structures – Simplified examples of many common data structures - <AUTHOR> https://github.com/thejameskyle/itsy-bitsy-data-structures <comment><AUTHOR> Hi I wrote this thing. I guess I'll comment on this thread since it got some attention.

I think a lot of people that are in this thread went into this project with the complete wrong state of mind.

I'm not trying to teach people how a hash table or linked list implementation works. I'm not trying to make a library that is useful to anyone.

What I'm trying to do is connect the dots between a bunch of different important concepts in data structures.

People can go read things about each of these individual topics to great length and I encourage them too, but in general there are a lot of great computer science resources for just piecing a lot of related topics together for beginners.

Sure you can read a 600 page book that will cover things from end to end, but those are very intimidating when you have no prior knowledge of the topic and sometimes you don't get as much out of them if you don't know the basics.

If I can provide people with just a quick highlight reel of essential knowledge of data structures then I've done what I set out to do.

I hope Hacker News can appreciate that, I don't expect it to, but I can hope.

<comment><USER2> I didn't read it, because I know the topic already, but also because I found it too long for an overview. If the crowd with reduced attention span is your target group, this doesn't work. This would amount to a 20 pages perhaps. I'd assume that's roughly how much it would need in the 600 page book, too.

Also, there is no TOC to gloss over, the ascii, cute as it is, is harder to fly over than legit text with embedded code snippets.

<comment><AUTHOR> It perfectly matches up with a 30 minute talk that I gave yesterday. It's meant to be read sequentially not as a reference. It's helped a lot of people already, and this format has worked in the past: the super tiny compiler has been turned into interactive tutorials and even recommended by professors. People love the format and I think it connects with people better.

But then again I don't know why you thought your opinion mattered if you didn't even read it. I guess that is the quality feedback I do expect from Hacker News commentors though.

</comment></comment></comment><comment><USER3> Most languages have a built in type for a dynamic array, but many of them lack a built-in queue. I have a favorite trick for a quick-and dirty queue in those languages. You need an array (initially empty) and an integer (initially zero). To add to the queue, add to the array. To get the front of the queue, just do array[int]. And finally, to remove from the queue, simply increment the integer. The advantages of this approach are simplicity and speed: each operation takes amortized constant time. The obvious disadvantage is that it's potentially a major memory leak. For instance, if you try to do breadth-first search of a tree using this queue, your memory usage will be proportional to the size of the tree. How much worse than optimal is this? It depends on the tree. If it's a complete binary tree, you've doubled your memory usage, which might not be too bad. But if the tree is a path, then you use linear memory, whereas a proper queue would only use O(1) memory.

<comment><USER4> You could periodically delete the wasted space. I think that if you, say, delete the wasted space when it is equal to the used space, you still still have O(1) amortized time.

<comment><USER3> You could, but then it's not quite so quick-and-dirty anymore :) The de-queue method goes from "self.i += 1" (Python syntax) to

        self.i +=1
        if self.i > len(self.a)/2:
          self.a[:self.i] = []
          self.i = 0

I didn't test the above code, and I am only 50% sure it is bug-free. I'm 99% sure the leaky version is bug-free. Memory leaks are not a bug if I document them, right? ;)

But yes, periodically deleting the wasted space is still easier than trying to do the usual thing with circular buffers and stuff :)

<comment><USER5> Easier and a major performance disaster. You shouldn't ever do this ever. If you are a programmer, it's your job to implement this correctly.

<comment><USER3> Asooka: a lot of your comments are showing up as dead. I have no clue why, they seem fine to me. I can't reply directly to the one you made in this thread: it's dead too.

</comment></comment></comment></comment></comment><comment><USER6> Seems to be a lot of snark in this thread already. If you see a problem, create an issue or submit a pull request. It's great that OP is trying to help spread knowledge.

</comment><comment><USER7> Hash table realization seems to be harmful with the "no collisions" assumption. That's like writing a red black tree and assuming that insert/delete operations will keep tree balanced so we don't need rotations.

<comment><USER8> How is it harmful? You really think that somebody who is going to write a red black tree implementation (or similar) is going to use this document as a reference? That'd be like complaining about a high school physics textbook because somebody from Boeing might use it to design a plane.

<comment><USER9> Some simplifications may actually be harmful to understanding if they throw away key points or introduce logical contradictions.

For a hash table, the general "promise" is that you map a very large space of keys (e.g. all strings) to a very small space of indexes using a simple function. Common sense might tell you that this shouldn't be possible ("how can you put something big into something small?") - and of course actual hash tables solve the conundrum by acknowledging collisions and defining ways to deal with them.

But by saying "let's assume no collisions" the reader is asked to just ignore the logical contradiction instead of solving it. That can lead to frustration in the best case or to serious misconceptions in the worst case.

Of course there is nothing wrong with saying "let's ignore those points for now, I'll explain later". Also I guess it depends very much on the learning style of the reader. But bad simplification can be very annoying for some learners.

<comment><USER8> >For a hash table, the general "promise" is that you map a very large space of keys (e.g. all strings) to a very small space of indexes using a simple function

Well, AFAICT there is no mention of any of this in the document. No "promise" or any such thing has been said or implied. Please stick to what the author has actually said rather than what you imagine people are thinking about when reading the document.

>. Common sense might tell you that this shouldn't be possible ("how can you put something big into something small?")

No, it doesn't tell me that at all, because that point is not brought up in the document. But is that how you think most people learn? Using common sense?

>But by saying "let's assume no collisions" the reader is asked to just ignore the logical contradiction instead of solving it.

Sure, you think those are the logical contradictions in the readers' minds. Can you actually establish that?

> But bad simplification can be very annoying for some learners.

A list of what is annoying for "some" learners is quite possibly very very large. Lets not....

\--

Anyway, we can go down this rabbit hole, but it isn't actually productive, and quite boring to be honest. My point is that every-time someone tries simplify something for beginners, people seem to relish that opportunity to show everyone how "smart" they are about trivial data-structures. Yes, if you want somebody to make an expository article for beginners with the detail of something like TAOCP, then yeah, you're going to be disappointed. But, you can and should learn Newtonian physics, even if its "wrong", before you move on to Einstein.

<comment><USER10> > _Well, AFAICT there is no mention of any of this in the document. No > "promise" or any such thing has been said or implied._

I'm not sure you got the parent's comment. What you wrote about is true -- and that's what's wrong with the document. That it doesn't mention such a promise, not it describe an actual hash table implementation (where collisions are inevitable and should be dealt with).

> _Please stick to what the author has actually said rather than what you > imagine people are thinking about when reading the document._

Again, the problem is that people sticking with "what the author has actually said" will not learn how hash tables actually work.

> _No, it doesn 't tell me that at all, because that point is not brought up > in the document. But is that how you think most people learn? Using common > sense?_

Now you're just being contradictory to be contradictory. Or trolling.

Yes, people use common sense to learn -- and to understand what they are learning. How is this not obvious?

> _Sure, you think those are the logical contradictions in the readers ' > minds. Can you actually establish that?_

I'm a reader, and immediately jumped to see the same logical contradiction.

Not even sure what you're trying to defend exactly. Sloppy examples?

<comment><USER8> >Again, the problem is that people sticking with "what the author has actually said" will not learn how hash tables actually work.

Huh? People are complaining about the implementation not having collision detection. The author clearly lays out what collisions are, why they are required and also that they need to be dealt with. Did you read the article?

>Yes, people use common sense to learn -- and to understand what they are learning. How is this not obvious?

It would help if you didn't change the context and scope of what I have said. I am not talking about some random topic that you can derive through first principles or common sense or other logical means. To me its obvious you didn't understand what I meant or what I was replying to. Its pointless to argue further and derail the thread.

>Not even sure what you're trying to defend exactly. Sloppy examples?

Not to sound gratuitously rude, but if you don't know what my point is, why not ask me first?

</comment></comment></comment></comment></comment></comment><comment><USER11> One thing's for sure, it caught my attention. Humungo text that made me chuckle. Then, I clicked on the text, and _it_ was the example. Pretty clever.

</comment><comment><USER12> At first glance, this looks like it could be a useful reference. Regardless it's worth a visit for the ASCII art alone. My favorite: the literal interpretation of "hash tables".

</comment><comment><USER13> > algorithms are implemented with data structures

Eh, for a certain definition of "algorithm". Plenty of signal processing algorithms, for instance, have nothing to do with data structures.

<comment><USER14> Yes, I would say the relationship is the opposite. Data structures imply a set of algorithms based on the promises of the data structure implementation. Algorithms themselves are free-floating things that can be reasoned about just as well in a C program as an instruction flow diagram as a Turing machine program. Take for instance an algorithm to divide two 32-bit integers. Or an algorithm that computes the max in a sequence (which is an abstraction) of numbers. There is no data structure, unless the argument is that a memory cell is itself a data structure.

<comment><USER15> As the title of Wirth's book goes:

Algorithms + Data Structures = Programs

</comment></comment></comment><comment><USER16> Question: for the hashtables example, it looks like it's setting arbitrary indexes inside a JS array, instead of incrementing ones. IIRC, Javascript stringifys arrays with gaps like this:

[ 1,2,3,undefined/null,undefined/null,undefined/null,undefined/null,undefined/null,4,5,6,undefined/null,undefined/null,undefined/null] - With the hashtables function, if you accidentally generate an index that is say 100,000, wouldn't you end up with an unwieldy-sized array that would be more difficult to search than one like this:

[{ value: 1, index: 103405}, { value: 2, index: 14550 }]

Or does JS store the arrays as an object internally and just stringify them with all the blanks?

<comment><USER17> JS engines have both sparse and dense representations for arrays and array instances switch from one to another when you insert and delete elements. Details are of course implementation defined.

</comment></comment><comment><USER18> This is fucking awesome, did you draw the ascii pictures yourself?

</comment><comment><USER19> This is too dumbed down, imo.

Also, the part where it explains why memory is zero-addressed is so wrong, it rustled my jimmies.

<comment><USER8> >This is too dumbed down, imo.

That is why the word 'simplified' appears in the title, and the words 'super simplified' appear in the linked document. The purpose is to convey a point, and take away other distractions. Its probably not a good idea to introduce calculus to first graders either. If you don't think omitted content is a distraction, then it's probably not meant for you.

</comment></comment><comment><USER5> I have 2 issues with this. First, you could say what you wanted to say in 1/3rd of the length if you weren't speaking in such a conversational manner and interspersing your discourse with irrelevant jokes and stuff like ""OOooooOOOooh _soo_ exciting" right?". I don't read stuff on data structures to amuse myself. I want it to be as succint and to the point as possible and not waste my time kidding around. If I want to kid around I will do something else. But I guess some people prefer this, I suppose.

Second, I don't think the best place to go on lengthy explanations with figures included is in the comments of a source code file. Markdown is your friend.

<comment><USER20>
      I have 2 issues with this [..] I don't read stuff on data
      structures to amuse myself. I want it to be as succint and
      to the point as possible and not waste my time kidding
      around.

Someone should write a serious data structures book for you. Oh wait, they have, there are literally hundreds of them.

If you're attacking a topic with your full attention then you want maximum information as fast as possible.

If you're tired on a friday and want to learn something and have fun then information density doesn't matter anymore.</comment></comment>


Natural User Interfaces are not Natural - <AUTHOR> http://interactions.acm.org/content/?p=1355 <comment><USER2> Let's face it: humans have to learn _all_ interfaces. Nothing is intuitive, not even the nipple.

<comment><USER3> The nipple is _absolutely_ intuitive - it's instinctive. All baby mammals suckle for it. Though, of course, maybe less instinctive for adult mammals :-)

<comment><USER2> I'm going to take a wild guess and state that you (or your wife or partner) haven't had children.</comment></comment></comment>


Ask HN: Subtracting off unwanted porn results is not allowed anywhere – why? - <AUTHOR> Has anybody else noticed you cannot use the subtraction operator on any porn sites?
This strikes me as needing explanation. It is like a world for which every choice exists - except the choice to opt out.
There are people who want all the porn - there are people who want no porn - but between a bigger group has some fetishes and are disgusted by others. Why then does the standard negation operator not work on any mainstream porn channel?
I could make some guesses - but you have to admit this is a deliberate choice by the porn search engines - I know everybody on HN knows this is not a technical issue - so I'm asking if this is a known business decision or a known social intervention. <comment><USER3> Could it have more to do with user experience than business or social reasons? ie people meaning to use dashes instead of the boolean operator and instead by mistake removing results from their searches?

<comment><AUTHOR> It looks like policy is to strip most of what's outside the alphabet unless it falls into known permitted keyword matches - and I expect X-Y would always match X Y.

Doesn't explain why users cannot request no results in some categories they are turned off by. Most search engines offer that option in some way - <USER2> the porn versions. It's more strange the more I think about it.</comment></comment>


Tell HN: Flagging Works Best against Spam If More Participants Flag - <AUTHOR>

I notice that the new page in general, and the noobstories page in particular, are full of spam. Experienced members of the community know what spam posts look like. (They are largely what shows up on the new page if you turn showdead on in your user profile.) Users who have accummulated enough karma can flag spam posts. Flagging more spam posts sooner clears cruft off the new page and helps users find good new submissions to promote to the main page with upvotes. Otherwise, new submissions, however good, are easily lost in the flood of spam on the new page. The noobstories view of HN is a quick way to see new submissions by newly created accounts, which, alas, are often spam. A few flags a day keeps the spam away. Sufficient flags on a new submission without comments from other participants autokills the submission, I'm pretty sure. <comment><USER2> I used to do this for a long while, it's the main reason I have showdead on. I'd periodically check /newest and noobstories and noobcomments for spammy or otherwise harmful posts to flag.

Yet I recently lost my flagging privileges, probably because I flagged the entire front page on Steve Jobs day.

<comment><AUTHOR> My condolences on losing your flagging privileges, which I hope are eventually restored, but I wouldn't flag an actual news submission of interest to hackers, even if I find the topic over-submitted. I try to save flagging for blatant spam, of which there is plenty on the new page, and articles that fit the guideline that stories on politics or crime are not to be submitted if they are already adequately covered on the TV news. Steve Jobs is already mostly off the HN front page.

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

</comment></comment><comment><USER3> I flag spam posts on a daily basis but the lack of feedback - is the system automated or are there mods? - is disappointed as there is no way to know if I'm making a meaningful contribution or just wasting time.

Also, I would like to suggest that in order to submit a story, your account has to have a certain amount of karma and be at least x days old.

<comment><USER4> I've heard that it's YC alumni + YC company themselves that moderate. The moderation tends to be more subtle. eg ghostbans as a way to combat spam.</comment></comment>


Record 21.6 Million Young Adults Live in Their Parents' Home - <AUTHOR> http://www.pewsocialtrends.org/files/2013/07/SDT-millennials-living-with-parents-07-2013.pdf

<comment><USER2> Why it's bad in America to live with parents? Why is it a taboo? Even the most open minded brilliant people believe it. In India, from where I come, families live together, always. There's no taboo.</comment>


Curl is 21 years old - <AUTHOR> https://mobile.twitter.com/bagder/status/1108261127350353920 <comment><USER2> The twitter post just links to my blog post "Happy 21st, curl": [https://daniel.haxx.se/blog/2019/03/20/happy-21st- curl/](https://daniel.haxx.se/blog/2019/03/20/happy-21st-curl/)

</comment><comment><USER3> > Sorry, you are rate limited. Please wait a few moments then try again.

I'm on desktop w/ VPN

<comment><AUTHOR> weird, it's a twitter link.

<comment><USER4> For some weird reason Twitter API rate limits their own keys for their website and app to the point where a single page load can exhaust it.

<comment><USER5> Well at least that's fair!</comment></comment></comment></comment>


Website outages and blackouts the right way - <AUTHOR> https://plus.google.com/115984868678744352358/posts/Gas8vjZ5fmB

<comment><USER2> Repeat post, the earlier HN conversation is ongoing here: <http://news.ycombinator.com/item?id=3470396>

</comment><comment><AUTHOR> The most important point: Webmasters should return a 503 HTTP header for all the URLs participating in the blackout</comment>


Set Up Continuous Deployment on Node.js App Using GitHub and HerokuC - <AUTHOR> https://blog.sssaini.io/how-to-set-up-continuous-deployment-on-nodejs-app-using-heroku-and-github/ <comment><USER2> Novel. My deploy tracking tool doesn't integrate with Heroku. It's a new service so maybe they will at some point, but it's nice since I can see impact of my deploys with one tool; up until last month, I had tabs open to Sentry, Honeybadger, Clubhouse, and LaunchDarkly. No longer the case—so relieved.

<comment><AUTHOR> Not to mention they all have different price points and quota limits that make deployment harder than it has to be.</comment></comment>


Here is an idea for a dating website  - <AUTHOR>

At work I get to learn a little bit about a lot of industries and occasionally I get these great business ideas. Right now with my own startup I don't have time to start something else up but if anyone is interested feel free to take this idea and run with it!
Idea: Social Web Dating
Problem: I've tried a lot of internet dating websites out there and one of the best is http://www.plentyoffish.com/ . It's free, I get the best responses from people here, and it works. The only problems I have with the site are sometimes the girls pictures are very mis-representative (the classic "myspace pictures") and its difficult to build common ground before a in person date, I don't know if we have any friends in common, interests, etc.
A really good company trying to change this is Thread.com one of the fbFund winners. They want to connect dating with your facebook profile so you an see your friend connections and introduce each other to potential dates, think match making.
My only problem with this site is its not explicit that the people on there are looking for a date and I'm not sure if I'm comfortable introducing someone looking for a date to my friends.
The Business idea: So the idea is to create a site very similar to Plenty of Fish but to connect it to your facebook profile to populate all the information quickly and be able to see shared connections etc. But the catch is other users on the site won't be able to see your full profile until each person agrees. For example if I see a cute girl on the site I'll send her a message saying I would love to get to know her and ask if I can see her full facebook profile.
I already do this already, when I see someone on Plenty of Fish I want to get to know more I ask them to friend me on facebook. Then we can both see our shared connections and interests, chat on facebook, and if we both click we can go on a date.
The site would explicitly feature people looking for a date, unlike thread.com, and take advantage of all the social network features faecebook connect has to offer.
That's the rough concept. If anyone is interested in taking this on I'd love to brainstorm with you about it and share more about the concept. Send me an email if your interested chris.r.mccann [at] gmail.com <comment><USER2> You seem to be rather 'vision' oriented in the choice of your significant others, ("For example if I see a cute girl on the site I'll send her a message saying I would love to get to know her and ask if I can see her full facebook profile." and "The only problems I have with the site are sometimes the girls pictures are very mis-representative"), why not choose some of the people that do not have pictures in their profiles and simply converse with them ?

Who knows, you might find that the people whose exterior is unknown to you are more interesting just because you have forced yourself to look further than 'skin deep'.

<comment><AUTHOR> I would agree and say I am a very visual person. It's not necessarily that I'm looking purely based on looks but I like to see who I am talking with.

That being said with pictures you can tell much more than "skin deep" looks. For example you can see if they have friends, what things they like to do, if they like to party or not, etc. Facebook makes it pretty to get that kind of info quickly

<comment><USER2> That's borderline stalking.

People should reveal themselves to you at their pace, as they grown more comfortable, not at yours.

</comment></comment></comment><comment><USER3> I guess there is no new idea under the sun. Check this one out: [http://www.readwriteweb.com/archives/gelato_the_friendfeed_o...](http://www.readwriteweb.com/archives/gelato_the_friendfeed_of_dating.php) . It does everything you mentioned. Moreever, it pulls out information not just from your facebook but from all other networks as well.

<comment><USER4> Just launched. I signed in and there was no one in my area yet. Looks slick, though. Hope it catches on. Facebook on its own might be an alright dating site, except for the fact that people don't expect to be solicited there, so Gelato is providing a valuable service.

</comment></comment><comment><USER5> There is a much easier way to fight the MySpace angle: remember that if you can't at least see a woman's upper arm in any photo and you're on a free online dating site, you can assume that this is not due to an oversight.

</comment><comment><USER4> A successful strategy is to contact as many women as possible. Since women tend to be more picky than guys, let's remove the ability for guys to initiate contact. Now we have the eligible bachelor database, and there's no excuse for a lack of good guys, because they're all listed. Guys don't have to even visit the site except to edit their profile, and messages are forwarded to email.

I like the Facebook integration, because it will really cut down on the spam and speed up building the profile.

</comment><comment><USER6> I think there is a flaw in using Facebook friend connections for a dating site. Facebook friends are not the same as real friends, since the barrier to entry usually is just recognizing the requester and clicking accept. Of the 100+ "friends" I have on Facebook, maybe 10 are real friends (defined as people I regularly talk to or hang out with in person). I wouldn't feel comfortable introducing someone to "that girl who lived down the hall from me freshman year who friended me on Facebook"

<comment><AUTHOR> I agree with not feeling comfortable with introducing a facebook friend to someone else, which is why I think the premise of Thread is flawed.

But as a guy looking for a date I am looking for people outside of my own network for people who have specifically stated they are looking for someone as well. Which is why I like Plenty of Fish</comment></comment>


Show HN: Paul Graham Says - <AUTHOR> http://www.pgsays.com Quick site I made composed of quotes from PG's essays for inspiration, advice, or good reading.<p>firstname.lastname@example.com for quote submissions, comments, or questions. <comment><USER2> Does it generate the quotes automagically, or are they input individually?

Maybe add a timer & automatic refresh with a new quote?

Add in additional photos to rotate and keep it fresh.

Nice work!

<comment><AUTHOR> It's read off an array.

I can definitely add a refresh timer or button. The additional photos may be more difficult.

Thanks.

<comment><USER2> Let me know when you've deployed next round! @rolandal</comment></comment></comment>


4K for $649: Asus' PB287Q monitor reviewed - <AUTHOR> http://techreport.com/review/26510/4k-for-649-asus-pb287q-monitor-reviewed

<comment><USER2> Here's a chart which shows the ideal viewing distance for various resolutions, based on the smallest detail the human eye can discern at 20/20 vision.

[http://cdn.avsforum.com/4/4c/600x376px- LL-4cd4431b_200ppdeng...](http://cdn.avsforum.com/4/4c/600x376px- LL-4cd4431b_200ppdengleski.png)

This monitor is pretty close to retina level DPI based on the typical viewing distance, but i guess a 24inch 4K would be even better.

<comment><USER3> Your information is wildly inaccurate. Take a 30' black screen vs one with a single white pixel and someone can tell the difference from across a football field if it's dark enough. Do the same thing with one white pixel vs 2 next to each other and you can't tell the difference. The important point is screens showing normal video have aliasing effects so under some situations with unedited video you get differences such as flickering at fairly long distances. Edit: Basicly if you have 480p and 720p video having a 720p monitor is worse than a 720x4 monitor at fairly long distances.

Toss in compression artifacts and you want a screen at least 4x the resolution as your showing in that chart.

<comment><USER2> The chart is just about how many DPI you need based on a specific distance to reach the point where the average human eye would stop seeing benefits vs even higher DPI.

Your points are more about refresh rates, video compression and lightning. For example, in gaming antialising and other "smoothing" techniques are wildy used to improve image quality, but when playing in 4K resolution on a 24inch screen you wouldn't need those anymore because your eye can't see a difference.

<comment><USER3> Aliasing is vary easy to notice even on a 4k screen. Look at the second immage it's got way to much white and you can easily have the same issues at 4k or 8k.

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

In the end increasing resolution does help in most cases, but with the right fractal pattern there is no 'safe' resolution.

PS: It's basically the same reason that QuickSort is a O(n^2) sorting method in the worst case. Pick the wrong data and your assumptions fall apart.

</comment></comment></comment></comment><comment><USER4> > Web browsers can be a problem. _You may want to choose Internet Explorer_ > rather than Chrome, since Microsoft has clearly done more work to support > high-PPI configs. However, note that IE ditches the ClearType sub-pixel > antialiasing scheme and snap-to-grid GDI font rendering in favor of simple > greyscale antialiasing. As a result, the effective text resolution with IE > at high PPIs isn't a huge leap from other browsers with ClearType on > conventional displays. [emphasis mine]

Umm.. I know Firefox is not fashionable these days but ignoring it completely seems bit odd, especially if both Chrome and IE produce suboptimal results.

Also can't you these days force compatibility bitmap-scaling for applications like Fraps that apparently do not work correctly with HiDPI? Sure it is one extra step that ideally shouldn't be necessary, but it is not like you need to live with broken UIs.

<comment><USER5> Firefox does not handle high DPI screens. It renders fonts at a fixed 96dpi and your only option is to crank up the devPixelsPerPx pref, which is akin to page zoom.

The bug has been reported multiple times. It always ends up being closed as wontfix, which is just burying the head in the sand. My laptop is 210dpi, and I guess we'll just go up from here.

One instance of the bug:[https://bugzilla.mozilla.org/show_bug.cgi?id=512522](https://bugzilla.mozilla.org/show_bug.cgi?id=512522)

<comment><USER4> > your only option is to crank up the devPixelsPerPx pref, which is akin to > page zoom

Since Firefox 22 you shouldn't need to adjust it manually. See eg this bug: [https://bugzilla.mozilla.org/show_bug.cgi?id=844604](https://bugzilla.mozilla.org/show_bug.cgi?id=844604) (Status: RESOLVED FIXED). I'm not sure why you seem to think that "akin page zoom" is not the proper result, what else you expected?

Quoting Anandtech:

> Chrome is scaled 150% as Windows asked, but it is hazy and blurry. Disabling > DPI scaling for the application and then scaling to 150% inside Chrome > produces crisp, clear text. Firefox also didn't scale automatically, but it > has a setting to adjust to make it follow the Windows DPI scaling rules. > Once set, Firefox looks very nice and crisp. For most people, that setting > should already be set to follow DPI scaling.

[http://www.anandtech.com/show/7157/asus- pq321q-ultrahd-4k-mo...](http://www.anandtech.com/show/7157/asus- pq321q-ultrahd-4k-monitor-review/2)

Note that the review predates the release of Firefox 22.

edit: This is the tracking bug for Firefox HiDPI support on Windows: [https://bugzilla.mozilla.org/showdependencytree.cgi?id=82067...](https://bugzilla.mozilla.org/showdependencytree.cgi?id=820679&hide_resolved=0) . Hardly burying their heads in sand.

<comment><USER5>
      > I'm not sure why you seem to think that
      > "akin page zoom" is not the proper result,
      > what else you expected?

It is not what I expect because it does not affect the browser chrome. See a screenshot of my current Firefox:

[https://dl.dropboxusercontent.com/u/461223/screenshot.png](https://dl.dropboxusercontent.com/u/461223/screenshot.png)

Notice that the i3 bar at the top has the font at the correct scale. The page itself too (via devPixelsPerPx). Chrome elements such as tab names or the URL bar are at less than half the correct size and barely usable without a hack plugin (I use Theme Font and Size Changer).

Everything other than FF or Thunderbird scales correctly. The X server is set to 210dpi and GTK reports the correct density too. It is firefox that is misbehaving.

This is FF nightly (34, I believe), so way way after FF 22. It is not fixed, and it is not a loved bug. Time will make the bug bite the developers and by then it will be fixed, I'm sure.

Edit: Here's a second screenshot, this time witout devPixelsPerPx, showing FF completely ignoring the system set DPI: [https://dl.dropboxusercontent.com/u/461223/screenshot2.png](https://dl.dropboxusercontent.com/u/461223/screenshot2.png)

<comment><USER4> Oh, Linux. Yeah, the story there might be significantly worse, possibly even more if you are not running GNOME. I'll have to test that myself, but I can imagine that it is not as smooth as Win/OSX. I'll just say that it is not representative of Firefox as a whole.

edit: Here is Firefox on Windows 7, Windows being configured at "150%", no tweaks on Firefox: [http://zokier.net/stuff/firefox_150.png](http://zokier.net/stuff/firefox_150.png)

here is 100% for comparison: [http://zokier.net/stuff/firefox_100.png](http://zokier.net/stuff/firefox_100.png)

Some of the icons etc are bit blurry, but at least they are scaled.

<comment><USER5> From what I gather about in several submissions of the bug in the past, the problem is that properly setting display density in Linux has changed over time. So, it is inconsistent and is thus in many instances false. Firefox then concludes that X lies about display density and ignores it.

It is a wrong assumption, and one that pegs FF to 96dpi on Linux. It is not a sustainable decision, but I guess it will only be reverted when the noise about it is enough, which will only happen when high dpi displays become more common.

Anyhow, it is not correct to assume X lies about the display density. Modern distros set the density correctly, ever since the infrastructure for xrandr was put into place. Its only fault, today, is that display density can't be set per display. It is a setting of the root window, I believe, so it is shared by all displays.

Side note: This is i3 running on top of a gnome3 session. For the sake of this problem, it can be seen as a gnome session.

<comment><USER4> > the problem is that properly setting display density in Linux has changed > over time

Yeah, I just tested this on my GNOME3 system, and there is no simple DPI setting anywhere in sight. `xrandr --dpi 144` which seemed like the logical solution had absolutely zero effect on anything (gnome or firefox). Anyways this is what I ended up with: GNOME scale factor at 1.5 and layout.css.devPixelsPerPx also 1.5: [http://zokier.net/stuff/firefox_linux_150.png](http://zokier.net/stuff/firefox_linux_150.png) . Looks pretty good to me.

edit: and just for completeness sake, I also tested this on KDE4. Before changing session I reverted GNOME scale factor to 1.0, so it did not affect my results. I again started with `xrandr --dpi 144` and launched Firefox and the fonts actually had been rescaled! UI was not, but that was fixed with layout.css.devPixelsPerPx=1.5, end result: [http://zokier.net/stuff/firefox_kde_150.png](http://zokier.net/stuff/firefox_kde_150.png)

In conclusion, it seems like Firefox on Linux queries the DE for fonts (size and family). KDE4 seems to use X DPI settings in determining the font sizes, while _GNOME3_ is ignoring them and instead using its own "scaling factor".

edit2: this is getting bit out of hand. I also tested this with just a WM (in this case Fluxbox), without DE. `xrandr --dpi 144` had no effect _but_ setting Xft.dpi to 144 with xrdb did adjust the font size in Firefox. Like others, devPixelsPerPx needed also to be set to 1.5 for UI to scale: [http://zokier.net/stuff/firefox_fluxbox_150.png](http://zokier.net/stuff/firefox_fluxbox_150.png)

So in further conclusion I'd say Firefox is handling the situation relatively well, considering the mess that DPI scaling seems to be on Linux.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> I'm bothered by the usage of "whore of babylon". I feel like that sort of language doesn't belong in a review like this.

<comment><USER7> So, I think this phrase may benefit from some context. Specifically, the cultural backdrop to the statement is that we[1] have a recent tradition of using the transition from "pure, sweet good-girl teen" to "raunchy, sexualised young woman" as a kind of marketing event for female pop stars who began their careers as teenage TV stars. Part of their marketing value derives directly from the public and "shocking" nature of the transition. It's essentially exploiting the Madonna-whore complex[2] for marketing purposes.

There are ambiguities, of course. Perhaps the "shock" value of female sexuality is a good thing and is helping us all to get out of outmoded views about female purity. Perhaps the presentation of female sexuality as being about raunch and nudity is catering to male fantasies and is thus bad. Perhaps the problem lies with the excessively "pure" image that teenage female entertainers need to maintain in order to be deemed "family-friendly".

Personally, I interpreted the comment in the article as being one about the exaggerated nature of the image change that stars like Miley Cyrus go through once they hit the age of consent. She's neither the whore of Babylon nor Hannah Montana, but it suited advertisers to portray her as both at different times.

Is this a suitable topic for a joke or a metaphor? I didn't interpret it negatively, so for me it was fine. I can appreciate why other people would disagree, but I thought adding some context might be useful[3].

[1] Actually this is mostly an American thing, so I'm not entirely entitled to use "we" here

[2] [http://en.wikipedia.org/wiki/Madonna%E2%80%93whore_complex](http://en.wikipedia.org/wiki/Madonna%E2%80%93whore_complex)

[3] Who am I kidding? I'm just giving my 2c on an internet forum like everyone else who has nothing better to do right now

<comment><USER8> your explanation is reasonable as far as it goes. Yes, the two states are being used to contrast the shocking change in nature of the product. However, this doesn't speak as to whether it's ok.

1) commodifying women is not ok.

2) comparing women as an object/product to a piece of tech is again problematic.

3) half your potential audience for your review is women. Do they want to read about other women being talked about like this?

4) using language like this makes it easier to accept it's reasonable and inoffensive. It's not inoffensive.

just saying oh well this is advertising and marketing is not enough. Questioning it's validity is worthwhile. Questioning whether we want to see this kind of exclusionary and sexist language in professional copy is worthwhile.

<comment><USER9> So much argument... I can't believe some people get this offended by simple words. In this case, Miley doesn't even deny it, she's trying hard to give that image, so it's really childish to complain about it.

I hate this attitude that makes people watch their words. It may be true of public and influential personalities, but who cares your choice of words as long as you convey the message? I believe that everything and everyone can be laughed at.

Sure, you may feel offended inside. But you should at least understand that it makes no sense and refrain from sharing your "I'm offended" feelings. Same thing goes for the other end of the spectrum by the way: you can be sexist but as long as you don't act on it, I don't see a problem. That's what freedom is about.

<comment><USER8> > So much argument... I can't believe some people get this offended by simple > words.

I'm a man, I can walk down the street without being wolf whistled, leered at or otherwise feeling threatened.

Every single woman I know has been hassled in public by men with sexist, threatening language like this. walking down the street they will get an unwanted comments about their appearance, if they ignore them or complain, they get called the kind of things you call "simple words".

Because this kind of language is in the everyday lexicon of of some men, it's used to hurt, threaten and intimidate women.

but y'know, please don't get upset by my simple words yeah.

</comment></comment></comment></comment></comment><comment><USER10> I may be a nitpicker, but for me 4k is 4096x2160, or am I wrong? This screen is UHD, or 2160p but not 4k.

<comment><USER11> For me, it's 7822x4096. Or even 7112x4000 if you must. This really should be called 2160p, but you know, marketing. Also really loving my 976GiB "terabyte" hard drive, and my "ten meg" 1.25MiB/s broadband.

<comment><USER12> ____P is a broadcast specification, and was never meant to become a display measurement. It intentionally only defined the vertical resolution as this was the only specific resolution requirement; for example 1440x1080 is a valid 1080P broadcast resolution (it would still be displayed in 16:9 however). Moreover specifying Progressive is utterly redundant in modern displays (and thankfully is becoming universally redundant).

____P is no less of a marketing label than 4K, just a different one. Any monitor should be defined by its resolution; however this is clunky as hell- as demonstrated by the sheer mass of people keen to inappropriately use the ____P nomenclature.

UHD seems a valid shorthand of this resolution; and to be fair it tends to get used; although often alongside 4K.

<comment><USER11> I would be quite happy with the demise of interlaced display modes as well. But I'm not so hopeful that we won't see a "4Ki" resolution for cable/satellite UHD channels in the future. All of the channels I get are 1080i still.

</comment></comment></comment></comment><comment><USER13> $649 in US

$699 in Canada

$1000 in UK <\- What on earth is going on here - even with 20% VAT?

<comment><USER14> But still, at £600 it's much less expensive than most other available 4K displays (that I've seen)

<comment><USER13> There's a Samsung 4k pre-order for £500 on Amazon, Overclockers etc.

<comment><USER15> You wouldn't happen to have a link or know the model number would you?

<comment><USER13> There's also a Dell UHD for 450

[http://www.amazon.co.uk/gp/product/B00IOUBOB2/](http://www.amazon.co.uk/gp/product/B00IOUBOB2/)

</comment></comment></comment></comment></comment><comment><USER16> My Chromebook Pixel has spoiled me. A 28" 4K monitor isn't sharp enough. Dell has a 24" that yields 180 ppi. I'd be interested to see that in person, but it probably still isn't sharp enough comparatively.

<comment><USER2> You typically sit closer to a Laptop screen than to a Desktop screen, so this should be pretty close to retina level DPI depending on the viewing distance

[http://cdn.avsforum.com/4/4c/600x376px- LL-4cd4431b_200ppdeng...](http://cdn.avsforum.com/4/4c/600x376px- LL-4cd4431b_200ppdengleski.png)

</comment></comment><comment><USER17> Good to see the price of big high resolution screens coming down, after so many stagnant years.

> The one thing that may freeze you from pulling the trigger right now on the > PB287Q is, oddly enough for the monitor market, the promise of better things > coming soon.

Any guesses about how the market will progress in the next year or two? I have an old 30" 2560x1600, bought for £1200 6 years ago - good enough for my uses (coding). Would like to get a second similar screen, when they are cheap. At the moment I see e.g. 27" 2560x1440 for £420 [1] - would buy it today, except maybe I can get something cheaper and better soon ...

[1] [http://www.cclonline.com/product/95902/U2713HM/Monitors/Dell...](http://www.cclonline.com/product/95902/U2713HM/Monitors/Dell- UltraSharp-U2713HM-27-Widescreen-LED-Monitor/MON1192/)

</comment><comment><USER18> I'd buy one if I knew it would work. Heck, I'd buy two or four for a multimonitor setup. The process of figuring out whether a given laptop or graphics card will drive 4k over a particular standard is daunting. Knowing if it will work with Ubuntu, in particular, is beyond me.

I wish there was a standard -- perhaps over USB -- where ordinary people who don't play games and just want a machine to work on (emacs, xterms, web browsers, word processors, rather than gaming) could make many monitors and large monitors work plug-and-play.

<comment><USER4> > I wish there was a standard -- perhaps over USB -- where ordinary people who > don't play games and just want a machine to work on (emacs, xterms, web > browsers, word processors, rather than gaming) could make many monitors and > large monitors work plug-and-play.

You mean like DisplayPort? If your system supports DisplayPort (1.2 or later), you should have no issues getting image on screen. EDID/DisplayID can be used to autoconfigure DPI/PPI scaling, so ideally the experience should indeed be just plug-and-play.

</comment></comment><comment><USER19> > The sRGB option does produce colors that appear to be closer to our post- > calibration settings than the default "standard" mode, for what it's worth.

Hmmmm... I need something that can do a little better than "closer to". Guess $650 and color accuracy is too much to ask at 4k.

<comment><USER20> Dell's UP2414Q was on sale for $765 a couple of times this month. It's a smaller screen, but has really great color. Details from Tom's Hardware: [http://www.tomshardware.com/reviews/dell-up2414q-monitor- rev...](http://www.tomshardware.com/reviews/dell-up2414q-monitor- review,3781-7.html)

</comment></comment><comment><USER21> So how long till we get 4K touch displays?

These displays are fantastic, but I'd worry about touch models being released in a couple of years. If you use Windows, or OS X gets good touch support, you might regret the purchase.

<comment><USER16> I'm still holding out for the ThinkVision 28:

[http://news.lenovo.com/images/20034/ThinkVision%20Spec%20She...](http://news.lenovo.com/images/20034/ThinkVision%20Spec%20Sheets.pdf)

</comment></comment><comment><USER22> The Miley comment is totally unprofessional and unnecessary.

</comment><comment><USER23> Good to see prices of 4K coming down. Are 4k displays better at rendering text for those who read and work with code a lot?

</comment><comment><USER24> why not a seiki 39" 4k for $399?

[http://www.amazon.com/Seiki-SE39UY04-39-Inch- Ultra-120Hz/dp/...](http://www.amazon.com/Seiki-SE39UY04-39-Inch- Ultra-120Hz/dp/B00DOPGO2G/)

<comment><USER25> Err, 30Hz refresh rate at 4k as the review mentioned?

</comment></comment><comment><USER26> Can someone explain how this is 4k? Apple's Thunderbolt Display has a resolution of 2560x1440 [1] and ASUS' PB287Q also has 2560x1440 according to Amazon [2].

What am I missing? UPDATE: I transposed digits and looked at the PB278Q not the PB287Q.

[1] [https://www.apple.com/displays/specs.html](https://www.apple.com/displays/specs.html)

[2] [http://www.amazon.com/PB278Q-27-Inch-LED-lit-Professional- Gr...](http://www.amazon.com/PB278Q-27-Inch-LED-lit-Professional- Graphics/dp/B009C3M7H0)

<comment><USER16> I believe you're looking at the 278Q. The 287Q (note the digit changes) has a resolution of 3840 x 2160 according to the article.

<comment><USER27> So it's 3.84K then. Almost 4K.

A bit like how a carrier one sold me a phone with EDGE as 3G. I mean, 2.75G is pretty much 3G, right?

<comment><USER28> Um, anything that's marked as "4K" has 3840x2160 resolution.

Pretty much any "<something>p" and similar marking is misleading in terms of marketing anyway.

</comment></comment></comment></comment><comment><USER29> vs Samsung U28D590D [https://www.youtube.com/watch?v=B0YzTJheuFs](https://www.youtube.com/watch?v=B0YzTJheuFs) (4:48)</comment>


Cryptography Pioneer (Ron Rivest) Seeks Secure Elections the Low-Tech Way - <AUTHOR> https://www.quantamagazine.org/rsa-cryptographer-ronald-rivest-seeks-secure-elections-20200312/ <comment><USER2> What I don't quite get is if a voter can verify that their vote was counted as they intended, how can they prove that it was not if it was not?

Or in other words if many people report that their vote was not counted correctly, can we trust them?

As a concrete example assume that Trump does not win the next election. But then a large number of his supporters claim that looking at the results online they can see their vote was not counted correctly. Can we prove that they are lying, if they are?</comment>


Ask HN: Establishments that offer free Wi-Fi, how do you protect yourselves? - <AUTHOR> How do establishments that offer free Wi-Fi protect themselves from illegal activities on the connection? <comment><USER2> So this is a problem the Slovenian free and open wireless network project had. People were worried about what others would do on their connection.

So now the firmware you flash on the router you'll use as an access point is preconfigured with a VPN. Simple and it works well. The only problem is they've been having problems getting enough free VPN bandwidth as the project grows.

Project's website: [https://wlan-si.net/en/](https://wlan-si.net/en/)

</comment><comment><USER3> It's not at all clear that having an open wi-fi network results in greater exposure to responsibility for unwanted actions on the network.

In fact, Bruce Schneier expressly keeps his wireless network open, for this reason among others.

[https://www.schneier.com/blog/archives/2008/01/my_open_wirel...](https://www.schneier.com/blog/archives/2008/01/my_open_wireles.html)

<comment><USER4> Interestingly he basically lists some potential problems with doing it, but says he thinks the pros of offering free internet to people are worth the cons. For some people, the argument works, but I think the risks are too great. People download illegal stuff so often that I wouldn't want to risk sharing my ip with someone like that. If you are a coffee shop you will easily be able to show that it was probably a connected user. But as an individual, you'll have a much harder time proving it was the guy who used your free wifi.

Secondly he makes the argument that his computer should be secure anyways, which I think indicates a poor understanding of how computer security works. No matter how well he configures his system, there will always be undiscovered bugs in his OS. Having multiple layers of security makes it significantly safer

</comment></comment><comment><USER5> There's some information on this topic at [https://openwireless.org](https://openwireless.org).

</comment><comment><USER6> Most places don't do much other than maybe block ports. Having an auth system also helps.</comment>


Ask HN: How do you remain up-to-date with various Tech events and Conferences? - <AUTHOR> Just today, I got to know about the DockerCON that was held online 3 days prior (28-may). I would have very much liked to attend that but was not aware of the event at the time.<p>Is there any website or app that I can use to keep track of all the recent or upcoming events. <comment><USER2> Follow the famous bloggers, Enterpreneaurs, and Businessmen on Linkedin, twitter and Facebook. Build your own clout!</comment>


Startups on AWS should watch out for Amazon's expansion plans - <AUTHOR> https://www.inc.com/sonya-mann/aws-startups-conflict.html <comment><AUTHOR> Sorry about the hyperbolic display headline. Unfortunately I can't control those.</comment>


How to Become a Game AI Developer - <AUTHOR> http://www.ai-blog.net/archives/000150.html <comment><USER2> I would say that you should have a good toolbox of simple practical techniques that you understand at the level that you can re-implement and combine at will. Because that's what I would love to see in a candidate, speaking as a ten-year game programming veteran.

It's also a good way to look at interviews. Some people would try to use a programming interview as a place to demonstrate the most advanced, novel or little-known cool thing they know. But even in a specialized position, interviews are largely explorations of breadth, not depth. If you want to show off your depth, write a paper, blog post or library with a demo.

</comment><comment><USER3> "When someone throws you a tough interview question, be sure to keep attacking the problem as vigorously as you can"

I've seen people give up on tough interview questions and I wonder if they realize it's simulated software combat - how they reaaaact - not the answer that is important..</comment>


Common nonsense - <AUTHOR> https://www.linkedin.com/pulse/common-nonsense-kapil-rajak?trk=prof-post <comment><USER2> This article begins with truth quality in math then switches to talking about illogical people. Misleading someone intentionally is lying. Saying you'll do something if something does/doesn't happen and not doing what you say under the conditions is lying. Literary fallacies are real. Induction and deduction logic applied in math, when applied to English, can be fallacious. Assuming that the truth value of a math statement is the same as a statement in language is a terrible mistake.

</comment><comment><USER3> This is a common mistake by computer folks. They treat English as a formal language, and ignore subtext and context when trying to draw inferences. People aren't as stupid as robots say they are, they use a sophisticated pattern matching and contextual fuzzy logic that our computers are only just starting to be competitive at.

</comment><comment><USER4> I remember puzzling over the mathematical definition of "implies" in first year CS. I understand why it is defined the way it is in the context of mathematical logic, but I always puzzled at a deeper issue: when were we going to learn how connect symbolic logic to reality? Combining the truth values of P and Q seemed relatively straightforward. But how did you work out those truth values in the first place? How did ambigous words apply to a complex reality?

I later found out that Aristotelian logic held the answers, and modern symbolic logic was a weird set of mathematical formalisms that wrenched out one part of classical logic (propositions) but omitted the theory of terms (concepts), without which, logic becomes a system of meaningless symbol games. This is the book that showed me a world of logic both perfectly rigorous and perfectly descriptive of human cognition: [https://www.amazon.com/Introduction-Objectivist- Epistemology...](https://www.amazon.com/Introduction-Objectivist-Epistemology- Expanded-Second-ebook/dp/B002OSXD8C) (if the author's name triggers you, obviously this book is not for you, but if you enjoy far-out intellectual adventures, you'll be in for a mind-blowing ride).

</comment><comment><USER5> Again, politicians and advertisers, not to mention religious leaders and parents who don't like to be questioned will continue to oppose anything which empowers children with the skills and tools to think critically.

</comment><comment><USER6> Our society needs to learn the basics of reasoning, stat!

</comment><comment><USER7> This is what happens when you generalize expertise from your field to other fields.</comment>


Why NASA Is Spending Half a Billion Dollars on a Canceled Rocket - <AUTHOR> http://www.foxnews.com/scitech/2010/12/29/nasa-spending-half-billion-dollars-canceled-ares-rocket/

<comment><USER2> I hate to write this down. I was born in 1961, and I watched all the Apollo launches, moon landings and splashdowns. I got a degree in Aerospace Engineering. I worked for 2 large defense/aerospace companies.

NASA spends the money in the same form of "white welfare" that DoD spends its money. DoD and to a lesser extent, NASA, exist to funnel taxpayer money to a few large corporations, and a flock of smaller, less publicly recognized corporations. No competition exists between these companies. No real government oversight exists either, as a large portion of the money is "black budget".</comment>


How to Get a Design Job at Airbnb - <AUTHOR> https://medium.com/desk-of-van-schneider/how-to-get-a-design-job-at-airbnb-6fe15ec79945#.pri3y9ndv <comment><USER2> > Folks love to talk about how they do "design strategy" and want to work on > "new big things." They'll tell us that they can do the details, but they're > better with strategy and developing new concepts and their time is better > spent elsewhere.

This is of no surprise. Regardless of your job, but especially so in one that is aesthetically driven and judged, working on the high-profile/sexy stuff is usually what gets you promoted or gets you more industry recognition. If you are career (progress) driven, working on the small stuff probably isn't going to get you there as quickly if you can delegate that off to a junior.</comment>