Chicken Scheme internals: the garbage collector - <AUTHOR> http://www.more-magic.net/posts/internals-gc.html An overview of how the Garbage Collector in Chicken Scheme works. Contains some good diagrams and code sample to help understand the topic and also a set of links to read more about the subject. <comment><USER2> Henry Baker's "Cheney on the M.T.A." paper (which is the basis for the stuff described here) is very nice. There's a collection of Baker's research papers here:

[http://www.pipeline.com/~hbaker1/](http://www.pipeline.com/~hbaker1/)

which includes the "Cheney on the M.T.A." paper ([http://www.pipeline.com/~hbaker1/CheneyMTA.html](http://www.pipeline.com/~hbaker1/CheneyMTA.html)) and a bunch of other interesting things (mostly with a lispy flavour). A few specific examples:

[http://www.pipeline.com/~hbaker1/Prag- Parse.html](http://www.pipeline.com/~hbaker1/Prag-Parse.html) \-- a nice technique (not invented by Baker) for simple parsing tasks, and a neat Lisp implementation.

[http://www.pipeline.com/~hbaker1/LazyAlloc.html](http://www.pipeline.com/~hbaker1/LazyAlloc.html) \-- you might notice that the "M.T.A." paper is subtitled "CONS should not CONS its arguments, part II"; this is the original "CONS should not CONS its arguments" and is also about allocating things on the stack that you might not expect to be stack-allocatable.

[http://www.pipeline.com/~hbaker1/Use1Var.html](http://www.pipeline.com/~hbaker1/Use1Var.html) \-- "use-once" variables (related to "linear logic", which is not Baker's creation), not a million miles from C++'s auto_ptr/unique_ptr but Baker was advocating this stuff as early as 1993.

And some other interesting things due to people other than Baker, such as a copy of the famous HAKMEM ([http://www.pipeline.com/~hbaker1/hakmem/hakmem.html](http://www.pipeline.com/~hbaker1/hakmem/hakmem.html)).

</comment><comment><USER3> I was looking at Chicken Scheme the other day for building a Entity-Component- System 2D game engine, as I love Lisps, but alas, the SDL bindings were quite out of date, and I didn't want to take my first project on as writing bindings for a C library!

It's a very cool system, and this article is awesome. I find garbage collectors fascinating.

<comment><USER4> Perhaps Gambit Scheme could be a bit more updated on this? [http://dynamo.iro.umontreal.ca/wiki/index.php/Main_Page](http://dynamo.iro.umontreal.ca/wiki/index.php/Main_Page)

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

[http://jlongster.com/Open-Sourcing-My-Gambit-Scheme-iOS- Game...](http://jlongster.com/Open-Sourcing-My-Gambit-Scheme-iOS-Game- from-2010)

</comment></comment><comment><USER5> Any pointers on how the diagram for the stack was generated?

<comment><USER6> <!-- Created with Inkscape ([http://www.inkscape.org/](http://www.inkscape.org/)) -->

</comment></comment><comment><USER7> Wow. As someone with a background of mostly C/Asm, it is rather shocking to see the amount of extra code compiling higher-level-languages produces; summing the contents of a list (array or linked) shouldn't be more than half a dozen instructions in a loop... and then I see things like dynamic allocation. Seriously, _wow_.

<comment><USER8> This is not inherent in the process. What you're seeing is the confluence of several factors:

(1) Scheme is dynamically typed, not statically, so some operations need to operate on objects whose properties are not known at compile time and which need to be constructed/wrapped. The same does not necessarily hold for a statically typed language.

(2) C is not really designed to be the target language of a compilation process. In particular, there's no portable access to stack frames, so any mechanism that inspects the stack (in this case, for precise garbage collection) needs to recreate the necessary machinery. If you target a representation that is actually designed for this purpose (such as LLVM), a lot of these problems go away. Likewise, C does not have native support for continuations, tail calls, or a number of other mechanisms that more sophisticated backends do support.

(3) The compiler does not need to generate human readable code; code generation that targets C is generally not concerned with producing minimal output, since the C optimizer will strip away superfluous stuff, so the focus is more on keeping the backend simple.

<comment><USER7> > so some operations need to operate on objects whose properties are not known > at compile time and which need to be constructed/wrapped

But in the given example, shouldn't the compiler be able to see, via a simple analysis, that this function is only being applied to lists of numbers?

> since the C optimizer will strip away superfluous stuff

That's a _huge_ assumption; in practice I have not seen any optimisation that would take that Scheme-compiled C program and turn it into one a C programmer would write (if there was, I think it could certainly make Scheme a _lot_ more popular), and I've been looking at compiler output for over two decades now. There has been improvement but not _that_ much. There's also the question "why even generate 'superfluous stuff' if it's going to disappear anyway?"

To paraphrase an old saying, "with great flexibility comes great complexity."

<comment><USER9> > _But in the given example, shouldn 't the compiler be able to see, via a > simple analysis, that this function is only being applied to lists of > numbers?_

No, that's the beauty and curse of dynamic languages such as the Scheme mentioned here. Of course, you could do special optimizations, such as inlining bindings that never get used out of scope or defining special functions that don't operate on real Lisp data structures but plain C structures, but they add extra complexity and duplicated logic to the compiler. I'm sure those kind of optimizations would be out of scope of this article.

> _in practice I have not seen any optimisation that would take that Scheme- > compiled C program and turn it into one a C programmer would write_

Obviously Scheme code is going to look different than C code, they're different languages. I think the point being made was that it's okay to emit some C code that's a little extra verbose, doing things like defining extra vars and such, knowing that the compiler will simplify many such things.

> _There 's also the question "why even generate 'superfluous stuff' if it's > going to disappear anyway?"_

To keep the compiler's implementation simple and understandable. The more complex output it has to produce, the harder it is to read/write/debug.

</comment></comment></comment></comment><comment><USER10> If you are having trouble reading this because of the dark theme and you use chrome - install StyleBot and apply this css: [https://gist.github.com/nicroto/9885777](https://gist.github.com/nicroto/9885777) (I inverted the colors of the images, too).

Awesome read. Thanks.

<comment><USER11> Since chromium supports it, I often use printfriendly.com for this

[http://www.printfriendly.com/print/?source=site&url=http%3A%...](http://www.printfriendly.com/print/?source=site&url=http%3A%2F%2Fwww.more- magic.net%2Fposts%2Finternals-gc.html)

You lose some worthy css (code syntax coloring) but otherwise it's pretty nice. (requires javascript)

</comment></comment><comment><USER12> Really good technical article. I'm surprised to see the CPS representation (apparently) used to generate code, my understanding is that it was usually reserved for intermediate representation of some functional languages, in order to facilitate optimisation.

</comment><comment><USER13> Very interesting read for any wannabe compiler implementer.

</comment><comment><USER14> That link is broken.

<comment><USER11> archive.is snapshot in case the server goes down (again)

[http://archive.is/7C5B4](http://archive.is/7C5B4)

</comment></comment><comment><USER15> CHICKEN, not to be confused with the CHICKEN CHICKEN CHICKEN programming language defined here: [http://torso.me/chicken](http://torso.me/chicken)

<comment><USER2> Regrettably, that language is in fact also called Chicken (not CHICKEN CHICKEN CHICKEN). But Chicken Scheme has been around a lot longer.</comment></comment>


Thread class for multithreading in PHP  - <AUTHOR> http://blog.motane.lu/2009/01/02/multithreading-in-php/

<comment><USER2> This is not about multithreading, but about using multiple processes for parallelization. As such, both the library and the title of this article are misnamed.

Still. Having a simple library to do the fork dance and provide some synchronization between subprocesses can be very helpful for, say, long- running import scripts. At least that's what I actually consider using this for.

</comment><comment><USER3> Important thing to note. This Thread.php implementation works using pcntl_fork().

The biggest gotcha - pcntl_fork() is not supported under Apache. Basically rendering the whole thing rather useless for most use cases.

</comment><comment><USER4> I can't say this makes a lot of sense to me. If you want an interpreted language that has great threading or multiprocess support, I don't know why you wouldn't use Python or Ruby. PHP certainly offers some solid functionality in a lot of places that are very common for web apps, but this is a stretch. A good engineer uses the right tool for the job, no use in fitting a square peg in a round hole.

<comment><USER2> To expand on z92's answer: In my case, I have a huge web application including a ton of framework code that's powering a frontend. In the backend, there are scripts processing many millions of rows each day.

These scripts depend on the framework being available (for example to do certain tasks in the context of a specific user, or just for configuration settings).

It's infinitely more useful to be able to actually rely on that framework in these scripts than having to recreate all the environment (or the needed parts of it) every time - especially as the framework might change and the scripts should continue to work.

This makes these scripts prime candidates to be written in the same language as the web frontend and the framework, which, unfortunately, means PHP.

By being able to easily spawn a few subprocesses from these scripts, I can make them a lot faster while still being able to rely on the standard application environment to be there for them.

</comment></comment><comment><USER5> Neato! :-)

I had a go at this a while ago using pcntl_fork() and shared memory messages queues to do erlang style message passing.

My implementation is kind of half assed, but it works reasonably well. <http://github.com/dhotson/Phork></comment>


Labor Supply and the Attention Tax - <AUTHOR> http://kortina.nyc/essays/kinky-labor-supply-and-the-attention-tax/ <comment><USER2> "No one would support a policy that required them to buy this time back from the state in the form of a tax."

America's puritan relationship with work, and it's toxic interaction with free-market economics has reached it's ultimate conclusion in an economics that calmly and rationally lays out an argument that the working class, who:

1) for perhaps the first time in history have their essential needs met without spending most of their lives at toil, and

2) who indeed are happier than similar cohorts have been in the past, should

3) have their leisure time taxed in order to encourage them to go back to work for capital earning wages they don't want, instead of spending their time as they please.

This article really lays bare the grim reality of our world order: the owners want us working, even if there's nothing for us to gain from it. Indeed, any potential surplus which might under a rational system result in leisure, will instead be sucked up by an owner-controlled state through confiscatory taxes which are designed solely to get us back into the mines lest we enjoy ourselves too much playing Overwatch, being with our families, or just generally not wasting our lives in low-paying retail and service jobs.

<comment><USER3> I remember reading some of the arguments against limiting the working week to 5 days - on similar lines "those feckless working class brutes will just fritter he time away and are to subhuman to actually experience or value the finer things n life"

</comment></comment><comment><USER4> This is by a co-founder of Venmo, right? Bought out by PayPal. This guy worked for a few years after college, then retired. Interesting that he's proposing coercive methods of making people work harder.

<comment><USER5> Everyone is happier if everyone works harder. It doesn't necessarily have to be that he's nefarious or hypocritical. Sure, in the short term people will be happier if they work less (assuming they dislike their jobs). But arguably he might be looking out for everyones wellness function (not trying to find ways for the country to work hard while he's retired), since people working hard and America growing will yield greater individual happiness than everyone taking it easy. (Not to mention the fact that the US is in an inescapable economic arms race with China and other nations, which will make things even worse in the even longer term if stagnation continues.)

</comment></comment><comment><USER6> The other end of the age curve is just as interesting - and deserves more attention. People aged 65 and older are sticking around in the workforce a lot more than they used to. The author claims this is because they need $$$ to cover healthcare costs, but the universal availability of over age-65 Medicare makes that doubtful.

From everything I see, people over age 65 want to stay in the game. Many of them are surprisingly healthy, and with the general collapse of factory work, most of the available jobs tend to be physically manageable service-sector work that provides a lot of interesting social interaction and affirmation of personal worth. Plus extra spending cash!

The head clerk at my local hardware store is 82 years old and knows everything about hardware! He doesn't move much from the cash register, and much younger folks stock the shelves. But he's the go-to guy when it comes to advice about acrylic vs. latex paint, etc. He likes to teach and we're grateful for it.

Same story among school crossing guards, which is a prime part-time job for the over 65-set.

My uncle kept picking up consulting income way into his 70s. Same basic story. Non-U.S. healthcare systems can get his input via PDFs, emails and video conferencing. No need to leave his Arizona condo unless he wants to.

For older people in frail health with limited skills, these options aren't open. But the role of the voluntarily working elderly is an overlooked bright spot.

<comment><USER7> Maybe it's not to cover healthcare costs but to cover other living costs. With climbing life expectancy; the decline of pensions; the 2008 market crash; and other factors such as the exorbitant costs of end of life care, today's healthy seniors are looking at running out of money to pay for the essentials before they die.

<comment><USER6> Social Security keeps chugging along just fine. You can't live large on those checks, but I've got relatives in small-town Connecticut who pay all the bills that way and even save a little.

Work (in appropriate doses) brings a sense of usefulness for seniors that staring at the TV all day does not.

</comment></comment></comment><comment><USER8> This is the epitome of late stage capitalism and a sign of the post-scarcity economy. "The economy" should serve human needs, not the other way around. The power to tax is the power to destroy, and the proposal here is to destroy leisure availability here... why?

As automation progresses we are going to have a lot more people who don't want or need to work. This would be much further along if the economy of capital inequality wasn't so distorted.

Young men apparently don't have to work full time to survive, don't want to, and are free to do things they want. This is being painted as a bad thing either because they should be working because work > leisure or assuming that work is inaccessible rather than undesired (probably both, definitely not just one)

I, personally, would like to work a lot less. The reason I can't are two fold. 1) it's uncommon for employers to hire highly skilled workers in part time roles and 2) the cost of living ballooned up to eat any excess income by rent seekers.

>The chief aim of their constitution and government is that, whenever public needs permit, all citizens should be free, so far as possible, to withdraw their time and energy from the service of the body, and devote themselves to the freedom and culture of the mind. For that, they think, is the real happiness of life.

<comment><USER9> I don't think you finished the essay. It is very clear they don't believe the policy proposed can be implemented and it is only slightly less clear that they think it is undesirable.

<comment><USER8> That's true, I did read quickly and skip parts. The bulk of the essay remains about one thing while the conclusion negates it, to a degree. It is difficult to come away with a conclusion of what the authors believe because they spend most of the article advocating for one position and reverse in the end.

</comment></comment></comment><comment> att-throw At first read, this article says something like: non-top-tier men lack access to social belonging, partly because social media creates a status signaling arms race unattainable by many, therefore they play video games instead of working to achieve status, therefore we should tax their video games.

This seemed like dealing with the effects rather than the causes of the problem. _But_ if you include social media like Instagram in the tax, and not just Xbox FPSes, you could disincentivize the status broadcasting that, according to the authors, leads the men to say "f it" and stop working in the first place.

I think you would have to tax a lot more than is obvious to discourage use of digital media -- like at least $3 or $4 an hour. Taxing status signaling is harder; you'd probably have to factor in the number of followers. I would welcome the chance to read more books, but this thought experiment is never going to happen.

</comment><comment><USER10> I find it amusing that he posits that poor young men stay at home playing video games because the 1% have rendered status signaling worthless and then suggests, rather than a tax on yachts and private jets that we tax video games.

He then unsurprisingly posits that it would be pointless/a bad idea to raise wages coincidentally mirroring the opinion of just about every other member of the share owning 1%.

<comment><USER11> Well, his position makes perfect sense: he is a co-founder of Venmo, which was acquired in 2012 for 26 million dollars.

[http://kortina.nyc/work/](http://kortina.nyc/work/)

<comment><USER10> lol. his cut of that probably just about gives him about enough to play video games for the rest of his life, but not enough for any serious status signaling.

</comment></comment></comment><comment><USER12> I find this piece jarring because it doesn't mention that many people have precarious employment situations as if this doesn't matter at all.

<comment><USER13> I stopped reading when they started blaming video games. It's such a tired excuse. Sure, a few would rather play games than work, but most play games to escape their lack of real-world opportunities.

<comment><USER3> Yes the my rightwing sensor was screaming before I finished that sentence.

<comment><USER14> I'd argue that the "work is good in and of itself" idea is quite prevalent on the left too. You can certainly find left-wing advocates of "job guarantee"-type setups.

</comment></comment></comment></comment><comment><USER15> I'm sure I will get down voted for this but....

In times past, most parents would have kicked them out of the house and told them to get a job. Now we regularly have parents that let their kids live at home, even when they have high paying jobs (which used to be frowned upon).

There are two issues here:

First supply and demand in the economy. Many jobs that young men used to do have either been exported to other countries or are being done by cheap undocumented labor.

Second, parents that have enabled this behavior. As much as it isn't pleasant, the fear of not having a roof over your head, or being able to eat is a powerful motivator for people to get off the game console and to find a job, even if it is cleaning toilets with a toothbrush. But when you have parents you can coast and play video games, while living relatively stress free life.

The problem is that a leisure economy is not sustainable long term. If the current generation has less wealth, they won't have the luxury of letting their kids stay at home to play video games. As much as technology will eliminate some jobs, it creates others, and the issue is not really a lowered demand for labor. It's that people looking for a larger profit are trying juice the labor markets in the US by increasing the supply of labor to lower the price by exporting production to places with cheaper labor and bringing in more labor competition......and we are seeing the effects of it.

Explanations like this article are akin to being on a ship with a large hole in the front. It is causing it to lean forward but instead of fixing the hole they are re-arranging the furniture on the deck to try to fix the tilt.

<comment><USER16> Relatively recently it was fairly common to see 3+ generations living in the same house. The norm of young people moving out really had more to do with selling more homes and urbanization than any long term cultural norm.

Lower male participation in the workforce is a separate though 60+ year trend and has a wide range of causes. More education, more stay at home dads, automation, etc. [https://fred.stlouisfed.org/series/LNS11300001](https://fred.stlouisfed.org/series/LNS11300001)

<comment><USER15> That is a fair point, though it was a different dynamic. For example in rural farming areas they were an extra set of hands to work on the family farm etc..

<comment><USER16> Not just farms, large companies like Walmart have killed off a lot of multigenerational family business. At the same time people are changing jobs far more fequently so working for 40 years without any unemployment has become unusual.

</comment></comment></comment></comment><comment><USER17> "One view of the status quo is that media companies are aggregating human attention and selling it at a discount–far below minimum wage–to advertisers in a massive arbitrage on human capital."

Interesting idea. I've never thought of attention in this manner before.

<comment><USER8> This is a strange sentiment because what is happening with the type of person is moving further from having attention sold to advertisers.

I am not unique and advertisers have a really hard time getting any of my attention. I have ad blockers installed, I don't have an antenna for broadcast television or a cable subscription, I watch television through netflix or purchased seasons/episodes/movies either digital or physical, I play video games, and I buy books at bookstores or on an ereader. The most advertisement I experience is for more media on the same medium. Astroturfing reddit and email are the closest I get to consuming ads.

This isn't unique or special and it's certainly growing. I find being forced to watch advertisements intolerable having been away from it for so long and it's easy to keep away.

<comment> att-throw What do you mean by "what is happening"? I definitely agree that there's a type of person or group of people further from having attention sold to advertisers, but I don't know what they would be like.

I had a similar thought listening to the radio yesterday: there are some lyrics and themes on public airwaves (like lauding adultery, cooking crack cocaine, etc.) that would have at least generated a little outrage even 15 years ago. But my guess is that many of the people who normally would have gotten on Parents Television Council and written angry letters to the FTC have now just stopped consuming mainstream media broadcasting altogether.

Anything with a non-transparent recommender system (including most digital stores) is still vulnerable to tracking, attention harvesting and paid placements, even if you aren't seeing straight up soap ads. For example, how do you know that the TV producer isn't paying Vudu or whoever to put shows on your front page because you watched show X?

<comment><USER8> "One view of the status quo is that media companies are aggregating human attention and selling it at a discount–far below minimum wage–to advertisers in a massive arbitrage on human capital."

When I say "what is happening" I am referring to the status quo stated here.

The view stated is that media companies are "buying" human attention with cheap entertainment and selling it to advertisers (the portion not taken up by the content).

The contradiction I am putting forward is that the people seemingly most susceptible to withdrawing some of their time from the workforce to pursue leisure and media are also consuming far fewer advertisement-hours in an absolute sense and as a proportion of time of multimedia consumed.

\---

As for the lack of outrage, that's a cultural shift not a media access shift (primarily at least). It's true that 15 years ago people were generally consuming a much more homogeneous set of media, but the driving factor of outrage is every age group was born 15 years later. Things aren't so shocking when you grew up with them. Fifteen years ago it was also a lot more outrageous to be gay; the extremely diminished outrage reaction to that isn't just because people are consuming different media.

</comment></comment></comment></comment><comment><USER18> Wow, I don't think it's that hard to find things to spend money on beyond entertainment and status symbols. There's comfort, food, travel, cooks, maids, education, research, business ideas, children, health...

</comment><comment><USER19> The article asserts that the the conspicuous consumption in Veblen's sense is over. I've tried to find some research to verify that. I've found this, but it's just a blog post, presumably based on research, but I haven't found the research itself:

[http://blog.press.princeton.edu/2017/06/09/elizabeth- currid-...](http://blog.press.princeton.edu/2017/06/09/elizabeth-currid- halkett-conspicuous-consumption-is-over-its-all-about-intangibles-now/)

</comment><comment><USER20> The article's assumption that the core demographics (of men 20-34 let's say) are not foregoing their basic needs is flawed -- not only are most of them living in much smaller spaces than they were before, they are also less likely to have children to support(which is a basic need for most people) for a bunch of reasons most of which have nothing to do with either video games or the preference of young men.

Largely, young men need less money even for their basic everyday consumption (and so they have more time to spend on leisure). This is to a lesser extent true of young women (which are not discussed in the article even though their participation is also lowered -- are they playing video games too? Maybe those mobile games? Are there Facebook games still today?).

</comment><comment><USER21> Minimum wage paid for human capital, inflating the cost of collecting attention/info sold by media companies. Reminds me a bit of brave and attention tokens. It feels like a comparison between libertarian policy and state policy.

Interesting idea, but who would pay a 12% tax for writing a blog post, or leaving a review. I think it would pass the costs onto the consumers, raising the barrier of entry to information liquidity.

</comment><comment><USER22> > _Disutility of labor_ is the discomfort, uneasiness, inconvenience or pain > inherent in human effort. Because of this quality men regard labor as a > burden and prefer leisure to toil or labor.

Until they "solve" this then taxing leisure -- which is actually a good, economically speaking -- will merely cause people to spend their leisure time on some other untaxed activity instead of video games/netflix.

Or tax the 78% of women to make the 20th percentile males less desirable on the Tinder so those other slackers will get out and work harder...don't actually know how Tinder works so just spitballing here.</comment>


Drawing Lines is Hard (2015) - <AUTHOR> https://mattdesl.svbtle.com/drawing-lines-is-hard <comment><USER3> Does there not exist some ridiculously parallel equivalent of Bresenham or Wu? I imagine with the right datastructure you should be able to do pixel/line intersection tests in the pixel shader?

<comment><USER4> A pixel shader cannot choose _where_ to draw, it is simply given a pixel and asked what colour it should be.

In order to reduce the overdraw to something manageable, you need to generate geometry (via the CPU, geometry shader or vertex shader) that covers a relatively small superset of the pixels you actually want to draw.

</comment></comment><comment><USER5> A couple of earlier discussions:

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

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

</comment><comment><USER6> It's easy to extend Bresenham's algorithm (and probably Wu's too) to work in a 3D voxel space. But I don't know if it would solve the problems in TFA or whether the speed penalty of working with voxels would be worth it. Might be an interesting experiment.

<comment><USER7> The basic problem is that Bresenham and Wu are both sequential algorithms. While you can overcome that by implementing Bresenham in your rasterizer hardware (which I think is what many GPUs do?), you're out of luck if you're implementing it in software. You need an approach that uses the existing rasterization hardware.

<comment><USER8> if you want to, there are at least a couple flavors of parallel bresenham - <USER2> not particularly tricky on the face of it. you do have to be super careful with your arithmetic so that tasks end up mapping to unique pixels. and yeah, you have to be in an environment where task creation overhead is effectively 0 for it to make sense.

<comment><USER7> Yeah, to be more specific the problem with doing Bresenham on GPU is that, in the traditional GPU pipeline, the main way to create tasks is to use the fixed-function triangle rasterization hardware.

I guess one could technically do something like figuring out the number of pixels spanned on CPU and then rasterizing point primitives. In your vertex shader you'd have each 1x1 pixel point figure out, in parallel, where it's supposed to go. This is of course bound to be horrendously slow and would never be practical :)

</comment></comment></comment></comment><comment><USER9> It's hard to draw 2D lines using a 3D API? Doesn't sound like a revelation.

<comment><USER10> OpenGL is a 2D API, bring your own projections.</comment></comment>


Theresa May unveils surveillance measures in wake of Snowden claims - <AUTHOR> http://www.theguardian.com/world/2015/nov/04/theresa-may-surveillance-measures-edward-snowden <comment><USER2> "New surveillance powers will be given to the police and security services, allowing them to access records tracking every UK citizen's use of the internet without any need for any judicial check, under the provisions of the draft investigatory powers bill unveiled by Theresa May."

Disgusting. That's the end of democracy for them, now that there is no way innocent people can escape having their writings peeped on by a paranoid security state. Can't imagine there will be many alternatives to the mainline parties now.</comment>


Ask HN: Should ground breaking, 1-4/year type news stories be flagged off-topic? - <AUTHOR>

On really import things, like the Arizona shooting, I love to hear what the HN crowd has to say.  Especially if we have some folks in the area that can give some intelligent insight.  I think it's ok to have a few high profile off topics. <comment><USER2> There's no need to even ask the question. The community will flag or not flag. The story will either live or die. Some "a few times per year" stories will be interesting enough to generate a discussion, and some won't. It's no different than any other submission.

<comment><AUTHOR> A post that generates discussion can still be flagged.

<comment><USER3> If the discussion is just noise (as is usually the case when politics is involved), I have no problem with it being flagged.

</comment></comment></comment><comment><USER4> Would depend, what people think is really important. I come to HN to read about computer related things. I can get everyday news from other sites. Same for the discussions. I wouldn't expect too much special insight from HN people on this specific topic. Even if people live in the area, what should they know, that you can't read on CNN? (This may be different for other topics, yours may just be a bad example)
 And I really don't need the kind of "ban guns" discussion that started at /. right now. So I go with user "rewind", just let the community decide.

<comment><AUTHOR> Of course the community should decide. The question is, how should they decide?

Are you saying that someone with enough karma to flag articles should or shouldn't flag popular off-topic articles?

<comment><USER4> This is difficult in every single case.
 If the article is popular, the community made a decision. Flagging it as off-topic should e handled with care. Maybe he should at least have a look at the ongoing discussion to see, what people have to say. This may give him an idea, why others voted for it.

</comment></comment></comment><comment><USER5> I'd prefer to not see them flagged, simply in the hopes that having the story at the top of /news would result in it not being submitted 100 more times.</comment>


Vulnerability in FireFox 3.5.1 confirmed; exploit PoC - <AUTHOR> http://isc.sans.org/diary.html?storyid=6829&rss ... a vulnerability is present in FireFox 3.5.1 that has had exploit PoC released. When exploited, the vulnerability can lead to system compromise or induce a DOS ... <comment><USER2> There are apparently a bunch more of these coming in a week and a half, when Dowd and co. take the stage at Black Hat.

</comment><comment><USER3> Kind of scared to do this, because the last time I admitted to not knowing an acronym I got -8, but what is PoC?

EDIT: Oh, just figured it out reading a new comment. PoC = proof of concept, for anyone else who may not be running full-speed on a Saturday.

<comment><USER4> I'm really curious about the whole "karma" concept, so don't take my question as an attack. Is a meaningless number so important to you that you would value it over knowledge? It seems you were almost on the edge of not asking simply because you thought you might be downvoted.

<comment><USER5> The whole point of karma is to have meaning and to discourage users from posting a certain type of comment or question. Googling just "PoC" or "software PoC" pretty immediately answers his question - my guess is this is why the downvotes happened last time. I probably wouldn't downvote a question like this, but I can see why others would discourage it.

<comment><USER4> I can understand that, but it's just a number. My opinion of someone is not going to be any different if their karma is 1 versus 10000. Why would someone worry about that when they have a legitimate question that they want answered? The only thing I use karma for is to decide if something is worth reading. Chances are that if it has been voted up highly it's probably worth reading.

<comment><USER6> In theory, signal gets upvoted and noise gets downvoted. If I get downvoted, my post was probably noise. I don't want to increase the noise level, and I accept that I may not be the best judge of my own comments' quality.

It makes sense to care about karma as an indicator of whether the community thinks my contributions are good or not.

<comment><USER4> Yeah, but my point was that it's the same as being afraid to ask a question in class because the question may be viewed as stupid. There's no such thing as a stupid question. I think it's kind of silly to worry what people think about your question if it is a legitimate question.

<comment><USER7> There may not be such a thing as a stupid question, but there are definitely people that not ony think there is, but that I emotionally value the judgement of, _even when that judgement is bases on invalid logic_. To point at a pop- psychological basis, pretend it was your father that said "that's a stupid question." You might argue against it to hell and back, but there's no way you would be unaffected by the statement.

<comment><USER4> Yeah, but my father is not one of the people on Hacker News.

EDIT: These are just normal people, albeit a group of successful entrepreneurs. We've all had things we wish knew. If you have a question, why not ask it?

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> Had a number of people try this, and it doesn't work.. well it freezes up the browser for a minute or two, but then FF catches it and lets you stop it.

</comment><comment><USER9> I'm confused. While the title is for v3.5.1, the details say v3.5.

It should be noted that this is a medium vulnerability and the chances of running into is are impossible according to one commenter.

<comment><USER2> The debate you're referring to is whether this is exploitable if you block Javascript with NoScript. Most of us don't.

<comment><USER10> Thanks. That's what I was looking for. The write-up didn't indicate what was vulnerable...I had to look at the PoC code.

I'd bet most of this community uses NoScript. My wife and family do not. I don't bother installing it on their systems because my experience has been that they simply whitelist everything that "doesn't work".

There's no point to installing NoScript on Firefox used by someone who whitelists a site he clicked on from a spam message because there was an appropriately placed breast, or claims of such of the appropriate size.</comment></comment></comment>


The SEC Wants Investors to Stop Buying the Wrong Zoom Stock – Nasdaq - <AUTHOR> https://www.nasdaq.com/articles/the-sec-really-wants-investors-to-stop-buying-the-wrong-zoom-stock-2020-03-27 <comment><USER2> Fun fact: Buddy of mine wanted to buy Petrobras, a Brazilian oil company. By mistake he bought a company with a similar name, that was basically an electricity provider in Argentina. In the end it ended up a better investment. :-)

</comment><comment><USER3> If you are n't paying attention then you will pay ignorant tax by buying the wrong ticker. Although, in short term, it might make you good ROI.

<comment><USER4> Matt Levine had a fun observation about the whole mess ( [https://www.bloomberg.com/opinion/articles/2020-03-26/nobody...](https://www.bloomberg.com/opinion/articles/2020-03-26/nobody- wants-a-margin-call-right-now) )

> I hope you didn't get too clever about this. For instance, if you noticed > that everyone was buying the wrong Zoom and decided to profit from their > stupidity by selling ZOOM short, then (1) you have done poorly (ZOOM is up > almost 900% year to date) and (2) now you might not be able to close out > your short.

<comment><USER5> You usually have to post margin daily so you might have been priced out by now

</comment></comment></comment><comment><USER6> This also happened with a piece of shit OTC Facebook app developer called SNAP Interactive when Snapchat was going IPO. I met their CEO at a conference in NYC, and he literally had business cards printed out touting how high their market cap got during this and their subsequent message board pumping.

</comment><comment> dan-robertson Other common examples are COKE (who don't make Coca Cola) and HP (who don't make computers).

In some Asian markets they use numbers for tickets (and some people invest based on superstitions about those numbers)

</comment><comment><USER7> Your rational efficient market at work. Good grief.

<comment><USER8> Rational/efficient markets don't mean no irrational players. It just means that those players get punished for their irrationality, which is exactly what happened here. If anything efficient markets hypothesis is based on the fact that low/bad information is penalized which in turn makes markets more efficient ;)

<comment><USER5> Technically everyone can be rational if their utility curve is optimized by buying the wrong zoom

<comment><USER8> Yep! I think Matt Levine talked about that recently. Though to be honest, speculating on an almost "fake" stock isn't exactly rational (from the perspective of an individual market participant) because there is no way to even try to optimize the utility curve.

<comment><USER5> Unless you find it fun to gamble. Risk seeking utility curve

<comment><USER8> Ah! But we already have SPY options if you want your fix of purely degenerate gambling. I won't disagree that it's super fun! ;)

<comment><USER5> Some of my professors would include tesla in that list haha. To each their own!

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> Is it really up to the SEC to do this? It sets a precedent. Now will they be liable if they don't warn people about other companies with similar names? With 3 and 4 letter tickers, many companies are 1 letter off.

<comment><USER8> ZOOM has not filled anything to the SEC for 5 years now. It's a dead chinese zombie shell corporation so this is more akin to keeping the stock exchanges clean of junk. Especially since that junk only exists to harm.

COKE is routinely mistaken for Coca Cola, but the SEC doesn't intervene because COKE is a real operating company. So I think this is not a sign of overreach from the SEC.

<comment><USER10> COKE is not only a real thing, they're also involved in bottling Coca Cola, so while they're not financially the same company, they are inextricably related.

</comment></comment></comment><comment><USER11> Robinhood is _still_ advertising COKE, which is not the Coca-Cola Co.

</comment><comment><USER12> Why do they call them _investors_? People who haven't even briefly read financial filings for the company they are going to buy? They are called speculators, not investors.

</comment><comment><USER13> This seems a bit silly - if people can't make sure they're buying the right stock, maybe they should bear the consequences of that. Caveat emptor.

</comment><comment><USER14> Why is nasdaq.com advertising for Motley Fool?</comment>


Pure (CSS library) - <AUTHOR> http://purecss.io/ <comment><USER2> Uh, Pure is not news? Already have a few years on its back, and development seems stalled.</comment>


Tell HN: Google Search has an honest-to-goodness minor bug - <AUTHOR>

Try searching for, say, 'github', and you will find that github's URL is displayed as: "www.https://github.com/" - it happens for any site with https in the URL.
It only works sometimes, though - it happens to me when if I search while logged in, but not while logged out. For evidence see this screenshot: http://dl.dropbox.com/u/2986043/Screen%20shot%202011-03-30%20at%2018.25.41.png
I know this isn't an interesting observation per se, but it's rare you see Google making a blatant misstep.
(Also it seems to me that telling HN about this will probably be more effective than submitting a bug report.) <comment><USER2> Not as bad as the major one that keeps making the search box disappear completely, although that might be a Chrome dev build issue.

</comment><comment><USER3> If your logged in to Google does it still occur?</comment>


Johns Hopkins researchers poke a hole in Apple's encryption - <AUTHOR> https://www.washingtonpost.com/world/national-security/johns-hopkins-researchers-discovered-encryption-flaw-in-apples-imessage/2016/03/20/a323f9a0-eca7-11e5-a6f3-21ccdbc5f74e_story.html <comment><USER2> "Even Apple, with all their skills — and they have terrific cryptographers — wasn't able to quite get this right," said Green, whose team of graduate students will publish a paper describing the attack as soon as Apple issues a patch.

reminds me of John Oliver's fake Apple ad from last week:

"We're barely one step of hackers at any time," [https://www.youtube.com/watch?v=zsjZ2r9Ygzw#t=15m50](https://www.youtube.com/watch?v=zsjZ2r9Ygzw#t=15m50)

<comment><USER3> All the FBI or anyone with a locked phone has to do is wait without updating the phone. Eventually an exploit for that version will emerge. It appears they've already caught up to iphone5 and iOS 8.

[http://www.ebay.com/sch/i.html?_odkw=ios+passcode&_osacat=0&...](http://www.ebay.com/sch/i.html?_odkw=ios+passcode&_osacat=0&_from=R40&_trksid=p2045573.m570.l1313.TR12.TRC2.A0.H0.Xios+ip+box.TRS0&_nkw=ios+ip+box&_sacat=0)

<comment> rm_-rf_slash Nothing wrong with that. Hacking goes both ways.

</comment></comment></comment><comment><USER4> Good. Awesome! Not that the hole exists, but that people are finding and reporting them to Apple. When the NSA finds an exploit they don't report it and we all end up surveyed.

Thanks JH researchers for finding it, thanks Apple for patching it.

</comment><comment><USER5> > _Apple said it ... will fully address the problem through security > improvements in its latest operating system, iOS 9.3, which will be released > Monday._

Whoops, looks like the Washington Post just leaked the iOS 9.3 release date with this article. Now we know what Apple has in store for their keynote tomorrow morning ;)

<comment><USER6> There has been 7 betas of 9.3 and an upcoming event was planned for new hardware, it doesn't take much to put that together.

</comment></comment><comment><AUTHOR> Related tweets from one of the researchers:

\- Christina Garman,@matthew_d_green, Gabriel Kaptchuk, Michael Rushanan, and I found some crypto exploits in iMessage

\- Details, blog post, paper, etc to come after Apple ships the patch.

\- And now you have 14 hours to guess what the attack is. As a hint, no, its not a bug in how Apple stores or encrypts attachments.

[https://twitter.com/secparam](https://twitter.com/secparam)

<comment><USER7> from the article it sounds like they allow people to brute force the key. possibly via a timing attack?

<comment><USER8> From the article it sounds like bull - unless something is seriously awry you should be getting no indication that individual bits of your key are right or wrong, as they describe.

I'll await the paper.

<comment><USER9> I think it's generally called an oracle and are usually very useful when it comes to breaking crypto

<comment><USER10> Oracles normally operate on plaintext or ciphertext, not key material directly.

</comment></comment></comment></comment></comment><comment><USER11> _Although the students could not see the key's digits, they guessed at them by a repetitive process of changing a digit or a letter in the key and sending it back to the target phone._

That sounds like a timing attack against the iMessage servers, probably also involving the unpatched client.

<comment><USER12> It also kinda sounds like the same kind of "attack" that weev went to prison for.

<comment><USER13> Weev repetitively accessed information that he knew he was not authorized to access on a server owned by someone else.

These researchers took a phone they owned and setup a situation where a server they controlled sent messages the phone interpreted as coming from Apple. Those messages were used to extract the key from the phone they owned. They then used that key to access an account they owned and were the authorized user of.

Is there a technical case of unauthorized access if they used a non Apple client to access the photo? Maybe. Did they establish the same pattern as Weev, accessing information related to many other users? No.

<comment><USER14> > Weev repetitively accessed information that he knew he was not authorized to > access on a server owned by someone else.

Not to mention giving the hack to Gawker before notifying AT&T, getting caught with cocaine, violating a gag order, and saying "I won't nearly be as nice next time" shortly before his sentencing.

<comment><USER15> All largely irrelevant to the issue that no real crime was committed. In any rational world, there has to be some difficulty to a hack before it is a "hack".

No locks were broken - not even the weakest 1bit password. Weev only incremented a number of a public endpoint.

The prosecution in his case, as in Aaron Swartz's, conspired to use their legal enforcement powers to intimidate the innocent. They literally, knowingly, tried to charge people for things they knew at the time weren't crimes, because they had been "humiliated" by losing earlier.

(*Innocent of the charges at hand - questions of someone's "other" guilt are out of scope.)

<comment><USER13> Walking through an open door can be criminal trespass (especially if you know you don't have permission to do so).

The problem isn't that easy hacks can be criminal, it's that the punishments are out of line with the harm done.

<comment><USER15> A 1-bit lock would be like "Employees only. Are you an employee? Yes/No". It's just enough to establish that you knew you were supposed to stay out.

And yes, a guilty-verdict and a one-cent fine wouldn't be too big of a deal. But ideally the courts just wouldn't even hear the case.

</comment></comment></comment></comment></comment></comment></comment><comment><USER16> "Some academics have advocated that law enforcement use software vulnerabilities to wiretap targets. That, they said, is preferable to building in a back door to enable access, which they said would broadly damage security."

Door in the face technique: Ask for a backdoor to all mobiles. Settle for keeping security holes private and leaving those mobiles vulnerable.

Snowden told us about the latter and there was outrage. Now it's an acceptable trade off because the FBI is threatening to take Apple's signing keys? Classic door in the face technique.

</comment><comment> awinter-py > but it shatters the notion that strong commercial encryption has left no > opening for law enforcement and hackers

Not sure what cave this guy was living in, unless he's using 'strong' literally (in which case the statement is wrong).

Biggest reason not to trust 'consumer-grade' encryption is that consumers aren't under constant attack, or aren't aware if they are. If I buy a car, I know when it breaks down. Consumer Reports can say if it sucks. There are way fewer 'educated consumers' for encryption technology.

</comment><comment><USER17> Another iMessage/iOS design flaw (in the context of its "end-to-end encryption") is that you can't disable iCloud sync for the messages alone. It's an all or nothing proposition. It would be good if in iOS 9.3 they'd allow iMessage sync to be disabled, or even better _keep it disabled_ by default, even when you enable "iCloud sync" (it is after all supposed to be _end-to-end encryption_ , not "end-to-end encryption with centralized storage in our cloud", at which point saying iMessage is E2E is just a misnomer).

<comment><USER18> It's my understanding that iMessage encrypts messages using the public keys of all devices the recipient owns. The server would only store that ciphertext, which is useless without the private key only available to the recipient.

Is this different when iCloud is enabled?

<comment><USER19> This is true for transit.

However once the message has been delivered onto the device, they're either stored in plaintext, or backed up in plaintext (with the backup itself being encrypted with a key Apple has)

In saying that... I'm now wondering why they aren't encrypting the messages using the passcode like other sensitive data. I guess so the backup can be restored onto another phone and have the messages persist.

<comment><USER20> The problem is iCloud Backup -- it really should work in a way which doesn't give Apple unlimited access. Yet, allow restore onto new devices, without requiring users memorize long passwords, and without a bunch of confusing options or steps for most users.

It's a fairly hard problem to do very well. What they do today isn't particularly close to "very well", so even some easy improvements could make it a lot better.

</comment></comment></comment></comment><comment><AUTHOR> The blog post and paper has been submitted here: [https://news.ycombinator.com/item?id=11332377](https://news.ycombinator.com/item?id=11332377)

</comment><comment><USER21> Unfortunately (or fortunately?) not a jailbreak.

</comment><comment><USER22> Wish we could ban WaPo links unless accompanied by a way to actually read them. WaPo's firewall is incredibly annoying lately.

<comment><USER23> It would be nice if all links to a paywall had a "(Paywall)" in the title, that way we'd get less complaining about paywalls, and less complaining about complaining about paywalls.

<comment><USER24> ...and less solutions to complaining about complaining about paywalls!</comment></comment></comment>


PaperWM: Tiled Window Management for Gnome - <AUTHOR> https://jvns.ca/blog/2020/01/05/paperwm/ <comment><USER2> Thanks! This is excellent.

I was actually notified of this article in the Google news screen on my phone, but forgot the name after reading the article.</comment>


When did you last use one of these? - <AUTHOR> http://en.wikipedia.org/wiki/Payphone <comment><USER3> As a teenager I would spend hours talking to my girlfriend using the payphone that was across the street from my house. Why ? Just to avoid the hyper- sensitive ears of my parents. Those things were an essential part of my life!

That girl became my wife, and now we have a seven-year-old son. Unlike me, he will probably never use one of these. Ever. He'll never have the joy of standing in the rain/cold/wind chatting to his girlfriend from a payphone.

And to that point, I conjecture that he will never have a POTS wired phoneline in his own home, he will never buy a newspaper, and perhaps he will never buy a CD, DVD or petrol-only vehicle.

What do you think ?

<comment><USER4> This reminds of the ipad ads that have gone up recently in London. They feature a book, with authentic-looking "pages" that you can turn.

I fully expect children in 10 years to be wondering what the hell this graphic/effect is supposed to represent.

<comment><USER5> So you're saying that in _10 years_ , there will be no more books in the world?

Even if everyone starts using computers/ipads/whatever to read books, I doubt that all the books in the world would disappear so quickly. I think it will take closer to 50 years.

</comment></comment></comment><comment><USER6> Which reminds me: NEVER, EVER use payphones on airports, especially with you credit card. They don't publish the rates anywhere and rip you off royally, paid close to USD 250 a couple of years back for about 10-15 mins aggregate calls from HK / KL to India.

</comment><comment><USER7> A couple of weeks ago. Locked my phone in my house along with my keys. I'm glad they're still around; when they're useful, they're very useful.

<comment><USER8> If you remembered the number to call, I'm seriously surprised. If you remembered the number for number information, I'm also a bit surprised...

I doubt a payphone would be of any use to me without my mobile / laptop - <USER2> only number I remember is my mother's - just because she has it since the pre- contactlist times (I learned it because of dialing the digits often).

OTOH - I used a payphone 3 months ago (and before that... many years ago) in another country to avoid roaming charges.

<comment><USER9> A lot of payphones have the operator either a) printed on the phone body or b) default to 0 (at least in the UK anyway_

</comment></comment></comment><comment><USER9> They're not even useful for making anonymous calls any more; what with disposable mobiles being so cheap.

</comment><comment><USER10> I don't remember using a payphone ever, and I'm not _that_ young (born in 1982). Got my first cellphone at age of fifteen (1997). Before that I lived in rural area where payphones didn't exist. Nowadays, when abroad, I prefer Skype over wifi or SMS.

</comment><comment><USER11> The problem here is that the ones that are left, often only work using calling cards, not with coins. Which completely negates its only purpose left - as an emergency 'I locked myself out of my car/house and need to call for help' apparatus.

<comment><USER12> When I was at uni I had a calling card, you could type the number in instead of swiping it (most payphones then didn't have card readers). You'd dial the company free-phone number, the card number, the pin and then the number to call. When I called my gf from turkey I remember taking an age to enter the number - about 42 digits, the longest number sequence I've had memorised I think.

<comment><USER13> Think of all the shoulder surfers at NY Penn Station who have been put out of business!

</comment></comment></comment><comment><USER14> I remember it clearly. It was the first evening of the Northeast Blackout of 2003 [<http://en.wikipedia.org/wiki/Northeast_Blackout_of_2003>] and I was working in NYC.

My wife had gone to her parents, and I wanted to phone her to say that all was well. All the cellphone towers were either without power, or overloaded. But the good old payphones just kept working.

It really is useful that telcos maintained their own power network. I wonder if this is still the case?

<comment><AUTHOR> I think thats still true. if you have a landline, it will keep working when the power is out, as long as its not cordless

</comment></comment><comment><USER15> Like a week ago. Batteries of my 2 phones died. And it ate up my ~2 euros connected me for about a second and then just died with a message "Error".

</comment><comment><USER16> Here in Sweden they've converted some of them to wifi accesspoints, and some got a phone re-installed. I like that, that's clever.

<comment><USER17> Here in the UK they're often used as public lavatories, whether the phone is working or not

<comment><USER18> That's clever, too!

</comment></comment></comment><comment><USER19> I saw a documentary about the UK Police a year or so ago and was interested to see them challenging suspicious-looking people who were using public telephones. Their theory was that most suspicious-looking people have mobile phones these days so if they are using a payphone they are often actively up to no good!

</comment><comment><USER20> I think I last used one about a decade ago? They still have some use, though, so I hate to see them vanishing as much as they are.

My memory might be faulty and I could be confusing incidents, but I think I might have used one for something connected to that time I called up the guy whose "affiliates" were spamming a site owned by some friends of mine with porn site links and had a little chat with him. The problem stopped after that.

</comment><comment><USER21> I don't remember, but I keep seeing people using them in London. It's insane that there's people queuing to use payphones in the street in 2010.

<comment><USER22> In parts of London they double as advertising space promoting members of the oldest profession. I wonder if this is related.

</comment></comment><comment><USER23> I was on an Amtrak train a few months back. Apparently they still advertise that they have payphones on board.

Introduced in 1986: [http://articles.sun- sentinel.com/1986-06-03/business/8602020...](http://articles.sun- sentinel.com/1986-06-03/business/8602020325_1_amtrak-metroliner-cellular- telephone)

</comment><comment><USER24> Last year. Was on a remote island with no cell phone reception and there happened to be a pay phone.

</comment><comment><USER25> April 2, 2010, Jones Gap State Park in Northwest South Carolina. There is no mobile phone service due to the mountains on either side so they keep a pay phone available.

</comment><comment><USER26> Yesterday, to call someone who has been ignoring my calls.

</comment><comment><USER27> Here in Switzerland you can send an email for free using terminals that are installed in lot of these booths</comment>


Awesome rss reader My kind of list - <AUTHOR> http://knotlink.com/channels

<comment><USER2> I've never heard of Knotlink, but its whole UI looks like a blatant clone of IFTTT.</comment>


Late sleepers are tired of being discriminated against - <AUTHOR> http://www.vox.com/2016/3/28/11306124/chronotype-night-owl-discrimination <comment><USER2> The article hits home for me. I can't go to sleep before 3-4am, and I can't wake up before noon. I had a job that required me to get up before 10am for a year, but what happened was that I would only get 5-6 hours of sleep a night and then sleep for 12 hours during the weekend.

My parents still look down on me sleeping until noon, as if I somehow sleep for fourteen hours a day, but nobody considers the ton of productive time I have at night, when everyone else is sleeping.

<comment><USER3> "I can't go to sleep before 3-4am"

The standard advice is:

\- no caffeine after noon

\- no screens after 8PM

\- no big meals after 7PM, (but make sure you're not hungry at bedtime)

\- no more than 2 alcoholic drinks with and after supper

\- make sure your room is cool and your bed is cozy

Those are the easy fixes. However, the most common cause of sleep problems is stress. That's why your Mom told you to count sheep. If counting sheep isn't enough to turn your mind off, then perhaps seeking professional help for stress is your best option.

If you aren't stressed and the above steps didn't work, please seek medical help.

If you're still in your teens or twenties, it may get better as you get older.

<comment><USER4> I'm over 40 and I'm aware of all of those issues.

What you fail to understand is that at 9:20am in the morning, like it is now, that my brain is swimming in serotonin and it feels like I got kicked in the face.

I DO NOT have the same neurochemistry that you do. So while all of that helps, it doesn't magically turn me in someone that gets up at the asscrack of dawn all bright and cheerful.

There are strong parallels between people who give this kind of advice to delayed sleep sufferers and people who think they can cure homosexuality.

<comment><USER5> Check out [https://www.supermemo.com/en/articles/sleep](https://www.supermemo.com/en/articles/sleep)

You probably can normalize your sleep pattern by forcing yourself forward with sleep time a bit every day (if you want to of course).

<comment><USER6> Shifting sleep patterns is impossible for many people.

I have to wake up at 7am for the last 5 years or so, and it's always a torture. I have to force myself to go to bed at 11pm to tolerate it.

When I can afford to wake up at 10am, I am bright and happy and can go to bed at 3am easily.

And there is nothing particularly "normal" in waking up early.

</comment></comment></comment></comment></comment><comment><USER7> I'm a night owl and I think I know what's going on here, at least as far as I'm concerned.

It is that every so often I indulge in too much coffee, booze, etc, and this pushes back bedtime by an hour or two. Or I get excited about something new like a book or a video game. Since the night time is quiet and I am undisturbed by others, I like it, and I don't bother to correct it.

Note that merely giving up coffee, as the doctor in the article recommended, wouldn't help. It is the irregular 'binges' that push our body clocks. The extreme case would be a hard drug user who occasionally parties for 2 nights in a row.

Of course eventually some social obligation or appointment causes me to have to get up at a normal hour one morning and then the process resets and slowly advances all over again.

Two comments about this:

(1) society may be correct to judge me, because there are _addictions_ involved and they can be harmful.

(2) it's unhealthy because when one eats during a period which was recently 'sleep time' the body doesn't digest the food so well. The heart doesn't seem to like it, and I think I read that LDL cholesterol is elevated. This is one reason why night shift workers pay a price in terms of health.

</comment><comment><USER8> This sleep pattern started for me right around adolescence (12-13) so I assume that it's just part of my DNA. 3-4am is about the time I naturally fall asleep if left to my own devices.

I was in the military for 12 years and those 5am wake-ups didn't change my "wiring." I figure if that didn't nothing will.

As indicated, the world is just not built for folks like me/us. So that means I/we just have to put in more effort to work within it.

File this under the category: Things you have to do to survive in society.

<comment><USER9> Actually some part of the world is: the one set around the nigh life. I have people around me that live like you, by social design: musicians, bar tenders, events makers. If you want to live this life, then you better be wired for it.

I'm not, and when I try to follow them, I end up destroyed for a week.

One of my previous flatmate is. He stopped for a while and his social circle reduced a lot (while getting closer to me). Mostly, he misses the sex.

Yes, it's way easier to have sex (quantity wise) when you go out 3 times a week as he used to do. And you need to come back late as well, if you want to find a partner, you won't bring him or her at home at 10pm.

<comment><USER8> That's a good point. The night-life scene is fairly out of the norm for the majority of society however and comprises a pretty small percentage of industry in total, so I don't know if it makes sense to just say "well just go work night-life type jobs" as a solution.

Not even mentioning if that is something that any given person with delayed sleep wants to do.

Sometimes (most times actually) you just have to suck it up.

</comment></comment></comment><comment><USER10> I agree that society should become more accepting of late sleepers. This would also have practical advantages, e.g. a more equal distribution of commuter travel. In London, everyone seems to work from 9 to 6pm, with predictable traffic chaos at peak hours.

</comment><comment><USER11> I was a night owl when I was younger. Went to bed around 2am and felt like a sack of potatoes for a couple hours in the morning. I have no idea what time I would naturally wake up because I always had to get up earlier than that. I remember sleeping until the afternoon on weekends when I was a teenager. I slept through my fair share of alarms, didn't remember hitting the snooze button, etc.

Sometime in my late 20s after learning enough about health in general I realized that sleep was much more important than most believed and I decided my routine was unhealthy. I dealt with it with similar methods mentioned on other comments. No caffeine in the afternoon, blackout curtains, red lights, limit light when it's dark out, not eating late.

That was about seven years ago, I'm now 35 and I'm not a night owl anymore. Part of it is probably getting older, I've heard that this frequently happens to people as they age. But I noticed the changes within a few months of taking sleep hygiene seriously. A few years ago I threw out my alarm clock because I hadn't set it in a few years (I'm lucky that I really only have to be at work by 10am for a standup so it wouldn't matter if I overslept). I can't remember the last time I woke up later than 7:30am, that's late for me now. Usually it's around 6:30am. I am wide awake when I open my eyes. My main sleep problem now is waking up too early and not being able to fall back asleep. I'll then get tired and go to bed early, and wake up even earlier the next day.

I feel better than I have at any point in my life previously. It's certainly possible that many people here with sleep problems have naturally different rhythms. It's also possible that certain obese people are naturally obese and no amount of diet or exercise changes will fix it. I have personally come to the belief that having a sleep cycle which is not mostly aligned with the natural patterns is unhealthy, regardless of whether it's "natural" or not.

If anyone is interested in specific techniques I have all sorts of little hacks, although I don't have to use many of them anymore.

<comment><USER12> I had a similar experience a few years ago when I was ~23. If I got in to work at even 10am, I'd still be a total wreck and mornings were hell.

After my boss gave me a bit of a talking to and futzing around with sleep tracking apps and alarms that woke me up at the appropriate point in my sleep cycle for a while I realised that if I just didn't stay up so late I'd feel better.

It was a bit of an adjustment at first and I think f.lux and exercise helped to modify my sleep habits, but I've been feeling tired enough to just _want_ to go to bed at 11pm and haven't used an alarm in years either.

Obviously I'm older than I was when I was a night owl, but given I was able to make the change in a few months, at the prompting from a former boss, I'm less convinced that it's unchangeable.

<comment><USER11> Reminded me of a great sleep app I used to use. It's called Gentle Alarm and it really is a great hack. I don't know if the authors of the software came up with this idea but it works great.

Here's how it works. If you are woken up when you are deep REM sleep you will feel tired. If you wake up when you are in very light sleep you will not. This is what happens when you wake up naturally. The sleep cycle generally repeats itself every 90 minutes or so but everyone is different. The point is there are times you can wake up when you will feel refreshed, and times when you will feel tired.

Gentle Alarm configures two alarms. It plays a very soft alarm half an hour before your real alarm (all the times and volumes are configurable). If you are in deep sleep at that time you will not wake up to this alarm but if you are in light sleep you will. If you are in deep sleep then in half an hour (or whatever period) you will almost certainly not be in deep sleep. You will then wake up to your normal alarm. The system ensures that you are awake by your alarm time.

It worked amazingly well for me when I needed it.

</comment></comment></comment><comment><USER13> If you have this problem in only winter, this gadget actually does a lot for me:

[http://www.amazon.com/Philips-HF3520-Wake-Up-Colored- Simulat...](http://www.amazon.com/Philips-HF3520-Wake-Up-Colored- Simulation/dp/B0093162RM)

It simulates a sunrise and sunset with bright LEDs. I always wake up before the audio alarm starts. Before this I was very difficult morning riser. I may be more light sensitive than you, but it works for me, and has some medical research to back up the idea.

<comment><USER14> Well that would be me, I have been looking at these for years but the cost always put me off.

Also, how is it different from this one? [http://www.amazon.com/Philips- goLITE-BLU-Therapy-Device/dp/B...](http://www.amazon.com/Philips-goLITE-BLU- Therapy-Device/dp/B001I45XL8)

<comment><USER15> The goLITE BLU is a serious and very useful mostly conventional light therapy device which helped me go from 7 to 8 hours of sleep, although recently I've found an even more conventional type like this makes an even bigger difference, enough to maybe get off a drug I've been taking for a decade (weasel word "maybe" because I'm off it but still seeing if I can get back to a regular 8 hours): [http://www.amazon.com/Carex-Health-Brands-Day-Light- DL2000/d...](http://www.amazon.com/Carex-Health-Brands-Day-Light- DL2000/dp/B002WTCHLC)

</comment></comment></comment><comment><USER16> Society is geared against late sleepers on many fundamental levels. Daycares and schools typically start early and let out early. If you have two working parents they can split the dropoff/pickup only if both have early schedules, or can still do productive work at home, with a small child around. Not even the kids want to wake up at 6:30.

<comment><USER3> "Not even the kids want to wake up at 6:30."

Not my experience, and a standard complaint when commiserating with other parents is how early their kids wake up on the weekends.

My 6 year old reliably wakes up about 15 minutes earlier on the weekend than she does on weekdays.

<comment><USER17> I don't think I ever remember waking up early as a kid. If my parents didn't wake me up, I would not get out of bed.

<comment><USER18> Does nobody here remember early Saturday morning cartoons?! Transformers, Thundercats, Spiderman...before parents got up and the chores started..

<comment><USER19> I would always get up early on Saturday for cartoons, infact I only started sleeping in because I was no longer interested in the new shows. That was somewhere around 1999 because I remember hating the new Sonic the Hedgehog cartoon.

</comment></comment></comment></comment></comment><comment><USER20> If my employer let me come in @10am I would be 2x as productive. I have to drag myself out of bed every morning and spend 9am-10am not really doing much at work anyway. If I could get that extra hour of sleep it would be amazing...

<comment><USER21> For every one of you there are probably 10x others who would totally abuse it.

<comment><USER22> Uh, if the expectation when one arrives ~1hr late is that they will also stay ~1hr late, what is there to abuse?

<comment><USER20> Yeah, unfortunately my company has "core hours" that start @9am so I am expected to be around starting @9am.

</comment></comment></comment></comment><comment><USER23> Chances are this does not affect you:

 _Delayed sleep phase is extreme. Less than 1 percent of the population has it._

<comment><USER3> Being a teenager or in your twenties and/or consuming caffeine can also cause similar symptoms.

When I was in my twenties, I actually used to work on a 28 hour day schedule.[1] Now I've quit caffeine and hit my forties, and am one of those people that goes to the gym at 5:30AM.

1: (28x6 == 24x7) [https://xkcd.com/320/](https://xkcd.com/320/)

<comment><USER24> I've never read this before, but I'm mid-20s and I'm pretty sure I'm on that schedule. In my grad-student years I noted the same tendency - my schedule would "roll backwards" a couple of hours each day. For what it's worth I'm under the impression that this is a well-known phenomenon with hackers. The Jargon File includes this reference:

[http://www.catb.org/jargon/html/P/phase.html](http://www.catb.org/jargon/html/P/phase.html)

My employer expects me to work a roughly normal 9-5. The best compromise I seem to have worked out is that I take Wednesday morning off and I work a little longer on the other 4 days to make up for it. This gives me the ability to rotate my sleep schedule on a semi-weekly basis. Wednesday morning I can sleep in and "reset". Tuesday and Friday aren't the most productive days because my internal clock is the most detached from my working hours, but around noon my grogginess will clear up and I'm on track, so it's workable.

</comment></comment></comment><comment><USER25> In my teenage years I hated going to sleep because I was riddled with anxiety, so generally I would stay up all night so that it made it easier to sleep the next day. My mom was a night owl, but my dad would go to sleep at 9pm like clockwork and I never understood how.

It wasn't until I started weightlifting the past several years where I've found myself actively going to sleep at reasonable hours (9-11pm) because not only am I tired from the exercising, but because I know my body needs the sleep to rebuild itself. My time inside the gym would be wasted without the sleep. I also track my calories obsessively fwiw.

</comment><comment><USER26> As an employer of people you are motivated to ensure that people perform at their best. By forcing someone to not work a schedule that works for them, you're diminishing your own investment and you have no one but yourself to blame.

At our company we have people who come in at 6 am and we have people who don't get in until 9. Everyone sets their schedule to what works for them and I think we're better for it. Does that make it harder to schedule meetings? Not at all, we can always find an hour or two somewhere where everyone is around.

<comment><USER27> 9 is still early, to be in work for 9 you have to be awake for 7:30.

Left to my own devices I reliably wake up at 11am-12pm, which I would venture is not acceptable in your work environment.

</comment></comment><comment><USER28> I am not sure if this article is not a satire.

> _We tend to assume that late wakers are the partiers, the deadbeats, the > ones who are so irresponsible they can 't keep a basic schedule._

> _the data point to the idea that an [evening type] pattern is a risk factor > for some disorders, whereas [morning type] is a protection factor, " a 2012 > review of hundreds of papers in the academic literature concludes._

</comment><comment><USER28> One company I interviewed for starts day at 11AM, you are expected to be in the office until 7PM, sometime 9PM. I think they do it for timezone difference, heat and easier commute.

</comment><comment><USER29> >>The message is clear: Starting early is the way to get ahead; lateness is ugly as sin.

This message is the key. But its not what is literally understood here. Being the first is the key. By first I mean, being first to finish your course work as a student, being first in finishing most of the tickets at work, being first in taking initiatives in work and life, being first in taking up more responsibilities etc. When people talk of being first, its not just time.

Also productivity is the key here. I've been both a night owl and early riser based on how the situation would demand.

As a student I was mostly a night owl. College has its day schedule charted out. I would study late into the night, and go to college in the day. Most night owl's I knew during college, we were down with all our course work in 1/4th the term and would spend most of the time in mock exams, practice and revision.

At work and in my own start up I've tried various schedule with a ridiculous amount of productivity. And never felt discriminated in either.

Don't worry about being discriminated, if you are productive you will be getting astronomical miles ahead of everybody else. And people around you will notice this.

</comment><comment><USER30> I go to bed at 1-2am and wake up around 10am.

Works for me, but I run my own company so... it's a bit easier to do. :D

</comment><comment><USER31> Explanation:

Younger people tend to be late sleepers. Older people tend to rise earlier. Normally, businesses are run by older people. They get to choose, and obviously they choose what they like.

The same goes for the thermostat. Older people put on weight and wear suits.

</comment><comment><USER32> I am in Florida now and my clients are in California. My time zone has changed, but they now get better service from me because I can sleep until 12 and it's only 9 for them.

Changing time zones might be a viable option.

</comment><comment><USER33> How does this interact with time zones?

I travel back and forth between Singapore, for reasonable lengths at a time, and to ease the jet lag adjustment period I choose to be a morning person in one and a night owl in the other. It works pretty well.

Is the hypothesis that your body naturally gets tired some number of hours after the sun goes down?

To all the people commenting about how this article "hits home": what is jetlag like for you? If you travel 5 time zones away do you become a morning person? Have you tried to keep that, but does it slip away and you revert to staying up late?

<comment><USER34> That's exactly what happens to me. When I was living in Honolulu and traveling to the East Coast a lot, I would be a night owl on the east coast and then would have the wonderful experience of being a morning person for about a 2 week period before I reverted back to being definitively not a morning person.

</comment></comment><comment><USER35> The funny thing I found is if you accept the things you can't change and use them instead you can actually get some of the other world as well.People who get up early may be more successful than their colleagues in the morning and because of that can have a rest after lunch, that other people don't get. And we all know that sleeping 20 minutes after lunch has huge impacts on your health and afternoon work as well.

</comment><comment><USER36> This article makes it sound like people have individual schedules that are somehow locked in. My experience is that my schedule changes and I can force it to change. I can get on a 7am schedule or a 11am schedule by slowly forcing it.

Also, there is a quiz (which I haven't looked at). Why do you need a quiz? Couldn't you just ask what time you get up on weekends?

</comment><comment><USER37> "Early to bed and early to rise, makes a man stupid and blind in the eyes." Orson Scott Card.

</comment><comment><USER38> The problem is that the majority of people don't work this way. It's difficult for a business to have meetings when a portion of the staff has decided to come in around noon and the other portion comes in at 9am.

You can try switching meetings around, but there is only so much time in the day.

Update: I was pretty rational with this discussion and it was still down voted. Either: 1) I have people following me and down voting the majority of my posts (which I suspect is happening to some degree) or 2) HN users aren't realistic.

<comment><USER39> Meh, my last company/team had work hours that were almost completely flexible. My team had one weekly 10 o clock meeting that I had trouble making consistently (I had a longer commute than most), and we moved it.

It's honestly not _that_ universally difficult, because in practice "completely flexible work hours" means that there will be a good few mid- day/afternoon hours during which everyone is around, and lumping the meetings into that time works perfectly well. Obviously the extreme case as described in this article would make it more difficult, but for most people I don't see why it wouldn't work and even the extreme case people would be somewhat better off.

<comment><USER40> That's fine for scheduled meetings, but what about unscheduled collaboration? Every time the issue of remote work comes up there is a camp that insists companies need their engineers collocated for communication reasons. It seems that allowing completely flexible schedules like this has similar issues. How do you address that?

<comment><USER39> My company wasn't a fan of fully remote work (as opposed to periodic wfh) for the same reasons, and I agree with them. I didn't find that to be a problem at all though because bilateral communication is much easier to do over email/IM/videochat/etc.

</comment></comment></comment></comment><comment><USER41> Great. Can't wait for the nonsense lawsuits over this stuff.

</comment><comment><USER42> Who is this "science" person I keep hearing about in the news, and why does he have so many random opinions on the most inane topics?

</comment><comment><USER43> To me, regardless of what time you go to sleep - how productive are you in those last 3-4 hours before sleep.

Sorry, but you'll never convince me you get "sharper" at the end of the day than at the beginning.

I go to sleep as soon as I believe I'm able so I can wake up again. Sleep is a necessary evil, but it is necessary. So let's get it over with.

In the morning, I'm 100% the coder I am at 9pm.

<comment><USER44> Is it so hard to believe that different people work differently?

<comment><USER43> No. It's just hard to believe all people don't get more tired as the day goes on. In fact, eventually, as the day goes on we all get so tired we eventually fall asleep (all of us).

So the nuance is what's your tipping point where you are performing worse due to fatigue.

<comment><USER45> I start the day tired and wake up gradually until around supper. Then, I eat and do the chores. At around 9pm, I'm fully awake.

When I was a kid, my parents made me go to bed around 9pm. I used to get up every half hour saying "mom, dad, I can't sleep". They figured out quickly enough that sending me to bed early was a waste of time since I would spend 3 hours sitting or laying in my bed waiting, fully awake, feeling like going playing outside.</comment></comment></comment></comment>


Data Oriented Programming in Python - <AUTHOR> https://www.moderndescartes.com/essays/data_oriented_python/ <comment><USER2> Take a look at Numba for JIT.

The primary drawback of Numpy alone is that you pay the memory-to-cache latency for every operation. Numba compiles into C on the fly. It makes Python fast when it matters.</comment>


The Day You Became a Better Writer - <AUTHOR> http://blog.dilbert.com/post/127310496506/the-day-you-became-a-better-writer-2nd-look <comment><USER2> TLDR: Use active voice instead of passive voice.</comment>


Australian Teen Hacked Apple Twice in Search of a Job Offer - <AUTHOR> https://digit.fyi/australian-teen-hacked-apple-job-offer/ <comment><USER2> Hope he gets a job lol

<comment><AUTHOR> He's probably lucky that there was no significant data exposure or financial losses.

Could have been a very different outcome.</comment></comment>


IE 8 is the new IE 6 - <AUTHOR> http://infrequently.org/2010/10/ie-8-is-the-new-ie-6/ <comment><USER2> This complaint is as old as the hills. You may as well slap an obnoxious "Designed for HTML5" button on your site. The cost of having the world's largest addressable audience of any development platform is that web developers have to deal with the fact that it varies a lot. Them's the breaks.

Edit: because I hate comments that are purely negative, my suggestion for getting users to the latest technologies is to use libraries (like YUI and jQuery) which do the hard work of implementing newer features in backwards compatible ways, but use the modern feature if it's available. That way the difference between IE8 and a more recent browser becomes one of performance rather than the binary absence of functionality. Users can that way see what they're missing and have a reason to upgrade that's more compelling than the designer petulantly insisting their browser sucks.

<comment><USER3> The thing about all this I don't get is that IE8 is not anywhere near as bad as IE6 was. Like you mentioned, using libraries like YUI, or jQuery really mitigate a lot of the problems.

If you also plan a bit up front and have a competent designer to help out with the css definitions and strategizing (like avoiding gradients for now, fun/cool as they be), it's really not that big a deal.

I'm working on a new site and I've literally done nothing other than have a designer help out with the CSS and the only difference between Firefox, Safari, Chrome and IE8 are css drop-shadows, and rounded corners. Purely cosmetic, unlike IE6 which if you didn't account for it could stop your app in it's tracks.

To me IE8, as much as I would never personally use it, is a huge improvement from IE6. Even over IE7 it's hugely better, easier to deal with.

<comment><USER4> IE6 was a gigantic improvement over IE5.5, too. The problem is not there, the problem is that people are still stuck with IE6 today, close to ten years later...

IE8 seems not so bad today, but without any support for html5, css3, canvas, video or websockets, what will you think 10 years from now ? That it sucks: it will force you to have Flash/Silverlight fallbacks to do something as trivial as plotting a graph or displaying a video. Yet many XP users will still be using it, so you will have to support it...

<comment><USER3> MS with IE6 had a cavalier, take-it-or-leave-it approach to features/standards and sought to subvert/control the web/web browser-market.

MS with IE8 (an IE9) are actually trying to make their browser standards compliant and while we might not like the pace of the behemoth, it's moving in the right direction and this is a good thing.

2010 is a much different landscape than 2005 as far as the browser market goes as well; MS/IE are no longer the dominant juggernaut that can attempt to dictate standards.

More than anything IE releases are tied to MS's OS releases - IE8 has become the largest slice of the IE pie because of Win7, not because of features or any push by MS. As MS increases their release cycle of both browsers and more importantly, OS's, the likelihood of a IE6 repeat with IE8 is extremely thin. MS can't sit around on any version of a major product like they did with both XP and IE6.

</comment></comment></comment></comment><comment><USER5> > I'm developing for the future exclusively

Weird, I'm developing for my employer, and by extension for our clients.

<comment><USER6> We should let the OP "develop for the future" and keep our sites providing the _content_ for everybody who has _any_ browser.

After some time we can compare the notes.

(I wonder how he imagines that I would even try to access his site with anything else but with Opera Mobile from my phone).

</comment></comment><comment><USER7> Yes, but IE9 will also be the new IE8 eventually. Perhaps automatic embedding of unicorns becomes the new css-gradient and textshadow in 10 years. Designing for the minority isn't a very good solution.

A better solution:

embedded SVG rendering within <img> and <htmlelements> cross browser. Then you can assemble ANY trendy graphical element without having to wait for people to continually agree on, release, and implement css4, css5, css6, etc.

Other benefits:

\- it's an XML format like HTML

\- Machines can now scrape understand and generate pictures too

\- Vector graphics will scale great with different zoom\resolution settings

\- Designers can use tools like Adobe Illustrator, a more logical approach than css-versionX hacking that fits the problem domain better

<comment><USER8> >Yes, but IE9 will also be the new IE8 eventually.

I think the problem is that microsoft is tying the browser version to the OS version. Will you be able to install IE9 on XP?

<comment><USER7> I don't think the underlying problem has to do with specific companies and applies to older versions of Firefox as well. The underlying problem is:

(Demand\Rate of requests for specification changes) >> (rate of widespread implementation)

...ensuring there will always be a very narrow audience for the latest features.

While it's good to increase the rate at which new specifications are implemented, it's largely impossible to do without authoritarian measures to A) control the programmers working on every web browser B) control specification committees to agree faster. edit: _or C) make everyone use the same web browser_

Another approach is to DECREASE the rate of [edit: demand for] specification change. I think a large part of the problem is our expectations from the CSS specification. We are trying to expand its problem domain to include the construction of graphics and graphical effects, something which it was clearly not built for on a syntactical level! It might be better to convince browser teams with limited resources to better support long existing open standards to handle the dynamic creation of graphics with more logical syntax. Because the rate at which specification revisions are required will be drastically reduced. Whereas the process for creating new graphical features to your website via CSS is to submit it to a committee and wait 5years, it is done within the syntax of SVG. Making it a better allocation of resources.

</comment></comment></comment><comment><USER9> The best way to help is to port Chrome to Windows 2000.

Firefox is too slow to be usable on most Windows 2000 boxes, IE newer than 6 isn't supported, and Chrome isn't supported, which makes IE6 the best option.

<comment><USER10> Windows 2000 doesn't appear to have any significant market share.

<http://www.w3schools.com/browsers/browsers_os.asp>

<comment><USER9> Who uses IE6 on XP? Pirated copies of XP? That's bizarre.

<comment><USER11> How about half the population of China? [http://gs.statcounter.com/#browser_version-CN- monthly-200909...](http://gs.statcounter.com/#browser_version-CN- monthly-200909-201009) Plus folks at many organizations with conservative IT policies.

<comment><USER12> I know I had to do some voodoo to make a website we setup work right for a client because all of their internal windows computers were still running IE6

</comment></comment></comment></comment></comment><comment><USER13> This will always be a problem. The corporates and most of the business will always use whatever comes with their OS, for a simple reason that they don't have administrative rights to upgrade their browser, or simply because its just an extra overhead for the corporation to upgrade thousands of their workstations.

I can't think of any alternatives to this problem. I am pretty sure I will still be considering IE6 while developing websites in 2015, let alone IE8.

<comment><USER5> Not to mention that IE's turn-around time will almost always be longer than, for instance, Firefox's, or Chrome's, etc., since Microsoft is inherently less flexible than the others.

Oh, and don't forget that a lot of proprietary corporate apps are written to work ONLY in IE6. I wonder if a "legacy" mode for new versions of IE would alleviate part of this problem. (And yeah, I know that there's a big fat bag of poisonous acid-spitting kitten-eating snakes that this would open up.)

<comment><USER13> Firefox and Chrome would have the same fate, if they are as widely used as Windows/IE and comes default with an OS(Windows killer), like IE.

<comment><USER5> Which fate? Slow release cycles, or apps written specifically for a single browser?

<comment><USER13> Fate as in, if Mozilla came up with a Windows-killer OS and all the Windows user moved to the new Mozilla OS. Than people will be stuck with FF 3.6, even after 10 years from now.

<comment><USER14> There is no evidence to support this assertion.

The new auto-upgrade model Mozilla has adopted for FF 4.0 (and that Chrome has had for ages) makes upgrade cycles, for all practical purposes, negligible.

Chrome 6.0 was released on September 2. Since then, Chrome 5.0's market share has dropped to nearly 0%, with Chrome 6.0 picking up all of 5.0's share while also absorbing a good amount of IE's share.

If Microsoft instituted an auto-upgrade path for IE and released updates with more regularity, this would slowly become a thing of the past.

<comment><USER13> I haven't tried it but can you upgrade those browsers without administrative rights? I am assuming you can't do it on corporate settings.

<comment><USER15> On Windows, if the user installs Chrome, it's installed into the user's home directory (local application data or something). This means the user does not need admin rights to either install or upgrade Chrome.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER16> As long as features can be simulated adoption will stagnate. As much as we like to think we (the developers) are in control of browser adoption, the simple reality is that we're not. The end users are. The "normals". They don't give a shit if your box-shadow uses a PNG or is implemented using CSS3. They don't know the difference between canvas and flash. Hey! it works right?

I honestly believe that the way to move the web forward is by letting browsers innovate at the expense of standards, and for developers to adopt non- aesthetic API's that will cause functional differences from the stagnating dominant incumbent if there is one at the time (at the moment IE).

In other words, when developers get pissed, they find solutions. When end users get pissed, the switch browsers, or decide your app is not worth it. Our goal is to get that proposition in front of end users as often as possible, and create enough value that they choose the former.

<comment><USER17> I don't think I've ever met a web developer who thinks they're in control of browser adoption. We're slaves to dumb corporate IT policies and users who don't even understand the concept of a browser, let alone what it would mean to "upgrade" one.

</comment></comment><comment><USER18> > I'm developing for the future exclusively and asking users of legacy > browsers to adopt a modern browser or install Chrome Frame. It's an uphill > battle from here, but nobody is going to bend this curve but us.

I do exactly the same. Unless generously compensated, I refuse to develop for outdated broswers while an easy plug-in solution exists.

</comment><comment><USER19> I wonder if Microsoft has to support Win XP forever in the eyes of the author.

I don't know of a single reason why you shouldn't switch from xp to seven aside from evil corporate policies.

<comment><USER20> What about the system requirements? As sad as it may be, a lot of people in under-funded organizations are stuck using computers that are 5-10 years old, which may not support Windows 7.

<comment><USER19> I saw several netbooks (which are not famous for horsepower) upgraded to win7 without a single problem.

</comment></comment></comment><comment><USER21> I think it's safe to generalize this as:

IE _n_ is the new IE _(n-1)_</comment>