Why do pilots still die from not knowing which end is up? - <AUTHOR> http://www.airspacemag.com/military-aviation/The_Disorient_Express.html <comment><USER2> "According to a 2004 study, the average life expectancy of a non-instrument- rated pilot who flies into clouds or instrument conditions is 178 seconds."

This statistic is the aviation equivalent of the "Bill Gates is going to give you $5" email forward.

The study was in 1954, _not_ 2004, and the pilots that were tested had _zero_ instrument time (at least three hours are required to get a license now). They were put into Beechcraft Bonanzas, aircraft that none of the test subjects had time in; Bonanzas aren't tough to fly but you definitely have to transition into them, especially if you're not used to planes with more horsepower than a Cessna 172...they get ahead of you way faster.

That said, if you're a VFR pilot and you knowingly proceed into Instrument Meteorological Conditions, you're probably in for some unpleasantness.

<comment><USER3> The link to the paper is given in the comments:

[http://www.humanfactors.uiuc.edu/Reports&PapersPDFs/Jour...](http://www.humanfactors.uiuc.edu/Reports&PapersPDFs/JournalPubs/180%20Degree%20Turn.pdf)

While you are right that it is from 50 years earlier than stated, it seems like a solid study. No, it's not actually "life expectancy", but I was impressed on how well designed it was. It makes for sobering reading, but the conclusion is actually positive: with only six hours of direct experience training, they could teach people how to make a safe 180 degree turn with a high percentage of success.

They explain the choice of the Bonanza, saying it was the most complex plane that a non-professional pilot could be expected to fly. The emphasis of the study was that simple training could save lives, and thus they wanted a high bar. "In sort, the assumption was made that if the subjects, none of whom had soloed a Bonanza, could master the technique in this airplane, they could master it in any single-engine airplane under 3,000 pounds gross weight."

And it's not quite true that the pilots had _zero_ instrument time at the time of test. The first lesson included a very small amount of time to familiarize themselves with the instruments, and were given a second try if they lost control within only a few seconds. How much of a difference this is from the current 3 hours, and how far short of the recommended 6, seems worthy of discussion and likely a more modern study.

<comment><USER2> "it seems like a solid study"

It is, provided that context is given when statistics from the paper are mentioned...which rarely happens.

To fly a Bonanza you have to have a private pilot's license, a high performance endorsement (required to fly anything with HP > 200), and a complex endorsement (required to fly anything with a constant speed prop, flaps, and retractable gear). This takes some time...and good luck getting insurance coverage (the real factor in what you do/don't fly) if you don't have an instrument ticket.

Furthermore there's a world of difference between zero or a few minutes of instrument experience and three hours. I don't have any study to back this up but I'm a pilot and can tell you from experience that the first time you go on full instruments it's sheer sensory overload. Three hours doesn't prepare you to do a decoupled IFR approach or anything, but it give you enough to do a 180.

Here's another important factor about the study that never gets mentioned: in the study the attitude indicator (artificial horizon), heading indicator, and vertical speed indicator were covered, simulating a partial failure of the vacuum system as well as a partial failure of the pitot/static system. No pilot is going to take off these instrument in failure, and should they fail in flight most pilots are getting down, _now._ I know I would be heading to the nearest field if I saw partial failure of both instrument systems.

So instead of saying "VFR pilots are toast in 178 seconds if they go into clouds" quotes should read more like, "if you happen to be Dr Sam Beckett and you find you've quantum lept into a Bonanza that has partial instrument system failures and you've flown into a cloud, you better hope Al can jump your ass back out within three minutes."

<comment><USER3> _Three hours doesn't prepare you to do a decoupled IFR approach or anything, but it give you enough to do a 180._

'Most noninstrument pilots can be placed in one of the three following categories: (1) the noninstrument pilot who knows he could not fly instruments and takes every precaution to avoid instrument weather; (2) the noninstrument pilot who "knows" he could not fly instruments, takes every precaution to avoid instrument weather, but believes his knowledge and experience would enable him, if caught, to fly out of instrument weather; (3) the noninstrument pilot who believes, primarily through ignorance of the problems involved, he could fly through instrument weather.'

Are you instrument rated? Have you taken further training beyond the requirements? What's your confidence that you could successfully perform a 180 degree turn out of cloud in the plane that you fly the most? Would you keep your hands on the controls or not?

 _in the study the attitude indicator (artificial horizon), heading indicator, and vertical speed indicator were covered, simulating a partial failure of the vacuum system as well as a partial failure of the pitot/static system._

Again, I think this makes sense in the context of the study. The goal wasn't to simulate failure, rather because those were (at least at the time) not required to be installed.

The interesting part to me about the study (I'm not a pilot, but have played with simulators such as XPlane and probably plan to get a license some day when I can afford the time and expense) is that none of the test pilots were able to perform a life saving maneuver when starting, and after 6 hours of direct training all were able to. And yet, oddly, this isn't (to my knowledge) part of the current pilot training. Why not?

<comment><USER2> Training for a PPL currently requires 3.0 hours of instrument time, including maneuvers like climbs, descents, and turn to a heading. It also requires unusual attitude recovery, a drill where you cover your eyes and the instructor puts the plane at a cockeyed angle and you have to recover using only instruments. You must successfully perform these maneuvers in order to pass your FAA checkride.

Basically in order to get your PPL you have to not just be able to turn a 180 on instruments, but demonstrate some level of precision in other maneuvers...so I think that while the study demands six hours, the FAA has determined that the job can be done in three.

As to your questions for me: I'm not instrument rated. I've taken about two hours of instruction on instruments beyond the required 3.0, most of that time was on the flight were I got my high performance endorsement...in a Bonanza, coincidentally. I'm confident I could do an instrument-only 180 in the Piper Cherokee I fly most frequently because I've recently done instrument work in a more challenging aircraft. A month from now with no further instrument work I'd be significantly less confident.

Hands off the yoke? Probably not all the way, but I've been trained to keep a very light touch as anything more, at least in cruise flight, means you need to check your power/pitch settings (eg throttle/trim).

<comment><USER3> Thanks for the answers!

The completely "hands off" (the yoke) startled me. They concluded that this was the safest approach to teach: all turns with rudder, and a predetermined trim and power. Post instruction, they allowed pilots to try their own approach, and say that the two who tried to control oscillations with the yoke "realized almost at once [that this resulted in more extreme oscillations] and both subjects immediately released the yoke and continued through the remainder of the steps with 'Hands Off'."

Having just read Langewiesche's Stick and Rudder, with the emphasis that all turns should always be coordinated, I found this very surprising. The study suggested that the instructor use this explanation: "Bear in mind that this whole procedure is a 'gimmick' designed to save your life. If it is easier and safer for us to make a 'sloppy' turn in order to get the job done, then that is the best way under the circumstances."

<comment><USER2> You're welcome. I'm like most pilots, my favorite subject is flying. There's an old joke: how do you know if there's a pilot in the room? Because he'll tell you.

You know, the hands off 180 definitely something I'm going to try next time I'm up with a CFI/I. Also if you get the opportunity in this life to learn to fly, _do it_. It's expensive as hell but it's also a very rewarding and fun challenge and is a great way to travel.

</comment></comment></comment></comment></comment></comment></comment><comment><USER4> Highly recommended piece by William Langewiesche on the same subject:

      The Turn
      At the very heart of winged flight lies the banked turn, a procedure
      that by now seems so routine and familiar that airline passengers
      appreciate neither its elegance and mystery nor its dangerously
      delusive character. The author, a pilot, takes us up into the subject.

<http://www.theatlantic.com/past/docs/unbound/langew/turn.htm>

</comment><comment><USER5> Given the analysis of what happened in the recent Air France crash, I can't imagine why the industry does not write better software to help combat this. It seems as if the programmers writing the software are more concerned about writing valid code to fit the designed system ("the pilot signaled us to climb at exactly 40 degrees, so do it") rather than writing code that models the real world situations accurately. I found this bit of an article about the crash the most troubling:

      It was at this point, after autopilot turned off and they
      worked to change their course, that a stall warning
      sounded, meaning that the airplane wasn't generating enough
      lift. The report notes the co-pilot grabbed the controls
      and lifted the plane, which, according to aviation experts
      is contrary to normal procedure during a stall, when the
      nose should in fact be lowered.

If pulling back on the stick should never be done when a plane is warning of a stall, why does the software allow a pilot to do it? This is surely simplifying the situation, but I can't believe we are incapable of writing better software to prevent human mistakes.

I wonder what kind of hard limits _do_ exist in the current avionics. For instance, is it possible to roll a Boeing/Airbus upside-down? If yes, why?

<comment><USER6> What the pilot will do to keep the passenger and plane safe can't be foretold by software written in static situations on terra firma.

Sensors can lie, equipment can break. Your software may have no better idea of the true situation than the pilot.

In the end it is a judgment call and if you limit the ability of those judgment calls to a bunch of software then you are saying that those in a different time and place have a better idea of what to do than those with their feet in the dirt.

It looks like in this case someone made the wrong judgment call. False positives in warning systems in commercial aircraft are happening with some regularity, in the end the pilot has final say.

<comment><USER5> I think a more robust model of N completely different systems (both mechanical and electrical) to compute the same variable could be found so that the probability that it is computing a value outside of x% of the actual real value is lower than the probability that the human could make a mistake. Even if a speed indicator model in the event of pitot tube loss had a 25% margin of error, autopilot could have done the right thing or it could have possibly influenced their decision to pull back.

EDIT: You can down-vote, but this is already the direction that cars have gone. For example, there is no way to stop any Mercedes after 2009 from automatically applying _full_ brakes in an impending collision.

[http://www.daimler.com/dccom/0-5-1210220-1-1210348-1-0-0-121...](http://www.daimler.com/dccom/0-5-1210220-1-1210348-1-0-0-1210338-0-0-135-0-0-0-0-0-0-0-0.html)

<comment><USER7> I'm not downvoting you, but I think this is a kind of problem that seems solvable on the surface, but is very, very difficult to get right. You will always have situations where all speed indicators fail in a similar way leading the software to believe that the speed is correct. With all the erring on the side of caution that aircraft makes have used, we've had a couple of cases where the software "decided" something and caused incidents.

Studies in N-version programming (such as used in Airbus planes) show that software written by different teams often fail in the same corner cases (with differing outputs).

Eventually you might have software with "situational awareness" that can be trusted to make fewer mistakes than humans, but we're not there yet.

<comment><USER5> I agree it will take a long time to develop automated systems that can be trusted. It took 26 years for tech to develop from the first ILS assisted passenger landing to the first fully automated ILS landing.

If you were to take this specific speed sensor issue, I'm more concerned there aren't different types of systems being used to try to cross-validate the numbers. The pitot-static system has its own backup on the plane, but if there is an inherent weakness of that particular system (e.g. ice), there is no other way to measure speed that is not susceptible to icing. Surely that particular problem is within our reach, no?

<comment><USER7> To measure airspeed I guess something has to have air flowing through it or past it, and that something would be susceptible to icing. That said, current pitot have very good ice protection, and AF447 was an extreme example with a known problematic type that Air France were in the process of exchanging.

Perhaps GPS ground speed data with previous wind estimates could at least help with establishing that "something must be wrong with the airspeeds".

<comment><USER5> That is what this captain suggests:

[http://travel.usatoday.com/experts/cox/story/2011/05/Ask- the...](http://travel.usatoday.com/experts/cox/story/2011/05/Ask-the-Captain- Questions-about-Air-France-flight-447/47447562/1)

Something scary from a Boeing pilot in the comments:

      Loss of all airspeed indications is not something we train
      for. It's always assumed in transport category aircraft
      that redundancies built in will always give us at least
      attitude, heading, and airspeed.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> Seems like the perfect scenario for sensory augmentation. There was an article on HN a while back about attaching electrodes to the tongue to replace vision in blind subjects.

One of the precursor experiments was attaching electrodes to the hand that were tied into a compass. The subjects were able to eventually feel North.

A similar device could be attached to something like an altimeter or other instrument.

</comment><comment><USER9> > According to a 2004 study, the average life expectancy of a non-instrument- > rated pilot who flies into clouds or instrument conditions is 178 seconds.

That is a chilling statistic.

As a VFR pilot, I often wonder what would happen inside a cloud to make me react and rip my plane apart in under 3 minutes.

<comment><USER10> Here is the fatal scenario: <http://www.aerosafe.net/page6.html>

As a VFR pilot, you've received basic instrument training. Remember that training, trust your instruments, and you'll make it though.

<comment><USER11> With an altimeter, an artificial horizon and an airspeed indicator, you would expect a VFR pilot to be able to get through any light cloud safely.

Untrained, never having touched the cockpit of a plane, I can get the meaning from these instruments. Is it simply that pilots fly without these, or that they simply disregard them during flight?

<comment><USER10> Neither. In US, your plane has to have the 6 basic instruments to be certified as airworthy by FAA. The reasons pilots die in non-visual flight conditions are twofold.

As the original article pointed out, the first reason is that the sensations are so compelling that doing what the instruments tell you will feel VERY unnatural and you will keep thinking that your instruments are broken or stuck (hence you HAVE to trust your instruments). And even if you remember not to trust your instincts, you will still often unconsciously apply slight pressure to the controls.

The second reason is that for every change in the plane's orientation and speed, several instruments will start moving at once. Without training it is very hard to integrate what the 6 instruments are telling you into a complete mental picture of what's going on with your airplane.

</comment></comment></comment></comment><comment><USER12> One page print version - [http://www.printthis.clickability.com/pt/cpt?expire=&tit...](http://www.printthis.clickability.com/pt/cpt?expire=&title=The+Disorient+Express+%7C+Military+Aviation+%7C+Air+%26+Space+Magazine&urlID=29997923&action=cpt&partnerID=285322&cid=24452119&fb=Y&url=http%3A%2F%2Fwww.airspacemag.com%2Fmilitary- aviation%2FThe_Disorient_Express.html%3Fc%3Dy%26page%3D2)

<comment><USER13> Readability version: <http://www.readability.com/articles/pcjy8rt3>

</comment></comment><comment><USER14> I've had a similar experience while driving on a highway at night in foggy conditions. All of a sudden my car started slowing down and was rapidly losing power. I checked and it wasn't fuel, so I figured the engine was dying somehow. It wasn't until I tried gearing down that I realized I had been on a steep hill and fifth gear wasn't powerful enough. But even afterward, I couldn't sense that I was on an incline.

<comment><USER6> I have a simple trick for that: I know the consumption of my car on a level road in 5th gear at 90 km/h, so when I'm in doubt about whether or not I'm going up, down or level I look at the fuel consumption indicator.

If it is higher than 6.6L/100km then I'm going up, less is down.

If you don't have a fuel consumption indicator then that will not work but lots of cars have them these days and I think using them as a level is a useful unintended application.

<comment> mkr-hn This is the first I've heard of fuel consumption indicators. What kind of car is it?

<comment><USER15> No offense intended, but this scares me.

They are ~everywhere~ for a long time around me. Quite a lot of driving instructors (specializing in 'reduced fuel consumption' trainings) use them as a general guideline to "see" how your behavior drives the consumption up.

Heck, mum and dad use that thing for years and drive even slower since they first saw that they could make their car use less gas.

You need to get a new car.. :)

<comment> mkr-hn My car is only 14 years old and still too reliable to need replacing, but I've seen a few newer cars with no fuel consumption gauge.

</comment></comment></comment></comment></comment><comment><USER16> I don't see this article presenting the full picture of how this problem will be addressed in the future.

As ADIRUs (navigation computers) improve to better integrate GPS and inertial signals in all conditions even when all air data is lost, weather-related instrumentation failures will decrease. Next, putting a worldwide terrain map in the navigation system will let it compute whether it will hit the ground if the course is maintained - again, even when ground radar is not working.

Next, heads-up displays or helmet-mounted displays with better warning systems will make sure that the pilot receives the warning. And most importantly, when the pilot feels that they don't know how to react to the warning, they will be able to push a button to let the autopilot return the plane to wings-level flight.

</comment><comment><USER17> On Sept 6, 2011, ANA Airlines had one of their flights flipped almost 180 degrees, because one of the pilots pressed the wrong button. The weird thing is that although passengers felt the turbulence, they didn't know they had flipped almost upside down, I guess because of the same forces that confused these pilots. It's a scary thing, and if I remember correctly, its the same thing that killed JFK Jr.

[http://blogs.wsj.com/japanrealtime/2011/09/29/wrong- button-s...](http://blogs.wsj.com/japanrealtime/2011/09/29/wrong-button-sends- ana-jet-upside-down/)

</comment><comment><USER18> I never knew that pilots rely on their sense of movement and orientation while piloting. It seems to me like a crazy idea.

I imagined that pilot training is mostly to make people ignore the spatial feelings and stick to what they see through windows or on instruments.

</comment><comment><USER19> Good article, but I am a bit confused about how someone in 1906 (2nd page, top paragraph) supposedly did research on vestibular effects on pilots...

<comment><USER20> This article includes a statistic so scary that I'm going to have to fight the urge to paste it twice:

 _According to a 2004 study, the average life expectancy of a non-instrument- rated pilot who flies into clouds or instrument conditions is 178 seconds._

At that rate, I'd imagine it didn't take long after the first plane flight for pilots to notice that there was a big problem with, say, closing your eyes or otherwise getting distracted while flying. Or perhaps a pilot or two _tried_ flying into a cloud -- it's the sort of thing you'd try to do if you could, right? -- and their remaining colleagues then started wondering why flying into clouds was such a sure-fire way to die. Death sure does have a way of crystallizing such questions.

The other point I'd make is that fixed-wing aircraft research probably had obvious potential military applications even in the prewar age of 1906. Perhaps this research was funded so early for much the same reason that astronaut-physiology research was well funded even before the first astronaut reached low-earth orbit.

<comment><USER21> Your parent is probably skeptical because in 1906 total human powered winged flight time could reasonably be measured in minutes. Europe still believed it was a hoax. Pilots didn't even have instruments let alone a cockpit. If you _were_ a pilot, odds are your name was either Orville or Wilbur.

Remember, the Wright brothers first flew in 1903.

As another reply points out, it was likely blimp, balloon or some other form of aviation that spurred the research on vestibular effects.

<comment><USER6> You forgot about Santos-Dumont, and many others besides.

Europe definitely didn't believe it was a hoax, in fact there were lots of people working at attempting powered flight.

That does not diminish the accomplishments of the Wright brothers in any way, but to make it seem as though Europe did not believe powered flight was possible is not true.

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

The time was simply ripe, lots of the bits and pieces had been developed by those that had gone before, such as Lilienthal (who built some pretty amazing gliders) and many others.

<comment><USER21> I don't mean Europe thought it couldn't be done, I meant they didn't believe it had been accomplished yet.

</comment></comment></comment></comment></comment><comment><USER22> How are there not heads up systems that detect this? A simple "warning 5 seconds to impact with the ocean" would at least warn the pilot.

<comment><USER23> Even little planes have those. What they need is a switch to tell the computer that they expect no descent whatsoever below xy000 feet, to stop it before it starts.

You can hear that warning here

<http://www.youtube.com/watch?v=SjaU-SKYrPk>

<http://www.youtube.com/watch?v=LzDSq6m2zV4>

<comment><USER5> I was going to suggest this in my post. A "dead-man"'s limit. A plane would lock you out and right itself it detected you dropped below some pre-defined altitude (e.g. within an acceptable angle without landing gear deployed or a greater than acceptable angle with or without landing gear deployed). Whatever altitude is necessary for the plane to right itself from the steepest descent. Something like that would make it impossible for someone to storm a cockpit and nose-dive a plane. It would need appropriate remote electronic _and_ mechanical overrides, though to prevent possibly losing a plane if it was triggered incorrectly. But at least a plane flying level on lockout autopilot would buy some time opposed to it definitely being destroyed by the nose-dive.

</comment></comment></comment><comment><USER24> Would not a helium balloon tethered to the floor/dash solve this problem for basically no cost?

<comment><USER25> A helium balloon suffers from the exact same flaw as your vestibular sense: it cannot distinguish between orientation and acceleration. There is already an instrument in every cockpit that shows the true orientation of the craft: the artificial horizon.

</comment></comment><comment><USER26> Probably not the best thing for me to have read prior to a flight!

</comment><comment><USER27> The enemy's gate is down.</comment>


Neo4j - Community matters. You matter.   - <AUTHOR> http://blog.neo4j.org/2011/12/neo4j-community-matters-you-matter.html

<comment><USER2> None of my business, but I am very curious about Neo4j's business model, customers, revenue, etc.

Neo4J was handing out single free 1 server licenses earlier this year to startups and I was very pleased to get one: unlimited use on a single server is likely to meet all of my needs for the for-seeable future. The new GPL licensing for the community edition also makes it possible to write a GPLed service that the rest of your application depends on. Their full stack (federation using multiple servers, etc.) is AGPLed and has a commercial license.

It seems like a fine line to walk for a company like Neo4j: they want to make it inexpensive enough (or free) for many developers to use their products but, they also need to make money to keep the lights on.</comment>


WibiData open sources Kiji to make HBase easier - <AUTHOR> http://gigaom.com/data/wibidata-open-sources-kiji-to-make-hbase-more-useful/

<comment><USER2> I know the WibiData guys, and they're a truly amazing team that knows HBase in and out. Their open source Avro extensions are great; looking forward to playing with Kiji!</comment>


Show HN: App publishers ranked by estimated worth - <AUTHOR> https://sensortower.com/ios/publisher-leaderboard/all-categories

<comment><USER2> Wow, the Bible app is worth apparently $1.1 billion and it's run by a church in Oklahoma. Worth more than Google and Twitter.

</comment><comment><USER3> Not sure how this is calculated, but you're estimating Instragram at 4B+ and Google (maps, mail, chrome, voice, ...) at 800m? Seems like something's wrong.

<comment><USER4> Instagram gets consistently more downloads and happier users than all of Google's products. IE, take a look at the review history on youtube: [https://sensortower.com/ios/us/google- inc/app/youtube/544007...](https://sensortower.com/ios/us/google- inc/app/youtube/544007664)

In aggregate, google's apps have more installs -- but many are installs by the same user, that use gmail, google maps, youtube, etc. Also, the value is about the apps, not the companies / engineering teams / brand recognition behind them.

Instagram has actually been historically dropping in our valuation as the growth curve dips down, especially on iOS.

</comment></comment><comment><USER5> another data point - [http://insights.onavo.com/top- apps/](http://insights.onavo.com/top-apps/)

</comment><comment><USER6> Check out the #s for FB (their individual apps)</comment>


Lozya: Teleconferencing with an RPG Map - <AUTHOR> https://meet.primrosevr.com/ <comment><USER2> I've got the front banner, selected a username, clicked on "Connect", and nothing is happening.

Is something supposed to happen?</comment>


A Train of Thought: Innovation and .Net Edition - <AUTHOR> http://codebetter.com/blogs/jeremy.miller/archive/2010/06/10/a-train-of-thought-innovation-and-net-edition.aspx <comment><USER2> I'm not a .NET developer but I found that post (and especially the replies) rather depressing.</comment>


What freelancers' directories do you use? - <AUTHOR>

I am asking that question, because next month I plan to work as a Ruby on Rails freelancer. I am intresting by both feedbacks from freelancers and recruiters. It would be great to exclude sites with reverse auctions systems from the discussion. <comment><AUTHOR> Looks like there is no nice freelancers directory.

I found some, but not exactly what I was expecting. So, I am going to start building my own. I will post updates if some people are interested.

<comment><USER2> Do you want to work

\- time and material? contact agencies that specialize in freelance/contracting

\- Well defined projects ? find requests for tender in freelance market places / contact potential customers directly

Thats what I do in Europe ...

</comment></comment><comment><USER3> I'd like to know some of those as well...</comment>


'Disneyland for adults': John Portman's dizzying interior legacy - <AUTHOR> https://www.theguardian.com/cities/2018/oct/22/disneyland-for-adults-john-portman-dizzying-interior-legacy <comment><USER2> The San Francisco Hyatt Regency is his classic atrium design.

<comment><USER3> I've learned the Atlanta is his classic

</comment></comment><comment><USER4> Just a inane tangent, but I rather think Disneyland is Disneyland for adults.

Or maybe I don't adult well.

<comment><USER5> I think it's other people who don't adult well. You and I are doing it fine.</comment></comment>


Ask HN: Good enough vs excellence -- which do you favor? - <AUTHOR>

Simple enough question: would you rather work at a company that:
A) settles for "good enough" with rapid iteration, or
B) one that demands excellence but takes longer to for each iteration?
I favor B... but it seems that A is gaining strength these days.  It's a worrisome trend to my eyes. <comment><USER2> A is the route Google takes (e.g. there have been 6 updates to Android since Feb 2009, with a 7th due out in a few months, but still not matching the polish of iPhone OS).

Apple does B (e.g. one major update to iOS each year, even if it means trailing the industry with features like copy/paste, multitasking, video chat until they can do them the pretty "Apple way").

Microsoft these days seems to have found a choice C, which is longer and longer iterations and settling for good enough or worse. Just look at the following release dates for Windows Mobile and you can see longer intervals for smaller improvements:

      5.0 5/2005
      6.0 2/2007
      6.1 4/2008
      6.5 5/2009
      6.5.3 2/2010

I personally would rather work for Google, so my answer is A. Rapid iteration gives you the satisfaction of seeing something you worked on "go live" vs seeing it die on the operating table after years of work and knowing you'll likely see Halley's comet before another project goes live.

<comment><USER3> It's amazing that the tech industry's three giants all do things totally differently and all make tons of cash.

<comment><USER4> It's likewise fascinating how different devices handle simple tasks in vastly different ways. Just look at GPS navigation systems for cars.

</comment></comment></comment><comment><USER5> I favor the company that chooses the option that is right for the circumstance and for their customers (internal or external), not the one that chooses A or B dogmatically.

</comment><comment><USER3> Obviously, the right choice depends on the situation. Companies should tend towards B if they already understand the needs of their customers or if they're in a slow-moving market where customers make big, infrequent purchases.

Probably it would be more useful if you described a few specific companies that you think release products too frequently. Then we could argue if they would benefit by releasing less frequently.

Keep in mind that the question of how companies should act to profit-maximize is totally separate from the question of what sort of company you want to work for. I'm only interested in the first one; you might not be interested in it at all.

</comment><comment><USER6> The way you phrase your question is somewhat prejudicial. No one wants to claim that they'll "settle." However, everyone has some threshold of "good enough" for release. Even your option B alludes to that; if you're iterating, it means that there's something that can be improved after release.

The real question is at what point will releasing produce the most value for you and your customers. For some circumstances, that point might be very early with very little polish. In others, it doesn't make sense to release publicly until you've ironed most of the kinks out.

</comment><comment><USER7> I doubt that there is any one answer to a question like this.

What field are you talking about? If it is a performance critical application like code for hospitals or intelligent life support systems/medical devices then certainly one would go for B.

On the other hand if you're designing a UI then there is no one way to do it. It's true that Apple releases only one update in a long time but they make hundreds of prototypes and test them out like anything (see: [http://developer.apple.com/mac/library/documentation/UserExp...](http://developer.apple.com/mac/library/documentation/UserExperience/Conceptual/AppleHIGuidelines/XHIGIntro/XHIGIntro.html)). So they do a clever combination of A+B, while maintaining their image.

However, if you're small then you can't afford to hire professional testers to test everything, or do videotaped randomized trials with volunteers who have signed a NDA. So, then a release often and correct often strategy would work well for you.

The question should be; How should I decide which one is better for me? A, B or A+B in some permutation?

[note: I am assuming that B in its pure form means micro-managed code that is proactively developed to be perfect from the start based on some previous parameters.]

</comment><comment><USER8> Excellence in one thing. Good enough in everything else.

<comment><AUTHOR> Concise, cogent, illuminating and thought provoking. Bravo.

<comment><USER9> This is also known as t-shaped competence and is common in firms like IDEO.

</comment></comment></comment><comment><USER10> It is more of a continuum than an A or B question, and it would be a bad idea to get religious over the question. From a pragmatic perspective, B should be favored when either production constraints (capital investment, etc) or distribution costs are tangible at the margin. So durable goods and long-term services (e.g. insurance) should lean toward B. A is favored if and only if iterative cycles can be accomplished without additional capital investment and distribution costs are near-zero. So, basically anything that could be delivered digitally that is not embedded in a durable good should be released when "good enough" (and then only improved if the iteration creates more value than the development of a new good or provision of a new service--iteration as rent-seeking is wealth-destructive).

</comment><comment><USER11> Illogical question. The entire point of "good enough" is that it _is_ excellent.

Each iteration of the project has to be good enough. All you need to be excellent is enough iterations.

Perhaps a better question would be, "Which do you favor, many 'good enough' iterations or one shot at perfection?" The answer to this question is obviously the former because the latter almost never gets done.

<comment><USER3> There are a lot of similar questions that are interesting.

For example, let's say that all product development activity falls in to one of three categories: "concept", where you're collecting ideas and talking to customers, "prototype", where you do your heavy lifting, and "polish", where you refine your product's performance/UI.

You aren't going to be able to control the amount of "prototype" you have to do to achieve a given product state. But you can control how much "concept" and "polish" you'll throw in with it. If you estimate that it will take you two months working alone to produce a prototype that will interest customers, what is the right amount of time to talk to customers before you write your first line of code? I'd say a few days--in my view, startups should do this early on, instead of jumping in right away.

As for the "ideas" part of "concept"--I've been surprised how easy it is for me to turn on ideas like a tap. The insight that made me completely rethink what I'm working on now came to me late at night when I had forced myself off the computer because I wanted to start getting to bed earlier. But even if you can't turn on ideas like a tap, how much time should you spend recording the ideas that do come up and doing research on the internet? My guess--quite a bit, but it'd be even better if you could outsource this work to a nontechnical cofounder. (Too bad I haven't been able to find anyone who meets my standards for this and wants to work with me on the product I'm building.)

The amount of "polish" you should do before serious PR efforts is extremely situation-dependent.

\- If you're entering an established market with a bunch of small innovations over your competition (Quora), you should do a lot of polish so your product will genuinely be the best thing out there (and they did).

\- If you're doing something totally new, a moderate amount of polish is probably better--just enough to avoid acquiring a bad reputation.

\- If your customers are going to be spending significant cash with you, polish is key so you seem (and actually are) trustworthy.

"The answer to this question is obviously the former because the latter almost never gets done."

If you know you're likely to irrationally give up on a product idea because your morale is low or irrationally continue with a product idea regardless of whether customers say it'll be useless, obviously those are factors to take in to account.

Personally, I wouldn't be afraid to, say, spend a long time building a better version of Ebay without doing any releases if I was convinced that people would switch to my site if and only if it was a significant improvement. If my intuition changed partway through the development process (without any solid external evidence or new observations--just a change in my gut feeling) then I would say "well, my intuition now isn't much better informed than my intuition at the beginning of the project--they're equally valid intuitions" and operate as if the average of my two intuitions were true (say, wrap up what I've got so far and make a solid effort at releasing it. Or start working half time and spend the other half of my time plowing onward with my project.)

</comment></comment><comment><USER12> When programming life support software for spacecrafts, A and B converge. Nothing less than excellent is good enough. I know there are other industies like this too, where 'release early and often' can result in death or some other disaster.

</comment><comment><USER13> It depends. You cannot have a "good enough" with rapid iterations approach for a mission critical project. e.g. A software to control chemotherapy or a missile controller program

However for consumer facing products or in some cases for enterprise products, you can start with a minimal working version and then improvise.

Personally, i prefer A because the real feedback comes in from your consumers and you will find lot of your assumptions going wrong

</comment><comment><USER14> Good enough is never good enough. It leaves lots of room for mistakes and at that point "good enough" becomes "oops." Not worth the rapid iteration if there is room for it to come crashing down...

</comment><comment><USER15> A. Because existing good enough is better than non-existent excellence. And it can be polished forever.

</comment><comment><USER16> C) it depends. each is the smarter choice in different situations.

</comment><comment><USER17> I don't know who would prefer good enough, but the realities of the market and life in general forces you into it.

Even companies which we associate with excellence end up shipping less than ideal products with crucial things MIA, e.g. copy+paste, multitasking.

But in the end those things didn't matter so much, did they.

</comment><comment><USER18> B

 _Do your best to draw it straight. Slanted it will come out anyway._ \-- Mr. Someone, 2010

</comment><comment><USER9> How do you know what is important enough to make excellent without trying lots of good enoughs?</comment>


Ask HN: What is the cutting edge in the programming world right now? - <AUTHOR> I am always learning about the tech that I am currently working on in my project.  It's generally a generation behind the cutting edge.   (E.g. Doing Scala microservices right now).
What should I spend some time learning that is cutting edge in programming?
Any papers I should read?  Any books? Etc. <comment><USER3> Machine Learning! Neural Networks! Serverless! </hype>

But all hype has an element of truth. A sibling comment linked the Infoworld article ( _edit: now deleted, here it is_ [1]), it has some good points (binary protocols, IoT, WebAssembly), but is missing Machine Learning and other pattern-recognition-y, data analysis-flavored things and under the 'AI' umbrella, as a matured version of when we used to talk about 'Big Data'.

[1] [http://www.infoworld.com/article/3022874/application- develop...](http://www.infoworld.com/article/3022874/application- development/9-predictions-for-the-future-of-programming.html)

</comment><comment><USER4> It might depend on whether you differentiate between cutting edge and hype. Scala (for sure) and micro-services (probably) are still very niche. It's not as though there has been a generation of software written in them - they've had several years to pick up steam and now they aren't "exciting". Off the top of my head the things that are exciting enough to make news simply by existing is "serverless" XYZ and "AI" where AI is never really defined well enough to pin down.

You would probably be better served to learn something you are interested in than being able to say you are fluent in the NN library du jour.

</comment><comment><USER5> Just my humble opinion, from what I've seen recently:

a) NodeJS microservices - seem to be preferred for most applications because they are so efficient and simple to maintain; single threaded and async, so it's very different from Scala. Also the ecosystem is progressing very quickly, NPM, etc. b) THRIFT - REST has an alternative, and it's really interesting to see Websockets, and binary encoding/decoding using THRIFT protocol, but not as simple as HTTP/REST in practice c) Cassandra - <USER2> scalable and good enough for most simple features, has it's drawbacks as well; good for what could become gigantic operations

</comment><comment><USER6> Functional programming?

<comment><AUTHOR> Doing that already with Scala. But not sure if it's cutting edge. It's actually older than programming itself :)</comment></comment>


Ask HN: Need help monetizing our site - suggestions (pivot or otherwise) welcome - <AUTHOR>

Dingadeal.com lets groups get hotel deals. Groups (> 8 people) enter their accommodation requirements, and let hotels bid for their custom. Hotels are notified and have 24 hours to reply via the website with their best offer.
The group views & chooses the best hotel deal. They can accept the offer on the website, at which point the hotel is notified & supplied with the group's contact details. The hotel contacts the group to finalize the arrangements.
Our revenue model is commission-based. We don't accept payments on the site, so we invoice the hotel for a certain % after the group has stayed. Two main problems we're facing:
1. Invoicing hotels after the group has stayed. Due to the nature of group bookings, requirements can change between when they book on the site and when they stay in the hotel. For example, the number of people in the group can fluctuate. We rely on the group for feedback on how many ended up staying, what was the final price etc. It's messy to work out the commission we should charge the hotel.
2. Conversions rates on the site are extremely low. Conversion rates for a big online group booking competitor are around the 1% mark. That gives you an idea of where we're at. It's easy for the group to look at all the offers and then continue with their booking offline. There is no major incentive to complete the booking via our website. We do offer features such as group invoicing, but group organisers are rarely getting that far in the booking process.
So, based on those two issues, we're looking for alternative means of generating revenue. Some things in our favour:
- We generate a decent amount of targeted traffic via our blog, so we can get the right people to our site
- Group bookings is a lucrative area for hotels, so they do tend to make offers, even when the conversion rates are so low
Any suggestions are welcome, thanks. <comment><USER2> I think a major factor in conversions isn't that people are seeing offers and booking it themselves. The problem is that people sign up and fill out a form (and register) expecting to see prices right then, and instead have to wait at least an hour to see prices.

It may be better UX to show some hotels immediately via a hotel booking API and have very prominent messaging that they will receive lower offers within 24 hours. I'm already assuming you're emailing them with new offers (with tracking pixels) to determine if they're even opening, if they click through, and then what they do.

You should accept payments on your site... for several reasons.

1: Increase conversions - Not only because it's a quick and logical flow through the site, but also because you may be deal with people that don't want to talk to hotel agents on the phone and would rather get everything done online.

2: Know exactly how your business is doing - If you're just relying on the hotel to pay you the correct amount, you're leaving so much information about your business on the table. You can gather some, but informally. It'd be useful to know at what step people aren't converting, what is triggering changes, etc.

3: Shift responsibilities - Make the hotels invoice you.

4: Influx of capital. Paying hotels every month still makes it look like you have a lot of activity on the books. I dont know what your goal with the site is, but activity like this would be good to show to investors, interested buyers, etc.

</comment><comment><USER3> Some ideas:

1\. Charge the hotel for each lead generated After the initial search, ask for the user email and phone number. Sell this number to the hotels. But probably your users will not like that...

2\. How much do you make on commissions (on %)? Lets say a hotel room would cost $1000 and you make 10% on commissions. Then, instead of quoting the price as $1000, you show the price as $990. You book the room for $900 (1000 minus your commission) and make $90 on commissions (instead of $100) On your site you can charge for accommodations only and all other expenses (drinks, food, etc) would be paid on the hotel.

<comment><AUTHOR> Thanks for the suggestions, I like the idea of a perceived discount offer, that's something we'll look into implementing.

</comment></comment><comment><USER4> Just an idea, but you could look at catering to the non-English speaking crowd. Specifically, the Chinese love to travel in big groups and they will usually skimp as much as they can on accommodation, in order to splurge on gifts and souvenirs. A cursory search turned up only very few sites that offer international hotels group buying options, even though group buying is extremely popular in China. Obviously, it would take you some time to understand the Chinese and their needs, but I'm pretty sure it'd pay off in the long run.

</comment><comment><USER5> What about the model used by flightfox where the customer pay a fee upfront to find the best deal available? It would change a bit from what you are currently proposing but it could be a lead.

I know it can seem strange/hardcore at first but if you guarantee the best deal they can get, in the end you might make it work.

You could maybe offer this option at first and see how many people are willing to pay to ensure a good offer by hotel for a large group of people.

</comment><comment><USER6> What about integrating group organizer tools to keep organizers hanging around and using you. Like itenerary tools, ability to send out emails to the group about changes, tools for splitting up costs evenly, that sort of thing. If they use you to organize, they might use you to book.

Also, question: you say it's difficult keeping track of commissions; if you did keep track of them well would that be enough money, or are you looking for an alternative revenue stream?

<comment><AUTHOR> I'm not sure if you have seen our video on our website but we have certain features (e.g. - invoicing functionality and rooming list feature) in the group organiser's dashboard already. There are lots of features which we could potentially add down the line to add value to their overall offering.

We are essentially looking for an alternative revenue stream, because we are not converting enough groups through our website. We don't want to arrive at a situation where hotels aren't winning any business through our website. So we are essentially hoping to move away from commission to something else.

</comment></comment><comment><USER7> Are there any reasons why your conversion rates are low. Are there ways you could optimize your site to increase conversions.

Maybe you are heading in the wrong direction with advertising?It might be better to stay on the path you were going and focus on increasing conversions??Look at how booking.com and how they convert, might give you some ideas.

</comment><comment><USER8> Are you targeting the SME market?

1\. Lots of companies bring their sales staff away on motivational trips. Phone them up, get all the details (you do all the leg work for them!.. take the pain out of organising/booking something like that).

2\. You're in Ireland...target the London market.

</comment><comment><USER9> Maybe charge a flat rate for _ranges_ of people. That way you don't need to be exact. Charge the hotel $100 if 5-10 people booked and $250 if 11-20 booked, or whatever. Just make the math work out to be roughly what you'd make if things were exact. Maybe you can earn even more like this.

<comment><AUTHOR> That's not a bad suggestion. However, it still doesn't overly help with conversions. If groups are coming onto our site for quotes and then going off directly to finalize the booking. We need to start increasing our conversion rate and thus increase the revenue we do generate through the site. However, a flat fee is not a bad idea as it does remove the issue of fluctuating numbers.

<comment><USER9> Yeah, my guess is your only focus should be on driving up demand. If you had thousands of people booking rooms it wouldn't be hard to make money off them. With small numbers it will probably never work that well.

Maybe you can come up with some new approach by just focusing purely on what it takes to get more people booking rooms. Maybe by offering deals (not just bidding), doing deals with conference organizers, etc.

</comment></comment></comment><comment><USER10> "Partner" with the hotels to offer them a higher ranking in terms of where they are displayed and the font size of their data.

<comment><AUTHOR> Offering a priority listing is definitely something we have being considering. Thanks for the suggestion.

<comment><USER6> Go with sponsored search, its way more above board, people recognize it from Google and its easy to integrate into the search results (usually). That way you get commissions from people who book, you get money from people bidding on ads, and hopefully you can get commissions as a travel agent when people click through an ad.

</comment></comment></comment><comment><USER11> Show the offers to users for free, but obfuscate the hotel names until the users pay a fee.

</comment><comment><USER12> To increase your dollars per conversion: You need to add other travel related services that pay an affiliate commission. Some examples are:

Taxi/Limo services Concierge Services Meal vouchers/deals Airline tickets Tour packages etc.

To increase your conversion rate: Get a valid SSL certificate and redirect all visitors to SSL via .htaccess Remove or minimize everything on the homepage not related to conversion (with the exception of the G+ and FB buttons). Use Groupon as an an extreme example of this. Start a Adwords remarketing campaign to follow your unconverted visitors as thet browse other sites in the Google Content network.

Those are the things that immediately come to mind.

<comment><AUTHOR> Thanks for you feedback. An affiliate partnership would certainly be interesting. How would you go about setting this up? Would you use something like Commission Junction?

One area we are exploring is in relation to partnering with other travel- related services. A selling point for us is that regardless of whether a group accepts a hotel's deal or not, we know that this group will more than likely be in a certain town on a certain date.

So, when a group registers on the site, we can have an opt-in email option. Travel-related services in the locality then have a chance to advertise to this group via an email sent to the group prior to arrival. "10% discount on golf for your group this weekend in X Golf Club". Things like that.

We're trying to tease out a few different revenue models, so thanks for your suggestions.</comment></comment>


Apple Wrongly Rejects iPhone App for Use of Private APIs - <AUTHOR> http://daringfireball.net/linked/2008/12/12/landon-fuller-app-store

<comment><USER2> This is one of many incidents that makes me lose confidence in whoever's running the iPhone App vetting. Someone needs to go to that department and the one running the App Store get some people straightened out. The user experience is not up to the level of quality I expect from Apple.</comment>


A "Jupyter" of DiffEq: Python+R Bindings for DifferentialEquations.jl (Julia) - <AUTHOR> http://juliadiffeq.org/2018/04/30/Jupyter.html <comment><USER2> Theres a good (if slightly out of date) comparison between the features for ODE solving, putting DifferentialEquations.jl against the suites commonly used in other langauges: [http://www.stochasticlifestyle.com/comparison- differential-e...](http://www.stochasticlifestyle.com/comparison-differential- equation-solver-suites-matlab-r-julia-python-c-fortran/) (linked in the blog as well)

Worth checking out.

________________________________________________

Edit: Nevermind, its not out of date

</comment><comment><USER3> Interesting write up! Hope this can incentivize python/r users to give Julia a try.

I'd be curious to see if there is any progress on the matlab interoperability as well (my field is mostly matlab).

<comment><AUTHOR> The problem is that mexjulia is the established package for those bindings, but it needs an update for newer versions of MATLAB ([https://github.com/twadleigh/mexjulia/issues/58](https://github.com/twadleigh/mexjulia/issues/58)) which won't happen because the author moved on ([https://github.com/twadleigh/mexjulia#mexjulia-embedding- jul...](https://github.com/twadleigh/mexjulia#mexjulia-embedding-julia-in-the- matlab-process)). If anyone is willing to put time into building/maintaining the binding libraries I'd be willing to use them. The issue is that, for any non-OSS language, the essential tooling (CI, benchmarking, accessibility) are absent, making it hard to maintain bindings for.</comment></comment>


Verizon Business enters into agreement to acquire BlueJeans - <AUTHOR> https://www.verizon.com/about/news/verizon-business-enters-agreement-acquire-bluejeans <comment><USER2> We use BlueJeans at work, and it's an excellent piece of software. Very reliable, and integrates well with conference rooms and our meeting system.

<comment><USER3> Don't worry, if Verizon does buy it out, they'll fix those things soon enough in order to extract value.

<comment><USER4> I've had that exact experience with EdgeCast, it worked great before Verizon and went to shit within 12 months of acquisition. We cancelled at the first opportunity after the acquisition.

</comment></comment></comment><comment><USER5> Why did BlueJeans flounder?</comment>


How Bush's grandfather helped Hitler's rise to power (2004) - <AUTHOR> http://www.theguardian.com/world/2004/sep/25/usa.secondworldwar <comment><USER2> "George Bush's grandfather, the late US senator Prescott Bush, was a director and shareholder of companies that profited from their involvement with the financial backers of Nazi Germany."

So this "helped him rise to power"?? Please. Why aren't we also going after: Coke, IBM, and any other company involved with anything in Germany (which is a lot).

I wonder how many mondern company owners should be jailed for helping bad people rise to power?

Oh yeah, they aren't hated like Bush....</comment>


Ask HN: Is it really that easy to erase someone's iphone? - <AUTHOR> This FBI vs Apple conflict seems to be about FBI's request that Apple disable the auto-erase feature on iOS devices that kicks in after X bad unlock codes are entered (I think 10).<p>Does this mean that you can pick up anyone's iphone and within a few minutes erase everything on it just by entering a few bad codes? <comment><USER2> They have to have this feature enabled. It will tell you "x tries remaining" after entering a bad PIN. You'd have to be a real asshole to do this though.

<comment><AUTHOR> So presumably the phone the FBI wants to unlock, the terrorist in fact had this feature enabled.

</comment></comment><comment><USER3> No. To enable this feature you would need to enter the passcode for the phone to make any changes.</comment>


Google plans to move UK users' accounts outside EU jurisdiction - <AUTHOR> https://www.reuters.com/article/idUSKBN20E08W <comment><USER3> Previously posted and discussed here: [https://news.ycombinator.com/item?id=22370405](https://news.ycombinator.com/item?id=22370405)

</comment><comment><USER4> Duplicate: [https://news.ycombinator.com/item?id=22370405](https://news.ycombinator.com/item?id=22370405)

<comment><USER5> I'm sorry, am I on Stack Exchange?

<comment><USER6> On Hacker News, we're pretty careful about dupes, but for different reasons and in a different way than on SE. Here the issue is that frontpage space is the scarcest resource that HN has (only 30 slots at a time). Since the site exists for intellectual curiosity, and curiosity withers under repetition, it's important not to have those slots taken up by stories that have had a significant recent discussion. (For example, the OP had a major thread yesterday.)

Reposts are allowed in the other cases. That is, if a story hasn't had significant attention yet, we don't treat a repost as a dupe. Similarly, if it has had a significant discussion but not recently, it's ok to resubmit it. That's because once enough time has gone by, the topic can gratify curiosity again. The cutoff is a year or so. This is in the FAQ: [https://news.ycombinator.com/newsfaq.html](https://news.ycombinator.com/newsfaq.html).

<comment><USER5> It's okay to point out duplicates, it's just odd to see it done in such a spartan manner over here.

</comment></comment></comment></comment><comment><USER7> The optics of this might look bad, but I cannot really fault Google for this move (and I frequently fault Google).

They're facing a dilemma of regulatory uncertainty, and this move resolves this dilemma for them (at least, they seem to believe that).

Anyone who has ever dealt with powerful regulatory agencies will probably agree that this _resolution_ is the right move for the company, a move important enough that eating some bad PR is probably totally worth it.

(The point about powerful regulatory agencies is not that it's hard to stay compliant; it's that the costs, overhead, bureaucracy etc. of demonstrating this compliance is immense, even if you are doing everything 100% right.)

<comment><USER8> Pro-Brexiteers have often cited stronger bilateral ties, such as those with the US, as an advantage of Brexit. And of course, post-Brexit, Britain will be ever more reliant on the willingness of countries such as the US to cut deals with them. As an independent negotiator in these new deals, Britain will have less power to push back over silly things like data privacy; and as a member of Five Eyes anyway, they're all too happy to have the US do their spying on their behalf, just like the US likes Britain spying on US citizens to the US Government's benefit.

<comment><USER9> That sounds really interesting.

Would you mind sharing a resource to learn more about how the UK spies on US citizens?

<comment><USER10> [https://en.wikipedia.org/wiki/UKUSA_Agreement](https://en.wikipedia.org/wiki/UKUSA_Agreement)

<comment><USER11> Although if you look at the actual text on the UKUSA agreement document HW 80/2 [1], rather than the short synopsis from Wikipedia, it says very clearly that the UKUSA agreement covers only sharing of "foreign communications" where footnote 3 on page explicitly excludes communications of both the UK and the USA.

1\. [https://discovery.nationalarchives.gov.uk/details/r/C1153691...](https://discovery.nationalarchives.gov.uk/details/r/C11536912)

</comment></comment></comment></comment></comment><comment><USER12> It is real. I just got an email about this from Google about my gmail account:

\- Your service provider and data controller is now Google LLC: Because the UK is leaving the EU, we've updated our Terms so that a United States-based company, Google LLC, is now your service provider instead of Google Ireland Limited. Google LLC will also become the data controller responsible for your information and complying with applicable privacy laws. We're making similar changes to the Terms of Service for YouTube, YouTube Paid Services and Google Play. These changes to our Terms and privacy policy don't affect your privacy settings or the way that we treat your information (see the privacy policy [link redacted] for details). As a reminder, you can always visit your Google Account < [https://myaccount.google.com](https://myaccount.google.com) > to review your privacy settings and manage how your data is used.

<comment><USER13> > These changes to our Terms and privacy policy don't affect your privacy > settings or the way that we treat your information.

This is such a blatant lie what the hell. The only reason for this move is specifically to treat your information in ways that are not legal now.

<comment><USER14> Not necessarily. They might treat information the same way but generate different paperwork or have different levels of risk from frivolous lawsuits.

</comment></comment></comment><comment><USER15> I imagine a future where the workers are on the Irish side of the border but the servers are on the UK side of the border.

One still enjoys the tax advantages of the value being added on the Irish side, but also the relatively lax data requirements on the British side.

I am not pro or con anything, just pointing out the arb.

<comment><USER16> Britain already adopted GDPR-based data protection law. If anything, Brexit will tighten the situation by requiring the data of British to stay in Britain.

<comment><USER17> That certainly is an outcome. Equally does add more credence to the Google move as if the data was in the EU, then the potential to kick up a fuss and roll out laws to insist it is in the UK would play out faster than say that data in the USA.

Equally - I'd say costs may well play out more and what is the cost to host in Ireland compared to hosting in the USA?

Even when we are talking pennies/cents in difference - at the scale of Google - that soon adds up and if they can, they will.

</comment></comment></comment><comment><USER18> Does anyknow what happens if I move out of the UK to rEU? Will my account now be considered to be an EU account or will it always be a UK one?

</comment><comment><USER5> Thanks, Brexit!

</comment><comment><USER19> I would imagine N.Irish users might end up being covered by GDPR -- British law also N.Irish people to declare themselves Irish under the GFA. N.Ireland could well end up with a special status post-Brexit where it's both in and out of the EU and in and out of the UK.

Given European data protection is much stronger than either British or American DP it would make sense to group N.Irish people this way rather than trying to deal with the exceptions.

<comment><USER20> > British law also N.Irish people to declare themselves Irish under the GFA

This by itself doesn't mean anything for GDPR—GDPR applies to EU residents (whether or not they are EU citizens), not EU citizens. Declaring yourself Irish doesn't make you fall under GDPR protection if you live outside the EU.

<comment><USER19> GDPR applies to EU citizens globally. It's just not enforced globally. The company will have to be large enough to have a presense (or future presense) in the EU for there to be an tangible impact.

>Declaring yourself Irish doesn't make you fall under GDPR protection if you live outside the EU.

I'm a DPO and this is absolutely incorrect.

<comment><USER21> > GDPR applies to EU citizens globally. It's just not enforced globally.

Do American speed limits apply to American drivers in Europe? Or do the European speed limits apply?

Essentially you are absolutely incorrect. The EU has no legal jurisdiction outside of EU borders.

<comment><USER22> American tax laws (like the FACTA) do apply to Americans in Europe, for example. A sovereign entity has jurisdiction over anything it wants. The question is whether it can enforce it, but there are many tools for that, from simple treaties to sanctions to full-blown military invasions.

In any case, parent is in fact incorrect since the GDPR claims no such jurisdiction. It only applies to people in the EU, or to people whose personal data is processed by EU companies.

</comment></comment></comment></comment></comment><comment><USER23> I don't completely understand what gives them the right to do so - <USER2> are still in place, GDPR & the rest are included.

<comment><USER24> GDPR only applies to EU residents, doesn't it?

<comment><USER25> UK citzens are still EU residents for now, the UK hasn't actually left yet.

<comment><USER26> The EU disagrees: [https://europa.eu/european-union/about- eu/countries_en#28mem...](https://europa.eu/european-union/about- eu/countries_en#28members).

The UK may still be following some of the EU's rules, but they have officially left the union.

</comment></comment></comment></comment><comment><USER27> Why Google plans to move UK users' accounts outside EU jurisdiction ?? See) it.</comment>


The Average User Checks Email 5.6 Hours Per Weekday - <AUTHOR> http://calnewport.com/blog/2018/10/09/the-average-user-checks-email-5-6-hours-per-weekday-this-is-not-good/ <comment><USER2> That's ludicrous and unbelievable. Either the standard deviation is small, which implies that almost everybody does that, or the standard deviation is large, which implies there's a significant percentage of people spending more than 8 hours a day checking email. Either way I suspect this is more a demonstration of the unreliability of self-reporting than an accurate reflection of reality. Either that, or there's a significant deviation between what is being reported and what the wording of the question was on the survey. (I can imagine spending hours a day doing a task you received over email, but if your boss asks you for a report of something or other over email and you spend three hours assembling it, that could be "three hours related to email" but not "three hours checking email".)

</comment><comment><USER3> The stat is from slide 8 of [https://www.slideshare.net/adobe/2018-adobe- consumer-email-s...](https://www.slideshare.net/adobe/2018-adobe-consumer- email-survey) and is clearly ridiculous. The only way the math works is if the 10% of people that are spending over 6 hours per day checking personal email, and over six hours per day checking work email, are averaging really high numbers. Which makes it likely they are filling in their weekly hours, not daily hours.

There is simply no way I would believe 21% of "white-collar workers with a smart phone" are checking either their work or their personal email for more than 6 hours each and every day, let alone the 10 hours a day that would be required to offset the about 50% of people who reported checking less than an hour each day.

<comment><USER4> The slide doesn't say 5.6 hours - only Cal Newport is jumping to it. The slide is saying 3.1 for work and 2.5 for home - but not necessarily by the same people - so adding them doesn't make sense.

>Which makes it likely they are filling in their weekly hours, not daily hours.

I disagree. If I look at any one column, it's not hard to make the numbers work out. For example, assume each category is hitting the upper bound (40% are doing 1 hour, 22% are doing 2, etc) - and put 9 hours for the last 10% - you'll get 3.1 hours. Now that is a bit implausible (I took upper bounds of _every_ category).

But going with the other interpretation - only spending < 1 hour per week for the largest group - highly unlikely. In our workplace, a lot of work, sadly, is done through email - 2 hours/day just responding to emails is probably average.

</comment></comment><comment><USER5> From the comments on the article:

> _I took a look at the numbers. The categories are broad. If I check my > emails 10 minutes per weekday it is counted as one hour for the purpose of > calculating the mean. 62% of the participants report checking work emails in > 2 hours or less. IMO there is still enough time to do deep work. Fore > average calculation, the last category "more than 6 hours" is assigned "9 > hours". So I think these numbers are skewed._

> _I don't get why anyone would check their personal emails for more than two > hours a day. The survey doesn't say they did so during working time._

So, yeah, it seems like this was deliberately distorted to the point that there's no truth left in it.

</comment><comment><USER6> Work aside, how does _the average user_ have 2.5 hours worth of personal emails to attend to _per day_?

<comment><USER7> Because everybody needs breaks and it is way more acceptable to say you are "checking email" than "staring at clouds".

Even if they won't admit it, I'm sure some people open their inbox and stare blankly as a subconscious way of taking a break.

Plus, some people do generally have answering email as their job.

<comment><USER8> Is it possible that people take 'doing email' as including facebook and other social media - messaging in any form?

Lets face it we tend to do those things through Web interfaces on desktop/laptops or in messaging style apps on phones that tend to look quite similar in layout.

And we need to be clear about the time frame as other posters have mentioned (per day or per week)

On the work based figures, I suspect that people include the time spent on a task generated by the email as 'doing email'. My colleagues certainly would, and a lot of the work related email we get is providing information directly into a rich format email.

<comment><USER7> > time spent on a task generated by the email as 'doing email'.

This probably accounts for a large chunk of the reported hours, as well.

</comment></comment></comment></comment><comment><USER9> Whether or not this is bad depends entirely on what you do for a living. For coders, sure, that average would be excessive. For admin support, tech support, or other roles where communication is a majority of their job? Maybe not.

<comment><USER10> Very true. I've done admin/community management roles in the past, and it's safe to say that vast majority of work in such areas involves checking/replying to emails.

</comment></comment><comment><USER11> In 1997 or thereabouts, it became clear to me that I would _always_ have email waiting to be read.

Therefore:

1\. I set up an independent account that _only_ gets wake-me-up-in-the-middle- of-the-night alerts.

2\. I started automatically filtering all email into different folders.

3\. I stopped all email alert indicators except for the wake-me-up account.

Ever since then, I check email when I get to a natural break in other activities. This happens seven or eight times a day, usually, so I'm never particularly far behind.

</comment><comment><USER12> This is a ridiculously high number. Could it include other communication apps like Slack and Skype? Even then it seems a bit high.

Or does it include sites such as [http://pcottle.github.io/MSOutlookit/](http://pcottle.github.io/MSOutlookit/) ?

</comment><comment><USER13> If anything, that seems low. I'm a programmer, and I have days I'm completely chewed up doing email all day long. Other people, wrangling email is practically their entire job.

<comment><USER14> That's just ridiculous, to a programmer. I don't remember when I have last received something critical by email, never mind _hours_ worth of it. They're all either automated notifications or company-level announcements; neither requires immediate action, or often any action at all.

<comment><USER13> You must be blessed enough not to have to do any support or field questions from customers...

<comment><USER15> How is that the job of a programmer and not tech support? And how is this being done by so many people that the average of 5.6 hours makes sense?

<comment><USER4> Tech support? What's that?

Most software is written for internal company use. In my last job, the software we wrote was used by hundreds of users in my company. No way is the company going to hire tech support people for _internal_ software.

We were very aggressive in ensuring we don't get support questions all the time. We made some of the customers our tech support. Every "domain" of our software had experts amongst our users. So if any user had a question about performing X with our libraries, they were to contact the customer who was an expert in doing X. If he couldn't help, then that expert would contact us. Direct questions to us from new users were just replied to with "Check with the experts first".

This helped a lot in cutting down requests. But most companies/orgs, in my experience, will not be supportive of that type of tech support. We had to be _very_ aggressive in it, _and_ we had the backing of our and the users' department heads.

</comment></comment></comment></comment></comment><comment><USER16> What?! No. I saw it like 15 mins barely. It's all slack now.

<comment><USER14> Though it doesn't help at all if all the interruptions just move to slack, a realtime chat environment may just make messages feel even more urgent to react to than email...

<comment><USER16> slack is not disrupting my attention a lot because I have subscribed only to direct messages and bugs assigned to me directly by QA. I make sure I reduce subscriptions as much as possible by muting most of the channels.

<comment><USER14> Yeah, that's how it should be. But I'm sure for many it's not.

</comment></comment></comment></comment><comment><USER17> Isn't handling documents one of the main tasks in an office job? I don't see the big deal with spending a few hours per day on one of your core tasks.

<comment><USER14> No, unless your job is _specifically_ about communicating with people via email. Which definitely isn't a programmer's job, for example.

<comment><USER18> Unless you work a monstrous hybrid / support / leadership role that sees you both doing long term project work, mentoring, and immediate fixes. I remember my last day with an uninterrupted of 4 hours of flow was about a month ago. That was a super productive day. I still think about it sometimes.

<comment><USER19> > I still think about it sometimes.

Picture it... Sicily, 1922.

<comment><USER18> It's in Sepia tones and everything.

</comment></comment></comment></comment></comment><comment><USER20> I barely check my email more than once a week, I get so many it has become useless. If it is important someone will call or come over to my desk and ask if I got the email. Same goes for voicemail, I rarely listen to them. For three years I just deleted all of them from my boss. It never caused any issues.

</comment><comment><USER21> Proud future troglodyte here. It would appear I am not average.

I check work email twice a day at most unless someone says there is a meeting invite I need to accept. I don't accept meeting invites unless I know what the meeting is about and that I am really required to attend. Most of my emails are filtered and all external emails default to the spam folder.

I check personal email a few times per week at most unless I signed up for something that sends a confirmation email. I run my own mail servers and use strings+more to read email and the S25R regex methodology of blocking connections from generic devices.

I am sick of Slack and try to avoid looking at it and the dozen other places my coworkers chat or share docs.

</comment><comment><USER22> 5.6 hours per weekday! That seems too much to be true. If we work 8 hours, we're left with 2.4 hours to do something else than checking emails.

<comment><USER23> It seems believable. It is sad but for many people, work still means spending a lot of time emailing. Some people don't do much beside emailing about meetings, calling about meetings, and actual meetings.

</comment></comment><comment><USER24> I certainly don't think this is the case for the average user, but I knew about three people who this is absolutely the case for.

</comment><comment><USER25> Personally I check email 5.6 hours per day, Slack 6 hours, Instagram 3 hours, HN 4 hours, Reddit 4.5 hours, Twitter 6 hours, and I still manage to work 14 hours per day.

<comment><USER26> Right. I had to get up in t'morning at ten o'clock at night, half an hour before I went to bed, eat a lump of cold poison, work twenty-nine hours a day down t'mill, and pay t'mill owner for permission to come to work.

(apologies to Python and the 4 Yorkshiremen) :)

</comment></comment><comment><USER27> How many people actually check their email ? I get a notification if a new email arrives, there is no need to 'check' anything.</comment>


Ask YC: check out our clock for YC countdown - <AUTHOR>

http://static.foometer.com/countdown.html
We though it would be fun to have a meter to countdown the time until YC releases its decision for the 1st round picks.  We are assuming it will be around 9 pm EST (6 pm PST). (We're extending it on a rolling basis :)
It's just been coded, so please give us your feedback. This is a really early "foometer" gadget, not the business we applied to YC for. <comment><USER2> I know you guys are excited about applying and receiving a decision, as I was when I applied last cycle, but if anything, your over investment in this application process will probably result in you taking rejection a lot more personally than you should be, which could ultimately result in you not continuing your projects.

The clock is ok. :P

<comment><USER3> While rejection would sting, we already have a gameplan if we get a rejection. The basic system for the clock, though, is just my early attempt at learning AS3 and how traditional Flash timeline-based stuff works with the OO world. It'll be an alternative to the word meters I offer over here: <http://writertopia.com/toolbox/meters>

This "holometer" is for sci-fi writers. There will be a more static one for fantasy writers. I'll let people enter progress into the widget, and the data will be stored on S3 or an alternative I'm looking at. The sound and other animation will be optional and users can embed the system in their profile or web page to show others their progress.

<comment><USER2> My comment was aimed at the applicants in general. :P

<comment><AUTHOR> We're going out for drinks tonight, especially if we do NOT get selected. We're determined to celebrate either way. :-)

</comment></comment></comment></comment><comment><USER4> Cool, but its driving me nuts.

I once wrote a countdown timer for an enterprise workflow app, that counted down until the average form completion time. It turned yellow as it got near the time, and turned red as you went past it. We were recording the average for each employee. I thought it was kinda sick, but fun to program.

I also did a google gadget in flex2/3 check it out. For them to work properly, you need to add them to your google home page. These are in beta, so any advise would be nice.

<http://jdavid.net/gg/gg-count-flex2-v20.xml>

and here is a javascript only version

<http://jdavid.net/gg/gg-count-type-v24.xml>

</comment><comment><USER5> Midnight would be the time they would absolutely have every email out

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

<comment><USER5> Argh my idea (<http://news.ycombinator.com/item?id=69954>) rejected officially 5:46 pm Pacific time. Too bad for me.

</comment></comment><comment><USER6> erm... why does it say 22 hours till the decisions are released?

:) Check your dates perhaps?

Edit: could also do without the sounds, but nice use of flash. I suck at flash/actionscript and should really put in some time to learn it.

<comment><USER3> Oops.. UTC issue that might be resolved now. Yeah, the sound controls and other features are next.

<comment><USER7> now it show less than 2 hours :)

<comment><AUTHOR> Thanks for checking out our clock and your feedback, esp. on bugs.

</comment></comment></comment></comment><comment><USER8> Using the 24 countdown sound made this awesome. 24 ftw.

<comment><AUTHOR> Thanks!

</comment></comment><comment><USER9> doesn't work on the iPhone</comment>


Intercom.io withholding information from my website as hostage. - <AUTHOR>

So I just got an email from intercom.io that stated they received a message in my website, but I would only be able to see the message if I renew their service.
What happened here is that I didn't uninstall their gem from my website for the lack of time I have. Therefore, I would expect them to not allow my customers to send them messages anymore, but unfortunately they do, and they are keeping the messages as a hostage.
It's interesting how they market this. They say I have "A message from a potential customer", and then they send me to their subscription page.
I find this type of business approach DIRTY and NASTY. It's terribly immoral to collect data in my website, from my customers, and withhold that as a hostage to get my money.
I hope intercom gets this message. I already ranted for them in a long email. I find this approach illegal, as our business contract is over and they are still collecting data from my website.
I understand many companies have a very aggressive way to get old customers back, but that should never bear the immorality barrier.
Thank you. <comment><USER2> > _I find this approach illegal, as our business contract is over and they are > still collecting data from my website._

Did you really mean to say that you think this is illegal? That's a pretty strong claim, for what seems like a standard business practice.

You said it yourself that you left their code installed on your website. Many customers would prefer the code to remain active _even if_ their subscription lapses...because subscriptions lapse for all kinds of reasons, often by mistake...and many webmasters would prefer that the end-user experience not be affected because of a simple billing misunderstanding from a vendor.

If you really wanted to convey to intercom.io that you wanted message- collection to cease entirely then uninstalling would be the easy way to do that.</comment>


Some Genius Figured Out How to Play 'Mario Kart' Using His Car as a Controller - <AUTHOR> http://digg.com/video/mario-kart-chevy-volt <comment><USER2> That's pretty clever. If you used a tablet as a head unit, you could switch it into game mode when the engine is off and parked .. might drain your battery if you're not careful though. :-P</comment>


Parody – a PHP testing library - <AUTHOR> https://github.com/dotink/Parody

<comment><USER2> I'm confused, what does this have to do with Aaron Swartz?

<comment><USER3> I assume you are trying to make a joke. But it's not very funny.

<comment><USER4> Not funny at all, but in all honesty, I am also keen to get back to the normal flow of things, I have paid my respects and I feel that perhaps 15 articles on the front page may have been enough for now, leave his friends to mourn as they will, if you over do anything people tire of it quickly.

</comment></comment></comment><comment><USER5> There are a number of mock object libraries out there (mockery, shmock, phpunit's mock syntax, etc). This just looks like another builder syntax for making mocks / stubs with some fanciness around class extension - what's the benefit?

Also, how often is it useful to define a class at test time that is initialized by production code (from the section I Still Have Serious Dependency Issues!). This seems like an unlikely use case.

<comment><AUTHOR> I wrote this library for two major reasons:

1) To avoid the complexity of existing frameworks. 2) To be able to quickly and easily test code with various kinds of dependencies.

It is predominately designed to test a single class in an extremely isolated context, not in the context of a full blown testing framework.

It is designed to be a stupid as possible with the intention of allowing the developer (myself) to define very strict test condition and very fine grain control.

</comment></comment><comment><USER6> Noticing it's licensed under AGPL. I guess that means all projects that happen to include this (or something depending on it) would then be required to post full source code on the webpage, even if the project is for a single install?

<comment><AUTHOR> Nope. If the project actually uses tests for its function and it is accessible they would be required to provide the source to anyone user who requested it.

Much like the regular GPL, AGPL is dependent on distribution.

If you create a project that uses it to perform testing on the project, unless your testing is a function of the actual project then you wouldn't have to do anything of the sorts.

If you created a testing platform online that used it to render services, then you would, yes.

<comment><AUTHOR> Let me clarify, I don't think anyone's projects that are web facing actually use their testing library to perform the tasks. So for all intents and purposes their projects as they are "distributed" over a network are not linking to it even though it may exist in their source tree.

The only exception to this would be if the project is actually for testing, like say an online service that tests your code.

Also any private non-distributed use does not require source distribution.

<comment><USER7> Why is it AGPL then and not GPL? This seems to just create a minefield in the strange event when some test function needs to be exposed to the public for some reason. While this probably won't occur, if it does, suddenly the whole source needs to be released.

There does not seem to be any benefit to making this AGPL as it as the source release on use feature of AGPL is not intended to be used during regular usage.

Change it to GPL - it makes no practical difference, yet increases potential usage of the library at no cost.

<comment><AUTHOR> GPL only applies to binary software. PHP is not compiled and linked.

<comment><USER7> You're correct...

I find this completely insane though! Everything is just 0s and 1s that are transformed and ultimately can be passed through the logic gates on a CPU to do math. Whether code is compiled or interpreted has no effect on the end goal - such as an instruction to the CPU to add two numbers.

Copyright is such a mess.

<comment><AUTHOR> I tried to clarify above.

What I am trying to get at is that traditionally web software is not distributed at all. That is, the software itself is never provided to the user and the user just interfaces with it externally.

The point regarding binary stuff was as it applies to distributed projects because if PHP or any other interpreted language is "distributed" in a traditional sense, it is _already_ in source code.

I feel as though the confusion here is because people are looking at the initial distribution to other developers and thinking that's it. But that distribution completely allows for a developer to "link to it", modify it, and keep it behind closed doors _if it is never distributed_. And it isn't if it's sitting behind a web server... someone is just interfacing with it through a completely open protocol.

The point of the AGPL is to say that someone who is using a program, regardless of the fact that the program itself is never being distributed to them, has a right to get the source.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> Since this library requires PHP 5.4, I'm not sure why it bothers with this syntax:

        Parody\Mime::create('Vendor\Class\Project')
        -> onCall('method') -> expect('argument one') ->  give('response one')
        -> onCall('method') -> expect('argument two') -> give('response two')
        -> resolve();

When one could just use anonymous functions to give the same result with less API-as-code.

        Parody\Mime::create('Vendor\Class\Project')
        -> onCall('method', function($param) {
          if ($param == 'argument one') return 'response one';
          if ($param == 'argument two') return 'response two';
        ) -> resolve();

This is more flexible, less code for the framework, and easier to learn.

<comment><AUTHOR> Expectations and responses (provided by give()) are actually held internally. Your syntax is cleaner for very simple responses, however will become increasingly complex, particularly when the response itself is determined by a callback. Adding more params would clutter your example terribly. Also, the mime's are passed to callbacks which provide response so that additional functionality can be added, see this recent use-case:

Parody\Mime::create('App\Text') -> onCall('create') -> expect('WTF' . DS . 'Yo') -> give(function($mime) { return $mime -> onCall('underscorize') -> give('wtf' . DS . 'yo') -> resolve(); });

<comment><USER8> That seems exceedingly clever -- too clever. I'd make some of that functionality a named function and call it from my callback. It took me way too long to figure out what your code did.

<comment><AUTHOR> I'm not sure I follow. Could you give a hypothetical example?

It's difficult to tell if you are only referring to the passing of the original Mime as an argument... which if you are, I presume is more a limitation of documentation. While it may be clever, it's a pretty standard use of callbacks to have arguments passed to them that may be useful inside.

<comment><USER8> Obviously, it would make sense to pass an instance of the object as the first argument to every callback.

A mocked class stands in for the original class. All the methods are stubs. Sometimes you need to provide functionality for the stub methods. Isn't it most logical to use a function to provide a stub method's body?

It's my opinion that all the stuff PHPUnit unit does with mocks (and JUnit as it's based on) is because Java didn't have anonymous functions. So you _had_ to call methods to essentially construct code for the stub method body. But if you can provide _actual_ code than all that API is unnecessary.

<comment><AUTHOR> In 99% of cases I would wager you _don't_ want your stubs to perform much logic at all. You want their returns to be a static as possible. The more logic your stubs perform the greater chance your test may fail due to an error in your test logic.

This is _purposeful_. The point of passing the original mime object in two- fold. It is first that it allows you to manipulate the object further when and only when the method is called. This is extremely useful for mocking/stubbing very dynamic objects whose behavior may change based on a method call. Secondly, it allows you to return the mimicked object.

Think of a method, for example that might expect two arguments, set a number of properties, and then return itself. Now imagine it has a second method, which may also alter one of those properties and return something else completely. This is pretty straightforward to do with parody:

        Mime::create('Vendor\Project\Class')
            ->onCall('method1')->expect('arg1', 2)->give(function($mime) {
                $mime->onGet('property1')->give('totally');
                $mime->onGet('property2')->give('possible');

                return $mime;
            })
            ->onCall('method2')->give(function($mime) {
                $mime->onGet('property1')->give('new value');

                return TRUE;
            });

I am not readily familiar with the syntax of other frameworks... but this seems a lot more flexible than passing arguments to the callback and forcing untested logic into the callbacks.

As I mentioned in another comment -- this is designed for very strict and context sensitive test cases. In principle, everything you should ever expect when calling a method is to give something and get something back, and maybe that it modifies a property. All of this is possible here, the logic of how it transforms what you get to what it gives is irrelevant, you should know the answer to both as a developer. And by removing that logic from the code, you "fake" only the very explicit expectations of the code you're pretending to be.

<comment><USER8> I think I finally see where you're going with this -- that's very interesting and clever (in a good way). I might suggest that you need better documentation/examples -- it took me a while to _see_ what was going on.

<comment><AUTHOR> I completely agree with this, and the documentation will be forthcoming on the GitHub wiki - so please follow and keep and eye out. There will also be an article at some point soon on Nettuts which will give a pretty complete example of it mimicking a new object instantiation to resolve a static dependency on an example class being tested.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> This library could use Composer support. I suppose I'll make a quick pull request.

<comment><AUTHOR> I'm cool with that. Feel free to move the example.php into a separate subdirectory to make it cleaner too, but please fix the includes to point to whatever relative directory need be.

<comment><USER9> It's done, I didn't touch the file structure since Composer is smart enough to map classes even if the layout isn't PSR compliant.

<comment><AUTHOR> Ok... I did have to increase version in composer.json though due to literal array syntax (hopefully not a deal breaker).

<comment><USER9> Sure thing, didn't notice before.

</comment></comment></comment></comment></comment><comment><USER10> great simplistic php testing framework: <https://github.com/parf/spartan-test></comment>


Ask HN: Is data from Fortnite being used to train AI paratroopers? - <AUTHOR> It would add insult to injury if we were invaded by a foreign power using robots trained from our own actions in a video game.  Has anyone given the Terms Of Service a once-over? <comment><USER2> > Has anyone given the Terms Of Service a once-over?

Have you?</comment>


Clojure gets sponsored - <AUTHOR> http://thoughts.contegix.com/2010/07/28/global-tech-company-contegix-to-sponsor-open-source-language-project-clojure/

<comment><USER2> Not sure what exactly it means to be "sponsored", but quite a few companies and individuals give financial support to clojure: <http://clojure.org/funders>

<comment><USER3> A number of HN Clojure users included :)

</comment></comment><comment><USER4> Sponsored as in just the site hosting per the press release, or actually paying Rich and gang full time to work on it?

<comment><USER5> It looks like hosting in that last paragraph. I don't read any more than that out of it.

</comment></comment><comment><USER6> Clojure has been bootstrapping really well, but any kind of help should be appreciated. Thanks to Contegix.

</comment><comment><USER7> I want to see this on the Clojure website. Also, what kind of sponsorship are they providing ? 2 servers ?

</comment><comment><USER8> Was hoping this would take care of cash flow issues and let Rich focus on Clojure without distraction. It doesn't appear that it does; although, it's nice to see commercial Clojure support on any level.

</comment><comment><USER9> sounds like just a hosting donation.

if so, pretty easy and cheap to do in a world with Linux VM's and cloud provider API's. They may have figured it was a net-win due to the publicity/eyeballs gain.

</comment><comment><USER10> As the original press release mentioned, Contegix is currently providing two servers: build.clojure.org and dev.clojure.org. That's what we needed, so that's what we asked for. :-)

As others have mentioned, Contegix is one of many organizations and individuals supporting Clojure. Nowhere is the excitement around Clojure more visible than in the wide variety and diversity of support coming from the Clojure community.</comment>


Ask HN: What will Code Year cover? - <AUTHOR>

Has anyone seen a syllabus for Code Year?
I have a friend who's never programmed asking me if it will help him gain a working knowledge of web development.
I'm not sure what to tell him. The site says, "...you'll be building...web sites in no time," but I'm not sure how much prerequisite web experience is expected. <comment><USER2> _"They just launched Codeyear.com which will send one lesson each week (starting with JavaScript, ending up in Python) to give people a well rounded set of skills[...]"_

From: [http://forums.footballguys.com/forum/index.php?showtopic=630...](http://forums.footballguys.com/forum/index.php?showtopic=630049)

</comment><comment><USER3> I feel like for now, CodeYear is a bit of a novelty. If they are serious about learning, I highly recomend starting them on a few books:

Begin with a solid HTML + CSS book. If they do well, get them going on Michael Hartl's Rails tutorial (available in several formats) and Chris Pine's "Learn to program" (Beginning programming with Ruby).

If rails is too much, I'd go for Eloquent Javascript: <http://eloquentjavascript.net/></comment>