Brains Sweep Themselves Clean of Toxins During Sleep (2013) - <AUTHOR> http://www.npr.org/sections/health-shots/2013/10/18/236211811/brains-sweep-themselves-clean-of-toxins-during-sleep <comment><USER2> My friends and I were up late on a road trip once. We started to argue about how long it would take someone to die from lack of sleep.

Initially, I held the position that sleep was probably more important than eating food, and that you would die from sleep deprivation before you died from starvation. We looked it up, and learned about a disease called _fatal familial insomnia_. A mutated protein causes the onset of permanent insomnia, and there is no cure. It affects about 100 individuals worldwide. [1]

The average life expectancy of a patient is 18 months after the onset of symptoms. The first 9 months is a worsening case of insomnia, where the patient will experience paranoia, panic attacks, and hallucinations. Sleeping pills and barbiturates have been shown to worsen the clinical manifestations and hasten the onset of the disease. The individual then becomes completely unable to sleep, and will enter a state of dementia before becoming completely mute and unresponsive. This second state of permanent insomnia lasts for 9 months.

So ultimately, we learned that you can go for 9 months without sleeping before you die. I'm not sure at what point you'll suffer irreversible brain damage, but that was an interesting finding for me nonetheless.

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

<comment><USER3> It sounds like the brain is running something like a defragmentation routine every night. If it doesn't complete, your thoughts become more and more incoherent.

<comment><USER4> Once I had some strong personal issues and spent a full 6-7 days without getting any sleep. At that point I was convinced that my neighbors (Pakistani) were from IS, I even started an investigation (using some tactics you can guess) in order to find evidence and was already seeking political asylum in the US. Now I think about it and it's even funny, but hell.

<comment><USER5> New hypothesis: The reason the U.S. leans conservative relative to other countries is lack of sleep.

<comment><USER6> You might be able to track this down using public data.

</comment></comment></comment></comment></comment><comment><USER7> The engineer in me has to wonder: is this something we can synthesize?

If it were possible to induce this "dishwasher-like" surge of cerebrospinal fluid in the brain during waking hours, would we be able to live off of significantly less (or no) sleep?

I'm not saying that it's necessarily a good idea, but it would have a plethora of practical applications -- pilots, truckers, etc. would be able to stay awake in a healthful way, rather than by ingesting stimulants.

I've been interested in the science of sleep for a while -- I wrote a side project, [http://sleepyti.me](http://sleepyti.me), that actually gets quite a bit of traffic -- but neuroscience is mostly lost on me.

<comment><USER8> It seems rather likely that other neurological functions occur during that time as well. Unless we have the ability to simulate all of them, we shouldn't assume that the ones we ignore aren't important.

It would be especially harmful if we ended up suppressing the processes that make you feel sleepy when you need sleep, while the harmful effects of sleeplessness remained.

<comment><USER9> (Former neuroscientist here.) This is true of caffeine, for example, which is an adenosine analog (e.g. it has a similar shape and fits into the same receptors). Adenosine is a signal to a cell that it's running low in energy. Caffeine competitively binds to the spots on receptors where adenosine goes, effectively preventing the cell from communicating its low energy state.

Now here's the kicker. When your body builds 'tolerance' for caffeine, what this usually means* is the post-synaptic cell adjusts how much adenosine it's pumping out so that the "I'm tired" signal can cut through the caffeine. And when you go through caffeine withdrawal, it takes a while for those levels to re-adjust to normal.

* in the brain. Caffeine also has effects on your digestive tract, blood pressure, and some other non-brain parts. :)

Edit: corrected cAMP -> adenosine (simple recall error from a lecture that was 9 years ago). The gist of the reply remains the same.

<comment><USER10> This is incorrect information. (... Like so many biology/chemistry comments I see on HN.)

Caffeine is more like an adenine analog, not a cAMP (3'-5' cyclic adenosine monophosphate) analog. It binds adenosine receptors, not primarily cAMP receptors. It has indirect effects on cAMP, but I am not aware of direct ones. Also, your description of cAMP signaling sounds confused, since cAMP is an intracellular second messenger. I am not aware of an extracellular retrograde signaling process for this molecule.

Sorry, and your implication that cAMP is a byproduct of ATP consumption is totally wrong. cAMP is synthesized directly from ATP, a reaction catalyzed by the regulated enzyme adenylate cyclase.

<comment><USER9> Thank you for the correction. I mis-remembered a minor detail from a lecture that was 9 years ago, and have find/replaced cAMP -> adenosine in the above post. The gist of the post, though, remains the same. That is, caffeine competitively inhibits receptors that gate ion channels, and the mechanism of tolerance is an increase in the concentration of the thing that it competitively binds.

(My thesis was on auditory cognition and I haven't touched ion channel biophysics in that long. I have a long-ago memory that adenosine (now corrected) operated as a retrograde transmitter, though since I'm probably not going to spend my afternoon looking for the citations, I'll delete as well for now. Not because I believe it's wrong, just that I can't immediately back it up.)

Are you still doing research yourself or have you left for startup land like most of HN?

<comment><USER10> Thanks for making your corrections as well. Yes, I am in research, and I mostly come here for what's new in Python, learning algorithms, and data analysis. As an aside, it's tough to wade through the "startup land" and personal health advice and keep a straight face in all honesty, but there are few other places that aggregate the things I'm interested in on the computing side of things. An "HN" with users that specialize in bioscience would be very interesting, but I don't know of one with any level of seriousness/activity.

<comment><USER11> datatau [0] might be worth checking out, if you're not familiar.

since bioscience isn't on my radar i'm not sure if you'd find anything useful there, however, it feels like a more concentrated version of HN which specializes in some of the other stuff that interests you (e.g. learning algos, data analysis, etc.).

[0] [http://www.datatau.com/](http://www.datatau.com/)

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> Yet another reason to get a good nights sleep.

Many of these metabolic degradation products (not just beta-amyloid) of neuronal cell activities should readily be cleared quickly and efficiently from the interstitial space of the brain due to the highly sensitive nature of neuronal cells to their environment.

Some negative effects documented from these byproducts include: negatively effecting synaptic transmission[1], decreasing cytosolic Ca2+ concentrations[2] (Ca2+ is one of the final players in the triggering the release of neurotransmitters into the synapse between neurons to facilitate messages), and irreversible neuronal injury[3].

[1] - K. Parameshwaran, M. Dhanasekaran, V. Suppiramaniam, Amyloid beta peptides and glutamatergic synaptic dysregulation. Exp. Neurol. 210, 7–13 (2008)

[2] - K. V. Kuchibhotla, S. T. Goldman, C. R. Lattarulo, H. Y. Wu, B. T. Hyman, B. J. Bacskai, Abeta plaques lead to aberrant regulation of calcium homeostasis in vivo resulting in structural and functional disruption of neuronal networks. Neuron 59, 214–225 (2008)

[3] - M. P. Mattson, Calcium and neuronal injury in Alzheimer's disease. Contributions of beta-amyloid precursor protein mismetabolism, free radicals, and metabolic compromise. Ann. N. Y. Acad. Sci. 747, 50–76 (1994)

</comment><comment><USER13> I just read two really good neuroscience articles over on nautil.us. This stuff is super interesting.

[http://nautil.us/issue/27/dark-matter/heres-why-your- brain-s...](http://nautil.us/issue/27/dark-matter/heres-why-your-brain-seems- mostly-dormant)

[http://nautil.us/issue/27/dark-matter/the-neurons-secret- par...](http://nautil.us/issue/27/dark-matter/the-neurons-secret-partner)

</comment><comment><USER14> I can't help but imagine that if this is the case then increased water intake (prior to bed or simply throughout the day) would help intercellular water flow. Anyone know anything about drinking water improving sleep quality? Or generally well-informed sources that describe which bodily processes improve when you drink more water?

<comment><USER15> I don't have sources at my fingertips. I have done a lot of reading. This process of clearing wastes from the brain during sleep is not news to me. They are talking about the lymphatic system, which is the general waste removal system for the body. For your musculoskeletal system, lymph flow increases dramatically with physical activity. So walking more is really helpful. But the brain is on a separate system and lymph gets cleared by sleep.

I have a serious incurable condition that interferes with, among other things, oils and salts in my body. What I have figured out over the past 14-ish years (since getting diagnosed) is that hydration is not just about how much fluid you take in. Just like you can oil something to protect it from water, oil in the body helps keep water in. And salt and other electrolytes also matter.

There are also other brain chemicals involved in helping modulate the waking and sleeping cycle of the brain, chiefly melatonin and co-q-10. I took lots and lots of co-q-10 to heal my sleep disordered brain after getting off the boatload of prescription drugs that fried it and messed up my ability to sleep.

I sleep a lot better than I used to. I am better hydrated than I used to be. But hydration is not merely a matter of drinking water. There are a lot of other chemical things going on there. But I would agree that proper hydration helps (with sleep, brain function, and general lymphatic processes). Water alone does not get you to proper hydration.

<comment><USER16> What is this condition that you have which has to do with oils and salts? Any links and resources would be of interest to me.

<comment><USER15> My official diagnosis is atypical cystic fibrosis.

</comment></comment></comment></comment><comment><USER17> Its possible that sleeping on your side allows the glymphatic pathway to clear waste more efficiently.

[http://www.futurity.org/side-sleeping- brains-979872/](http://www.futurity.org/side-sleeping-brains-979872/)

</comment><comment><USER18> All is one; during sleep the undistracted soul is absorbed into this unity; in the waking state, being distracted, it distinguishes diverse beings. _(Chuang Tzu)_

<comment><USER19> I thought you were TempleOS at first glance.

</comment></comment><comment><USER20> Many years ago, during a stupid-er time in my life, I stayed up three nights in a row.

I was working on a robotics paper to present at a conference. My first. It was a massive project and things had fallen behind schedule. With just three days left until I was supposed to be on a plane I had no choice but to work on the thing continuously and get it done.

It was a solid three days of writing code and building/testing boards. I got done and packed with a couple of hours to spare before having to go to the airport. For some reason I could not sleep on the flight from Los Angeles to Seattle.

Once I got to the room at the hotel I pretty much collapsed on the bed. My talk was scheduled for the next morning. I figured I could sleep a solid 12 hours and have a couple to get ready for the talk/presentation.

Somewhere in the middle of the night I woke up. I have no clue how long I slept up to that point. I had lost all sense of time. I went to the bathroom. And that's when the nightmare started.

I washed my face and almost immediately my ears started to buzz. It was something like a 1kHz sine wave. It started at a low level and got louder and louder. Scary.

At a certain point, my field of vision started to turn milky white. The tone got louder and all I could see was a bright white light engulfing my entire field of view.

I was blind and deaf and in the worst possible circumstances I could imagine.

I have no clue how long it all lasted. It felt like somewhere around 15 minutes. It could have been just thirty seconds but I had no sense of time and I was freaking out. All I could do was sit on the bathroom floor, hold on to something and think through the worst possible scenarios.

After what I guess was about fifteen minutes my vision started to slowly come back and the tone started to fade away. That must have taken another 5 to 15 minutes. I was drenched in sweat and scared like I had never been in my life. I've never done drugs or alcohol. I imagined this had to be like a grade-A drug addict overdose experience, or worst.

All I could do was go back to sleep after that. I was exhausted.

The next day I asked to have my talk re-scheduled and went to see a doctor. He told me I was an idiot and lucky not to have ended-up in the ER with brain damage.

That was the last time I worked on anything overnight.

I know tech companies have a culture of working long hours to get things done. Be sure you are not killing yourself to crank out another 100 lines of meaningless code. The world can wait. And if your VC's don't understand you'd like to live a long an healthy life, well, fuck them.

</comment><comment><USER21> Related discussion from a few weeks ago;

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

</comment><comment><USER22> I'd be curious to know if anything similar happens during meditation.

I often feel just as refreshed from meditating briefly as I do from a quick nap.

</comment><comment><USER23> The claim may or may not be true, but for me the word "toxins" has been so thoroughly poisoned by woo that I get a knee-jerk reaction just reading the title. The bar for anyone talking about cleansing toxins is like 200% higher because of all the bullshit that's been spouted over the last few decades.

<comment><USER24> I think we can trust a professor of neurosurgery at the University of Rochester not to be spouting woo in her study in _Science_.

<comment><USER25> Of course we can. The fact that a trustworthy document from a real scientist in a real journal is initially seen as less reputable because a journalist uses the word toxins shows how devalued the word has become.

</comment></comment></comment><comment><USER26> The brain continues to fascinate. I wonder how the brain acts while under anesthesia or induced to sleep through sleep aids? Is it different than naturally falling asleep?

More particularly, it sounds like brain cells (At least in mice) shrink during sleep and then enlarge during wakeful consciousness. That shrinking mechanism may play a role in the cerebrospinal fluid recycling/cleaning process, which itself may play a role in ridding the brain of harmful plaques. Does an Alzheimer's patient not show the same level of growth and shrinkage? Could forced sleep improve their outcomes? (IE: Could forced sleep lead to a more normal growth/shrink cycle?)

I am, unfortunately, ignorant on most of the medical science at play here. Any biologists, doctors or hobbyists have any thoughts?

<comment><USER9> Former neuroscientist here (though I did not work directly on Alzheimer's or sleep).

Anesthesia and sleep are different states, though there are some similarities. Here's a figure that illustrates what 'typical' EEG looks like in these various states: [http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3162622/figure/F...](http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3162622/figure/F1/)

A smattering of other differences off the top of my head: you can feel pain when you're asleep, but not under anesthesia. It is possible to wake up a sleeping subject or patient with sounds or shaking, but not one under anesthesia. Also you'll feel refreshed after you sleep, but not after anesthesia.

<comment><USER27> _Also you 'll feel refreshed after you sleep, but not after anesthesia._

When I had general anesthesia for my wisdom teeth I definitely felt refreshed afterwards. I'm wondering if this idea isn't so well grounded, since we mostly anesthetize and then do violent surgery on people - and so you mostly wake up feeling _that_.

</comment></comment></comment><comment><USER28> It's fascinating to me that we still don't know why we sleep. We spend 1/3 of our lives in a self induced coma-like state and we aren't sure why, except that if you don't you start to go crazy. It will be interesting to see how this develops!

</comment><comment><USER29> There's a nice gif on Wikipedia showing something like fluid flow in question:

[https://en.wikipedia.org/wiki/Cerebrospinal_fluid#Circulatio...](https://en.wikipedia.org/wiki/Cerebrospinal_fluid#Circulation)

</comment><comment><USER30> I have a harder time controlling my appetite if I don't get enough sleep.

Could these toxins be related?

<comment><USER31> Perhaps, as serotonin does regulate both sleep & appetite.

</comment></comment><comment><USER32> >If this proves to be true in humans as well...

Wake me up when they publish _that_ paper.

</comment><comment><USER33> brain: longest garbage collection cycle ever

</comment><comment><USER34> Does anyone know if there is research about whether this at all impacts/plays a part in causing dreams?

</comment><comment><USER35> Has anyone determined which stages of sleep this occurs?

</comment><comment><USER36> So why does a lion need to sleep for 18 hours then?

</comment><comment><USER37> WHY? WHY IN GODS NAME?!?!

Why would such a preposterously dangerous state, complete defenselessness, not be engineered around by darwinian pressure?!?

<comment><USER38> Because it isn't.

</comment></comment><comment><USER39> This is fascinating!

</comment><comment><USER40> >In Guantanamo they kept prisoners awake 11 days

Somewhat off-topic, but how could anyone possibly argue this is not torture?

<comment><USER41> Is anyone arguing that torture is not something that happens in Guantanamo? By now it should be common knowledge that it's a torture camp. Obama promised to shut it down but he didn't.

<comment><USER40> I don't think anyone on HN has argued that, but many people in the general public still insist that "enhanced interrogation" like what's done in Guantanamo is not actually torture. Or at least they used to, until Obama finally admitted people have been tortured; though some still insist it isn't torture.

My question was more hypothetical. That seems like the very definition of torture.

<comment><USER42> Those people know it is really torture, they are just able to handwave it away because the people it is happening to believe in a slightly different god than they do.</comment></comment></comment></comment>


Why UML Fails to Add Value to the Design and Development Process - <AUTHOR> http://lispy.wordpress.com/2008/10/29/why-uml-fails-to-add-value-to-the-design-and-development-process/

<comment><USER2> In my personal experience, the biggest problem I had with UML is tool support. Most modelling tools are terrible and/or very expensive.

Modelling is very tool dependent, without a good tool that help you view, edit, print and manage your models; you will just quit it.

A mature, FOSS tool, can take UML a long way!

</comment><comment><USER3> UML is a language to facilitate conversations about design and architecture. It's about collaboration, communication, and consensus.

People try to make it about another C -- Control. This is the whole MDA, MDD, etc scenario. In my opinion, it's not there yet -- for some of the reasons outlined.

Instead of having such verbose criticisms, it might be better just to use the language for what it's good for and ignore the rest. Life is short.

<comment><USER4> I don't think it was verbose criticisms. I was focusing more actually on an architecture for increasing the level of abstraction.

<comment><USER3> Increasing the level of abstraction for what? It's important to outline your goals here: audience, desired end result, level of abstraction, etc.</comment></comment></comment>


Scientist Who Developed World's First Human Micro Liver Wins $250000 Heinz Award - <AUTHOR> http://www.thebetterindia.com/22968/indian-origin-scientist-who-developed-worlds-first-human-micro-liver-wins-250000-heinz-award/ref=ycom <comment><USER2> I get a -404 unless I strip off that last term, after the slash (should be ? ??) e.g. [http://www.thebetterindia.com/22968/indian-origin- scientist-...](http://www.thebetterindia.com/22968/indian-origin-scientist- who-developed-worlds-first-human-micro-liver-wins-250000-heinz-award/)</comment>


Show HN: Evenk C++ concurrency library - <AUTHOR> https://github.com/ademakov/Evenk

<comment><USER2> One option for compatibility on non-futex platforms is to write your own futex emulation using striped std::mutex or pthread_mutex_t. The emulated futex API still has the same slow-path-only goodness as a real futex, but is fully portable.

For an example of this technique, check out [https://github.com/facebook/folly/blob/master/folly/detail/F...](https://github.com/facebook/folly/blob/master/folly/detail/Futex.cpp#L133) . That code only implements wake and wait, but it would be straightforward to extend it to the other futex operations.

</comment><comment><USER3> for those interested in C++ based concurrency lib, check out lthread_cpp. It's a wrapper around lthread.

[http://lthread-cpp.readthedocs.org](http://lthread-cpp.readthedocs.org)

</comment><comment><USER4> Nice work! I have some suggestions for future improvements:

\- Your CPUCycle class doesn't actually do backoff. atomic_thread_fence(m_o_relaxed) is a no-op, and at least one compiler (recent clang versions) will optimize the loop away entirely. You can fix by reading from a volatile variable inside the loop.

\- Similarly, nanosleep on linux will busy-loop instead of returning to the scheduler for small delays; this seems not to be the goal for some of the backoff schemes

\- The BoundedQueue assumes that a futex call functions as a "full memory fence". I'm not terribly familiar with the linux kernel internals, but I don't believe this to be the case. On Power, for instance, it appears to not always generate a sync instruction, instead using lwsync or isync. I haven't looked at the queue closely enough to tell if this poses a correctness issue, but it definitely looks weaker than atomic_thread_fence(m_o_seq_cst).

\- The SpinLock uses a test-and-set loop; test-and-test-and-set will often scale much better because of the reduced cache coherency traffic required.

\- Similarly, using NoBackoff as the default backoff strategy seems to impose a likely performance penalty on users who aren't familiar with the need for backoff.

\- The FutexLock code looks a little screwy to me. Why backoff if you're likely going to do a futex operation anyway? Why is the Lock()'s unconditional discarding of the exchanged value safe? It seems like you have the potential for missed wakeups. But it's late and I'm tired, so I'm probably just missing something.

I don't mean to be critical, it's just that code reviews only ever contain nits. I'm excited that somebody is working on locking primitives that are more efficient than glibc pthreads (whose performance I'm not a huge fan of).

<comment><AUTHOR> Thank you very much for your review.

\- I have a TATAS lock implementation elsewhere: [https://github.com/ademakov/MainMemory/blob/master/src/base/...](https://github.com/ademakov/MainMemory/blob/master/src/base/lock.h)

Could add it to Evenk as well.

\- Exchanged value in FutexLock is not discarded, it is used in the conditions of the `if` and `while` statements. In both cases the returned value of 0 means that we've got the lock and the next thing executed will be the `break` statement. If either value of 1 or 2 is returned then we need to proceed with spinning. The `if` condition relies on short-circuiting of || operator, so the exchange is only done if the `value` variable is equal to 1. If it were equal to 0 then the CAS in the for loop would have returned true leading to an early exit.

The idea of using backoff before futex is picked from this article: [http://locklessinc.com/articles/mutex_cv_futex/](http://locklessinc.com/articles/mutex_cv_futex/)

The author suggests to spin a little in unlock as well, but I didn't go that far.

</comment></comment><comment><USER5> Would strongly encourage the author to put an example on the front page of the repo. I have no clue what this is, is it like ZMQ, std::thread?

<comment><AUTHOR> Thanks for the advise. The library is currently at a very early stage, so no examples, no docs are available. It is now very tiny, as it grows it will perhaps be a lean alternative to Intel TBB. It uses C++11 standard library atomics and threads where possible.

</comment></comment><comment><USER6> What license are you distributing the code under? I don't see any license noted in your repo.

<comment><AUTHOR> I've just added the LICENSE file. It is MIT license.

</comment></comment><comment><USER7> Any docs at all?

<comment><AUTHOR> Not yet, unfortunately.</comment></comment>


What programming lang/tech offer the most opportunities in the upcoming years? - <AUTHOR> Hi, ikr that these types of questions get asked all so often, but I found myself in a dilemma and can't decide what path to choose. I'm a 3rd year EE&CS student and have experience in various languages, albeit basic to intermediate only, as we focused more on algorithms and general programming concepts more than we did on practical stuff.<p>The thing is, I was offered a job after graduation at a company that uses a lot of data science (not sure if this is the correct way to phrase it, but English isn't my mother tongue). I still have some time to decide on weather that is a job I'd like and well to shorten the lengthy intro I can't decide on weather to keep working on Java that is switching to Kotlin or maybe Scala or to switch to C# + F# and also neither on what path to go on, should it be DS/Machine Learning/Something else, there isn't particularly anything that I like, since till now all I really did was simple school stuff and front-end stuff (actually I dislike front-end dev) and programming competitions. So TL;DR What do you guys thinks is the best path to choose for a young developer that will be starting out his career in 1.5 years? <comment><USER2> Now that JavaScript and Python are #1 and #2, respectively, it opens the door for Elm/Haskell in the next 5 - 10 years. As noobs continue to flood/dilute the market, FP seems like a good bet to move the state of advanced computing forward. That being said, the frameworks react and tensorflow/scikit learn will still be in demand for the next 5 years so there's still high demand for the right framework knowledge.

<comment><AUTHOR> Yeah that is a real concern, that is many people who don't even posses a deeper understanding of those topics will take on the job market, so having a "rare" skill can differentiate one in the job market.

</comment></comment><comment><USER3> Have a look at F# and Fable.</comment>


Ask HN: Python for a webapp? - <AUTHOR> What do you guys think, is it a good idea to write a full web-app in Python+Django? Most people seem to be using Ruby (on Rails) these days, but I just started to learn Python, and I like it quite a lot. I've seen some apps written in Python, they seemed quite cool, but I wonder what the limitations are. <comment><USER2> Full disclosure: I'm a django developer and have never written an app in rails.

People like to say that python+django is equivalent to ruby+rails. I largely agree, but that's only a first order approximation.

The rails community is larger than the django community. This means that whatever you are trying to do, you are more likely to find someone who has done it before in the rails community (along with the discussion, tools). This also means that the power tools for web-apps will be very good and plentiful. Due to that, rails > django. (Heroku is an example of this -- there is no equivalent for django that is so well established as being awesome). However...

The python community is larger and more diverse than the ruby community. This means that if you deviate from the usual track, there will still be a community to support you.

Python is popularly used in a variety of fields with very different needs. This leads to a very diverse ecosystem in python, both in terms of areas of specialization for developers and tools available. python > ruby. This makes me prefer python+django.

</comment><comment><USER3> Any sufficiently complex web app eventually outgrows its framework. Frameworks are a really useful tool to jump-start a project, but eventually you'll be writing (and re-writing) things from scratch, be it for reasons of flexibility, performance or maintainability.

On that basis, I think you're much better off choosing a framework based on the underlying language rather than vice-versa. If you're happy with Python, pick a Python framework.

</comment><comment><USER4> Use what you like and are comfortable with. It's pretty much a matter of taste.

There's nothing you can do in Django that you can't do in Rails.

</comment><comment><USER5> I use Django and Python for a lot of stuff. I have used rails in the past, but not for a long time. I prefer python to ruby, and that's ultimately what made me switch (as I write non-web stuff in Python).

Perhaps the two biggest differences between Django and Rails are where you save time. With Rails you get scaffolding, so you have CRUD functions for everything more or less straight off the bat.

With Django you get an admin interface which is great if you want a backend, but you still have to write your own frontend pages.

Rails has built in Ajax and Schema migration. Django has external projects for it.

In some respects Django is a bit like Arch Linux and Rails is more like Ubuntu. If you like your frameworks to have everything bundled in and like Ruby then Rails is better for you. If you like things to be the way you want or you prefer python, consider Django and Pylons (and web.py).

</comment><comment><USER6> I was first a PHP developer (I still can be), but I'm working with python+django for 2 years now. The reason why I began to user django is the time-winning. In my opinion it's faster to make a webapp in python+django than PHP+(Kohana, Codigniter, Zend)

And what yuvadam sais: Django and Rails are pretty much equivalent.

</comment><comment><USER7> You can't go wrong with either. And Django isn't the only Python web framework out there (Pylons, web.py, Google App Engine). Nor is Rails the only Ruby web framework (Sinatra is nice).

Both can be made to cleanly scale for whatever world-dominating project you have in mind.

</comment><comment><USER8> Django and Rails are pretty much equivalent.

Use whatever tool that will make you the most productive.

</comment><comment><USER9> I love Django to bits - this is the app I written in Django <http://beepl.com/jan> Hoping to go public in March this year..

</comment><comment><USER10> In addition to django, you might consider taking a look at the pylons framework.

<comment><AUTHOR> and what about web.py?

EDIT: according to Pylon's homepage it's used by Reddit...I thought they released web.py?</comment></comment>


Ask HN: Will AI disrupt education and traditional teaching? - <AUTHOR> <comment><USER2> One of my core beliefs for AI/automation is that by removing the need to do menial custodial and service tasks, society can focus on cultivating more artists, philosophers, and programmers. If anything I think that we will put a much larger focus on learning when we reach this point of automation.

Specifically regarding teaching, I don't expect much to change. We're already in a position where we could educate students by having them watch videos and read out of textbooks by themselves, but we don't. At the moment, teachers can offer alternative explanations to struggling students, respond to questions, and perform other markedly human tasks. You can emulate this with AI, but I think we're a far ways off of making this human touch obsolete.

</comment><comment><USER3> Proper education no longer exists. It has been replaced by vocational training. And FANG dropping college education altogether suggests that even that will go away.

AI will obviate the need for human intellect altogether -- if machines and algorithms will do all the "thinking", why bother?

If you want to know how Trump got elected, why the US is in steep decline, ruled by corporate monopolies and oligarchs and on the verge of tyranny, look no further.</comment>


PoC||GTFO-18 [pdf] - <AUTHOR> https://www.alchemistowl.org/pocorgtfo/pocorgtfo18.pdf <comment><USER2> There are _five_ different files in this wonderful polyglot PDF. Spoilers ahead:

        - The PDF you see when you open the file normally, with a big REJECTED stamp on the front page.
        - An HTML file, which is what you get if you open the file with extension .html or MIME-type text/html. This contains an SVG representation of the first page.
        - A ZIP file, which you can unpack by just running `unzip` over the file. This contains the various PoC code and other materials.

And, two more extra-special files which you can get by swapping the first 320 bytes with the other prefix of the SHAttered collision pair (this changes the file contents but not the SHA-1 hash!):

        - A PDF which shows ACCEPTED and a coffee stain on the first page instead of REJECTED
        - An HTML file which contains a nice CHIP8 emulator.

</comment><comment><USER3> Since they ask for mirroring, I mirrored the PDF on IPFS. If you have IPFS running locally:

/ipfs/QmSLGcHPnPSRZzTmPpVhLt1nhGiaenZK1SFH8PpiozwS2G

Otherwise you can access it via a public gateway here:

[https://ipfs.io/ipfs/QmSLGcHPnPSRZzTmPpVhLt1nhGiaenZK1SFH8Pp...](https://ipfs.io/ipfs/QmSLGcHPnPSRZzTmPpVhLt1nhGiaenZK1SFH8PpiozwS2G/pocorgtfo18.pdf)

</comment><comment><USER4> It bugs me probably more than it should, but I find it strange that issue 0x09 was followed by 0x10 instead of 0x0a...

<comment><USER5> If it makes you feel better, binary-coded decimal has a rich tradition.

</comment></comment><comment><USER6> "Technical Note: This file, pocorgtfo18.pdf , is valid as a PDF, ZIP, and HTML. It is available in two different variants, but they have the same SHA-1 hash"

Where do I find the second version? Couldn't find the link on the alchemistowl.org webpage, but they are mentioning two different MD5 and SHA256 Hashes.

<comment><USER7> The hashes are on this [0] page... But I don't see any variant. Maybe it was distributed on one of the mirrors?

[0] [https://www.alchemistowl.org/pocorgtfo/](https://www.alchemistowl.org/pocorgtfo/)

<comment><USER2> The variant has the _same_ SHA-1 hash - you're meant to build it yourself. See [https://shattered.io/](https://shattered.io/).

<comment><USER7> Ah, so variant referred to the puzzle. Sorry, my PDF reader rejected the mag as invalid so I haven't quite read anything yet.

</comment></comment></comment></comment><comment><USER4> Following the call for new mirrors, I created another one: [https://mirror.oldsql.cc/pocorgtfo/](https://mirror.oldsql.cc/pocorgtfo/)</comment>


Should you hire a convicted Hacker? - <AUTHOR> http://www.informationweek.com/shared/printableArticle.jhtml?articleID=206902454 <comment><USER2> We did. It's worked out pretty well, but we're careful never to leave Robert alone in the room with any of our laptops.

<comment><USER3> Context: <http://en.wikipedia.org/wiki/Morris_worm>

</comment></comment><comment><USER4> Of course, you could just hire one who didn't get caught.

I know my employer did, but he doesn't :-)</comment>