How do I update Anaconda?

Question: I have Anaconda installed on my computer and I'd like to update it.  In Navigator I can see that there are several individual packages that can be updated, but also an anaconda package that sometimes has a version number and sometimes says custom.  How do I proceed?
Comment: Most answers suggest `conda update [-n root] -v anaconda`, but it's offering to DOWNGRADE my `python: 3.7.0-hc167b69_0 --> 3.6.6-hc167b69_0`. Seems very broken.
Answer:
 root is the old (pre-conda 4.4) name for the main environment; after conda 4.4, it was renamed to be base.  source

What 95% of people actually want
In most cases what you want to do when you say that you want to update Anaconda is to execute the command:
conda update --all

(But this should be preceded by conda update -n base conda or simply conda update conda so you have the latest conda version installed)
This will update all packages in the current environment to the latest version -- with the small print being that it may use an older version of some packages in order to satisfy dependency constraints (often this won't be necessary and when it is necessary the package plan solver will do its best to minimize the impact).
This needs to be executed from the command line, and the best way to get there is from Anaconda Navigator, then the "Environments" tab, then click on the triangle beside the base environment, selecting "Open Terminal":

This operation will only update the one selected environment (in this case, the base environment).  If you have other environments you'd like to update you can repeat the process above, but first click on the environment.  When it is selected there is a triangular marker on the right (see image above, step 3).  Or from the command line you can provide the environment name (-n envname) or path (-p /path/to/env), for example to update your dspyr environment from the screenshot above:
conda update -n dspyr --all

Update individual packages
If you are only interested in updating an individual package then simply click on the blue arrow or blue version number in Navigator, e.g. for astroid or astropy in the screenshot above, and this will tag those packages for an upgrade.  When you are done you need to click the "Apply" button:

Or from the command line:
conda update astroid astropy

Updating just the packages in the standard Anaconda Distribution
If you don't care about package versions and just want "the latest set of all packages in the standard Anaconda Distribution, so long as they work together", then you should take a look at this gist.
Why updating the Anaconda package is almost always a bad idea
In most cases updating the Anaconda package in the package list will have a surprising result: you may actually downgrade many packages (in fact, this is likely if it indicates the version as custom).  The gist above provides details.
Leverage conda environments
Your base environment is probably not a good place to try and manage an exact set of packages: it is going to be a dynamic working space with new packages installed and packages randomly updated.  If you need an exact set of packages then create a conda environment to hold them.  Thanks to the conda package cache and the way file linking is used doing this is typically i) fast and ii) consumes very little additional disk space.  E.g.
conda create -n myspecialenv -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk

The conda documentation has more details and examples.
pip, PyPI, and setuptools?
None of this is going to help with updating packages that have been installed from PyPI via pip or any packages installed using python setup.py install.  conda list will give you some hints about the pip-based Python packages you have in an environment, but it won't do anything special to update them.
Commercial use of Anaconda or Anaconda Enterprise
It is pretty much exactly the same story, with the exception that you may not be able to update the base environment if it was installed by someone else (say to /opt/anaconda/latest).  If you're not able to update the environments you are using you should be able to clone and then update:
conda create -n myenv --clone base
conda update -n myenv --all

Comment: The `conda update --all` is not what 95% of peoples want. It can lead to unstable environment. Answer by user3056882 is safer.
Comment: I had to do `conda update -n root conda` instead of what's mentioned above in order for it to work.
Comment: @MattSchmatt make sure you do `conda update conda` as well.  Conda has evolved substantially in the past year, and in particular we had a release in late September 2017 that introduced a lot of improvements.  If `conda update --all` breaks things (which, historically, it was almost certain to do) then this is a bug you should report to the conda GitHub issue tracker -- today that operation *should not* break any existing components (with the proviso conda needs to be up to date).
Comment: The `spyder` developers are [saying the exact opposite of this](https://github.com/spyder-ide/spyder/issues/14687#issuecomment-774508768): "In general it's not a good idea to use `conda update --all`" and [here](https://github.com/spyder-ide/spyder/wiki/Troubleshooting-Guide-and-FAQ): "To perform the update with conda (strongly recommended), just run `conda update anaconda` then `conda update spyder`"
Comment: `conda update --all` failed for me with a 'permission denied' error.  Ran it with administrator privilege successfully. To run with Administrator privilege: Start > Anaconda3 > Anaconda Prompt > Right-click > More > Run As Administrator.
Comment: Current macOS `Anaconda3 version is 5.1.0`. But when I do `conda -V` it tells me `4.5.1` even though I ran `conda update conda` and `conda update anaconda`. Any ideas why?
Comment: If I read the official docs correctly, `conda update --all` is not recommended but rather a workaround for those who want to be ahead of a release and try their luck - since the dependencies are only coordinated by the package manager, it is not an approved collection like it is in a release, it can be unstable and run into conflicts. Better have a look at the [answer that really sticks to the official docs](https://stackoverflow.com/a/58885970/11154841).
Comment: Why does `--all` lead to an unstable environment?
Comment: Three problems: 1. You lead with the impossibly 'precise' phrasing "What 95% of people actually want". 2. What X% people of people want is not the point; here on Stack Overflow, the original question is king -- the context is clear from the question: the OP wants to update Anaconda itself. 3. The answer is so... long...
Comment: Fails for me on Mac after Open Terminal: ....anaconda/navigator/a.tool: line 1: syntax error near unexpected token `('
.../.anaconda/navigator/a.tool: line 1: `bash --init-file <(echo "source activate ....anaconda;")'
[Process completed]  Any help appreciated!
Answer: If you are trying to update your Anaconda version to a new one, you'll notice that running the new installer wouldn't work, as it complains the installation directory is non-empty.
So you should use conda to upgrade as detailed by the official docs:
conda update conda
conda update anaconda

In Windows, if you made a "for all users" installation, it might be necessary to run from an Anaconda prompt with Administrator privileges.

This prevents the error:

ERROR conda.core.link:_execute(502): An error occurred while uninstalling package 'defaults::conda-4.5.4-py36_0'.
  PermissionError(13, 'Access is denied')
Comment: The link to the official docs that you give says that you need to update with `conda update conda` followed by `conda install anaconda=VersionNumber`, not with `conda update anaconda`. See the [other answer of this same question](https://stackoverflow.com/a/58885970/11154841). Or does it automatically install the most recent version if you leave out the `VersionNumber`, and is `install` = `update`?
Comment: Checked this. After updating with `conda install anaconda=2021.05` (the most recent metapackage version available at the time of testing) I updated again with `conda update anaconda` of this answer. And the latter would install 13 new packages and update about 100 packages. Only anaconda itself gets "downgraded", but that is only called like this because it changes to a custom version: `The following packages will be DOWNGRADED:  anaconda  2021.05-py38_0 --> custom-py38_1`. Therefore, `conda update anaconda` gives you the most recent package collection. `conda install anaconda` installs less.
Answer: Open "command or conda prompt" and run:
conda update conda
conda update anaconda

It's a good idea to run both command twice (one after the other) to be sure that all the basic files are updated.
This should put you back on the latest 'releases', which contains packages that are selected by the people at Continuum to work well together.
If you want the last version of each package run (this can lead to an unstable environment):
conda update --all

Hope this helps.
Sources:

https://docs.anaconda.com/anaconda/install/update-version
https://github.com/conda/conda/issues/1414#issuecomment-119071154
Comment: If you prefer a stable environment over having the latest version of every package, then skip step 4. `conda update anaconda` should put you back on one of the 'releases', which contains packages that are selected by the people at Continuum to work well together.
Comment: If you get package not installed error try `conda install anaconda`.
Comment: I update conda and then all my packages stopped working....I don't know why but it think your solution is not a good idea cuz conda is not stable using this way to upgrade....
here is a way to [rolling back](https://medium.com/@wilpat456/fix-broken-anaconda-environment-due-to-recent-package-download-9094fb0f3a04)
Comment: The link to the official docs that you give says that you need to update with `conda update conda` followed by `conda install anaconda=VersionNumber`, not with `conda update anaconda`. See the [other answer of this same question](https://stackoverflow.com/a/58885970/11154841). Or does it automatically install the most recent version if you leave out the `VersionNumber`, and is `install` = `update`?
Comment: Checked this. After updating with `conda install anaconda=2021.05` (the most recent metapackage version available at the time of testing) I updated again with `conda update anaconda` of this answer. And the latter would install 13 new packages and update about 100 packages. Only anaconda itself gets "downgraded", but that is only called like this because it changes to a custom version: `The following packages will be DOWNGRADED:  anaconda  2021.05-py38_0 --> custom-py38_1`. Therefore, `conda update anaconda` gives you the most recent package collection. `conda install anaconda` installs less.
Answer: This is what the official Anaconda documentation recommends:
conda update conda
conda install anaconda=2021.11

You can find the current and past version codes here.
The command will update to a specific release of the Anaconda meta-package.
I feel like (contrary to the claim made in the accepted answer) this is more what 95% of Anaconda users want imho: Upgrading to the latest version of the Anaconda meta-package (put together and tested by the Anaconda Distributors) and ignoring the update status of individual packages, which would be issued by conda update --all.
Comment: This is the only answer that really sticks to the official guide of [Updating from older versions](https://docs.anaconda.com/anaconda/install/update-version/) if you do not want to use a custom version, but a release that you add like `=version`. If you need to find the latest release, you might also search in the [available Anaconda versions](https://repo.anaconda.com/archive/) and cut it at the release name: `Anaconda3-2021.05-Windows-x86_64.exe` becomes `2021.05`. And the seemingly old `2021.05` is still the most recent *release* version in 09/2021, it can thus be some months old.
Comment: Checked this. After updating with `conda install anaconda=2021.05` (the most recent metapackage version available at the time of testing) I updated again with `conda update anaconda` of another answer. And the latter would install 13 new packages and update about 100 packages. Only anaconda itself gets "downgraded", but that is only called like this because it changes to a custom version: `The following packages will be DOWNGRADED:

  anaconda                                   2021.05-py38_0 --> custom-py38_1`. Therefore, `conda update anaconda` gives you the most recent (custom) collection.
Answer: Open Anaconda cmd in base mode:
Then use conda update conda to update Anaconda.
You can then use conda update --all to update all the requirements for Anaconda:
conda update conda
conda update --all

Answer: Here's the best practice (in my humble experience). Selecting these four packages will also update all other dependencies to the appropriate versions that will help you keep your environment consistent. The latter is a common problem others have expressed in earlier responses. This solution doesn't need the terminal.
Answer: If you have trouble to get e.g. from 3.3.x to 4.x (conda update conda "does not work" to get to the next version) than try it more specific like so:
conda install conda=4.0 (or conda install anaconda=4.0)

https://www.anaconda.com/blog/developer-blog/anaconda-4-release/
You should know what you do, because conda could break due to the forced installation.
If you would like to get more flexibility/security you could use pkg-manager like nix(-pkgs)  [with nix-shell] / NixOS.
Comment: When we manually have to tell the updater what specific version to update to, then it's no longer an updater, just a broken installer with a pretty GUI. In general `conda update --all` breaks everything, as their own FAQ says, and in my instance it cheerfully offers to downgrade my python from 3.7.0 to 3.6.6 (although it knows 3.7.1 is available)
Comment: Perhaps, but wouldn't you consider that utterly broken, as a kludge?
Comment: Version "continuity" is a standard e.g. in (web)development. Like always, if you want to have everythink alined and re-evaluated you should rebuild all with the updated Versions. In general an "conda update --all" with updates ../conda/../pinned file should work proper as well (!take care of additional pip installations!).
Comment: That's your opinion about an installer but it is an STANDARD in IT (with some reason behind it). Again, it depends especially on your pinned file AND if you installed pkgs as well via PIP! Regarding you case: if you have pkgs which are not available or compatible with python 3.7.x THAN it will get the Python version with can optimal fit the restrictions of all the pkgs in your env. That's the reason that there is "conda".
Comment: What is your reason for using conda (if not for the integrity-check/downgrade you are complaining about)?
Comment: No it's not the reason for the wrong downgrade. In my case, conda wrongly thinks that two R packages (which have nothing to do with the Python install) are dependencies of Python. I repeat that in general `conda update --all` breaks everything, as their own FAQ and many users confirm. As of late 2018, conda has lots of breakage and the solver slowdown. The only reason I use it is to simplify numpy/scipy stack dependencies, but I'm wondering if it's time to ditch it.
Comment: You have your opinion. But fact is (like you wrote) if there is a pkg depending on python 3.6 (doesn't matter it is an R pkg or an linux lib), conda does it's job (correctly). If you know it better (that this dependency is incorrect) you can upload those R pkgs without Python dependency to conda-forge (so all can profit from you correct way of handling). conda does not THINK, it manages the dependencies an developer forced it to use. THAT'S the same with pip and co.!
Comment: Try update all with pinned file and without pip installs and show those issues. If you want some freedom you can try NixOS with nix-pkg manager. But everything has it trade-off ... or you know something better?
Comment: ps: most simple example, that conda updates "all" "fine". `conda create --name test_forge_${py_version} -c conda-forge python=${py_version} pip -y ; source activate test_forge_${py_version}; conda update --all` . Works without any issue for you, doesn't it?
Answer: Intro
This answer wraps up many answers and comments, it does not add new code, all credits go to the other answers, especially this answer that shows how to install the official release, fully in line with the docs.
In the following, the "docs" mean the official Anaconda documentation at Updating from older versions. It makes sense to read the docs, it is a short overview.
And since it will be used quite often, here is the definition of metapackage:

A metapackage is a very simple package that has at least a name and a
version. It need not have any dependencies or build steps.
Metapackages may list dependencies to several core, low-level
libraries and may contain links to software files that are
automatically downloaded when executed.

First step
As a first step before the anaconda install, you update conda:
conda update conda

Second step
As a second step, you have three choices: custom or official metapackage, or conda update --all.
1. Custom metapackage
If you are allowed to have the most recent custom metapackage (mind that this might not always be the best choice for standard packages with constrained dependencies), then you can use
conda install anaconda

Docs:

There is a special "custom" version of the Anaconda metapackage that
has all the package dependencies, but none of them are constrained.
The "custom" version is lower in version ordering than any actual
release number.

The starting point for the tests was the installed release 2021.05. After this, conda update anaconda and conda install anaconda both lead to the same new "downgraded custom version" of custom-py38_1, see at the bottom of the code blocks: version change of anaconda = 2021.05-py38_0 --> custom-py38_1. But using update leads to far more installed packages than install here:
update leads to more installation steps than install
(base) C:\WINDOWS\system32>conda update anaconda
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: C:\Users\toeft\anaconda3

  added / updated specs:
    - anaconda

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    _anaconda_depends-2020.07  |           py38_0           6 KB
    anaconda-custom            |           py38_1          36 KB
    anaconda-client-1.8.0      |   py38haa95532_0         170 KB
    anaconda-project-0.10.1    |     pyhd3eb1b0_0         218 KB
    astroid-2.6.6              |   py38haa95532_0         314 KB
    astropy-4.3.1              |   py38hc7d831d_0         6.1 MB
    attrs-21.2.0               |     pyhd3eb1b0_0          46 KB
    babel-2.9.1                |     pyhd3eb1b0_0         5.5 MB
    ...
    xlsxwriter-3.0.1           |     pyhd3eb1b0_0         111 KB
    xlwings-0.24.7             |   py38haa95532_0         887 KB
    zeromq-4.3.4               |       hd77b12b_0         4.2 MB
    zipp-3.5.0                 |     pyhd3eb1b0_0          13 KB
    zope.interface-5.4.0       |   py38h2bbff1b_0         305 KB
    zstd-1.4.9                 |       h19a0ad4_0         478 KB
    ------------------------------------------------------------
                                           Total:       218.2 MB

The following NEW packages will be INSTALLED:

  _anaconda_depends  pkgs/main/win-64::_anaconda_depends-2020.07-py38_0
  cfitsio            pkgs/main/win-64::cfitsio-3.470-he774522_6
  charset-normalizer pkgs/main/noarch::charset-normalizer-2.0.4-pyhd3eb1b0_0
  conda-pack         pkgs/main/noarch::conda-pack-0.6.0-pyhd3eb1b0_0
  debugpy            pkgs/main/win-64::debugpy-1.4.1-py38hd77b12b_0
  fonttools          pkgs/main/noarch::fonttools-4.25.0-pyhd3eb1b0_0
  gmpy2              pkgs/main/win-64::gmpy2-2.0.8-py38h7edee0f_3
  libllvm9           pkgs/main/win-64::libllvm9-9.0.1-h21ff451_0
  matplotlib-inline  pkgs/main/noarch::matplotlib-inline-0.1.2-pyhd3eb1b0_2
  mpc                pkgs/main/win-64::mpc-1.1.0-h7edee0f_1
  mpfr               pkgs/main/win-64::mpfr-4.0.2-h62dcd97_1
  mpir               pkgs/main/win-64::mpir-3.0.0-hec2e145_1
  munkres            pkgs/main/noarch::munkres-1.1.4-py_0

The following packages will be REMOVED:

  jupyter-packaging-0.7.12-pyhd3eb1b0_0

The following packages will be UPDATED:

  anaconda-client                              1.7.2-py38_0 --> 1.8.0-py38haa95532_0
  anaconda-project                       0.9.1-pyhd3eb1b0_1 --> 0.10.1-pyhd3eb1b0_0
  astroid                                2.5-py38haa95532_1 --> 2.6.6-py38haa95532_0
  astropy                              4.2.1-py38h2bbff1b_1 --> 4.3.1-py38hc7d831d_0
  attrs                                 20.3.0-pyhd3eb1b0_0 --> 21.2.0-pyhd3eb1b0_0
  babel                                  2.9.0-pyhd3eb1b0_0 --> 2.9.1-pyhd3eb1b0_0
  bitarray                             1.9.2-py38h2bbff1b_1 --> 2.3.0-py38h2bbff1b_1
  bleach                                 3.3.0-pyhd3eb1b0_0 --> 4.0.0-pyhd3eb1b0_0
  bokeh                                2.3.2-py38haa95532_0 --> 2.3.3-py38haa95532_0
  ca-certificates                      2021.4.13-haa95532_1 --> 2021.7.5-haa95532_1
  certifi                          2020.12.5-py38haa95532_0 --> 2021.5.30-py38haa95532_0
  cffi                                1.14.5-py38hcd4344a_0 --> 1.14.6-py38h2bbff1b_0
  click                                  7.1.2-pyhd3eb1b0_0 --> 8.0.1-pyhd3eb1b0_0
  comtypes                          1.1.9-py38haa95532_1002 --> 1.1.10-py38haa95532_1002
  curl                                    7.71.1-h2a8f88b_1 --> 7.78.0-h86230a5_0
  cython                             0.29.23-py38hd77b12b_0 --> 0.29.24-py38hd77b12b_0
  dask                                2021.4.0-pyhd3eb1b0_0 --> 2021.8.1-pyhd3eb1b0_0
  dask-core                           2021.4.0-pyhd3eb1b0_0 --> 2021.8.1-pyhd3eb1b0_0
  decorator                              5.0.6-pyhd3eb1b0_0 --> 5.0.9-pyhd3eb1b0_0
  distributed                       2021.4.0-py38haa95532_0 --> 2021.8.1-py38haa95532_0
  docutils                              0.17-py38haa95532_1 --> 0.17.1-py38haa95532_1
  et_xmlfile         pkgs/main/noarch::et_xmlfile-1.0.1-py~ --> pkgs/main/win-64::et_xmlfile-1.1.0-py38haa95532_0
  fsspec                                 0.9.0-pyhd3eb1b0_0 --> 2021.7.0-pyhd3eb1b0_0
  gevent                              21.1.2-py38h2bbff1b_1 --> 21.8.0-py38h2bbff1b_1
  greenlet                             1.0.0-py38hd77b12b_2 --> 1.1.1-py38hd77b12b_0
  idna                                    2.10-pyhd3eb1b0_0 --> 3.2-pyhd3eb1b0_0
  imagecodecs                      2021.3.31-py38h5da4933_0 --> 2021.6.8-py38h5da4933_0
  intel-openmp                        2021.2.0-haa95532_616 --> 2021.3.0-haa95532_3372
  ipykernel                            5.3.4-py38h5ca1d4c_0 --> 6.2.0-py38haa95532_1
  ipython                             7.22.0-py38hd4e2768_0 --> 7.26.0-py38hd4e2768_0
  isort                                  5.8.0-pyhd3eb1b0_0 --> 5.9.3-pyhd3eb1b0_0
  itsdangerous                           1.1.0-pyhd3eb1b0_0 --> 2.0.1-pyhd3eb1b0_0
  jinja2                                2.11.3-pyhd3eb1b0_0 --> 3.0.1-pyhd3eb1b0_0
  json5                                          0.9.5-py_0 --> 0.9.6-pyhd3eb1b0_0
  jupyterlab                            3.0.14-pyhd3eb1b0_1 --> 3.1.7-pyhd3eb1b0_0
  jupyterlab_server                      2.4.0-pyhd3eb1b0_0 --> 2.7.1-pyhd3eb1b0_0
  keyring                             22.3.0-py38haa95532_0 --> 23.0.1-py38haa95532_0
  krb5                                    1.18.2-hc04afaa_0 --> 1.19.2-h5b6d351_0
  libcurl                                 7.71.1-h2a8f88b_1 --> 7.78.0-h86230a5_0
  libxml2                                 2.9.10-hb89e7f3_3 --> 2.9.12-h0ad7f3c_0
  lz4-c                                    1.9.3-h2bbff1b_0 --> 1.9.3-h2bbff1b_1
  markupsafe                           1.1.1-py38he774522_0 --> 2.0.1-py38h2bbff1b_0
  matplotlib                           3.3.4-py38haa95532_0 --> 3.4.2-py38haa95532_0
  matplotlib-base                      3.3.4-py38h49ac443_0 --> 3.4.2-py38h49ac443_0
  mkl                                 2021.2.0-haa95532_296 --> 2021.3.0-haa95532_524
  mkl-service                          2.3.0-py38h2bbff1b_1 --> 2.4.0-py38h2bbff1b_0
  mkl_random                           1.2.1-py38hf11a4ad_2 --> 1.2.2-py38hf11a4ad_0
  more-itertools                         8.7.0-pyhd3eb1b0_0 --> 8.8.0-pyhd3eb1b0_0
  nbconvert                                    6.0.7-py38_0 --> 6.1.0-py38haa95532_0
  networkx                                         2.5-py_0 --> 2.6.2-pyhd3eb1b0_0
  nltk                                   3.6.1-pyhd3eb1b0_0 --> 3.6.2-pyhd3eb1b0_0
  notebook                             6.3.0-py38haa95532_0 --> 6.4.3-py38haa95532_0
  numpy                               1.20.1-py38h34a8a5c_0 --> 1.20.3-py38ha4e8547_0
  numpy-base                          1.20.1-py38haf7ebc8_0 --> 1.20.3-py38hc2deb75_0
  openjpeg                                 2.3.0-h5ec785f_1 --> 2.4.0-h4fc8c34_0
  openssl                                 1.1.1k-h2bbff1b_0 --> 1.1.1l-h2bbff1b_0
  packaging                               20.9-pyhd3eb1b0_0 --> 21.0-pyhd3eb1b0_0
  pandas                               1.2.4-py38hd77b12b_0 --> 1.3.2-py38h6214cd6_0
  path                                15.1.2-py38haa95532_0 --> 16.0.0-py38haa95532_0
  pathlib2                             2.3.5-py38haa95532_2 --> 2.3.6-py38haa95532_2
  pillow                               8.2.0-py38h4fa10fc_0 --> 8.3.1-py38h4fa10fc_0
  pkginfo                              1.7.0-py38haa95532_0 --> 1.7.1-py38haa95532_0
  prometheus_client                     0.10.1-pyhd3eb1b0_0 --> 0.11.0-pyhd3eb1b0_0
  pydocstyle                             6.0.0-pyhd3eb1b0_0 --> 6.1.1-pyhd3eb1b0_0
  pyerfa                               1.7.3-py38h2bbff1b_0 --> 2.0.0-py38h2bbff1b_0
  pygments                               2.8.1-pyhd3eb1b0_0 --> 2.10.0-pyhd3eb1b0_0
  pylint                               2.7.4-py38haa95532_1 --> 2.9.6-py38haa95532_1
  pyodbc                              4.0.30-py38ha925a31_0 --> 4.0.31-py38hd77b12b_0
  pytest                               6.2.3-py38haa95532_2 --> 6.2.4-py38haa95532_2
  python-dateutil                        2.8.1-pyhd3eb1b0_0 --> 2.8.2-pyhd3eb1b0_0
  pywin32                                227-py38he774522_1 --> 228-py38hbaba5e8_1
  pyzmq                               20.0.0-py38hd77b12b_1 --> 22.2.1-py38hd77b12b_1
  qtconsole                              5.0.3-pyhd3eb1b0_0 --> 5.1.0-pyhd3eb1b0_0
  qtpy                                           1.9.0-py_0 --> 1.10.0-pyhd3eb1b0_0
  regex                             2021.4.4-py38h2bbff1b_0 --> 2021.8.3-py38h2bbff1b_0
  requests                              2.25.1-pyhd3eb1b0_0 --> 2.26.0-pyhd3eb1b0_0
  rope                                          0.18.0-py_0 --> 0.19.0-pyhd3eb1b0_0
  scikit-learn                        0.24.1-py38hf11a4ad_0 --> 0.24.2-py38hf11a4ad_1
  seaborn                               0.11.1-pyhd3eb1b0_0 --> 0.11.2-pyhd3eb1b0_0
  singledispatch                      3.6.1-pyhd3eb1b0_1001 --> 3.7.0-pyhd3eb1b0_1001
  six                pkgs/main/win-64::six-1.15.0-py38haa9~ --> pkgs/main/noarch::six-1.16.0-pyhd3eb1b0_0
  sortedcontainers                       2.3.0-pyhd3eb1b0_0 --> 2.4.0-pyhd3eb1b0_0
  sphinx                                 4.0.1-pyhd3eb1b0_0 --> 4.0.2-pyhd3eb1b0_0
  sphinxcontrib-htm~                     1.0.3-pyhd3eb1b0_0 --> 2.0.0-pyhd3eb1b0_0
  sphinxcontrib-ser~                     1.1.4-pyhd3eb1b0_0 --> 1.1.5-pyhd3eb1b0_0
  sqlalchemy                           1.4.7-py38h2bbff1b_0 --> 1.4.22-py38h2bbff1b_0
  sqlite                                  3.35.4-h2bbff1b_0 --> 3.36.0-h2bbff1b_0
  testpath                               0.4.4-pyhd3eb1b0_0 --> 0.5.0-pyhd3eb1b0_0
  threadpoolctl                          2.1.0-pyh5ca1d4c_0 --> 2.2.0-pyhbf3da8f_0
  tifffile                            2021.4.8-pyhd3eb1b0_2 --> 2021.7.2-pyhd3eb1b0_2
  tqdm                                  4.59.0-pyhd3eb1b0_1 --> 4.62.1-pyhd3eb1b0_1
  typed-ast                            1.4.2-py38h2bbff1b_1 --> 1.4.3-py38h2bbff1b_1
  typing_extensions                    18.104.22.168-pyha847dfd_0 --> 22.214.171.124-pyh06a4308_0
  urllib3                               1.26.4-pyhd3eb1b0_0 --> 1.26.6-pyhd3eb1b0_1
  wheel                                 0.36.2-pyhd3eb1b0_0 --> 0.37.0-pyhd3eb1b0_0
  xlsxwriter                             1.3.8-pyhd3eb1b0_0 --> 3.0.1-pyhd3eb1b0_0
  xlwings                             0.23.0-py38haa95532_0 --> 0.24.7-py38haa95532_0
  zeromq                                   4.3.3-ha925a31_3 --> 4.3.4-hd77b12b_0
  zipp                                   3.4.1-pyhd3eb1b0_0 --> 3.5.0-pyhd3eb1b0_0
  zope.interface                       5.3.0-py38h2bbff1b_0 --> 5.4.0-py38h2bbff1b_0
  zstd                                     1.4.5-h04227a9_0 --> 1.4.9-h19a0ad4_0

The following packages will be DOWNGRADED:

  anaconda                                   2021.05-py38_0 --> custom-py38_1

install leads to less installation steps than update:
(base) C:\WINDOWS\system32>conda install anaconda
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: C:\Users\toeft\anaconda3

  added / updated specs:
    - anaconda

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    _anaconda_depends-2020.07  |           py38_0           6 KB
    anaconda-custom            |           py38_1          36 KB
    ca-certificates-2021.7.5   |       haa95532_1         113 KB
    certifi-2021.5.30          |   py38haa95532_0         140 KB
    gmpy2-2.0.8                |   py38h7edee0f_3         145 KB
    libllvm9-9.0.1             |       h21ff451_0          61 KB
    mpc-1.1.0                  |       h7edee0f_1         260 KB
    mpfr-4.0.2                 |       h62dcd97_1         1.5 MB
    mpir-3.0.0                 |       hec2e145_1         1.3 MB
    openssl-1.1.1l             |       h2bbff1b_0         4.8 MB
    ------------------------------------------------------------
                                           Total:         8.4 MB

The following NEW packages will be INSTALLED:

  _anaconda_depends  pkgs/main/win-64::_anaconda_depends-2020.07-py38_0
  gmpy2              pkgs/main/win-64::gmpy2-2.0.8-py38h7edee0f_3
  libllvm9           pkgs/main/win-64::libllvm9-9.0.1-h21ff451_0
  mpc                pkgs/main/win-64::mpc-1.1.0-h7edee0f_1
  mpfr               pkgs/main/win-64::mpfr-4.0.2-h62dcd97_1
  mpir               pkgs/main/win-64::mpir-3.0.0-hec2e145_1

The following packages will be UPDATED:

  ca-certificates                      2021.4.13-haa95532_1 --> 2021.7.5-haa95532_1
  certifi                          2020.12.5-py38haa95532_0 --> 2021.5.30-py38haa95532_0
  openssl                                 1.1.1k-h2bbff1b_0 --> 1.1.1l-h2bbff1b_0

The following packages will be DOWNGRADED:

  anaconda                                   2021.05-py38_0 --> custom-py38_1

2. Official metapackage (= release)
In the following code snippets, update and install lead to the same results. I use install like in the docs.
If you do not want to install a custom version of the metapackage but rather need the most recent official release, install with
conda install anaconda=VersionNumber

Find the VersionNumber
At the time of writing, in 09/2021, the latest available release (Anaconda individual edition) is
conda install anaconda=2021.05

But how to get hold of this VersionNumber?
Have a look at the Anaconda Release notes of the individual edition. If you need an older version, you need to scroll down that page, for example to find 2020.11. The most recent is always on top of the page. If you use a commercial edition, you need to check other release notes.
Thus, something like the 2021.05 version code is the latest release shortcut that you need to find. You can also find the full version name of your OS like for example Anaconda3-2021.05-Windows-x86_64.exe in the list of available Anaconda versions that is directly linked in the docs. It is sorted by name and date, thus, you need to search for the year like "YYYY-MM" / "YYYY-" or scroll through the whole list to find the most recent versions:

For the example of Windows 10 64 bit, the command could as well be:
conda update anaconda=Anaconda3-2021.05-Windows-x86_64.exe

If you install a release after having installed the most recent custom metapackage, you will see some packages to be removed and quite many to be downgraded slightly. This is because the release is slightly back in time, but therefore also fully trusted.
Docs:

conda update anaconda=VersionNumber grabs the specific release of the
Anaconda metapackage, for example conda update anaconda=2019.10. That
metapackage represents a pinned state that has undergone testing as a
collection.

3. Do not use conda update --all
As to the docs (last sentence of the following quote below), installing the custom (= most recent) metapackage of 2019.07 can be done as well by running
 conda update --all

and if you have virtual environments, you need:
conda update -n myenv --all

YET: This was probably an exception for 2019.07. It does not seem to hold for higher metapackage versions. I checked the differences of conda update --all against conda update anaconda on a row to row comparison (see below, after the quote). Although they seem like twins at first, there were enough small differences to say that you should keep your hands off conda update --all since possible conflicting constraints are even mentioned in the docs.
Docs:

conda update --all will unpin everything. This updates all packages in
the current environment to the latest version. In doing so, it drops
all the version constraints from the history and tries to make
everything as new as it can.
This has the same behavior with removing packages. If any packages are
orphaned by an update, they are removed. conda update --all may not be
able to make everything the latest versions because you may have
conflicting constraints in your environment.
With Anaconda 2019.07's newer Anaconda metapackage, conda update --all
will make the metapackage go to the custom version in order to update
other specs.

The whole output, put against each other on a row to row base, reveals the following remaining row differences. This proves that conda update --all is not just the custom metapackage:
conda update --all output lines not found in conda update anaconda
(base) C:\WINDOWS\system32>conda update --all

The following packages will be downloaded:

    anaconda-navigator-2.0.4   |           py38_0         5.2 MB
    conda-build-3.21.4         |   py38haa95532_0         552 KB
    conda-content-trust-0.1.1  |     pyhd3eb1b0_0          56 KB
    conda-repo-cli-1.0.4       |     pyhd3eb1b0_0          47 KB
    conda-token-0.3.0          |     pyhd3eb1b0_0          10 KB
    menuinst-1.4.17            |   py38h59b6b97_0          96 KB
    python-3.8.11              |       h6244533_1        16.0 MB
                                           Total:       224.8 MB

The following NEW packages will be INSTALLED:

  conda-content-tru~ pkgs/main/noarch::conda-content-trust-0.1.1-pyhd3eb1b0_0
  conda-repo-cli     pkgs/main/noarch::conda-repo-cli-1.0.4-pyhd3eb1b0_0
  conda-token        pkgs/main/noarch::conda-token-0.3.0-pyhd3eb1b0_0

The following packages will be UPDATED:

  anaconda-navigator                          1.10.0-py38_0 --> 2.0.4-py38_0
  conda-build                                 3.20.5-py38_1 --> 3.21.4-py38haa95532_0
  et_xmlfile         pkgs/main/noarch::et_xmlfile-1.0.1-py~ --> pkgs/main/win-64::et_xmlfile-1.1.0-py38haa95532_0
  menuinst                            1.4.16-py38he774522_1 --> 1.4.17-py38h59b6b97_0
  python                                   3.8.8-hdbf39b2_5 --> 3.8.11-h6244533_1
  six                pkgs/main/win-64::six-1.15.0-py38haa9~ --> pkgs/main/noarch::six-1.16.0-pyhd3eb1b0_0
  sphinxcontrib-htm~                     1.0.3-pyhd3eb1b0_0 --> 2.0.0-pyhd3eb1b0_0
  sphinxcontrib-ser~                     1.1.4-pyhd3eb1b0_0 --> 1.1.5-pyhd3eb1b0_0

conda update anaconda output lines not found in conda update --all
(base) C:\WINDOWS\system32>conda update anaconda

  added / updated specs:
    - anaconda

The following packages will be downloaded:

    cfitsio-3.470              |       he774522_6         512 KB
    imagecodecs-2021.6.8       |   py38h5da4933_0         6.1 MB
    jinja2-3.0.1               |     pyhd3eb1b0_0         110 KB
    tifffile-2021.7.2          |     pyhd3eb1b0_2         135 KB
    typed-ast-1.4.3            |   py38h2bbff1b_1         135 KB
                                           Total:       209.8 MB

The following NEW packages will be INSTALLED:

  cfitsio            pkgs/main/win-64::cfitsio-3.470-he774522_6

The following packages will be UPDATED:

  et_xmlfile         pkgs/main/noarch::et_xmlfile-1.0.1-py~ --> pkgs/main/win-64::et_xmlfile-1.1.0-py38haa95532_0
  imagecodecs                      2021.3.31-py38h5da4933_0 --> 2021.6.8-py38h5da4933_0
  jinja2                                2.11.3-pyhd3eb1b0_0 --> 3.0.1-pyhd3eb1b0_0
  six                pkgs/main/win-64::six-1.15.0-py38haa9~ --> pkgs/main/noarch::six-1.16.0-pyhd3eb1b0_0
  sphinxcontrib-htm~                     1.0.3-pyhd3eb1b0_0 --> 2.0.0-pyhd3eb1b0_0
  sphinxcontrib-ser~                     1.1.4-pyhd3eb1b0_0 --> 1.1.5-pyhd3eb1b0_0
  tifffile                            2021.4.8-pyhd3eb1b0_2 --> 2021.7.2-pyhd3eb1b0_2
  typed-ast                            1.4.2-py38h2bbff1b_1 --> 1.4.3-py38h2bbff1b_1

Therefore, conda update --all is not recommended, better stick to the custom metapackage if you need the highest possible update, or take the official metapackage if you are fine with a lag of a couple of months and a collection of packages without any conflicts is most important (for example, if you are in a production environment).
Result: Which to install: official or custom metapackage?
Some answers or comments say that the custom metapackage install might need to be run twice to get to a proper state. I cannot confirm this (tested with conda install anaconda and conda update anaconda, but I am also in a fresh Python installation). This is still a hint that it might be more stable to install the most recent official metapackage (= release, conda install anaconda=VersionNumber = conda update anaconda=VersionNumber) which can have a lag of some months.
On the other hand, the custom metapackage (the most recent trusted package collection) might be good if you want the most recent versions available. Then run conda install anaconda or the even stronger command conda update anaconda.
This is also the way to update Spyder:

They do not even use conda update conda before conda update anaconda, the latter seems enough.
Small "proof": I used conda update conda at first, and after that, conda update anaconda had nothing to do anymore, conda update conda had done all or the tasks.
conda update anaconda
Collecting package metadata (current_repodata.json): done Solving environment: done

# All requested packages already installed.

That again sounds as if both commands are made the same now, perhaps they have not been the same only in the past.
The choice is up to you, it depends on how urgently you need to be up-to-date with some packages. Just start the installer to see what would happen, you can still enter n to cancel the installation. I am going to take
conda update anaconda

without conda update conda.
And do not take conda update --all unless you need the most recent update of some package, for example as a requirement for another package to be installed. I ran into that when testing --all, only after that, a new tensorflow add-on was suggested for download, but not after the other commands. Normally, you will not need to be up to date on the point, therefore do not use --all.
Answer: Yet, another answer:
conda update -n base conda -c anaconda

where -c your preferred channel or simply leave out.
copied from here
Answer: I'm using Windows 10. The following updates everything and also installs some new packages, including a Python update (for me it was 3.7.3).
At the shell, try the following (be sure to change where your Anaconda 3 Data is installed). It takes some time to update everything.
conda update --prefix X:\XXXXData\Anaconda3 anaconda

Answer: To update your installed version to the latest version, say 2019.07, run:
conda install anaconda=2019.07

In most cases, this method can meet your needs and avoid dependency problems.
Answer: Some of the answers here are a bit dated. Anaconda have recently updated their documentation How to Update Anaconda, however I think it is still lacking in areas so I'll add some more information.
AVOID!
The Anaconda base Python environment is a Python distribution and should be updated collectively using the standalone images put together by Anaconda.
The following command should generally be avoided in the base Python environment:
conda update --all

The reason for this is it will attempt to individually update packages and may lead to an unstable base Python environment. Essentially when one package is updated that is a dependency for other packages, the other packages may be removed and therefore the Python environment becomes unstable.
Separate Python environments should be used if you need to use a newer version of a package outside of Anacondas standard image or a package only available on conda-forge.
Anaconda >2023-07
To update open the Anaconda PowerShell Prompt (Windows) or Terminal (Linux).
.condarc and libmamba solver
Anaconda 2023-07-0 have the libmamba solver preinstalled but unfortunately it is not enabled by default. Before updating it is recommended to use the libmamba solver and default channels. More details about the libmamba solver are available here A faster solver for conda: libmamba
If a .condarc file is present in %USERPROFILE% (Windows) or Home (Linux), it should be deleted using:
del .condarc

This will prevent confusion using the wrong channels if the .condarc had been configured to use the channel conda-forge instead of the channel anaconda for example.
A new .condarc file using the libmamba solver can be created using:
conda config --set solver libmamba

You may also want to set the channel priority to strict:
conda config --set channel_priority strict

Deactivate
To update Anaconda, you will first want to deactivate the base Python environment. To do this use:
conda deactivate

Search
Then input:
conda search anaconda

You will get something like:

Name
Version
Build
Channel

anaconda
2023.07
py310_0
pkg/main

anaconda
2023.07
py310_1
pkg/main

anaconda
2023.07
py311_0
pkg/main

anaconda
2023.07
py311_1
pkg/main

The py311_0 is Python 3.11.3 and comes with Anaconda 2023.07-1
The py311_1 is Python 3.11.4 and comes with Anaconda 2023.07-2
Anaconda 2023.07-0 was also Python 3.11.3 but was quickly replaced by 2023-07-1 and is not separately listed.
Install Specific Version
To install the latest version input:
conda install anaconda=2023.07=py311_1

Notice that = is used for the version number and again for the Python version and will install this specific version of Anaconda replacing the previous base Python environment.
Newer releases may be out by the time you read this post and you'll see these from your earlier search query.
Note when updating some packages may be downgraded, this happens when Anaconda deem a version of a package unsuitable and revert to an older version. Confer with Anaconda Release Notes for more details.
Anaconda <2023-07
In theory you can get the latest version of the conda package manager which has the libmamba solver using:
conda deactivate
conda update conda

Then you can follow the previous instructions from >2023-07 to update. However these versions will have base Python distributions with Python versions < 3.11 and even with the libmamba solver enabled may have issues solving the environment.
You will probably get better results by uninstalling Anaconda and the installing the latest version using the updated installer.
Windows
In Windows uninstall it by right clicking the Start button and going to Apps and Features. If numerous older versions are listed press ⊞ + r and type in appwiz.cpl to get the old Add/Remove Programs. Then install using the latest installer in Windows. Optionally add Anaconda to the Path during installation.
Linux
In Linux go to Home and delete the Anaconda3 folder. Invoke the bash file in the Terminal using:
cd ~/Downloads
bash Anaconda3-2023.07-2-Linux-x86_64.sh

Update the command accordingly for the installer version.
Ensure to activate Anaconda when prompted (as the default option installs it unactivated). Close the Terminal to refresh the list of commands available from the updated .bashrc file.
Answer: On Mac, open a terminal and run the following two commands.
conda update conda
conda update anaconda

Make sure to run each command multiple times to update to the current version.
Comment: multiple time? doest make sense to do that.
Comment: In my experience, if you just run the commands once it does not update to the latest versions of the python packages. So I suggest running it multiple times.
Comment: This is duplicate of another answer here on the same page: https://stackoverflow.com/a/46842054/109618
Answer: Use:
conda create -n py37 -c anaconda anaconda=5.3.1
conda env export -n py37 --file env.yaml

Locate the env.yaml file in C:\Windows\System32 and run the cmd as administrator:
conda env update -n root -f env.yaml

Then it works!
Answer: I also tried updating anaconda using conda install -n base anaconda=2022.10, but this resulted in conflicts indicating that my python version was too low (3.6).
I eventually managed to update using the following command:
conda install -n base anaconda=2022.10 python=3.8

The latest anaconda version code can be found in the release notes.
(In between I also reset my base environment using conda install --rev 0, not sure this was necessary though. In any case, be aware of possible consequences when trying this!)
Answer: User this (to update anaconda) e.g. under wslg, wsl, ubuntu, etc.
conda update -n base -c defaults conda
And for updating everything use:
conda update --all

How do I update Anaconda?


Creating a new time column in PostGIS / CartoDB

Question: I received a CSV file that has year (just two digits, '70'), month (as 'JAN'), day and time (as '0310') as separate columns. Bringing in to CartoDB / PostGIS they all appear as strings. I'd like to convert them to a single column that is a real 'date' type so I can display with Torque. What's the best way to go about doing that?
Comment: Mixing time with months may not be helpful given that it would all wash out in torque. I can give it a shot though.
Answer: I'd give this a shot.
First, create a new column, called mydates with type date. Then do the following SQL (replacing names of columns and your table where appropriate),
UPDATE mytable SET
mydates = to_date(month_column || year_column || time_column, 'MonYYHH12MI')

That assumes you have a 12 hour clock. If it is 24 hour clock, do this,
UPDATE mytable SET
mydates = to_date(month_column || year_column || time_column, 'MonYYHH24MI')

Comment: and if you did actually need the times, use `to_timestamp` with everything else the same.
Comment: Looks like that forgets the day. Would day be done like: `UPDATE final_seadab_geo_only SET
mission_date = to_date(hotel_day_of_mission || hotel_month_of_mission || hotel_year_of_mission || time_over_target, 'DDMonYYHH24MI')` ?
Comment: That said it looks like my data is a bit too messy for this to work, it hits some that don't have a field for all of those. Is there some way to make it just do null if it hits a case it can't parse?


Store Palladium Chloride in Solution

Question: I have one gram of palladium chloride ($\ce{PdCl2}$) and I want to use very small quantities of it, in milligrams somewhere. It is not possible for me to get my hands on a scale that can measure that low quantity. When I shall be dissolving it in HCl solution during use.
So what if I prepare its solution in HCl and then use that solution by measuring its volume in a syringe and calculating how much $\ce{PdCl2}$ there is in the solution? I have seen 5 wt% $\ce{PdCl2}$ in 10 wt% HCl solution available on the internet. So I take 54 mL of 37 % HCl and dilute it to 200 mL to get 10 % HCl. Then add 1 g of $\ce{PdCl2}$ to it. Then I can say that for every mL of the solution, I have 5mg of $\ce{PdCl2}$.
How much shelf life will this solution have? What kind of container should I use to store it? Or is there a better way to store it in the solution and measure small quantities of it?
Answer: I remember during undergrad storing Pd catalysts in a brown glass jar in the fridge. If making up 0.25g, you could use a brown 50 ml dropper bottle or something similar. As for shelf life, I would suggest making up 0.25 g, dating the jar and checking to see if the reaction stops working at any point. To measure the the amount, use a syringe and needle.
Comment: Was it Palladium Chloride in HCl that you stored in the brown glass jar?
Comment: No, Pd2dba3 came in a brown glass jar.

Store Palladium Chloride in Solution


Potentially conflicting answers across two questions

Question: I am not sure if this question is appropriate for the main site or not. A while back I asked about the Value of light-to-none peer reviewed pay-to-publish articles when evaluating a potential PhD student. The answers all suggest I should treat them as any other non-peer reviewed article (which is essentially the same thing you do with peer reviewed articles). This recent question by a PhD applicant asks Should I list my papers which are published in less known journals in my CV? and the answers seem to suggest that if the "less known" journals are predatory that you should avoid listing them on your CV. This seems in contradiction to the answers I got. Is there a contradiction, or am I missing something?
Answer: Pay to publish ≠ Lesser known journals
There are thousands of perfectly legitimate but low-impact journals. Publishing in those is by no means a negative reflection on one's character, skill, or whatever. There are also thousands of predatory, pay-to-publish journals. Publishing in those is almost always a bad idea, and may reflect negatively on an individual.
Answer: I don't think it's necessarily a contradiction.
Presumably, listing an article you published in a predatory journal shows a lack of experience or understanding of the publication process.
The advice to you, as the person evaluating these CVs, is not to punish the student for this lack of understanding. The answers there suggest giving the student the benefit of the doubt, since he/she may have had an inadequate advisor who didn't train them in this aspect of academia.
But students can't count on everyone who evaluates their CV to be so understanding of their naïveté. Thus, the advice not to list it on the CV  - since the reader's negative impression of those who publish in predatory journals can outweigh any favorable impact the content of the paper may have.
Comment: It seems this is what happened, so not really a conflict. It's like saying "be responsible, keep your commitments" but also saying "hey, if that person didn't keep their commitments, consider forgiving them." One point is about what **you should do**, the other point is about how **you should judge others**. While you do not know how others will judge you, you should be safe (don't list on your CV). However, that does not mean you should judge others by the same standard - do your own research (read the articles) to see what the truth is.
Answer: Aside from whether this is a contradiction or not, I think it is ambitious to assume that the answers given here are necessarily internally consistent. Different persons answer different questions, and the underlying assumptions etc. are not necessarily the same. That is, I am pretty sure that one would be able to find two related questions where the most upvoted / accepted answers are indeed contradictory, but I see absolutely no way to prevent this.


How to acknowledge a research internship in a paper?

Question: In an accepted paper, I have written my acknowledgments to the funding entities and now I want to also acknowledge the fact that this work was mostly carried out in X place thanks to an internship Funding. However, I am not sure if I should phrase it like that or if there is a typical sentence in these cases.
Answer: Just keep it short and simple. If X provided the internship funding, make sure you say that. But focus, in any case, on the source of funds, not necessarily the place. What you wrote implies that X was the funder, which may be your intention. If it is otherwise, make it more clear.
If the internship has a specific name, mention that as well. "Roy and Dale Rogers Internship for the Study of Late Cowboy Culture".
Answer: Ask X how they would like to be acknowledged.
If this was written as part of you internship it could even be the case that it is more appropriate to list X as an affiliation, but that depends on the details of the arrangement.


Installing outlet receptacle in unfinished basement furnace/water heater room

Question: Recently bought a house with a furnace/water heater utility room in the basement surrounded by a bedroom and playroom space. We just had a water filtration system put in this room that requires a plug. I thought it was really odd that there was no outlet receptacle in this room. My plan is to piggyback off the bedroom receptacle, but I want to make sure that there's nothing in the code about not putting receptacles X distance from water heater or furnace. I'm tracking that it's unfinished basement so the first outlet of the double duplex needs to be GFCI. Am I missing anything? Thanks!
Comment: You'll want to install the incoming power to the line side of the GFCI and the other outlet in the same box to the load side. That way both outlet's get protection from the GFCI.
Answer: Nothing special needed here except the GFCI since this room is not finished. Finished rooms in a basement depending on how long back may not have AFCI or GFCI protection but adding a receptacle in an unfinished basement room would require a GFCI even if no water present.  The outlet can be directly adjacent to the equipment no spacing is required no covers or anything else is required by the national electric code.
Answer: Check the load on the bedroom outlet to make sure it will handle the water filtering system. No problem piggybacking off that outlet. Yes, the first outlet needs to be GFIC and the second outlet needs to be GFIC protected by connecting it to the load terminals of the GFIC outlet. good luck
Comment: The bedroom doesn't require a GFCI NEC 210.8.A.5. Unfinished portions or areas of basement not intended as habitable rooms require GFCI
Comment: Yes, I'm aware of that. The first outlet in the double duplex needs to be a GFCI and the second outlet can be protected from it.
Comment: I read it differently the first time and see your point after rereading, if there are 4 outlets in the new room protecting the second set from the load of the GFCI will work. I was thinking the OP was tapping a duplex bringing the tap to the new room and that was the only outlet , but the OP did say double duplex +
Answer: If there's any chance of moisture in the room use weatherproof receptacle boxes and UF-B plastic sheathed cable - more abrasion resistance too, so good in a utility room. You can get moisture resistant clamps for the cable that screw directly into the box.
Alternatively you could use EMT and draw separate wires and ground. Again I'd see if there are moisture resistant fittings and boxes available if the room tends to have any moisture.
Check code requirement for distances of outlets - from any permanent fixtures that dispense water, like faucets. Water heaters do have drain fittings, and piping on top.
If the filtration system has a hookup box, you can use a sheathed hookup, typically epoxy coated flexible with (2 or 3 wires & ground) larger gauge wires, such as #10. These are usually used for outdoor appliances like a/c compressors, but I think they're a good choice for many utility appliances, and in some cases are required. They can be purchased at supply houses and possibly at bigbox stores.
Another requirement may be a remote switch or way to remove power from the appliance(s) such as a wire you can unplug or if it's hardwired, it should be attached to a box with a builtin cutoff switch. This allows the appliance to be de-energized locally for service.
Comment: Got to - this one, there is a requirement for an outlet to be within 3' from a basin in a bathroom and an outlet must be within 24" from a sink in a kitchen and it can be directly adjacent or even behind in the case of a large enough space. The time where there is a spacing required is when the outlet is below a sink.  Other than a bath tub / shower the areas inside a house are dry locations and nothing other than a GFCI is needed in this room because it is unfinished in a basement. Finished rooms did not require GFCI/AFCI in the past so their may not be one in the bedroom.
Comment: My comment got two long, please don't make things up. Code scares enough DIY folks away and you have a massive amount of mis-information in your post. If you feel your correct provide code references you might want to review 210.8, 406.5 & 406.9 and brush up on what is and is not required.
Comment: I read this awhile ago, and it makes sense not to have electrical outlets inside the splash zone for sinks. I see NEC varies from this sensible req.  Any positives in the rest of what I wrote or are you only negative? Did you have any positive contributions? I did....


Is there a performance decrease if there are too many columns in a table?

Question: Is there a performance cost to having large numbers of columns in a table, aside from the increase in the total amount of data? If so, would splitting the table into a few smaller ones help the situation?
Comment: Related and helpful:  https://stackoverflow.com/q/1473996/1066234
Answer: I don't agree with all these posts saying 30 columns smells like bad code.   If you've never worked on a system that had an entity that had 30+ legitimate attributes, then you probably don't have much experience.
The answer provided by HLGEM is actually the best one of the bunch.   I particularly like his question of "is there a natural split....frequently used vs. not frequently used" are very good questions to ask yourself, and you may be able to break up the table in a natural way (if things get out of hand).
My comment would be, if your performance is currently acceptable, don't look to reinvent a solution unless you need it.
Comment: Everyone is entitled to have his own opinion. To debase someone because he shares an opinion, that's found in about each book just doesn't seem justified. I've worked on many systems and each and every one of them had tables with more than 30 columns but the smell remains. Just because it's there and in production doesn't make it right.
Comment: Right, I'm working on an ERP developed by oracle having 50+ columns in their most used table.
Answer: I'm going to weigh in on this even though you've already selected an answer. Yes, tables that are too wide could cause performance problems (and data problems as well) and should be separated out into tables with one-one relationships. This is due to how the database stores the data (well at least in SQL Server not sure about MySQL but it is worth doing some reading in the documentation about how the database stores and accesses the data).
Thirty columns might be too wide and might not, it depends on how wide the columns are. If you add up the total number of bytes that your 30 columns will take up, is it wider than the maximum number of bytes that can be stored in a record?
Are some of the columns ones you will need less often than others (in other words is there a natural split between required and frequently used info and other stuff that may appear in only one place not everywhere else), then consider splitting up the table.
If some of your columns are things like phone1, phone2, phone3 - then it doesn't matter how many columns you have you need a related table with a one-to-many relationship instead.
In general, though 30 columns are not unusually big and will probably be OK.
Answer: If you really need all those columns (that is, it's not just a sign that you have a poorly designed table) then by all means keep them.
It's not a performance problem, as long as you

use appropriate indexes on columns you need to use to select rows
don't retrieve columns you don't need in SELECT operations

If you have 30, or even 200 columns it's no problem to the database.  You're just making it work a little harder if you want to retrieve all those columns at once.
But having a lot of columns is a bad code smell; I can't think of any legitimate reason a well-designed table would have this many columns and you may instead be needing a one-many relationship with some other, much simpler, table.
Comment: @snowflake: That's how these things happen, but the bad code smell remains and the data/schema should be examined for potential refactorings.
Comment: I don't understand what 'bad smell' or 'poorly designed' means exept a subjective opinion.... please explain
Comment: I see one reason that I consider legitimate: when loading a legacy or proprietary (indexed or csv) file in a table to leverage the database power in order to exploit it.
Comment: There is indeed some subjectivity in these terms.  "Bad smell" refers to a sign in some code that your application may be poorly designed.  It doesn't necessarily mean it is, but somebody else reading your code is likely to jump to that conclusion.  Poorly designed means not coding something in a sensible or efficient way, using tools how they weren't intended to be used, etc.  In this case it may indicate that you need to reconsider how to normalise the database design.
Answer: Technically speaking, 30 columns is absolutely fine. However, tables with many columns are often a sign that your database isn't properly normalized, that is, it can contain redundant and / or inconsistent data.
Answer: 30 doesn't seem too many to me. In addition to necessary indexes and proper SELECT queries, for wide tables, 2 basic tips apply well:

Define your column as small as possible.
Avoid using dynamic columns such as VARCHAR or TEXT as much as possible when you have large number of columns per table. Try using fixed length columns such as CHAR. This is to trade off disk storage for performance.

For instance, for columns 'name', 'gender', 'age', 'bio' in 'person' table with as many as 100 or even more columns, to maximize performance, they are best to be defined as:

name - CHAR(70)
gender - TINYINT(1)
age - TINYINT(2)
bio - TEXT

The idea is to define columns as small as possible and in fixed length where reasonably possible. Dynamic columns should be to the end of the table structure so fixed length columns are ALL before them.
It goes without saying this would introduce tremendous disk storage wasted with large amount of rows, but as you want performance I guess that would be the cost.
Another tip is as you go along you would find columns that are much more frequently used (selected or updated) than the others, you should separate them into another table to form a one to one relationship to the other table that contains infrequent used columns and perform the queries with less columns involved.
Answer: Should be fine, unless you have select * from yourHugeTable all over the place. Always only select the columns you need.
Answer: 30 columns would not normally be considered an excessive number.
Three thousand columns, on the other hand...
How would you implement a very wide "table"?
Answer: Usage wise, it's appropriate in some situations, for example where tables serve more than one application that share some columns but not others, and where reporting requires a real-time single data pool for all, no data transitions.  If a 200 column table enables that analytic power and flexibility, then I'd say "go long."  Of course in most situations normalization offers efficiency and is best practice, but do what works for your need.
Comment: "for example where tables serve more than one application that share some columns but not others". Bingo! That's exactly my case when I searched for this question. Great that you point this out. One user database is shared by two applications, then yes, add the columns that are needed by both to it. Otherwise you end up taking care of the same columns in two separate tables and that gets messy.
Answer: Beyond performance, DataBase normalization is a need for databases with too many tables and relations. Normalization gives you easy access to your models and flexible relations to execute diffrent sql queries.
As it is shown in here, there are eight forms of normalization. But for many systems, applying first, second and third normal forms is enough.
So, instead of selecting related columns and write long sql queries, a good normalized database tables would be better.
Comment: I read such docs long ago, and i know about them... But as i said, mostly used normalization forms are first three. The rest is not commonly used. My porpose was show some general info about normalization.
And yes it tells about 8, but its really hard to find information about normalization beyond 5th normal form and BCNF and DKNF. But you are right (:
Comment: @mp0int - if you edit your answer, I can remove the downvote - it's currently locked in.


Krull Dimension of a scheme

Question: Can someone give a hint or a solution for showing that a scheme has Krull dimension $d$ if and only if there is an affine open cover of the scheme such that the Krull dimension of each affine scheme is at most $d$, with equality for at least one affine scheme in the cover?
Answer: If $X$ is a topological space and $X=\bigcup_{i\in I}U_i$ is an open cover, then the Krull dimension of $X$ is equal to the supremum of the Krull dimensions of the $U_i$. Call the latter number (which might be $\infty$) $s$. Since $\dim(U_i)\leq\dim(X)$ for all $i$, $s\leq\dim(X)$. For the reverse, let $Z_0\subsetneq Z_1\subsetneq\cdots\subsetneq Z_n$ be a chain of irreducible closed subsets of $X$. Then $Z_0$ must meet some $U_{i_0}$ (because an irreducible space is non-empty), and intersecting with that $U_{i_0}$ gives a chain $Z_0\cap U_{i_0}\subsetneq Z_1\cap U_{i_0}\subsetneq\cdots\subsetneq Z_n\cap U_{i_0}$ of irreducible closed subsets of $U_{i_0}$. The reason the inclusions remain strict is because $Z_j\cap U_{i_0}$ is dense in $Z_j$, so if $Z_j\cap U_{i_0}=Z_{j+1}\cap U_{i_0}$, then taking closures in $X$ gives $Z_j=Z_{j+1}$, which is not the case. Thus $s\geq\dim(U_{i_0})\geq n$, so $s\geq\dim(X)$.
Comment: Very clear proof, Keenan: +1
Comment: Why $Z_j\cap U_{i_0}$ is dense in $Z_j$?
Comment: Dear @user42912, $Z_j\cap U_{i_0}$ is dense in $Z_j$ because it is a non-empty open subset of the irreducible space $Z_j$.
Comment: of course, this is an exercise of Hartshorne's book, thank you. If I'm not asking too much, could give some details why $cl(Z_j\cap U_{i_0})=cl(Z_{j+1}\cap U_{i_0})$ implies $Z_j=Z_{j+1}$?
Comment: The closure of $Z_j\cap U_{i_0}$ in $X$ coincides with its closure in $Z_j$, which is $Z_j$ itself. (If $X$ is a topological space, $F\subseteq X$ closed, and $A\subseteq F$, then the closure of $A$ in $X$ coincides with its closure in $F$.)
Answer: Actually the situation is better than that: for any covering of the scheme $X$ by affine open schemes $X_i$  we have  $dim(X)= sup_i (dim(X_i))$ .
Wait, it is even better : actually this has nothing to do with schemes!
Given a topological space $T$ and any open covering  $(T_i)_{i\in I}$ of $T$ we have for the Krull dimensions $$dim(T)= sup_{i\in I} (dim(T_i))$$
Answer: This basically follows from the fact that dimension is a "local property"; have a look at Lemma 10.2 of this Chapter of the Stacks Project.

Krull Dimension of a scheme


Paired samples t-test or Anova

Question: I have mean response times in ms to either congruent or incongruent implied hand action direction words and required direction of response.  There are four sets of results, two congruous and two incongruous, with a small difference between the means in each paired set.  Is there any reason that I would run a repeat measures Anova to analyse these results or is a paired-samples t-test, run twice for each set of data sufficient, particularly if I then use Cohen's d and confidence intervals?
Answer: The ANOVA would let you test the interaction. That is, it would provide a test of whether the difference between congruous and incongruous differs as a function of direction.

Paired samples t-test or Anova


Replacing an asp control at runtime

Question: I have an existing .NET 1.1 dll that I do not have the source code for. It contains the code-behind for a asp.net page containing various form controls including a third party text editor that I no longer want to use. I want to replace the text editor with a simple asp:Textbox but the existing textbox is baked into the old assembly. How can I override / extend the existing page to use a textbox instead of the old text editor control?
Answer: As far as I'm aware we can't get that textbox replaced with your own without modifying the dll.
If I'm in your place I would have used .net reflector and used same code to recreate the new dll with the textbox functionality which you want to embed.

Replacing an asp control at runtime


Why when I try to download a free app on my iPad it says Tap Continue and Sign In To View Billing Info?

Question: Okay so when I try to download a free app from the App Store it says "Tap Continue And Sign In To View Billing Info". I Searched up how to fix it and I found...."select none for the payment type of credit card " and I did that and it does not have that option!yes I have used a credit card on ROBLOX for ROBUX ....PLEASE HELP ME OUT I'm scared that I might mess up my ipad
Comment: Hi Julissa, and welcome to Ask Different! A couple questions that I'd like you to answer so we can help you to best: Have you tried to purchase something from the app store and had the card declined? **~or~** Is this a new device linked to your Apple ID? What version of iOS are you running?
Answer: Usually, when that happens I open iTunes on my desktop to choose "None" as my payment type. Then when I re-visit my billing info on my device the "None" option is selected and I leave it as that. However, some applications or trials for in-app purchases will require you to enter a credit card to use that service, so that's another issue you may run into if you continue to keep the option "None" in your billing info.


What package provides the "wl" kernel module?

Question: I've found a bug with the "wl" kernel module, and I'd like to report a bug. I'm not sure what package provides it, though.
Answer: Based on this thread, it seems that Broadcom directly provides the wl module. Their code page for it is here: http://www.broadcom.com/support/802.11/linux_sta.php.
It looks like they want you to email support requests to the address provided on that page.


Register 2D image - 3D model

Question: I have 2D pictures of an airplane of a specific model, taken with a simple camera, and a 3D point cloud model of this airplane.
I would like to project the pictures onto the 3D model (cloud of points) based on control points that I manually locate on both ends. This should allow me to calculate distances on the 2D pictures.
Is there a programming library that does this? I program in Python mostly.
Answer: You could easily use OpenCV (https://opencv.org/) to do that. Check out the solvePnP functionality. Here is a demo on head pose estimation.

Register 2D image - 3D model


How can I recover encrypted data from a previous Ubuntu installation?

Question: I tried to upgrade from 10.10 to 11.04 but it crashed. It couldn't mount disk drives so I did a new installation without erasing the previous drives. Now I can't access access-your-private-data.
Comment: I'm guessing by your tag that your old home folder was encrypted?  Just a tip, I know this is stressful, but if you want someone to help you with this you are going to need to be **a lot** more specific with what happened and what errors you are encountering.
Comment: Initially i was working on ubuntu 10.10, then i tried to upgrade to 11.04 throught update manager everything was until it installed all the packages. It stopped suddenly and i only had the option to use the power button and restart. And at the loader it said that the "disk drive for / is not ready or not present" Press S to skip memory test or M for manual recovery, Pressing "S" then gives the message but instead of disk drives it is tmp,manually, have to try the method described here http://goshawknest.wordpress.com/2010/04/16/how-to-recover-crypted-home-directory-in-ubuntu/
Answer: I have this same problem, and discovered ecryptfs-recover-private from Dustin Kirkland's blog. This utility interactively asks for your login password, which I have, and then mounted my old home directory in /tmp/ecrypt.hAsHeD and I am now able to copy out everything I need.
Answer: From @shapr's answer:

I have this same problem, and discovered ecryptfs-recover-private from Dustin Kirkland's blog. This utility interactively asks for your login password, which I have, and then mounted my old home directory in /tmp/ecrypt.hAsHeD

I had to add the directory of my /.Private to make it works:
sudo ecryptfs-recover-private /home/.ecryptfs/david/davidgb/.Private
[sudo] Mot de passe de david :
INFO: Found [/home/.ecryptfs/david/davidgb/.Private].
Try to recover this directory? [Y/n]: y
INFO: Found your wrapped-passphrase
Do you know your LOGIN passphrase? [Y/n] y
INFO: Enter your LOGIN passphrase...
Passphrase:
Inserted auth tok with sig [83f90551aa14b856] into the user session keyring
INFO: Success!  Private data mounted at [/tmp/ecryptfs.Gko7hLsl].


Wiring a SNES Controller to pi3 gpio or tactile switches

Question: I'm looking to build a super pi boy, in the original they use tactile switches. However, I'm not sure how to wire the tactile switches and make them work as a x b y up down left right etc. I'm also looking into cutting up this controller's pcb board https://www.adafruit.com/product/131 like in the super game pi but, would I need an adapter for the snes controller connections? Like the cupcade pcb adapter or other controller adapters. My last option would be to switch over to building a pigrrl 2.
Answer: Instead of building your own controller using tactile switches, you can cheaply buy a USB SNES controller. That's what I have done for my retro-pi setup. You can buy a kit that comes with controller PCB and case.
As you can see below, the buttons are rubber contact based and not tactile.

Here is a deal from Walmart, 2 controllers for $10 + Free shipping.

Overall, tactile switches are not used in mainstream controllers from PS4, Xbox, SNES, NES, any Nintendo, etc. These mainstream controllers use soft switches / buttons with rubber pads.
If you are too inclined to build your own controller, then try to find some non-tactile switches. I'll try to improve this answer if I can find some good switches.


Practice taxonomy

Question: I know there are a lot of practices in many different traditions. Can you redirect me to some source where different types of practice are somewhat classified? I'm not clear how this could be done, but maybe something in the lines of this book?
Comment: This really depends on what tradition your discussing. And I'd really suggest against Amazon.com links... I've changed it to the link from his site.
Comment: I know it is a huge topic as even "mind" is a term not clear between traditions, but maybe someone had gone in the adventure of comparing practices before...
Comment: You could also try [Wisdom Books](http://www.wisdom-books.com/ProductGroupMain.asp?PG=B). They are specialized in Buddhism. Maybe they have an answer for you.
Comment: I think this sort of question is off-topic, in the sense that it doesn't ask a clearly answerable question about Buddhism, asking instead for resources. If you were to change the question to ask specifically for a practice taxonomy, it would then be considered too broad. Either way, I'm thinking it's a bad fit for our site.
Answer: As has been pointed out, this is a vast question, and I doubt it's answerable in anything other than a pile of doctoral theses and then some, but I'll make a small attempt at a piece of it.
I'll point you to one comparative study that could maybe act as a lead in your search. It is "Self-transformation According to Buddhist Stages of the Path Literature" by Jared Lindahl. In it Lindahl compares in some detail the path described by Buddhaghosa in "The Path of Purification" (the Visuddhimagga), with an ostensibly different path described by Dakpo Tashi Namgyal in "Mahāmudrā: The Moonlight".
Obviously this is very far from a complete taxonomy as you were asking, but it at least shows that a comparison/contrast can be done. All you have to do now is repeat what Lindahl has done, for every known practice area, and voila! Let us all know when you're done ;-)
P.S. Dan Ingram talks about connections between the different practice "maps" (as he calls them), in his "Mastering the Core Teachings of the Buddha". Ingram himself says his primary influence is Therevadan practices, especially those taught by Mahasi Sayadaw, but he seems to know enough to be able to make linkages between various attainments outlined on that path and similar attainments on other paths. So that book is (with my usual "don't get too caught up in the Dark Night panic" caveat) is worth a look.
Answer: The book that I  have read that comes closest to a comparative study of meditation practices is the Meditative Mind by Daniel Goleman. It compares meditation techniques from a variety of different religions and non-religious traditions. Obviously there is a lot of information about Buddhist techniques (Zen. Tibetean etc..) but it goes into Hindu techniques, Sufism, Christian and secular such as Transcendental Meditation. It covers the dhyanas and the differences between concentration and insight practices.
It was out of print when I bought it but it's easy to pick up a used copy - a quick google picks up loads. It's been a while since I read it but I remember liking it. Flicking through it again now is tempting me to read it again.
EDIT
Sorry - I've noticed that you have asked for practices in general not meditation practices. But I'll leave this answer standing as perhaps part of the answer. It is still a good comparative study

Practice taxonomy


Rigid Body Chain and Pendant Breaking

Question: all,
I am trying to create a chain and drape it naturally over a mannequin rather than position each individual link. I have a pendant attached to the chain, and when I bake the scene the pendant breaks from the chain.
Both chain links and pendant are active rigid body types, and I have connected everything as points chained by distance. Everything weighs the same. The chain links stay together but the pendant falls off. Is it the shape of the pendant that's causing this to happen?
Any pointers would be appreciated. I have attached the blender file here: https://drive.google.com/open?id=1zY8HsxUqkCWdc1UAhz5zpmV4YiJ4LTnM
Answer: I managed to solve this problem by joining the pendant and the two closest links then connecting that object with the adjacent links.

Rigid Body Chain and Pendant Breaking


MOSFET pinchoff reduce current

Question: I understand that in an n channel MOSFET as Vgs increases, electrons are attracted towards the gate forming an n channel. These electrons are responsible for the conduction of the MOSFET. As Vds crosses saturation voltage a pinch-off occurs. This pinch-off results in channel tapering and the n channel effectively reduces. My question is if tapering occurs, shouldn't the available charge carriers in the channel reduces thus reducing current flow?
Answer: No, current flow does not drop in saturation. It increases very slightly as VDS increases. I think you already know this and are just wondering where the carriers go since the channel is pinched off.
Basically, they spread out in the two dimensions at right angles to the channel so that conduction is no longer just taking place through a narrow channel.
Comment: If they spread out at right angles and if I imagined it right, then the carriers are still in the tapered regions. Please correct me if wrong.
Comment: Yes, that's correct. You might be confused about how the current can flow, given that that there is a region with no mobile carriers. The answer is that the electric field across the depletion region can still move current across the region. This will explain much better than I possibly can: https://electronics.stackexchange.com/questions/77198/why-mosfet-pinchoff-occurs
Answer: As the channel current increases, so does the drop across it (the channel is like a resistance), and as a result the drain voltage rises above source voltage. This does start to constrict the channel but as the channel gets pinched the drop gets limited as well and so a form of equilibrium is reached which limits the maximum current the channel can carry.

MOSFET pinchoff reduce current


Instituting a suit in another jurisdiction

Question: Can I institute a lawsuit in the US where both parties live, but for a contract of sale of real estate signed in a foreign country by representatives of the parties living in the U.S.?
Answer:
Can I institute a lawsuit in the US where both parties live, but for a contract of sale of real estate signed in a foreign country by representatives of the parties living in the U.S.?

It depends on (1) whether the contract itself indicates where disputes shall be litigated, and (2) legislative constraints (if any) regarding the nature of the claim(s) and relief sought in your jurisdiction. Both items are missing in your description.
If the contract has no constrains on the forum for litigation, then by default the parties are allowed to file suit in the US. After all, a contract aims to enforce the parties' intent and rights, not "those of the property". The latter do not even exist.
In re Estate of Wilson (CA appellate court, unpublished, March of 2020) reflects that intent is what matters, regardless of the location of real estate:

[E]ven if Paul erroneously believed he had real properties outside of
the United States, the broad, sweeping language of his will makes
clear that Paul intended to give Gonzalez all of his property.

State law of the parties' jurisdiction might prevent the court from deciding controversies that involve claims & relief of certain nature, though. As an example, O[regon]RS 14.030 provides:

When the court has jurisdiction of the parties, it may exercise it in
respect to any cause of action or suit wherever arising, except for
the specific recovery of real property situated without this state, or
for an injury thereto.

However, the fact that the claim involves real estate does not preclude altogether a court's jurisdiction. As an example, in Cron v. Zimmer, 296 P.3d 567, 572 (2013) the court asserted jurisdiction because "plaintiffs primarily seek money damages" and "[c]laims for personal property, such as money damages, are transitory in nature, and ORS 14.030 does not prohibit the exercise of jurisdiction".
Nor does ORS 14.030 preclude "relief [which], if granted, would act only on the person of defendant, and not directly on the title to the [real estate] rights" (Id. at 572, brackets added). That is because

[t]he court * * * is without power to act directly upon the titles [of
real property outside of Oregon], but it is well settled that in a
proper case equity may enter its decree in personam and thereby
accomplish indirectly the desired result.

Id, at 573 (citations omitted, italics in original).
Comment: Care to articulate the reason(s) or pretext for the downvote?


Brussels International connection time

Question: Flying from Madrid to New York we have a 1h 50min. Transfer time. Do you think this is enough time? Flight arriving in Brussels at 08:40 and leaving to JFK at 10:30. Both flights with Brussels Airlines.
Comment: Was it bought as one ticket? Or did you buy two different tickets?
Comment: It's plenty of time, as long as you don't spend two hours in the duty free!
Answer: If you booked the journey as one ticket you are guaranteed to be transported to your final destination (JFK) regardless of whether you make the connection at BRU or not. Indeed, if you miss the connection the airline will re-route you on a different flight.
Having said this, what happens when you land at BRU and have to transfer? You will arrive at gates A (Schengen to Schengen flights). From there you'll have to go through passport control to exit the Schengen area. This will take some time, especially due to the recent events at BRU. Once you are done with the passport checks, you'll have to transfer to gates T or B depending on where your flight is leaving from. Both transfers are done by walking, and the way is clearly signposted. Gates A and T are close to each other, gates A and B are approximately 1km apart.
I think that 1h50m should be plenty of time to do this. Some claim that the minimum transfer time at BRU is 45-60 minutes. If you get through passport controls swiftly, and don't spend too much time shopping you should make the transfer comfortably.
Answer: Keeping in mind things could be slower at Brussels Airport due to recent events, the minimum transfer time is around 50min (according to Brussels Airlines) so if passport control goes quickly you should be fine with the time you have.
Comment: That's only when entering the airport from the outside. No problems for connecting flights.

Brussels International connection time


Is Kirby a baby in the original "Kirby: Right Back At Ya!"?

Question: In the dub version of Kirby: Right Back At Ya!, Kirby is depicted as a baby, who can only communicate by babbling.  Is this true of the original Japanese version as well, or is it a product of the translation?
Comment: I suspect that not even 4kids would completely erase actual dialogue and replace it with babbling, but I have nothing to back that up.
Comment: Is it stated by a character that Kirby is a baby, or are you inferring that from the babbling? From what I recall, Meta-knight referred to Kirby as a star warrior, which doesn't sound like something a baby could be.
Answer: The babbling is present in both the English and original Japanese versions.  From skimming the first three episodes, Kirby's dialogue seems roughly the same. Other than the babbling, Kirby is able to repeat some words that others say to him. In the first episode, he is able to repeat the names of Tiff/Fūmu and Tuff/Bun in both the English and Japanese versions. In the third episode, however, Kirby repeats "sword beam" in the Japanese version only. The babbling is most likely not a product of the translation.


Showing 0 first posts and 0 late answers since 2 months?

Question: My reputation is 300+. I wanted to review the new questions and answers. Earlier it showed me to review. But presently every time whenever i check, It is showing 0 First Answers and 0 Late Answers. It means all reviewed or what is the issue ?
Comment: Because other users have already complete the review, so queue is empty. Now wait for new posts, keep looking at the review section regularly.
Answer: Review section has following review task with the required reputation

First Posts (You need at least 125 reputation to review First Posts.)
Late Answers (You need at least 125 reputation to review Late Answers. )
Suggested Edit (You need at least 2k reputation to review Suggested Edit Posts.)
Low Quality Posts (You need at least 2k reputation to review Low Quality Posts.)
Close Votes (You need at least 3k reputation to review Close Votes.)
Reopen Votes (You need at least 3k reputation to review Reopen Votes.)

As you can see that only First Post & Late Answers can be done by users who has >= 125 & <= 2K reputation. The number of users are getting increase day by day. So there are lots of users with the same privilege doing the review task for the same two sections. This is the only reason that both of those queue are empty.
You need to be very quick & regularly visit the review section for the same review tasks.
Comment: if you have more than 2k rep you can no longer review first posts or late answers?
Answer: Because there are lots of reviewers who review all the First Answer and Late questions thats why it showing you 0 First Question and 0 Late Answer. So you need to check frequently to review First Question and Late Answers.
Answer: First Posts and Late Answers review posts are reviewed quickly. And every time (may be 10-15 minutes) about 8-10 posts* come in review tasks. So you need to check frequently to review these posts.
* Not sure: writing from my experience.


Empty or truncate table with RedBean PHP?

Question: I'm using RedBean PHP for testing purposes and I like it very much, however I have no idea how I can truncate a table. I can fetch all the beans and delete them, but that seems cumbersome.
Answer: In RedBean 1.3 you can use R::wipe($type) to truncate a table.
Answer: RedBean is just an ORM tool (AFAIK) so if your back-end database is SQL based, you can simply do an SQL statement like: TRUNCATE TABLE yourTable;
To execute queries directly via RedBean
The Adapter
The adapter is the class that communicates with the database for RedBean. This adapter
makes it possible to execute queries to manipulate the database. To get an instance of this
adapter use:
$adapter = $toolbox->getDatabaseAdapter();

from http://www.redbeanphp.com/downloads/redbean.pdf - 1.3
http://www.redbeanphp.com/manual/manual.pdf - 2.0
Comment: after getting the adapter, you'd do: `$adapter->exec('TRUNCATE TABLE yourtable');`
Answer: Wipe a single table like this:
R::wipe($table);

Wipe all tables in an MySQL schema like this:
function CleanAllTables() {
    $tables = R::getCol(' show tables ');
    foreach ($tables as $table) {
        R::wipe($table);
    }
}

MySQL:
TRUNCATE TABLE <table_name>

Executed with the RedBean Adapter
$adapter->exec('TRUNCATE TABLE <table_name>');

this should do the job! :)
Answer: Old question, but for what it's worth, RedBean 4.0+ (and possibly older versions too) makes use of foreign keys when one makes use of the various N-M relational mappings.
So, in this case, in my case, in order to work around this, it was necessary to set foreign key checks to 0.
R::exec('SET FOREIGN_KEY_CHECKS = 0;');
R::wipe('tablename');


Gilbert Strang's video lecture about chaos and Newton's method

Question: I had seen a video lecture of Gilbert Strang online, which was about chaos and Newton's method.  I could not find it again online, could someone help me locate it?  Thanks in advance.
Answer: I don't know where you've looked, but Academic Earth contains a lot of his lectures. In particular, there are 5 of Strang's lecture series here.


Need help identifying a puzzle with a series of rings

Question: Any help identifying this puzzle would be greatly appreciated. My wife's grandfather got this puzzle from a relative, we are looking for any information possible.
Answer: It's the Chinese nine rings puzzle, the goal is to separate the long-shaped metal piece (in the upper part of your photo) from the "main" part (the one with the plastic base and the rings).
I once heard that in the middle ages the mechanism was used as a lock but I wouldn't be so sure about that.
It's a funny puzzle to solve once you find the mechanism, if you need an hint keep in mind that this puzzle is related to

 Binary code
Comment: Well, then it's the Chinese Eight Rings puzzle.
Comment: I see just 8 rings


Bouncing at some points in square wave

Question:
Well I am trying to make RPM and reading steps values 0-24 Volts. but in square wave there are a bouncing point which is illustration with red arrows marked. it makes electrical noise generation and it causes misleading to RPM. I'm using hall effect sensor to read values. what do you think this could be caused by?
Comment: The noise spikes look evenly spaced across time. What is the frequency?
Comment: _"between 200-300"_ is not a frequency.
Comment: The noise is caused by something in your circuit that you haven't told us about. Please draw a complete schematic of your circuit and describe the source of your 24V power. Take a scope image of the noise on the power line.
Comment: @winny Why cannot we favorite comments? I almost spilled my coffee :D
Comment: As uglyoldbob pointed out, the spikes show themselves in every 3.3~3.5 milliseconds. So there should be another source causing something like crosstalk. Please put a complete schematic and -if possible- layout of the circuit. It also better to put how the signal is probed. Because the reference cable may also have picked up some noise from the circuit.
Comment: between 200-300. also it is writen at image left below
Comment: @Atizs The EE equivalent of thirty... speed.
Comment: @RohatKılıç I also think that the reference cable. So now I changing the cable (it is about 80 meter)
Answer: Noise can come from anywhere, most likely due to mutual inductive or mutual capacitance coupling between traces on the PCB or cable and another signal.
The first thing that needs to be done is to determine which frequencies are important to the design. In otherwords, what kind of rise times do you need from the hall effect sensor.
The second thing would be to determine the frequencies from the noise, if the two signals have different frequencies then a filter could be used to block the noise from getting into the hall effect sensor signal.
Another approach would be to prevent the noise from coupling to the signal at all, proper shielding and routing techniques can be used to prevent coupling. Use shielded cables if the sensor is off board and proper routing on the PCB (don't run the traces from the hall effect sensor next to other noisy traces.)
There is an off chance that the noise is coming from the hall effect sensor itself because it is detecting a magnetic field that is changing, if that is the case, then filtering will need to be used to filter out the unwanted noise.
Comment: as I mentioned in the comments above, I suspect cable and change the cable
Answer: You might never get to the source of this glitch. Worse still, other glitches might appear at a later time when other, yet to be determined, noise sources appear. Your best bet is to make the receiver more immune from high frequency noise sources coupling on to the signal. An RC filter could be just the antidote.
The simplest possible  RC filter would be to put a small capacitor from the signal to ground where the signal goes into the microcontroller or RPM detector circuit. Start with small values, i.e. 100 pF and keep increasing the value until the square wave starts to clean up. If you go too large, the edges of the square wave will start to slow down.  The goal is to choose a value that keeps the square wave relatively square but attenuates the noise.
The single capacitor idea assumes that there is some series resistance in the sensor. Adding a parallel capacitor effectively constructs an RC low pass filter.
If adding a single parallel capacitor doesn't work, try adding a series resistor (try 1K) with a parallel capacitor to form an explicit RC filter.

Bouncing at some points in square wave


Difference in perception of unpolarized and polarized light

Question: What is the difference in perception of polarized light and unpolarized light? What difference does polarized light cause to our eyes?
Comment: None as far as I know. This is really a biology question - I'd like to know the answer though! I know that many cephalopods and some fish are sensitive to polarization - I wasn't aware of anything like this in humans but maybe there's still some very faint expression of a gene we picked up 300 million years  ago ...
Answer: There is some evidence of polarization  perception.

Many people are able to perceive
  polarization of light. It may be seen as a
  yellowish horizontal bar or bow-tie shape
  (with "fuzzy" ends, hence the name
  "brush") visible in the center of the visual
  field against the blue sky viewed while
  facing away from the sun, or on any bright
  background. It typically occupies roughly
  3–5 degrees of vision, about the same
  size as the tip of one's thumb held at
  arm's length. The direction of light
  polarization is perpendicular to the yellow
  bar (i.e., vertical if the bar is horizontal).
  Fainter bluish or purplish areas may be
  visible between the yellow brushes (see
  illustration). Haidinger's brush may also
  be seen by looking at a white area on
  many LCD flat panel computer screens
  (due to the polarization effect of the
  display), in which case it is often diagonal.

See, for instance, Haidinger's brush on Wikipedia.
Comment: In practice, Haidinger's brush is relatively hard to see on the blue background of the sky. It's much more prominent on the LCD screens with white background (and actually is also visible on AMOLEDs).
Comment: @Ruslan Yep, I can easily see it on my phone, but never on the sky.
Answer: Our eyes cannot see any difference between ordinary (i.e., unpolarized) and polarized light. You can check it yourself, if you look through a polarizer (for example, some sunglasses have one). All you can notice is that the world gets slightly darker (because you block roughly half the incoming light). In addition, some reflections might be reduced dramatically (that is, after all, one of the main points in using polarizers in sunglasses).
There are, however, other species (e.g., bees, as far as I know) that can see the difference but, unfortunately, nobody has been able to ask them what such a difference looks like...
Comment: So the only significant difference is due to decrease in intensity, and that too because the average value is halved. Thanks!