Psyche-c – Automatic Compilation of Partially-Available C Sources - <AUTHOR> http://cuda.dcc.ufmg.br/psyche-c/ <comment><USER2> I couldn't get the page to work, but I'm intrigued by what happens when you give it random data and it tries to infer a working C program from it.

</comment><comment><USER3> While sounding cool, this kind of project seems to exist solely to generate a paper, not because anyone actually has this problem.

<comment><AUTHOR> I wouldn't be so sure. This thing given a syntactically valid piece of code infers all declarations required by it.

They implemented a working demo, along with some helper code so they are trying to push it.

How about IDEs?

<comment><USER4> And may be a a road to gradual typing, i.e. a forward looking auto. The language spec will probably never allow if (maybe someday in C++), but IDEs might fill in the type for you if it can be deduced from a call site later on.

<comment><AUTHOR> Yes, that.

I find it really... Wonderful how types and declarations are inferred from actual code using 'em.

OTOH, this is something I see a lot in Hindley-Milner typed languages, although they don't usually go too far here, i.e. it's not like OCaml or Haskell generates a type declaration for me.</comment></comment></comment></comment>


Ask HN: Likely demand for a big monitor extension for a small laptop? - <AUTHOR>

An idea has been stirring in my grey mash for a while, got no way I can follow it up. But, I was wondering what you would think of it:
A large monitor(extension) for a small laptop.
This was a an issue I wrestled when I bought my last laptop. I loved the small laptops but hated their small monitor size. I like the low weight, but am addicted to screen space. Not having enough monitor space just brings down my productivity and its just so tiring toggling between windows.
So, I thought, why can't be there be a light and thin portable monitor? something that has a monitor cable for getting the display info and a usb cable for the power supply. Something that can be either just clipped over the original laptop monitor or be propped up to the side of the laptop, to enable the use of both monitors at the same time.
I don't think its impossible to make a 15" portable monitor that is not more than 5mm to 8 mm thick, with a stiff enough case to safely carry it around.
But, the big question - would there be a market for such a product?
Any thoughts? <comment><USER2> How well did these sell? <http://technologizer.com/2008/12/19/two-screen- laptops/>

<comment><AUTHOR> wouldn't a permanently attached second monitor increase the form factor of the laptop itself?

<comment><USER2> I think the first one was detachable.

</comment></comment></comment><comment><USER3> I don't see the point. What is the advantage of a small laptop + portable monitor -v- a larger laptop? How can it outweigh the inconvenience of carrying two gadgets instead of one, and having to dis/connect them all the time?

<comment><AUTHOR> good question.

a compact answer to that question could be either

"yeah, the market is limited to those who have already discovered the gains in productivity by using multiple screens and are addicted to screen space"

or

"Well there is research that supports that increased screen space increases productivity and reduces fatigue, now its a matter of people discovering it because of an affordable and light enough as a magazine solution"

</comment></comment><comment><USER4> USB powered may be a problem: 2.5W doesn't get you far.

<comment><AUTHOR> that indeed would be a problem.

I wonder how much power the Ipad screen uses.

hmm... mebbe a regular power cord would be required.

</comment></comment><comment><USER4> Perhaps something to use an iPad as a second screen?

<comment><AUTHOR> That did be a great idea by itself.

Still, when wanting to carry a really small laptop, an ipad is quit an additional weight.

<comment><USER4> Are you sure a portable 15" screen with today's technology would be lighter than the iPad?

<comment><AUTHOR> if the same miniaturization technologies as Ipad were used, wouldn't the 15" have a lesser weight/unit screen area, when the computing electronics/battery components are removed?

Or for that matter another pure screen gadget the same size as Ipad, it would be lot lighter than the ipad itself. wouldn't it be?

<comment><USER4> Judging by the pictures on iFixit[1], the PCB and the battery don't look very heavy.

1\. <http://www.ifixit.com/Teardown/iPad-Wi-Fi-Teardown/2183/2></comment></comment></comment></comment></comment>


Matt Cutts from Google wants webmasters to report link spam - <AUTHOR> http://www.mattcutts.com/blog/calling-for-link-spam-reports

<comment><USER2> I don't see what the point is. Mahalo is still indexed, and we pretty much all flagged that site en masse.

<comment><USER3> We've deleted or noindex almost every short content page (stub).

People can't create stubs any more.

The issue is resolved and after our analysis the short pages were 6% of our traffic. we deleted them or expand their content and it looks like we will be even on a traffic basis after doing this.

lesson learned? short pages only hurt you and are a waste of time since google is smart enough to not rank them (at least not well).

Look at our homepage and you'll see our new standard is 300 original words or delete/noindex the page.

</comment></comment><comment><USER4> Last I checked, Google owned Doubleclick, and they are in the ad business and want to get more page views and clicks on ads. So, it's kind of hypocritical of a Google engineer to say something like this.

And what's wrong with link exchanges, anyway? Let's say I do Model Railroading, and I want some traffic. So, I join a "web ring" of other model railroader websites. Now my page rank goes down? Screw you, Google!

This also seems like a Blackhatter's dream. Got competition with your ad campaigns? Fine, just report your competition to the linkspam link and boost your rankings.

<comment><USER5> If you're linking to sites as an 'editorial decision' (i.e., you vouch for or approve of the content on that site), then you're fine. Otherwise, and if it's a paid link, you are supposed to nofollow it.

One of my issues with this is that on one of my sites, I have paid links that I vouch for. They're people I know providing services I've actually used and if my Google Account got pulled up by a rogue complainant or competitor, I'd be really pissed off.

The help docs on these sorts of things are pretty ambiguous though. One frustration I have is that they routinely discuss getting 'editorial' backlinks from bloggers, but for small businesses this can be exceptionally hard. If you're a tiler, for example, you might (if you're really proactive) have a four page site with some examples of work, testimonials, contact info and a list of services. None of your customers/testimonials are going to be blogging types. Most of your suppliers aren't going to link to you because they've barely got on top of their own web issues. But you'll get beaten in the rankings by a blogger or general content-producer who knows about SEO. Why isn't paying to advertise on those sites _and_ getting some link juice (without the link being nofollowed) an option?

<comment><USER6> >Why isn't paying to advertise on those sites and getting some link juice (without the link being nofollowed) an option?

Because that breaks the assumptions of their algorithms - that people link to what is interesting without any conflict of interest. If webmasters were allowed to pay to increase their pagerank, then rankings become about who can pay for the most/best backlinks, rather than what is most interesting to users on a given subject.

The short answer: Google doesn't want their SERPs to be overrun by spam.

<comment><USER5> But the end result of that tiling example (and I have a lot of smaller clients that are in that sort of position) is that the blog spam and MFA sites dominate, while the small players with a legitimate, physical business struggle to get attention. Who links to tilers because they're interesting?

</comment></comment></comment></comment><comment><USER7> This could be abused like dmca takedown notices against competitors.

<comment><USER8> Only if Google acts on it without checking first which is pretty unlikely if you think about it for more than a nanosecond.

<comment><USER9> True, but it costs nothing to submit your competitor and given the devastating effect getting de-listed from Google can have on some sites the small chance is worth it.

Ironically enough, I expect Google will get spammed with spam reports.

</comment></comment></comment><comment><USER5> Anyone use text-link-ads.com?

Given they don't nofollow links, will this damage them significantly?

<comment><USER10> I have used them before for customer sites, it works ok but is really a temporary thing until you get that customer to rank better on keywords that they want and increase the pagerank through normal methods. As a temporary shortcut text-link-ads has worked out ok for me. They were at one point penalized but they changed their system around so that won't easily happen again.

<comment><USER5> Were you using them as a publisher (hosting ads) or as an advertiser (trying to get traffic from them)?

FWIW, I am using them as a publisher.

</comment></comment></comment><comment><USER11> Note that your reports are bound to your Webmaster Tools account: <http://imgur.com/NQxLT.png>

</comment><comment><USER12> Bookmarklet anyone?</comment>


Tesla recognizes a running horse - <AUTHOR> https://twitter.com/ray4tesla/status/1205903572711301120 <comment><AUTHOR> It's actually quite non-trivial given that Tesla's autopilot is purely vision based</comment>


Show HN: Conspiracy Santa: A Better Secret Santa for Teams - <AUTHOR> http://conspiracysanta.com/

<comment><AUTHOR> We open sourced the little app (Bottle.py and React.js) that powers this tool: [https://github.com/zapier/conspiracysanta.com](https://github.com/zapier/conspiracysanta.com)

We also wrote an accompanying blog post about it: [https://zapier.com/blog/conspiracy- santa/](https://zapier.com/blog/conspiracy-santa/)

It worked amazingly for our team last year. We are definitely doing it again and I think everyone is really looking forward to it.

We considered doing a full on, invite-the-whole-team SaaS like app but email seemed like the easiest way to implement this. It worked well for us last year, but might break with more members. We'll see!

<comment><USER2> Very cool idea!

Maybe make it so that teams of people get assigned to giftees, but maybe not _everyone_? So that, if I want to play with 12 friends, there aren't 12 separate email threads I need to track. Instead, give me 4 (or an adjustable) number of giftees.

<comment><AUTHOR> Cool idea! That might make it way more manageable for large groups.

</comment></comment></comment><comment><USER3> Bah... this hit HN a week too late...

Our extended family decided to use this exact model this year, and managing the email lists was indeed a major pain in the neck.

</comment><comment><USER4> Great idea for friends! For my co-workers on the other hand... i'd hesitate to offer an O(n²) solution. I do believe the Feels per Participant™ ratio would be optimal for the group. However this ratio means little to aforementioned participant sample.

Thanks for sharing!

</comment><comment><USER5> Nice. It is definitely a good variation. One that I don't like is the everyone randomly picks a gift from a table of 'equivalent' gifts, and has the option of either opening it or handing it to someone who has already opened their gift and taking the gift they had. Basically swapping them an unopened gift for a known gift. Known gifts could only be 'stolen' 3 times before the the were immune from being taken.

<comment><USER6> I was introduced to that format once I moved to Massachusetts as the 'Yankee Swap'. It's fun so long as nobody takes it remotely seriously. I think it appeals to the New Englanders' intrinsic love of the possibility of screwing over their friends.

</comment></comment><comment><USER7> You might want to resize the original Santa image on your server - 586K for a small image in the corner is a little large.

[http://conspiracysanta.com/img/santa.png](http://conspiracysanta.com/img/santa.png)

</comment><comment><USER8> Without signing up for it to test, it's unclear whether each email thread is assigned a different 'host' so that in the end every person handles the actual purchase/ordering of 1 other persons gift (much like secret santa).

<comment><AUTHOR> It isn't specified in our version since a founder buys all the gifts, but you could just say in the thread "who wants to order it?" or come up with a more specific method.

<comment><USER8> Without the system automatically assigning buyers, I'd expect it's very possible oversight would allow for the final gift to not have anyone in on the conspiracy having already bought a gift.

Being on GitHub it shouldn't be too hard to fork it/submit a pull request to make it an optional feature I guess. Will see If I can find the time.

</comment></comment></comment><comment><USER9> Wouldn't it be easier to setup individual rooms for each employee within Slack and then just lock that employee out of the room deciding his gift?

<comment><AUTHOR> That could also work too!</comment></comment>


Ban the Laptops, Yes - <AUTHOR> https://www.firstthings.com/web-exclusives/2017/09/ban-the-laptops-yes <comment><USER2> We are no longer in the middle ages. The most effective method for teaching/learning is to hand out the lecture notes _before_ the lecture, preferably at the beginning of term. That way students can study up on the content before hand and arrive ready to absorb and discuss.

In my experience most profs (not all) would abhor this approach because their strategy is to come in, fill the boards with notes fast enough that students have trouble taking the notes down never mind thinking about them. At lecture end the prof asks "are there any questions" knowing full well everyone is still confused and he gets through yet another lecture with minimum effort.

<comment><AUTHOR> Class time should be a great time of interaction between students and teacher. The advantage of a good lecture over printed material is the lecturer can adjust to the needs of the class. This requires much more than asking for questions at the end. Indeed, I think the middle ages were even better than some lectures today because you could watch disputations and see how arguments were made and countered.

</comment></comment><comment><USER3> I think a key point is that computers can be extraordinarily valuable for education, but _during a lecture_ or _during a seminar_ they're usually more of a distraction because a goal of that is a teaching interaction and engagement between people in the same room, and modern computers have so many tools to connect people for totally other purposes.

So if someone says "but computers are so important for being able to do online research and collaboration!", that's absolutely right, but that doesn't mean they're a consistent net positive during face-to-face teaching sessions.

Bret Victor (who just came up in another thread) has been pretty adamant about his claim that _some future_ kind of computational media could be a huge plus for collaboration and teaching environments—yet that present-day laptops and tablets are not that and tend more to isolate people.

</comment><comment><USER4> This reminds me that I need to pick a date for ThrillCode 2018 [1], my "no laptops, no PowerPoint", mostly semi-serious code conference.

[http://thrillcode.xyz](http://thrillcode.xyz)

[1] I apologize to my fans that I failed to pick a 2017 date.

</comment><comment><AUTHOR> The school I work at sometimes takes some heat because we are relatively low- tech, so it's nice to see that there is some data to back up our intuition.

</comment><comment><USER5> ... and the mobile phones?</comment>


Subscription Men's Clothing Startup Bombfell Raises $730,000 Seed Round - <AUTHOR> http://techcrunch.com/2013/02/13/bombfell-730/

<comment><USER2> Here's what I don't understand about this business model.

On the one hand, you're targeting guys who feel like they don't know enough about fashion to be able to make good clothing choices themselves -- so they trust an unknown stylist with unknown credentials to make the choice for them.

On the other hand, you're targeting guys who value premium, name-brand clothes.

I would think that if you're in category one, you wouldn't know enough to have strong brand preferences, and if you're in category two, you know enough that putting everything in the hands of a stylist would be uncomfortable for you.

<comment><USER3> I'm who this service is made for. Typically when I find a place, i'll stay loyal to them for a while. The right place has to have these 3 qualities. First, the price has to be a good value. I don't want to pay a lot for something that will last a short time. I wear cloths until i can't. Second, there has to be at least one employee there that is willing to help me find something. I can't pick cloths out, I need a guy/girl willing to say "this is not a good shirt for you". and the 3rd is the universal, the cloths need to be close to my style, which I would describe as business casual. I'm probably going to start with the essential, but i might sample the "luxury" level first. If it proves fruitful, perhaps i'll stay with it.

<comment><USER4> Welcome aboard! Let me know if you have any questions or requests any time. bernie[at]bombfell[dot]com

<comment><USER5> Just one request: please accept delivery to Europe (at least France) even with some shipping cost and I will join immediately.

</comment></comment></comment></comment><comment><USER6> Just like most of these services, they claim big and tall sizing and then utterly fail at it.

Biggest size? 2x. I haven't been able to comfortably fit into a 2x shirt since my freshman year of high school. My shoulders prohibit that, and even if they didn't, a non-tall shirt is not going to be of use to anyone over 6'3".

<comment><USER7> And don't forget that the larger sizes from vendors vary widely. A Ralph Lauren (black/purple) xl, xlb, xlt, 2xlt and 2xlb fit very different torso shapes and that's just one manufacturer.

Also, monthly auto-clothing deliveries implies a level of replacability for the profitable clothes that would lead me to think they'd look good for a limited amount of time and that quality fabrics and tailoring would be limited. Which then makes me think they're not targeting people with standards and taste so much as people who do not want to think about clothes and that wouldn't be something I'd want to use.

<comment><USER4> Respectfully disagree, our goal is to establish a lifetime relationship with our customers, not churn-and-burn them out within first 3 months. If we sent clothes that fell apart people would stop using us.

We want users to come back to us for their wardrobe needs whenever they find they need them. That's why we built the product to be flexible, so you can schedule your next shipment when you want, or even pause indefinitely.

</comment></comment></comment><comment><USER8> How many people really need new clothing every month? It seems like subscribers would eventually have all the clothing they need (or more), and then they would no longer need the service. Is there a way to suspend the service, or slow the rate of deliveries? Maybe a way to do a one-time order instead of a subscription?

<comment><USER4> We've intentionally made it super flexible. You can rush or delay your next shipment, choose to skip a month, ask for another pick if you don't like it. Can change frequency to every 2 or 3 months if you'd like too. Can indefinitely put account on pause.

</comment></comment><comment><USER9> That's awesome. Congrats guys! Been a happy bombfell customer for 7 months and absolutely LOVE it.

Signup here: <http://bombfell.com/?rc=3075PuHAG>

</comment><comment><USER10> I was part of the beta trial and I consider the Bombfell team my friends (even if we've never actually met). This service has changed the way I dress. To address what @jawns was saying, I was one of those who didn't care about brands and also made questionable fashion decisions. If you're willing to give Bombfell a try, they will change your mind about quality brands. They make you look good and will work with you till you're happy with your selection. These guys are awesome and I wish them 1000% success!

</comment><comment><USER11> $69/month is about 10x my clothing budget! Should I be embarrassed? Ashamed? Is this a sign I'm not dressing well :-(

(I go out once every other year and spend 100-300 on new clothes)

<comment><USER12> Where do you live? I can't imagine how you're buying enough clothes to get through the week. You're spending $50-$150 per year?

Prices at Target.com indicate that I'd have to spend $65 just to replace my socks ($14 for a pack of 10), underwear ($28 for 8 pair), and undershirts ($23 for a pack of 6). And realistically, I'd be looking at another $23 for more undershirts because 6 isn't enough to get through a week. So I'm more than halfway through your maximum yearly budget and don't have any pants or shirts that are actually supposed to be seen. Granted, these things might not be fully replaced every year, but these are also just basics.

Also, how are you affording shoes? Even just one pair per year would eat up half of your max budget. Cheaper shoes can be found, but I find them so non- durable that it more than offsets the savings.

I don't think you should be embarrassed. If you can buy all your clothes for that price and not look homeless, good for you. I just don't know how you could manage it.

</comment></comment><comment><USER13> I was way excited for this, but was a little disappointed as I went through the signup process.

I'm not terribly fashion-savvy, and I don't know how to pair things. If there were an 'outfit' option where you could receive a pair of pants / shorts and a fitting top for about $150 / month, I would sign up, and many of my friends would too.

<comment><USER4> We do send multiple items per month on user request. Just email us at bombsquad[at]bombfell[dot]com after you sign up.

</comment></comment><comment><USER14> Looks similar to TrunkClub ( <http://www.trunkclub.com/> ), which I saw on HN a couple of months ago. But with cheaper prices. (And hopefully better service -- the TrunkClub advisor I talked to missed an appointment, was confrontational, and didn't seem to listen well).

<comment><USER4> Yea we definitely want to offer clothing at reasonable prices. We're bringing web technology to the traditionally offline/manual process of personal styling so that we don't have to charge exorbitantly high prices to turn a profit. More automated, less 1:1 back-and-forth, but still with fantastic customer service.

</comment></comment><comment><USER15> I really hate it when I see an awesome service that I would like to try and then realize that it only works in the US.

<comment><USER16> Aw I wish I'd read your comment before getting to the shipping address stage. Can I sign up somewhere and have you notify me when you come to Australia?

<comment><USER4> Yes! Email me bernie[at]bombfell[dot]com and I'll save your email to the notify list for Down Undah.

</comment></comment></comment><comment><USER17> What's the reasoning behind not offering other bits of clothing like socks and boxers?

Also, do you get huge shipments of the exact same garments, or do you try to keep the offerings unique so friends don't end up getting the same clothes each month?

<comment><USER4> That's on the roadmap. We didn't start out with that because you run into the Kozmo.com problem (lots of human-powered service for a few bucks). We still have to make enough margin to clothe and feed the stylists making your picks :)

No it's not one-size-fits-all, every pick is personalized literally to you. We also keep track of friends through the invite codes to prevent #twinning.

</comment></comment><comment><USER18> I've been using Bombfell since the summer and absolutely love it. If you have any questions on how it works, I'll try my best to answer them.

<comment><USER19> 1\. If there's three people in my office all with subscriptions, do we all show up in identical shirts on delivery day?

2\. My online clothes purchases have sometimes had poor fit. How good have you found it?

3\. How much input do you get into what you actually receive? Let's say I have enough jeans already - can I opt out of getting more jeans?

<comment><USER18> 1\. Four of my friends have subscriptions, the only items we have all received were a pair of dark jeans.

2\. The fit has been excellent for me. I am a slim build between small and medium so I get shirts in both sizes. They know their brands and how they run.

3\. They have a settings page with on/off switches that let you opt in or out of all clothing items. You can even send the stylists pictures of clothing you already have and ask them to find something that matches.

</comment></comment></comment><comment><USER20> Page keeps crashing in Chrome on OSX after clicking get started. I get through about 4 steps and the page crashes the Chrome window.

<comment><USER4> Are you using any extensions? I'm using Chrome on OSX and not able to replicate that.

</comment></comment><comment><USER21> All around pretty awesome service. Good for them.

</comment><comment><USER22> Seems there could be a mutual benefit of cross promotion between Bombfell and Manpacks.

<comment><USER4> We love the Manpacks team! Lots of respect for the trailblazing they did.

</comment></comment><comment><USER23> I wish you guys had metric. I don't know how tall I am in feet.

<comment><USER4> Sorry! Are you by chance located abroad?

<comment><USER4> And by abroad I mean "not US." Sorry, ignorant American here :)

<comment><USER23> Just north of the border.

<comment><USER4> Ooh ok, not yet available up North - hoping to be there by summer.

</comment></comment></comment></comment></comment><comment><USER24> When you folks hitting the UK? You guys rock!

<comment><USER4> Undetermined - int'l shipping logistics are a Gordian Knot!

<comment><USER25> Have you looked into buying in the UK or maybe setting up a deal with a supplier there?

<comment><USER4> Not yet - still iterations on the service we want to push through before expanding to UK.

<comment><USER26> Any thoughts on service to Canada?</comment></comment></comment></comment></comment>


What You Have to Fear from Artificial Intelligence - <AUTHOR> https://www.currentaffairs.org/2018/11/what-you-have-to-fear-from-artificial-intelligence <comment><USER2> I wrote this. If anyone wants to yell at me about it (and there are fair objections, I think), here I am.

<comment><USER3> For the lay-person, I think it's pretty on the money.

So have some confirmation bias on me :)</comment></comment>


My experience with programming books - <AUTHOR> http://blog.webicity.info/2010/08/21/programming-books/

<comment><USER2> In order to get any satisfaction when looking for programming books you have to head to a book store with some reason to actually pay attention to a difficult market. Powel's Technical in Portland is a reasonable example. Op- AMP in Los Angles is another. There used to be a chain of stores in the Bay Area called Computer Literacy which was a pleasure to shop in. Berkeley had one who's name has escaped me and it has since disappeared, but search the area around the campus--- good exercise and great bibliographic fun. Likewise remember that most of these (if not all) have web sites, so let your browser loose as useful.

<comment><USER3> Computer Literacy was amazing. Cody's in Berkeley on Telegraph?

On balance, Border's stocks every one of its stores with a reasonable selection, even Borders stores in pretty podunky half-suburb, half- agricultural areas.

</comment></comment><comment><AUTHOR> Am I just being screwed over with bad luck by where I live, or do the rest of you have trouble finding good programming books too?

And some suggestions of books would be nice too.

<comment><USER4>
      >> Do the rest of you have trouble finding good programming books too?
     get mine through Amazon.

      >> And some suggestions of books would be nice too.

<http://news.ycombinator.com/item?id=551339></comment></comment>


Asana introduces Boards, a native Trello competitor - <AUTHOR> http://venturebeat.com/2016/11/15/asana-introduces-boards-a-native-trello-competitor/ <comment><USER2> Just to clarify the the 'native' bit, it is web, iOS and Android. I was thinking for some reason they had done a native only app.</comment>


A Tesla Model 3 Produces More CO2 Than a Diesel Car, Says New Study - <AUTHOR> https://interestingengineering.com/a-tesla-model-3-produces-more-co2-than-a-diesel-car-says-new-study <comment><USER2> This is based on Germany's current energy mix, which produces a lot of CO2 because Germany still relies heavily on coal and gas.

<comment><USER3> Yes this is incredibly depressing. The gouvernement is rather supporting coal industry via subsidies so the party dont loose the vote of the workers instead of support new technologies. Why are we ruled by such people?

<comment><USER4> Because they also represent other people that have jobs. Neglecting those has already led to Trump and the international growth of right wing parties.

</comment></comment></comment><comment><USER5> They didnt factor in the environmental impact of extracting, refining, transporting & storing fossil fuels like diesel. Which would represent the fossil fuel, hydrocarbon based equivalent to a tesla's batteries.</comment>


Will Go be the new go-to programming language? - <AUTHOR> http://gigaom.com/cloud/will-go-be-the-new-go-to-programming-language/ <comment><USER3> Yes.

The speed of development is far better than any other language I've experienced. I use it as a replacement for C++ and Bash, a statement I don't think you could make about any other language. Apart from the lowest-level kernel work and the highest-performance code, I think Go will become the NBL. Even on the subject of performance, Go is improving quickly, and if you're using it as a replacement for, say Python, your performance will be substantially improved anyway.

Its simplicity is astonishing. Very few things will surprise you whilst coding, although a few topics take a while to learn. I know many hackers try to work in accordance with the phrase "Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.". I cannot think of anything Go has that it doesn't need. Not even goto :P

<http://www.quotationspage.com/quote/26979.html> <http://golang.org/ref/spec#Goto_statements>

<comment><USER4> 'Performance' is not a bullet point. Please do not wave hands about 'performance' without thinking about the actual benefit in the actual domain you are programming in.

If you need to write fine-grained embedded, DSP or graphics code you are probably going to use a true low level language like C or C++ anyway, not a gc language.

If you are not working in a domain like that, you need to _measure_ to even know whether the language is even a significant bottleneck. By the time you have measured you can often find a targeted place to optimize with FFI or extension modules.

If you are using a language just because you think it is faster at everything, you are optimizing prematurely and in a somewhat naive way.

<comment><USER5> > If you are not working in a domain like that, you need to measure to even > know whether the language is even a significant bottleneck.

Or, if one is confident that the project can be done in Go, and that existing performance measurements of alternatives are accurate and show much worse performance, and the alternatives aren't much easier to use anyway, use Go and don't look back. Why optimize with FFI or extension modules when one can scrap that idea at little expense?

As an analogy if I wanted a faster car I'd probably be better off switching cars than tweaking my existing car's engine.

<comment><USER6> To continue your car analogy, buying a Porche isn't going to make you go faster if the route you're optimizing is across Los Angeles in rush hour.

<comment><USER5> True! But the whole cross-state trip likely has plenty of open road.

</comment></comment></comment></comment></comment><comment><USER7> > Betteridge's Law of Headlines is an adage that states, "Any headline which > ends in a question mark can be answered by the word 'no'".

<http://en.wikipedia.org/wiki/Betteridge%27s_Law_of_Headlines>

<comment><USER8> Is there a law about people always quoting a law from wikipedia?.. Betteridge, Poe, Godwin, Dunning-Kruger.. it is getting just as old as the terrible blog post titles that provoke them them.

This is not really even such a ridiculous proposition, either- certainly worthy of discussion.

<comment><USER9> Cantelon's Law: if you put someone's name in front of an adage people will feel savvy when they quote it.

<comment><USER10> You shall create a wikipedia page for that, that way we can refer to it :)

</comment></comment></comment></comment><comment><USER11> It's certainly the new go-to programming language for blog posts about programming languages :)

It's a very nice language, I like it a lot, but if there's one thing we all should have learnt over the last few years, it's that no programming language is the right choice for every task.

</comment><comment><USER12> It's close. The tooling is really user-friendly, which is a big win.

Add some sort of decent generics and you're really close.

A top-class GUI toolkit would be good too.

<comment><USER13> I feel like not including generics is a huge oversight. Also, the way many go aficionados discuss this over at golang-nuts put me off a great deal.

<comment><USER14> What is an example of a use case for generics that can't be done, or is significantly less convenient to do, with interfaces? It sounds like there is at least some thought that generics may be included at some point, but I really haven't missed them thus far.

<comment><USER15> A lot of functional constructs heavily rely on parametric polymorphism. For example:

        map :: (a -> b) -> [a] -> [b]

Interfaces can't provide this type of code reuse.

<comment><USER16> If you're attached to FP style you shouldn't choose an imperative language in the first place.

<comment><USER17> It has been pretty conclusively demonstrated at this point that a basic suite of "weak" FP tools is pretty useful in any language. No serious modern language should try to work without convenient closures and a functioning map and filter statement/function/whatever. This hasn't got anything to do with purity or academic goodness, and everything to do with the fact that languages like Python or Ruby, which are emphatically not FP languages, have simply shown such things to be indispensable tools for concise code.

<comment><USER18> Pretty useful: yes.

Essential: no.

Map/Filter introduce several new semantic concepts to a language. I think they were avoided for simplicity's sake and the fact you can achieve the same result with a for loop, even if it is slightly less concise.

<comment><USER19> With this standard for "essential" you may as well just drop down into assembly language.

The only added simplicity here is for the compiler writers, not the end users.

<comment><USER16> numbers = map(numbers, func(n int) int { return n * n })

for i, n := range numbers { numbers[i] = n * n }

Sorry, but I do not see a difference in the order of assembly language vs. high-level language.

<comment><USER19> Now try it on a more complex type. Then try and compose various operations. Then swap out the container type.

<comment><USER16> (Unfortunately, formatting is lost)

a) With a more complex type (I don't see how this would affect one more than the other)

Functional would be:

foos = map(foos, func(f Foo) Foo { return Foo{f.A * f.A, f.B * f.B} })

Iterative is:

for i, f := range foos { foos[i] = Foo{f.A * f.A, f.B * f.B} }

b) Composing various operations. Composing filter + map:

Functional would be:

x := filter(map(numbers, func(n int) int { return n * n }), func(n int) bool { return n % 2 == 0 })

Iterative is:

x := make([]int, 0); for _, n := range numbers { sq := n * n; if sq % 2 == 0 { x = append(x, sq) } }

c) Swapping the container type is just a matter of swapping "_, n := range numbers".

<comment><USER19> > With a more complex type (I don't see how this would affect one more than > the other)

It does because the discussion is about generics. The fact that you're writing out types for one and not the other makes your comparisons a bit disingenuous, though I understand if Go isn't very good at functional programming.

b) Composing various operations. Composing filter + map:

As you keep building them up the imperative style will have more code overhead and less efficiency.

> c) Swapping the container type is just a matter of swapping "_, n := range > numbers".

This isn't true since the functional one could easily swap out to use an infinite data source whereas the imperative will be constrained to the arrays you're already using.

<comment><USER16> a) Generics would not make the function signatures shorter. You would have to introduce yet another concept: type inference for the signatures of anonymous functions.

b) No, it will not be less efficient. It's all done within one loop, in-place. You can compose everything inside the body of the loop. A functional language would do the same if it's intelligent.

c) You can easily create an infinite data source in Go with the generator pattern:

numbers := make(chan int); go func() { for i := 0; ; i++ { numbers <\- i } }()

for n := range numbers {...}

<comment><USER19> > Generics would not make the function signatures shorter. You would have to > introduce yet another concept: type inference for the signatures of > anonymous functions

Yes, I should have said type inference obviously. I can't think of a decent functional language that doesn't have type inference though.

> No, it will not be less efficient. It's all done within one loop, in-place. > You can compose everything inside the body of the loop. A functional > language would do the same if it's intelligent.

If it's all done in one loop then it isn't composing. It's writing custom code every time you need to do something.

> You can easily create an infinite data source in Go with the generator > pattern:

That's nice, you only need to change all of your code to do so. The functional version doesn't have that problem.

<comment><USER20> </comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment></comment><comment>====

Please note that if your comment thread starts getting squished against the right side of the page like this, it might be time to move the conversation off of HN.

</comment><comment></comment><comment>====

</comment><comment><USER21> The following features make Go as the "go-to" language for me:

1.Coroutines, Channels and Select: Concurrency with built in synchronization and communication is accessible(especially if your are new to concurrent programming) enough to handle "most" of the grunt work. 2.gofmt: Formats your code for you. No more debates(procrastination) on that. 3.godoc: Generates documents. No more looking for the best 3rd party tool and wasting time. 4\. Defer and Close: Helps you to do better post-operation tasks i.e better resource management. 5\. Error Handling: Multivalue returns. 6\. Type Hierarchy: No type hierarchy exists in the conventional sense. 7\. Slices & Maps: Just two of them, and that's why I love it. 8\. Brevity and Readability: Clutter free syntax. WYSISWYG language. 9\. Philosophy of Exclusiveness: This is most important non-feature which makes Go different and exciting. Go's vision is to be an exclusive programming paradigm rather than being an inclusive one. In this Google I/O video: <http://www.youtube.com/watch?v=sln- gJaURzk>, Robert Griesemer speaks about an incident that how in a "D" programming conference, the developers intended to include a new programming paradigm in the future. This is what sold it for me as I care more about how the language will grow instead of what new cool features will come in.

Performance is a contentious issue. In an ideal world, performance would just depend on the platform and the language, but in reality it also depends on the skill and idiosyncrasies of the programmer. For me, that is a non-issue.

Quick Reference to Go talks: <http://code.google.com/p/go-wiki/wiki/GoTalks>

</comment><comment><USER22> Yes. :) I'm using it now, and it feels better to me than Java and C/C++. The language is cleaner and the toolchain is very smooth.

The new Go Revel framework (by HN user robfig) looks especially promising for web MVC apps: <http://robfig.github.com/revel/>

</comment><comment><USER23> This is a terrible article, with no substance. I'm baffled as to why anyone would up vote it, other than "because it's about Go and I like Go".

<comment><USER24> Many people don't really read the articles, I'd guess. This article really is devoid of insight.

</comment></comment><comment><USER25> For small ad-hoc multi-processing servers that web shops are writing. Maybe, that seems like a good use case. Not as exotic as Erlang, and not a very demanding environment.

No big chance for enterprise or academia. And I believe that for ordinary "check this, forward that" backend programming, Ruby, Python and Perl will still remain staples, with a few percentage points shifting back and forth, as usual. Rails didn't end Python.

On the other hand, I wouldn't shed a tear if it would eat up the majority of node.js' marketshare.

<comment><USER18> Enterprise here. We're knocking huge monolithic applications sitting on CLR and JVM processes into greater numbers of smaller stand-alone components (SOA style). Go fits here very well indeed.

Our authentication, filestore, directory services, messaging and web front end are all easy targets.

</comment></comment><comment><USER26> No. Not for me, anyway.

Go seems okay. I tried to write a few small programs in it but spent a lot of time hunting around in the manual for how to do things. D (as in dlang.org) has a very similar feature set (static but not annoying typing, lightweight threads, value types, GC, native high-level arrays, yaddah yaddah) but is more familiar to us C/Java programmers. One feeling I get is that Go exposes a lot of quirks (e.g. the 'make' function and inter-thread messaging) in the syntax of the language, whereas D takes care of those cases with regular library functions. I was impressed that while writing my first D program I rarely committed any syntax errors, as I found it an intuitive extension of Java/C syntax. So if anything is to by my next go-to language, it's more likely to be D than Go. Or does that make it a d-to language? Ha ha ha heh hrm _cough_.

</comment><comment><USER27> I think Go has big potential, especially with those who now code C++ or Java but also with some users of dynamic typing languages. I have a feeling Go is here to stay for a while.

</comment><comment><USER28> Things Go got right;

1\. Go doesn't discard the last 40+ years of programming history. Ints, chars, arrays, pointers, structs -- in addition to minimalist types that build on these -- are at the heart of Go's lexicon.

2\. Following off of point 1: C and C++ source code and algorithms are easily translatable into Go because they look like Go.

3\. Following off of point 2: Because old C/C++ code looks similar to Go, Go's libraries will soon number C/C++.

4\. A well thought-out, minimalist toolchain. Working with "go install", vim, and gocode is like dancing in the clouds when compared with the morass that is Eclipse or Visual Studio, let alone C/C++ and its makefiles.

5\. Go's object-orientation is done right. Go strongly emphasizes "has-a" relations and eschews the "is-a" relations that are prevalent in C# and Java. To see the effect this has on code readability, look at Go's documentation. For example, <http://golang.org/pkg/database/sql/> ...scanning one page tells one all that's needs to be known about a package. Go's objects ride just above atomic data structures. There is not a five-mile chain of object dependencies and corresponding taxonomy clouding one's understanding as in C# or Java.

6\. Go's channels give the programmer their very own ksh/bash built right in to the language. Admittedly, this is an oversimplification, but piping program units together is a proven method of _strongly_ modularizing applications and has the added benefit of being inherently concurrent. Languages have been moving away from the shell for decades and have in the process lost its advantages.

(With all that said in point 6, there is still room for something like a lightweight, cross-platform, glue-language similar to bash/ksh that -- like Go -- does not throw out 40+ years of shell history. Unsung Tcl/Tk (<http://www.softpanorama.org/Scripting/tcl.shtml>) and Expect seems to fit the bill the closest currently, though it does not read like the C family of languages. Perhaps if someone were to build a Go shell, or create a cshell that used used Go's conventions, Go would have a good glue-language counterpart.)

<comment><USER29> > Go doesn't discard the last 40+ years of programming history

Except for:

\- enumerations

\- exceptions

\- generics

\- dynamic modules

\- ...

<comment><USER30>
      - <USER2>
      - http://golang.org/doc/go_faq.html#exceptions
      - http://golang.org/doc/go_faq.html#generics

<comment><USER29> iota is a poor man's solution compared with what real enumerations are

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

As for the other two links Go fanboys like to throw them around to feel happy that they beloved language is comparable to programming languages developed in the 70's.

<comment><USER30> Ignoring and being selective are different things. The golang designers have made intentional choices and the reasoning is provided in the links I sent. I am not a fanboy. IMHO, Go would have been MUCH more interesting if goroutines did not run in a shared address space and if they implemented generics (even as a hygenic macro..)

The things that you left off your list that I think are much more interesting are:

      - Weak/Strong purity, enforced by the type system
      - uniqueness typing
      - chan is too special.  The difficulty with implementing a good netchan interface is starting to show this.

</comment></comment></comment></comment></comment><comment><USER31> Why would you write critical software on a language developed by one company that has a habit of dropping projects once they get bored with them?

As the consternation of C# developers about windows 8, and java developers about Oracle lawsuits, relying on a language that a single company makes is foolish - especially companies that have a track record of abandoning projects.

I think C++11 will be the new go to language. It is standardized. As Moore's law runs out for single cores, C++ is positioned as the language that can run fast on a single process and scale easily to multicore

</comment><comment><USER32> "C will always have its place but Ruby and Python code bases will go to Go."

Not in the web world. Go will take programmers from the C/Java camp, but not many from the ruby/python camp.

Not even one in a hundred startups will use Go as their main programming language. Ask PG to confirm.

I am an early golang user and once in a while play with it to try new stuff, but still coding everything else in python.

To answer the question: Yes for systems work, No for web work.

<comment><USER33> Go offers nothing for C programmers, and Java/C++ programmers are largely using languages by corporate decree, not choice. Go's main audience is in fact people who are still clinging to dynamically typed languages. Where modern languages like haskell or scala are too scary for them, go is familiar enough to draw them in, and show them that static typing doesn't mean java.

<comment><USER4> 'clinging to dynamically typed languages' and 'too scary' implies that the only people using such languages are incompetent beginners. That is posturing more than it is an honest description of reality. Same applies to your description of Go as nothing more than a bridge to Scala.

Are you so sure that everyone using languages other than Scala and Haskell is that much dumber than you are?

It took a while for C++ and then for Java to become languages of corporate decree. If Go will ever become one of those languages, it will take around the same amount of time.

<comment><USER33> >'clinging to dynamically typed languages' and 'too scary' implies that the only people using such languages are incompetent beginners

No it doesn't, it implies they are accustomed to dynamically typed languages, and unfamiliar with modern statically typed languages.

>Same applies to your description of Go as nothing more than a bridge to Scala.

That's interesting given that I said no such thing.

>Are you so sure that everyone using languages other than Scala and Haskell is that much dumber than you are?

Who are you replying to? I said nothing of the sort.

>If Go will ever become one of those languages, it will take around the same amount of time.

What does that have to do with anything? Nobody is discussing whether or not go will become the corporate standard language.

</comment></comment></comment></comment><comment><USER34> I'd like to see Cassandra implemented in Go (currently its Java/JVM-based).

<comment><USER35> Why?

<comment><USER34> Mainly to see if it would have better GC ability than Cassandra.

I love Cassandra, and the JVM is solid too, but the "stop-the-world-pause" in it's current garbage collectors truly blows. All of that fast latency is for not if the JVM decides to spend a few seconds churning through garbage. :(

I've looked into Azul's Zing JVM, but it's basically only for beefy hardware (16+ cores and 32GB+ RAM), and it's also crazy expensive.

<comment><USER11> I've never used Cassandra, but from what I'd read about Netflix and other's use of it, everyone used at least 32GB of RAM in each node?

Am I totally wrong?

<comment><USER34> So, there's a difference between "how much RAM is in the box", and "how much RAM is allocated to the JVM".

The latter is where Azul Zing requires a lot of RAM to operate, as I understand it.

The recommended RAM for the JVM heap running Cassandra is 8GB, and 4GB isn't uncommon in the cloud. Netflix uses 12GB, and is contemplating going back to 8GB (they made that decision awhile ago, and things have changed since then).

I have boxes that run JVM heaps as low as 2GB just fine. It really just depends on how you're using it. (I've heard of people using 256MB heaps with Cassandra.)

<comment><USER11> Thanks, that makes sense

</comment></comment></comment></comment></comment></comment><comment><USER36> For those wanting to learn more Go I recommend this online book: <http://www.golang-book.com/>

</comment><comment><USER37> I can't use Go until they fix the whitespace bug:

[http://zackarymorris.tumblr.com/post/26701252898/a-mistake-i...](http://zackarymorris.tumblr.com/post/26701252898/a-mistake- in-go)

But other than that, it looks like a very tasteful language and I want to use it for some parallel computation experiments since they make it so easy to spin off tasks.

<comment><USER20> Wow... I don't understand diving into a language like this without reading about or looking at other source code already written in the language. This is not a bug! Golang enforces certain formatting, it is very opinionated and the authors are very upfront about that. <http://golang.org/doc/effective_go.html#formatting>

Also, you can use the `gofmt` tool (when running Go on your local machine) to help you learn what Go prefers if you don't want to read all of the excellent documentation on the site. [EDIT: I see you already know about this tool but I'll leave this comment here for others]

<comment><USER38> Exactly, this is not a bug and this won't be fixed. Go adds a ";" at the end of lines like "func main()", which in this case means "func main(){" has a different meaning than "func main()".

<comment><USER39> Oh god....

</comment></comment></comment></comment><comment><USER40> Yes. Combined with Dart and Google has their strategy for leaving Java and Firefox in the dust.

<comment><USER41> I doubt dart will ever gain the momentum that go currently has.

<comment><USER39> go has momentum? I am not sure I would go that far.

<comment><USER4> Go certainly has buzz.

I keep thinking I should get around to doing a real project with it, then I get irritated by the strident advocacy and put it off again. For purposes which seem to call for Go I can easily just go back to C. Which is already beyond mature and plays nicely with almost any non-JVM language.

</comment></comment></comment></comment><comment><USER42> Can anyone confirm that 32-bit problems still exist concerning memory leaks and cgo? If so, this would confirm that it isn't a cross-platform "go-to programming language".

</comment><comment><USER43> As an absolute amateur in programming i was surprised that i could master Go syntax(in the sense of not having to check back in the notes) in under 2 hours of practice.

</comment><comment><USER20> summary: Click-bait title, content-free article, great language, excellent conversation in (HN) comments.

<comment><USER20> Oh, and here's a pretty good comment on the article regarding static vs dynamic typing:

      eamonnerbonne Thursday, September 13 2012

      It's a night and day difference. Let me try a writing
      analogy with Word + Notepad.

      Say you're trying to write a text for a particularly
      picky client that will reject your text if you make any
      mistake or use any unclear phrase. Then dynamic typing is
      like Notepad: you better be careful, have lots of
      proofreaders, and expect to have your text rejected
      often. And when you print it, it's in a slow-to-read
      monospaced font.

      Static typing is like Word with all the grammar checking
      turned up to 11 (it won't let you print or email any text
      with what it thinks is an error). It's harder to learn,
      and sometimes your PC runs slowly, and the grammar
      checker will find lots of irrelevant stuff, and to keep
      it happy you might need to change your style, but it
      *will* make certain types of error irrelevant (e.g.
      spelling), and occasionally catch more complicated
      mistakes too. Also, as a bonus that might or might not be
      relevant, word prints in a font you can read much more
      quickly.

      The point being: they're totally different ways of doing
      things.

[[http://gigaom.com/cloud/will-go-be-the-new-go-to- programming...](http://gigaom.com/cloud/will-go-be-the-new-go-to-programming- language/#comment-994342)]

</comment></comment><comment><USER44> _"How big a deal is this static typing thing??"_ \- Barb Darrow (author of the article)

wow

</comment><comment><USER39> I don't see it happening in the near future but it might.

</comment><comment><USER45> It's all about the libraries, Python and C for example have libraries/bindings for most things, e.g. Postgresql, ZMQ, Json etc. Google could invent the best programming language ever but without _mature_ _robust_ libraries it is pretty much useless.

<comment><USER46> Go has a pretty decent standard library.

<http://golang.org/pkg/>

<comment><USER45> Yes it looks good, but what about mature 3rd party libraries?

<comment><USER3> Good software takes time. Asking a new programming language to have "mature 3rd party libraries" is a bit harsh. You are, of course, correct in that the variety of libraries available in Go is more limited than older languages, but I have hope that it will change rapidly.

<http://www.joelonsoftware.com/articles/fog0000000017.html>

<comment><USER45> I am not asking it to have anything, the article is insulating that GO is the new go to language, it is not because it doesn't have mature and comprehensive libraries. When I make a decision to use a particular language I don't wan't to handicap myself, you need as much edge as possible. In 10 years maybe Go will have a vast array of mature libs but until then I shall be choosing Python and C.

<comment><USER3> I hesitate to contradict you, but the title and content of the article is steeped in the future tense.

</comment></comment></comment></comment></comment></comment><comment><USER47> Go is awesome, but why must we limit ourselves to one language?!

My dev plan used to be Python for rapid prototyping and C for speed optimization. With the advent of Go, I find I'm moving the infrastructure- level Python work into Go and replacing many of the C-oriented middleware tasks with it as well. I'm sure this will evolve as the libraries grow, but I don't see Python & C going away. Nor do I think this is the vision at Google. I suppose this is what is meant by "systems language".

I think Go could end up being the under 35-generation's version of Lisp (in terms of love affair with language structure, etc.).

</comment><comment><USER48> No, it is less expressive than Ruby and JS and so will not be as popular with the masses who optimize for LoC.

</comment><comment><USER49> Is Google behind all this hype ? There isn't a day without a Go article somewhere.</comment>


Show HN: Quicksand - Build 2D Games for iOS and Android with JavaScript - <AUTHOR> http://www.quicksandapp.com

<comment><AUTHOR> I've just finished building a first prototype and it would be great to get some feedback on it.

The idea behind the App is that especially beginners can achieve results quickly and make a game for iOS and Android and possibly more platforms (including Canvas) later on.

Quicksand uses the JS bindings of the Cocos2D-X framework (written in C++) which means that while you program in JavaScript the actual drawing will happen via OpenGL(ES).

Can you see yourself using this to build a game?

What platform would you want to develop for?

Let me know what you think! Thanks!

</comment><comment><USER2> Looks really nice! The example preview is a very nice feature, especially if you are new. I also like the ability to jump to a snapshot while the game is running. This can save you a lot of time. I think I will use this for creating Android games. JavaScript is more pleasant than Java in my opinion.

PS: Nice to see someone from Germany who is only an hour and a half away.

<comment><AUTHOR> Thanks for the feedback!</comment></comment>


Ask HN: Why are p2p CDNs not as prevalent? - <AUTHOR> P2P models make ddos-ing much harder and can help deliver content faster as well.<p>I see many solutions for the delivery of video via p2p (such as Peer5), but don't see any applied for other static assets. Are they just not feasible for smaller sized data? <comment><USER2> I've seen lots of potentially usable p2p CDN ideas, from storing data in each visitors browser & using them to serve other visitors said static content, to projects like IPFS where you can have a distributed website. The ultimate problems are static asset storage & distribution, DNS (how'd you make a fault tolerant, censorship resistant DNS solution that is updatable in nearly real time), and any database component that a site may need.

Most of these are solved issues[1], but it breaks down to site operators don't want to put in the extra effort or risk (what if a page has assets not load, or worse, bad assets are loaded), and the apathy of the average user prevents a web of trust or installation of any extra software from occurring unless it is drop dead simple and requires zero maintenance.

As soon as someone can bundle up these technologies in a nice package for both site owners and end users, they'll have a killer solution to improve site reliability & reduce operating expenses (by offloading CDN costs to the end users).

[1] - [https://github.com/redecentralize/alternative- internet](https://github.com/redecentralize/alternative-internet)

<comment><AUTHOR> IPFS, in particular, plan to have native browser support via a Javascript dependency. There was also PeerCDN (and bunch of similar clones), but they all don't tend to stick around for long or get widely used even though the setup is supposedly one line.

<comment><USER3> The problem with PeerCDN and other WebRTC based solutions is that they can't solve the DNS DDOS problem. Since the WebRTC API needs a server for the handshake to start communicating between 2 peers directly.

<comment><USER2> Eh, but the DNS server isn't necessarily the same as the bootstrapping server for the WebRTC API, and in most cases it generally would not be.

</comment></comment></comment></comment><comment><USER4> Windows 10 defaults to distributing updates peer to peer. It has been a reason for outrage among those inclined to be outraged over Windows 10 and/or Microsoft.</comment>


How to Dominate Search Engine Results Working Just 60-70 Hours A Week - <AUTHOR> http://www.bluehatseo.com/serp-domination/

<comment><USER2> This OP is 3.5 years old.

<comment><AUTHOR> It's a classic -- although a lot has changed, the principles haven't gone out of style.</comment></comment>


Ask HN: Review my just launched email newsletter: WeeklyAndroid.com - <AUTHOR>

The last two years I've developed apps, games and other projects for Android, and recently got thinking about starting an email newsletter. Several posts on HN and two Mixergy interviews gave me the inspiration to go ahead and just try, and with a couple of friends I started working on "Weekly Android" - a weekly digest of the most interesting news, apps and games about Android.
http://www.weeklyandroid.com
The last weeks were quite busy with setting up the website and the server backend. We decided not to use a email newsletter service such as MailChimp, because they get too expensive when dealing with a couple of thousand subscribers (as we hope to gain soon :).
Today we sent out the first issue to about a hundred subscribers, and thereby practically launched it! Now everything starts and we will try hard to find all the most important news about Android each week. Finally, we wanted to tell HN about the launch, and request your feedback, reviews, thoughts and ideas.
[Edit] The feedback got me really thinking about using MailChimp which I forfeited before because of the costs and no roadmap for monetization. Thanks! <comment><USER2> > We decided not to use a email newsletter service such as MailChimp, because > they get too expensive when dealing with a couple of thousand subscribers > (as we hope to gain soon :).

Good luck, but the odds are stacked against you. When you get a few thousand subscribers is exactly when you need a service to send the emails for you. You will be blacklisted if you're not extraordinarily careful and even at best your deliverability will still be lower than what you'd have through a professional email service. Spammers have made email hell.

I subscribed, let's hope I get it :). No double opt-in yet...

<comment><AUTHOR> Thanks!

I totally agree - you need to be extraordinary carefully not to land on blacklists. Nevertheless we think it's doable and give it a try. We try hard to follow best practices and have implemented basics such as using a dedicated IP, SPF entries, reverse DNS and basic policies like only emailing user that explicitly opted in.

Any suggestions for additional precautions are strongly appreciated :)

PS: Thanks for the double opt-in hint, it's on the todo list!

<comment><USER3> I guess I just don't understand why you would roll your own. What advantages do you hope to gain in the short run when you have no idea if you'll be around for the long run?

Don't let the excitement of the moment overwhelm you. Building your own email sending system (implementing policies to avoid being black listed etc) complete with analytics is a non-trivial endeavor.

9.9 times out of 10 the smart move is to go with a free mailchimp plan THEN try to roll your own when it gets too expensive.

be smart.

<comment><AUTHOR> You guys are so right - your feedback made me reconsider the current approach and choose to go with MailChimp. Often it's so easy to get intrigued by an idea with interesting code to write ;)

</comment></comment></comment></comment><comment><AUTHOR> Clickable: <http://www.weeklyandroid.com>

</comment><comment><USER4> If you're not going to use a service like MailChimp, I'd highly recommend <http://sendgrid.com> to ensure email delivery.

They give you an SMTP server and make it real easy. For $10/month you can send 10,000 emails.

However, if you're gonna be serious about an email newsletter, that means you'll eventually want analytics. IMO that's the biggest benefit of a service like MailChimp/MadMimi. Tracking opens and clicks is definitely something you can roll yourself, but I'm not sure if it's something you want to tackle. <http://en.wikipedia.org/wiki/Web_beacons>

<comment><AUTHOR> Thanks for the feedback.

For me the real advantages of services like sendgrid and mailchimp are 1) feedback loops with ISP's and spam indexes, 2) analytics and 3) high deliverability. We could roll our own analytics and try on the deliverability, but the feedback loop is totally impossible to get into.

</comment></comment><comment><USER5> Can you elaborate on the service you did end up using? Congrats on the launch. I'm preparing to start a newsletter service myself with local content at first, see if people bite.

I'm studying a dozen of services and any reason to solidify one against another will help. I'm mostly concerned about filtering/categorizing the inputs into geographical or zip codes and I can't figure out the best service with flexibility like that. Campaign monitor is the closest to that.

Also, are you bootstrapping the initial costs alone? server, email splash etc. and have you registered the business yet? You can probably claim those expenses.

Too many questions, sorry! :P

<comment><AUTHOR> We are writing our own backend in Python, with the idea of publishing it under an open source license later on. Perhaps there are other open source solutions for that too.

Since I have multiple servers running for various projects there are no additional costs but the time I need to put into each week. The editors are helping lot too.

As for business registration, the newsletter is just one project of my primary (umbrella) startup.

</comment></comment><comment><USER6> Alright, I'm in. One question: are you going to have tailored emails based on the categories I selected to be notified about, or are you just gathering this info to help you make decisions about what content to include overall?

<comment><AUTHOR> For the first few issues everyone will get the same email, and we use the categories to make the overall content decisions.

If there is enough content in the future, we have the idea to let the backend compile the final mail based on your preferred topics (or leave out the unwanted ones).

</comment></comment><comment><AUTHOR> Update: We've setup a list at MailChimp and updated the signup form on the main website (<http://www.weeklyandroid.com>) to point to the new home of our mailing list :)

</comment><comment><USER7> Mail Chimp is absolutely worth it IMHO. Spend your time on your content.</comment>


Drunk People Are Better at Creative Problem Solving - <AUTHOR> https://hbr.org/2018/05/drunk-people-are-better-at-creative-problem-solving <comment><AUTHOR> Interesting, I like programming at the end of the day with a few beers. Sometimes the code is bad, sometimes its great, I wonder if its worth trying more regularly.</comment>


Internet troll study: Machiavellianism, narcissism, psychopathy, sadism - <AUTHOR> http://www.slate.com/articles/health_and_science/climate_desk/2014/02/internet_troll_personality_study_machiavellianism_narcissism_psychopathy.html <comment><USER2> This is not how I use the word troll or trolling. What this article describes I would simply call 'bullying' or anonymous bullying or in extreme cases harassment.

True trolling is about, among other things, plausible deniability. The troll identifies a pressure point in the collective unconscious of an online community, and then subtly attacks it. Depending on how skilled the troll is, what follows is a lot of attention and a large degree of over-reaction. The troll can then take the moral highground and pretend to be perplexed at these harsh responses, which of courses only provokes even more enraged responses. The cycle can be quite amusing. It can also generate/provoke lots of debate that a community would otherwise not be inclined to start.

It's not about personal attacks.

<comment><USER3> "trolling is a art"

Always summed it up perfectly for me when trying to describe it simply. It's a subtle sentence, it begs to be corrected, and it's sure to incite replies... once someone "takes the bait" it's just a matter of working whatever their weakest point is to incite maximum rage. It's basically a form of social engineering when you boil it down to the basics.

"trolling is AN art"

"yeah, that's what I just said stupid..."

"well I'm not the idiot making simple grammatical erors."

"erors... you sure about that? Listen I went to Harvard for English studies... I think I know when to use A vs AN, it's not like I don't have an degree or something..."

... and the cycle continues ...

p.s. I might enjoy trolling more than the average bear.

<comment><USER4> I bet you also like geraffes.

<comment><USER5> It's "juraffes", idiot.

<comment><USER6> as in gif.

</comment></comment></comment></comment></comment><comment><USER7> These days "troll" just means "someone on the Internet who disagrees with me and says so". The term has been so overused as to become meaningless.

<comment><USER8> Exactly, as is "racist".

<comment><USER9> Solid troll.

</comment></comment></comment><comment><USER10> It's not easy for me to put myself in the mind of an Internet troll, but I have to imagine I'd also be the kind of person who would enjoy trolling researchers by filling out their personality tests in the most shocking way possible. No idea if the study accounts for this possibility.

<comment><USER11> It is notable how little about the actual study this article actually reveals (the study itself is behind a paywall). I'd say the author of the article is just trolling...

<comment><USER12> > paywall

Google search for the title along with with 'filetype:pdf' is what is needed here...

[http://scottbarrykaufman.com/wp- content/uploads/2014/02/trol...](http://scottbarrykaufman.com/wp- content/uploads/2014/02/trolls-just-want-to-have-fun.pdf)

Enjoy!

</comment></comment></comment><comment><USER13> _it also found a relationship between all Dark Tetrad traits (except for narcissism) and the overall time that an individual spent, per day, commenting on the Internet._

Well. That's not good news for ol' sliverstorm.

<comment><USER14> correlation doesn't mean causation. May be Dark Tetrad traits develop as result of the trolling. May be you still have time to stop and save your soul :)

<comment><USER15> Pretty sure online interaction is not a good substitute for real-world interaction, and the latter is necessary for developing social skills and a balanced viewpoint of human relationships.

Chatting to people online is like having all your conversations through a crack in the wall. Except that even the tone of voice is filtered out.

</comment></comment></comment><comment><USER16> This is what people always say. And not to deny it completely, it's just that it's obviously kind of self-serving. If something pisses you off you can just write it off as trolling from a person who is messed-up in all the ways listed in the article. But moreover, any time spent thinking about the narcissism of others is time not spent thinking about one's own.

</comment><comment><USER17> Can self-confessed trolls really be trusted to give honest answers on personality surveys?

<comment><USER18> Survey science involves setting up controls to suss out people filing falsely.

<comment><USER19> Yeah, but how many people conducting surveys are actually practicing this level of scientific rigor? Unless a study specifically points out what they did to ensure the validity of their results, I assumed none of these additional checks were performed.

</comment></comment></comment><comment><USER20> "Dark Tetrad", really? Are they _trying_ to glamorize "being an asshole"?

<comment><USER21> Ah, but did they test positive for the sordid quintuple of the major douchebag arcana?

</comment></comment><comment> vezzy-fnord The study itself is paywalled.

Slate's summary is woefully unconvincing, however.

In fact, some of the described methods they used to identify trolls seemed very inadequate. Something a jolly prankster would latch onto for the sake of humor.

<comment><USER22> Google Scholar to the rescue: [http://scottbarrykaufman.com/wp- content/uploads/2014/02/trol...](http://scottbarrykaufman.com/wp- content/uploads/2014/02/trolls-just-want-to-have-fun.pdf)

</comment></comment><comment><USER23> Internet trolls and trolls in general are absolutely not horrible people. They're in fact miserable individuals who choose to be reviled by everyone else in the world, cause at least it means being acknowledged (if negatively) rather than being ignored. Nothing but a coping mechanism.

<comment><USER24> My boyfriend is actually someone I met 10+ years ago online through a video game. At the time, I did not like him as he was considered a pretty nasty troll. Now that I know him intimately, I am not entirely convinced the teasing/bullying aspect of his personality isn't entirely just his own choice. He doesn't seem very miserable (go me!) but I can't help but think his behavior extends well past him trying to make up for something.

<comment><USER25> If it's not too personal, I'm curious to know what you get out of the relationship.

<comment><USER24> Well we share a ton of interests, have an extremely long common history, his humor isn't too terribly far from my own (I laugh more than he does, but then he'll surprise me and enjoy some extremely low-brow stuff), and most of all we put up with each other's quirks/bullshit without too much hassle.

</comment></comment></comment></comment><comment><USER26> So article basically claims that trolling is modern sadism. We knew that already, in every large enough society there will be people who enjoy discomfort of others.

Real question is: does trolling on the internet help mitigate real life tendencies?

<comment><USER27> >Real question is: does trolling on the internet help mitigate real life tendencies?

Are the effects of Internet trolling better than the effects of real life behavior?

</comment></comment><comment><USER28> trolling can describe also people like zedshaw or theo de raat even linus torvalds. People that have strong opinions often a tinge of humour, and sometimes are right against everybody. I think being confident in your claim even if it goes against the majority can be called narcisism I guess making a point without using the manipulation of feelings based on logic can be called psychopathy (vs empathy/fallacies) I guess also that they speak because they care when they feel a wrong idea is spreading ... I guess we can hardly make a distinction between a troll and someone that is disruptive (innovative)

We should tolerate trolls and love them because in the minority of this population maybe master troll bringing up new ideas.

The fact I am a troll does not mean I am a genius, nor that I have any interest lobbying for the usefullness of trolls :) But I think the non troll way of discussing is creating trolls: using fallacies, not accepting strong logical criticizes that can enforce an idea, the ad hominem based on authority rather than the construction of arguments, the lack of passion and sometimes humor that comes with.

So my point is trolling is beneficial to every communities, and it should stay fun.

</comment><comment><USER29> Since it hasn't been mentioned, here is Torkel Franzen's Internet Trolling Guide (I prefer to call it this; the actual title is _How to make a nuisance of yourself in news_ ):

[http://web.archive.org/web/20070609085706/http://www.sm.luth...](http://web.archive.org/web/20070609085706/http://www.sm.luth.se/~torkel/eget/net.html)

</comment><comment><USER30> Only Christ can judge us

<comment><USER31> The ultimate example of trolling. Well played! Well played!

</comment></comment><comment><USER32> I wonder if these people are indeed being themselves or playing the role of a troll. Or to put it another way, would they behave the same way "in the real world"?

</comment><comment><USER33> The new four horseman.

</comment><comment><USER34> Everyday trolling comes in the format of intelligent people using said intelligence to justify their positions, even if their position is weak or wrong.

It's the result of being too mentally lazy to take the time to see another sides point of view but smart enough to justify their point in a way that's hard to argue against.

It's a very republican mindset.

</comment><comment><USER35> Trolling, like hacking, has hat colors.

I started out as a gray hat troll and became more white-hat over time. We have nothing in common with the black hat trolls and the bullies. Online bullies are (like all bullies) horrible people, but trolling is a different thing entirely. It can be done in a way that doesn't hurt people. The first rule of a decent troll: don't fuck with peoples' IRL.

<comment><USER36> Can you define what you mean by a "white-", "gray-" and "black-hat" troll?

The obvious parallel with security hacking doesn't seem to quite work for me if I think of "white-hat trolling" as a kind of human pentesting because humans who know they are being trolled are unlikely to get trolled by definition.

<comment><USER37> White hat trolling has positive outcome, it helps people to consolidate their ethical immune system, like a vaccine.

<comment><USER38> Is this like a muffler return spring?

</comment></comment></comment></comment><comment><USER39> That's like doing psychological profiles on actors based on the roles they play.

<comment><USER40> I disagree. Actors openly (it's their calling or career, after all) play a role. It's also set in a controlled environment, and everyone knows that.

"Trolls" (I use troll as a synonym for bully) are different in that aspect. They employ anonymity to attack someone. They chose their role as someone's tormentor, which is very real as opposed to two actors on set, who each know what their roles are.

Actors play roles in (fictional and/or other) universes; trolls play roles in ours, which renders all their actions real, and they are aware of it.

P.S: not sure if you were being funny by posting a controversial comment :P

<comment><USER39> >I use troll as a synonym for bully

You shouldn't.

"In Internet slang, a troll (/ˈtroʊl/, /ˈtrɒl/) is a person who sows discord on the Internet by starting arguments or upsetting people, by posting inflammatory, extraneous, or off-topic messages in an online community (such as a forum, chat room, or blog), either accidentally or with the deliberate intent of provoking readers into an emotional response or of otherwise disrupting normal on-topic discussion." \- [https://en.wikipedia.org/wiki/Troll_%28Internet%29](https://en.wikipedia.org/wiki/Troll_%28Internet%29)

"Bullying is the use of force, threat, or coercion to abuse, intimidate, or aggressively impose domination over others. The behavior is often repeated and habitual. One essential prerequisite is the perception, by the bully or by others, of an imbalance of social or physical power." \- [https://en.wikipedia.org/wiki/Bullying](https://en.wikipedia.org/wiki/Bullying)

</comment></comment></comment><comment><USER41> Seems to be standard for the majority of the internet population, not just trolls.

Further, as Tycho points out:

> What this article describes I would simply call 'bullying' or anonymous > bullying or in extreme cases harassment.

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

Trolling is about provoking your enemy into revealing himself. It's not just walking up to someone and saying something rude or stupid. But that's about the most the majority of people can handle.

</comment><comment><USER42> I always knew that only psychopaths aren't Marxists.</comment>


Make real money solving coding bugs - <AUTHOR> https://codeforcurrency.com/problems <comment><USER2> $5 or $10 for tasks that should take 30 minutes or more to code and test? Looks like UpWork only with a handful of jobs.</comment>


Ask HN: Are you ordering takeout? (U.S.) - <AUTHOR> Even in areas that have banned eating at restaurants, at least here in Texas, most of them remain open for pickup/delivery.
It's very tempting with everything that's going on to order some comfort food. But I can't decide whether or how much of a risk that would be. Obviously places are making various efforts to keep things clean, first and foremost being closing the doors to dine-in customers. But I have no way of knowing how extensive the efforts are at a given place (I don't think there's any kind of standard regulation; certainly there wouldn't be any comprehensive enforcement of it). At the same time, it seems like lots of people are ordering.
What do you think? In terms of how much of a risk it might be in general, but also in terms of ways of verifying the level of safety. <comment><USER2> Yes - I'm not concerned about the low risk, it's treat for me and my quarantined family, and I want to support our economy (especially local establishments). We ordered takeout three times this week.

I don't normally tip for takeout, but I've changed that behavior this past week while restaurants and their employees are hurting. I'd encourage others with a stable income to consider doing the same!

</comment><comment><USER3> Bad idea. I was at a Safeway yesterday and I heard an employee in the bakery coughing. Full on Coughing. No other employee said anything. I quickly left the store.

It comes down to trust. These people may have varying degrees of care when it comes to all of this stuff. So if you're up for a game of chance, by all means order takeout.

</comment><comment><USER4> I was nervous but I did it.

I asked them to leave the food and I also washed whatever came in a plastic container.

Here's a CNN article that might help.

[https://www.cnn.com/2020/03/20/health/food-safety- groceries-...](https://www.cnn.com/2020/03/20/health/food-safety-groceries- coronavirus-wellness/index.html)

<comment><USER5> Burger buns, fry boxes, burger wraps, bags, receipts, etc. are all vectors.

Consider that fast food workers are generally living on the margin and will be more tempted to work when sick, in general.

</comment></comment><comment><USER6> Based on my reading it's a very low risk. If you want to reduce it further, give it a quick zap in the microwave or toaster oven.

<comment><AUTHOR> Could you be more specific? Do you have any links?

<comment><USER7> Most takeout containers are microwavable. Remove the lid / wipe down the outsides (bag, etc), use your own cutlery, wash hands after making contact with the bag.

Reheat food item. Plate onto own plate.

</comment></comment></comment><comment><USER8> Texas? I could live off Rudy's indefinitely.

Many sit-down restaurants in SV are offering heavy discounts for takeout to use up perishable inventory and keep some cash flow. QBB in Mountain View is 50% off, for example.

Some casual dining places are offering discounts/ bonuses on gift cards, too.

</comment><comment><USER9> We have a couple times this week. It sounds corny but we figure it's our way to try and help out others.

We've asked delivery drivers to leave food on ground by door and we get it after they leave.

Any little bit helps I hope to at least some of these businesses afloat.

</comment><comment><USER10> I try to limit it in an attempt to reduce risk. I used to order lots of take out.

Turns out, this time is pretty good for weight loss. At least something positive will come out of it.

</comment><comment><USER11> I did, yesterday, BBQ ribs and brisket in SC.</comment>


20 technologists. 5 Angels. 2 companies. 1 weekend. - <AUTHOR> http://angelhack.com

<comment><AUTHOR> AngelHack is an accelerated start-up incubator, bringing together top engineers, designers, and product people in the Bay Area to build an idea from concept to investable start-up in 3 days!</comment>


Google dictionary is no longer available - <AUTHOR> http://www.google.com/dictionary/

<comment><USER2> wtf, used this quite often, it was a great service!</comment>


Tell HN: Perspective - <AUTHOR>

Lately I'm not sleeping well as I'm worrying about a bunch of things, mostly related to money. The following incident, although only a glimpse into someone's tragedy, made me realize that I should shut up and be grateful for what I have. The most important thing in life is health.
-
Today I was coming back from my daily grocery store run when I saw a man lying on the sidewalk right in front of our offices.
He could not get up, could not move his head, he was only able to look around with his eyes and nod yes or no. A lady had already called 911. She said the man was walking down the street, suddenly yelled out and just collapsed.
He was well dressed and about my age (25-35). He could've been me. I stuck around because my girlfriend is a doctor and only a call away.
The ambulance finally arrived and the paramedics knew the young man. He is a (brain) cancer patient and has epilepsy. He has a tumor in his brain and could die any day, walking down the street.
Perspective. <comment><USER2> Thanks I needed to read this today.

No matter what people say or how bad things are for you, be thankful for you health and for all that you do have. There are many in much more dire circumstances than we are in. I have had to keep reminding myself of this, today especially.

</comment><comment><USER3> Reminded me of John Graham-Cumming's incident <http://news.ycombinator.com/item?id=1811718></comment>


Hacking Facebook's Corporate Network for Fun and Profit - <AUTHOR> http://stephensclafani.com/2012/07/31/hacking-facebooks-corporate-network-for-fun-and-profit/ <comment><USER2> That's a pretty serious hole indeed. Good find!

Is the title a reference to [http://blog.andrewcantino.com/blog/2011/12/14/hacking- google...](http://blog.andrewcantino.com/blog/2011/12/14/hacking-google-for- fun-and-profit) or a coincidence?

<comment><AUTHOR> Thanks. Both titles are references to the paper _Smashing The Stack For Fun And Profit_ by Aleph One. <http://insecure.org/stf/smashstack.html>

</comment></comment><comment><USER3> Why don't more companies do this? It seems like a good way to outsource your penetration testing at bargain basement prices.

edit: Well, I would say in concert with your own internal penetration test, not replace

<comment><USER4> It requires a new way of thinking. Crowd sourcing your security and giving an incentive for the person to report the security hole.

<comment><USER5> Here is German? site that does crowd-sourced pen-testing. I have no first hand experience but most testers seem to be from eastern europe.

<https://www.hatforce.com/>

</comment></comment></comment><comment><USER6> I wonder what the deadline is. How much time can pass between me finding a vulnerability and me reporting it before I'm labeled an evil black-hat, instead of a bug-reporting penetration tester?

</comment><comment><USER7> Sounds like this guy had bad timing - [http://www.pcworld.com/businesscenter/article/229396/uk_man_...](http://www.pcworld.com/businesscenter/article/229396/uk_man_arrested_on_facebook_hacking_charges.html)</comment>


Blackmail (2012) - <AUTHOR> http://volokh.com/2012/08/21/blackmail/ <comment><USER2> Matt Levine recently summarised this argument is his usual folksy style:

[https://www.bloomberg.com/opinion/articles/2019-12-02/the- bl...](https://www.bloomberg.com/opinion/articles/2019-12-02/the-blackmail- business-isn-t-easy)

<comment><USER3> That's certainly how the OP got to HN. What Levine seems to be overlooking is that what Boies was attempting was obstruction of justice / abetting after the fact by helping hide evidence of a crime, which is a violation against the State, separately from any civil representation of victims.</comment></comment>


IPhone OS 4 Developer Preview brings multitasking and more to the iPhone - <AUTHOR> http://www.mobilecrunch.com/2010/04/08/iphone-os-4-developer-preview-brings-multitasking-and-more-to-the-iphone/ <comment><USER2> Nice to finally have bluetooth keyboard support. I could never bring myself to use my iPhone as an SSH terminal because typing UNIX commands using the onscreen keyboard drove me crazy. I think landscape 80x24 on the iPhone would even look pretty decent.

I've always been disappointed in iPhone bluetooth support. When we finally got A2DP they only implemented a half-assed AVRCP profile so we couldn't skip tracks with our A2DP headsets. Frustrating. Hopefully version 4.0 of the iPhone OS finally implements this, but I've yet to see confirmation.

</comment><comment><USER3> "Apple is finally bring a bit more organization to the iPhone with folders, too."

How ironic, when it has just been claimed that Apple killed the file system (a ka organization with folders).

<comment><USER4> Definitely an unfortunate choice of name, since the mechanic being used for OS 4 isn't based on the file system or the classic desktop metaphor. (It looks like a cross between the Dashboard widget selector and the Dock's grid views under Mac OS X.)

In a way, it's a return to how the original Mac handled folders while using the original MFS. (Folders were an illusion provided by the Finder; the file system didn't know about them.)

</comment></comment><comment><USER5> Well who knew? The iPhone really _does_ need multitasking.

</comment><comment><USER6> I just read the Apple docs, and it's not multitasking in the sense that the world thinks of multitasking. It's more like suspended animation with selected background tasks or events (playing audio, voip, location events, "I need more time to finish my work"' and prescheduled events). This is from a first read of documentation and I haven't coded anything up yet to play.

<comment><USER7> It's under NDA.

<comment><USER6> The information I described was released to the public yesterday. I didn't describe any of the API or class reference.

</comment></comment></comment><comment><USER8> Wait, you _couldn't_ set the wallpaper with previous iPhones?</comment>


Why I left Google - <AUTHOR> https://medium.com/this-happened-to-me/c02f1ff471c6

<comment><USER2>
        The main reason I was resisting
        was because I would be giving up
        the safety and prestige associated
        with life as a Googler

We all have issues with leaving safe jobs.

*edit for style</comment>