Learning from an animal that can regrow its head - <AUTHOR> http://www.bbc.com/future/story/20141009-the-animal-that-regrows-its-head

<comment><USER2> When I hear that an animal can regrow its head, I think of a head in the chordate sense, as in "a hardened container of some kind with a brain and complex sensory organs embedded in it."

Spoiler alert: the creature in this article does not have a "head" in this sense. It's a relatively simple organism which does, admittedly, have some interesting regenerative properties. Exciting title, though.

</comment><comment><USER3> Children already have some regenerative abilities, a lost finger tip in a child of only a few years will usually grow back if the wound is not sutured close by surgeons. Extending that to all humans might not be all that impossible.

Wikipedia has more information in the mammalian and human sections in the article on regeneration. [http://en.m.wikipedia.org/wiki/Regeneration_(biology)](http://en.m.wikipedia.org/wiki/Regeneration_\(biology\))

</comment><comment><USER4> There's always knowledge to be gained from comparative biology. But there's knowledge and then there's applicable knowledge. I think the odds of finding anything that can be ported to humans as a therapy or enhancement on a short enough timescale to be interesting (i.e. less than 20 years from now) are pretty remote. That's true for the process of mining the biochemistry of our fellow mammals, never mind the lower animals.

The unfortunately fact of the matter is that messing with metabolism is exceedingly hard. For example: researchers have spent billions and the past two decades earnestly trying to artificially produce some of the effects of calorie restriction, a beneficial altered metabolic state that is very easily studied in numerous species. What is there to show for all of this effort? One path (rapamycin) that might, maybe, produce a drug family that can recreate just a little of the calorie restriction response - but not soon. Perhaps ten years from now. There is still no full understanding of what is actually going on in calorie restriction, just a high level sketch. Most of the money spent went on what turned out to be a dead end (sirtuins). All in all a grinding, expensive process with little to show for it.

The situation is no different when we are talking about regeneration rather than aging. There are researchers studying salamanders, lizards, zebrafish, hydra (which might or might not be ageless), MRL regenerator mice, cancer- immune naked mole rats, and so forth. There is a growth in understanding of the species-specific biochemistry involved, but in the present environment, in which the research community can't even recreate or fully understand a simple response to environmental circumstance such as calorie restriction given decades and billions of dollars, then what are the odds that they can pull something out of non-mammalian species and make it work in people? Pretty small, I'd say.

The odds of learning lots of interesting things are on the other hand pretty high. If you want to go digging via Google you'll find that a great deal has been gained in recent years in the understanding of salamander regeneration, for example, and the MRL mouse story is also fascinating.

But as to the hydra (not the same thing as the Hydractinia of the article) I penned this a while back. It's as much applicable to regeneration issues as aging issues, and for the variety of lower animals that are highly proficient regenerators.

\</comment><comment></comment><comment>-

Hydra are one of the few ageless species, or at least a good candidate for such: researchers have watched populations age for years with no signs of increased mortality rates or declining pace of reproduction. One might view these creatures as an incremental step up from bacteria or yeast: multicellular animals that can reproduce asexually via budding, and which are extremely proficient at regeneration.

One line of thought regarding the agelessness of hydra is that they simply consistently and relentlessly renew all the tissues in their body, which is accomplished by having very many stem cells that don't decline over time. Hydra might follow a strategy of eliminating the inevitable buildup of malformed proteins, aggregate waste products, and similar damage in individual cells by (a) sacrificing and then replacing damage-bearing cells, and (b) using the bacterial approach of moving as much damage as possible into one of the two daughter cells produced in any cell division. Since a hydra has no brain, any cell can be sacrificed at any time so long as it is replaced with an equivalent new cell - the whole organism can be replaced completely over any arbitrarily short period of time provided it can find the metabolic resources to do so.

There's nothing magical about making cell lineages last essentially forever. All bacteria do it, and even complex organisms like we humans are capable of it. There is, for example, the process that ensures that the first cells of a human child are biologically young and free from damage even though the parents bear decades worth of accumulated damage in their cells. It's also possible that hydra use an aggressive repair and renewal process of this nature, either when they bud or on an ongoing basis.

Aging doesn't happen because it has to, aging happens because it's almost always advantageous from an evolutionary perspective - that we age is an example of the success of the gene built upon the pain, suffering, and death of the individual who bears it. Though apparently this isn't the case for hydra, and many other types of life that are closer to what we might think of as self-replicating machines rather than populations of individual entities. One might argue that the big downside of individual entityhood is the need for brain cells that store data, and thus cannot simply be replaced at arbitrary times. Or perhaps one might argue that a necessary precondition for individual entityhood is a loss of the processes of aggressive regeneration and tissue replacement such that a thing like a brain might be able to evolve in the first place.

In any case, not everything that the aging research community works on is both interesting and potentially useful when it comes to intervening in human aging. Ongoing research into the biology of hydra is certainly interesting, but I'm dubious that we'll find anything that can inform us of a way out of our present predicament, the one in which we are aging to death. We and the hydra live in very different worlds, with very different requirements for success.

\</comment><comment>-----

Some further hydra resources for the interested:

FoxO is a critical regulator of stem cell maintenance in immortal Hydra: [http://www.uni- kiel.de/aktuell/pm/2012/2012-332-foxogen-e.sh...](http://www.uni- kiel.de/aktuell/pm/2012/2012-332-foxogen-e.shtml)

Evolution of human longevity: lessons from Hydra: [http://www.impactaging.com/papers/v4/n11/full/100510.html](http://www.impactaging.com/papers/v4/n11/full/100510.html)

In Swiss Lakes, Scientists Search For The Source Of Immortality: [http://www.worldcrunch.com/tech-science/in-swiss-lakes- scien...](http://www.worldcrunch.com/tech-science/in-swiss-lakes-scientists- search-for-the-source-of-immortality/immortality-hydrae-biology-stem-cells- longevity/c4s16797/)

Hydra, a powerful model for aging studies: [http://www.tandfonline.com/doi/full/10.1080/07924259.2014.92...](http://www.tandfonline.com/doi/full/10.1080/07924259.2014.927805)</comment>


Facebook To Launch Friend Grouping. Competition Can Suck. - <AUTHOR> http://www.techcrunch.com/2007/09/29/facebook-to-launch-friend-grouping/

<comment><USER2> "Facebook is just as likely to compete with you as pay a few bucks and just buy you"

facebook is still at the size where they can churn out code and features quickly. i'd be surprised if they purchase many third party apps while they're in that position.

</comment><comment><USER3> Here's a different sort of friends app that you might find interesting:

<http://www.facebook.com/apps/application.php?id=5469363031>

Find out what your friends have told everyone you are good at and track your public expertise rankings.

In turn, increase your karma by telling everyone about your friends.

Discover experts on Facebook.

<comment><USER4> I hate it that all links to facebook arrive at a login screen. I don't want to login just to see what that app is all about.

Facebook - nah...

<comment><USER5> This isn't a function of the platform itself, it's just an annoying thing that most of the app developers do. You don't have to require a login, let alone require the user to add your app, just to show a canvas page that says what your app is all about.</comment></comment></comment>


Keybase – Crypto for Everyone on the App Store - <AUTHOR> https://itunes.apple.com/us/app/keybase-crypto-for-everyone/id1044461770 <comment><USER2> Android version is also out: [https://play.google.com/store/apps/details?id=io.keybase.oss...](https://play.google.com/store/apps/details?id=io.keybase.ossifrage)

previously discussed here: [https://news.ycombinator.com/item?id=14318754](https://news.ycombinator.com/item?id=14318754)</comment>


Table Touch Screen Terminals To Replace Waiters - <AUTHOR> http://wcbstv.com/technology/uwink.touch.screen.2.625719.html <comment><USER2> I spent a year of my life shopping a business plan for the tablets-at-the- table concept. I made a prototype system and tested it extensively at a restaurant. Guests loved it. Men came up with all kinds of efficiency-based reasons why they liked it (more accurate, faster, etc.) Literally 75% of women trying it (30 out of 40 or so) used the word "fun" and felt no need to justify further. And, customers perceive that a tip is warranted because food was brought to the table, so they tip anyway.

Restaurant owners/managers like the concept, as long as their customers do. The recognize that a single bad customer experience poisons the well. Not only is that customer unlikely to come back, but they'll tell all their friends. A spectacular experience does not have an equally positive result. So, given the option of customer experiences across a spectrum or consistently average experiences, they'll choose average and be pleased. The perception among owners was that few people could

Management complains that they can't get their servers to upsell/cross- sell/etc. One would think that the improvement in check average and thus tips would be sufficient motivation. However, people with good selling skills can make a lot more money selling other stuff. So, owners loved a system that could ask, "Would you like fries with that?"

I have to do some work now, but I'll post later today about why this went nowhere for me. There are some fundamental problems that are hard to circumvent.

</comment><comment><USER2> The first problem is that existing restaurants have POS systems that are (1) expensive, and (2) essential for operations. If you want to build an order-at- the-table system that reduces workload, you have to integrate with the POS system or replace it. Replacement is hard because these systems are actually somewhat complicated, and restaurants are scared of replacing their proven system with your unproven one.

Integration isn't hard from a technology standpoint, but you have to get the cooperation of the POS vendor. 80%+ of casual dining restaurants use either MICROS or Aloha (now owned by Radiant Systems). Neither have open APIs or are friendly to potential competitors. Radiant Systems has a kiosk-based front end used by gas stations for sandwich services (Sheetz if you're in the Midwest).

Permission is hard to obtain unless you have a large restaurant chain putting pressure on their vendor. Integration without permission is problematic because the POS system becomes unsupported (the answer to all problems will be "remove the tablet system").

So, the apparent solution is "Find a large restaurant to partner with." More about why that's hard in a minute.

</comment><comment><USER2> So, why won't a big restaurant chain try out order-at-table? 6% net margins. Small changes in restaurants can result in big changes to the bottom line, either good or bad. And, changing the customer experience is considered a big change. A huge pilot project for a 500 unit restaurant is to try out slight modifications to its menu. Trying an order-at-table concept is orders of magnitude greater in potential change. Several large chains told me they'd be very interested if they saw the concept working somewhere else first.

So, the obvious conclusion is to try it out at a smaller restaurant chain. The problem there is that a pilot is considered a huge distraction that takes away from management's resources. Also, it's a huge risk when you are piloting in one unit of a ten unit chain. And, the small chain has no pull with its POS vendor. So, you can't do an integration.

</comment><comment><USER3> If I had a dollar for every time I've heard this...

</comment><comment><USER4> Waiters were obsolete before they were invented. They are quite inefficient, and always have been. People just like being waited on.

</comment><comment><USER5> Much better: I never feel guilty for not tipping a robot! :-)

</comment><comment><USER6> The Arby's on El Camino in Sunnyvale had front-counter touch-screen ordering over a decade ago. (Do they still?)

Essentialy, you could walk up to any of ~5 screens to place your order, and some smaller number of counter staff would take your money and give your change.

<comment><USER5> Nope, didn't see anything like that last time I was there ~3 months ago.</comment></comment>


Why C++ is used intensively at USA Computing Olympiad all the years - <AUTHOR> http://www.usaco.org/index.php?page=open14results <comment><USER2> The solutions I viewed for the recent competition did not need C++, C would have done fine. The problems could be modeled by arrays and most of the rather small programs consisted of nested loops and conditions.

Reading the winning code gave no notion of what the corresponding problem was about!

I will stick to Java for my 100,000 LOC application.

<comment><AUTHOR> I'm trying to set up a team for the competition and was thinking about which language we should choose, then found out c++ is truly a dominant language in the competition, maybe you can get some free data structures etc?</comment></comment>


Ask HN: Where to find data-driven smartphone reviews? - <AUTHOR> I recently found myself having to buy a new smartphone and I was overwhelmed by the amount of subjectivity with most reviewers. I wish there was someone who based reviews purely on data and facts, like performance/battery benchmarks, DxOMark score etc. rather than "it's a great phone but we don't like the camera".<p>The only example I found is notebookcheck.net. Other websites base the final score(s) on opinions rather than data (even though they present benchmark results). <comment><USER2> I almost exclusively base my phone purchasing decisions on the specs listed on gsmarena.com. They list specifications in sufficient detail for my needs, and on more recent devices provide DxOMark scores and test images which can be easily compared with other phones. Of course you can also compare spec lists side by side. I find that as smartphones become more advanced and the depth of my knowledge increases, I am more concerned with hitting my own checklist of specs and individual features rather than some reviewers arbitrary list of what they find important.</comment>


Charity API to Empower Businesses - <AUTHOR> https://www.producthunt.com/posts/spreadcare <comment><AUTHOR> Suggestions to features and improvements would be great.</comment>


Border Patrol Chief Was Member of Secret Facebook Group - <AUTHOR> https://theintercept.com/2019/07/12/border-patrol-chief-carla-provost-was-a-member-of-secret-facebook-group/ <comment><USER2> Chinese and American are now strikingly consistent in condemning people's integrity through obviously private activity. I am certainly feel dismayed that the aspect of freedom turns out to be diminishing, as was admired when I am coming to this country.

Disclaimer: Chinese national holding a US permanent residency

<comment><USER3> I think I understand your objection that this is a private forum, but we (some Americans, and unfortunately inconsistently) hold our public law enforcement officials to a high standard of appearing impartial. The impartiality is important because law enforcement is supposed to enforce the law equally and fairly. Activities like this Facebook group suggest ulterior motives and loyalties to a particular party or ideology other than the oath they took to protect and serve, which undermines public trust and respect of LEO. It feeds into a harmful narrative of Us vs Them which harms all enforcement's effectiveness.

It is absolutely in the public interest to understand the character of someone they are hiring for a public job that has community trust as a requirement.

Edit: This is also news because she effectively mislead the public about her involvement by condemning it and implying she only recently learned of it's existence.

<comment><USER4> You're right about needing to hold law enforcement to a higher standard, but honestly these people should face consequences even by civilian standards. If you work at McDonald's, and you go on a forum for McDonald's employees and brag about screwing up customer's orders all the time for fun, there is nothing wrong with McDonald's firing you for that.

<comment><USER5> When an employer releases an employee, the rationale imposed upon the employer ought not be ones motivated by social punishment, but rather pure business pragmatism. It's not the employer's job to punish individuals that society doesn't like, such as firing them for racism at McDonalds.

Should a racist never have a job?

<comment><USER4> These are people whose job duties are, in part, protecting the lives of immigrants, and they're laughing about the deaths of those same immigrants. Their _specific_ bigotry clearly makes them unsuitable for this _specific_ job.

</comment></comment></comment></comment></comment><comment><USER6> Should this be "Secret Facebook Group"?

</comment><comment><USER7> More evidence that social media drives people to be cruel, stupid, and callow. How is it possible so many people post publicly, or semi-publicly, content which would be considered crass, childish, and un-professional at best and fireable at worst.

<comment><USER8> I'd say it's more evidence that (many) people are cruel, stupid, and callow, and social media gives them the chance to expose who they really are. (It may also encourage their worse impulses rather than their better ones, but I think that they are bringing out who they already are. Social media isn't really changing them.)

<comment><USER7> We all have it in us to be monsters. It's just social media encourages and rewards people who show their monstrous side.

</comment></comment></comment><comment><USER9> I know this post is going to turn into a partisan debate, but I strongly urge everyone to read up about this disturbing group and recent CBP behavior and decide if this is acceptable for a armed and increasingly unaccountable federal police force, one that has had gained influence away from the border to regular citizens over the past decades.

This is not a problem exclusive to this administration, these attitudes and actions have been going on for years and are wholly unacceptable for a nation that claims to respect human rights:

[https://www.propublica.org/article/secret-border-patrol- face...](https://www.propublica.org/article/secret-border-patrol-facebook- group-agents-joke-about-migrant-deaths-post-sexist-memes)

[https://www.aclu.org/other/constitution-100-mile-border- zone](https://www.aclu.org/other/constitution-100-mile-border-zone)

[https://theintercept.com/2019/07/05/border-patrol- facebook-g...](https://theintercept.com/2019/07/05/border-patrol-facebook- group/)

> On the topic of dead children, Eric Castillo separately posted a video of a > large, child-sized portion of meat being wrapped in foil and then roasted > over an open flame. The foil resembles the mylar blankets that unaccompanied > children are given in Border Patrol custody.

> "Little tonk blanket ideas!" Castillo wrote. ["Tonk" referring to the sound > of beating someone in the head with a flashlight]

>When a member of the group raised the point that "'I was just following orders' hasn't been an effective defense in about 72 years," Bob Wilkinson, who lists his former occupation as Border Patrol supervisor and his current occupation as a U.S. government contractor, replied, "Are you a PA or a fucking snowflake." Wilkinson went on to write that while he had "never killed anyone," he had "used my share of force."

"The fact that the President recognizes rocks as deadly weapons is a good thing," he wrote.

> At that point, Castillo joined the conversation, lamenting about missing an > opportunity to shoot a migrant while on the job. "Bro im gonna go home alive > to my family and stop the threat!!" he wrote. "See it how you will. Ive been > rocked before and missed my chance to pop a round before due to me falling > to avoid the rock.. Fucker ran back to the river..But I learned for next > time.. Don't be a freaking debbie downer bro.."

> Before long, group members, including Gabriel Gonzalez, Zack Smith, Anthony > Ramos, Rick Mora Jr., and Michael Scherer, were sharing photos of documents > — including what appears to be intake forms — that showed migrants' names. > Christian Macias added photos of government IDs belonging to five different > individuals to the comment thread.

> On May 31, a user shared an image of the U.S. embassy in Honduras on fire. > "Easy enough to do the same thing to all their asylum paperwork…" Gamel > Lechner commented.</comment>


iOS 7 app redesign goes viral - <AUTHOR> http://pandodaily.com/2013/09/19/ios-7-app-redesign-goes-viral-a-genius-bit-of-content-marketing/

<comment><USER2> Over the years, i've seen several people to traffic stats for their HN posts. My cofounder Ankit is working on one too - are there some specific metrics that might be useful to the HN community>

<comment><USER3> i'd like to see mobile vs web traffic</comment></comment>


Community for engineers affected by Covid layoffs - <AUTHOR> https://techcareers.community <comment><USER2> Great site! Thanks Tim.</comment>


A beginner's guide to setting up Python on Windows - <AUTHOR> https://www.datanitro.com/blog/2013/4/11/Python_on_windows/ <comment><USER2> Great tutorial -- but this is exactly why we built Action.IO, so you don't have to deal with these long posts. We have preconfigured Python boxes that you can start coding on with your web browser, with full Linux terminal access.

The unfortunate part of setting up Python on Windows, is that you're still coding on Windows and missing out on using and learning powerful Linux/Unix tools. Most servers operate using Linux, so having the same environment in development is a huge advantage.

If you need an invite, just signup and send us an email at hello at action dot io

<comment><USER3> Last I checked, I could only setup a Ruby box. Where do we setup a python box?

<comment><USER2> We added Python, NodeJS and Go boxes last month. Just click "New Box" on the box index page after you sign in and you can choose a box template.

</comment></comment></comment><comment><USER4> I prefer to install the 64-bit Python 2.7.4, then use the pre-built packages for Win64 at <http://www.lfd.uci.edu/~gohlke/pythonlibs/> . I primarily use Python for scientific calculations, plus a little bit of web development, and I have chosen the following packages: Base, NumPy, SciPy, MySQL-Python, Mathplotlib. (NOTE: "Base" is a bundled collection of Python packages you will find at the above site; it is not a package that you will find at the official PyPI repository.) I also installed pip, but since I am behind a corporate firewall and have another program named "pip" (part of Strawberry Perl), it was a bit tricky.

</comment><comment><USER3> I also have to disagree with quite a bit of this guide. Most windows systems are configured to simply do a `pip install numpy` since they often are missing the specific compiling tools to properly install these packages. For Windows vets, we've probably all seen the "Unable to find vcvarsall.bat" at one point or another.

I've found the easiest way it to point to 3rd party installers that often already have the key c-based tools you'll most often use. PythonXY, WinPython, PortablePython or Continuum's Anaconda. But you have to take the "bloat" with many of these, although PythonXY and WinPython allow you to select what you want and don't want.

<comment><AUTHOR> Package managers are great until you want something that isn't provided. I used numpy as an example, but our users are just as likely to work with web scraping, SQL, or REDIS as with numerical computations; in that case, they still need to know how to manage packages themselves.

<comment><USER3> The installers don't stop the user from learning how to manage their packages. Other than Anaconda, the installers still emphasis using easy_install or pip. But what these do that many people don't understand is that when you do hit a compiling problem, it's often easier to find a pre-compiled package and simply install. So for you other examples, lxml is another notoriously difficult to get running on Windows. So you are stuck with a less efficient BeautifulSoup or not able to use PyQuery. So an installer for young python users is a godsend. As they dig deeper into python, the items you highlight are naturally developed.

(Don't get me wrong, by the way, props for helping out the often less technical Windows crowd.)

</comment></comment></comment><comment><USER5> I'm not a Windows user, but I'd probably suggest trying <https://www.enthought.com/products/canopy/> (formerly the enthought python distribution EPD) for a relatively hassle-free setup with numpy and other scientific packages. It also works on linux and mac, but I usually go with repository versions on linux.

Other comments suggest <https://store.continuum.io/cshop/anaconda> which I haven't tried to compare, but also looks promising.

<comment><USER6> Spyder's nice too, and free:

<http://code.google.com/p/spyderlib/>

I use it on both Windows and Linux.

<comment><USER3> Spyder has single-highhandedly allowed me to convert MATLAB users to Python.

<comment><USER6> Exactly, I was one of those MATLAB users.

</comment></comment></comment></comment><comment><USER7> Doesn't windows have a standard windows installer for python? Why are we still teaching beginners Python 2.7? What is wrong with python 3?

<comment><USER8> There's still many popular libraries that haven't been ported over. Django has recently been taken off the list but PIL, paramiko (and by extension, fabric) and other libraries that a beginner might see mentioned on python tutorials are still not ready. I recently gave python 3 another try and had to switch back to 2.7 pretty quickly.

<comment><USER9> I'm starting to think that if a library won't switch to Python 3 then it's time for the library to die and people move on to a new library that offers similar functionality and does work on Python 3.

For example, PIL doesn't support Python 3, but there's a GraphicsMagick wrapper [1] which does. Graphics Magick is more functional anyway.

You may have time invested in PIL and other Python 2 libraries, but newbies don't, and there's no reason to start them off on a dying version of the language. It's contributing to the chicken and egg problem that's holding Python back.

[1] <https://pypi.python.org/pypi/pgmagick/0.5.5>

<comment><USER10> Most widely-used libraries have not actually switched to Python 3, they just support it using 2to3.

Someone who only knows Python 3 would have a hard time hacking on the source code of most libraries.

</comment></comment></comment></comment><comment><USER11> I found Anaconda (<https://store.continuum.io/>) to be the easiest way to get people setup with Python on nearly any system. It has the added benefit of bundling ipython, pip and numpy which is notoriously a huge pain to get working on Windows and Mac OS X.

</comment><comment><USER12> If you're in a position where you need to follow a guide to install Python on Windows, then you're probably so new to Python that you're unlikely to be working with legacy code. Therefore, I'd suggest working with Python 3 and using 64-bit.

</comment><comment><USER13> The R guys do a really easy to use package of mingw for satisfying compiler / linker requirements youll find you need (and all the other bits and bobs required).

Another thing worth mentioning is "user site packages" directory for those on locked down corporate machines. Pip install --user <package> will pop the package in %UserProfile%\Python\Python2X\site-packages\ - which is automatically on your $PYTHONPATH saving a little setup hassle.

<comment><USER13> ETA - user site packages is a 2.6-onwards feature. Rtools: <http://cran.r-project.org/bin/windows/Rtools/>

</comment></comment><comment><USER14> Will numpy actually cleanly install with `pip` or `easy_install` on a system that doesn't have the proper version of Visual Studio? If so, that's news to me.

<comment><USER3> No you have to have the correct version of VS or Mingw with the proper commands in the way `pip` is configured.

</comment></comment><comment><USER15> This isn't much better than what Zed Shaw's book has for instuctions. Consider some screen shots, using Enthoughts or Continuum disributions, etc...

<comment><AUTHOR> Author here. I've pointed people to his book for a while, but they tend to come back with questions. I'm hoping this'll help.

<comment><USER3> I'd recommend pointing beginners to PythonXY, WinPython, PortablePython, or Anaconda. Just like many Mac people get pointed to `brew` installs, it's just easier for Windows users to run with these installers.

<comment><USER15> Anaconda is a great install, especially for those dealing with data analysis, but the conda upgrade process from one version to another (1.3 to 1.4) has been hit or miss under Windows. But I still love the packaging and such they and others do...

</comment></comment></comment></comment><comment><USER16> I really don't understand why you'd use Windows for Python development unless you need to regularly use Creative Suite, mostly use Visual Studio/.NET and just do Python on the side, or for some reason play AAA games while you are working.

<comment><USER3> I do all the time, mainly because of lock-in at work and family laptop. Python is really easy to do this with. But yes, web code gets deployed to a Linux box.

But you can do quite a bit from desktop application to the source of this post, DataNitro (Use Python in Excel).

> mostly use Visual Studio/.NET and just do Python on the side

I have nothing to back myself up, but I would be surprised if this is actually the case (ie most Windows users program with VS/.NET). I'd like to find out if there is any real data on this.

</comment></comment><comment><USER17> I usually kickoff with the ActiveState download on windows <http://www.activestate.com/activepython/downloads> its a nice bundle with good help docs etc.

</comment><comment><USER18> for me it is better run python behind cygwin, a linux guy on python feels more confortable

</comment><comment><USER19> install linux...

</comment><comment><USER20> Or better , fire a virtual machine with linux. I used to develop python and php on windows only to get loads of problems as soon as i had to deploy my script on a linux server. Having a dev and test environment that is close to the production server will save you a lot of time. Working on linux is a great experience, and makes a difference when looking for a job.

Whatever os you choose you just cant get wrong learning python , it is so awesome.

<comment><USER9> While it's definitely useful for production, test, and dev to all match, it's pretty easy to write Python that runs everywhere. In my experience the Python community is a lot better than most at making libraries and extensions work across platform.

I've written GUI apps with PyQT where I developed them on Linux and had them run without change on both Windows and OSX. Similarly, I've done some web development on my Mac, deployed to a Linux server, and everything's worked.

On the other hand, IMO, developing on Linux is far easier and faster than developing on Windows, so there may be other benefits to using a VM.

<comment><USER20> oh god i really need to test that QT stuff , sounds great !

</comment></comment></comment><comment><USER21> I understand that a lot of people prefer and/or are stuck with Windows, but people who can't or won't move beyond that just are not likely to get much utility out of Python.

If you're looking to learn it for any actual, practical application, e.g. any kind of development that will be deployed on the web or any kind of native system scripting, spending time setting it up on Windows is a waste of time you will need to spend at some point anyway learning to use an operating system that's actually suitable for such a purpose.

It's good that Windows users have the option of installing Python, I suppose, but something like this seems aimed at people who either are not actually going to do anything with or learn anything from it or are likely to simply give up after hitting the quirks and limitations of the platform.

A far more useful article that would accomplish the same purpose more effectively would be on setting up a free virtualization environment in Windows, then pointing people to the normal doc on using Python in some flavor of Linux.

<comment><USER22> _If you're looking to learn it for any actual, practical application, e.g. any kind of development that will be deployed on the web_

My first Python program was automating .csv creation based off of a bunch of arbitrary files in a folder. I did it as a marketing intern, after spending an hour convincing my boss that I could save the company literally tens of hours of time a month. I did it on a Windows XP box.

A few months later, I changed my major to CS.

If we want more people programming -- and being good at it -- saying 'hey use Linux lol' is not the way to go about it. _Especially_ in a corporate environment.

<comment><USER21> I did not say "hey use Linux lol." I'm not one of those people. I made a considered argument for learning Linux for people who actually want to get the most out of Python, so the very least you can do is not lump me in with chatspeakers.

Also, your assertion that we (whoever that is) "want more people programming" is not one that I accept.</comment></comment></comment>


Nexus 4 Unusable for VoIP Calls - <AUTHOR> https://code.google.com/p/android/issues/detail?id=41626#c20 <comment><USER3> I have a Nexus 4.

I don't use the OS native sip functionality on it, but I do use GrooveIP and I have run into this issue. With GrooveIP you can work around it by fiddling with the various echo cancellation options GrooveIP supports at the cost of introducing a voice latency on your outgoing voice that is just long enough to be annoying (but usable once you acclimate to it), in my experience.

There are generally a lot of audio related issues with this phone with various users unable to get loud-enough volume from the device either on calls, from the speaker or via the headphones Seems to be a software bug as many people report if you root the phone and run alsamixer you can boost the audio up to decent levels, but this isn't a great fix because any time an app adjusts the volume at the SDK level the problem returns.

<https://code.google.com/p/android/issues/detail?id=41042>

Google's stellar customer support consists of no-questions-asked replacing your device (which is great) with one that has exactly the same problems out of the box (which is not so great). Haven't seen any kind of official acknowledgement of this as an issue despite it being very commonly reported online (google: "nexus 4 volume too low")

An otherwise great phone hampered by a pretty serious fundamental issue.

<comment><USER4> I have no audio issues with my nexus 4 whatsoever for normal calls. It's quite great actually audio wise.

But yes, GrooveIP is unusable. I bought it for 4 bucks or something and hardly use it since the voice quality is terrible.

<comment><USER5> I get GSM quality calls on my Nexus 4 (at minimum) via cSIPsimple, pbxes.org, and Google Voice, usually over a mediocre repeated WiFi connection. If there's interest, I'll write it up.

Mild configuration hassle but reliable. Helps to move Google Voice to an account where where you never IM.

<comment><USER6> I'm interested, please write it up

<comment><USER5> Noted, will do.

</comment></comment></comment></comment></comment><comment><USER7> I don't understand how bug reports can sit around for months with dozens (if not hundreds) of comments on them without a single response from somebody with an @google.com username. I feel like I've seen this happen for all kinds of Google products, not just Android. Or am I missing something here?

<comment><USER8> So how does Google get away with "legendarily bad" customer service while EA cannot? I guess in a way EA charges a good bit for the games and good support is expected, but still. I paid $300 for a Nexus 4, I should get something more than a message board.

<comment><USER9> This is as opposed to the bug reports you can file with other smartphone makers?

I'm not trying to be snarky (well, a little bit), but you simply can't file a bug about an iPhone. You can go to the Apple Discussion Forums and see threads that go on for pages and pages with no involvement from anyone from Apple at all.

The only difference is that Apple releases one model at a time, so if there's a problem, everyone has it at once and it garners enough media attention to warrant a response.

I have no idea how one would file bugs about Windows Phone 8 either.

That Google makes their bug tracker visible doesn't mean they're doing any more or less than the other guys.

<comment><USER10> Apple's bug tracker is accessible to developers: <https://bugreport.apple.com>

</comment></comment></comment></comment><comment><USER11> Argh, this smells like the audio latency issue. An issue with 500 comments pleading Google to do something about it for 4 years. Ladies and gentlemen, I give you issue #3434:

<https://code.google.com/p/android/issues/detail?id=3434>

There has been some improvement lately but it is hard to find devices that support the "special" low latency mode.

This sounds like a similar thing. Just pointing out the level or response and engagement you'd expect from Google (hint: almost none).

<comment><USER12> This is one of the issues keeping Android from being an excellent platform for music applications. Coupled with the general hackability of Android devices (Accessory Development Kit, etc.), it could be an amazing platform for digital audio workstations, synthesizers, samplers, and audio effects processing.

iOS is better in this regard, but still not perfect. Audio routing between applications is a dicey affair (done through a 3rd party app that runs in the background), and it's not possible to charge while using USB accessories, like audio interfaces or MIDI keyboards.

<comment><USER13> Yep. Say what you will about Apple products, but it's no coincidence that professional audio applications are so much more prevalent on Apple products. Core Audio is a fantastic base for developers to work with.

</comment></comment></comment><comment><USER14> Incidentally USB Host is also crippled on Nexus 4 [1]. Surprising to discover another big feature broken on a flagship Android device.

[1] [https://android.googlesource.com/device/lge/mako/+show/f608d...](https://android.googlesource.com/device/lge/mako/+show/f608db225c5ead1c255fd84fa7f5431c2e3b3a72%5E2)

<comment><USER15> Crippled in hardware - there's no +5V line so even when you patch that code you need to use a Y cable.

</comment></comment><comment><USER16> I was sincerely thinking that buying an "official" phone mean't zero problems

(currently having a very bad experience with my LG O2X, where I'm still running CM7 - announced as the "world's first dual core smartphone" or something).

<comment><USER17> I bought a Nexus One and the only problems I never had the any unexpected problems with it. (The extremely limited memory for app storage seriously hampered its usefulness, but that was a design limitation that I knew going in.)

</comment></comment><comment><USER18> In addition to the echo, background noise is really bad during VoIP calls. This comment has some interesting details:

<https://code.google.com/p/android/issues/detail?id=41626#c20>

</comment><comment><USER19> I have not paid much attention to SIP recently but aren't the implementations of theAEC and other components up to the OEM to create or license, as much as, say, baseband firmware, graphics drivers, etc. are the OEM's responsibility?

If Google actually had their own unencumbered implementations, wouldn't they be in the AOSP source tree?

</comment><comment><USER20> EDIT: please disregard.. I have been getting complaints, but they may not be related to this issue.

 _This would seem to explain all of the 'echoing' complaints I've been getting when using google voice on my N4._

<comment><USER21> I thought Google voice didn't use VoIP.

<comment><USER22> It doesn't. The parent may be using GrooveIP or another GV-SIP gateway?

</comment></comment></comment><comment><USER23> I guess that just as with the native email client, there's not much development happening on the native SIP dialer.

Instead of improving the core Android apps, which would benefit other phone manufacturers as well, Google is mostly working on their web service frontends (Gmail, Google Plus, probably Google Voice as well) nowadays. The result is a platform packed with features that only work half the time.

Did you know that the native Email client doesn't even set the In-Reply-To header, i.e. breaks threads?

</comment><comment><USER24> As someone in the google thread point out, latest csipsimple nightly is worth a shot <http://nightlies.csipsimple.com/trunk/> if you are experiencing this issue.

</comment><comment><USER25> Well, maybe I'll hold off on buying one for a little while. Yikes.

<comment><USER26> You better buy now, Nexus 5 will contain even more bugs considering the process of dealing with them at Google.

<comment><USER25> Well maybe I'll just buy a Windows phone :|

<comment><USER26> Well maybe you would think again.

Where on Android you can fix something by reading XDA, installing CM or other custom build, change the application (thanks, Intents!), or just patch the source code, on WP8 if something doesn't work or just doesn't present (like VPN, call log grouping or even call duration info!) all you can do is just buy another drink.

<comment><USER25> Sorry, I thought the ":|", and mention of "Windows phone" implied sarcasm. Perhaps that was too subtle.

<comment><USER26> Ah, sorry, I thought everybody have adopted new mnemonics for sarcasm - [http://pseudotrue.com/2013/04/10/a-new-punctuation-to- highli...](http://pseudotrue.com/2013/04/10/a-new-punctuation-to-highlight- sarcasm/)

</comment></comment></comment></comment></comment></comment><comment><USER27> I have a N4 and I'm not noticing the issue at all. I've been using Vonage and GrooveIP.

I would normally pick up on it from the 3 years of VoIP and other real time audio work I did.

I didn't get a chance to read everything but as a I recall some of the codecs used could have some serious echo side effects. Did someone mention the codecs being used?

</comment><comment><USER26> On this reddit thread some solutions like using SIP gateway with echo cancellation were discussed.

[http://www.reddit.com/r/nexus4/comments/15ip1v/is_voip_just_...](http://www.reddit.com/r/nexus4/comments/15ip1v/is_voip_just_plain_broken_on_the_nexus_4/)

<comment><USER18> The problem is that:

1) Software echo cancellation doesn't work as well as hardware echo cancellation.

2) The phone uses a second microphone to cancel out background noise during calls. This isn't used for any voip calls. I'm told it is extremely loud when a car drives by, and a little bit of wind make it sound like I'm in a hurricane.

Is there some hardware reason they can't open up access to this chip? Does audio for calls get routed directly to the gsm chip, so we don't have access or something?

</comment></comment><comment><USER28> I know it is probably unrelated, but this made me think about the power Google has and could use to affect third party sw...cough...skype....cough...

Anyway, I have a Nexus 4, looks like a good suggestion never to rush with upgrades... if it works dont touch it?

</comment><comment><USER29> Nexus 4 also cannot do wifi-calling, seriously degrading its usefulness in spotty celular zones. <http://support.t-mobile.com/thread/38694>

</comment><comment><USER30> I have a Nexus 4. I use it with GrooveIP. I don't experience the issues described in this issue.

</comment><comment><USER31> i bet a lot stems from this (forgive if other people already mentioned it)

<http://code.google.com/p/android/issues/detail?id=41631>

Can't use BT with WIFI at same time!!! all nexus 4, 4.22 OS, just plain sucks

</comment><comment><USER32> Do they mean unsuitable for speakerphone calls?

Because why not a bluetooth headset?

</comment><comment><USER33> I've a Galaxy Nexus and the cellular operator's 3G usage pop-ups in screen make my life hell. It just keeps on receiving them. Whenever there's a background transaction of data, even a kilobyte. That means if my phone is kept for 30 minutes and I get a call, I need to click through those 10-20 accumulated pop-up windows on my Android screen to receive the call or do anything on my phone. On mornings when there's no Wi-Fi I usually get some 70-100 such pop-ups. I counted. Sometimes I better switch off and then switch on the phone to avoid clicking through those pop-ups.

The cellular operator (Airtel India) says it's a feature and argues that every operator has it and that iPhone, BlackBerry and Windows (etc) users don't have this problem. True.

Samsung support says - this is Google feature and then is quick to add - <USER2> we never sold Galaxy Nexus in India. No support there. Sorry, bye-bye._

I go to raise a Google-code issue just like this. Well, there's one already logged - years old. _Of course without a fix or response from Google!_

I'm an Android developer(day job) with a laaarge OEM but I doubt an Android is going to be my next phone. I am not comfortable with paying for anything very expansive then being on my own.

This is how Google provides support. They don't.

<comment><USER34> > This is how Google provides support. They don't.

This is a completely unrelated issue caused by your carrier. Why are you posting it here?

<comment><USER33> >> _completely unrelated issue_

Technically, yes. One deals with AG, RIL and call app another deals with Notification management.

>> _caused by your carrier_

No, it's not. The carrier has to send the updates. It's upto OS on how to handle it and they ought to handle it the way other mobile OS do.

>> _Why are you posting it here?_

Because the nature of issue is same and so is the reason/origin. Left by google. OP's issue is old. Used to crop up in Galaxy Nexus too. I worked on an OEM work around for Europe model and it was there in S3 too.

<comment><USER35> I have to say that it's (mostly) the carrier's fault.

I have the same issue sometimes with Airtel India, and I'm pretty sure this notification was turned off 2 years. [ _edit_ or maybe i just had a good data connection then]

Also, this issue is not consistent. I'm guessing what happens is: carrier sends usage alert when you "turn off" data + bad connection that keeps dropping => many notifications even though you never turned off data.

There are a few apps that convert USSD alerts to notifications - try these - but it would be nice if this was a built-in feature.

<comment><USER33> >> _the carrier's fault_

As I said the behaviour is present in other operators too. I've asked a friends on Idea and Vodafone too(with Android). I just called a friend(before writing this comment) and he confirms that he is not facing this issue on Idea+iPhone5(he faced the issue on Nexus S with Airtel and then Idea too).

I had asked a friend with a Lumia and on Airtel and he said he doesn't have to do this.

>> _carrier sends usage alert when you "turn off" data + bad connection that keeps.._

No, it sends whenever there's 3G transaction and the usage period ends. I've observed that when I am using browser, I usually get the alert after I close the browser.

Airtel technical team(I was told they were the tech team) also confirmed that it is based upon usage and usually many apps/features rely for background syncing/net-access solely upon 3G/data so that is what makes the number of pop-ups too much. They also confirmed that it happens even when the phone is continuously on WiFi(I concur).

>> _There are a few apps that convert USSD_

Tried. Actually the most famous one is developed by an Indian guy(makes me think he was a victim himself). Didn't work.

Planning to root it. Google will push probably the last upgrade with 5.0(if at all). Will see if there's any ROM that handles it.

<comment><USER35> I just polled some friends on chat:

\- iPhone + Vodafone Bangalore - SMS notifications - inconsistent frequency

\- Galaxy Y + Airtel Bangalore - SMS alert only

so it seems carrier/plan dependent to me!

> it sends whenever there's 3G transaction and the usage period ends

Sure - what I was guessing is that sometimes the phone is on a "single" 3G connection all day & there's no alert, and some days the phone makes "many" 3G connections & there are lots of alerts. (or perhaps it does not work this way & there's some other cause - not a telecom expert!)

[EDIT: oops both friends say they get SMS not USSD alerts]</comment></comment></comment></comment></comment></comment>


Red – A Minimal Node.js and Mongo Boilerplate with OAuth Authentication - <AUTHOR> https://github.com/i-break-codes/red <comment><USER2> plan to add any other auth apart from Google?</comment>


Show HN: Startupery — curating startup best-pracitices - <AUTHOR> http://startupery.com

<comment><USER2> Love the concept and how you guys are doing it. My first impression is that I don't think the contributor cards should be the dominant element on the landing page, it's tertiary info compared to the library on the left nav. I didn't notice the left nav until scrolling down the page and back up, but that's my favorite part and kind of the meat and potatoes of what you're doing. Maybe you can find a way to highlight that nav bar on the landing page, and slide it to the left where it is now as you get to the content pages.

<comment><AUTHOR> Thanks for the feedback! Really like your suggestion and agree that it would be better to highlight the categories more.

<comment><USER2> Good luck!

<comment><AUTHOR> Thanks!</comment></comment></comment></comment>


A VC: What A CEO Does (continued) - <AUTHOR> http://www.avc.com/a_vc/2010/09/what-a-ceo-does-continued.html <comment><USER2> The original post was interesting because it attempted to simplify something (the role of CEO) to its core, which is an exercise that is always thought provoking and revealing.

This post is more just a run-of-the-mill HBR-style article. It seems to be more a clarification for people who won't get the point anyway. To paraphrase the first clarification: [setting a vision involves developing one in the first place...] Yuhthink?

<comment><USER3> Is HBR in your comment Harvard Business Review?

<comment><USER4> Not the previous poster, but I'm sure it is Harvard Business Review.

</comment></comment></comment><comment><USER5> How do you reconcile "Nothing interesting happens in the office" with startup CEOs who are often founders and involved in the day to day?

</comment><comment><USER6> Don't forget getting your pals on the board (and having them put you on their boards) so you can give each high compensation packages and maintain control (extract the maximium value from the companies into your own pockets).</comment>


Show HN: Nginx module which enable HLS adaptive bitrate and more - <AUTHOR> https://github.com/whatvn/ngx_http_estreaming_module

<comment><USER2> No sockpuppet votes or comments on Hacker News, please.

</comment><comment><USER3> good to know. I'm going to give it a try. Thank for this module.

</comment><comment><USER4> fantastic!

</comment><comment><USER5> wow, I would like to know how fast it can be? Since video transcoding is very expensive job, is it ok to use in production?

<comment><AUTHOR> hello,

Because video encoding is very expensive job, so the idea is to split things into small chunk and encode chunks instead of video file itself.

I can see we can archive smooth streaming and seeking went well in our production (with caching enabled).

It would be great if people can give it a try :).

Thanks!</comment></comment>


Toronto man missing for five years found on Brazilian highway - <AUTHOR> http://www.sfgate.com/news/article/Canadian-man-missing-for-five-years-found-in-10921955.php <comment><USER2> The next time you see a homeless person remember that he or she can be a person with a mental illness and he or she might need some help.</comment>


OwnLocal (YC W10) nabs funding from Automattic to resurrect newspaper revenues - <AUTHOR> http://venturebeat.com/2011/10/19/ownlocal-funding-newspaper-revenue/

<comment><USER2> I used to do a lot with small regional papers (I worked for Freedom Communications). They are a tough sell. Super slim margins, very reliant on and subject to the whims of the local economy and were completely disrupted by national (or multinational) online players.

The race to the bottom in local advertising markets in terms of low value, high return and high volume plays through broadsheet classifieds, craigslist, daily deals, etc has put the ethos of what a "small town" paper was out to pasture.

It used to be communities were defined by their media, and these newspapers existed to help define them through editorial voice and amplify the community through advertising.

That's a tough game now. Consolidation killed the independence (Freedom for instance bought up all the local Orange County papers), nationalization and the ability to localize the global killed classifieds.

It is however a field ripe for some disruption, as the need for local media and localized sales-forces is there, but the ability to address the need with a sustainable business is tough.

</comment><comment><USER3> Looks pretty cool, but small town newspapers seem like they would make for really tough clients. Even for something that theoretically will generate revenue for them.

</comment><comment><USER4> White-label software products--comprised of daily deals and social gaming-- might boost a newspaper's online ad sales temporarily, but at what cost to the identity of the local publisher?

I feel fortunate enough to live in a small, quirky, University town in which the residents still value (and support) its 65-year-old weekly print newspaper. In fact, the paper does a terrific job engaging the community in local government and has a strong presence at local events.

I'm not sure if the technical solution to saving local media is turning readers into online gamers and shoppers, but rather developing a unique online forum for engaging residents in the beat of local issues and interests.

I suppose every community is different, and that's exactly the point I'm trying to make, but I hope local businesses will continue to support local media (so long as the editorial voice is there).

<comment><USER5> The key to remaining relevant to the business community in a small town is to provide the online services that they need to buy anyway. If the newspaper doesn't help local businesses make the transition online, someone else will.</comment></comment>


How common is it to work remotely as a programmer? - <AUTHOR>

Is it fairly common for programmers to work for a company but remotely as well? Like work from home mmajority of the time and meet up only for meetings/updates etc <comment><USER4> Hello.

I´ve been looking for a remote job since 2013 and I think it´s very hard to find them.

In that way I found a new company called watho (watho.net).

We are a company focused on contacts between companies which have remote jobs available with the applicants from any part of the world.

Currently we have 4 remote open positions.

</comment><comment><USER5> I've been working remotely off and on since 1991, and for most of the time since 1998. I advise you that it's not as great as it's made out to be - <USER2> it is very lonely. When you're stuck on a problem, there may be no one to turn to for help.

I've gotten very good at finding the work, and recently decided to share my leads with others:

[http://www.warplife.com/jobs/computer/telecommute/](http://www.warplife.com/jobs/computer/telecommute/)

These are only a few of the remote or telecommute jobs I know about - <USER3> others I just haven't posted yet, but will do so soon.

<comment><USER6> I wander how many of them accept overseas (Europe) candidates...

<comment><USER5> I have some links to European companies coming up soon.

It's a great deal of work to research these links. Not so much to post them once I find them, but to find them in the first place. I have some ideas as to how to make it easier, but have not yet tried to actually implement any.

<comment><USER6> Also, one thing to remember - jobs are not constant entities, you could have find them in this month but half of them would disappear for next month... i.e. timing matters.

In my experience, finding remote jobs for popular techs are quite easy (mobile apps dev, web dev). But it is a challenge to find some good remote job for non-web, e.g. C++/systems/desktop dev.

<comment><USER5> some kinds of sysadmin are easily done remotely. So is tech support. It depends on whether the job requires access to the console, or opening the case to install cards.

If you're looking for remote tech support work that's of a more advanced nature - NOT! "Click the OK button until it turns black" \- apply with Luke Crawford - no obvious relation - at [http://prgmr.com/](http://prgmr.com/)

Luke's a good guy. If he can't hire you I expect he could refer you to someone who can.

<comment><USER6> Thanks, but under "systems" I meant systems programming, not sysadmin stuff. At the moment I'm working on a great gig, I just shared my experience of finding good remote gigs in general.

</comment></comment></comment></comment></comment></comment><comment><USER7> I have been working remote for two years now. The office is 800 miles away and I stop in four times a year to say hello.

My experience has been that a good number of smaller companies in smaller cities (U.S. Midwest, cities with populations under 100,000), that just can't find local talent and so reluctantly pick up remote workers to fill their ranks.

As another poster said. It is lonely. I pay for a co-working office out of pocket so I can get out of the house. If most of the team is in-house and management didn't really "want" to be managing a remote team, then you end up being treating as a kind of necessary evil whose sidelined and left out of the loop most of the time.

<comment><USER8> { Shameless Plug } Its better if you can interest the main office in a collaboration tool, such as Sococo offers. It may improve your feeling of being included. It certainly increases the opportunity for communication. Sococo tries hard to remove friction from remote collaboration, without sacrificing privacy. For instance folks can see you are working in your virtual office, but your door is closed so they have to knock to talk to you.

I work with engineers in three states. We're all in a virtual office space, talking as needed (with webcam if desired) and sharing documents. Or just chatting on a variety of channels. I honestly don't know who is in which state, without asking.

<comment><USER7> Thanks! I realize there's a slew of technologies out there for alleviating this problem and there's plenty of virtual teams that do a great job at it.

That said, I've come to the conclusion that for a virtual team to really work the company culture really has to be on board with the idea. Particularly I think it works best when the whole team or a majority is working remotely or semi-remotely.

The two firms that I've been with so far had only one or two remote workers on an otherwise in-house team that was managed very much in the 9-5 butt-in-seat tradition. They reluctantly went with remote workers out of necessity and with management that isn't too hot on communicating other than in person and firing up a webcam is considering something worthy of planning out days in advance and reserving a conference room.

Needless to say, I'm looking for a more remote-friendly team these days, but I do think it's a good warning to anyone looking into remote work. Find out what proportion of the team is working remote, really try to access the team culture for supporting those remote workers, and do concern yourself with how much buy-in management has to the idea.

<comment><USER8> Right on all counts. We've had to train our 'home office' folks to have only virtual meetings. Every time they tried to gather and include us, it was a tragedy of seeing the backs of people's heads and hearing only mumbling from the audience.

If everybody is on board with the tools, then you hear all the comments, see who said what, and can chat privately too. Definitely BETTER than in-person meetings in many ways.

</comment></comment></comment></comment><comment><USER9> It's become fairly common in the startup world to have a few remote programmers, usually due to not being able to find local talent with a specialized skill at a good price.

Some big companies are getting into it, largely through acquiring startups or small companies that were already doing it. But these are much more rare. The majority of remote work will be for smaller companies and startups.

</comment><comment><USER10> It's less common, but if you're willing to contract for the company then working remotely isn't too difficult to find.

If you want a salary, then it's easier to start off working on-site then ask to transition to remote down the line - or ask for more flexibility like 1 day off the week, etc.

</comment><comment><USER11> Remote jobs are harder to find, but they do exist.

There are many, many jobs that have a two or three day work from home option.

</comment><comment><USER12> Thanks to Skype, Github these have made remote working like never before. Its very common buddy</comment>


Don't Write Off Paper Just Yet - <AUTHOR> http://www.npr.org/2015/05/26/408794149/dont-write-off-paper-just-yet

<comment><USER2> Paperless bathrooms exist in various parts of the world. The folks there use water to wash which is more cleaner.

<comment><USER3> How do they dry off?

<comment><USER4> Mostly the areas are very varm already. When I backpacked around South-East Asia I got used to this, we called them bum guns. After you're sure you're clean you can just shake it off and it'll evaporate very fast. Although most places had paper you'd use.</comment></comment></comment>


Turn Gmail conversations into WebRTC video call in one click - <AUTHOR> http://blog.assemblagehq.com/post/58803813393/turn-gmail-conversations-into-video-voice-calls-in-one

<comment><USER2> Haven't tried it yet but love the idea. More generally this is the power of WebRTC - real-time communications as an embedded, integrated feature within any other app, service or workflow.</comment>


The real reason (climate) scientists don't want to release their code - <AUTHOR> http://blog.jgc.org/2010/11/real-reason-climate-scientists-dont.html

<comment><USER2> They fear what would happen to their reputations if it were obvious how the sausage was being made. (Not unique to climate change: my academic AI research produced decent results on some data sets with code of truly abominable quality. Then again, I wasn't asking anybody to bet the economy on my results.)

Plus, if people actually provided code, someone might actually get it into their heads to _run_ it. That can't happen. No, literally, it can't happen. The level of professionalism with regards to source control, documentation, distribution, etc in most academic labs is insufficient to allow the code to be executed outside of the environment that it actually executes on. If you put a tarball up somewhere, somebody who tries to run it is going to get a compile error because they're missing library foo or running on an architecture which doesn't match the byte lengths hardcoded into the assembly file, and then they're going to email you, and that is going to suck your time doing "customer support" when you should be doing what academics actually get paid to do: write grant proposals.

This, by the way, means that peer review by necessity consists of checking that you cited the right people, scratched the right backs, and wrote your paper in the style currently in fashion in your discipline, because reproducing calculations or data sets is virtually impossible.

<comment><USER3> I think pretty much everything looks more impressive before you see how it actually works.

<comment><USER2> Seriously. Relatedly, it is seriously impressive that systems this comprehensively screwed up seem to still converge on producing acceptable work much of the time. Big companies manage to get us all fed and fly us around the world. That scares the _bejeesus_ out of me. I have put my lives in the hands of someone who was selected by _an HR department_ (assisted by, even worse, _a union_ )

<comment><USER4> Convergence of scientific results could be validation of the theory. But it could also be because people are anxious to publish contradictory results.

 _From Richard Feynman's1974 CalTech Commencement:_

 _"We have learned a lot from experience about how to handle some of the ways we fool ourselves. One example: Millikan measured the charge on an electron by an experiment with falling oil drops, and got an answer which we now know not to be quite right. It's a little bit off because he had the incorrect value for the viscosity of air. It's interesting to look at the history of measurements of the charge of an electron, after Millikan. If you plot them as a function of time, you find that one is a little bit bigger than Millikan's, and the next one's a little bit bigger than that, and the next one's a little bit bigger than that, until finally they settle down to a number which is higher.

Why didn't they discover the new number was higher right away? It's a thing that scientists are ashamed of--this history--because it's apparent that people did things like this: When they got a number that was too high above Millikan's, they thought something must be wrong--and they would look for and find a reason why something might be wrong. When they got a number close to Millikan's value they didn't look so hard. And so they eliminated the numbers that were too far off, and did other things like that. We've learned those tricks nowadays, and now we don't have that kind of a disease.

But this long history of learning how to not fool ourselves--of having utter scientific integrity--is, I'm sorry to say, something that we haven't specifically included in any particular course that I know of. We just hope you've caught on by osmosis"_

<comment><USER5> _anxious to publish_

Should be "anxious not to publish", or "anxious about publishing", I think.

</comment></comment></comment></comment></comment><comment><USER6> It's a simple matter of incentives.

We all want scientists to share their code because that's the positive sum action. But individual scientists aren't paid based on how well the scientific community is doing. They're awarded positions, grants and prestige on their individual performance against other scientists. So scientists worried about their career think in zero sum terms: if I publish this source code, will I be pipped to the next paper? Well, I'll publish this other piece to make myself look good, since I'm not following it up; and then I'll collect the citations too."

We can wring our hands about scientists acting in bad faith all we like, but it's obvious we just have to change the incentives. Funding agencies just need to award higher weight to journals that demand source releases, transitioning to only weighting those journals.

<comment><USER7> In concept you're right, but I want to clear up some terminology. This isn't a "zero-sum game" issue: it's a "prisoner's dilemma" [1]

In the prisoner's dilemma, the parties can work together to yield a common, greater result. But they might not do so because the common solution requires trust; any individual might go for the easy answer that brings himself a return while screwing the others.

[1] [https://secure.wikimedia.org/wikipedia/en/wiki/Prisoner%27s_...](https://secure.wikimedia.org/wikipedia/en/wiki/Prisoner%27s_dilemma)

<comment><USER6> I considered this, but if you assume that the scientists don't benefit from science functioning properly, then they're playing a zero sum game with other scientists --- they're simply competing with each other for a fixed pool of resources. That was what I meant.

You could argue that a prisoner's dilemma view of it is more realistic. In this view, the scientists all desperately do want to get it right, but they know they can't because they'll be punished for doing it by their peers, who'll seize the opportunity to get ahead at their expense. This model is plausible too, but it's different from the one I suggested. So it's not actually a terminological difference.

</comment></comment></comment><comment><USER8> This can only end if peer-reviewed journals require source code (and if possible datasets) to be made available as well. High-impact journals have the weight to enforce such policies.

It's true that third parties can apply methods easily to new data. But it is a testimony to the method, and references will help building the reputation of the original inventor.

Another concern only addressed in the comments on this blog post is that most scientists do not produce beautiful programs. The reasons are twofold:

\- Programs are hacked together as quickly as possible to produce results. Scientists are mostly concerned with testing their theories, and not so much in producing software for public consumption.

\- Most scientists are not great programmers.

Consequently, scientists usually do not want to make their source code available.

This situation sucks, given that in many countries taxpayers fund science.

<comment><USER9> Yes, taxpayers fund science, but commenting, beautifying and documenting code is not what a physicist/mathematician/climate researcher wants to spend his time. Usually you want to be doing research, may it be by direct coding or by doing something else, related. Doing this kind of stuff is far worse than filling grant proposals or doing other bureaucratic stuff.

On the other side, I disagree with "most scientists are not great programmers". What is a "great programmer"? In my definition, it is someone who can write a program to solve a problem without too much hassle. And a lot of scientists I know satisfy this to terrific levels. Of course, they use no orthogonality, nor source code control, nor do extreme programming and usually don't write test cases. They just do what is asked as quickly as possible to keep on doing what is needed to do.

<comment><USER10> I disagree strongly about your definition of "great programmer". Your definition is of a "somebody who can program".

<comment><USER11> "Somebody who can program" have written probably 99% of used applications in the world today. From Bill Joy to Donald Knuth to David Cutler to Linus Torvalds to Guy Steele to Jamie Zawinsky to Guido van Rossum to John Carmack, and almost everyone in between.

Great programmers somehow only appear to write books and give pristine examples of how you build infinitely extensible architectures.

<comment><USER10> John Carmack produces the most maintainable and readable codebases. I happen to have the Quake3 source code up on my github at, so you can see for yourself:

<https://github.com/mtrencseni/quake3>

Donald Knuth is the author of literate programming, which is a framework for writing human-readable programs:

<http://www-cs-faculty.stanford.edu/~uno/lp.html>

<comment><USER11> Have you read how each of them actually write their code? Both write them precisely how the other poster noted.

And I've read the Quake 3 code extensively. Great code, but certainly not pristine, and I'm sure if you handed it to code review to virtually anyone you know, they'd find a whole bunch of sylistic and architectural issues with it. Like take a look at the playerDie code. You're telling me you wouldn't have said, "Rewrite this?" if you a colleague handed this to you?

And yes, Knuth is the author of literate programming, but that's not how the code started out. Read his letters on computer science.

Tarjan wrote a similar thing, I think in his ACM Turing Award lecture.

I picked those names because they are the best our industry has. But even with that, they all pretty much write code the way the previous post noted.

</comment></comment></comment></comment></comment></comment><comment><USER12> Actually, I have heard one good argument against open-sourcing scientific code [1]. It's not bullet-proof, and it won't apply in all situations, but I think there's a nugget of truth in there.

If I write a paper describing an algorithm (or process, or simulation, etc) _and_ open source my code, someone attempting to reproduce and confirm my work is likely to take my code, run it, and (obviously) find that it agrees with my published results. No confirmation has actually taken place - errors in the code will only confirm errors in the results. Further work may then be based on this code, which will result in compound errors.

If, however, I carefully describe my algorithm and its purpose in my paper, but _don't_ open source the code, anyone who wishes to reproduce my results will have to re-implement my code, based on my description. This is vastly more likely to highlight any bugs in my implementation and will therefore be more effective in confirming or disconfirming my findings.

I'm not sure yet what I think about this argument. It seems to only apply in certain domains and within a limited scope (what if the bug exists in my operating system? Or my math library?) but in relatively simple simulation models, it may have some validity.

What do you think?

[1] From Adrian Thompson, if you're interested: <http://www.informatics.sussex.ac.uk/users/adrianth/ade.html>

<comment><USER13> Your argument doesn't seem to apply to most code in natural sciences. The difference being that their theoretical models are, in most cases, only approximated by code. Yet, in papers, they claim to prove or test their theoretical model by experiments on the approximation.

Note that this is nothing terribly new. Sometimes experiments testing a hypothesis give false positives because something went wrong in the experiment. In that sense there is no real difference between a faulty thermometer and a bug in your code.

Having written this, I think your argument in fact does apply after all. In natural sciences one would argue that if your buggy code confirms an invalid hypothesis, someone redoing your argument with the same code would not uncover the problem. Publishing your code invites people to use your faulty thermomenter.

Of course I'm assuming that the published paper contains all necessary details to reproduce the experiment. In case of e.g. climate models or modelling the formation of galaxies that might be a problem because the code _is_ the experiment. Describing what code does is very hard, and it would be easier to just publish it in stead.

<comment><USER14> " Describing what code does is very hard, and it would be easier to just publish it in stead.'

Depends on what level you're describing it. "It does an FFT" or "it sorts" are pretty clear. It gets hairy if you describe the specific details of the implementations. But the implementation is likely irrelevant, because other scientists can choose any implementation. Even with complex models you ought to be able to piece much of them together out of descriptions at that higher level.

</comment></comment></comment><comment><USER15> Why are we singling out climate scientists here? The only article of the three that were linked that was solely about climate scientists was the one from RealClimate; the other two make it more than clear that these issues span the full scientific spectrum.

And why dismiss so casually the argument that running the code used to generate a paper's result provides no actual independent verification of that result? How does running the same buggy code and getting the same buggy result help anyone? As long as a paper describes its methods in enough detail that someone else can write their own verification code, I would actually argue that it's better for science for the accompanying code to _not_ be released, lest a single codebase's bugs propagate through a field.

The real problem, if there is one here, is the idea that a scientist's career could go anywhere if their results aren't being independently validated. A person with a result that only they (or their code) can produce just isn't a scientist, and their results should never get paraded around until they're independently verified.

<comment><AUTHOR> _Why are we singling out climate scientists here?_

Because this recent rash of articles is a result of "ClimateGate". Clearly the issues raised are more general.

 _And why dismiss so casually the argument that running the code used to generate a paper's result provides no actual independent verification of that result? How does running the same buggy code and getting the same buggy result help anyone_

I think it's a bogus argument because it's one scientist deciding to protect another scientist from doing something silly. I like your argument about the code base's bugs propagating but I don't buy it. If you look at CRUTEM3 you'll see that hidden, buggy code from the Met Office has resulted in erroneous _data_ propagating the field even though there was a detailed description of the algorithm available ([http://blog.jgc.org/2010/04/met-office-confirms- that-station...](http://blog.jgc.org/2010/04/met-office-confirms-that-station- errors.html)). It would have been far easier to fix that problem had the source code been available. It was only when an enthusiastic amateur (myself) reproduced the algorithm in the paper that the bug was discovered.

<comment><USER15> _It was only when an enthusiastic amateur (myself) reproduced the algorithm in the paper that the bug was discovered._

But _that's_ the actual problem, that nobody else tried to verify the data themselves before accepting it into the field. If you could reproduce the algorithm in the paper without the source code, why couldn't they?

And while it may have meant that the Met Office's code would itself have been _fixed_ faster, I don't buy the idea that having the code available necessarily would have meant the errors in the resulting data would have been _discovered_ faster. That would imply that people would have actually dived into the code looking for bugs, but we've already established that the people in the field are bad programmers who feel they have more interesting things to do. Why isn't it just as plausible that they would have run the code, seen the same buggy result, and labored under the impression they had verified something?

</comment></comment></comment><comment><USER16> What I have seen so far is that very bright and capable scientists (physicists, for instance) who are non-programmers[1] are usually extremely ashamed of their code. I'm talking even CS Professors, who spend most of the time proving theorems. Structuring code well and making sure it's correct _is_ hard, and they know.

[1] Programmer = somebody who spends 8 hours a day at it.

<comment><USER9> If "Programmer = somebody who spends 8 hours a day at it." then my students of Numerical Analysis are programmers, and not mathematicians. They are currently coding an assignment on continuation of zeros and (at least looks like) they are spending a ton of hours each day on it (and making me loose a lot of time answering email questions, by the way)

<comment><USER17> I can readily believe that they're (currently working as) programmers, but where do you get "not mathematicians" from? If you're spending 8 hours a day writing mathematical code and understand the mathematics, then in my book you're being both a programmer and a mathematician.

Incidentally, my experience is that plenty of people who _are_ programmers are ashamed of a lot of their code too, at least in the sense that they wouldn't want anyone else reading it and judging them. Writing code that looks good as well as getting the job done is hard, whoever's doing it, and it's by no means always worth the effort.

<comment><USER9> Because they have strong problems understanding the mathematics, but they devote all their time to code something they don't understand . I have tried my best to get them to understand it, or convince them to understand first and code later, to no use.

</comment></comment></comment></comment><comment><USER18> Taxpayers and scientists have a deal: we provide _some_ support for your education and research, and in return you show us how to do stuff.

If you don't like that deal, governments have an even better one: we give you patent rights on what you invent -- as long as you show us how it is done.

These deals aren't altruism on the part of the public. Nobody thinks science is a charity. It's vital to the interests of the particular nations and the species as a whole.

In my opinion, no institution of higher learning that is supported by taxpayers should be giving out credentials to people who are so insecure and unprofessional as to not be able or willing to completely describe how they reached whatever conclusions they have. And that's not even getting into the issue of taking research and making political arguments out of it. That raises the bar even higher.

It's a scandal. And the only reason it's coming out is because some people -- for whatever reason -- have a bug in their shorts about climate science.

It's time to set some ethical standards for all scientific research. Open data, open programming on standardized platforms, and elimination of scientist-as-activist. There's just too much dirt and conflict of interest in certain areas of science. Not all, by any means. But enough to leave a bad taste in the average citizen's mouth. I love science. We deserve better than this. Something needs fixing.

<comment><USER19> Very well said - I find the current state of publishing in academia appalling. Don't forget that most research is behind a pay wall just for the damn PDF! I think you nailed it with "insecure". The little PhDs need to know their work isn't designed to just get them tenure...

<comment><USER9> Like we choose to have our PDF's under pay walls. I don't even have printed copies of my paper, because the publisher does not want to make the expenditure. And if I were to lose my password, I would have no access to my own paper for download (and I don't have access to the rest of papers in the same issue, of course).

<comment><USER19> So you're saying that you can't release due to some licensing / copyright issue, or that it's just something that takes extra time? I definitely understand the former - not that I like it, but the latter is inexcusable.

<comment><USER9> It depends heavily on the journal. Most journals have a "final draft policy": What they print is only theirs to publish. But you can self-post whatever previous versions you have. In my case, I think there are one or two minor spelling mistakes in the versions I have posted in ArXiV and my homepage. It does not take extra time (at least not a lot) to self-post it or publish on ArXiV (just a little hassle with image conversion problems, YMMV)

<comment><USER19> Would you say that you're the exception in posting them for the public? If so, would it be worth while for someone to try to get at these non-final but still perfectly useful papers?

<comment><USER9> I really can't tell. As far as I know, all people in my department publish freely his documents: either in ArXiV or in the department page for submitted papers. Also, ArXiV has a huge numnber of articles in Mathematics, the growing trend is to submit it there. I guess that most mathematicians (or at least, young ones) at least provide some draft version of their published manuscripts online, freely available.

<comment><USER19> Yea, ArXiV is a great resource, and I actually hadn't seen that it's grown this much. Your department is one of the good ones - I salute you! Here's to more doing the same.

<comment><USER9> I also hope everyone starts doing it. There is no point in making research unavailable to the public just for the sake of keeping the journal's "level". The future is open content, but most publishers are still blind to it

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER20> In computer science academia, I have not heard of someone refusing to release their code. This seems quite bizarre to me. Of course it is not usually very polished code, but still there is no justification for hiding it.

<comment><USER21> It happens all the time in astrophysics. Codes are competitive edges, and the support burden from people asking questions about your code that you did release is also a very real issue.

</comment></comment><comment><USER22> This article seems to have three goals.

1\. Spread FUD (Fear, Uncertainty, and Doubt) about the scientific results used to create evidence for global warming.

2\. Observe that the training and skills of scientists processing data, building models, and drawing conclusions from data need to be improved.

3\. Promote a very limited view of the scientific method where "replicating a result" means "accessing another scientist's data and computer programs and duplicating the processing that was performed". Independent verification usually means that a totally independent experiment is run to test the same hypothesis, new data is gathered and processed and a result produced which is compared with previous results (and those predicted by current theories). Verification means that the same phenomenon is observed at the same level modulo the statistics of measurement.

<comment><AUTHOR> 1\. That's not right. I'm not interested in FUD, I am interested in the debate about releasing source code that's come about because of the so-called "ClimateGate" thing.

3\. Also not correct. I simply don't believe that not releasing source code is the right answer. It's one group of scientists claiming to save another group from themselves. The argument appears to be that if they released the code others would run it and be satisfied with the result. So? That's just bad science and tells you something about the people who run the code. The solution isn't to protect idiots from themselves.

</comment></comment><comment><USER23> Other people have thought about, and at least started to solve the problem of academic source code being extremely proof-of-concept rather that production or resume ready pieces of software engineering art:

<http://matt.might.net/articles/crapl/>

</comment><comment><USER24> I've worked/studied computational physics for a few years. My experience has not been good.

First, I don't think that we've learned how to make complex models yet. But in fairness, it's a _really hard problem_. If my numerical code is wrong, I won't get a segfault. Rather, I may notice "unusual" patterns in my model output, which could be:

\- A genuine physical effect

\- An artifact of the assumptions we used (because models are simplifications)

\- A numerical method that hasn't converged, or whose accuracy is insufficient

\- A bug

Untangling this is nigh impossible, unless you rely on very, very careful testing of independent parts. That's how the NASA does it [1], but it's simply not within the realm of what the typical physicist can/will do (and understandably so, numerics is hard).

The solution would be to have tried and tested _libraries_ , built by numerical specialists, so that physicists would only have to specify the equations to solve. That's what Mathematica does, and it's the only sane way I know of making complex models.

But it's slow, so physicists use Fortran instead, and code their own numerical routines in the name of efficiency. Tragedy ensues. Fortran's abstraction capabilities are below C [2]. Modularity is out of the window.

I spent a summer working on one particularly huge model, that had been developed and tweaked over twenty years. At some point I encountered a strange 1/2 factor in a variable assignment, and questioned my advisor about it.

"Oh, is that still in there? That's a fudge factor, we should remove it."

A fudge factor. No comment, no variable name, just 1/2.

Another scientist told me: "No one really knows anymore what equations are solved in there.", to which my advisor replied "Ha, if we gathered all the scientists for an afternoon, we could probably figure it out."

But I agree with the other posters and jgrahamc: the incentives for producing quality code and models are just not there. And sadly, I don't see them changing anytime soon.

[1] <http://www.fastcompany.com/node/28121/print>?

[2] (At least, the subset of Fortran used by the physicists I've met. Modern Fortran is a bit different.)

</comment><comment><USER25> One of the big problems is there is no incentive for repeating or asserting previous results/findings. So even if someone is doubtful of an assertion made there is no incentive to follow up and verify the assertion in general. I don't think sharing code or secret data cleaning methods is going to bring much change unless someone is rewarded for repeating the results.

</comment><comment><USER9> I have a question, after so much reading and commenting in this thread (and the original post). How many of the people here (programmers and non programmers) have peer-reviewed a paper, or written a paper (mind you, not in CS) that has been peer-reviewed?

</comment><comment><USER26> For a non-American this is one of the most typical patterns in HN worldview. I call it the "libertarian style conspiracy theory".

<comment><AUTHOR> What conspiracy theory?

</comment></comment><comment><USER27> I don't think you can call yourself an academic if you're unwilling to share and describe your methodology in sufficient detail that others can follow it. That's the major difference between academia and industry. Also it should obviously be mandatory for taxpayer-funded research.

</comment><comment><USER28> This sounds plausible, but is quite naive really. We are talking about huge amounts of money which is at risk if the cat gets out of the bag. Please remember that these sleazebags also do everything to prevent raw data being available. They just want us to accept their "findings" and pocket the next multi-million dollar check.

<comment><USER15> Everything they can to prevent raw data being available, up to and including posting it freely on their own websites:

<http://www.realclimate.org/index.php/data-sources/></comment></comment>


Ask YC: applications of bots/spiders/crawlers - <AUTHOR>

other than search engine indexing <comment><USER2> Vulnerability scanning would be one potential example. An intelligent bot can better probe and respond to services running based on OS/Version returned.</comment>


Lenovo unveils retro ThinkPad for 25th anniversary - <AUTHOR> https://www.theverge.com/2017/10/5/16428720/lenovo-retro-thinkpad-25th-anniversary <comment><USER2> This retro version highlights what I like about the Thinkpad line -- it is what it is and it's proud of what it is. It's a no nonsense line of laptops meant for business.

Compare this "retro" version to today's version -- there's not too much difference. Lenovo tried experimenting with being hip via sub-brands and technologies (touch bar, Yoga, etc.), which is fine, but the Thinkpad line's core identity hasn't really shifted. If you want a Windows laptop that works and can withstand a decent amount of punishment, go with a Thinkpad.

</comment><comment><USER3> I just wish they'd make up their mind about the buttons that surround the arrow keys.

Sometimes it's page-back / page-forward, sometimes it's pgup / pgdown .. with both options being equally annoying.

</comment><comment><USER4> Anybody see anything about solid Linux compatibility? I was hoping they'd have more information on that.

</comment><comment><USER5> 16:9 will never be retro. I personally like the new keyboard (T430-onwards) and while I enjoy the new ports, I will stick with purchasing 5 year old thinkpads on Ebay for under $150.

<comment><USER6> Came here to upvote this inevitable comment. I am still waiting for the glorious future when laptop manufacturers realize that watching movies isn't necessarily the sole (or primary) purpose of their products, and that activities like editing and reading documents benefit from having vertical space.</comment></comment>


Ask HN: Is hotmail.com/outlook.com storing passwords in clear text? - <AUTHOR>

When you have to reset or change your hotmail/outlook password you can not use a previous password or a variation of it. I can understand not using the exact same password and checking it against a previously stored hash, but how can they know a various of my pass without storing it in clear text? Example if I user QWERTASDFG as my pass they will not allow QWERTASDFG!@#$% as my reset pass? The hash for these 2 passes would be completely  different so how do they pull this off. <comment><USER2> This is not rocket science. They probably store it encrypted, and decrypt in RAM when they need to validate things like that. It's not the first company to have this restriction. I know some companies that prevent parts of day names in the password, for example.

<comment><USER3> "I know some companies that prevent parts of day names in the password, for example."

That is a little different. Its one thing to check against a list of restricted words common to everyone and a list of previous passwords used by a single user.

<comment><USER2> That is true.

<comment><AUTHOR> Yeah checking against a dictionary is one thing, but I've never used anything remotely close to a dictionary word and they can still detect partial password matches.

</comment></comment></comment></comment><comment><USER4> They could hash substrings or variations of the new password and check against the original hash. Further, I guess they could be storing hashes of several modified passwords, but that seems unlikely.</comment>


Stop procrastinating: Introducing the noprocrast gem - <AUTHOR> http://rfw.posterous.com/33144299

<comment><USER2> Neat idea. But it's called "proc _R_ astination." Please, please change the name. Otherwise, eyes will bleed.

<comment><AUTHOR> good point. changed :)

</comment></comment><comment><USER3> Could be good idea!

I'll try to get around to looking into it tomorrow...

</comment><comment><USER4> It should remove the noprocrast off feature. Make it easy to turn it on, but annoying to turn it off.

<comment><AUTHOR> Personally I find the main danger is procrastinating without realising it. In other words, if I can't get to the site I was heading to, then that's enough of a nudge to regain my focus.

</comment></comment><comment><USER5> Firefox Leechbock add-on does that at the browser level.</comment>