Security vulnerability in str.format in Python - <AUTHOR> http://lucumr.pocoo.org/2016/12/29/careful-with-str-format/ <comment><USER2> The author proposes a change that we as the user can implement between now the the time this issue is patched.

Having never worked on the core source code for a language like python, I would like to know what the Python 3.6 maintainers might do to patch this vulnerability? How would they fix it at the core level?</comment>


Visualising random variables - <AUTHOR> https://terrytao.wordpress.com/2016/05/13/visualising-random-variables/ <comment><USER3> Displaying a a function with changing values, instead of a static one, does change how you process the information. This gives an advantage to computer screens over chalkboards.

I am not sure about the implementation. The author seems new to webdesign. He spends 2 paragraphs explaining how he made the image changes, hint, he used a looped gif. Then he has an idea of an "after image" but then admits he cannot do it. The numbers dancing around at the end is hard to digest. It's clear that one is not moving, but that is about it.

In the comments Rahul posts a graph where circles are plotted and fade over time with random inputs. He then plots various functions where the grouping is obvious and easily digestible.

Overall it looks like a great collaboration. Someone having an design idea but incapable of executing, and something else doing a better technical implementation. While the idea is completely unoriginal, its still a fun story.

<comment><USER4> I'd just like to draw attention to this comment:

> The author seems new to webdesign.

The author of the post is Terry Tao, one of the greatest living mathematicians and recipient of the Fields medal.

I imagine that he may indeed be somewhat new to web design, however I doubt that learning it is high on his list of priorities.

 _EDIT: No snark intended here, by the way. I thought the context of who Tao is was important._

<comment><USER5> The mathematician in me is somewhat relieved to see there are some things I'm better at than Terry Tao :)

<comment><USER6> I see. You mean mathematics and web design.

</comment></comment></comment></comment><comment><USER7> > When teaching mathematics, the traditional method of lecturing in front of a > blackboard is still hard to improve upon, despite all the advances in modern > technology.

i completely disagree on a multitude of fronts

what is meant by 'traditional'? my understanding of plato's academia was it was a forum for discussion stead some silent note taking mass attempting to keep pace with an informer whose information is variant based on how they slept and whether they ate recently

current academic lectures need to go away

i'd rather see professors make succinct learning material, a la well edited video lectures andor notes, and offer them to students as suggested material and have a weekly meeting where the material is discussed

also, technology has always informed mathematics and trying to deny that in lieu of, what i assume is, some personal distaste for contemporary technology and its uses seems disingenuous

when i research mathematics i sometimes take time away with a pencil and paper, but usually only to find new directions to lead an idea; in the vast majority of my work i collaborate with a computer

i like using many mediums for expression, but if i were forced to choose one over the other i would definitely choose the computer

i can always do what i do on paper with a computer, the opposite would leave me severely wanting

<comment><USER8> Most post secondary math, especially proof-oriented abstract math- analysis, topology, abstract algebra, probability and measure- all the kind of stuff that Tao probably teaches- really cannot be visualized with modern technology and relies more on pen-on-paper/chalk-on-board walkthroughs. In that context, Tao is spot on that modern tech is of little use in exposition.

<comment><USER7> how does that logic follow

i feel fairly confident that anything you do on a chalk board i can do on a computer, unless you can offer an example of what you mean by 'cannot be visualized with modern technology '

also, my comment spoke directly of what i think you are referring to in using the word 'exposition'.. perhaps you meant 'extempore'?

why does the academic system think, assume, require andor expect their professors to be good public communicators?

<comment><USER9> The interactivity and dynamicism of the chalkboard can't really be reproduced in ppt or pdf. Go look at some MSRI videos for example: [http://www.msri.org/workshops](http://www.msri.org/workshops)

<comment><USER7> i shutter to think that someone assumes if i say i use a computer to collaborate on mathematics research they think i mean with either powerpoint or pdfs?!?

'interactivity and dynamicism of the chalkboard' reads like laughably obstinate bias

[http://acko.net/blog/mathbox2/](http://acko.net/blog/mathbox2/) is a great example of what interactivity and dynamicism really can be

[https://hn.algolia.com/?query=acko.net&sort=byPopularity&pre...](https://hn.algolia.com/?query=acko.net&sort=byPopularity&prefix&page=0&dateRange=all&type=story)

your msri videos are perfect examples of what i think is wrong with academia

one person standing in front of a group of silent onlookers making incomprehensible scribbles on a medium that the onlookers are unable to interact with or permute

then to take that presentation and put it online raw and unedited

i picked a random video: [https://www.msri.org/workshops/705/schedules/20915](https://www.msri.org/workshops/705/schedules/20915) ; feel free to watch its 51 minutes or skip around.. i challenge anyone to go jump straight to minute 9 and read what is written there, i have worse handwriting than this professor and i know you would be unable to read this comment if i were required to write it by hand

how much of the video is actionable information?

how much time is the viewer just sitting, silently, waiting for the professor to finish writing words just spoken? what benefit is there for me to watch someone as they write?

[http://www.3blue1brown.com/](http://www.3blue1brown.com/) is a great example of well edited content

i'd rather professors make edited versions of their intended presentations, give them to students, and then this lecture hall could be filled with conversation and imagination stead the sound of chalk being dragged across slate

</comment></comment></comment></comment></comment><comment><USER10> It's possible to make something similar with Excel. Something like

      A1 = "X"      B1 = Integer( 6 * Random() + 1 )

      A2 = "Y"      B2 = Integer( 6 * Random() + 1 )
      A3 = "X+Y"    B3 = B1 + B2

      A4 = "Z"      B4 = 7 - <USER2>
      A5 = "X+Z"    B5 = B1 + B4

And then press "F9" to refresh the random values and get new ones.

</comment><comment><USER7> visualising random variables:

[https://www.youtube.com/watch?v=5P6Dihkrvus&list=PLm5k2NUmpI...](https://www.youtube.com/watch?v=5P6Dihkrvus&list=PLm5k2NUmpIP8qwttAS5Batnd7u2UpBtaL)</comment>


Ask HN: Free web host to test javascript? - <AUTHOR>

I have been playing with javascript to interact with an html canvas, and I'd like to test a simple program on a couple devices.  Is there a reasonable free host to upload a single html/js file to?  I don't want to deal with configuring my own server, I just want a quick free subdomain to test the script. <comment><USER2> Could use the Google App Engine, or any app engine that has free usage. <http://alternativeto.net/software/google-app-engine/> <\--List of alternatives to the the app engine. Also might wanna look at OpenShift <https://openshift.redhat.com/>

</comment><comment><USER3> Maybe just email the file to yourself and open it on the mobile devices? Or Dropbox? Or one of the pastebin sites?

<comment><AUTHOR> Thank you for this suggestion, I had no idea it could be as simple as emailing the html file to myself.

</comment></comment><comment><USER4> jsfiddle?

<comment><AUTHOR> I had never seen this site before, and I learned something new just by looking at the jquery examples.</comment></comment>


A Novel Way to Think About Literary Categories - <AUTHOR> https://www.nybooks.com/daily/2020/05/25/a-novel-way-to-think-about-literary-categories/ <comment><USER2> I would enjoy this different type of classifying genre, and smaller libraries or passionate stores could use both, scifi-identity, or adventure-isolation, mystery-family.

An interesting appliation would be Orson Scott Card's Ender series, which take a turn! Ender's Game? Perhaps scifi-responsibility, as that is the main issue Ender grapples with and has to decide. Speaker for the Dead? Scifi-empathy, and Andrew resolves inter-species traditions, and language, I think.

Children of the Mind might be about belonging, but the point is that this harder-to-create classification benefits readers 100x more. I might be contending with responsibility or empathy, and easily pick a book that will move me.</comment>


Google Analytics without javascript - <AUTHOR> http://www.vdgraaf.info/google-analytics-without-javascript.html <comment><USER2> I'm not an expert with configuring Google Analytics, but this still looks like a bad idea, except possibly in the case of the RSS (use feedburner, parse logs). If you experience any type of load, you're going to generate a lot of network chatter for no real gain.</comment>


Looking for partners for a start-up - <AUTHOR>

I am looking for 2 partners who would like to join me to put up a technology start-up. is there anyone here who's interested ? <comment><USER2> Partners for what? What space are you working in? What is your domain of competency? Are you the product visionary guy, the business execution guy, the technical execution guy? Is there a particualar location you need to be in? Is there anything you've done in the past that indicates you've got the right DNA for your role and the space you want to be in? So to review: 1) What? 2) Why? 3) And why with you?

</comment><comment><USER3> Come on, sell me a little.

</comment><comment><USER4> Not to divert too much attention from the OP, but where might individuals go for this purpose online? Specific forums? Meetups? I want to meet programmers with the desire to start something together as well, but am embarrassed to say I don't know where to look, and I want to find ways to go out and hang with people locally to have a good time with a common purpose: talking technology, science and the future. The ideas we want to develop into reality.

You gotta KNOW people, as in personally, before you can make that invitation... I would never dump my thoughts and hopes onto a stranger, but a cup of coffee a few weeks in, and you have a good bead on a friendship prospect. Where can I find these guys outside of a college bar, which is creepy as hell, being as I am no longer in college. Can you imagine the conversation/intro: "Hey buddy-- you code?......<cough>"

Where do you meet people that are legitimately interested in talking shop about this kind of stuff, assuming you don't have them in your circle already?

<comment><USER5> Go to Meetup.com, find a local user group for whatever language/technique/framework you like working in and go to the meetings. When you are at the meetings actually get involved and introduce yourself and ask people about what they are working on.

<comment><USER4> I actually poked around and couldn't find anything relevant on MeetUp... I was hoping there was a super-secret underground group of coderhippies that congregate somewhere I've never heard of... alas, my search continues.

<comment><AUTHOR> Well, i am a developer, i know a few languages including Java,C++, C#, Groovy, and a few other scripting languages.

I had a different entrepreneur tech idea in my mind at the time i posted this question here. Now since there's no place on the web to find coder-hippies ;) or business/marketing entrepreneur people, why not create a place for all those entrepreneur students who are looking to connect to one another. I don't mind anyone stealing this idea and working on it, but if there's anyone who would like to join me in creating this application please buzz me.

I am living in a Asian country, and geographical location would not effect a startup.

let me know, what you think :)

<comment><USER4> My thinking as well...

<comment><AUTHOR> So any plans to work on it :D

<comment><USER4> This. [http://www.guotime.com/2011/07/how-to-have-successful- early-...](http://www.guotime.com/2011/07/how-to-have-successful-early-stage- startup-meetups-like-hackers-and-founders/)

Except for people even earlier in the chain. I'm talking no investors (in any official capacity) or anything formal/markety- Just guys and ladies that want to find people that want to flesh out their ideas through exposure to like- minded people. I can envision forums with a geography element that is specifically oriented towards orchestrating get-togethers. Or even better, how about using Elgg to make open networks to connect people by interest? <http://www.elgg.org/about.php>

That would be cool.

My internet is down outside of work, so I'm limited to my phone currently, which I'm glad to have, but loathe to use for extended typing. Thoughts?

<comment><USER4> Whatever this is, you want it to create a "culture of intent" that clearly demonstrates to its users that the goal is community interaction, cooperation, and friendly optimism. We need someplace a little more personal and under-the- radar where we can enter the software development scene, such as it is, so that we can share our early education with smart people near to us, so we can combine the best elements of "hometown familiarity" with global, futuristic scope and stage.

The division if labor has brought us here to this place on YC together- it's simply in our interest to find find each other near where we sit- at home. It makes sense to combine intellects and personalities to help guide the way to the many big-time plans and creations. I want a hometown launching pad for getting to San Francisco Bay, custom built to show me the local people reading this that want the same challenging but totally do-able map to creating world- wide success in the technology world. I'm looking at this world, and it's in need of an on-ramp to all the talent percolating in every small town on the map. Imagine the state of science today, the internet being one lense of which, where every truly interested person within 1000 miles of you were able to go to the same places to feed their computing human culture- face to face, instead of looking at everyone in the internet world as a collection of digital sentences, with the 3/5 conveyance of intent delivered, which is the average ability of a written sentence to say _exactly_ what was intended. The other 2/5 is body language and eye contact. We should make real efforts to find each other and create from our current homes, until we have a stable of nailed-down implementations we can confidently present to the pro's.We have the neighbors nearby that want to work together, with smart, cool, fun, and dedicated people. We each try our best to be that way ourselves. I see so many of you here- I wish I could meet you and talk about these amazing, exciting advances in our technology and abilies to change the world in incredibly powerful ways. I think we should make a network that exists for this purpose. I want to work with you people. We all want the help from our friends, so we should put these friends of common interest together. Plus, there's beer, social commentary, new information, and connection to the bigger world. That would be cool. Would you agree?

<comment><AUTHOR> yeah, sounds good to me. i looked at elgg as well, i believe one should create this social engine from scratch. It could be innovative and who knows, we might be able to make it better than elgg it self. your thoughts?

<comment><USER4> Perhaps ground-up would be effective in the long run, but my imagination wonders if an index of pre-populated mini-networks all rooted on one "jump page" might work better in the near-term. At least that's the functionality I imagine- the index could be similar to a traditional forum layout, where the categorized interests lead you to Elgg-like (again, only as an example) focus- and/or geographically-specific group of people. They would of course be fully capable of interconnecting _between_ other networks throughout the site, but the goal here is sharing among people in your local group of like-minded people. It's fun to think of the possibilities here- there are many. Back to you- PS- just saw this and thought it might apply [http://blog.garlicsim.org/post/7699968171/why-making-a- cool-...](http://blog.garlicsim.org/post/7699968171/why-making-a-cool-project- is-a-good-idea-for-an)</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment>


Git – A simple guide - <AUTHOR> http://rogerdudler.github.io/git-guide/ Nicely explained, worth a fav. <comment><USER2> An improvement suggestion: do not use confusing terminology from other version control systems. Change "Checkout a repository" to "Clone an existing repository".

Using the word "checkout" might make sense if someone is coming from an svn/cvs background, but it's just confusing because checkout in git is a different command with a different meaning.

And besides, more and more people are being introduced to git without prior exposure to cvs or svn. E.g. in my university, CS freshmen submit their exercises using git. Many of them have no prior exposure to centralized version control or things to unlearn.

<comment><USER3> I was just about to point the same "checkout a repository" has nothing to do with checkout, you need to change it to "clone".

</comment></comment><comment><USER4> It seems to me that git tutorials are the new monad tutorials. The concepts are simple, but the names are confusing (see "checkout" or "return", "reset" or "bind").

There are a lot of tutorials like this one, but I think that they mostly help the writer (not that it's a bad thing).

<comment><USER5> That being said, though, for a rank beginner, this is one of the best Git tutorials I've seen.

</comment></comment><comment><USER6> The (in my opinion) scariest section for beginners (merging in the cast of conflict) is wrong (or at best, incomplete).

The problem I find beginners have with git (compared to svn) is not when things go right, it is when they go wrong -- in svn it is much harder to get yourself in a situation you cannot figure out how to get out of.

</comment><comment><USER7> "gitk" is only part of the story. You'll see the branches and the commit contents, but you still need to run "git gui" to do the _actual_ commit, reset changes, push.

</comment><comment><USER8> No mention of stash? One of my most used features. Maybe just for teams though. Great starting point for git, nice job.

</comment><comment><USER9> I used this almost 2 years ago for a couple months as reference since it was easy to understand. Thanks for reposting.

</comment><comment><USER3> You have a big gap between step 1 (Download Git) and 2 (git init), specially for windows users.

</comment><comment><USER10> Is it open-source?

<comment><USER11> How can HTML+CSS+JavaScript not be open source? :D

        view-source:http://rogerdudler.github.io/git-guide/

<comment><USER12> You can see the source, but do you have a license to share it?

</comment></comment></comment><comment><USER13> Finally, a guide i understand! Thanks!</comment>


Why Chinatown Produce Is Cheap (2016) - <AUTHOR> http://www.saveur.com/chinatown-produce-prices?ikvwCXcYamcvbSBg.01 <comment><USER3> this rarely gets mentioned in these articles but it's extremely important. The Chinese food culture is substantially different than the Western food culture, and I don't just mean the items on the menu.

Chinese don't eat raw foods at all, and especially not vegetables, which they correctly (by the standards of Chinatown produce) view as being unsanitary until thoroughly cooked.

They have created a market that is efficient by eschewing the standards of sanitation that Western produce markets use. That's not to say that this is _bad_. Their food culture is fully adapted to it and it doesn't produce epidemics of food-borne illness in their community because they handle and cook food appropriately. The same approach wouldn't work if it was mostly Westerners buying the food though. A taste for raw baby kale salad makes this entire approach to food marketing non-viable.

<comment><USER4> _The Chinese food culture is substantially different than the Western food culture, and I don 't just mean the items on the menu._

Things I've noticed about the particular Chinese food culture of my girlfriend: Ginger goes in Chicken soup. Garlic does not. Broccoli is only cooked until bright green. Black pepper is used, basically never. All vegetables are to be rinsed, even the things in Trader Joe's packages that say "Triple Washed, Ready to Use." Almost no claim on the package should be trusted, ever.

Meat is _always_ well cooked. (And there are plenty of ways to make meat very tasty without having it be super-rare.)

<comment><USER5> These are pretty good general rules of thumb. Interestingly the Vietnamese, by contrast, are very much in to rare meats.

Broccoli and other vegetables are cooked only slightly because it is considered wasteful of the natural qualities of the food to overcook it (and probably because it wastes fuel also, which is also the reason for everything being cut small before cooking).

<comment><USER6> > Interestingly the Vietnamese, by contrast, are very much in to rare meats.

I blame the French.

Indochina happened.

The biggest evidence for this is Vietnamese word for beef is Bo. Which is a borrowed French word.

[http://www.asian- central.com/stuffasianpeoplelike/2010/05/21...](http://www.asian- central.com/stuffasianpeoplelike/2010/05/21/featured-topic-french-loan-words- in-vietnam/)

<comment><USER5> It does seem likely that _bo_ is French _boeuf_ -derived, but according to Wiktionary[0] the historical Vietnamese pronunciation of the Chinese character for beef (牛) was _ngưu, ngọ, ngỏ, ngõ, ngâu_. It is interesting that these are so similar to pan-Taic languages _neua_ and Cantonese _ngau_.

[0] [https://en.wiktionary.org/wiki/%E7%89%9B#Vietnamese](https://en.wiktionary.org/wiki/%E7%89%9B#Vietnamese)

<comment><USER7> Probably because two thousand plus years ago the area that is now called Guangdong, and the area that is now Vietnam, was inhabited by the same people; And then the Guangdong area was conquered by China. The people who lived in Guangdong inter-married with the Chinese migrating south and also had a lot of influence on Cantonese. [https://en.wikipedia.org/wiki/Southward_expansion_of_the_Han...](https://en.wikipedia.org/wiki/Southward_expansion_of_the_Han_dynasty)

Vietnam is "Yue-nam" in Chinese, and Cantonese is "Yue-yu" in Chinese, whose literal meaning is "Language of Yue".

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

<comment><USER8> Vietnamese here. I don't think your explanation is correct.

First, most of the Viet-Cantonese words are likely brought by Chinese migration since the 15th century. When the Ming dynasty fell, many Chinese fled to South Vietnam and helped Viet people annex that land from the Cambodians [https://en.wikipedia.org/wiki/Hoa_people](https://en.wikipedia.org/wiki/Hoa_people)

Second, tt's true that we "might" have lots of connections with the ancient Yue people, but this is still in debate. Just like the Romans called everyone on the other side of the Rhine "Germans", the Chinese of 2000 years ago called everyone south of them "Yue", even though they can be different tribes or nations. Being named the same thing by the Chinese doesn't actually mean anything. Genetically we have many similarities with the people of south China, but the history of vocabularies can be more complicated than that.

<comment><USER7> You're right a lot of the loanwords and similarities between the languages could and likely happened later on.

I think there's no way Cantonese and Vietnamese don't have lots of connections with the ancient Yue people; A whole people don't just fall off the face of the Earth, unless there was a most serious kind of genocide. Almost certainly Cantonese and Vietnamese can trace some of their ancestors to the Yue one way or another. It's true Chinese at the time called everyone south of them Yue, but it didn't mean they were that much fragmented into tribes. The kingdom of Nanyue has borders pretty much exactly matching Guangdong + Vietnam. [https://en.wikipedia.org/wiki/Nanyue](https://en.wikipedia.org/wiki/Nanyue). Nan = south, and so does the "nam" in Vietnam. I don't think that's a coincidence.

But your larger point is very much correct now that I think about it - <USER2> history of vocabularies can be very much complicated.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> Ha! I figured out the reason even before I read the whole article... always a gratifying feeling. That said, there are tons of food hacks if you want to save 30-40% and have a strong stomach. Buy your cashews, cumin seeds, turmeric, groundnuts, papayas, guavas from the nearby Indian store - there's tons of them in CA. Most of these are sourced from Fiji, Philippines, India etc, whereas Safeway would source cumin from Oregon and charge $5 per ounce. You can literally get a whole pound of cumin for that price - but no, you don't get the "organic certification", or the bar code or the USDA assurance sticker or anything that lets you know where the cumin came from in case you get some food poisoning and want to lodge a complaint. The Indian store lady dips into a giant cumin bottle and pours out a pound of cumin and takes $5 cash and no sales tax ofcourse wink wink. So yeah, depends on your ethics and cash situation. Say you want a little pep in your walk and like some extra endurance - used to be ephedra was legal and you could pop into your Chevron foodmart and buy a pill. Now it's no longer legal, so you go to the Chinese store and get the strongest ephedra tea - free market ftw. Ofcourse if you brew something strong and land up in the hospital, the medic can't really help you since who knows where that tea came from and what else is in it. Literally no American supermarket can compete with an Indian store when it comes to say cashews. Your Target gives you two pounds of cashews for $15. The Indian store gives you two kgs... that's 4.4 pounds! Ofcourse it won't come in a nice airtight jar with feel-good marketing on why you must eat your servings of USDA nuts for optimum health - instead, it's going to be wrapped up in a cone made of newspaper.

If you have a "tropical palate" and a strong stomach, you should definitely try some of these shady joints. It's a trip.

<comment><USER10> > "and no sales tax ofcourse wink wink"

Actually in CA, many groceries are not subject to sales tax, just FYI. I'm not sure where the distinction is drawn, but it seems like the less processed the food the less likely it will be taxed.

<comment><USER11> Not sure why this is downvoted. California, like many other jurisdictions, seems to make a distinction between groceries/"raw" foods, and "prepared foods" when it comes to sales taxes. Unprepared foods are generally exempt from sales tax, while store-prepared foods are not exempt. E.g. an unsliced bagel in NY is untaxed, but a sliced bagel can/must be taxed. Fruit and vegetables likely fall into the untaxed category.

From Wikipedia: In grocery stores, unprepared food items are not taxed but vitamins and all other items are. Ready-to-eat hot foods, whether sold by supermarkets or other vendors, are taxed. Restaurant bills are taxed. As an exception, hot beverages and bakery items are tax-exempt if and only if they are for take-out and are not sold with any other hot food. If consumed on the seller's premises, such items are taxed like restaurant meals. All other food is exempt from sales tax.

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

<comment><USER12> It is more complex that that: hot food might not be taxed if it is "to go" (Starbucks and their breakfast sandwiches ....), Whole Foods will always apply tax to its food bar items, the ice cream parlor down the street will apply sales tax if you say "for here" but not if they assume take out.

It is very very confusing, and I haven't really figured it out yet.

<comment><USER13> Sales tax on food in general tend to be pretty arcane. Notoriously, McVities sued the British revenue services to have some of their biscuits classified as cake instead of biscuits, because there's no VAT on cake. (They won.)

</comment></comment></comment></comment></comment><comment><USER14> This feels like the proverbial dollar left on the street that economists say should not exist, so I'm racking my brain trying to figure out what's stopping chains from replicating this. I wonder whether this alternate network is as scrupulous about source tracking and food safety regulations. Those costs could be driving up prices on the traditional retail side.

<comment><USER15> > Markets also cut costs by eschewing extra technology and certain aesthetic > choices—the Journal points out that shelves "are typically made of plywood > and lined with newsprint," prices are scrawled on cardboard instead of > printed on stickers, and credit cards are not always accepted.

Some people don't want to buy food with cardboard signs and cash.

Hell, I've heard California even has people who are fans of convenience so much they will pay for other people to do the grocery shopping.

<comment><USER16> I pay a service to do my grocery shopping for me. It's a bit of a markup, but I highly value my personal time, don't own a vehicle and have an extreme dislike of grocery stores. There's a great market for such services (gig economy).

Chicago Resident.

<comment><USER15> Exactly. I was being facetious, but the point is that rock-bottom prices aren't everything.

</comment></comment></comment></comment><comment><USER17> Amazing how they manage to stay so cheap while hiring people at at least minimum wage, with valid work contracts, while paying all relevant taxes and not having any ethnically discriminatory hiring practices.

That's the real miracle.

<comment><USER18> Does the article handle ethnically discriminatory hiring practices? Neither "Divers-" and "ethnic"show up in the article, and if it's like Boston's Chinatown, workers are overwhelmingly Chinese.

<comment><USER17> People are often very naive about different cultures. In the west we're trained to view them as an interchangeable package of foods, languages, and perhaps dress. The differences are real and substantial, and fundamental assumptions about how the world works or ought to work are definitely not shared.

</comment></comment></comment><comment><USER19> Fascinating. I'm wondering if there's an opportunity for a tech startup to replicate this network more generally. I could see the network connecting the sellers with the farmers directly, plus coordinating delivery of the veggies... it's an easier problem than ubereats delivery as you've got fewer nodes. Maybe you even skip the sellers entirely, which basically gets you to CSA boxes but those always felt expensive to me (I'm not sure why)

<comment><USER20> If the people running these shops are eschewing _credit cards_ as part of their cost-cutting, what could possibly possess you to think that "disrupting" them with some other form of middle-man is going to play here?

<comment><USER21> > I'm wondering if there's an opportunity for a tech startup to replicate this > network more generally.

The goal is not to compete with Chinatown grocers, but to move their model to other markets.

</comment></comment></comment><comment><USER22> (2016)

previous discussion of the WSJ article mentioned in the text: [https://news.ycombinator.com/item?id=11981063](https://news.ycombinator.com/item?id=11981063)

<comment><USER23> non-paywalled article here: [http://outline.com/rsHPec](http://outline.com/rsHPec) (not my website)

</comment></comment><comment><USER24> I think another reason chinatown markets (and mexican mercados) are cheaper is also because they tend to buy up a wider grade selection of produce. When I walk traditional markets every tomato, onion, cucumber is roughly the same size and shape. In a Chinese market they often have a wide variety of sizes and shapes. This is way closer to what actually gets grown. Not every vegetable grows the same size and shape though you may think that going into a normal supermarket.

</comment><comment><USER25> In other words, ultra-small ultra-low-overhead businesses are good for consumers.

Problem is, most places in America there's a certain baseline red tape cost that exceeds the budget of these types of operations.

In an unrestrained market environment, people can make money by eating up little inefficiencies like a swarm of ants. When you make the baseline energy cost of existence too high (e.g. with onerous incorporation or registration or licensing requirements), you kill off all the ants. Now those small but myriad inefficiencies go unconsumed, and society loses.

<comment><USER26> And the big businesses who are supposedly "anti regulation" back lobbyists who put those regulations in place, so that new competitors have a harder time entering the market

</comment></comment><comment><USER27> Paying non union, employees who might be working under the table as they are not authorised to work is part of it, same with some restruants.

Many regular supermarkets pay a living wage.

<comment><USER28> Agreed. I was surprised that many supermarket chains are union shops with good wages, paid time off and healthcare. Trouble is they're having trouble competing with non-union competitors and are closing down eg A&P. Chinatown I'd expect a lot of employees aren't even legal.

> Grocery clerks with service of five years or more generally earn the maximum > rate allowable under the contracts, between $18.71 and $19.80 per hour. > [http://work.chron.com/union-pay-journeyman-grocery- > clerk-281...](http://work.chron.com/union-pay-journeyman-grocery- > clerk-28112.html)

</comment></comment><comment><USER29>
        > she always assumed the low prices
        > were a reflection of subpar produce

Betting against Chinese love of food seems a poor choice

</comment><comment><USER30> One thing this article doesn't assert too strongly is simply that many western supermarkets just don't have veggies that are quite common in other countries. e.g. Gherkins is quite common in India (fresh ones, not the pickled variety), tender young Okra (without the coarse threads that make it hard to chew) and something which is apparently called "Chinese Green Beans" but which is pretty commonly used in my native cuisine.

<comment><USER31> >Gherkins is quite common in India (fresh ones, not the pickled variety),

I've rarely seen fresh gherkins in India. Which cities do you mean? Pickled ones are available in shops though.

<comment><USER30> Maybe gherkins may not have been the right English word for it. I was talking about Ivy Gourd [0], which is used in Konkan region/cuisine a lot.

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

<comment><USER31> Had a look at the article. Not sure about the size, but if it is small, e.g. a few cm in length, I think it is what is called tundli or tendli. Common vegetable in India. Tasty too.

<comment><USER31> Just did a search, and if this site is correct, tundli is indeed the ivy gourd:

[http://www.indian-cooking.info/Expert/Indian-To-English- Term...](http://www.indian-cooking.info/Expert/Indian-To-English-Terms.htm)

</comment></comment></comment></comment></comment><comment><USER32> Maybe this is true in New York, but the produce at the local Chinese markets where I live is not particularly fresh and in some cases you can tell from the packaging that it was intended for sale at a different supermarket (I assume this indicates it wasn't fresh enough for the original place of sale because it always looks just short of rotten in these cases).

</comment><comment><USER33> I moved to lower Lower Eastside just a few blocks away from Chinatown two years ago. I can't really say the article is on the money. I was really excited when I moved here first and thought the grocery shopping would be the one of the pro's. While I don't cook home (so not much veggie), but I used to buy a lot of ready-to-eat fruits and snacks. Perhaps it's that particular supermarket I visit in Chinatown, but they cut corners and the quality is fairly low. I learned to never to buy anything packaged by the supermarket themselves. Perhaps, I should travel a bit further into Chinatown to enjoy the benefit of such supply network. But for now now, I go shop at the Whole Foods or Eastside Market for all my needs. I no longer want to mess with what I eat.

</comment><comment><USER34> Cheaper and better? That defies efficient markets theory. I guess any sufficiently advanced social network is indistinguishable from magic.

<comment><USER35> Could it be that they just don't have the cruft & boilerplate & inefficiencies that traditional retail has? Having been in several types of workforce, I've seen plenty of missed opportunities that continued indefinitely because of management incompetence, so I wouldn't doubt it if they're able to have high quality & cheap produce just by cutting out the middleman and by being competent.

<comment><USER36> Calling it management's incompetence is probably unfair, although certainly there is a lot of incompetence in the retail sector. I think it's more accurate to call it corporate inertia. It's easier to build such a network for a single stall on a busy street than it is for 500+ retail locations that all have to be exactly the same to keep the brand image.

<comment><USER34> Or perhaps management competence? If goal is to sell more product to more people for more money, then perhaps the traditional grocery store model is better. They're just optimizing for different things.

</comment></comment></comment></comment><comment><USER37> This resonates with HN article this week end talking about a lot of recent startups simply being centralizing rent seekers. The Saveur article shows that an "end to end" model can be cheaper, at least for a specific solution point (to whit: get it fresh, cook, don't worry so much about the cleanliness of the rind). While the centralized solution that serves most grocery stores costs more and promotes boring sameness.

Sometimes I want that sameness, but as the economy, or the Internet architecture for that matter, centralizes around a few corporations you end up with a bland world.

</comment><comment><USER38> TLDR;

Chinatown sources from local small producers and are able to get big discounts. They also reduce cost by skimping on things like good furniture, printed labels, credit cards etc and keep their margins to 10-12% over wholesale.

<comment><USER39> Skimping on things like paying taxes, health standards, hiring people outside the family network, etc.

</comment></comment><comment><USER40> I live in northern Virginia, and we have a lot of great Korean markets to shop at, and they're always slammed with people. It's rare that you go into the produce section and see less than two dozen people browsing. The local chain store might have 2 at any given time. And the prices and selection are incredible. The only downside is you have to do a little bit more picking to get ripe/fresh/good looking produce.

</comment><comment><USER41> Off-topic:

Is there a browser plugin that lets you vote on how annoying a site's ads are, so it can warn you before you go to the site? I have a feeling that kind of pressure could change the way ads are displayed, but without it we're going to keep getting our screens engulfed by an ad with no idea how to close it.

<comment><USER42> I was interested in this article but accidentally closed it, the interstitial ad made me think I was on a _completely_ different site.

It was a full-page ad for "STITCH FIX", with it's own layout and, sigh, auto- playing video. Why would I ever click through that?!

</comment></comment><comment><USER43> > Chinatown's 80-plus produce markets are cheap because they are connected to > a web of small farms and wholesalers that operate independently of the > network supplying most mainstream supermarkets.

I don't get it.

Why can this web of small farms and wholesalers sell produce for less than normal suppliers can?

If Chinatown's suppliers are so much cheaper, why don't the other supermarkets use them too?

If Chinatown is consuming the entire output of these suppliers (explaining why the other supermarkets can't use the same source) then why don't the suppliers raise their prices? Even if some of the chinatown vendors could no longer afford the food, surely someone else would buy it.

Do plywood shelves at a grocery really make a noticeable difference in food prices?

</comment><comment><USER28> A lot of Asian supermarkets have great fish at low prices. I'd like to think its because of informal network of small independent local producers but I suspect its illegally caught by sketchy fishing fleets. Can anyone put my mind at ease?

<comment><USER44> No, unfortunately you're spot on.

</comment></comment><comment><USER45> Also tax evasion and under the table worker.

</comment><comment><USER46> 280+ comments and no one has mentioned roughly how much cheaper Chinatown produce is relative to other NYC grocery stores (I didn't see it in the article either). Anyone care to say?

<comment><USER47> Your mileage may vary, but my NYC grocery routine involves a nearby no-frills supermarket (Key Foods) and a trip to a local Asian Grocer. There is usually a 40-60% discount in price at the Asian Grocer. Red Peppers costing $1/lb at the grocer; spinach is $2 for a much more generous bushel compared to the supermarket's offering; seasonal berries and other fruit tend to be unpredictable, but I have seen blackberries and raspberries at $1.50 for a container that would cost +$3.00 in the store.

Obviously, NYC has a major markup on produce, but the cheap prices at Asian Grocers are not a regional thing. Growing up in the suburbs, my family always opted for the Asian-owned grocery store over A&P or other supermarkets. I think Aldi's may have a similar agreement with distributors.

<comment><USER48> those sounds like prices of regular European supermarket,I was under impression that US supermarkets we supposed to be even cheaper than European

these things are permanently in promotion rotating between various supermarkets: 1kg banana 1.1€, 1kg grapes 2-2.2€, bunch of fresh spinach 1.2-2€, etc

<comment><USER13> Fruit and vegetables seem to be weirdly expensive in the US, for some reason; meat and processed foods are much cheaper than they are in Western Europe, though. It makes sense that meat would be cheaper (considerably different and mostly lighter regulation on animal husbandry and slaughter, plus the whole corn subsidy thing) but the expensive vegetables never made sense to me.

</comment></comment></comment></comment><comment><USER49> I have always liked to shop at some of these places.

I can find exotic stuff I need for a variety of Asian recipes that I cannot find elsewhere.

</comment><comment><USER50> See also cheap bulk spices at Indian markets. They are a goldmine for stuff that can be costly elsewhere, even if you are not interested in Indian cuisine.

My theory is that, in addition to having the right connections for cheap import, their customer base probably demands a certain price point for bulk spices.

<comment><USER51> Spices are cheap in those markets only because people are used to the completely nonsensical markups you see in grocery stores. Those little jars of mustard seed that cost $12? That's almost entirely markup. McCormick is a total racket.

For stuff like potatoes or beans it's really hard for me to care enough that I'm paying an extra $0.50 compared to the market down the street. Vegetables are cheap, unless someone slapped that organic sticker on it. It's just not worth the effort. But for spices I'll make the trip.

</comment></comment><comment><USER52> It's not just the Chinese though. In Seattle, Rising Sun produce in Ravenna is often better than say Uwajimaya and other stores down in Chinatown.

That said, I found Chinatown to be the most interesting neighbourhood in Seattle :P

</comment><comment><USER53> Where does the food in these secret warehouse networks come from? Is it actually equivalent in quality and oversight to the "mainstream" farm networks?

<comment><USER54> Anecdotal, but I've been buying cheap fruits and veggies from Chinese markets for years and I've never gotten sick once. They taste the same. I'm no food expert, though.

The only negatives are that the markets are not pleasant places to be in and some don't take cards.

</comment></comment><comment><USER55> This doesn't seem logical at all. Big chains usually have the lowest price, because they can enforce unfair deals on logistics and producers. Most things you buy cheaper from the super market than from the factory. Why should it be different with vegetables? It's not like the garden is next to the Chinatown shop.

Also Chinese people are not known for their empathy. They are usually fighters. If they run more efficient than another shop/chain they just conquer them. That they stay that small means they can't beat the big chains.

</comment><comment><USER54> The amount of secret networks and deals Chinese/Chinese Americans pull off is astounding. I don't mean that in a negative way, I'm mostly impressed (I live near Brooklyn's Chinatown).

<comment><USER56> I wouldn't say it's "secret," it's just regular business conducted using a language most Americans can't read or understand. Probably even in dialects that most Chinese people can't speak.

<comment><USER54> I think the fruit thing isn't "secret", but my friend's families do a lot community-wide legal and financial gymnastics to pay as little tax as possible.

</comment></comment></comment><comment><USER57> As a fish loving Indian, I was totally surprised to see that in Capitalist America the choice of fish was absolutely pathetic. At American fish places you only get "shrimps" may be "large shrimps" and "small shrimps". Salmon, Bass, Red Snapper and just few handful of usual fish. My small village fish market offers at least 20 varieties of fish in India's coastal region. A proper fish market would offer at least 100.

Then I entered 99Ranch and since then my respect of my eastern neighbours has gone up significantly. Not only they had Tiger prawns and King Mackerel, they actually understood the difference between Pampino and Pomphret.

<comment><USER58> For whatever reason Americans just don't eat a lot of seafood. This is why the choices are so bad in "Capitalist America" \-- there's not enough demand. It's literally capitalism at work.

Some theorize that this is due to American's avoiding flavor in general [1].

[http://www.npr.org/sections/thesalt/2014/07/01/327248504/the...](http://www.npr.org/sections/thesalt/2014/07/01/327248504/the- great-fish-swap-how-america-is-downgrading-its-seafood-supply)

<comment><USER59> Which we should all rejoice. Because the oceans are already being over fished to the point we're facing a very real likelihood of collapse. If Americans were pulling at the same rate as nations like Japan or India, we'd all be in a very bad place already.

<comment><USER60> No, this is actually a terrible thing in the long run for one simple reason: fisheries are being destroyed everywhere [1], and the US is the only nation currently with the clout to really push to change this. But since seafood isn't even on most Americans' radar and we live in a democracy, it's very unlikely any politician will ever spend political capital on it.

Fisheries are being destroyed is because blue water fisheries are a commons -- no nations own them, so whoever vacuums up the fish first reap the profits. Not to mention global warming and ocean acidification are stressing fish breeding grounds worldwide.

This model made sense up until WW2, and was in line with how international waters were historically governed, but it is an ecological disaster in the making because technological developments during the war (sonar, deep sea nets, etc.) allowed huge fishing fleets to completely destroy blue water fishing grounds.

The only way to change this is for someone to push at the international level to rewrite the agreements on fisheries (restrict them by quotas, manage them by an international body with an eye towards conservation, etc.), and the only superpower that has the political capital to really get the ball rolling is the US.

But most Americans don't eat much seafood so it's not on anyone's radar. Enjoy your seafood while you still can. Maybe rich nations will have farmed fish or domestic freshwater sources, but cheap seafood from the ocean will basically not exist within a few decades.

[1] [https://www.theguardian.com/environment/2016/jul/07/global-f...](https://www.theguardian.com/environment/2016/jul/07/global- fish-production-approaching-sustainable-limit-un-warns?CMP=share_btn_tw)

<comment><USER61> I don't really like getting into political arguments, but I'd like to point out that the US is not really that much more forward looking than other nations wrt fishery conservation. They, after all, increased quotas for pacific salmon fishing that decimated the Canadian fisheries for years. Why? In retaliation for the unsustainable Canadian softwood lumber prices (that were shutting down all the US mills). It's politics all the way down, unfortunately.

I do agree that we need international level agreements, but I trust the US exactly the same as I trust most other governments on this issue. I think one of the biggest problems is that it's a bit like global warming. Most people simply deny that there's a problem. In fish-loving Japan, where I live, _nobody_ will listen to me. They sell cod illegally fished from the grand banks in the super market. They even have a big sign "Grand Banks Cod!!!" I think if I brought an east cost Canadian fisherman to Japan, they'd go postal. But, if I try to educate someone, the response is always, "It has to be a lie. Look at all the cheap fish in the super market. If it was really getting scarce, then there would be no fish there. People in other parts of the world just want to complain about the Japanese. That's all it is".

If the US was a fish eating nation, I have very little doubt that the same thing would be happening, unfortunately.

My supervisor at university did fish population simulations as his research. He published a paper, maybe 30 years ago now, where he predicted the collapse of all wild fisheries. Nobody paid any attention to it. It seems to be on track now...

<comment><USER62> "Look at all the cheap fish in the super market. If it was really getting scarce, then there would be no fish there. "

But it sounds very logical, so why is this not true?

<comment><USER60> Because the fish can't be stored very economically once you harvest them, the cheapness of fish now is due to overfishing, and directly contributes to future scarcity.

Strangely, the best place to 'store' fish is right in the ocean, and for an overly harvested fishery, you even get paid interest for it.

<comment><USER62> "future scarcity"

But if there is too much fish taken away, then it is harder to catch them, right, so scarcity. But the remaining fish then have much more space and food to reproduce ... so they go ack to the old levels quickly, so where is the problem (unless some species go literally extinct)?

<comment><USER60> You're right that at _carrying capacity_ , the limiting factor is food and space.

But most of our fisheries are far below that now. Fish can only breed as fast as there are breeding fish available, but we're eating them faster than they are being born.

You can view a fishery basically as a giant fish-making factory. If you eat away half your fishery's biomass, then to a very rough first approximation, your factory will only produce half as many fish.

<comment><USER62> "your factory will only produce half as many fish."

But then why is fish still so cheap and plenty of it avaiable, which was the main point?

(but again, I don't know that, I am just refering to the argument)

<comment><USER60> One reason is that many governments are essentially paying people to take fish out of the ocean [1], to the tune of tens of billions a year. Japan, China, and Taiwan are some of the main players. They do it to keep fishermen employed.

Related to this: because technological change has made it really cheap and easy to catch fish [2], and up to now, that has more than offset the decreased productivity from damaging our fisheries.

[1] [https://en.wikipedia.org/wiki/Fisheries_subsidy](https://en.wikipedia.org/wiki/Fisheries_subsidy) [2] [http://archimer.ifremer.fr/doc/00222/33368/35784.pdf](http://archimer.ifremer.fr/doc/00222/33368/35784.pdf)</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment>


One quadrillion dollars: cost to remove CO2 - <AUTHOR> These are my numbers. Are they correct?
There are about 3.0 x 10^12 tons of CO2 in the atmosphere.
40-50% of that is due to humans based on the carbon PPM rise since industrialization.
Stanford study and some hand math on algal biodiesel prices the cost to remove a ton of CO2 at $1,000.
so 1 to 1.5 trillion tons of CO2 x $1000 per ton:
1+ quadrillion dollars.
Comments welcome... the cost/ton of CO2 is the most fungible factor there... any insights? <comment><AUTHOR> Here's more detail from my googling:

[http://extensiblefuture.blogspot.com/2016/10/co2-in- atmosphe...](http://extensiblefuture.blogspot.com/2016/10/co2-in-atmosphere- one-quadrillion.html)</comment>


Show HN: Person-to-person ridesharing, safe and reliable - <AUTHOR> http://www.riderbee.com

<comment><USER2> I've wanted to build a mobile app for a few years that you can use to scan in the license plates of all the cars around you as you drive, gradually building up a list of drivers who go the same route at around the same time, and then present a way to connect those folks together.

I dream about it, anyway, deadlocked in traffic. (Well I did, before I got my Vespa, anyway..)

So it seems we're getting closer to the reality that one day I can just pick up my phone and broadcast a virtual thumb into the sky, for anyone in the area who goes the same way to pick me up ..

<comment><AUTHOR> I had actually looked into license plates for another startup idea about a year ago, but the smartphone camera technology is not there yet in terms of getting a good take on license plates for moving vehicles. It had to do with regular optics mechanics that I frankly dont understand well...

But RiderBee is a good way to broadcast your need for a ride to those going in the same direction

</comment></comment><comment><USER3> They mention it's safe - that appears to be based solely on a user verifying someone's linkedin profile for themselves?

Also the flow of payments really needs a graphic.

<comment><AUTHOR> For safety, there is (1) profile verification using LinkedIn; (2) Gender matching, usually requested by females; and (3) User reviews, similar to eBay, with thumbs up or down

Good one on the payment flow. Right now, it is using paypal, so it's basically a "Pay with Paypal" button that does the usual mobile paypal flow

</comment></comment><comment><USER4> Typo:

Take cars of _F_ the road, relieve congestion, and reduce carbon emissions.

<comment><USER3> > _while riders cover their transport costs_

Should be 'drivers'.

<comment><AUTHOR> Thanks. Just sent over to teammate for fixing

</comment></comment></comment><comment><USER5> Umm... <http://ridejoy.com/> (YC S11)

[edit] I didn't intend on being a smart ass. I just don't see how they differentiate.

<comment><AUTHOR> Ridejoy is for long distance, whereas RiderBee is for daily travel needs (commuting or going to the airport)

</comment></comment><comment><USER6> Also <http://us.amovens.com/en>, which does both long road-trip rides and daily commutes. Also has an iphone app.

</comment><comment><USER7> How do you plan to make money with thise service?

<comment><AUTHOR> Just like AirBnb and eBay, take a % of the money that flows from rider to driver</comment></comment>


Wikipedia's new definition of truth. - <AUTHOR> http://tech.slashdot.org/tech/08/10/21/1657256.shtml

<comment><USER2> Wrong headline. "The threshold for inclusion in Wikipedia is verifiability, not truth"

<http://en.wikipedia.org/wiki/Wikipedia:Verifiability>

Wikipedia has not attempted to redefine the concept of truth. There is a point buried in here -- Wikipedia thinks something else is more important than the truth -- but these headlines obscure it.</comment>


Roland McGrath bows out as glibc maintainer - <AUTHOR> https://lwn.net/Articles/727383/ <comment><USER2> Thank you & I hope I'll be able to show such a positive attitude after 30 years on a FOSS-project. I'll print out and pin the resignation later above my desk as a brutal reminder what I failed to do so far: friendly exits from projects I put my heart into before.

</comment><comment><USER3> > This summer marks 30 years since I began writing the GNU C Library. (That's > two thirds of my lifespan so far.)

So he started writing it at age 15?

<comment><USER4> Yeah Roland is the man!

</comment></comment><comment><USER5> Thank you Roland for all your years of service. Maintenance of one of the most important FOSS projects around must not have been easy. Cheers!

</comment><comment><USER6> Wow! I wonder about the kind of withdrawal issues that someone with such a tenure would go through. For me, the first six months after I handed over and left a codebase I owned was tough! And that was after only 4 years of work in it, and Roland has done glibc for 30 years.

<comment><USER7> It's habit forming but not addictive. I hope "pre-roll'n Roland" has some big well earned recreational (and not medical) tasks queued up on his tray to do next. He's earned it! ;)

</comment></comment><comment><USER8> Maybe i am a bit confused, but i have the impression that Drepper was in control of glibc development for much of the 90s, and these days there is a committee of sorts in charge.

</comment><comment><USER9> Could not have gotten this far without you. Fantastic. Thank you.

</comment><comment> m-j-fox Classy. I've seen too many situations where the old man wouldn't die or relinquish power but also wouldn't contribute anything but obstruction. There should really be more of a mentorship model rather than the assumption that a director will be around indefinitely.

<comment><USER10> That's the Dianne Feinstein-model of FOSS leadership. ;)

<comment><USER11> That's funny. I thought it was the Nancy Pelosi model.

<comment><USER7> I thought it was the Saint IGNUcius model! ;)

</comment></comment></comment></comment><comment><USER12> Awesome guy! Met him during my tenure at Google when he worked on Chrome.</comment>


Vulnerabilities induced by migrating to 64-bit platforms - <AUTHOR> https://blog.acolyer.org/2016/11/17/twice-the-bits-twice-the-trouble-vulnerabilities-induced-by-migrating-to-64-bit-platforms/ <comment><USER2> Worth noting: while taking code written for 32-bits and migrating it to a 64-bit environment can accidentally introduce new vulnerabilities, it is ALSO possible for the opposite to happen. That is, you can take code written for a 32-bit environment and compile it for a 64-bit environment thus FIXING some vulnerabilities: probably ones you didn't even know about. Given how common buffer-overrun vulnerabilities are in 32-bit code, I wouldn't even be surprised if it is more common to increase safety than decrease it.

<comment><USER3> Supporting multiple platforms also has the benefit that broken code more often results in observable bugs.

</comment></comment><comment><USER4> > Many software vulnerabilities are rooted in subtleties of correctly > processing integers, in particular, if these integers determine the size of > memory buffers or locations in memory.

So, proper care of buffer overflow doesn't end when test everywhere if you're really within bounds, but when conversions from different sizes of data types, given that 64 and 32-bits number types can use more or less bytes in memory.

And in one of the examples:

> For example, assigning a pointer to an int variable under ILP32 is never > truncating (4 -> 4), but on the 64-bit platforms it is (8 -> 4).

</comment><comment><USER5> This shows the wisdom of requiring explicit casts for truncating conversions, as found for instance in Rust.

</comment><comment><USER6> This is why you should use stdint.h as much as possible, then you know exactly what kind of integers you're dealing with.

<comment><USER7> Yes, but that doesn't tell you how big pointers are. One of the big problems comes with assigning a pointer (which is 32 bits) to an integer and back. You can specify that it's a uint32, but that doesn't save you - when pointers go to 64 bits, it still doesn't fit.

<comment><USER8> What about uintptr_t?

<comment><USER7> Yes, absolutely. If you're trying to put a pointer into an int-ish variable, that's what you should be doing - _not_ any of the int types that have a fixed number of bits.

</comment></comment></comment></comment><comment><USER9> This is good work, but unless I'm missing something, it's not news. For a public example, Georgi Guninski had a qmail vulnerability --- one of the only ones --- over a decade ago, and it was an LP64 integer bug.

<comment><USER10> The contribution is surveying and describing the vulnerability in a formal manner. A paper doesn't always need to contain "news".

<comment><USER9> Of course! It's less a criticism of the paper than a note that the tone of the post summarizing it is a little misleading.

<comment><USER10> That makes sense.

</comment></comment></comment></comment><comment><USER11> The recent libotr vulnerability is a good example of such a bug that appeared with 64 bit:

[https://www.x41-dsec.de/lab/advisories/x41-2016-001-libotr/](https://www.x41-dsec.de/lab/advisories/x41-2016-001-libotr/)</comment>


New debugging method found 23 undetected security flaws in 50 Web applications - <AUTHOR> http://techxplore.com/news/2016-04-debugging-method-undetected-flaws-popular.html <comment><USER2> Orginal at MIT: [http://www.csail.mit.edu/patching_web_applications_daniel_ja...](http://www.csail.mit.edu/patching_web_applications_daniel_jackson)</comment>


Another Bernie Madoff scheme is unfolding - <AUTHOR> http://www.wsj.com/articles/fraud-investigation-ricochets-through-hedge-fund-known-for-ties-to-jewish-community-1469439181 <comment><USER2> Sigh.

It's useful to have a "web" button, but only if the actual WSJ title isn't mangled beyond all recognition in the submission. I was unable to find the non-paywalled article without changing my search.

This worked for me in Google, based on the partial URL: fraud investigation ricochets through hedge fund

The actual title is: Fraud Probe Ricochets Through Platinum Partners, a Hedge Fund With Ties to Jewish Community</comment>


Ask HN: Baby Registry, HN Style - <AUTHOR> About to be first time parents, there are so many gadgets on the market not sure what's good and what's garbage.<p>As a parent, what has been impossible to live without? <comment><USER2> My youngest is 14yo now, so not a new parent but two things I really liked as reassurance measures personally.

I put a night vision web camera in the babies room and a sleep pad which detected breathing or the lack of breathing as a tool to help prevent SIDS. I've never believed in kids sleeping with the parents or sleeping in the same room beyond the first month or so (but to each their own). I also had other little things like the baby monitor etc, but the two I did that were tech focused were the sleep pad and the web camera (which today would be 1000x better than what I did before).

There are many new designs around the SIDS detectors to fill the need of like the sleep pad I used so you can check those out if you are interested in that at all. Amazon sells a bunch of different ones. One newer option is check out [https://owletcare.com/](https://owletcare.com/) . I am not affiliated in anyway or have any experience but might be worth checking out.

Outside of tech. Get a good book on sleep training, you will be much happier people understanding how babies work and how sleep changes from infant to toddler and toddler to adolescent and then to teenager. It will save you lots of grief if you understand it and work with it instead of fighting it.

It is awesome to be a parent, good luck you will enjoy it!

<comment><AUTHOR> Thanks! I've heard of SIDS but didn't know there were detection devices. Also not a fan of the idea of co-sleeping. I'll check a few out!

</comment></comment><comment><USER3> My son will be 3 months old in 2 days. There are two things that have made things so much easier for my wife and I. First, a Fisher-Price Rock and Play Sleeper[0]. We never got a bassinet and we were going to borrow one from a family member but they ended up starting to use it. We had a pack & play type thing that had a bassinet that was ok for sleeping. It worked for a bit but he ended up not sleeping well in it. There was no stability and any movement he would make would wake him up as the bassinet would move. My wife and I were frustrated and looked for other options and that's when we found the Rock & Play. You can connect to it through your smartphone and control what it does (rocking, music, light show, vibration) easily. I have a setting that turns everything on and puts it on a timer. It is amazing since I can do that from the bed (he sleeps in our room for the time being) and it will soothe him to sleep (if needed, we don't turn on any of the features if he falls right to sleep).

The other thing that I recommend is a swaddle. You can swaddle your baby in a blanket and that is what I learned when my wife and I took a class on caring for a baby. It was super easy to do, however, that is because we were practicing on a doll. When we got home it was a bit more complicated as my son would be squirming which made getting a good, tight swaddle hard. We ended up getting a SwaddleMe brand swaddle. It makes it super easy to swaddle him tightly and quickly. With the swaddle and rock & play he has been sleeping through the night since 6 weeks.

[0] [https://fisher-price.mattel.com/shop/en-us/fp/baby- sleepers/...](https://fisher-price.mattel.com/shop/en-us/fp/baby- sleepers/premium-auto-rock%C2%91n-play-sleeper-with-smartconnect-dpv51)

<comment><AUTHOR> Awesome! I appreciate it. It's nice to hear someone say that have had through the night sleep without tossing a bunch of money at a Snoo.

And congrats!</comment></comment>


Rust Optimizations That C++ Can't Do - <AUTHOR> http://robert.ocallahan.org/2017/04/rust-optimizations-that-c-cant-do.html <comment><USER2> I find it funny and think it's pretty telling that there are bold claims made that are only crossed out after the author is corrected. I feel like a C++ compiler (or any compiler, really) could do practically any optimization that any other one can do, unless that language has explicit restrictions prohibiting such an optimization (e.g. like if the language prohibits the implementation from generating multiple copies of code).

The question is just how smart the compiler would need to be, and that changes as a function of how strict the language is. The more loose the language is, the more smart the compiler needs to be. The more information you encode in the type (or make easy to infer), the less smart the compiler needs to be. Whether it's practical to develop a smart-enough compiler in a reasonable amount of time is probably the real issue.

<comment><USER3> _> I find it funny and think it's pretty telling that there are bold claims made that are only crossed out after the author is corrected_

... What else would you expect? The author observed something, drew a mistaken conclusion, wrote it up, and then had the mistake pointed out, and so retracted. I can't imagine the author realised their claims were wrong before it was pointed out, so of course they're only going to cross them out after being corrected. Of course, it's rather unfortunate that an incorrect write-up is being upvoted to the top of HN but that's not the author's problem (other than the choice of the rather clickbaity title...).

For the specifics of this post, there's some subtle differences between how Rust and C++ behave that could easily explain how the author observed differing behaviour and thus jumped to the conclusion, as explored on /r/rust: [https://www.reddit.com/r/rust/comments/63ijkw/rust_optimizat...](https://www.reddit.com/r/rust/comments/63ijkw/rust_optimizations_that_c_cant_do/)

<comment><USER4> _> I can't imagine the author realised their claims were wrong before it was pointed out_

It should be noted that the Rust community team has an open offer to proofread the draft of any Rust-related blog post to help ensure technical accuracy, specifically to help prevent embarrassing things like this. :P Preventing the generation of misinformation is cheaper than curing its dissemination, after all. I've already reached out to the author to make sure they're aware of this offer for the future.

<comment><USER5> Is this described anywhere? I've been using Rust for a few years, been hanging around it's subreddit for about as long and this is the first time I hear about it.

This is a fantastic idea but maybe we need to make it more visible?

</comment></comment></comment></comment><comment><USER6> Errr, C++ can do this. It just requires analysis to do it in some cases (not all).

As a trivial example, the point about const is wrong (at least as far as i understand it). you can const cast stuff, but you still can't modify it, to do so is UB: Modifying a const object through a non-const access path and referring to a volatile object through a non-volatile glvalue both result in undefined behavior. So yeah.

As for the abi, any abi arguments are silly. really. the compiler can always clone the function, rename it, and do what you want. or inline it. or ....

If it really matters, you'd also just change the ABI. There is no C++ standard ABI. There's one a lot of compilers use. If we could get x% better performance using a different one, people would do that :)

The corollary is "If you think you can only get x% better performance by doing that, you are probably wrong".

(I'm excluding things that are low level abis, like x32, etc, since we are talking about language abis)

<comment><USER7> The point about const is not wrong. What you said about const is true if, and only if, the object was originally const - i.e. you can't do this:

       const int n = 1;
       const_cast<int&>(n) = 2;

However, when the function receives a pointer or reference to const, it doesn't know whether the referenced object is originally const or not. It only knows that _it_ cannot write through that pointer; but someone else still might be able to do so. Example:

      int n = 1;
      void foo() { n = 2; }
      int bar(const int& x) { int y = x; foo(); return y + x;  }
      bar(n);

Even though x is reference to const here, the compiler has to do two reads from x here, because foo can - indeed, does - change the value referenced by x.

Worse yet, the function can often change it itself via aliasing:

      int n = 1;
      int bar(const int& x, int& y) { y = x; return x; }
      bar(n, n);

Again, this is perfectly legal.

The problem is that both C and C++ lack a way to say "this is a pointer or reference to something that is immutable", as opposed to "... something that you can't mutate". The other problem is that C++ (but not C, thanks to "restrict") lacks a way to say "the object referenced by this pointer or reference is not aliased in any other respect that matters to this function".

Rust, OTOH, does let you say that something that's referenced is immutable. In fact, it is the case by default. So the compiler can aggressively optimize around the fact.

In C++, they can only optimize as well when the compiler can do a full program analysis, and determine that the referenced value is immutable in practice. Which can be hard to do for non-trivial programs, and outright impossible to do across dynamic library boundaries.

<comment><USER8> template<class T> struct const_ { const T value; };

const_<T>& freeze(T&); T& thaw(const_<T>&);

do_something(const_<T>& x) { /* the language guarantees that x can't be mutated from anywhere */ }

<comment><USER9> You can cast away const.

<comment><USER8> 'value' is a const qualified object, not a const qualified reference. If you cast away the const and write to the object you are into UB, ergo the compiler can assume that isn't done.

Note that the trick still doesn't help much in practice: GCC conservatively still won't optimize based on const qualification of values.

<comment><USER9> GCC is just one C++ compiler among many, but yes we are in UB territory.

<comment><USER6> Any compiler that likes can place the object in readonly memory.

So you'd discover your error pretty quickly if it did :P

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> I think this is a very objective and in-depth article on the matter.

"Criticizing the Rust Language, and Why C/C++ Will Never Die"

[https://www.viva64.com/en/b/0324/](https://www.viva64.com/en/b/0324/)

Not sure why certain members of the Rust community aren't happy with just having a neat language. Making one false claim after another isn't doing them any favors. It's just aggravating, especially when people who should know better start to believe the hype.

FAKE NEWS!

<comment><USER4> _> certain members of the Rust community_

Fortunately the overwhelming majority of the community isn't afraid to call this post out, judging by the comments at [https://www.reddit.com/r/rust/comments/63ijkw/rust_optimizat...](https://www.reddit.com/r/rust/comments/63ijkw/rust_optimizations_that_c_cant_do/) :) I've never seen the author engage with the Rust community in any great capacity (they're not a regular in any forum that I frequent, and I can't name any libraries that they've written), so I wish he'd take the time to learn Rust more before blogging about it.

<comment><USER10> Thanks for posting this because this has been getting out of hand recently, and it's very good to see some sanity.

There is an opportunity to do some very cool things with Rust and I think most people would love to see a "better together" mindset being shared.

<comment><USER3> It's worth noting that the sanity you're appreciating is, IME, very typical of the Rust community. Mistakes/overblown claims will get called out (if someone notices them), and "better together" is something people generally embody: e.g. even the language itself incorporates good ideas from "competitors".

</comment></comment></comment></comment><comment><USER11> I love new languages (unlike a lot of HN, I'm excited about Rust AND Go), but please remember that C/C++ compilers have been around, sometimes for more than 30 years. Do not think new compilers will just waltz in and suddenly topple all this previous work - That will be a long march.

<comment><USER12> Alias analysis has been the holy grail of compiler development for a while. In C++ it's a global, imperfect, and expensive analysis. In Rust you get it for free.

C++ can't do the same thing Rust does because it would be a breaking change to have finer-grained distinctions between the types of references.

This is a matter of language semantics, not compiler implementation. rustc isn't doing anything new here, LLVM already knows how to make this optimization and is making it.

<comment><USER13> What specifically makes you think alias analysis is the holy grail of compiler optimization?

<comment><USER12> I spent some time studying the subject a few years ago. Most of the current efforts I saw were about improving alias analysis. Could have been a skewed view of the thing, but the researchers I talked to seemed to feel like it was. Some compiler devs I've talked to do too.

In general it does unlock a lot of opportunities when it comes to optimization.

</comment></comment></comment></comment><comment><USER14> > a "const" value can be modified through other mutable references, so copies > induced by pass-by-value could change program behavior.

This doesn't mean the compiler can't make this optimization. Unless we are talking about multiple threads here (which we aren't), there is no other code that is executing that can change what this const reference is pointing to. If we are talking about threads, then data races like this are UB in C++, and the compiler can do anything it wants, including emitting nonsense code.

<comment><USER15> > Unless we are talking about multiple threads here (which we aren't), there > is no other code that is executing that can change what this const reference > is pointing to.

... except if your code calls potentially 'impure' functions.

void f(const int& value)

{

      const int a = value;

      g();

      const int b = value;

      assert(a == b);

}

One can't tell if the assertion will succeed.

Indeed, 'value' might have been modified as a consequence of calling 'g'.

You don't have this uncertainity if 'value' is marked as immutable.

<comment><USER6> "One can't tell if the assertion will succeed. "

If value was originally a const object (IE immutable), it is well defined and guaranteed to always succeed.

IE const char* myString = "Hallo World!"; const_cast<char*>(myString)[1] = 'e';

This is illegal, the same as anything modifying value would be if it was originally const.

If value was originally not a const object, it wasn't immutable, so anything goes.

"You don't have this uncertainity if 'value' is marked as immutable. " You can, in C++ mark the original immutable in a way that you can tell if the assertion will succeed.

<comment><USER7> The _compiler_ can't tell the difference (in general), because what it sees is a const int&, but the actual referenced object may be a non-const int.

<comment><USER6> Only in a world where people who care about performance don't hand the compiler enough of the program to make that determination (which only requires being able to see the original allocation site and the call)

That's crazytown.

"Please optimize this as hard as you can with two hands tied behind your back".

So like i said, i don't disagree that it's a useful thing to do, i just am not sure i believe it matters in practice to people who care about performance.

IE the purported benefit is already achievable and achieved, quite regularly.

Again, doesn't make it less useful in general, i'm just not sure i believe it is somehow amazing for performance to people who care about performance.

</comment></comment></comment></comment></comment><comment><USER16> AFAIK there are optimization that Java/C# can do at runtime that compiled languages can't do.

</comment><comment><USER17> Someone should fairly offer as a counterpart any article showing the myriad of reasons why C++ generates much faster code than Rust in most cases. There are many such articles out there I've seen from time to time.

<comment><USER18> Typically by not generating code, such as when more advanced templates are used or constexpr, or by using a specialized or partially specialized version.

Traits, while cool, ate not potent enough at times.

<comment><USER17> It's more than that. While I understand that technically it should be possible to write code in either language that creates the same machine code as the other, the common idioms of each language lead to, in most cases, the C++ generated code being faster. I think it is a classic tradeoff in the safety a language provides vs. its overall performance. For example, the Mozilla team has to use unsafe blocks in the Rust codebase to get the same performance as C++ for those areas where it is important. That is not idiomatic Rust. Mozilla resorts to unsafe blocks just to handle basic doubly-linked lists, as well as optimized hashtables, in order to get similar performance to C++ data structures. My point is that when you stick to the philosophy of Rust, you will in general have slower code that when you write normal idiomatic C++.

<comment><USER4> _> That is not idiomatic Rust_

I'm not sure where one would get the idea that `unsafe` would be entirely forbidden in idiomatic Rust. "Idiomatic" Rust acknowledges the danger and subtle pitfalls of unsafe code, and thereby discourages the use of `unsafe`, but also acknowledges that it is still possible to build safe abstractions out of internally-unsafe code.

 _> in order to get similar performance to C++ data structures_

By Rust's definition, every line of code in a C++ codebase counts as unsafe code. :P If Rust can get equivalent performance to C++ while only using exposing 1% of the code to unsafety, that's an enormous win.

</comment></comment></comment></comment><comment><USER19> It's not just about the compiler being smart. There is nothing more you can do with x -> 2 + x other than compile it as is. Now if I somehow prove that x will never be greater than 10 then all of a sudden the compiler can in theory just turn that addition into a lookup table or do all sorts of other things I couldn't think of.

So it's more than just sufficient cleverness. It is also about the language providing you the tools to express certain invariants that the compiler can mechanically verify and then use in an optimization pipeline.

Edit: This is mostly out of context now and can be ignored.

<comment><USER2> > It's not just about the compiler being smart. There is nothing more you can > do with x -> 2 + x other than compile it as is.

> It is also about the language providing you the tools to express certain > invariants that the compiler can use.

Compiled code is useless if it is never called. The moment it's called, whether the caller is known during compilation or not, the caller can pass down any additional information it has, whether for that call or to help the callee optimize future calls. Heck, if it really wants to, the compiler could simply let the "compiled" code be the AST or source code itself (plus a JITter), and make the program generate code on the fly when the caller calls it, optimized using whatever information the caller is willing to provide. Again, nothing fundamentally in a language preventing this. It a tradeoff between implementation difficulty, execution latency, program size, and the like.

<comment><USER19> That language with your described properties already exists and is called SBCL ([http://www.sbcl.org/](http://www.sbcl.org/)). I'm not sure what you're arguing at this point though and don't quite get what point you're making.

Compilers, optimizations, type systems, and proof systems are all very closely related and if you want correct optimizations then you must annotate your code with types that the compiler can verify and use as assumptions in an optimization pipeline. These things are not easy to engineer. Saying just JIT it doesn't make much sense.

</comment></comment></comment><comment><USER20> Please drop the ?m=1 from the URL such that the correct page version is resolved on Desktop.</comment>


Success stories of moving from cloud hosting to dedicated infrastructure? - <AUTHOR>

I've been recently investigating various options for where to move our hosting off of AWS and I've gotten pretty curious about dedicated offerings like OVH or Hetzner, which promise bare metal performance at a very affordable price. AWS is actually very awesome (and EBS is pretty convenient for our Postgres needs), but the performance you get for the price is questionable. e.g. an m1.large would cost me around $200/mo, whereas the equivalent OVH machine (with even more disk space) would cost $40/mo. That's a big difference.
I'd be curious to find out if anyone out there has had experience with fulling migrating to a dedicated environment and if there's somewhere I can read about it.
Thanks! <comment><USER2> If your requirements include a large amount of outgoing bandwidth than going dedicated is worth it just for bandwidth pricing alone.

The fact that dedicated servers are cheaper/faster is just a bonus.

Look at securedservers.com

<comment><AUTHOR> Securedservers looks pretty good. More expensive than OVH, but it seems that they have a much more available customer support team. Would that be a fair characterization?

<comment><USER2> OVH definitely seems cheaper. I needed servers in US though.

Phoenix is near me.</comment></comment></comment>


Show HN: Search Hacker News Submissions and Download Results - <AUTHOR> http://ramiro.org/tool/search-hn/ <comment><AUTHOR> I wanted an easy way to search HN, especially limiting results by number of comments/points and to restrict them to sections like "Ask HN". This is what I came up with for now, maybe some of you find it useful as well.</comment>


Fossils of Cyanobacteria in CI1 Carbonaceous Meteorites - <AUTHOR> http://journalofcosmology.com/Life100.html?try=again

<comment><USER2> Not the actual title of anything in this post, but contained in "Official Statement from Dr. Rudy Schild, Center for Astrophysics, Harvard-Smithsonian, Editor-in-Chief, Journal of Cosmology."

Seems like a very unscientific statement, in that it's about impossible to validate. Anyway some article related to this paper is likely to become a big discussion item on HN. Might as well be the actual paper.

<comment><AUTHOR> Parent comment refers to the previous title of this submission, which was changed by a moderator. Unfortunately I think the submission needs the linkbaity title to get upvotes; this was my second try at submitting it.</comment></comment>


Mark Spencer pulled off Asterisk; now sets sights on avionics hardware/software - <AUTHOR> https://www.youtube.com/watch?v=YLtJjaknEZg

<comment><AUTHOR> The home on the web for eXtensible Flight System (XFS) is [http://www.xfs.aero/](http://www.xfs.aero/)

A big concern being worked now is how to build a community around XFS. Mark believes license terms are make-or-break for this. See "Licensing Discussion" at

[http://xfs.aero/forums/viewtopic.php?f=4&t=6](http://xfs.aero/forums/viewtopic.php?f=4&t=6)</comment>


Stanford Code From Cars That Entered DARPA Grand Challenges - <AUTHOR> https://sourceforge.net/projects/stanforddriving/ <comment><USER2> This code is legit (see other comment; download the tar and try to forget you ever visited Sourceforce) and incredibly interesting. I browsed this repo a year ago and still come back to it every so often. The architecture decisions that the Stanford team made in 2005 and 2007 have stood the test of time (at least as evidenced by many of the decisions in the architecture of our Voyage car, but anecdotally in others too).

Learn more with this paper on Junior, which uses this codebase: [http://robots.stanford.edu/papers/junior08.pdf](http://robots.stanford.edu/papers/junior08.pdf)

<comment><USER3> Hi Oliver, I have enrolled for the Udacity self-driving car Engineer Nanodegree and cannot wait to start! Do you think that browsing through this codebase will help me better understand some of the concepts taught on the course?

<comment><USER2> One hundred million percent yes.

Most of this content isn't covered until Terms 2 & 3, but it's surprisingly relevant.

</comment></comment></comment><comment><USER4> [https://github.com/emmjaykay/stanford_self_driving_car_code](https://github.com/emmjaykay/stanford_self_driving_car_code)

</comment><comment><USER5> > Stanford Made Available Code From Cars That Entered Darpa Challenges

That's oddly worded. The wording makes it sound like it's the code from numerous different cars in the challenge, and not just Stanford's entry, but the site wording and the source structure itself look to be a single system.

Then again, the code is from 2011, so I guess the past tense is somewhat justified...

<comment><USER6> Ok, we've replaced the title above with a grammatical one that we ripped off of [https://news.ycombinator.com/item?id=14651524](https://news.ycombinator.com/item?id=14651524).

<comment><AUTHOR> my bad, ESL, thanks for your "grammatical" rewording though.

<comment><USER6> Nah no worries, we're delighted that HN has users from many nations. And it wasn't my rewrite, I stole it :)

</comment></comment></comment></comment><comment><USER7> This looks like an updated version of the DARPA Urban Challenge code. It uses ROS extensively, and ROS was only started in 2007. The files are all dated 2011.

Not for use at high altitudes. From "perception/trafficlights/src/traffic_light_view.cpp:

        sprintf(lightBuffer,"%f %f %f", currPose.latitude, currPose.longitude, currPose.altitude);

Yes, it's debug code.

The perception end of things is mostly digesting the point cloud from the Velodyne LIDAR. There's vision code for traffic light recognition, but I haven't found other vision code yet.

<comment><USER8> Why can't this be used at high altitudes?

<comment><USER9> Perhaps laser behaves differently when there is less atmosphere between it and the target.

</comment></comment></comment><comment><USER10> Since when does anyone post things on sourceforge anymore? It makes me wonder how legitimate this is...

<comment><USER11> I can agree with that. Even if the usernames (and real names) match members from the team, it is still a little suspicious

<comment><USER2> I can verify it's legit (Sebastian Thrun sent this link to me a year or so ago).

</comment></comment></comment><comment><USER12> Interesting that they used ROS. I am surprised it was baked enough back then to be useable on a self driving car project.

</comment><comment><USER13> Patiently waiting for Animats to tell an interesting story about this code :)</comment>


Zencoder joins the Heroku Add-on catalog - <AUTHOR> http://zencoder.com/encoder-blog/2010/11/09/zencoder-joins-the-heroku-add-on-catalog/

<comment><USER2> Awesomesauce. The more Heroku Add-ons the better.

<comment><USER3> This is something I have been thinking about recently.

I'm about to start a reasonably large project in rails and I've been trying to decide whether to host it with Heroku or Linode.

I've used Heroku before and I was really impressed, it's so simple to get started and I reckon it would scale well up to point I needed to start considering a dedicated solution.

My concern is, Heroku makes add-ons almost too easy, and in my opinion, it may become [for me] a form of vendor lock-in. I say this because I could easily see myself using several add-ons that I wouldn't otherwise, and many more that could really improve the efficiency of my application. But, how easy is it to migrate your application and attached add-ons from Heroku once you have installed / integrated through their platform?

<comment><USER4> All their add-ons are based on either open source or third party solutions. You can keep using the open source solutions by simply installing them yourself and the third party solutions all have API's or even gems to work with.

<comment><USER5> Right. This is more comparable to the lock-in you get by hiring than to the lock-in you get with proprietary software vendors.</comment></comment></comment></comment>


Spellbook of Modern Web Dev - <AUTHOR> https://github.com/dexteryy/spellbook-of-modern-webdev <comment><USER2> As a beginner, stuff like this is more overwhelming than useful. It would be more valuable if it instead clustered resources by what to start with, and maybe a timeline (i.e. "Week one, read these 10 articles"). It's just grouped by topic, rather than "what to read first."

<comment><USER3> On that note, I can recommend the "GrabSE Front End Guide" at [https://github.com/grab/front-end-guide](https://github.com/grab/front-end- guide) , based on Sacha Greif's "A Study Plan to Cure Javascript Fatigue" article at [https://medium.freecodecamp.com/a-study-plan-to-cure- javascr...](https://medium.freecodecamp.com/a-study-plan-to-cure-javascript- fatigue-8ad3a54f2eb1) . It has exactly that ordered list of concepts and links with timelines that you're looking for.

I also have a more specifically-targeted list of links for React, Redux, and related topics like ES6, functional programming, and Webpack, at [https://github.com/markerikson/react-redux- links](https://github.com/markerikson/react-redux-links) . Specifically intended to be a great starting point for anyone trying to learn the ecosystem, as well as a solid source of good info on more advanced topics. The front page of my list has a "best-of / getting started" subset of links, and then the rest of the repo is grouped by topic.

<comment><USER2> Thank you!

</comment></comment></comment><comment><USER4> > This document originated from a bunch of most commonly used links and > learning resources I sent to every new web developer on our full-stack web > development team.

What the idea behind of that? Are you using all this tools, services or whatever? And how do you manage to stay up to date on such a wide area of stuff?

<comment><USER3> Had someone ask me a similar question today on Twitter ( [https://twitter.com/m_plis/status/874319058698735616](https://twitter.com/m_plis/status/874319058698735616) ):

> @acemarke your react-redux-links repo is a godsend. how do you keep up with > all the articles that the community puts out?

My reply:

> Wayyyyyy too much time spent reading, bookmarking, and organizing :) The "to > add" queue has been bouncing between 100-200 items lately. Comments like > yours definitely encourage me to keep up with it, though :) As I've said, > 1-man project, would love help, but don't expect it.

</comment></comment><comment><USER5> It's interesting that Node.js is mentioned quite a bit but php or python aren't mentioned at all. Node is a great and powerful tool, but is not the only tool in the tool shed.

<comment><USER6> Worth noting that the author points out that the document originated as a set of links he was sending to new developers on his team; this "spellbook" likely says more about his team than it does modern web development.

</comment></comment><comment><USER7> Thank you for curating!

</comment><comment><USER8> what's with all these resources lately that are just a bunch of links? what value are you adding? you realize we have search engines now right? we don't need directories.

<comment><USER3> Generally it's that all the resources are located in one place, and hopefully someone has actually looked at the links and decided they're of sufficient quality to include in the list. Having one place to look makes it easier for someone to read through things, rather than having to search and evaluate articles and resources themselves (especially as a new learner).

<comment><USER9> I agree with this, that the added value of lists like these is that it's "curated" \- a person collected these links over time, gathered from various sources including search results, while _filtering for quality_ subjectively.

<comment><USER3> Yeah. I've also seen complaints that some lists (including my own) have _too many_ links. Yes, I'd agree that a curated list with hundreds of links can still be overwhelming, but it's sort of a repeat of the Wikipedia "inclusionists vs deletionists" argument. I'm not trying to limit my list to the "top 5" articles in each subcategory or anything like that - I'm looking at each article by itself, and deciding if it's informative, relevant, and of value. I've also done refactoring on the list over time, adding new sub- categories, breaking out separate category pages, etc, to better capture the information.

It's still very much a "curated" list, it's just that I've done a _lot_ of curation :)</comment></comment></comment></comment>


Why America Needs Immigrants  - <AUTHOR> http://online.wsj.com/article/SB10001424052748703730804576313490871429216.html#articleTabs%3Darticle

<comment><USER2> It makes sense to me. We want to attract the 'good' immigrants while keeping out the 'bad' ones. I don't think that the two campaigns are really linked though.</comment>


Show HN: Data manipulation for GraphQL queries with Lodash syntax - <AUTHOR> https://github.com/APIs-guru/graphql-lodash <comment><USER2> Looks interesting. It is a bit hard to read and immediately make sense of. Maybe this comes with practice.

I think it's important not to load up on too many esoteric tricks or the code base becomes expensive to maintain (time/money).

I'm more inclined to build a small toolkit for common transforms like this at the point of usage.

</comment><comment><USER3> Why not the entire JS inside GraphQL queries?

Now seriously, is this running in the client or in the server?

<comment><AUTHOR> In theory, it can be used both on the client and server but we recommend using it on the client. Check out corresponding README section: [https://github.com/APIs-guru/graphql-lodash#caching- clients](https://github.com/APIs-guru/graphql-lodash#caching-clients)

</comment></comment><comment><USER4> This seems really cool, is anyone here using it?

<comment><AUTHOR> It has been just released, so probably there are not lots of users :) Share your feedback if you decide to use it</comment></comment>