Like a Swarm of Lethal Bugs: The Most Terrifying Drone Video Yet - <AUTHOR> http://www.theatlantic.com/technology/archive/2013/02/like-a-swarm-of-lethal-bugs-the-most-terrifying-drone-video-yet/273270/ <comment><USER3> Just in case someone is wondering, we are not even remotely close to technology like this. The control problem is very hard, but the perception problem perhaps even harder, Especially when most of the processing needs to be done onboard because you need the perception to be part of the control loop and work at reasonably high frequencies. Higher-level perception tasks such as identifying power lines or people are even further out.

<comment><USER4> Actually, there is commercially available optical flow sensors available today.

<comment><USER5> I laughed when I heard the reference to optical flow sensors, like somehow strapping an optical mouse sensor (albeit with appropriate lens technology) to the bottom of a drone somehow solves all the sensing and control problemthin loved in bringing this technology to the mainstream.

An optical flow sensor has _very_ limited utility; it's possibly the least useful of all the sensors you could add to a UAV. It's inclusion in this video was purely marketing fluff for the technically illiterate, thanks to its fancier-than-it-actually-is sounding nomenclature.

<comment><USER4> Obviously, Optical flow sensors are a bit more complicated than mouse sensors, (although similar). Optical flow is very similar to how insects judge their relative location, and it's a critical component in existing advanced drone technology, early in application, but almost a decade old in theory.

</comment></comment></comment></comment><comment><USER6> These are about as practicable as developing lightsabers. They are:

1\. Difficult to build. It's proving incredibly hard to achieve any decent range for electrical road vehicles. This multiplies manifold when trying to cram components into a much smaller space and make the whole thing _fly_.

2\. Difficult to control. Gusts of wind, predatory birds, reliable bandwidth etc.

3\. Trivially easy to defend against. Think mosquito nets, burqas and cheap radio jammers.

<comment><USER7> 1\. I believe that was addressed in the video. These are very short range devices that can be recharged by solar energy or by sitting on power lines.

2\. See the video.

3\. You might be able to deny access to buildings with mosquito nets but you're not going to stop close range surveillance, painting targets and other uses. Mosquito nets themselves would be relatively trivial to dismantle with a swarm of these (you'd only need to land one with explosives on the net).

<comment><USER6> 1\. The short range is a killer. You already need to know where the bad guys are, within an area of a few blocks. And solar panels with such small form factor are a joke in comparison with the energy demands of powered flight. (Sure, there are solar powered drones, but they need huge wings, perfect weather, and are little more than powered gliders.)

2\. I didn't see any good counter-arguments there. Care to detail.

3\. Explosions will alert the building's occupants, and you just sacrificed a complex, expensive device for a $0.50 mosquito net.

</comment></comment></comment><comment><USER8> "When I watch that simulation I am horrified. I also think to myself, this technology is more likely to diminish American security than to enhance it."

Quite so, but that's no argument for the US not working on it anyway. The enemy will have it eventually no matter what. We might as well have it too.

<comment><USER9> What is this "we" you speak of?

<comment><USER10> Civilized humanity? As in the opposite to fundamentalists?

<comment><USER11> Yeah, not really. I'm a proud American citizen; I spent six years in the US Air Force. But I have no illusions as to our military, and the uses to which our Congress puts it, as representing "Civilized humanity, . . . the opposite to fundamentalists".

We spend about as much money as the rest of the World put together on our military, and have a force about equal to the rest of the World put together. This allows us to live in a unique position in history. We can assume our safety from the horrors most of humanity have experienced; we can go about our daily lives without concern for dire, hellish possibilities. It allows us to plan for, and save for, lesser emergencies only.

As a WASP male I am incredibly fortunate to live in the time and place I do. But we aren't somehow superior to our enemies because of this stroke of luck.

<comment><USER10> We are making investments into science and technology. For example, technology that protects biosphere on earth from complete extinction by an asteroid strike. Countries with fundamental regimes, generally do not. Good enough?

</comment></comment></comment></comment></comment><comment><USER12> I believe most right thinking people in this world are terrified of the military power of the USA. Even I, being a US citizen, am starting to become very concerned with our military weapons and their usage as they seem far more likely to be turned on us then our enemies. Call me a nut job if you want but we are all just a proclamation away from being "domestic terrorists".

<comment><USER13> Yes, our military (I'm also a US citizen) has a whole lot of things that do bad, painful, often fatal things. They're scary for any number of reasons, one of which is certainly the possibility of their use against us.

However, this is in no way limited to the US. Many, many governments -- possibly most -- have similarly awful and destructive, if not as technologically advanced, ways to harm anyone and/or everyone in range.

It would make more sense to be afraid specifically of the US military if there were no one else out there throwing around this kind of power. As people who don't want to be shot at, blown up, or dissolved instantaneously by hordes of angry electrosquitoes, singling out the US as the main subject of our trepidation seems a bit arbitrary.

<comment><USER14> Instead of the current war/combative/investigative tasks that they have, I hereby demand all the drones be re-commissioned and given the following tasks:

\- Keeping track of the forest cover and water resources

\- Geographical surveys to identify use & misuse of resources

\- Track and identify poachers and loggers

\- In cities, keep an eye on the air pollution and particulate levels

\- Identify factories emitting pollutants above the limits

\- Tracking inclement weather

\- Attend to humanitarian needs in disaster situations

</comment></comment></comment><comment><USER15> You know what is terrifying? The deployment of any single military technology ever developed against one's person.

<comment><USER16> Yes. Just think about a sword. "You designed this tool _specifically for hacking people apart_!?"

</comment></comment><comment><USER17> This sounds quite wonderful --- for the open battlefield. I quite support the use of anything humane that can reasonably improve our soldiers' intel on the ground, as intelligence is everything in a war.

That said. I am terrified of the thought that this could be used against a country's own denizens, be it by the police, or by the military actively seeking out targets of their own. Furthermore, while this is being developed by a country that is actually quite high on the freedom and anticorruption graphs, what happens when either those countries become more of a dictatorship; or, more likely to happen soon, countries that very clearly violate human rights, or generally oppress their people get a hold of them?

It's sad that, when looking at a technology, you have to look at both, "Wow! This is incredible! We'll lose fewer lives on the battlefield, and our soldiers will come safe because we can avoid traps, etc!" as well as "... someday, these are going to be acceptable to point at our own people, in the interest of something that doesn't deserve such invasion of ... everything." Countries are not God, and it's scary when they start trying to recklessly wield such omniscience. I know I couldn't trust myself knowing all that these drones could offer. I'm not sure I could trust many, if anyone, with such knowledge.

<comment><USER15> I am really not sure why the inevitable conclusion is that the US will direct every bad technology against its own citizens. Does it not occur to anyone that they might be at least as likely to be attacked by non-governmental groups?

<comment><USER18> More US Citizens have been killed by the Federal Government than by any other organized group. The military has been involved with strike breaking [1]. The military was used to suppress the southern states from seceding from the union. [2] Say what you want about the horrors of slavery, but the southern states had the right to secede and were suppressed militarily. More recently, the President has suspended the 4th amendment, and, quite relevant to this article, authorized murder of US Citizens using drones.

These are facts. There's no leaping to conclusions here.

[1] [http://en.wikipedia.org/wiki/History_of_union_busting_in_the...](http://en.wikipedia.org/wiki/History_of_union_busting_in_the_United_States#Union_busting_with_military_force) [2] [http://en.wikipedia.org/wiki/American_Civil_War#Causes_of_se...](http://en.wikipedia.org/wiki/American_Civil_War#Causes_of_secession)

<comment><USER19> I'm not sure the civil war is a good argument. If they seceded lawfully, they weren't citizens. If they weren't lawfully seceding, they were traitors/insurrectionists. In arms no less.

More germane might be the experiments at Oak Ridge.

</comment></comment></comment></comment><comment><USER20> I personally, recreationally, have been building RC flying machines since the 70's, and have recently returned to the subject after a decade or so of torpor, with renewed vigor only a pair of growing sons can provide. My teenage young mind would asplode to know what my elderly hands are doing with the micro-tech that is, Thank the (Moores) Law, currently available.

So .. my kids took one look at this video, groaned about the CG, then sat down and started building their own versions out of some broken Amber2 parts we had laying on the repair bench.

The Pentagon might have the deployment desire figured out, but we hobbyists are already flying drones like this, hand-made, for peaceful and fun purposes. If this ever changes, we're going to be in for a rough ride .. my kids know how to recycle a DVD drive into working micro-planes that can carry camera parts: are they going to grow up in a world where knowing how to do such things without tacit approval will be illegal?

</comment><comment><USER21> Someday we'll be fondly remembering with our leaders weren't all secluded deep indoors, behind EMP fields, or stuck riding around in popemobiles.

<comment><USER22> And a decade after that our children will roll their eyes when we tell them that we, their parents, used to walk around without wearing a Faraday suit, external EMP generators, and RA/LIDAR early-alert systems built into our goggles.

</comment></comment><comment><USER23> _"Who knows? Sure, we have a technological advantage right now, but micro- drones sure seem like a disruptive technology that will eventually help rather than hinder attempts at asymmetric warfare."_

Does this quote remind anyone else of the innovator's dilemma?

</comment><comment><USER22> With the sound off, it could almost be a Lexx trailer.

<comment><USER24> With the sound on, it sounds as if it is marketed for 14-year-olds. Are military presentations actually like this? Makes me think we need more women in those positions.

<comment><USER25> I was wondering if they took their font from Call of Duty: Modern Warfare, or if they both took it from the same place.

</comment></comment></comment><comment><USER26> Sure, but a lot of this is pure scifi at this point.

<comment><USER27> really? [http://www.huffingtonpost.com/2012/02/02/flying-robots- nano-...](http://www.huffingtonpost.com/2012/02/02/flying-robots-nano- quadrotor-drones-swarm_n_1249442.html)

<comment><USER26> Yes, we have small flying robots. But off the top of my head, here are a few technologies mentioned in the video that we are not very close to:

1\. Small wing-flapping robots that can adjust to wind gusts

2\. Tiny, hybrid helicopter-birdplanes that magically don't spin when in rotor-mode, despite apparently having no anti-torque mechanism whatsoever. Also they look exactly like birds when perched and when flying.

3\. Device that can harvest enough waste energy from vibrating machinery for _powered flight_ (this one might be straight-up impossible)

</comment></comment></comment><comment><USER28> It's a video game, folks. At best, it's psyops—what could be better than the enemy truly believing that you are all-seeing, wasting their time paranoidly looking around at pigeons and flies?

</comment><comment><USER29> Have any of you ever heard a small flying machine in real life? They are very noisy.

If you try to "surveil" me in my hallway like that, I WILL hear your tiny wings flap, flap, flapping.

<comment><USER30> This is very true. Right now the only solution is to plant somewhere. But props / wings will become quieter as the systems become more efficient (think of a fan vs a DC motor prop).

</comment></comment><comment><USER31> Relevant novel by Stanislaw Lem: <http://en.wikipedia.org/wiki/The_Invincible>

</comment><comment><USER32> Direct link to the video: <http://www.youtube.com/watch?v=_0KbuE1z9_k>

</comment><comment><USER33> Related video:

[http://www.ted.com/talks/vijay_kumar_robots_that_fly_and_coo...](http://www.ted.com/talks/vijay_kumar_robots_that_fly_and_cooperate.html)

</comment><comment><USER34> Daniel Suarez's novel "Kill Decision" is a more riveting take on these drones. I highly suggest it to anyone interested in drones portrayed in a sci - <USER2> plot.

</comment><comment><USER35> Does anyone remember _Space Station Silicon Valley_ on the N64?

<http://i.imgur.com/vxNjIQf.jpg></comment>


A free Bootstrap admin theme (that doesn't suck) - <AUTHOR> http://portnine.com/bootstrap-themes

<comment><USER2> Some things:

Why the 'that doesnt suck' addition? Are there so many free Bootstrap admin themes out there that suck?

I find it weird that the "53 tickets 27 tasks 15 waiting" looks like every number label is a button.

What do you understand when referring to a "Ruby template" ? Is it .erb's in a package, sections? Does it include some logic? If so, what?

Are you improving on this theme constantly or is it a 'one-off' download?

<comment><AUTHOR> Thanks for the feedback!

1) Just trying to make the headline more interesting. There are actually a lot of really good themes out there.

2) Thanks for that, I'll see what I can do.

3) Yeah, I should be more clear on that. It is .erbs built with middleman. There are a few helpers for creating the side nav but it is pretty basic. Mostly, each page is in a separate file from the main layout. Email me and I'll send you the full package if you are interested.

4) Depends on how many people actually use this thing and provide feedback.

</comment></comment><comment><AUTHOR> Hey everyone, I made this hoping it would be useful. I would love any feedback.

<comment><USER3> Good looking theme. I'm not if I could ever use it though, the license seems a bit restrictive for an admin theme.

Perhaps you can clarify, but as I read the license, it seems like I can only install it on domains I own, even if I purchase the Unlimited License. Since this is an Admin theme, I'd probably find it more useful installing it on domains I _don't_ own (for customer work).

<comment><AUTHOR> Yeah, the license is kind of messy but isn't meant to be. I need to fix that. Basically if you buy the unlimited, you can pretty much do whatever you want as many times as you want. I'll fix that tonight. In the meantime, feel free to email me and I can send you something better.</comment></comment></comment>


What it feels like to be in the zone as a programmer - <AUTHOR> http://dopeboy.github.io/in-the-zone/ <comment><USER2> I get this too, but it's very draining - similar to doing an intensive workout, or given a talk at a conference.

The negatives are obvious; less sociable, more easily irritated, wanting to be by yourself. After you've spent a day in the zone, you're not really "party material".

The positive (apart from being very productive) is that I use it to get my negative feelings out of the way - anything that is bothering in my life is somehow gone when I am in "the zone" \- it is truly a zen feeling as the author explains.

It's also important to mention that you can't force yourself to be in the zone. It comes and goes, with very little control on your behalf. People that try to force themselves in the zone by working harder, are not truly in the zone. It happens seamlessly without you even knowing or wanting it.

For instance, I'm hardly in the zone. It happens probably once every two weeks, if not less - it also depends on what I'm working on; if it's something new and exciting I'm more predisposed to get in the zone.

Being in the zone is like getting an adrenaline rush - you can force yourself to do it more often (go skydiving for instance), but if you do it too often you'll quickly drain out and not enjoy it as you used to.

<comment><USER3> > It comes and goes, with very little control on your behalf.

As anecdata makes the data, here's mine - you have a lot of control of it.

If you can control your environment (audio, light, temperature, food, exercise, communication, interaction, ...), you can get _in the zone_ too just by virtue of almost exclusively focusing on some type of work you _get in the zone_ for in the first place.

Live by code, die by code.

<comment><USER4> No amount of control of my environment will put me in the zone when I'm working on boring code. Crud framework? I'll be reading HN while going through the motions. Code review? Time for some stimulating music (though not too stimulating, I do need to pay attention to the code review).

But give me something interesting - a real challenge - and I'm able to get into the zone, the hours flying by like they were minutes. My brain has to be able to fully engage with the problem to hit that zone.

Of course, I'm a technical lead in my group, so the ability to control my environment is limited. So I get up absurdly early just to get work done before I have to be available to be interrupted.

<comment><USER5> >No amount of control of my environment will put me in the zone when I'm working on boring code.

adderall

<comment><USER6> As an ADD person who has to take it regularly, I can say that it can just easily focus you on replying to anything of interest on Hacker News... so no, doesn't work this way.

<comment><USER5> Yeah I've lived it. You have to get to work right away so when it kicks in otherwise you'll generally keep doing whatever you were doing when it did. It can turn you into a god of productivity if you use it right or a degenerate jacking off for 12 hours straight.

</comment></comment></comment></comment></comment></comment><comment><USER7> Speaking of The Zone:

I often see programmers on HN talk about building mental castles of their programs, but I feel like I don't really code the same way. Instead, my thinking seems more "functional". For a given problem, I can often make out the faint outline of an optimal solution, but there's a lot of cruft and misplaced bits in the way. Most of my work involves mentally simulating the consequences of different options and then bending the architecture into such a shape that the whole thing just sort of assembles on its own. I'm only "in the zone" when I have to make that final leap. There's very little castle- building along the way.

As a result, I feel like I'm somewhat incapable of working on massive, multi- part architectures, since I just can't see the running state in my head. Once I zoom in to work on a single component, the rest fade from memory and I lose the big picture. On the other hand, I have no problem working in open-office environments: I don't mentally deal with a lot of program state, so I'm able to just dive right back in. This also influences my code to be more functional, as I know I can rely on e.g. idempotent methods to keep doing what they're supposed to regardless of any finicky global state.

I wish I could get better at building those "mental castles" since it's a huge barrier to designing complex architectures (like games). I don't want to be stuck forever working on the leaves of the tree. Might be related to OCD: I've had the disorder for a long time and I've sort of conditioned myself to avoid keeping running thoughts in memory before the "OCD daemon" distorts them into something horrible. As a result, much of my thinking is necessarily spontaneous and intuitive, or at the very least wordless.

Can anyone else relate?

<comment><USER3> I relate.

> I wish I could get better at building those "mental castles" since it's a > huge barrier to working on complex architectures like as games.

If you truly wish to do so - go make technically challenging systems like games. From start to end. Solo.

<comment><USER8> That's actually how I got into that mode too. I picked up Phaser.js and started making something and quickly realized that games give the opportunity for states to change very quickly and often in unpredictable manners especially compared to CRUD or web apps. It's not as easily defined, so you kind of are forced to hold it all in your mind to understand the ramifications of some code you're running. Especially when that code can run 60 times per second, constantly, if you put it in the update loop.

Plus testing is not just running RSpec, you have to play the game, play it a ton, play it in stupid and unpredictable ways, and when something breaks try to figure out where it broke. So you have to hold that code in your mind the entire time you're playing, too, to keep an idea of what methods are triggering at any moment.

Games are an amazing way of forcing you to "see the Matrix" and read the code in your mind as it runs in real time.

</comment></comment></comment><comment><USER9> I haven't been in the zone for months. It's mostly general dissatisfaction with my job, but it's gotten worse of late.

On an average day, there will be 4 hours of calls spread an hour or less apart for the first half of the day, with the potential for surprise calls for the rest of the day. The irony is that a lot of these calls are about why things aren't getting done.

The surprise calls are the worst. Even if I might have 2 hours of uninterupted time at the end of a day (when I am most tired and frustrated) it is impossible to get focused when there is always a looming threat of interruption. It's gotten so bad that I only get anything done late at night or over weekends, but then I am tired during weekdays and resentful that I had to throw away my freetime in order to move a project forward.

<comment><USER10> Might not help if you're stuck in an authoritarian micro managing matrix but some tactics I've found useful before.

1) Block out 3 hours in the morning and 3 in the afternoon in your calendar as busy, marked private, at slightly different times each day. If asked you can be honest, many times people will not ask and simply avoid booking.

2) Leave your least productive time of day open for 90 minutes of meetings - for me this was post lunch.

3) Always reply and ask for an agenda so you can be sure you're necessary (it's a constructive way of making the requester think twice about whether they really need a meeting).

4) Often suggest a new time that is only 30 minutes long rather than the default hour.

5) Decline politely if you are not specifically necessary (Thanks for the invite Peter, appreciate being kept informed but I don't think you need me for this and I have a conflict - no need to reschedule for me).

But mainly just look for a way to leave. That company is heading down the tubes.

<comment><USER11> Simple and easy to apply. I will start using some of these, thanks

</comment></comment></comment><comment><USER12> I don't think I've ever experienced anything like this. As I practice TDD, my usual workflow is think -> test -> code, code usually being the easiest part. Things like "problems break down instantly", "everything becomes effortless" sound strange and exciting. I wonder how that relates to the concepts of maintainability, cowboy programming and 10x engineer.

I've met a few programmers in my career who were able to write a huge amount of code doing wonderful things without testing at all. One guy I think of would spend days coding without even trying to compile his code and apparently, except for minor typos he could quickly fix, his code was working when he decided to compile and test it. He impressed bosses and colleagues with amazing features developed in a very short time but, on the other hand, nobody on the team was able to maintain his code. This was explicitly stated and accepted by team members, we knew we couldn't maintain his code but we were ready to accept it given the productivity of the guy. It was a trade-off.

This way of working is completely alien to me. I can't think things in my head out of nothing and write working code. I need to start building something and get feedback from the computer to go to the next step. That's why when I was introduced to TDD it immediately made a lot of sense to me. It matched the way I was already operating. If I didn't have this workflow I think I would be unable to write even mildly complex code.

It's interesting how people can operate differently. In a way I'm a bit jealous of those "zone" programmers who can produce amazing things very quickly. But, on the other hand, I can see that I'm also useful because companies hire me and want to keep me. I've seen many times people taking over my code, maintain it and develop it further. I've even been explicitly told a few times that my code was very easy to understand and maintain. Seeing people taking over my code and develop it further is one of the most satisfying things in my work.

<comment><USER13> I'm one of the coders who will sit down for hours without compiling and end up with working code (doing it right now, I've got a new algorithm which I couldn't wait until Monday to dig into). But there's a process of preparation leading up to that point.

First step usually involves a whiteboard and/or pen-and-paper notes for developing the overall design, data structures and algorithms. Then I'll use hierarchical note taking to sketch out the data structures and algorithms in what amounts to pseudo-code. During that step, I'm constantly looking through any existing source code and repeatedly iterating to make sure all cases are handled.

Then the fun part of walking through those notes and coding out each individual step one by one. That will typically take anywhere from 2-8 hours without touching the compiler (though sometimes, if the changes are incremental, I'll compile occasionally to check for typos). I'll queue up a few albums and/or mixes to help focus and just sort of disappear from the rest of the world.

<comment><USER14> > 2-8 hours

I'm at the opposite extreme: I code in Lisp, so design and coding are interleaved with a cycle time measured in minutes or seconds. The compiler is my collaborator throughout, checking my work at every step.

[UPDATE] Downvotes? Seriously? Why?

</comment></comment></comment><comment><USER15> Years ago I went through some neurotherapy with a local doctor [1]. One part of the process had clips on my ears and a sensor on my head to read biofeedback (or something along those lines).

The game was simple: there's a silo on the screen with a hot air balloon on the left side. When I get into 'the zone', the balloon goes up and around the silo. This will loop for as long as I can hold it.

It took about two sessions with minor success, then suddenly it clicked. Now I can easily enter that state on demand.

This might sound odd, but the neurotherapy helped eliminate a lot of the negative parts of ADHD without losing the edge that a lot of medications take away. I still have a lot of energy, but I can always sit and focus on the task at hand when I need to.

[1] [http://www.swingleclinic.com/about/how-does-neurotherapy- wor...](http://www.swingleclinic.com/about/how-does-neurotherapy-work/)

</comment><comment><USER16> "The Dexterous Butcher"

Cook Ting was cutting up an ox for Lord Wen-hui. As every touch of his hand, every heave of his shoulder, every move of his feet, every thrust of his knee — zip! zoop! He slithered the knife along with a zing, and all was in perfect rhythm, as though he were performing the dance of the Mulberry Grove or keeping time to the Ching-shou music.

"Ah, this is marvelous!" said Lord Wen-hui. "Imagine skill reaching such heights!"

Cook Ting laid down his knife and replied, "What I care about is the Way, which goes beyond skill. When I first began cutting up oxen, all I could see was the ox itself. After three years I no longer saw the whole ox. And now — now I go at it by spirit and don't look with my eyes. Perception and understanding have come to a stop and spirit moves where it wants. I go along with the natural makeup, strike in the big hollows, guide the knife through the big openings, and following things as they are. So I never touch the smallest ligament or tendon, much less a main joint.

"A good cook changes his knife once a year — because he cuts. A mediocre cook changes his knife once a month — because he hacks. I've had this knife of mine for nineteen years and I've cut up thousands of oxen with it, and yet the blade is as good as though it had just come from the grindstone. There are spaces between the joints, and the blade of the knife has really no thickness. If you insert what has no thickness into such spaces, then there's plenty of room — more than enough for the blade to play about it. That's why after nineteen years the blade of my knife is still as good as when it first came from the grindstone.

"However, whenever I come to a complicated place, I size up the difficulties, tell myself to watch out and be careful, keep my eyes on what I'm doing, work very slowly, and move the knife with the greatest subtlety, until — flop! the whole thing comes apart like a clod of earth crumbling to the ground. I stand there holding the knife and look all around me, completely satisfied and reluctant to move on, and then I wipe off the knife and put it away."

"Excellent!" said Lord Wen-hui. "I have heard the words of Cook Ting and learned how to care for life!"

Translated by Burton Watson (Chuang Tzu: The Basic Writings, 1964)

[http://www.bopsecrets.org/gateway/passages/chuang- tzu.htm](http://www.bopsecrets.org/gateway/passages/chuang-tzu.htm)

<comment><USER16> Also:

The Tao of Programming [1] 4.4

Prince Wang's programmer was coding software. His fingers danced upon the keyboard. The program compiled without and error message, and the program ran like a gentle wind.

"Excellent!" the Prince exclaimed. "Your technique is faultless!"

"Technique?" said the programmer, turning from his terminal, "What I follow is Tao -- beyond all techniques! When I first began to program, I would see before me the whole problem in one mass. After three years, I no longer saw this mass. Instead, I used subroutines. But now I see nothing. My whole being exists in a formless void. My senses are idle. My spirit, free to work without a plan, follows its own instinct. In short, my program writes itself. True, sometimes there are difficult problems. I see them coming, I slow down, I watch silently. Then I change a single line of code and the difficulties vanish like puffs of idle smoke. I then compile the program. I sit still and let the joy of the work fill my being. I close my eyes for a moment and then log off."

Prince Wang said, "Would that all of my programmers were as wise!"

[1] The Tao of Programming [http://www.mit.edu/~xela/tao.html](http://www.mit.edu/~xela/tao.html)

<comment><USER17> "without and error message"

I did enjoy the story though.

<comment><USER16> Actually didn't realize this until you pointed it out. It is written like that in the original. I like to interpreted it as a hilarious self-referencing pun^^

</comment></comment></comment></comment><comment><USER18> Back when I worked at Sun, and got in the zone all the time, I worked on a ~32 hour daily clock. Because some of the work I was doing would take me about 8 hours to get back to the state of mind where I was yesterday. So instead of working 8 hours I would work for about 16, so I actually made 8 hours of forward progress. The 32 hour "day" was so I could have the rest of a normal day to eat, sleep, etc.

This got to be common enough that someone made a clock, where you could move the hands, it said "Larry will be in here" and stuck it on my door. I think it was sort of a joke but I think some people actually used it.

I couldn't come close to doing anything like that now. And at 55 years old, I can tell you that the days where you get in the zone, for me at least, are few and far between. I used to be able to just go there, now it sort of happens to me and I have to drop everything else and ride it before it fades away.

</comment><comment><USER19> I find that isolating myself from my surroundings can actually help encourage me get into the zone. I work from home, usually by myself, but if I want to get into the zone I'll chuck on a pair of headphones; something about that helps focus me, prevents distractions, and pulls me into the zone more easily. I suggested this to a friend recently whilst he was writing his dissertation, and he found that it worked well for him too and really helped him get through it.

However I can't have folk music, as I stumble across a great tune too often and get up to play it instead :)

It is much easier to stay in the zone when there's a physical barrier between you and other people. Even so much as being asked if you want a cup of tea is enough to pull you out of it. I recently asked my boss to stop other people from phoning me if they want me to be productive, and that really helped. I don't think most people understand what it's like; that amazing feeling you get when you're in the zone when programming, and it can be difficult getting them to understand why it's so frustrating being pulled out of it when a simple message would have sufficed.

</comment><comment><USER20> I find that doing TDD makes it much easier to get in the zone; more importantly, it helps to get back into the zone if I get off track.

I typically stub out a bunch of tests (just empty methods named based on what I plan to test), then go one by one and fill in the tests and write the implementations.

In the codebase I work in, we use a lot of mocks / fakes, so I typically write my tests "in reverse" \- first the verification of results, then the mock / fake expectations for what methods should have been called. Then I'll write the actual implementation, and then fill in the mock inputs.

This way, if I get interrupted, it's very easy to transition back into what I was working on, as I make sure to always leave a breadcrumb trail for the next piece (when I run my test, the failure will give me a hint as to the next step to take). And since I have a bunch of stubbed out test methods, once one bit is finished, I can move onto the next one and repeat the process.

<comment><USER21> The style of work you described sounds like torture to me.

I don't know why the idea of TDD sounds so terrible to me but it does.

<comment><USER22> Because it sounds like "start with tests, design and plan never". Too often tests-first is a substitute for a thought-out architecture and data flow.

<comment><USER20> That's certainly true; but when you've done your homework, it can be a really great experience.

For example: the past 3 weeks I've been pounding out tons of code in a TDD fashion. But prior to that:

* I spent a week writing up a detailed design document and getting feedback from teammates and stakeholders.

* Another week refactoring (TRULY refactoring; no changes to functionality) the existing implementation so I can reuse the existing work in my new implementation.

</comment></comment></comment></comment><comment><USER23> Getting in the zone is something exhilarating for me - I experience euphoria, though I don't really notice the feeling until after it's over or if I get broken out of it.

It was actually something that as of late has started to disturb me: I notice that I live for moments like that, when I get in the zone and the whole world melts away. I feel like a junkie seeking a high, and thinking back on my youth and how destructive I was to my body and my interpersonal relationships in pursuit of "code all the time," I wonder whether that analogy is even more accurate than I'd like to believe.

I look back on my life and wonder if I've actually been a lifelong addict who is lucky enough to have a productive output of his addiction rather than a functioning member of society.

I don't know if others feel or have felt this way, or if it's just a phase that I'm going through. But these are my thoughts at the moment.

<comment><USER24> Same here.. I made a comment somewhere saying the same as you, but I feel like I'm in the middle of the thing your looking back at.

I really do feel like a junky, that has found a pile of whatever it needs and the world encourages me to get better in 'using' and keeps paying me more to get higher and higher.. it's such a strange 'unethical' feeling.. I'm programming for about 8 years now in full throttle, and it keeps feeling stranger.. I'm somehow glad others experience it also...

</comment></comment><comment><USER25> Oh yeah, here comes the zone, here comes the zone, it's taken an hour of intense study of all this code but now I can see all the pieces at once inside my head and I can feel exactly how to thread this code right through the middle of all of it and -

COLLEAGUE LEANS OVER FROM NEARBY DESK IN OPEN OFFICE: "Hey buddy, what's the password for the - oh no, wait I remember."

Wait, what was I doing? What's all this code on my monitors? Why was I looking at any of this?

<comment><USER26> I don't feel much while in the zone but I sure get irritable when someone disrupts it.

</comment></comment><comment><USER27> Used to get this feeling from video games, now i get paid for it as a programmer. As a result I've found it hard to go back.

</comment><comment><USER28> I'm a Fed engineer and spent a 4 mo. assignment on an integrated team with Pivotal pairing exclusively. It was a long 4 months for me. There was no "zone." I'm not built for pairing.

<comment><USER29> pair programming is an anti-process. its only purpose is to control employees, limit individual productivity, and drive down wages.

<comment><USER30> > drive down wages

Yeah, because everyone knows that you have to pay less wages when you have two people do the job of one.

<comment><USER29> Sure you do. Two mediocre programmers working as a pair might get 100k each. One elite programmer can clear 7 figures easily. The elite programmer will also have much more control over the IP they create and be able to negotiate much more stringent terms for how it is used.

If you think pair programming is a good idea you are just at the bottom of the industry.

<comment><USER31> > One elite programmer can clear 7 figures easily

Can I come live in this fantasy world you found yourself in please? You're gonna need to provide some SERIOUS proof for a claim like that...

</comment></comment></comment></comment></comment><comment><USER32> Contrary to what a lot of people here have said about boring tasks, I find that's the easiest way for me to get into the zone.

While it may not be my most economically productive part of the day (aka I'm not working on the hard, important problems) there's no doubt that for the 10-15 minutes one of those menial tasks requires, I'm in that special state.

An environmental trigger for me is to play familiar music. It doesn't have to be a special playlist; any album I've listened to >50 times will suffice.

Remaining in the zone requires incremental progress (momentum) which I think is easy to find in a boring, repetitive task that's squarely in your wheelhouse.

The real productivity sweet spot is when you're able to get that momentum going on a valuable project.

</comment><comment><USER33> Good luck ever getting in the zone if you do anything with modern blockchains (especially Ethereum.) All of the documentation is terrible and you waste hours trying to find a bug only to realise it was a problem with the library all along... Assuming of course: that you don't give up after seeing the "developer tools." What little tools you have for solving problems feels like you're trying to carve a delicate ice statue with a giant hammer while wearing clown gloves.

How do you deal with the related stress of having to struggle against needlessly difficult tools, libraries, documentation, and bugs caused by other people?

<comment><USER34> Most of the time I've found no one intended for the tooling to be difficult to use, it's just that they didn't know any better or haven't had time to fix it. Those are still early alpha projects so the creators are probably more focused on the core product than the tooling around it.

Follow the boy scouts rule: leave documentation and code in a better state than you found it. If enough of us do that it'll naturally get better over time.

</comment></comment><comment><USER35> I'm trying my hand at programming and I'm surprised at my progress so far.

But as a person who is very unfocused and poor at math programming has got to be the worst thing on earth for me. But I like it, and math.

As with anything learning to focus takes effort it's different for each person. But a clean desk, calm environment, goals, lots of sleep, eat well and I find post exercise all helps. Not just learning to program but any task.

</comment><comment> atom-morgan What it feels like to be in the zone as a programmer is what it feels like to be in the zone doing any task that can put you into flow state.

</comment><comment><USER36> When I was single, for most of my big projects I used to get 70-80% of the work done in 4-5 days of being in the zone. And then spend months on changing the bells and whistles. Now I have to be home at a reasonable hour and hopefully in a good mood. So I have become hesitant to even get into the zone, because getting out of this state of high efficiency would make me extremely irritable.

How do married people or those with kids balance such bursts of creativity with personal commitments to their family ?

<comment><USER37> I usually don't start work on side projects until the kid(s) are asleep. Only works while they are young I guess. My wife has always been understanding of my personal projects, provided I don't let them dominate every waking hour.

When they are older I plan to teach them useful complimentary skills. Graphics design. Testing. Copywriting. Marketing. Sales. :-)

<comment><USER38> > When they are older I plan to teach them useful complimentary skills. > Graphics design. Testing. Copywriting. Marketing. Sales. :-)

That's not what most people mean when they say "growing a company."

</comment></comment></comment><comment><USER39> I notice that I can be in the zone while programming, but then when I need to research something (do real thinking rather than work by reflexes), I pop out of it.

</comment><comment><USER40> This is almost disturbingly accurate to how I feel in the "zone" as well. A consequence of this is it's hard to have a healthy life as a self-employed programmer. If I want the app I'm working on finished faster (and I do or I'll run out of money), I must stay in the zone as long as possible. Which means I must ignore people as long as possible and put off eating/exercising as long as possible as well.

<comment><USER41> Putting off exercising and eating may work short term but I don't think it's a good idea to do long term. In the long run you need to find a sustainable rhythm.

<comment><USER40> I agree. And the excuse I tell myself it's only temporary. But it's been 3 years now...sigh.

</comment></comment></comment><comment><USER42> Well articulated and very concise. This could have been laboriously drawn out into a 10 page article.

"Half as long" writing lesson from "A River Runs Through It" [https://www.youtube.com/watch?v=7vRhOdf-6co](https://www.youtube.com/watch?v=7vRhOdf-6co)

</comment><comment><USER43> Prerequisites for 'the zone' (why not call it flow? isn't it the same thing?):

a) You have to be interested and eager to get started. If you're not happy with the project, if anything else going on in your life is taking your attention, you will not experience it.

b) When you experience it, you feel like you're a 'real' engineer, like that is your true identity now, your imposter syndrome disappears. So ultimately, if you don't identify as a programmer, as opposed to identifying as someone who programs because it pays well or view it as just a temporary phase of your career until you do management or become a startup CEO or something, you may never experience it.

c) After you experience it, your brain goes "whoaaa" and needs to recover. You won't be able to experience it for at least another 2-3 days, in my experience.

</comment><comment><USER44> What a great article; it concisely and succinctly describes what's going on, and does so much better than I could.

I shared it with my significant other, in order for her to better understand the grumpy responses she sometimes gets when asking seemingly innocuous questions like "would you like some tea?"

</comment><comment><USER45> How does "being in the zone" compare to being in the state of "flow" [0]? Are those synonymous?

[0]: [https://en.wikipedia.org/wiki/Flow_(psychology)](https://en.wikipedia.org/wiki/Flow_\(psychology\))

<comment><USER44> The first sentence in the article reads: "In positive psychology, flow, also known as the zone, is the mental state of operation in which a person performing an activity is fully immersed in a feeling of energized focus, full involvement, and enjoyment in the process of the activity."

Also: "Achieving flow is often colloquially referred to as being in the zone."

So, yes, they are synonymous. :-)

</comment></comment><comment><USER46> I disagree with the premise of this article (though I haven't always). I generally find that I'm always in the zone for _something_, and after more than a decade writing code I've found that often when I'm feeling less productive at it, it's because there is some deficiency in my life, be it social interaction, nutrition, fitness, over-exertion, etc. Over the years I've come to know myself better, which allows me to take better care of myself holistically in order to be not just more productive at work, but more content with life in general. Keep everything in it's proper place and all that.

</comment><comment><USER47> I sometimes find myself in this situation too. I often find that I feel most productive when I reach this state. But it's quite rare, a lot of my day is interrupted by colleagues, meetings, noisy office etc

It's cool, but you can see the downsides. A few weeks ago I basically disappeared for a few days writing some code. Great fun for me, but not exactly boosting growth opportunities for the team.

</comment><comment><USER48> I get there as well, but it takes a bit. Generally, the zone hits me when I'm in crunch time and I know that I won't have any meetings for a while. My ideas all work together and if I get stuck on something, it's not long before I can figure it out. I can generally get a ton of work accomplished.

But then, someone knocks on my cube to say, "do you know where the elevators are at?"

</comment><comment><USER49> This happens a lot to me. Although i always go out friday and saturday evenings. It's just hard sometimes switching it off and takes a reasonable effort...

Sometimes i'm more quiet the entire evening and sometimes it's easier. In my mind, i'm constantly thinking about code then and it's hard to be social then.

All arround, i'm a very social guy. Just when i leave the zone, i'm not.

</comment><comment><USER50> Recommended related reading: Zenclavier - Extreme Keyboarding by Tom Christiansen

[http://archive.oreilly.com/pub/a/oreilly/news/zenclavier_129...](http://archive.oreilly.com/pub/a/oreilly/news/zenclavier_1299.html)

</comment><comment><USER51> I started using guarana tablets to help stay 'super' focused, but only when required. I find it helps me a lot with productivity, often 3+ hours of optimum output. No side effects, only other supplements I take regularly are fish oil and I dont drink coffee or energy drinks.

</comment><comment> amiga-workbench I haven't been getting this much for the last few months, but I think that's due to my scattered workload. I'm about to start a new project build and am looking forward to falling back into the flow.

Its a wonderful feeling, its like the fog in my mind has been lifted.

</comment><comment><USER52> I've done a minor in Flow, the theory about getting in the zone. Very interesting. It manifests itself mostly when the challenge is hard enough and your knowledge is also good on the subject. Boring tasks won't trigger flow etc.

</comment><comment><USER53> I guess when a programmer is in the zone, he/she is much more effective communicating/instructing the machines (in the language defined between humans and machines), than communicating with other humans (programmers or not).

</comment><comment><USER54> I try to not stay in flow state. It means that the problem I'm working on is too familiar and I should automate the programming of it so that I'm grinding on something hard again.

Edit: but it's okay if it's a prototype

</comment><comment><USER55> Then the next day you realise how to achieve the same thing in a tenth of the code...

</comment><comment><USER56> You mean when you sit down at your keyboard 45 minutes after you popped those Adderall?</comment>


Ask HN: macOS Catalina for Development Use? - <AUTHOR> I'm currently still on macOS Mojave, wanting to upgrade for better memory allocation. Is Catalina stable enough to use day to day for development?
EDIT: On memory allocation: somehow in an update Mojave just wrecks the RAM usage and aggressively swaps stuff. I'm down to two/three windows of Chrome (with ~10 tabs each) and a VSCode window. Memory usage is under 4GB Wired + Active, but the OS still prefers to swap (I have 8GB of RAM). Especially after > 1 day of uptime. I'm not sure what's happening.
This screenshot[0] is at what I now consider "worst" scenario, 5 Chrome windows, multiple slack instances in tabs, Miro boards with a lot of objects, 2 VScode windows, 2 node servers. It's clear that the ram is still enough the the OS still swaps. Really bums me.
[0]: https://i.imgur.com/y79t4ps.png <comment><USER2> I would stay on 10.14 for now, it is far more stable than 10.15, especially the latest update which seems to cause kernel panics for many people.

<comment><AUTHOR> Yeah that's what I've read a couple of times. I'll have to find a way to make my RAM more useful then..</comment></comment>


WeWork isn't close to being profitable - <AUTHOR> https://www.businessinsider.com/wework-not-close-to-profitable-loses-hundreds-thousands-every-hour-2019-7 <comment> super-serial I have a membership to Novel Coworking. The space is awesome and the membership costs a fraction of WeWork.

I think it's because Novel actually owns the spaces they lease out so they can lower costs while still controlling quality. They can't grow at the breakneck pace of WeWork, but why should they have to? Unlike Uber there aren't any network effects when you have more spaces. If you provide a cheaper, better space in the same neighborhood it doesn't matter if WeWork is in hundreds more locations. Uber has an advantage with more drivers and market saturation leading to better service, but WeWork has nothing. Sooner or later they'll be completely overtaken by competitors.

<comment><USER2> A number of analysts have stated that WeWork is nothing more than a realestate company and owning those spaces are a liability.

If WeWork were to go under, all the properties being mortgaged would become a problem for the banks. Whereas if WeWork didn't own property and went under, the owners of those properties could just go find other tenants.

</comment></comment><comment><USER3> I'd love to have been a fly on the wall when WeWork pitched their business model and seemingly unique approach to coworking that somehow validates the amount of investment they have received compared to any other coworking space.

<comment><USER4> I don't believe there was too much pitching involved. Softbank is desperate for stuff to throw money at, WeWork is stuff to throw money at.

</comment></comment><comment><USER5> More like WeWork isn't close to being a legitimate business. It's a scam.

</comment><comment><USER6> It really doesn't matter what you build. It's all about who you know, and how good you are at asking for money.

<comment><USER7> Right. People have raised $67m to build a F photo app.

<comment><USER6> Photo app?

<comment><USER7> Correction - they raised $41m. They eventually shut it down

[https://collapsed.co/startups/color- labs](https://collapsed.co/startups/color-labs)

<comment><USER6> Wow! I had no idea collapsed was a thing. Thank you!</comment></comment></comment></comment></comment>


Ask HN: Why Ubuntu sucks? - <AUTHOR>

Hello guys! This must be an old question, but why do peoples always said that Ubuntu sucks? Another distro is better? <comment><USER2> I wouldn't use the word "sucks"..

But i'm upset with Ubuntu for two reasons:

* Going their own way with their own display stack (Mir).

* Requiring folks sign a CLA for GPL3 code, which creates an unfair asymmetry between the rights you have to to the code you produced and the rights they have to that code.

I think the distro itself is fine. Most of the arguments against it are simply because people wanna be "elite" and look down on people using something that has a decent chance of working right out of the box.

</comment><comment><AUTHOR> Thank you guys! It's more clear for me now.

So, the problem is: Ubuntu is a fine distro, but it's backed by a (commercial) company, not the community. And this company has done something unfair to the community, the contributors, violated privacy for sending user's data,...

Not about the technical or Linuxrism things, am I right?

</comment><comment><AUTHOR> Found something:

[http://www.linux-mag.com/id/7600/](http://www.linux-mag.com/id/7600/)

[http://www.linuxtoday.com/infrastructure/2010073002835OSCYUB](http://www.linuxtoday.com/infrastructure/2010073002835OSCYUB)

</comment><comment><USER3> For me it's generally that they don't properly test their packages properly - there's been sooooo many breaking updates and upgrades over the years, there's also some poor default settings, oh and upstart because... Well upstart.

</comment><comment><USER4> Because it's controlled by a big company and not a community. It's like Windows XP with a custom theme and different tools and utilities.</comment>


Scaling NSQ to 750B Messages - <AUTHOR> https://segment.com/blog/scaling-nsq/ <comment><USER2> Awesome. As someone who has been using it in production for a while now, I can say NSQ rocks.

[http://nsq.io/talks_and_slides.html](http://nsq.io/talks_and_slides.html) contains interesting links too.

</comment><comment><USER3> NSQ is a cool piece of software. I've used it to distribute work. One thing that I miss from other queue systems are that it doesn't guarantee dedupe message delivery.

Is it still the case?

<comment><USER4> What queue systems guarantee non-duplicated message delivery?

At-least-once and at-most-once delivery can done with relatively easy hand-off strategies, but I don't see how you would guarantee exactly-once delivery between the message queue and your application.

<comment><USER3> You're right, none that I know does but I don't mean exactly-once.

I meant I like NSQ but sometimes I do wish they had a fire-and-forget mode.

</comment></comment></comment><comment><USER5> Can this replay messages like Kafka?

<comment><USER6> It doesn't seem like it. The article specifically talks about replacing some NSQ-based workers with Kafka-based workers. I would love to hear whether anybody uses in-memory messaging systems in a configuration that has guarantees similar to those Kafka offers, or is it simply not possible?

<comment><USER7> It's not possible, if only because memory-backed queues are not durable by definition.</comment></comment></comment>


How to stay caught up on Research after University? - <AUTHOR> I have been working for a large internet corporation for the last year and, despite coding more often, I feel like I have lost touch of what is present and new in academia.
During my masters, my professor would provide me with stacks of papers to read in order stay on top of the current trends in Distributed Systems research. Since graduating, I've hardly read many papers at all.
Are there good websites to keep on top of what is happening in distributed systems? Websites that aggregate the latest and greatest papers being published? How do all of you stay caught up after school ends (besides reading Hacker News :P) <comment><USER2> read papers on ArXiv

</comment><comment><USER3> lurk around on the uni websites and look at c.v. for the facultyand current grads, then check out thier lit reviews and citations, and maybe, also they may have a few minutes here and there to speak with someone genuinely versed and interested regarding advanced topics. One of the most important roles of a scientist for example , is to disseminate information</comment>


Show HN: Tiny Cassette - Create playlists with youtube and soundcloud - <AUTHOR> http://tinycassette.com

<comment><AUTHOR> Hi, author here. This was made primarily to solve my problem of creating playlists with music from several services. I know the app isn't very polished ( I mean there aren't even accounts!), but I wanted to get some feedback from the HN community before throwing features into the app. I hope this is useful for some of you.</comment>


Greg Chaitin on the limits of Reason (2006) [pdf]  - <AUTHOR> http://www.cs.auckland.ac.nz/~chaitin/sciamer3.pdf

<comment><USER2> A couple of urls, in case you find this field interesting:

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

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

</comment><comment><USER3> This reminded me of reading Prof. Chaitin's work in college library. The discovery Prof. Chaitin made is thought-provoking, by following Godel's quest to mathematical foundation.</comment>


Nginx security advisory (CVE-2013-2028) - <AUTHOR> http://mailman.nginx.org/pipermail/nginx-announce/2013/000112.html

<comment><USER2> I haven't given this more than a cursory look, but I love how the body message for the commit that seemingly introduced this flaw is "No functional changes.": <https://github.com/git-mirror/nginx/commit/8a3f6ce>

Found with:

        git log --full-diff --reverse release-1.3.8.. -p src/http/ngx_http_parse.c

<comment><USER3> Maybe I'm getting it wrong, but this comment seems so arrogant.. and with ngninx, that has one of the cleanest code bases of open source software actually used by many people :s

<comment><USER4> It doesn't look arrogant to me. And it doesn't matter how clean the code looks like if it uses trillions of mutable states, lots of inconsistent interfaces, occasional pointer arithmetics, manual memory management, gotos all over the place and no module tests whatsoever. I'd say nginx is a pretty error prone piece of software, just like most of the software written in C.

<comment><USER5> Sorry but that's a really stupid comment.

You are just saying that C is not clean. (IMHO) nginx code-base is doing a really good job dealing with micro-optimization.

 _> code looks like if it uses trillions of mutable state_

Actually, that's a very good approach. e.g. : nginx parser get optimized out as a big jump table (<http://en.wikipedia.org/wiki/Branch_table>)

<comment><USER4> I didn't mean nginx parser and state machines in general as mutable states, but rather state changes in variables across multiple functions and files. They are impossible to keep track of and nginx is full of them.

</comment></comment></comment></comment></comment><comment><USER6> Incidentally, the affected source file (src/http/ngx_http_parse.c) is worth a read if you haven't before: [http://hg.nginx.org/nginx/file/c72c5fbd1d07/src/http/ngx_htt...](http://hg.nginx.org/nginx/file/c72c5fbd1d07/src/http/ngx_http_parse.c)

<comment><USER7> Are these supposed to do different things on different architectures, or do they magically do the same thing without comparing C1 in the "else" case?

      #if (NGX_HAVE_LITTLE_ENDIAN && NGX_HAVE_NONALIGNED)
      #define ngx_str3Ocmp(m, c0, c1, c2, c3).   \
           *(uint32_t *) m == ((c3 << 24) | (c2 << 16) | (c1 << 8) | c0)
      #else /* !(NGX_HAVE_LITTLE_ENDIAN && NGX_HAVE_NONALIGNED) */
      #define ngx_str3Ocmp(m, c0, c1, c2, c3)    \
           m[0] == c0 && m[2] == c2 && m[3] == c3

<comment><USER8> If you look at where they are used, then it looks like these macros do not need to compare m[1] to c1 because whenever they are used it is already known that m[1] == 'O' (hence "str3O" in the name -- that's 3 and the letter O, not number zero).

I guess c1 is included in the first case because it's faster to compare the whole 32-bit word than mask out the known byte (and since c0, c1, c2 and c3 are compile time constants, the whole right-hand-side of the comparison will be optimized by constant folding anyway).

(It's ridiculous micro-optimization in my opinion, but at least it is correct, and it is limited to a single file.)

</comment></comment></comment><comment><USER9> The official nginx ubuntu package has already been updated to 1.4.1

<comment><USER10> Why is the server package so behind?

I am on Ubuntu 12.04.2 LTS, I had use "add-apt-repository ppa:nginx/development" to get nginx/1.3.12, how do I get in to the latest release?

Wiki says:

Stable release 1.4.0 / 24 April 2013

Preview release 1.3.16 / 16 April 2013

How do I get into the latest stable bandwagon?

<comment><USER11> Use their official repository[1] for the latest stable releases

        deb http://nginx.org/packages/ubuntu/ precise nginx
        deb-src http://nginx.org/packages/ubuntu/ precise nginx

Those are updated very quickly. I haven't timed it but I'm yet to see an advisory before an update is available.

[1] [http://wiki.nginx.org/Install#Official_Debian.2FUbuntu_packa...](http://wiki.nginx.org/Install#Official_Debian.2FUbuntu_packages)

<comment><USER10> Just for reference for others who might be interested:

I had to install this public key from ubuntu server:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ABF5BD827BD9BF62

Had to remove nginx-full and nginx-common.

Then install nginx: apt-get install nginx

Even though I told the installer to keep the default config (which it did) but over-written /etc/nginx/conf.d/default.conf The only change I had to make was port number, since I am using varnish changed my port to 8080 for nginx. Restarted nginx.

      nginx version: nginx/1.4.1

Thanks for the help!

<comment><USER12> Another note: Packages provided by Ubuntu use /etc/nginx/sites-available/ and /etc/nginx/sites-available/ for storing site configs but the package directly from Nginx stores configs in /etc/nginx/conf.d/.

<comment><USER13> Thanks for pointing this out. I spent a little while trying to figure out why my configuration wasn't being recognized.

</comment></comment></comment></comment></comment></comment><comment> unix-junkie I don't get it, it seems to me that this fix is incorrect.

It's pointless to check for such a signed integer overflow after it happened.

<comment><USER14> Why is length stored with a signed integer in the first place?

<comment><USER15> It's (mis)using off_t, which allows for negative offsets (for obvious reasons). You also don't need signed integers to have integer overflows.

</comment></comment></comment><comment><USER16>
        +    if (ctx->size < 0 || ctx->length < 0) {
        +        goto invalid;
        +    }
        +

I don't know C/C++ but I was under the impression nobody used goto? Is there anything good/bad about using it?

<comment><USER17> In this case goto is used as a form of "exception" handling, which is a perfectly fine use case for goto if you have an imperative language like C without exceptions or exception handling mechanisms. In fact it would probably be bad style not to use goto in this case.

If you have a better way to express the control flow you should use it instead though.

</comment></comment><comment><USER18> Phusion Passenger (Ruby/Python application server for Nginx) has been updated to use Nginx 1.4.1 by default: [http://blog.phusion.nl/2013/05/07/phusion- passenger-4-0-2-re...](http://blog.phusion.nl/2013/05/07/phusion- passenger-4-0-2-released/)

</comment><comment><USER19> Thanks to QUFB for submitting this, I would have likely missed this otherwise.

</comment><comment><USER20> If you're running Nginx, We're having a SFHN meetup with Nginx on Thursday here in SF: <http://sfhn-nginx.eventbrite.com/>

</comment><comment><USER21> Wow, Nginx versions rapidly. A few weeks back I was current with "1.2.8-1.el6.ngx" and now 1.4.1-1.el6.ngx is in the repo.

Meaning, the vulnerable versions were likely not out long.

<comment><USER22> 1.3 was the beta stream, and 1.2.8 is the most recent 1.2 release, so in those few weeks the only stable release you've missed is 1.4.0 (which may well have not been packaged at all, if the distro was waiting a few days for bugs like this to get ironed out)

</comment></comment><comment><USER23> It seems that Hacker News has turned off SPDY. Related?

<comment><USER24> SPDY is on (as of this comment anyway).</comment></comment>


Debunking in a world of tribes - <AUTHOR> https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5524392/ <comment><USER2> Interesting study, could have been more clear about its meaning and methods, but I have one quibble...

>"In particular, we compare how users usually consuming proven (scientific) and unsubstantiated (conspiracy-like) information on Facebook US interact with specific debunking posts"

Science does not prove anything! Scientific results are not proof!

<comment><USER3> I think they covered that:

> On our perspective the diffusion of bogus content is someway related to the > increasing mistrust of people with respect to institutions, to the > increasing level of functional illiteracy -- i.e., the inability to > understand information correctly -- affecting western countries, as well as > the combined effect of confirmation bias at work on a enormous basin of > information where the quality is poor.</comment></comment>


Attention Developers: Tag and Prioritize Bugs in under 10 Seconds with BugHerd - <AUTHOR> http://launch.is/blog/attention-developers-tag-and-prioritize-bugs-in-under-10-sec.html

<comment><USER2> One of the nicest parts of this is the client focus - the idea that you can send a build with BugHerd optimized in to make the issue easier to describe. With the plethora of consumer apps, great idea, but also in enterprise verticals like healthcare, where the users are experts, but not at computers/browsers/technology. For that reason alone - awesome - this would have saved us person-weeks of work, and even in some cases, plane tickets.

Good example from Launch Live Blog, here: [http://launch.is/blog/live- blogging-500-startups-demo-day-au...](http://launch.is/blog/live- blogging-500-startups-demo-day-aug-16-2011.html)

1:38pm: Same scenario of sending client the build, but BugHerd is installed. The client clicks new issue, types in the name of problem rather than sending email. BugHerd knows their browser, time they created the issue. BugHerd plays nice with others, over 1,400 users.

1:37pm: Matt of BugHerd takes the stage and says he had difficulty communicating with clients about bugs. Could spend hours trying to figure out what client is talking about -- not time that you can bill.

</comment><comment><USER3> Shameless 500startups plug:

500startups is having their demo day today including BugHerd. <http://livestream.com/500startups>

<comment><AUTHOR> there is no shame in trying to change the world by innovating!

</comment></comment><comment><USER4> Love BugHerd. Been using it for my company now, love the fact that I can POINT and tell what my developers should work on.

Good luck!</comment>


Yelp's dev team beats NASA, sends first 3D printer to the edge of space - <AUTHOR> http://makezine.com/2013/08/17/yelps-dev-team-beats-nasa-sends-first-3d-printer-to-the-edge-of-space/

<comment><USER2> As a recent What If article from Randal Munroe[1] recent pointed out, getting to space and getting to orbit are on an entirely different scale.

      [1]: http://what-if.xkcd.com/58/</comment>


Employee retention rate at top tech companies - <AUTHOR> http://www.businessinsider.com/employee-retention-rate-top-tech-companies-2017-8?IR=T <comment><USER2> One can try to work endless nights on a project, take initiatives and responsibilities, play the politics, compete with peers, all the while trying to keep their boss happy and hope they will get lucky and get a pay rise and a promotion. Then rinse and repeat on a more difficult level.

Or, one can study algorithms and practice coding exercises for a couple of years and jump ships with a pay rise and potentially a promotion, then continue studying, become even better at interviews and keep riding the wave.</comment>


The NBA gets high-tech with virtual reality, drones and big dreams - <AUTHOR> https://techcrunch.com/2017/02/24/the-nba-gets-high-tech-with-virtual-reality-drones-and-big-dreams/ <comment><USER2> Cool idea. Thanks for news!</comment>


Before brogramming, table flipping, and beyond - <AUTHOR> http://technowoman.blogspot.com/2015/04/before-brogramming-table-flipping-and.html <comment><USER2> Not that I have any desire to go back to collared shirts, ties, and dresses, but the author caused me to wonder if it wouldn't do something to dial the "frat house" dial back a notch. Because, gawd, does it get old.

I gather that I'm about the same age as the author. And she's right, there was a time that we worked side-by-side with the wimmin folk and didn't think a thing of it. Hey, it was a brave new world of software, and in that brave new world gender didn't matter anymore. I remember it as a time of software being a good place for women to go because it paid well and it didn't matter as much as other fields if you were "a girl". It worked out well for my Mom around that era.

But I don't know when it changed and _why_ it changed, so I don't have good answers for the current situation. But things have changed for sure.

<comment><USER3> I'm in my early 30s and wish there was a better middle ground. I feel like there is a dichotomy: work for a highly brogrammer company building a fun product from scratch as a slave laborer, or work for boring XYZ.net as a steady Eddie. I want a personal life but I also want to build something new with respectful people in an inclusive environment.

The do-or-die environments of most startups just pushes everyone but the bros out.

<comment><USER4> Full disclosure: work for PlanGrid

If you are in the bay area, you might want to take a look at PlanGrid. We have a diverse culture which we're proud of, value work-life balance, and still build cool things that make a difference.

<comment><USER5> From your jobs page:

> Unlimited vacation days

If a candidate requested a firm six weeks of accrued PTO, would that be granted?

<comment><USER3> My CO also offers unlimited vacation (though they are careful to say it's actually "untracked vacation"). In my experience you can always try but there's a certain amount of unspoken personal capital that's involved that makes the whole process unnecessarily ambiguous.

<comment><USER5> Yes. If you really care about work/life balance, just offer six or more weeks of real PTO.

I internally translate "unlimited vacation" to "as little vacation as possible".

<comment><USER4> It's something that could be negotiated, I'm sure.

Personally, I'm interested in minimum vacation policies instead. The founders do reiterate frequently that 5 weeks is expected.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> My daughter once remarked about something STEM-related: "he can do that <technical thing> because he's a BOY." We tried _so hard_ to not raise her that way, and I'm sad the "meme" still managed to slip through and take root, and at such an early age. What role did I inadvertently play? No idea :(

<comment><USER7> This just seems weird to me as a millennial male. I am obviously lacking some perspective, but my advanced and AP math and science classes in high school were always very split by boys and girls. The upper echelon of students in those courses, of which I was consistently part of, were moreso women than men.

But when I look at what my old classmates are doing now, most of those girls went into teaching, law, and business related roles. A couple went into science and engineering and one is a dentist. Of the guys, most of them became doctors, engineers, and pharmacists and a couple work in agriculture and wildlife conservation. All of the women I am referring to know they are smart enough to do whatever they want, but they obviously decided to favor non- technical roles for their own reasons.

<comment><USER8> In the case of my wife, she moved away from more technical fields in college precisely because of her impression of who her classmates (and, later, co- workers) would be.

<comment><USER7> Isn't that a self-fulfilling prophecy? Eventually women will have to take some leadership here and not expect men to say, "we're firing half our company and only hiring women who aren't even in the field anymore so we can even it out and attract more people down the line."

At some point women HAVE to stand up and take the lead for themselves.

<comment><USER8> Your original comment seemed to be arguing that this wasn't an issue because these women probably wanted _first order_ to be doing other things. If that's the case, then we probably shouldn't be pushing too hard to get them to do things they don't want to do. I'm sure that _is_ the case for some individuals; I don't know the distribution.

My point was to demonstrate that it's also the case, for some individuals (I still don't know the distribution), that they were turned away for reasons _other_ than first order lack of interest in the field; and in fact, reasons we have something of an impact on.

My wife was turned away not simply because she thought she'd be working with men, but because of her impression of the particular men in STEM fields that she had experience of. I don't know if her impression was fair - looking back, she doesn't know if her impression was fair. But we do collectively have the ability to work to make sure such an impression is not fair and to work to make sure we're giving the correct impression.

Given a negative impression of likely experiences in the field, expecting outsiders to fix it is a collective action problem. If a woman correctly judges that the existing population working in a field are likely to make that field painful to work in, and she is the only one (or part of a small minority) who _" stand up"_, then she's chosen a painful career for herself. Those of us already in the industry can work to address the problem with substantially less risk.

I'm pretty sure _" we're firing half our company and only hiring women who aren't even in the field anymore so we can even it out and attract more people down the line"_ is effectively a straw-man. It's certainly not what I would advocate, and I don't see how my comment would have implied it.

</comment></comment></comment></comment></comment><comment><USER9> I'm on a tangent but as a Third World millennial, this what I envy most about First World millenials, a previous generation of _cool_ people who invented and got to play around with all this cool tech. Everyone I know didn't have parents that got them into programming or messing with hardware. Most of my country's "Gen X" were teachers and technicians at best.

<comment><USER10> The vast majority of technical people in the US also had no family connections to technology. There are whole memes about the annoyingness of constantly being called on to fix your family computers.

</comment></comment><comment><USER11> Is "Revenge of the Nerds" (1984) a symptom of many women avoiding tech or is it one of the causes? The characters were nerdy, into tech, and generally despised by their peers (most notably women and athletes). The only girls who would associate with them were Omega Mu, who were a lot like the Tri-Lams. I don't think anyone would want to be a Tri-Lam or an Omega Mu in real life[1] (they are, after all, comically nerdy). I don't find it impossible that a generation of women thought "You know, I'd rather have an Alpha Beta, not a Tri-Lam. How do I avoid getting a Tri-Lam? Don't be an Omega Mu."

I don't think it's possible to know one way or the other. It's much more likely that RotN and things like it caused or were caused by deeply rooted stigmas against tech that made women shy away from it before even getting to the point of being exposed to 'frat-like' conditions in the workplace.

1: [http://i.imgur.com/Pf35A0D.png](http://i.imgur.com/Pf35A0D.png)

<comment><USER6> WRT the tie-in to the "nerd" phenomenon. Lots of things compete for kids' finite mental resources. It becomes a variation of _do I invest in Social Status, or Subject Matter X?_ Those investments happen in a small way at first, but end up having an outsize impact on the rest of a kid's life.

Such choices are strongly influenced by cultural expectations for gender. Those cultural expectations are, in turn, cartoonishly amplified in the typical lord-of-the-flies high school environment.

Actually all of the above is just me—some random HN puke—speculating and repeating things I've heard elsewhere. But it definitely sounds plausible!

<comment><USER12> One Paul Graham's more well known essays talks about how, in general, being cool and being a nerd both take a significant time investment, and to be good at one you have to forgo the other.

[http://paulgraham.com/nerds.html](http://paulgraham.com/nerds.html)

</comment></comment></comment><comment><USER13> Can someone explain what she means by "table flipping?"

<comment><USER14> From [http://knowyourmeme.com/memes/flipping- tables-%E2%95%AF%E2%9...](http://knowyourmeme.com/memes/flipping- tables-%E2%95%AF%E2%96%A1%EF%BC%89%E2%95%AF%EF%B8%B5-%E2%94%BB%E2%94%81%E2%94%BB)

"Flipping Table emoticon (written as: (╯°□°)╯︵ ┻━┻) is a text-based emoticon depicting a person flipping a table out of rage. Primarily used by East Asian internet users to express rage, the emoticon became popular among Western internet users following its introduction through internationally popular online games."

<comment><USER15> That doesn't sound right in this context:

> Where did we make that left turn into experienced, table flipping talent > leaving the industry and the culture of brogramming scaring new talent away?

That sounds like "table flipping" is a good thing, like "turning the tables" on someone, but I'm honestly a bit puzzled.

<comment><USER16> Maybe they mean, "experienced, completely fed-up talent leaving the industry"

</comment></comment></comment></comment><comment><USER17> i really appreciated this writeup.. _silly things like 'you're not architecture material', 'you did surprisingly well on the programming test', and being openly berated for not wanting to 'step up' to a non-technical role_ are silly.

coding for 30 years then still being like, "what next? o right, ruby." is awesome.

</comment><comment><USER18> Thanks for this, it's a much needed reminder. I'd like more of an experienced programmer's view of table flipping. I only know it from the emoticons.

</comment><comment><USER19> Quick anecdote from an earlier time. My mother's college roommate (Marilyn) studied Math and Physics in undergrad in the late '50s/early '60s. She went on to do a Masters at MIT and worked on the Apollo project there, which by that time was being run by another woman: Margaret Hamilton.

If I remember the story correctly, Marilyn started a PhD, but never finished due to marriage and kids. She went on to have a very happy career at NASA and retired from there eventually, around 1995.

She worked in code for almost all of her career. She worked on the Apollo Guidance Computer for at least a couple of years.

Her telling of how things were is that there were a lot of women working in what would eventually become the field of computer science. It was a flipped version of what we think of now but with some similarities.

It was flipped because women were the higher percentage of the work force in the early '60s and on into the '70s and even '80s. But this was also the same as today because the field itself was really not well-defined, and after people went from punch cards (which is what she started programming with), they went to typing. And for the average Joe, typing was a job for women: it was secretary work.

So this seems to me--with the caveat that I'm remembering some conversations I've had with this women from maybe 10 years ago when I first got interested in software and started having jobs that involved it--that there was a brief opening window at the early stages of the field when there were a lot of women practitioners.

As the field became more mainstream and more codified and promised rewards and opportunities, it appears that the guys noticed and came in rather slowly. And then pretty suddenly when it became clear that you could make a quick buck without a crapton of advanced knowledge, the brogrammers showed up and pretty much took over.

That's obviously only one interpretation, but it's an interesting one to me because Marilyn retired before things seem to have got really bad. She retired when the women were still wearing dresses to work, and the men were wearing suits, and things were mostly professional. There were probably glass ceilings, but she didn't feel one in her work because NASA has an institutional history of women doing big, important things.

 __ __ __ __ __ __ __ __ __*

Another anecdote. This one much shorter. A second field that seems to be to being opened up by bro-ish types (and with the incompetence and general lack of knowledge and laziness I associate with that type) is healthcare-- specifically Nursing.

When I was studying Statistics at the University of North Dakota, I was living in a house with 6 other guys. Two of whom were Nursing students. They would have frat-style parties several times a week. Parties where 35-40 of their nursing school guy friends would come over, play Nickelback all night long and drink shitty beer. Basically the opposite of what I would expect from Nursing students.

I found this pretty unexpected and asked once WTF was going on here.

The answer was pretty consistent: there's a dearth of Nurses. People will pay a lot for them. The barrier to entry is pretty low. Essentially, it's quick easy money.

 __ __ __ __ __ __ __ __ __*

All this makes me wonder how much of the shift in industry demographics is really driven by institutional sexism and how much it is just that the lowest common denominator will always try to make easy, lazy money. And then the more competent people move elsewhere, or just leave the industry entirely and go do something else.

Of course, once you reach a critical mass of bro-ism, the institutional bias _does_ become real. But I wonder if we have a situation in business or IT management that is somewhat akin to the problems we have in U.S. Politics: the only people interested in managing are, by definition, not fit for the job. So smart people give up and walk away to something else.

The other thing that it makes me wonder is this: how many other industries are there that started out with one traditional mix of demographics because "that's a job for x type of person. Not _someone like me_. And was then co- opted by the someones-like-me.

Anyway, sorry for a long musing. Just trying to put some puzzle pieces together here to see if there's a larger idea to digest.

<comment><USER7> Are we attempting to wash away history? It seems like this article and a lot of comments are insinuating women's rights have only decreased in the last 40 years. WHAT.

My mother, born in 1955, was told by her father there was no reason for her to take algebra or any type of math in high school because she wouldn't need it.

Maybe the upper class women of yesterday are just lamenting the death of chivalry. I don't know.

I often wonder why bro-ish types are chastised for being who they want to be. I get why it's bad when it becomes overbearing and crowds out diversity. Yet it seems bro = stupid, terrible, provide no value, and a bigot. I know some great, intelligent guys that are pretty bro-y.

It gets old when we have to constantly champion weakness, meekness, and discourage confidence. While a complete bro culture can be toxic, I've worked in majority-woman departments where the gossiping and backstabbing is just as toxic.

<comment><USER19> I'm not in any way trying to wash away history, and I am not trying to imply that women's rights have only decreased since the 50s.

I'm suggesting that there is a larger pattern operating here that is potentially more complicated than "things used to suck; now they are getting better, but not fast enough in STEM."

I agree with you that women are discouraged from entering certain fields. My mother (b. 1941) wanted to be a doctor, and her father didn't see the point. She ended up meeting my father in a German class and falling for him (he was the prof) and she ended up going the route of a German professor.

Of course we know that women are still discouraged from entering certain fields. I'm not arguing that they are not. I'm wondering if there are background signals in play here that drive women out of the fields that they _are_ encouraged to get into.

 __ __ __ __ __ __

As for bro culture, it gets chastised because it 's toxic by definition, in my experience. Bro culture--to me--is quite a lot more than what you are describing it as. I'm not meek, week, and I'm not lacking in confidence. You can be all those things and still be very far from bro.

It's the stupid, terrible, provide no value, racist, sexist, bigot kind of people who walk around fist bumping and saying things like, "Dude, did we totally rape that bitch into submission, or what?!" when talking about "solving" a "hard" problem that are toxic.

It's the kind of people who think that ping pong tables and free beer make up for an utterly shitty working environment. It's the kind of people who are completely and totally unable to think that some people would want something other than what they want out of a job.

In other words, bro culture is marked by all the things you say it is "chastised" for, but not for those things in themselves. After all, we are all human and exhibit certain elements of all those things in ourselves. Bro culture celebrates stupidity, terrible-ness, sexism, and bigotry--and bro culture is entirely lacking empathy for anyone who is not a part of it.

I'm not saying anything about you or anyone you know. If the shoe doesn't fit, don't wear it. I'm describing the characteristics that people deride when talking about it.

*

I have no input about majority-women departments. I can certainly see how gossiping and backstabbing is toxic. I'll leave the criticism of those things to people who are in a position to do something about it.

I'm a mid-30s white male technologist. I can do something about bro culture. Not so much I can do about women gossiping and backstabbing.

</comment></comment></comment><comment><USER20> Really insightful essay.

For men (speaking as a man myself), threatened by competition, criticism is often a competitive sport.

This essay made me think of my own blind spots, and I hope I'm better for having read it.

</comment><comment><USER21> ...seriously, buddy, take a deep breath and back away from the men's rights blogosphere. That level of persecution complex is not a healthy way to think about life.

<comment><USER22> It would be more helpful to me as a reader if your response pointed out the errors in what he'd written, than critiqued the attitude behind it.

<comment><USER23> > than critiqued the attitude behind it.

That response was more contempt than critique.</comment></comment></comment>


Towards an exact (quantum) description of chemistry - <AUTHOR> https://research.googleblog.com/2016/07/towards-exact-quantum-description-of.html <comment><USER2> this is actually non-trivial, impressive, and much more interesting that crypto applications.</comment>


Forensics Myths Debunked - The Truth Behind Real CSI Evidence - <AUTHOR> http://www.popularmechanics.com/technology/military_law/4325774.html <comment><USER2> So, are they systematically working through old forensically-based cases that have DNA-positive samples available to check if they screwed any other ones up, or is this all on the shoulders of the convicted?

<comment><USER3> Not really. It's basically on these guys. <http://en.wikipedia.org/wiki/Innocence_Project>

</comment></comment><comment><USER4> polygraphs are also pretty useless when it comes to catching who is lying

<comment><USER5> So very true. Polygraphs measure physical reactions that can be easily controlled, and misconstrued. Many people will react in such a way that could be read as a lie by simply being shocked or embarrassed in the question asked. Not to mention being nervous can give many of the reactions too.

The results of polygraph testing aren't even admissible in many courts, and the National Academy of Sciences found that they're unreliable, unscientific, and biased.

Despite all this, so many people think they're still a bullet proof method of lie detection. I have heard of a many people who have had false positives on polygraph tests, and have had their life ruined because of it.

<comment><USER6> There are only a few US government agencies that use polygraphs: the CIA, NSA, et. al.

If you got a false positive you'd be a nervous ninny, and a false negative would mean that you're at least somewhat competent. For them, it's a win/win.

<comment><USER7> The worst part about the polygraph (besides the fact that it is pseudo- science, they migth as well be using voodoo dolls), is that it punishes those who are honest and rewards good liars. Over the years, they eventually they end up with a bunch of lying sociopaths.

</comment></comment></comment></comment><comment><USER8> I agree with the purpose and discussion of this article.

But I find it funny that, to help support its argument that forensic methods lack sizeable scientific support, it uses 2 wrong-conviction examples and an experiment with only 6 fingerprint examiners.

That's the difference between the media and science, I suppose. And it is a difference that needs to be clearer in the courtroom.

</comment><comment><USER9> I hope this is eye-opening...

It should be noted that a lot of medical practices - as opposed to biological discoveries - rest on no more real science than this...

<comment><USER3> Which medical practices?</comment></comment>


Ask HN: When should I raise price for my product? - <AUTHOR>

Dear HN community, My startup videolla.com needs your advice. We launched in Nov during HN Nov launch pad. I decided to put a minimum price for product - $5/month just to measure interest.
FFD to today. We has like 49 paid customers, around 400 free customers, with 1-2% conversion visitor -> customer(we are still experimenting with homepage layout but that seems to be quite reasonabl number). So site pays for itself(servers, hosting etc) and brings few bucks/month We had zero marketing bugdet/zero press attention and site grows mostly organically(thanks to embeds of existing customers) and viewers becoming customers
So my question - should I experiment with prices at this moment and try to raise them or continue experimenting with project and maybe try buying some traffic with ads?
Any ideas are appreciated. Thanks in advance! <comment><USER2> What's the distribution of revenue per customer? How many users will make $10 a month? $100? $1000?

Once you have that info you can segment your customers and maximize your revenue while being fair to your customers. The more money your customers make the more incentive you'll have to keep them in the FREE category because it maximizes your revenues, but your customers won't be too happy - it's a balancing act.

You may consider just keeping the free account and seeing what the usage is like before segmenting... as badkins pointed out it's hard to raise prices on your existing customers. If you introduce a new "tier" later the high revenue customers will be happy to move over to it, regardless of the price, if it will save them money.

</comment><comment><USER3> From what I have read (but I do not have personal experience here yet), if you do decide to raise prices, be sure to grandfather your existing paying customers at their current price. People become furious over raising prices of a subscription, even if it is a tiny amount.

To decide if you should think about raising them, I think it would be nice to know what your current profit margin is per paying customer.

</comment><comment><USER4> Clickable Link: <http://videolla.com/>

Feedback:

I believe that your website design and UI needs abit of work on but right now we are focusing on the product itself and its pricing strategy.

Firstly, if you raise your prices, you should honour the rate that current customers are paying. As you are offering $5/month package and taking 10% + $0.10 on each sale even if you change this aspect this should always remain for your current client base.

However, what I recommend you doing is offering a "new tier" in the payment pricing in the form a Gold, Silver and Bronze packages.

Example prices you could charge/offer to your customer base:

Bronze being the FREE package

Silver being your existing package although you could tweak this to be $5 month although you could take 15% and $0.15 per each sale.

Gold being say $20/month taking 10% per sale and like $0.05 per sale.

Then eventually this also leaves the option to introduce another tier like "Platinum" where it can just be a monthly fee and a small percentage per sale and/or a fee per sale.

Additionally, you should make "extra features" available to higher tier customers to encourage signups to the more expensive packages

Obviously you know more about your business than I do, so you will know more about the convertions etc but you should A/B test the prices for signups etc and see which one especially focusing on the distribution of revenue per customer so that you will know how much additional revenue it will bring in for your business.

You should also consider making your signup page like CrazyEgg's Plan Page - <http://www.crazyegg.com/plans> where it encourages users to pay for the $19/month package over the $9/month package.</comment>