Uber users with low phone batteries more likely to accept surge pricing - <AUTHOR> http://www.cbc.ca/news/technology/uber-surge-pricing-1.3593940 <comment><USER2> Right now, even with surge, they seem to be a bit cheaper than the normal city taxi but I would bet that as soon as there will be no more competition they will raise the price AND still do price surge. In the end, we will pay more than we used to.

Uber seem to be always on the edge between aggressive profit and shady business.

EDIT: Don't think by my comment that I meant the taxis are better. I was just saying that right now, this is a great deal in most cities where Uber does offer their services but seeing how hungry they are for max profit, I doubt this will last and eventually we will realize that a broken system was replaced by another broken one.

<comment><USER3> For what it's worth, here are the prices of my last few uber rides:

      $4
      $4
      $2
      $2
      $2.50
      $1.75
      $2
      $2
      $3.75

These prices are so low that it would be more expensive to take public transit, let alone a taxi. The trips were pretty far, too.

It's obvious that this can't last, but it's pretty great for the moment.

EDIT: A few clarifications: These were in Chicago, and I haven't omitted any rides from this sample. Those really are the last 9 UberPool rides.

The reason it's so cheap is because Uber keeps carpet bombing my phone with 50% and 75% off promo deals. I don't know why. The two types of deals are "Your next 5 rides are 50% off" and "All rides between 4pm and 7pm are 75% off."

<comment><USER4> Plus the $5 base fee, right?

So that's not nearly cheaper than taking public transit.

For example if I get an uber ride between my apartment and the train station, it's close to $2-3, but that's on top of the $5 base fee. So I could either pay $7-8, or I could pay $2 for the bus.

<comment><USER5> Where do you live that theres a base fee?

I've never heard of that

<comment><USER6> In Stockholm there's a 40kr (~$5) base fee for UberX: [https://www.uber.com/cities/stockholm](https://www.uber.com/cities/stockholm)

For UberBLACK that's 50kr (~$6), and UberLUX starts out at 100kr (~$12).

</comment></comment></comment></comment></comment><comment><USER7> In the article: "..the company can track your smartphone battery life.."

They ARE tracking my battery, all the time!

I looked into the HTTPS-trafic from the Uber-app (with MITMproxy) and it is one of the few that send my battery and charging status on a regular basis:

              "battery_status": "unplugged",
              "battery_level": 0.73,

<comment><USER7> It would be interesting to run a script that changed the battery status data in the HTTPS-trafic to make it look like it is dropping fast.

Just to see if there is a correlation with the price, waiting time and available drivers I am getting back.

<comment><USER8> And if so, get lower rates by running a script which lies to Uber and says the battery is plugged in and at 100%.

<comment><USER7> Then I would set up a proxy through my home server to change the battery- status based on my need

<comment><USER9> But isn't your need to always pay the minimum amount?

</comment></comment></comment></comment></comment><comment><USER10> I wonder how much of this is also due to poor impulse control. People with stronger impulse control are more likely to charge their phones fully beforehand, and/or minimize their usage of it, so as to keep their charge at a healthy level. Such people are also less likely to accept higher surge prices, and choose alternatives that are cheaper but less convenient.

<comment><USER11> Or people have worse impulse control when they're already annoyed at their low battery.

<comment><USER12> Or people need to get home and if their phone dies they'll be stranded.... been there.

</comment></comment></comment><comment><USER13> I wouldn't be in the least surprised if companies will use your previous buying behavior to give you a custom price.

It's not all that different from a store/car salesman sizing you up based on clues like your clothing and quoting a price based on that. Home repair contractors will also size up the value of your home and give you a quote based on that for the same work.

I know I've been treated differently by bankers and car salesman based on my dress.

<comment><USER14> > I know I've been treated differently by bankers [...] based on my dress.

This is very true. At one point I managed a bit of money in a Wells Fargo PMA. It was fun to dress and groom similarly to The Dude, wander into branches like I was lost, and get treated like crap until they looked at the screen. Invariably they quickly summoned a manager to whisk me away to an office and asked if I wanted coffee, and their demeanor immediately changed. It became a personal hobby of mine for a while because they _very_ obviously treat the "normals" differently than Premier accountholders. (Doesn't work at my new bank, sadly.)

I'm sure a number of folks here retain balances that far exceed my own at the time. Try this sometime. It's a fun psychological demonstration.

<comment><USER15> It's not psychological, it's just business. There's a relationship between wealth and how you dress, and banks couldn't give a shit about poor people.

<comment><USER14> > There's a relationship between wealth and how you dress

There most certainly is not, full stop, and this is the psychological aspect to which I am referring and colorfully exploiting in my anecdote. Someone who hangs out on Hacker News should realize this, since our profession in particular has minted a large number of people who are exorbitantly wealthy and still wear Old Navy flip flops and hoodies. Poor people also inherit Prada, and quite a few hucksters within multiple industries dress in a particular way to exploit this psychological conditioning while having no money at all.

This is the _entire point_ of my comment, and assuming that relationship exists says more about your subscription to certain expectations and conditioning about people than your remarks on "business." It's actually a disservice to yourself to assume there is a relationship between wealth and style based on customs that are increasingly becoming dated.

<comment><USER16> There most certainly is. You've pointed out some exceptions but do you really think that on the whole they're not correlated? Having more money means people can afford to dress better and are more likely to travel in circles in which dressing well is important.

This may be a bad thing, but it's a reality that people are attuned to - it's a useful heuristic even though it's imperfect. Should you treat people badly because of it? No, but you shouldn't treat them badly even if you were 100% sure they weren't wealthy. That's a separate problem.

<comment><USER14> Okay, but ask yourself if that's an actual correlation or an imagined one based on customs and psychological factors. (Which is my point.)

The assertion was that "there is a relationship," without any sort of qualification. I'm saying that relationship only exists because of the belief itself and if we all stopped believing it tomorrow, there would be no relationship any longer. So it's not really a correlation at all and only an imaginary one that has largely built itself up on conditioning, upbringing, and so on.

I'm not saying you're wrong nor denying a tenuous correlation, I'm saying it's faulty to assume a correlation where one only exists due to external factors, and that leads to the problems that both you and I point out with the correlation.

<comment><USER17> > if we all stopped believing it tomorrow

Similarly, money provides no power in society to the person controlling it. Because if we all stopped believing that it would continue to work in the future, it wouldn't.

... This is an obviously incorrect argument! There are things that occur only because of widespread belief. Nevertheless, those things do occur!

</comment></comment></comment></comment></comment></comment></comment><comment><USER18> They say they're not going to use this data to set fares, but honestly, if my battery's dying, I actually do want to pay more if it means a driver's more likely to agree to pick me up before my battery dies. In general, I wish I could turn on surge pricing for myself.

<comment><USER19> A local taxi app here in Bogotá has this feature, you can say your ride is a "VIP" ride and choose an pay some extra money to ensure you get your taxi faster.

<comment><USER20> Uber has that in New York if you ride enough

</comment></comment></comment><comment><USER21> >Chen said it's just "an interesting kind of psychological fact of human behaviour." He stressed the company is not going to act on the information to set fares.

...but battery optimization of the Uber app is now a lower priority, amirite?

takeaway: giving your battery status information to apps that do not explicitly need it for core functionality is a bad idea.

</comment><comment><USER22> From the article:

> Chen also said people are getting used to the surge and Uber has seen demand > during peak periods drop by a much smaller amount than when it introduced > the system.

Doesn't that mean that surge pricing is starting to fail? Isn't the whole point of surge pricing precisely to spread demand out so it's not all concentrated at peak times?

<comment><USER13> Wouldn't surge pricing also increase the supply of available Uber drivers?

<comment><USER23> That was one of the stated goals but in practice it doesn't, according to some folks at Northeastern.* Uber says they're wrong, and Uber is certainly in a position to know, but I personally don't trust PR people farther than I can throw them, so who knows.

*[https://www.propublica.org/article/uber-surge-pricing-may-no...](https://www.propublica.org/article/uber-surge-pricing-may-not-lead-to-a-surge-in-drivers)

</comment></comment></comment><comment><USER24> I'd be curious to see if certain locations trigger surge pricing, too. My wife and I got sideswiped about a month ago, had to go to the ER in Austin.

Got out, had no way to get back to our truck, nor to our house an hour outside Austin. Called Uber, figuring we'd at least get a ride back to the truck to get our stuff, and see if any friends could take us the rest of the way home.

Despite nothing going on in town that night, and only being about 8:30pm, the app warned me of surge pricing, saying it would be 1.5x the usual fare. Didn't have many other options, and had been happy with Uber in the past, so went ahead.

Driver was cool, and not only took us back to the truck, but drove us all the way home, complete with a flat tire we helped him change on the side of a busy, dark toll road, and running out of gas.

Wound up being $98, and that guy really earned his tip. I still wonder if the fact that we called from the exit of the ER triggered surge pricing, though. Not a great time to experiment, but I could've probably walked a few blocks and tried again, if my wife wasn't in the shape she was in at the time.

<comment><USER25> I have to ask for clarification. Did you run out of gas, or did you only run low on gas?

Running out of gas seems like a real unfortunate thing to have happen during a paid ride and falls pretty squarely on the shoulders of the driver.

<comment><USER24> Thankfully, it wasn't sputtering on the side of the road out of gas, just the dashboard light coming on indicating that that was 10-30 minutes away.

</comment></comment></comment><comment><USER26> The real question is why Uber has access to battery status information.

<comment><USER27> Apps are told when a phone's battery is low so that they can change into a battery conserving state.

<comment><USER28> I'd rather uninstall battery-hogging apps

<comment><USER29> It rather depends on why they are hogging the battery.

Example #1, since it's an "app" you can't remove but that many (I'd guess not far away from most?) people use, is Mail. I wish my email servers would send push notifications, but they don't, so Mail is constantly checking for updates. That uses battery, but it's something I want it using battery for. And then in battery saver mode, it stops automatically checking, so you won't notice any new emails until you either turn off the mode, or go into Mail and manually have it sync.

</comment></comment></comment></comment><comment><USER30> Maybe people who run their phone all the way down are just the type who are less careful with their pocketbook

<comment><USER31> You don't use your phone once it's below 60%?

You are an edge case, my friend.

<comment><USER30> I took it out to make it less about me. When my phone gets below about 60 I turn it off and use it only when needed. I don't want to be in a situation where I need it and don't have it.

I'm also the kind that carries around emergency money in his wallet and has a first aid kit and spare headlight in his car. In fact, I keep a spare credit card in my desk drawer with my passport so that if I lose my wallet I won't be without money for a few days. Thanks dad, you taught me well

<comment><USER32> under 60%, really? That seems like overkill...

<comment><USER30> It's probably mostly lifestyle driven. If someone takes public transit (say, living the bay or ny) as opposed to their own car (say living in houston or la), there's one less charging opportunity.

Then if someone has a job where there's lots of meetings or lots of walking ... etc ...

For whatever reason, in my life at least, it's almost always north of 80%. And I don't have some special smartphone (in fact, I don't even know the model offhand). This has been a consistent story since I started carrying mobiles 15 years ago

<comment><USER29> I really don't follow your logic, if you hardly ever use more than the first 20% of the battery, why do you need to leave three times that amount as your safety cushion by turning off when you get down to 60%?

I don't drive, but do carry a small USB charger with me anytime I either go out for most of the day, especially if for work, and sometimes on nights out. I still can get to the end of a long day having used all of both my phone's and my charger's batteries. But I don't turn my phone off before it gets to 9%, because 9% is more than enough to do whatever emergency thing I might need my phone for at the end of the day. I'd be able to turn it back on and... make a few phone calls. Or order and wait for an Uber. Or look up transport options on Google Maps. Or open my bus/train ticket app to get on-board.

(I do, however, often think ahead and would sometimes put battery saver mode on even when I'm as high as 80% charged, if I know it's a long time until my next charge, it means people can still contact me but there might be a slight delay, it means I can still use it soon as I pull it out of my pocket, and it means I'm much less likely to need to turn it off at all.)

<comment><USER30> I understand that. The reality is that it almost never gets below the top quintile ... so if I see it getting near 50, then it's very likely going to get to be a zero condition.

</comment></comment></comment></comment></comment></comment></comment><comment><USER33> This came out of an interesting interview in this episode of The Hidden Brain:

[https://itunes.apple.com/us/podcast/hidden- brain/id102890875...](https://itunes.apple.com/us/podcast/hidden- brain/id1028908750?mt=2#episodeGuid=606d1336-b47b-4508-8c7f-feceb13df764)

<comment><USER34> Here's the link to the write up by NPR Hidden Brain:

[http://www.npr.org/2016/05/17/478266839/this-is-your- brain-o...](http://www.npr.org/2016/05/17/478266839/this-is-your-brain-on- uber)

</comment></comment><comment><USER35> I expect Uber to eventually show prices based on how likely someone is going to accept 'surge' prices and how large a surge someone is willing to pay.

<comment><USER36> Could also mean that those surge accepters will find faster rides. Since they're not marked cars, you (as someone who may not accept surges) will never know that an Uber driver is passing you by for a juicier passenger.

<comment><USER37> That's how it already works; a nice aspect of surge pricing is that if you are willing to pay, you don't have to wait longer than you otherwise would.

I view the GP as suggesting that Uber has an incentive to show some people a larger surge price than what the market would suggest since those people will pay it anyway. (And people don't have enough information to know if Uber is charging them more because they can get away with it or if that is the price that anyone who wants a ride would pay.)

</comment></comment></comment><comment><USER36> Surge pricing = new name for Value Based Pricing [https://en.wikipedia.org/wiki/Value- based_pricing](https://en.wikipedia.org/wiki/Value-based_pricing)

<comment><USER38> Web 2.0, when the marketing team doesn't let retarded technical names make it to production.

</comment></comment><comment><USER39> > Company researcher says Uber won't be acting on the information to set fares

I don't believe that.

</comment><comment><USER40> (on the risk of being downvoted)

People with Appendix attack, stroke, stab wounds would be likely to accept 100x surge. If only Uber was able to detect them.

</comment><comment><USER41> The company has determined that customers are more willing to accept surge pricing if they have a medical emergency and need to get to the hospital. Oh, your battery is low too? Well, now you are really screwed. Dynamic pricing!

</comment><comment><USER42> I thought that HN loved the "price for vague, not for cost" mantra. That's what they're doing when they charge you more on low battery.

</comment><comment><USER43> Yeah, it's will could be

</comment><comment><USER44> Its still way cheaper than regular taxis here in Kolkata and thank you power banks.</comment>


Ask HN: Django/Python vs Grails/Groovy? - <AUTHOR>

Hey Guys,<p>We have an initial version of our product ready on Grails. However, before we move forward, we want to make a call between using Django or Grails. The product is basically an API and some templating. The team comprises of people who are comfortable with both frameworks and can easily make the switch from one to the other. Based on the research I've done online, I feel both frameworks are very similar. Groovy is just about as easy to develop in as python and ecosystem-wise Java doesn't have any significant advantage over Python (at least as far as the web is concerned). Also, Grails can do pretty much everything that Django can do (including schema migrations now which people seemed to complain about in some older posts I read). Personally, I am a django guy and haven't developed a lot in Grails (just basic stuff). What would be some compelling arguments to switch to Django over grails or should we stick with grails? <comment><USER2> For me it is a language decision and not a framework decision. And I love Python more. Also in general I think languages and frameworks backed by a community instead of single company are better in the long run.

<comment><AUTHOR> I agree with you about community vs single company. We live in a world of a shared knowledge base and a good community will beat out a company. However, I am more interested in getting objective points. For example: 1\. Impact on development time? 2\. Ease of deployment and scaling? 3\. Support from cloud providers like heroku, amazon, etc.? 4\. Does integrating java in grails slow the development time? 5\. If you have to "break" out of the framework to do something different, is it more difficult to do it in grails or django?

</comment></comment><comment><USER3> Why did you choose Grails for the initial version of your product? Is that particular reason still applicable? Why are you reconsidering that decision now?

Answer those and your question is answered.</comment>


On Being a Free Software Maintainer - <AUTHOR> https://feaneron.com/2019/03/28/on-being-a-free-software-maintainer/ <comment><USER2> This was an enjoyable read for me, well-written and reflective and more importantly: critical without being overtly cynical.

There's one thing that's always been kicking around in the back of my mind since I started getting involved in various open-source projects the last couple years that was missing, though: Despite all the unpleasant parts of our participation, we're actually very fortunate to have that inner drive to roll up our sleeves.

There have been so many millions of humans that have tried to answer the call of their era's needs and leave things better than they found them, almost always with scant chances of success and even smaller chances that any of their labors will be faithfully documented and offer them some form of a legacy. While I know VCS often creates its own headaches, it is always silently creating that faithful record of our labors. Sure, there's a good chance that those that come after us will never have any cause to stumble across that one section of the commit log where your ingenuity quietly dominated a problem that people had tried to solve for years, but even so, it exists. I figure between that small perk and the fact that we can listen to whatever music we like or throw up a comforting old TV show from childhood on the second monitor while we do our thing, we have it pretty good even at the worst moments along the way.

</comment><comment> phoe-krk As a person who is developing a free software project out of my own passion and will, I wonder if this is what I will think and feel several years from now on if my project gains traction. In a way, isn't this the kind of fate I coin for my own self now?

</comment><comment><USER3> Makes me feel bad for complaining about gnome calendar being buggy...</comment>


XML or JSON, and that is not the question - <AUTHOR> http://byterot.blogspot.com/2016/05/xml-or-json-and-that-is-not-question-msbuild-dotnetcore-asp-net-microsoft.net.html <comment><USER2> All APIs should support both options.</comment>


Magic: The Gathering Is Turing Complete (2012) - <AUTHOR> http://www.toothycat.net/~hologram/Turing/index.html <comment><USER2> There lots of maybe-valid criticisms about this setup- oh, you have to use so many game mechanics to make this work; you need to have 4 players all working together to do it and get just the right conditions; this can never happen in real play.

You miss this point.

Once, as an undergrad, I had just learned about the O(n) selection algorithm (you can get the kth largest element in an unsorted list in linear time for any value of k, which is awesome)[0], and mentioned it to a grad student friend, but said "It's O(n), but the constant in the front is enormous, so it's usually totally impractical". The reply has stuck with me ever since: "I doesn't matter if this particular algorithm has a big constant. What matters is that this algorithm proves it is even _possible_ to accomplish this task in linear time. It might not have been."

Similarly, this Magic: The Gathering Turing Complete proof is contrived, silly, impractical, and you are welcome to scoff at it all you want. The point wasn't to make something practical, it was to prove _it can be done_. Now all that's left is finding a practical way to do it too.

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

<comment><USER3> There are two types of algorithms . Ones we can implement with reasonable time. Then the others where we can't implement in a reasonable time at this moment.

<comment><USER4> Have you ever heard of an omega or theta bound?

<comment><USER5> I might have - give me a minute to check the owner's manual for my hypercomputer.

</comment></comment></comment></comment><comment><USER6> So mtgox could have been implemented in Magic: The Gathering.

<comment><USER7> Surely it would have been implemented in Magic: The Gathering Online? ;)

(MTGox was a trading site for _virtual_ trading cards, not real ones. It was "MTG Online: Exchange", not "MTG: Online Exchange"...)

<comment><USER8> Incorrect. MTGO is not a true turing machine because it doesn't have infinite tape.

>The model of the tape is as follows. A series of Zombie tokens controlled by Alex represent the tape to the right of the current head

However, it seems that there is a limit to the number of creature tokens in MTGO which does not exist in the paper game.

<comment><USER9> For that matter, a physical digital computer has a bounded number of states it can be in, so it can't be Turing complete at all, if you're going to be really pedantic.

You're only allowed to say MTGO is not Turing complete if you also agree that Java is not Turing complete (because the 32-bit JVM has bounded memory it can access).

<comment><USER10> There's also the infamous video of (well-known professional player) Luis Scott-Vargas "breaking" MTGO by causing the game to wind up in a non- terminating loop of mandatory actions:

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

For those who are confused, the card involved there is Oblivion Ring:

[http://gatherer.wizards.com/Pages/Card/Details.aspx?multiver...](http://gatherer.wizards.com/Pages/Card/Details.aspx?multiverseid=397760)

Its effect is that, when it comes into play, you choose a non-land card in play that gets exiled (removed from play) for as long as Oblivion Ring stays in play, then gets returned once Oblivion Ring leaves play. This game devolves into a situation where there are three Oblivion Rings and no other non-land cards, so: Ring 1 exiles Ring 2, which returns Ring 3, which exiles Ring 1, which returns Ring 2, which exiles Ring 3, which returns Ring 1, which exiles Ring 2, and so on to infinity. The rules state that when a loop like this occurs (which is not often in real play), the game is an automatic draw.

</comment></comment></comment></comment></comment><comment><USER11> This idea inspired the 2011 ICFP programming contest, lambda the gathering: [http://icfpc2011.blogspot.jp/2011/06/task-description- contes...](http://icfpc2011.blogspot.jp/2011/06/task-description-contest- starts-now.html)

</comment><comment><USER12> OT: I have a MTG deck from somewhere between Arabian Nights and before Legends. From those here that still play MTG, are cards still anything worth?

[Edit] Thanks a lot to everyone who answered!

<comment><USER13> Yes - old, rare cards (especially powerful ones that are now considered "broken") have only risen in value.

They're also quite provocative. Once every few years I'll break out my very, very old "power nine" deck and play with it at the local game store. All games stop. Everyone comes to look. People take pictures.

<comment><USER14> I hope you play without sleeves and watch the other players shrivel... From time to time you should mumble: yes peasants! I'm that rich :) ahashahahahahahahzha

<comment><USER13> Sleeves, definitely.

The cards were not that expensive when I bought them in 1994/1995 ...

</comment></comment></comment></comment><comment><USER15> Previous discussion:

[https://news.ycombinator.com/from?site=toothycat.net](https://news.ycombinator.com/from?site=toothycat.net)

</comment><comment><USER16> As someone that does not understand the rules of Magic, how do they get around the fact that a Turing machine requires infinite memory? Presumably a particular game of Magic has a finite set of cards and probably states too?

<comment><USER17> huh? - so we can never build turing machines? because we can never build infinite memory?

<comment><USER18> Yes, computers are not Turing machines but finite state machines. But in practice, this is not very useful since the number of states of a computer is huge, so, Turing machine is a good model for computers. In math, we're not interested in physical objects but models and it turns out the study of Turing machines can be applied to physical computers. When you think of computer, you do not think it as finite state machine, but as a Turing machine. Maybe if you had a machine with 1KB memory, you could think it as a finite state machine, if it's more useful.

Another thing is, most algorithms people deal with are O(1) since people are interested in ints which can represent -2^63 to 2^63-1. But this is just an abuse of terminology, an algorithm that tries all 2^64 combinations would be a very impractical O(1) algorithm. So, we instead use a different model, and pretend integers are arbitrarily long and their length is O(logn) bits. This is now a better model for physical computers.

</comment></comment></comment><comment><USER19> Absolutely awesome. I could probably talk for hours with this guy!

</comment><comment><USER20> I quit playing Magic in 1999 when my 4 friends and I found out we were playing by the wrong rules.

We went into town, to a tournament at a comic shop, and saw the games taking 20 minutes. Ours took 1-2 days.

We tried what was, to us, the "new rules" and we were disappointed, gave up. It was a big blow. Suddenly the cards were less enchanted, the decks were less sacred. Maybe if I had understood the Turing completeness of Magic, I would have had it in me to start a tournament under our rules. Well, I still could if I had written them down. I'm pretty sure they were the best rules.

<comment><USER21> > _Ours took 1-2 days._

...What were you doing?

<comment><USER20> I don't remember the exact difference but it was only a small change from the normal rules that had an exponential impact.

<comment><USER22> That's really curious, too bad you forgot.

<comment><USER20> If I were to re-learn the rules, I could probably point it out. The best I recall is we were skipping a small step in the turn cycle.

<comment><USER23> Maybe it was upkeep-related? There's the phrase "untap, upkeep, draw" and all the "at the beginning of your next turn" cards refer to the upkeep phase if I'm not mistaken, maybe putting upkeep before untap or after draw would lead to some weird long-term mechanics.

</comment></comment></comment></comment></comment></comment><comment><USER24> Shouldn't this be (2012)?

<comment><USER25> Since we're not reading it in Japanese, yes. Thanks!

</comment></comment><comment><USER26> A pencil and paper is Turing Complete. A bunch of rocks in a grid is Turing Complete.[1]

Sorry to be an ass but I can't even guess how many "X is Turing Complete" things I've seen over the years. Turing's point wasn't to define what _can be_ a computer, it was to define the limits of computation itself. Which is a far more interesting topic, hence my irritation with this post.

[1][https://xkcd.com/505/](https://xkcd.com/505/)

<comment><USER27> No, the interesting point is that the rules of MtG are Turing Complete, not that you can express something that's Turing Complete using them as your notation. That wouldn't be interesting at all.

<comment><USER26> >rules of MtG are Turing Complete

Yes, but only if you are:

>using them as your notation

From the linked article:

>The machine below just extends this idea

The author admits he has constructed an artificial scenario under which a Turing Machine is generated. This is exactly the same as using the rules of MtG as a notation to create a machine.

A generalized set of the rules for the game Go is Turing Complete. A generalized set of the rules for the game Go Fish is Turing Complete.

<comment><USER28> Okay, so all you've said is "Go is, interestingly, also Turing Complete". That is interesting and worth-posting-about information. In an attempt to illustrate the futility of the Mtg example with a Go example, you have in fact merely illustrated that in addition to Mtg, Go is ALSO interesting to look at.

Mtg can be shown to be Turing Complete in one (of quite a few, actually) subset of rules. That's cool, and unexpected to many, and worth reading about.

And that's true for any other example of things not usually associated with programming.

(Turing completeness is an algorithmic property, not a "thing" property, so a pencil and some paper, or a bunch rocks, are certainly not Turing complete: you need procedural rules as well, something Mtg has no shortage of)

<comment><USER26> I know I shouldn't bite, but I just want to so bad...

>so all you've said is

Actually what I said was "a generalized set of the rules" for Go is Turing Complete. Go in itself is not, because the end-state of the game is indeterminate. Just as a "regular-ass" game of MtG without a very specific and artificial construction is not Turing Complete, in and of itself.

>That's cool

I can appreciate stamp collecting, and I don't want to say that it's an invalid use of time. There are plenty of worse hobbies. But my point is that any of an infinite, arbitrary, and inconsequential number of conceivable systems are "Turing Complete," and personally I don't find this very compelling.

How many books in the Library of Babel[1] describe a Turing Complete system?

>Turing completeness is/is not

I stated as much in a comment below, or you could have inferred the same by my interpretation of the XKCD comic, but thanks for assuming I'm incompetent and acting in bad faith.

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

<comment><USER29> Are you making the distinction that most MtG _decks_ are not Turing-Complete? Is that what you mean by "specific and artificial construction?"

I think most people assumed that Turing-Completeness requires a specific and artificial construction, which is where the disconnected (and downvotes) are coming from. Especially for something wasn't previously believed to be a model of computation at all, much less a Turing-Complete one.

</comment></comment></comment></comment></comment></comment><comment><USER12> No it isn't.

With some contrieved meaning of the cards, which has nothing to do with the "meaning of the card" in Magic the game, like "State B, Colour 16: Stay in state B, colour this space 18, move one step right." it recreates a complicated and arcane turing machine.

<comment><USER30> Isn't what states "mean" irrelevant to whether it's a Turing machine? I was under the impression that as long as it can simulate a Turing machine (even an arcane or complicated one) is Turing complete and the state could be stored in anything (it's not like electricity has some special property that makes it better for Turing machines)

<comment><USER31> >it's not like electricity has some special property that makes it better for Turing machines

Transmission, storage with magnetic interactions of electrical actions, small size of components, speed of transmission -- aren't these properties that make for more practical Turing machines?

Parked cars are going to take ages to do anything useful with, no.

(IANAComputerScientist)

<comment><USER32> This is just a miscommunication of what "better" means in this context.

No one disputes that a modern computer implementing a Turing machine is going to calculate faster than manually manipulating MTG cards.

However, better here means 'more expressive'. Turing completeness is concerned with whether or not a computational system is 'universal' or not. In other words, whether that computational system can compute everything that another computational system could. If two systems can both be shown to simulate a Turing machine, then that means that those systems could compute the same exact set of things (given enough time).

So with regards to expressiveness (or the things a system could theoretically compute), since a modern computer can implement a Turing machine and a MTG game can implement a Turing machine, they are both the same, and thus neither is 'better'. In other words, the addition of electricity doesn't effect what a system could theoretically compute.

</comment></comment></comment></comment><comment><USER33> No it isn't.

I can forgive the extremely contrived decks, but using a card to completely change the behavior of the majority of your cards doesn't mean the game itself is Turing complete. If anything, this is just showing how you can utilize Magic _game mechanics_ to create a Turing Machine.

<comment><USER34> >the game itself is Turing complete [...] you can utilize Magic game mechanics to create a Turing Machine

Aren't those two statements equivalent?</comment></comment>


Netflix now receives preferential network treatment from Comcast - <AUTHOR> http://www.nytimes.com/2014/02/24/business/media/comcast-and-netflix-reach-a-streaming-agreement.html?ref=business

<comment><USER2> Still on the front page:

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

And more:

[https://hn.algolia.com/?q=comcast#!/story/past_week/0/netfli...](https://hn.algolia.com/?q=comcast#!/story/past_week/0/netflix%20comcast)

</comment><comment><USER3> Your title is literally the exact opposite of what the article says.

The terms of the multiyear agreement, including whether Netflix was paying for its direct connection, were not disclosed, other than to say that the company "receives no preferential network treatment."</comment>


How Stripe Designs Websites - <AUTHOR> https://www.leejamesrobinson.com/blog/how-stripe-designs-beautiful-websites/ <comment><USER2> I suspect there's a huge amount of halo effect happening in this discussion. Company makes good product, company gets funded,company hires good designers, company spends a lot on marketing... people go "wow, amazing design!". Other designers write blogs about it, analyzing and glorifying minute details.

Another company makes good product, no funding, unknown, no brand, hires good designers... no one cares.

So, what do people here think of the design of [https://draftsend.com/](https://draftsend.com/)? (I have no affiliation)

Can someone break it down into the absolutely incredible design that it is?

Rant over, here are my points:

\- Lots of good designers out there, creating well-thought, delightful experiences.

\- Lots of good marketers and copy-writers out there, creating smart, thoughtful copy that makes sense to their target audience.

\- Someone asked, "what are other websites that are in the same league as Stripe's?". Oh, tons of them. See the websites of advertising agencies, design agencies, go look up "beautiful websites list" on a search engine of your choice. And, I'm sure everyone here realizes there's no objective measure of "same league as Stripe", or even Stripe's league.

And finally: Stripe's design isn't great design. It's design that a certain people like. If you're saying it's great, then define for whom.

<comment><USER3> You might enjoy this read: [https://medium.com/@chopeh/the-state-of-design- ff5142fb806](https://medium.com/@chopeh/the-state-of-design-ff5142fb806)

<comment><USER2> Thank you! Best laugh I've ever had on HN.

<comment><USER4> I lost it at the top highlight.

</comment></comment></comment></comment><comment><USER5> Nice article, but please don't draw the conclusion that this design has anything to do with Stripe's success. Rather, they can afford to put this level of effort into the design as a consequence of their success.

Check out the Wayback machine to see early versions of their website.

<comment><USER6> I did just check the wayback machine, and as far back as I could find[0] their design has been really solid. Am I missing something or were you just guessing?

[0] [https://web.archive.org/web/20111007130738/https://stripe.co...](https://web.archive.org/web/20111007130738/https://stripe.com/)

<comment><USER5> That's exactly what I was referring to. That page, while perfectly respectable, doesn't use fancy fonts, drop down menus, etc. which the original article highlighted.

My point is that Stripe's success was primarily driven by the excellent quality of their api and documentation, and not by fancy website design.

That success allowed them to subsequently devote the resources needed to produce the current incarnation of their website.

<comment><USER7> That design is also from 2011, nowadays it looks quite simple but back then i think it had a similar effect on people. Of course it isn't as detailed as the current one, but they are a company that values design a lot (in all areas) and it shows.

</comment></comment></comment></comment><comment><USER8> IMO stripes design is not the important part, for me it's the code snippets that are right there on the landing page.

Every other payment provider (at least until stripe came along) buried the code examples (if there were any) in some detailed spec doc after you had already signed up and were basically already committed.

Putting code on the landing page shows that their API genuinely is simple and time saving.

<comment><USER9> > Putting code on the landing page shows that their API genuinely is simple > and time saving.

Isn't that exactly what a good design is? The main job of a Good designer's is to present a bunch of information in a most accessible way to end user possible

<comment><USER8> yes, but this article just talks about UI design (buttons, typography etc.) which of course if valuable but pales in comparison to dropping snippets of code on the landing page

One other reason why Stripe's landing pages are so beautiful is to let prospects know that the payment form they will put into their application (and therefore will be a part of their UX) will look good by default

</comment></comment></comment><comment><USER10> Off-topic: a somewhat unknown fact about Stripe is that it started as /dev/payments.

Its former CTO explained how /dev/payments became Stripe: [https://www.quora.com/How-did-Stripe-come-up-with-its- name](https://www.quora.com/How-did-Stripe-come-up-with-its-name)

</comment><comment><USER11> Some other design elements that stand out to me:

\- The transition between dropdowns in the top nav. Really smooth, and something you won't see anywhere else.

\- Semi-consistent and sufficiently different color schemes for the different products. See the difference between [https://stripe.com/atlas](https://stripe.com/atlas) and [https://stripe.com/us/sigma](https://stripe.com/us/sigma).

\- Subtle box shadows. They've done this by cranking the blur way up around 30px. For comparison, the Google search bar uses a blur around 1px or 2px.

<comment><USER12> It might be pretty, but my computer just got crazy scrolling both sites. I hope they would design for everybody. Not all of us have 32gb of ram and the latest cpu + gpu combo...

<comment><USER13> Well, I have that and those two sites still lead to CPU overload.

</comment></comment></comment><comment><USER14> As someone who has run a digital agency I was hoping for some insight into their design process, prototyping, mocking, testing etc. Nope. Some CSS properties. I can assure all of you who are unfamiliar with the process that what is discussed in the article is not how they manage to build great pages.

<comment><AUTHOR> To be fair, the actual title was "How Stripe Designs Beautiful Websites". I'm not sure why it got edited. I could see how you made that assumption based on the current title. I was more just briefly touching on how they spice up the design, not the entire process. That could be a whole separate article.

</comment></comment><comment><USER15> Their sliding-photo "About Stripe" page is making the fan on my i7 CPUs run like there's no tomorrow. Over 2 CPU cores spiking up to 100% utilization. I love a great design as much as anybody, but is it really worth the cost of maximizing electricity usage?

Now regarding the aesthetics themselves... the menu text is blurry too, which makes me want to poke my eyes out. [1] Not sure what the issue is but I'm guessing these fancy web fonts doesn't support "high" DPI properly. Just use normal font rendering for everyone's sake.

[1] [https://imgur.com/a/Akpi7](https://imgur.com/a/Akpi7)

<comment><USER16> That's exactly what I also hate. Sometimes mousing over a button makes the fan spining crazily. Websites are more and more cpu and ram-intensive unnecessarily.

They are making a kind of masterpiece to be presented on a gallery than websites useful for everyday use.

Also I have mixed feeling about the whole single page application era. They are impressive on one side and bloated and slow on the other. I liked more when web used to be content (text/image) sharing platform than apps. Browsers today are like operating systems on top of operating system. :( That's both good and terrible.

<comment><USER15> Yeah, I agree with everything you said.

</comment></comment></comment><comment><USER17> I've been designing websites since 97 and it's amazing how hard it is to make things look so simple. Great write up and inspiration for clean design.

<comment><USER18> What are some other sites that are in the same league as stripe.com quality wise? Maybe not necessarily the same "simple" design, but beautiful overall. I find them quite inspiring whenever I land upon them.

<comment><AUTHOR> [https://www.algolia.com/](https://www.algolia.com/)

<comment><USER19> That's interesting. They seem to be using the same colour palette as Stripe. But I find Stripe's website cleaner and more pleasant to the eye. So I think Stripe got better design.

</comment></comment></comment></comment><comment> pablo-massa The article put a lot of attention in the visual design of the page, how Stripe "designs" websites didn't rely only in asthetics.

How the Stripe team write the message thinking on explain clearly what the product does to a specific target audience, how they design a solid and organized information architecture of the site to make it simple and fast to find things, how they work on performance to give a good browser experience, how they work on SEO to increase discoverability, this is a really important part of the design too.

The design community sill have the 2000s phantom of "design is to make it look nice", it is, but many other decisions can create a good user experience design that aren't asthetics.

For example, Dribbble, it captures some part of UX design; the visuals, aesthetics, shapes, use of colors, empathy and more can be seen reflected in those little shots. However there is another large part related to the strategy, information architecture, planning, sketching, etc. that Dribbble can't cover, and that's fine. On Medium you can find some good and complete UX case studies to tell you more stories about design.

Also don't forget that this is a desktop environment analysis of the visual design, phones is a different story, different context and has constraints that sometimes didn't allow you to express visually like in desktop.

<comment><USER20> For sure.

I would really like to see more UX articles aimed at developers - I think that would help combat the "design is only looks" attitude you mentioned, it's a bit more logical/rational than pure graphic design, and doing it well requires a good dose of empathy.

</comment></comment><comment><USER21> Whether you like the way it looks or not, it's amazing how influential Stripe's current aesthetic is:

[https://twitter.com/chopse/status/930935055274225664](https://twitter.com/chopse/status/930935055274225664)

</comment><comment><USER22> While the landing, marketing, and documentation sites look quite polished, does anyone using the site from app side agree that the design is lacking?

There could be good reasons for not changing the application side but the differences are pretty noticible.

<comment><USER23> I use their app, and it's pretty good. It has a few very, very weird quirks in very few places (some radio/menu option interface things are just bizarre and non-standard) but 97% of it is just fine. Even superb design wise. Useability, there's a few minor issues, but what system doesn't?

</comment></comment><comment><USER24> Man it's kinda crazy that in 2017, it's worthy of attention when a design has hover/touch down states for its buttons, but here we are.

Stripe's design team does good work for sure, but what's really striking is how most people building things for screens still ignore all the best practices that have been established over the past 35 years.

<comment><USER25> Yup, and most items on their site of no focus state, which is bad for accessibility.

</comment></comment><comment><USER26> Is a design copyrighted? What's stopping someone from duplicating Stripe's design? The CSS and HTML are both right there in the browser for everyone's viewing. Given how nice Stripe's website is, it's a wonder why it's not copied more often -- and other "nice" websites, for that matter.

<comment><USER27> www.mixpanel.com - here's a big co using Stripe's design as "inspiration"

<comment><USER28> A lot of b2b services have adopted that design style. [https://www.octobat.com/](https://www.octobat.com/) \- [https://baremetrics.com/](https://baremetrics.com/) \- [https://www.intercom.com/](https://www.intercom.com/)

More I can't think of right now...

</comment></comment></comment><comment><USER29> I see repeating threads about Stripe's design, but imho it's just a nice work, not anything particularly astonishing (or maybe it's just a matter of individual taste) - is it just me or anyone else think similar?

</comment><comment><USER30> Wait..isn't "exquisite design" is very personal opinion and what would work for one user does not work another? I am under impression that nowadays any web-site with large audience always exists in multiple versions that are used in A/B testing.

<comment><USER20> when you're critiquing design, you have to do it in the context of the design goals the team had in mind.

So even if Comic Sans (in hot pink) is your favorite font, you would agree that it produces the wrong emotion on, say, a gravedigger's website. Not that I wouldn't absolutely love to see that.

 _Taste_ is very personal yes, but successful designs are more than expressions of taste - they're about solving problems.

</comment></comment><comment><USER31> It shows all the way. When I make a payment somewhere, and the process is smoother and neater and very much better looking than we have generally come to expect, most often it turns out to be a Stripe setup.

Noteable example: FastMail, itself a good exponent of said qualities.

</comment><comment><USER20> > First and foremost, their products are easy to use. That's #1. But right > after that is the design of their products.

Based on this quote and the article, I think that when you say "design" you mostly mean "the way it looks" or "graphic design". That's just one design skill among many, and arguably the least critical one to the success of a product (don't skimp on it, though!).

When you talk about the product being "easy to use", that's because it was designed to be easy to use. Intentionally. Probably through a lot of trial, error, prototyping, and user testing. That's 100% design.

Anyways, taking your writeup as more of a critique purely of the graphic/interaction design, here are some thoughts:

\- I would love to have seen more exploration of how Stripe approached the typographic choices. Is there a system there? What are the roles of the different bits of typography on the screen? Are they using 20 distinct font/color/weight pairings, or 3? What about the emotional impact of the font? Why do you think Stripe (very consciously) chose this font to present themselves? The world of typography is fascinating and quite accessible.

\- The "hovering" behavior on the buttons is more "Interaction Design" than "User Experience". I think these are skillfully done - emotive, but not ridiculous - subtle, but not invisible. It would be interesting to see how the experience gets better/worse as you start fucking with the animation curves/colors.

\- Agreed, they have a great color palette. I would love to have seen your thoughts on why they picked these colors. Is each used in a specific role? See above questions on typography. Also, keeping with the "practical" slant of the article, maybe link to one of the better color palette generators out there?

I think you'll notice that even on the aesthetic level, a lot of the above questions are aimed at teasing out some kind of a "design system" that lived in the designers heads and produced the website you're critiquing.

Good design is never an accident, and if you want to help people design better websites, the most useful thing you can do is help them understand _how_ great design happens. By looking at the tradeoffs and struggles and decisions from other (successful) design projects, you gain some new lenses through which to view your own work.

Anyways, thanks for taking the time to put this together, and please keep writing about design for a developer audience!

</comment><comment><USER32> I implemented Stripe for an edge case at my day job and was impressed by the design. Then it suffered from the _worst_ UI failing, they changed the menu the week after I had written the documentation!

</comment><comment><USER33> Just a warning, :hover on buttons breaks them in iOS (they require two taps, users get confused. Sad!).

</comment><comment><USER34> Is... is this an ad for stripe?

<comment><AUTHOR> Not at all. I don't work for Stripe or have any affiliation with them. Just a fan. I work at Workiva - [https://www.workiva.com/](https://www.workiva.com/).

</comment></comment><comment><USER35> Great post!

<comment><AUTHOR> Thank you!</comment></comment>


Zwift raises $450M investment; Series C round led by KKR - <AUTHOR> https://news.zwift.com/en-WW/191648-zwift-raises-450-million-investment-series-c-round-led-by-kkr <comment><AUTHOR> The VC arm of Specialized Bicycles is one new investor. Zwift plans to start making hardware:

> The investment will be used to accelerate the development of Zwift's core > software platform and bring Zwift-designed hardware to market, making Zwift > a more immersive and seamless experience for users.</comment>


Turning two-bit doodles into fine artworks with deep neural networks - <AUTHOR> https://github.com/alexjc/neural-doodle <comment><USER3> These are really cool. Though if you were, like me, puzzled how could some really complex and coherent features come from those simple drawings / masks, have a look at the original paintings that were used as sources and compare them with generated images:

Original #1:

[https://github.com/alexjc/neural- doodle/blob/master/samples/...](https://github.com/alexjc/neural- doodle/blob/master/samples/Monet.jpg)

Generated #1:

[https://github.com/alexjc/neural- doodle/blob/master/docs/Coa...](https://github.com/alexjc/neural- doodle/blob/master/docs/Coastline_example.png)

Original #2:

[https://github.com/alexjc/neural- doodle/blob/master/samples/...](https://github.com/alexjc/neural- doodle/blob/master/samples/Renoir.jpg)

Generated #2:

[https://github.com/alexjc/neural- doodle/blob/master/docs/Lan...](https://github.com/alexjc/neural- doodle/blob/master/docs/Landscape_example.png)

So those new generated images are structurally very similar to the original sources. Neural net seems to be good at "reshuffling" of the sources. That's probably how things like reflections on the water got there, even if not present in the doodles.

<comment><USER4> Thanks for clarifying, I'll update the README. The research paper does a better job of explaining this with its figures!

The algorithm can only reuse combinations of patterns that it knows about, it can do extrapolation but it often ends up being just like a blend. However, you can give it multiple images and it'd borrow the best features from either—for example drawing from all of Monet's work. (Needs more optimization for this to work though, takes a lot of time and memory.)

As for the images, as long as the type of scene is roughly the same it'll work fine. The fact it can copy things "semantically" by understanding the content of the image makes it work much more reliably—at the cost of extra annotations from somewhere. With the original Deep Style Network it's very fragile to input conditions, and composition needs to match very well for it to work (or you pick an abstract style). That was part of the motivation for researching this over the past months.

<comment><USER3> So if I understood well, this GIF shows you - human being - <USER2> possibilities / limitations of your method, hand tweaking it for one particular image?

[http://nucl.ai/files/2016/03/MonetPainting.gif](http://nucl.ai/files/2016/03/MonetPainting.gif)

That is, the final image, the one that looks the best, is the result of you doing tweaks to doodles to get something that neural net can then fill-in convincingly?

Or are these a different runs of the same method based on the same inputs, that have some natural variability, and you selected the one that looked the best?

Or are these progression steps in one run of the automated algorithm?

Language in the blog post is kinda ambiguous, not sure which steps were done by algorithm and which by a human being.

<comment><USER4> Exactly, the doodling is done by humans and the machine paints the HD images based on Renoir's original. I've edited the blog post to clarify.

<comment><USER3> That part was clear :)

What still isn't clear to me is how exactly that "workflow" demo (and consequently the "money-shot" final generated images) happened.

There is a progression of generated images with increasing quality. Who did which steps in those iterations?

Blog post uses ambiguous language: "N-th image tries / removes / fixes", etc.

It's not clear though if it was:

1) algorithm steps (keep computing more till generated image looks good), or

2) human being tweaking inputs to fixed algorithm (keep painting new input/output doodles till generated image looks good), or

3) human being tweaking algorithm itself (change code till generated image looks good).

<comment><USER4> The algorithm does the same thing every time (it's triggered on request), only the input is changed by the human modifying the doodle—as shown in the video.

The output gets better because through iteration the glitches are removed incrementally, and it converges on a final painting that looks good!

</comment></comment></comment></comment></comment></comment><comment><USER4> (Author here.)

For details, the research paper is linked on the GitHub page: [http://arxiv.org/abs/1603.01768](http://arxiv.org/abs/1603.01768)

For a video and higher-level overview see my article from yesterday: [http://nucl.ai/blog/neural-doodles/](http://nucl.ai/blog/neural-doodles/)

Questions welcome!

<comment><USER5> You should make an app for that (seriously)!

<comment><USER6> I can't believe he posted it up on github before doing this - there's so much potential for this to go viral once it's packaged with a doodling app.

EDIT: Actually reading more closely I guess 10 minutes on a machine with a decent GPU is a lot of server load :|.

<comment><USER4> The research is based on work I did writing and improving @DeepForger ([http://twitter.com/deepforger](http://twitter.com/deepforger)), an online service for "basic" style transfer. The GitHub is a standalone version for learning and education, which doesn't do HD rendering as well yet and uses a bit more memory. The positive side, however, is that opening up the source code makes these ideas progress faster!

We'll try to integrate the idea of semantic style transfer into @DeepForger in the future, but this require quite a bit of work to get it to reliably understand portraits or landscapes without anyone's intervention. The fact it does require these semantic maps for all images makes it less straightforward to release as a service.

<comment><USER7> One question, is the semantic map created on the fly at the same time as the final image is composed, or are the maps pre-computed?

<comment><USER4> The semantic map remains static during the optimization, so it can be provided as a pre-computation (e.g. pixel labeling, semantic segmentation, etc.) or done by hand. The ones in the repository are done manually, but now experimenting with other algorithms. Anything that returns a bitfield or masks can be used!

</comment></comment></comment></comment></comment></comment><comment><USER8> I'd love/dread to see this this kind of work (neural nets run in reverse mode) applied to voices and accents.

You could credibly put any words in the mouth of anyone.

<comment><USER9> This basically already exists. Siri and similar TTS voices today are generated off of a lot of recorded speech from a person. There's a lot to get right for it to sound natural, not just hit the phonemes. You have to deal with the transitions between phonemes, declination, etc.

I've even seen a demo converting one person's voice to another (without going through text) trying to preserve the pattern (pauses, stresses, etc.). It was kinda cool, but you wouldn't think it was the other person in a genuine way.

<comment><USER10> Do you know of any projects on GitHub that do this?

</comment></comment></comment><comment><USER11> That's pretty cool. Might speed up asset creation for games by orders of magnitude: Train with concept art, generate the variations via these networks; adds consistency to the output and helps loosen the asset bottleneck / content treadmill esp for smaller studios/individuals.

<comment><USER12> No, it's a gross misunderstanding of what is concept art. A concept art piece is about the idea, not the style; if you take a famous protagonist, say batman, you can have it drawn in a medieval, realistic, sci-fi version, drawn in a stylized, realistic, cartoon way; in each case you will recognize him because the idea, the shape language, have nothing to do with the style of the drawing.

Even for illustrative work, where it can give you a good base, it still sucks, because for actual painters this step (thumbnailing) is actually the quickest; most of the time-consuming painting process is 'finishing', or 'detailing' the rough.

However, where it's great is in giving the ability to inexperienced people to paint well. The hard part of the painting is getting the lightning, color scheme, perspective right, but the finishing process is quite mechanical. So it could ease the outsourcing of some art assets creation.

<comment><USER11> yeah you are right in terms of concept art; I figured that unfortunately more often than not the lines between concept, mood, detailing etc tend to be blurred depending on who looks at it; Also this is not going to replace individual character design or other specific assets, but might remove scalability issues w/ project that require a huge number of different backgrounds, texture variations.

Of course the originial craft to producing high quality output is still needed - and just one image is not going to be sufficient anyway.

As you mentioned, I can also think of giving lesser experienced folks the ability to tinker with scene setup, dimensions, ratios etc and get faster 'final' results, although the 'old school' approach to getting those right before actually detailing something is quite important.

<comment><USER12> >yeah you are right in terms of concept art; I figured that unfortunately more often than not the lines between concept, mood, detailing etc tend to be blurred depending on who looks at it; Also this is not going to replace individual character design or other specific assets, but might remove scalability issues w/ project that require a huge number of different backgrounds, texture variations.

You can already do that in 3D if the overall concepts have been decided and some basic assets are there. Just switching the textures, lightning conditions, and some predefined building blocks do basically the same thing as this algorithm, except it's already part of the pipeline, and it gives you much more since it's 3D.

The other thing is that these algorithms look indecently good when you see a thumbnail, but very bad if you're looking at it too closely. These cool 'concept art' pieces that look good are 90% of what people see, but they do not represent 10% of the concept art work; most of it are boring details of joints, how the blade is strapped to the costume, how windows open, unsexy stuff as can be (that you can't do with such algorithms).

<comment><USER13> beginner artist/programmer combo here, I am sure this type of tools can be very powerfull for prototyping the moods of 2d games, if not parts of 3d games, as for its limitations this method do get the general scene mood rather well. Anyway far better than that shitty programmer art placeholders. The process could let game devs be many times faster and better at finding the right mood in a game, just swapping out the images the program learns from to find a new mood theme for the game got an level of intuitive logic to it, that I am sure can make it very accessible to non technicals. A well made tool of this type would be very good in the early prototyping pipe line for 2d games and more. Would not make even really bad artists jobless, but in the case of specific jobs it would be a powerful tool.

</comment></comment></comment></comment></comment><comment><USER14> I played with something similar for a while, [https://github.com/jcjohnson/neural- style](https://github.com/jcjohnson/neural-style)

What I've found so far is that it takes a while to get good results like something that looks like its own creation instead of an overlap of pictures. There's no exact way to do this. If you modify existing artwork it works well enough since the source is already somewhat divorced from reality but photos are difficult. When it works it's amazing though.

<comment><USER4> From that perspective, this research is two steps further than Neural Style, I wrote about it yesterday here: [http://nucl.ai/blog/neural- doodles/](http://nucl.ai/blog/neural-doodles/)

First, the paper I call "Neural Patches" (Li, January 2016) makes it possible to apply context-sensitive style, so you have more control how things map from one image to another. Second, we added extra annotations (which you can specify by hand or from a segmentation algorithm) that helps you control exactly how you want the styles to map. We call that "semantic style transfer" (Champandard, March 2016).

You're right about it being hard otherwise, it was for many months and that's what pushed this particular line of research! Try it and see ;-)

<comment><USER15> This reminds me of "If Edison didn't invent the light bulb, someone else would have: there were thousands of other engineers experimenting with the exact same thing, a natural next step after electricity came about" (-- paraphrased from Kevin Kelly)

<comment><USER16> One was called Swan, Edison tried to sue him for patent infringement but Edison's lawyers warned him about prior art, so instead he negotiated a joint venture.

You may remember the "Mazda" brand of bulbs

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

</comment></comment></comment></comment><comment><USER17> Looked at the images and honestly thought that someone had posted an April fools joke a few weeks early. Amazing.

</comment><comment><USER18> Very interesting! The thing that amazes me most about these neural network projects is how small the source usually is compared to what they're doing. Your doodle.py is only 453 lines.

<comment><USER19> I imagine between SciKit[0], Thenano[1] and Lasagne[2], the total size is a little north of 453 lines.

[0] [http://scikit-image.org/](http://scikit-image.org/)

[1] [https://github.com/Theano/Theano](https://github.com/Theano/Theano)

[2] [https://github.com/Lasagne/Lasagne.git](https://github.com/Lasagne/Lasagne.git)

</comment></comment><comment><USER20> What data has been used to train the neural network?

<comment><USER4> It's a pre-trained network on image classification dataset from 2014 called ImageNet. The network is called VGG, paper is here: [http://arxiv.org/abs/1409.1556](http://arxiv.org/abs/1409.1556)

There's no additional training apart from that. The neural network is used to extract patterns (grain/texture/style) and a separate optimization tries to reproduce them as appropriate.

<comment><USER20> Interesting. If A is the input image, and B is the style image, then from which of those two images is the NN extracting patterns? And how is the other image used to get the desired effect?

Just trying to get a birds-eye view of the algorithm :)

<comment><USER4> Both images have their patterns extracted by the NN, and the optimization then tries to match the best patches from one image with the other, performing gradient descent to adjust the pixel values from a random start image.

</comment></comment></comment></comment><comment><USER21> In coming years this will create a very strange reality combined with improving VR tech...

</comment><comment><USER22> Have you run children's paintings through this yet?

<comment><USER23> Another suggestion: try running a copy of Tolkien's Middle-earth map to transfer the style to a more detailed USGS-style map [1].

[1] e.g. [https://www.google.com/search?q=usgs+map&safe=active&client=...](https://www.google.com/search?q=usgs+map&safe=active&client=ms- android-uscellular- us&biw=360&bih=559&prmd=ismvn&source=lnms&tbm=isch&sa=X&ved=0ahUKEwim- Kr4nrbLAhXL1CYKHQ_wC88Q_AUIBigB#imgrc=N1UT1Hw5ptb_bM%3A)

</comment></comment><comment><USER24> Exciting! Where can we find image databases for this?

<comment><USER4> You can use any image as source, but to create annotations you have to do that yourself currently. Using simple segmentation libraries (or clustering) can do a good job for certain images, or look at better solutions for semantic segmentation: [http://gitxiv.com/search/?q=segmentation](http://gitxiv.com/search/?q=segmentation)

</comment></comment><comment><USER25> This project should be named Bob Ross.

</comment><comment><USER26> Now please combine this with TiltBrush

</comment><comment><USER27> Finally a way to draw things without learning how to draw. I'll be famous!

</comment><comment><USER28> Would this work with photos?

<comment><USER4> You can specify two pairs of images (content+annotation) and it'll transfer the style from one to another as consistently as possible. The down side is that you need to find an algorithm, neural network, or person to create the annotations. (We're working on training one for portraits only.)

These examples are in the paper above, direct link for convenience:

[https://twitter.com/alexjc/status/705784566657720320](https://twitter.com/alexjc/status/705784566657720320)

[https://twitter.com/alexjc/status/705811208901939200](https://twitter.com/alexjc/status/705811208901939200)</comment></comment>


A painless Q-Learning tutorial - <AUTHOR> http://mnemstudio.org/path-finding-q-learning-tutorial.htm <comment><USER2> I find these step by step tutorial very help in understanding these type of algorithms.

Here's one that uses excel for doing backprop. [https://towardsdatascience.com/demystifying-feed-forward- and...](https://towardsdatascience.com/demystifying-feed-forward-and-back- propagation-using-ms-excel-30f5aeefcfc7)</comment>


Utopia Bets / Apocalypse Bets - <AUTHOR> http://www.aaronkharris.com/utopia-bets-slash-apocalypse-bets <comment><USER2> "In the future, cities will have 40mm people. What needs to be built to make those cities function well?"

Cat defences are going to be a top priority.

<comment><USER3> I am trying to guess what you mean by cat defenses, and I'm pretty sure it has to be one of... Defenses "of" your own cats, defenses "from" the cats of others, or some kind of actual cat-based defense mechanism, "by" your cat... Which one did you mean?

<comment><USER3> Oh... 40mm people</comment></comment></comment>


Twitter is doing 5 things horribly - <AUTHOR> http://anizan.svbtle.com/Twitter-is-doing-5-things-horribly

<comment><USER2> thanks working on a twitter alternative(www.post2zip.com) now have some things to focus on. well, plus users...</comment>


CHIP-8 Interpreter, Assembler and Disassembler - <AUTHOR> https://github.com/wernsey/chip8 <comment><AUTHOR> The Author has a nice blog here [http://wstoop.co.za/chip8.php](http://wstoop.co.za/chip8.php)</comment>


Singapore's electric car-sharing program hits the road - <AUTHOR> https://www.reuters.com/article/us-singapore-electricvehicles/singapores-electric-car-sharing-program-hits-the-road-idUSKBN1E60OF?utm_campaign=trueAnthem:+Trending+Content&utm_content=5a30fc7a04d301331dad3a4a&utm_medium=trueAnthem&utm_source=twitter <comment><USER2> A Singaporean here. The real revolution in transport happening here is NOT electric cars, NOT autonomous cars, NOT Uber/Grab, NOT the bike sharing scourge the likes of ofo.

It is the e-scooters that has been zipping around the walkways and highways recently.

Some heroics... [https://www.youtube.com/watch?v=hn03CUt4fm4](https://www.youtube.com/watch?v=hn03CUt4fm4) [https://www.youtube.com/watch?v=uVDFcnMKNRM](https://www.youtube.com/watch?v=uVDFcnMKNRM)

<comment><USER3> Just thought I'd highlight that the first video is 29 seconds long, but the first 13 seconds is a stitched-on advertisement.

</comment></comment><comment><USER4> We had it in Paris and it is not a success. Cars are too slow and small for real highway use, they are expensive and especially dirty. Hopefully they will improvement on all these points

<comment><USER5> The systems in Copenhagen seem to be fine. I've only used the DriveNow one (BMW i3 cars), but both times the cars were clean. It's not cheap, but cars aren't cheap here either.

They're not intended for use on motorways -- at least, you can only end the rental within the city -- so I haven't tried, but I assume the car is fine. I've seen non-rental BMW i3s on the motorway.

</comment></comment><comment><USER6> I haven't kept up with Autolib (first large city-wide car-sharing program) - it's been over 5 years now, but it's hard to find progress reports.

Can anyone who lives in Paris give us an insight into how things are going?

<comment><USER7> I moved from Paris just over a year ago. We were regular users of Autolib almost from the start, 2012. It has been working very well. The Autolib network has been extended to Belib. Private BEVs can use the Autolib chargers, which are practically everywhere.

I think in a city like Singapore it should be even better. One of the downsides of Autolib is the condition and cleanliness of the vehicles. Some drivers simply don't care and it can take a bit of time before the vehicles are serviced. If the streets of Singapore are any gauge of cleanliness I imagine their vehicles will remain spotless all of the time.

</comment></comment><comment><USER8> There are similar electric car-sharing programs in Beijing and it is quite popular. But it is not as popular as the Bike-sharing programs. Gosh, Mobike (orange) or OFO (yellow) bikes everywhere! I believe this is a good thing if the price is fair and there are enough cars.

</comment><comment><USER9> I moved to Singapore a few months ago. Frankly speaking, the venture sounds ridiculous.

* the public transport is probably one of the best all over the world (even though the locals keep complaining), with completely driverless trains and accuracy that would make the Germans and the Swiss cry in envy.

* like elsewhere in Asia, it's mostly about the price. Nobody except for the hipster expats gives a hoot about going green, Singapore is green enough already. Grab is kicking Uber's ass, even though the app is buggy and the support is poorly organised. Uber is considered somewhat of a "luxury" service.

* Grab, Uber, and the local taxis are available everywhere at a couple of minutes notice.

* because the cars are so expensive, driving skills are not at all universal.

* again, the price. There are traditional rentals companies, SMove.sg ([https://www.smove.sg](https://www.smove.sg) \- a local equivalent of ZipCar, but integrated with the public transportation payment system), and scooter / bicycle sharing everywhere.

Now regarding the self-driving cars in SG. I was very enthusiastic and curious about that one, but was disappointed when I learned more. These guys (nuTonomy?) have their tests around the one-north area where all the startup kiddies are. There is even a sign proudly proclaiming "Autonomous Vehicle test @ one-north". They apparently let outsiders try it out. My associate took one, and it turned out that:

* it's a closed loop, not a real street

* it's slow, golf cart style

* there is a backup car following you with a live driver and engineers at all times

Kinda sad. I was hoping these thingies will go live around 2020. I wonder why nuTonomy even bothered coming all the way here.

<comment><USER10> >* the public transport is probably one of the best all over the world (even though the locals keep complaining), with completely driverless trains and accuracy that would make the Germans and the Swiss cry in envy.

Try Hong Kong trains. A notch better, serving a much higher density population. I also recently moved to Singapore and must admit I'm a bit disappointed with the low frequency, short trains that Singapore deployed.

<comment><USER11> > I'm a bit disappointed with the low frequency, short trains that Singapore > deployed.

Could you explain this a bit more please? I've lived here for 6 years now, been to Japan and Taiwan, consider Taiwan the best of all 3, but cannot compare to Hong Kong as I've never been there.

Taiwan trains are a bit slower than SG, but they are much smoother, where in SG sometimes the older lines (green / red) which still have drivers I believe, are fast and break suddenly that you MUST hold onto something if standing to prevent yourself falling over.

So I'm curious what you mean?

<comment><USER10> Hong Kong trains (and consequently, platforms) are a lot longer, meaning a train can fit _a lot_ more people. They also run more frequently, especially during traffic hour. Mind you, Hong Kong trains also gets full doing rush hour (it's not rare to have to wait a train or two to get in, meaning 5 minutes top).

What annoys me in Singapore, especially with the East West line, is that there are so many people in the morning, yet the trains are tiny and run every 4 or 5 minutes only. You actually have to fight your way to get in and squeeze. I know the Downtown line doesn't seem to suffer as much, as there seem to be a lot less traffic (I assume the wealthier people who live along this line take their car?).

Hong Kong is bound to fail at some point though. They can't add more trains during rush hour, it's too late to make the station and trains longer, and some station are at saturation already. One of them, Admiralty, offers to commute on the same platform (i.e.: exit the train, walk straight to meet your correspondence). There are so many people that you sometimes hardly can _exit_ the train, as the platform is too packed by people trying to get to the other train.

The density of population in Hong Kong (for the actually populated area, not the land as a whole) is staggering though, in my experience / feeling, a lot higher than Singapore or Tokyo/Yokohama.

</comment></comment></comment></comment><comment><USER12> I don't really understand the use of the word 'sharing' in this context. This is just a rental system without a preset pickup location. Same goes for similar bike sharing services as well.

Can anybody tell me if there's an alternative meaning to it?

<comment><USER13> Rental is usually used to denote set time and location (1 hour, 1 day etc returned to the pickup spot). Sharing is completely flexible in regards to both time and location.

</comment></comment><comment><USER14> Singapore seems like the most likely place where self driving cars will take off first. Easy to imagine them banning human drivers altogether, making it much easier for autonomous cars to coordinate between eachother.

</comment><comment><USER15> Question: are these EVs a custom built by Bollore Group or a rebadged Renault Zoe?

</comment><comment><USER16> $.50 / minute in Singapore sounds rather expensive. Is it not?

<comment><USER17> It costs around $50k (Singaporean) to buy the right to own a car for 10 years.

[https://www.lta.gov.sg/content/dam/ltaweb/corp/PublicationsR...](https://www.lta.gov.sg/content/dam/ltaweb/corp/PublicationsResearch/files/FactsandFigures/COE_Result_2015_2017.pdf)

<comment><USER18> For those who don't know what this is about: Singapore each month holds an auction where people bid for the right to drive a car. [https://en.wikipedia.org/wiki/Certificate_of_Entitlement](https://en.wikipedia.org/wiki/Certificate_of_Entitlement):

 _"Before buying a new vehicle, potential vehicle owners in Singapore are required by the Land Transport Authority (LTA) to first place a monetary bid for a Certificate of Entitlement (COE). The number of available COEs is governed by a quota system called the Vehicle Quota System (VQS) and is announced by LTA in April of each year with a review in October for possible adjustments for the period of one year starting from May. Approximately one- twelfth of the yearly quota is auctioned off each month in a sealed-bid, uniform price auction system and successful bidders pay the lowest winning bid."_

For $50k, you can rent one of these cars 100,000 minutes, or 10,000 minutes a year, or slightly less than half an hour a day. And for that $50k you don't even get a car, let alone gas and maintenance.</comment></comment></comment>


Rebrandly: Branded Short Links with Your Custom Domain Name – Now on iPhone - <AUTHOR> https://rebrand.ly/ios-app <comment><AUTHOR> Rebrandly makes it easy to create and share branded, memorable, and pronounceable short links. Branded Links include your personal or company domain name instead of a generic one, e.g. instead of a long and ugly URL or even bit.ly/N9To4, a link like branding.link/marketing will:

Improve your brand visibility Increase trust as well as Click Through Rate on your links Optimize your SEO rankings

Perfect for digital marketers and social media managers, with the Rebrandly App you can quickly create and share Branded Short Links from:

Within any app on your iPhone Directly from your Safari browser with the Rebrandly extension.</comment>


How We Hire: Compensation and Hiring in a Small Startup - <AUTHOR> http://micho.biz/post/117083319566/how-we-hire

<comment><USER2> Holy shit...I read this:

"Remote work penalty: -25%, to account for the loss of communication and productivity"

And nearly choked. Apparently you're expecting your remote employees to just be complete / utter slackers.

<comment><AUTHOR> Good point. That's attracted a lot of criticism to the post.

The rationale behind that is: We want a strong company culture. As a fitness startup, that involves things beyond work, which include working out, brainstorming over walks and lunch, etc.

The way we see it is, we want our team to be based in Berlin. If somebody isn't, that isn't ideal, and thus we offer a lower compensation to discourage it.</comment></comment>


Tips on Writing Dockerfiles - <AUTHOR> http://www.techbar.me/writing-dockerfile/ <comment><USER2> Could someone please register the domain www.isdockerproductionready.com and put a big NO(later Yes) on this so I know when to catch up?

I love the idea and concept behind it so far but I sadly don't have time to check the status and read the relevant blog articles about every cool new OS project i'd like to follow... especially if they are so potentially business critical.

Am I wrong in my prioritization or do others have similar feelings in this regard?

<comment><USER3> By the time something becomes popular its been around for awhile. As far as I'm concerned the time to start taking advantage or at least learning is well before everyone starts saying its "production ready". I agree that we can't learn every new awesome technology. But I think that people have the tendency to find reasons to excuse learning the new technologies, like saying its not production ready or something. Just because you don't have time to learn and carefully evaluate a new technology doesn't mean you need to dismiss it. Just say "looks like it might be great but I can't say for sure because I don't have time to learn how to use it and then evaluate it.". Its just impossible to try every new thing. You don't need an excuse.

If you wait until most people are saying its production ready, that's because most people are already using it in production. If you wait until that point to start learning it then you will be behind.

<comment><USER2> This is definitely correct, but if the developers themselves say explicitly on their blog that they don't consider the current builds production ready, i wouldn't feel comfortable recommending to build something important on it, as it is prone to changes, even if it succeeds.

</comment></comment></comment><comment><USER4> I would be interested learning about peoples techniques for including database dumps into their dev environments. I've been tweaking a Dockerfile for the past few days and its pretty enjoyable to watch the screen go by as it's getting built. Ideally I'd like to replicate everything in terms of our production environment in docker containers so our devs and test changes, but right now I'm taking the small steps. Currently I have a few different bash scripts that are initiated outside the Dockerfile to handle stuff like MySQL, Apache, and Redis configs. But I'm open to a different approach since this isn't cached. I assume after building the base docker container I can just IMAGE it as the future starting point.</comment>


Askers vs. Guessers - <AUTHOR> http://www.guardian.co.uk/lifeandstyle/2010/may/08/change-life-asker-guesser

<comment><USER2> I'm born in CA and live in MN, and well... this applies. CA is a more 'asking' culture, Minnesota definitely not.</comment>


PHP's brighter future? On the "PHP the Right Way" project - <AUTHOR> http://blog.phpfog.com/2012/07/17/phps-brighter-future-on-the-php-the-right-way-project/

<comment><USER2> I'm not going to waste time bashing PHP, that's a dead horse.

I'm just going to say that's it's a bit amusing that of the things he lists as "revelations" python has had since:

1\. when dinosaurs roamed the earth (lambda)

2\. 2003 (wsgi)

3\. years ago (pip/easy_install)

4\. ages (db-api)

<comment><AUTHOR> My point wasn't that these things don't exist in other languages. Again, I'm not saying that PHP is objectively better than anything else. I know not to play that game. All that I'm doing is remaining steadfast in my claim that PHP doesn't deserve all the flak that it gets and that the language deserves consideration for a whole variety of use cases. That's all!

<comment><USER3> But if it isn't objectively better than similar languages in any way, then _why_ does it deserve consideration? "You can work around and/or avoid most of the horrible problems in PHP" isn't a compelling argument in favour of PHP when every other language just doesn't have those horrible problems to begin with.

<comment><USER4> In that case, shouldn't we all be using C?

<comment><USER3> I can't think of any logical way to put your post in context. Why would we all be using C?

</comment></comment></comment></comment></comment><comment><USER5> PHP is still usable, sure, but there's just not many compelling reasons to do so, except in certain cases where it does offer a clear-cut advantage (low- friction, newb-friendly development and deployment of simple dynamic sites, for example).

I also find the "there's tons of spaghetti code in other languages" argument tiresome. That's true, but well-designed languages tend to help keep people off that path - or at least do a better job of doing so. PHP is not one of those languages, hence the need for a "PHP the Right Way".

As asserted in the post, PHP is indeed used on a ton of websites. Most of these websites were written when PHP _was_ the best tool for the job. But languages evolve. Other languages have learned the lessons of PHP and improved upon it.

PHP has done a fine job of "modernizing" itself lately, but it's still stuck with a lower quality overall design than some of the alternatives, and those alternatives have kept moving forward at the same time too. It reminds me a lot of IE's "look, we've implemented that thing that the good browsers had 3 years ago" announcements. It's great that PHP is not standing still, and that continued improvement must be awesome for existing projects that are built on PHP.

But for me, starting new projects in 2012, there's zero compelling case for using PHP, just as there are many old languages that would have been "the" choice once upon a time, but are now replaced by better things.

<comment><USER6> > ... replaced by better things.

I thought we agreed that different solutions required different tools?

It's 2012 and all of our new apps our driven by PHP+Symfony2 with AngularJS on top. This combination has been _huge_ for us (my company, I mean).

Maybe what should be answering is what "things" are better compared to PHP development with equal expertise. Like, what will RoR do for me that my existing setup won't? Why swap Symfony2 for ExpressJS and a multitude of NPM packages?

I'm alays eager, like most of the HN community, to be sold on the next great thing that makes my life easier, code cleaner, and site faster. But aside from language design, I haven't seen any apples-to-apples comparisons on the applications of these "better things."</comment></comment>


How to Blog - 10 Things You Must Know - <AUTHOR> http://www.proudn00b.com/post/1081076818/how-to-blog-10-things-you-must-know

<comment> mike-cardwell You're telling people how to blog, yet your blog content is written in a light grey tiny font on a light blue background and is barely readable.

I read your opening paragraph then stopped.</comment>


Ask HN: Could one have a successful career that is entirely remote? - <AUTHOR> <comment><USER2> You definitely can. I started my career (15 years old) freelancing remotely. It was the perfect setup to learn and make a living. Later I got some office jobs that helped me grow faster in other aspects not technically, but the last 5 years I've been fully remote and could not ask for more. Initially my jobs were mainly local ones, currently I work for an American company and I estimate I do more $ than 99% of the software engineers in my country, even not having a diploma. I'd call it a success.

</comment><comment><USER3> I think you could. The hardest part would be the first five years, when I think you benefit from in person learning the most. But if you found a good shop that was 100% remote and could support newer developers, I think you'd do fine.

</comment><comment><USER4> Yes. And it is becoming increaslying easier with the amount of companies that are moving to remote working.</comment>


Kaliningrad Oblast - <AUTHOR> https://en.wikipedia.org/wiki/Kaliningrad_Oblast <comment><AUTHOR> There is a tiny piece of Russia floating around inside what we would normally think of as Europe.

Luckily, weird geographical oddities never cause massive political issues.</comment>


Algolia – DNS fallback for better resilience - <AUTHOR> https://blog.algolia.com/dns-fallback-for-better-resilience/ <comment><USER2> Yep, this should be a good standard practice!</comment>


Yala National Park Srilanka - <AUTHOR> https://www.imperialyalasafari.com/yalanationalpark.php/ <comment><AUTHOR> Yala Yala National Park - Imperial Yala Safari Yala National Park. Sri Lanka is a nation proud of its natural resources. One of its main attractions is the unique wildlife which can only be spotted in this part of the section in yala srilanka</comment>


Ask YC: Any resources on the complexity of built in type methods in Python? - <AUTHOR>

I'd like to know the complexity of functions on built in types in Python. O() notation is perfect.
Empirical tests would also be good.
This came up recently in a Twitter conversation (I'm @tipjoy) about eliminating duplicates in a list. I like using dictionaries:

  def dupe(aList):
    d={}
    for x in aList:
      d[x] = True
      # or to count: d[x] = d.get(x,0) + 1
    return d.keys()
 Compare this to an alternative using the list count method:

  def dupe(aList):
    f=[]
    for x in aList:
      if not f.count(x):
        f.append(x)
    ret f
 I think N hash lookups are probably faster than N  calls to count, but I don't actually know. The difference could be small enough that doing what you think looks better is all that matters.
Anyone know a good resource? What about for other languages? <comment><USER2> How about list(set(aList)) ? Anyway, to answer your question, look in the Python FAQ at <http://www.python.org/doc/faq/general/>

But really, you shouldn't care about this sort of thing, until it actually matters.

<comment><AUTHOR> You're right, don't do this till it matters. But even in profiling and optimizing, the first steps are algorithmic. If you can't change the "outer loop" algorithm, you'll probably look into things like this.

</comment></comment><comment><USER3> that's what sets are for.

>>> list(set(['1', '2', '3', '1']))

['1', '3', '2']

<comment><AUTHOR> Cool

More often than not, I do want the count though.

I would be surprised if a set didn't use the exact same hashing subroutines that a dict uses. Am I wrong?

<comment><USER4> Yes, but as gp said, don't bother yourself with these details.

</comment></comment></comment><comment><USER3> If you don't have set (< python 2.4):

def distinct(l):

        d = {}

        map(setitem, (d,)*len(l), l, [])

        return d.keys()</comment>


Hasan Elahi - <AUTHOR> http://www.wired.com/techbiz/people/magazine/15-06/ps_transparency/

<comment><AUTHOR> It seems 'hacker' must be redefined.

Until now it was about programmers and coders -- technical people with focused mind living inside a digital world.

Now more open minded (not just digital thinking) and more free people (with the spirit of an artist) like _why, NN, Hasan Elahi -- are taking over the web.

The next web superstars won't be NASA crackers, Facebook founders, rockstar programmers, alpha geeks. We will sink back to build infrastructures on which new breed heroes will bring and open the web forward.</comment>


Benchmark Spotted for Possible AMD Zen CPU - <AUTHOR> http://www.notebookcheck.net/Benchmark-spotted-for-possible-AMD-Zen-CPU.182381.0.html <comment><USER2> This is my most anticipated hardware release for 2017. I'd like to build a workstation around it or perhaps two of them if it proves fast and cheaper than intel</comment>