Migrating a WordPress site from One Hosting Provider to Another?

Question: I have my WordPress site being hosted on a Windows provider and I am moving to another Windows provider. Any gotchas or instructions on how i can smoothly transition from one to another without losing any info?
Comment: Maybe it would also be interesting to get hints on how to minimize downtime or content overlap, with the time needed to transfer database contents and DNS migration. Or should we discuss that at [Pro Webmasters](http://webmasters.stackexchange.com/search?q=migration)?
Answer: Hi @ooo:
Assuming you want to keep the same domain, it's really quite simple. Basically you copy the files using an FTP client by downloading from the old host and uploading to the new one, and then you copy the MySQL database by doing a database dump to a SQL script (this is your "export") and then running the script (and this is your "import".)
The rest are just details:
1.) Use FTP to download all the files from the web root and all its subdirectories of your old hosted web server.
2.) Upload all those same files to the web root of the new hosted web server in the exact same named directories.
3.) Do a full database dump (i.e. export) of your MySQL database as a SQL script.
4.) Create a new MySQL database at your new web host.
5.) Create a user for your MySQL database and set it to have all permissions. Be sure to record the name of the database, of the user and of the password.
6.) Import your MySQL database by running the MySQL script in context of your new database.
7.) Next edit your /wp-config.php file on your new server and give set DB_NAME, DB_USER and DB_PASSWORD to your new database name, new database user name and new database user password.
7.) Finally, be sure to change your domain's DNS settings so it uses the name servers from your new web host. You;ll need to wait the timeout for the DNS cache to clear and the addresses to propagate (typically it only takes a few hours but it can take up to 48 before your new site is accessible.)
Thats about it.  If you need more specifics be sure to give a lot more details about your new host including minimally the name and website of your new host and if possible what type of control panel they offer for you to administer your site (i.e. CPanel or something else?)
Answer: The main gotcha when changing servers are hard-coded urls and file paths WP. They appear:

In the upload path option, under settings / misc (now settings / uploads, if memory serves), on old WP installs.
In attachment meta data, on very old WP installs.
In your htaccess file, and possibly rewrite rules, if your site lives in a subfolder.
In the site URL and home URL options, under settings / general.

I generally recommend to turn permalnks off before creating the db dump, to avoid the 3rd issue.
The 4th issue prevents you from logging in, and can be fixed from the wp config file, if your site changes URL, by adding two lines to wp-config.php:
define('WP_HOME', 'http://domain.com');
define('WP_SITEURL', 'http://domain.com');
Mind trailing slashes in both defines.
The first issue's symptom is that you'll get permission errors when uploading files. It is fixed by making the upload path empty, so that WP uses the default value.
The second issue is only fixed by mass editing the database. But again, it's only valid for very very old data.
The rest is like Mike said...
Answer: Follow this codex page: http://codex.wordpress.org/Moving_WordPress#Moving_WordPress_to_a_New_Server
Answer: So to come back and answer my own question and hopefully help someone else, the permalinks are easily rewritten by changing the permalink scheme in Settings > Permalinks.  Change it, then change it back and your .htaccess file will be fixed.
The 2nd problem, the warning message, was a plugin that wrote a static link when I installed it.  I deactivated, then reactivated it and it did the trick.
edit: thanks Lisa, just saw you there!
Answer: I use BackupBuddy (http://pluginbuddy.com) for all my migrations. It's a premium plugin and it's not perfect but it's much better than anything else I've found.
Answer: @Nick - I had the same problem where the main page loaded but none of the links. I changed Permalinks from Custom to Default and then it worked. I changed back to my custom settings later, and all worked out.


Proof of the time-independent Schrödinger equation

Question: I have a question regarding the proof of the time-independent Schrödinger equation.
So if we have a time-Independent Hamiltonian, we can solve the Schrödinger equation by adopting separation of variables method:
we write our general solution as $ \psi(r,t) = \psi(r)*f(t)$ and we get to the two equation : one for the f(t) and one for the $\psi(r)$.
$$
f(t)=e^{-\frac{i}{\hbar}Ht}
$$
and
$$
H\psi(r) = E\psi(r)
$$
Books in general refer to the second equation as the TISE and it is seen as an eigenvalue problem for the hamiltonian, in order to find the stationary states.
Now what i don't understand is why we see that equation as an eigenvalue problem for the hamiltonian, since we have a wave-function $\psi(x)$ which is supposed to be eigenstate for H. So if $\psi(x)$ is eigenstate for H, it means that H is diagonal in coordinate basis, but i know it's not true since H has the term $\frac{P^2}{2m}$ in it, which is not diagonal in coordinate basis.
Where am i wrong??
Thank you very much
Comment: $H$ isn't diagonal in coordinate basis, but in the $\psi(r)$ Eigenbasis you're computing...
Comment: ok thank you it deals with $\psi(r)$ and not the coordinates actually. But why are we sure that $\psi(r)$ is eigenfunction of $H$? When i separate the variables i just say i have a function $f(t)$ and a function $\psi(r)$, it can be any function to be determined
Answer: Start with the time-dependent Schrödinger equation
$$ \hat H \Psi(r, t) = i \hbar \partial_t \Psi (r, t). $$
Using the ansatz $\Psi(r,t) = \psi(r) f(t)$ yields
$$ f(t) \hat H \psi(r) = i \hbar \psi(r) \partial_t f(t)$$
and, via the standard separation of variables trick,
$$ i\hbar\frac{\dot f(t)}{f(t)} = \text{const} = \frac{\hat H\psi(r)}{\psi(r)}; $$
the two sides are equal, but the LHS depends only on $t$ while the RHS depends only on $r$, so they each have to be constant.  Let us call this constant $E$.  Then, for the time-dependent part, we get
$$ \dot f(t) = -i \frac{E}{\hbar} f(t) $$
Which is manifestly solved by
$$ f(t) = \exp\left\{-i \frac{E}{\hbar} t\right\}. $$
For the spatial part, we find the time-independent Schrödinger equation
$$ \hat H \psi(r) = E \psi(r), $$
which as you observe can be viewed as an eigenvalue equation for $\hat H$.  This motivates the choice of name for $E$: Physically, the eigenvalue of the Hamiltonian is the energy.


Block properties, attributes and settings

Question: Reading the Gutenberg Handbook about the new Block architecture in WordPress, I've come across references to "properties", "attributes" and "settings" for the blocks. As there's a lot to read, I've lost track of what the differences are between them. A top level overview would be helpful.
Answer: Settings is what you define in registerBlockType() in the block.js file. Here you have to add most basic settings like title:, category: and icon:. (Handbook link).
Attributes are optional, also in registerBlockType(). You can extract values from markup i.e. for saving the block content (Handbook link).
Properties get passed from the editor. You can find them in the edit: and save: function. Here you can call the optional attributes like 'props.attributes' (Handbook link).
Maybe it's not the best explanation, but I hope you get an idea. ;o)


How to show that $\det(AB) =\det(A) \det(B)$?

Question: Given two square matrices $A$ and $B$, how do you show that $$\det(AB) = \det(A) \det(B)$$ where $\det(\cdot)$ is the determinant of the matrix?
Comment: Hint: Show that the formula holds, if $A$ is an elementary matrix. By induction show that it holds if $A$ is a product of elementary matrices. Which cases are not covered by this? Study them separately.
Comment: The proof is not given in your text book?
Comment: @Learner: How do you define the determinant of a matrix? The definition affects what properties we may assume in the proof.
Comment: Well searching on Google gives me this link: - http://www.math.osu.edu/~husen/teaching/571/2_2.pdf
Answer: Let's consider the function $B\mapsto \det(AB)$ as a function of the columns of $B=\left(v_1|\cdots |v_i| \cdots | v_n\right)$.  It is straight forward to verify that this map is multilinear, in the sense that
$$\det\left(A\left(v_1|\cdots |v_i+av_i'| \cdots | v_n\right)\right)=\det\left(A\left(v_1|\cdots |v_i| \cdots | v_n\right)\right)+a\det\left(A\left(v_1|\cdots |v_i'| \cdots | v_n\right)\right).$$  It is also alternating, in the sense that if you swap two columns of $B$, you multiply your overall result by $-1$.  These properties both follow directly from the corresponding properties for the function $A\mapsto \det(A)$.
The determinant is completely characterized by these two properties, and the fact that $\det(I)=1$.  Moreover, any function that satisfies these two properties must be a multiple of the determinant.  If you have not seen this fact, you should try to prove it.  I don't know of a reference online, but I know it is contained in Bretscher's linear algebra book.
In any case, because of this fact, we must have that $\det(AB)=c\det(B)$ for some constant $c$, and setting $B=I$, we see that $c=\det(A)$.

For completeness, here is a proof of the necessary lemma that any a multilinear, alternating function is a multiple of determinant.
We will let $f:\mathbb (F^n)^n\to \mathbb F$ be a multilinear, alternating function, where, to allow for this proof to work in characteristic 2, we will say that a multilinear function is alternating if it is zero when two of its inputs are equal (this is equivalent to getting a sign when you swap two inputs everywhere except characteristic 2). Let $e_1, \ldots, e_n$ be the standard basis vectors.  Then $f(e_{i_1},e_{i_2}, \ldots, e_{i_n})=0$ if any index occurs twice, and otherwise, if $\sigma\in S_n$ is a permutation, then $f(e_{\sigma(1)}, e_{\sigma(2)},\ldots, e_{\sigma(n)})=(-1)^\sigma$, the sign of the permutation $\sigma$.
Using multilinearity, one can expand out evaluating $f$ on a collection of vectors written in terms of the basis:
$$f\left(\sum_{j_1=1}^n a_{1j_1}e_{j_1}, \sum_{j_2=1}^n a_{2j_2}e_{j_2},\ldots, \sum_{j_n=1}^n a_{nj_n}e_{j_n}\right)  =  \sum_{j_1=1}^n\sum_{j_2=1}^n\cdots \sum_{j_n=1}^n \left(\prod_{k=1}^n a_{kj_k}\right)f(e_{j_1},e_{j_2},\ldots, e_{j_n}).$$
All the terms with $j_{\ell}=j_{\ell'}$ for some $\ell\neq \ell'$ will vanish before the $f$ term is zero, and the other terms can be written in terms of permutations.  If $j_{\ell}\neq j_{\ell'}$ for any $\ell\neq \ell'$, then there is a unique permutation $\sigma$ with $j_k=\sigma(k)$ for every $k$.  This yields:
$$\begin{align}\sum_{j_1=1}^n\sum_{j_2=1}^n\cdots \sum_{j_n=1}^n \left(\prod_{k=1}^n a_{kj_k}\right)f(e_{j_1},e_{j_2},\ldots, e_{j_n})  &=  \sum_{\sigma\in S_n} \left(\prod_{k=1}^n a_{k\sigma(k)}\right)f(e_{\sigma(1)},e_{\sigma(2)},\ldots, e_{\sigma(n)})   \\   &=  \sum_{\sigma\in S_n} (-1)^{\sigma}\left(\prod_{k=1}^n a_{k\sigma(k)}\right)f(e_{1},e_{2},\ldots, e_{n})  \\  &=  f(e_{1},e_{2},\ldots, e_{n}) \sum_{\sigma\in S_n} (-1)^{\sigma}\left(\prod_{k=1}^n a_{k\sigma(k)}\right). \end{align}
$$
In the last line, the thing still in the sum is the determinant, although one does not need to realize this fact, as we have shown that $f$ is completely determined by $f(e_1,\ldots, e_n)$, and we simply define $\det$ to be such a function with $\det(e_1,\ldots, e_n)=1$.
Comment: +1. Nice answer! I think the definition of "alternating" which makes your argument work (and which is the classic one) is "$f(B)$ is alternating in $B$ if $f(B)=0$ whenever two columns of $B$ coincide". Of course if $2$ is invertible in the ground ring, this is equivalent to your formulation.
Comment: I am used to seeing multilinear as $$\det\left(A\left(v_1|\cdots |av_i+a'v_i'| \cdots | v_n\right)\right)=a\det\left(A\left(v_1|\cdots |v_i| \cdots | v_n\right)\right)+a'\det\left(A\left(v_1|\cdots |v_i'| \cdots | v_n\right)\right)$$ However, that version can be derived from the version above by noting that $$\det\left(A\left(v_1|\cdots |v_i+(a-1)v_i| \cdots | v_n\right)\right)=\det\left(A\left(v_1|\cdots |v_i| \cdots | v_n\right)\right)+(a-1)\det\left(A\left(v_1|\cdots |v_i| \cdots | v_n\right)\right)$$
Comment: @RishabhGupta Any function that is multi linear and alternating must satisfy f(A)=f(I)det(A). This is because multilinearity let's you express things in terms of f evaluated on matrices where columns are standard basis vectors, and alternating let's you sort the columns. Unless they changed things between editions, this lemma is what Bretscher used to prove the multiplicative property. But if you have a copy of the book, you can just look at his presentation of the subject, which is a fleshed out version of what I have.
Comment: @Pierre-Yves Gaillar: Yes, in characteristic 2, your definition of alternating is the right one, but everywhere else, this equivalent formulation is easier to work with, at least if you want to work algorithmicly/constructively.  I made the tacit assumption that if you want to know the answer to this question, you probably are working in characteristic zero.  If you have algebraic background, a cleaner proof is to take the top wedge of a linear map, recognize $\det$ as the corresponding linear transform between one dimensional spaces, and use functoriality of wedge products.
Comment: @robjohn I usually think of (multi)linearity as two conditions, compatibility with sums and compatibility with scalar multiplication.  Here, setting $v_i=0$ gives scalar multiplication, and $a=0$ gives sums.  Your version is more symmetric, mine is just slightly terser (and superficially, but not actually simpler).
Comment: @Aaron: setting $v_i=0$ doesn't give scalar multiplication without first having that a $0$ column implies a $0$ determinant. That's why I had to do the trick with $v_i+(a-1)v_i$ to get $av_i$ on the left and $\det(A)+(a-1)\det(A)=a\det(A)$ on the right.
Comment: @robjohn you can get $0$ by setting $a=0$ first.  It's all there.  I swear.  No tricks are required.
Comment: @Aaron: setting $a=0$ only gives you$$\det\left(A\left(v_1|\cdots |v_i| \cdots | v_n\right)\right)=\det\left(A\left(v_1|\cdots |v_i| \cdots | v_n\right)\right)$$which is trivial, but does not show that a $0$ column produces a $0$ determinant.
Comment: @robjohn Sorry, typo, meant $v_i'=0$
Comment: @Aaron: Okay, setting $v_i'=0$ and $a=1$, shows that a $0$ column produces a $0$ determinant, then you can set $v_i=0$ to show that multiplying a column by a constant multiplies the determinant by that same constant.  However, I was saying that setting $v_i'=v_i$ and $a=k-1$ shows that multiplying a column by $k$ multiplies the determinant by $k$ all in one step.
Comment: I couldn't find anything related to your statement "any function that satisfies these two properties must be a multiple of the determinant" in Bretscher's linear algebra book. Also just for clarification, this statement is claiming something different than the fact that "any multilinear, alternating function with f(I) = 1 has to be the determinant" right? Your statement claims that a function which takes matrix B as input, and has the multilinearity and alternating property, has to be a multiple of det(B). please confirm this and also guide me to a proof of the same, i would be very grateful!
Answer: The proof using elementary matrices can be found e.g. on proofwiki. It's basically the same proof as given in Jyrki Lahtonen 's comment and Chandrasekhar's link.
There is also a proof using block matrices, I googled a bit and I was only able to find it in this book and this paper.

I like the approach which I learned from Sheldon Axler's Linear Algebra Done Right, Theorem 10.31.
Let me try to reproduce the proof here.
We will use several results in the proof, one of them is - as far as I can say - a little less known. It is the theorem which says, that if I have two matrices $A$ and $B$, which only differ in $k$-th row and other rows are the same, and the matrix $C$ has as the $k$-th row the sum of $k$-th rows of $A$ and $B$ and other rows are the same as in $A$ and $B$, then $|C|=|B|+|A|$.
Geometrically, this corresponds to adding two parallelepipeds with the same base.

Proof.
Let us denote the rows of $A$ by $\vec\alpha_1,\ldots,\vec\alpha_n$. Thus
$$A=
\begin{pmatrix}
a_{11} & a_{12}& \ldots & a_{1n}\\
a_{21} & a_{22}& \ldots & a_{2n}\\
\vdots & \vdots& \ddots & \vdots \\
a_{n1} & a_{n2}& \ldots & a_{nn}
\end{pmatrix}=
\begin{pmatrix}
\vec\alpha_1 \\ \vec\alpha_2 \\ \vdots \\ \vec\alpha_n
\end{pmatrix}$$
Directly from the definition of matrix product we can see
that the rows of $A\cdot B$ are of the form $\vec\alpha_kB$, i.e.,
$$A\cdot B=\begin{pmatrix}
\vec\alpha_1B \\ \vec\alpha_2B \\ \vdots \\ \vec\alpha_nB
\end{pmatrix}$$
Since $\vec\alpha_k=\sum_{i=1}^n a_{ki}\vec e_i$, we can
rewrite this equality as
$$A\cdot B=\begin{pmatrix}
\sum_{i_1=1}^n a_{1i_1}\vec e_{i_1} B\\
\vdots\\
\sum_{i_n=1}^n a_{ni_n}\vec e_{i_n} B
\end{pmatrix}$$
Using the theorem on the sum of determinants multiple times we get
$$
|{A\cdot B}|= \sum_{i_1=1}^n a_{1i_1}
\begin{vmatrix}
\vec e_{i_1}B\\
\sum_{i_2=1}^n a_{2i_2}\vec e_{i_2} B\\
\vdots\\
\sum_{i_n=1}^n a_{ni_n}\vec e_{i_n} B
\end{vmatrix}= \ldots =
\sum_{i_1=1}^n \ldots \sum_{i_n=1}^n  a_{1i_1} a_{2i_2} \dots
a_{ni_n}
\begin{vmatrix}
\vec e_{i_1} B \\ \vec e_{i_2} B \\ \vdots \\ \vec e_{i_n} B
\end{vmatrix}
$$
Now notice that if $i_j=i_k$ for some $j\ne k$, then
the corresponding determinant in the above sum is zero (it has two identical rows).
Thus the only nonzero summands are those one, for which the $n$-tuple
$(i_1,i_2,\dots,i_n)$ represents a permutation of the numbers $1,\ldots,n$.
Thus we get
$$|{A\cdot B}|=\sum_{\varphi\in S_n} a_{1\varphi(1)} a_{2\varphi(2)} \dots a_{n\varphi(n)}
\begin{vmatrix}
\vec e_{\varphi(1)} B \\ \vec e_{\varphi(2)} B \\ \vdots \\ \vec
e_{\varphi(n)} B
\end{vmatrix}$$
(Here $S_n$ denotes the set of all permutations of $\{1,2,\dots,n\}$.)
The matrix on the RHS of the above equality is the matrix
$B$ with permuted rows. Using several transpositions of rows we can get the matrix
$B$. We will show that this can be done using
$i(\varphi)$ transpositions, where $i(\varphi)$ denotes the number of inversions of $\varphi$.
Using this fact we get
$$|{A\cdot B}|=\sum_{\varphi\in S_n} a_{1\varphi(1)} a_{2\varphi(2)} \dots a_{n\varphi(n)} (-1)^{i(\varphi)} |{B}| =|A|\cdot |B|.$$
It remains to show that we need $i(\varphi)$ transpositions.
We can transform the "permuted matrix" to matrix $B$
as follows: we first move the first row of $B$ on the first place
by exchanging it with the preceding row until it is on the correct position.
(If it already is in the first position, we make no exchanges at all.)
The number of transpositions we have used is exactly the number
of inversions of $\varphi$ that contains the number 1.
Now we can move the second row to the second place in the same way.
We will use the same number of transposition as the number of inversions of $\varphi$
containing 2 but not containing 1. (Since the first row is already in place.)
We continue in the same way.
We see that by using this procedure we obtain the matrix
$B$ after $i(\varphi)$ row transpositions.
Comment: Hi Martin, pheraps I'm missing something, but what you call "a little less known theorem" seems to me just the multilinearity of the determinant as a function of rows, isn't it?
Comment: @pppqqq Yes, that is correct. My experience is that people doing basic course in linear algebra are often not familiar in it. (I have seen some questions where it would be very natural to use this result in the solution; but people chose some different approach instead.) Also, someone who is learning determinants for the first time might not even know what the word *multilinearity* means.
Answer: Let $K$ be the ground ring. The statement holds
(a) when $B$ is diagonal,
(b) when $B$ is strictly triangular,
(c) when $B$ is triangular (by (a) and (b)),
(d) when $A$ and $B$ have rational entries and $K$ is an extension of $\mathbb Q$ containing the eigenvalues of $B$ (by (c)),
(e) when $K=\mathbb Q$ (by (d)),
(f) when $K=\mathbb Z[a_{11},\dots,a_{nn},b_{11},\dots,b_{nn}]$, where the $a_{ij}$ and $b_{ij}$ are respectively the entries of $A$ and $B$, and are indeterminate (by (e)),
(g) always (by (f)).
The reader who knows what the discriminant of a polynomial in $\mathbb Q[X]$ is, can skip (b) and (c).
Reference: this MathOverflow answer of Bill Dubuque.
EDIT 1. The principle underlying the above argument has various names. Bill Dubuque calls it "universality" principle. Michael Artin calls it "The Principle of Permanence of Identities". The section of Algebra with this title can be viewed here. I strongly suggest reading this section to those who are not familiar with this. It is an interesting coincidence that the illustration chosen by Artin is precisely the multiplicativity of determinants.
Another highly important application is the proof of the Cayley-Hamilton Theorem. I will not give it here, but I will digress on another point. That is, I will try to explain why
(*) it suffices to prove Cayley-Hamilton or the multiplicativity of determinants in the diagonal case.
Suppose we have a polynomial map $f:M_n(\mathbb Z)\to\mathbb Z$. Then $f$ is given by a unique element, again denoted $f$, of $\mathbb Z[a_{11},\dots,a_{nn}]$, where the $a_{ij}$ are indeterminates (because $\mathbb Z$ is an infinite domain). As a result, given any $A$ in $M_n(K)$ for any commutative ring $K$, we can define $f_K(A)$ by mapping the indeterminate $a_{ij}$ to the corresponding entry of $A$. That is the Principle of Permanence of Identities. The key to prove (*) will be:
LEMMA 1. Let $f:M_n(\mathbb Z)\to\mathbb Z$ be a polynomial map vanishing on the diagonalizable matrices. Then $f$ vanishes on all matrices.
There are at least two ways to prove this. The reader will perhaps prefer the first one but, (IMHO) the second one is better.
First way: It suffices to prove that the polynomial map $f_{\mathbb C}:M_n(\mathbb C)\to\mathbb C$ is zero. Thus it suffices to prove that the diagonalizable matrices are dense in $M_n(\mathbb C)$. But this is clear since any $A\in M_n(\mathbb C)$ is similar to a triangular matrix $T$, and the diagonal entries of $T$ (which are the eigenvalues of $A$) can be made all distinct by adding an arbitrarily small diagonal matrix.
Second way. Consider again the ring  $R:=\mathbb Z[a_{11},\dots,a_{nn}]$, where the $a_{ij}$ are indeterminates. Let $A$ in $M_n(R)$ be the matrix whose $(i,j)$ entry is $a_{ij}$. Let $\chi\in R[X]$ be the characteristic polynomial of $A$, and let $u_1,\dots,u_n$ be the roots of $\chi$ (in some extension of the fraction field of $R$).
LEMMA 2. The expression $$\prod_{i < j}\ (u_i-u_j)^2$$ defines a unique nonzero element of $d\in R$, called the discriminant of $\chi$.
Lemma 2 implies Lemma 1 because $R$ is a domain and because we have $fd=0$ since $f$ vanishes on the diagonalizable matrices, whereas $d$ vanishes on the non-diagonalizable matrices.
Lemma 2 is a particular case of a theorem which says that, given any monic  polynomial $g$ in one indeterminate and coefficients in a field, any polynomial in the roots of $g$ which is invariant under permutation is a polynomial in the coefficients of $g$. More precisely:
Let $A$ be a commutative ring, let $X_1,\dots,X_n,T$ be indeterminates, and let $s_i$ be the degree $i$ elementary symmetric polynomial in $X_1,\dots,X_n$. Recall that the $s_i$ are defined by
$$
f(T):=(T-X_1)\cdots(T-X_n)=T^n+\sum_{i=1}^n\ (-1)^i\ s_i\ T^{n-i}.
$$
We abbreviate $X_1,\dots,X_n$ by $X_\bullet$, and $s_1,\dots,s_n$ by $s_\bullet$. Let $G$ the group of permutations of the $X_i$, and $A[X_\bullet]^G\subset A[X_\bullet]$ the fixed ring. For $\alpha\in\mathbb N^n$ put
$$
X^\alpha:=X_1^{\alpha_1}\cdots X_1^{\alpha_1},\quad
s^\alpha:=s_1^{\alpha_1}\cdots s_1^{\alpha_1}.
$$
Write $\Gamma$ for the set of those $\alpha\in\mathbb N^n$ which satisfy $\alpha_i<i$ for all $i$, and put
$$
X^\Gamma:=\{X^\alpha\ |\ \alpha\in\Gamma\}.
$$
FUNDAMENTAL THEOREM OF SYMMETRIC POLYNOMIALS. The $s_i$ generate the $A$-algebra $A[X_\bullet]^G$.
PROOF. Observe that the map $u:\mathbb N^n\to\mathbb N^n$ defined by
$$
u(\alpha)_i:=\alpha_i+\cdots+\alpha_n
$$
is injective. Order $\mathbb N^n$ lexicographically, note that the leading term of $s^\alpha$ is $X^{u(\alpha)}$, and argue by induction on the lexicographical ordering of $\mathbb N^n$.
EDIT 2.
Polynomial Identities
Michael Artin writes:

It is possible to formalize the above discussion and to prove a precise theorem concerning the validity of identities in an arbitrary ring. However, even mathematicians occasionally feel that it isn't worthwhile making a precise formulation---that it is easier to consider each case as it comes along. This is one of those occasions.

I'll disobey and make a precise formulation (taken from Bourbaki). If $A$ is a commutative ring and $T_1,\dots,T_k$ are indeterminates, let us denote the obvious morphism form $\mathbb Z[T_1,\dots,T_k]$ to $A[T_1,\dots,T_k]$ by $f\mapsto\overline f$.
Let $X_1,\dots,X_m,Y_1,\dots,Y_n$ be indeterminates.
Let $f_1,\dots,f_n$ be in $\mathbb Z[X_1,\dots,X_m]$.
Let $g$ be in $\mathbb Z[Y_1,\dots,Y_n]$.
The expression $g(f_1,\dots,f_n)$ denotes then a well-defined polynomial  in $\mathbb Z[X_1,\dots,X_m]$.
If this polynomial is the zero polynomial, say that $(f_1,\dots,f_n,g)$ is an $(m,n)$-polynomial identity.
The "theorem" is this:
If $(f_1,\dots,f_n,g)$ is an $(m,n)$-polynomial identity, and if $x_1,\dots,x_m$ are in $A$, where $A$ is any commutative ring, then
$$g(f_1(x_1,\dots,x_m),\dots,f_n(x_1,\dots,x_m))=0.$$
Exercise: Is
$$(X_1^3-X_2^3,X_1-X_2,X_1^2+X_1X_2+X_2^2,Y_1-Y_2Y_3)$$
a $(2,3)$-polynomial identity?
Clearly, the multiplicativity of determinants and the Cayley-Hamilton can be expressed in terms of polynomial identities in the above sense.
Exterior Algebras
To prove the multiplicativity of determinants, one can also proceed as follows.
Let $A$ be a commutative ring and $M$ an $A$-module. One can show that there is an $A$-algebra $\wedge(M)$, called the exterior algebra of $M$ [here "algebra" means "not necessarily commutative algebra"], and an $A$-linear map $e_M$ from $M$ to $\wedge(M)$ having the following property:
For every $A$-linear map $f$ from $M$ to an $A$-algebra $B$ satisfying $f(x)^2=0$ for all $x$ in $M$, there is a unique $A$-algebra morphism $F$ from $\wedge(M)$ to $B$ such that $F\circ e_M=f$.
One can prove $e_M(x)^2=0$ for all $x$ in $M$. This easily implies that $\wedge$ is a functor from $A$-modules to $A$-algebras.
Let $\wedge^n(M)$ be the submodule of $\wedge(M)$ generated by the $e_M(x_1)\cdots e_M(x_n)$, where the $x_i$ run over $M$. Then $\wedge^n$ is a functor from $A$-modules to $A$-modules.
One can show that the $A$-module $\wedge^n(A^n)$ is isomorphic to $A$. For any endomorphism $f$ of $A^n$, one defines $\det(f)$ as being $\wedge^n(f)$. The multiplicativity is then obvious.
Comment: +1 for the detailed discussion of permanence of identities, esp. the very cool proof of lemma 1 using the discriminant.
Comment: This seems like a lot of work to prove such a (relatively) simple claim, but as the principle outlined works in such amazing generality, I find that it is truly something worth knowing.
Comment: @Pierre-Yves: Could you please explain why it helps to have different eigenvalues in a triangular matrix in order to prove that it is in the closure of the diagonalisable matrices?
Comment: Dear @Rasmus: Consider the following subsets of $M:=M_n(\mathbb C)$: $T$ the lower triangular matrices, $E$ the matrices with $n$ distinct eigenvalues, and $D$ the diagonalizable matrices. We want to show $\overline D=M$. ["Overline" means "closure", for the usual topology.] There are 2 claims: (1) $T\subset\overline D\Rightarrow\overline D=M$, (2) $T\subset\overline E\subset\overline D$. Please tell me if (1) or/and (2) look unclear to you.
Comment: @Rasmus: I'm using the fact that eigenvectors corresponding to distinct eigenvalues are linearly independent to derive $E\subset D$, and thus $\overline E\subset\overline D$.
Comment: @Pierre-Yves: Thank you very much. Now I understand your reasoning. I didn' realise that matrices with distinct eigenvalues are always diagonalizable. For (1) you are using that $D$ and thus also $\overline D$ is closed under conjugation, I suppose.
Comment: @Rasmus: You're welcome. Yes, I'm using this closure property.
Comment: Terrific discussion and proof,I'm going to bookmark it for future reference when I'm teaching abstract algebra!
Comment: Dear @Mathemagician1234: Thank you very much for your kind comment!
Answer: There are a lot of answers already posted, but I like this one based on the permutations-based definition of the determinant.  It's a definition that is equivalent to other definitions, and depending on your book/background, you can prove the equivalence yourself.  For an $n\times n$ matrix $A$, define $\det(A)$ by:
\begin{align*}
\det(A) & = \sum_{\sigma\in S_n}(-1)^{\sigma}\prod_{i=1}^nA_{i,\sigma(i)}
\end{align*}
where

$S_n$ is the permutation group on $n$ objects
$(-1)^{\sigma}$ is $1$ when $\sigma$ is an even permutation and $-1$ for an odd permutation.

Just apply this to $2\times2$ and $3\times3$ matrices, and you will get familiar formulas.
Now the proof below is a lot of symbol pushing and reindexing, and then a big subset of terms that are grouped together in the right way are seen to sum to zero. I would generally prefer one of the more geometric proofs already offered for this specific question.  But at the same time, as an algebraist, I like to raise awareness of the permutations-based definition.
\begin{align*}
\det(AB) & = \sum_{\sigma\in S_n}(-1)^\sigma\prod_{l=1}^n(AB)_{l,\sigma(l)}\\
& =   \sum_{\sigma\in S_n}(-1)^\sigma\prod_{l=1}^n\left(\sum_{k=1}^nA_{l,k}B_{k,\sigma(l)}\right) \end{align*}
We'd like to swap the inner sum and product.  In general, $\prod_{l=1}^n\left(\sum_{k=1}^mc_{l,k}\right) = \sum_{\bar{k}}\left(\prod_{l=1}^nc_{l,k_l}\right)$, where the second sum is over all $\bar{k}=(k_1,k_2,\ldots,k_n)$ with each $k_l$ in $\left\{1,2,\ldots ,m\right\}$.  Here we have a product of sums with $m=n$. Therefore,
\begin{align}
\det(AB) & = \sum_{\sigma\in S_n}(-1)^\sigma\sum_{\bar{k}}\left(\prod_{l=1}^nA_{l,k_l}B_{k_l,\sigma(l)}\right)\\
& = \sum_{\bar{k}}\sum_{\sigma\in S_n}(-1)^\sigma\left(\prod_{l=1}^nA_{l,k_l}B_{k_l,\sigma(l)}\right) \\
\end{align}
At this point, there are two types of $\bar{k}$ to consider.  Remember, each $\bar{k}$ is an $n$-tuple of integers between $1$ and $n$.  Some $n$-tuples have repeated entries, and some don't.  If $\bar{k}$ has no repeated entries, it defines a permutation $\tau:\{1,2,\ldots , n\}\to\{1,2,\ldots , n\}$ which sends each $l$ to $k_l$.
Suppose $\bar{k}$ has a repeated entry: $k_p=k_q$.  Then we can pair up terms in the inner sum to cancel each other out.  Specifically, pair up each $\sigma$ with $\sigma\cdot(p\;q)$, where $(p\;q)$ is the transposition that swaps position $p$ with $q$.  The contribution of these two terms to the inner sum is
\begin{align*}
& \phantom{{}={}}\pm\left(\left(\prod_{l=1}^nA_{l,k_l}B_{k_l,\sigma(l)}\right)-\left(\prod_{l=1}^nA_{l,k_l}B_{k_l,\sigma((p\;q)l)}\right)\right)\\
&= \pm\left(\left(\prod_{l=1}^nA_{l,k_l}\right)\left(\prod_{l=1}^nB_{k_l,\sigma(l)}\right)-\left(\prod_{l=1}^nA_{l,k_l}\right)\left(\prod_{l=1}^nB_{k_l,\sigma((p\;q)l)}\right)\right)\\
&= \pm\left(\left(\prod_{l=1}^nA_{l,k_l}\right)\left(\prod_{l=1}^nB_{k_l,\sigma(l)}\right)-\left(\prod_{l=1}^nA_{l,k_l}\right)\left(\prod_{l'=1}^nB_{k_{l'},\sigma(l'))}\right)\right)
\end{align*}
where the final product has been reindexed with $l'=(p\;q)l$, and we have made use of the fact that $k_l=k_{l'}$ for all $l$.  The overall difference is clearly zero.  So in the earlier equation for $\det(AB)$, the only terms in the inner sum that need be considered are those where $\bar{k}$ defines a permutation $\tau$.
\begin{align*}
\det(AB) & = \sum_{\tau\in S_n}\sum_{\sigma\in S_n}(-1)^\sigma\left(\prod_{l=1}^nA_{l,\tau(l)}B_{\tau(l),\sigma(l)}\right)
\end{align*}
Reindexing the inner sum with $\sigma = \sigma'\tau$,
\begin{align*}
\det(AB) & = \sum_{\tau\in S_n}\sum_{\sigma'\in S_n}(-1)^{\sigma'\tau}\left(\prod_{l=1}^nA_{l,\tau(l)}B_{\tau(l),\sigma'\tau(l)}\right) \\
 & = \sum_{\tau\in S_n}\sum_{\sigma'\in S_n}(-1)^{\sigma'\tau}\left(\prod_{l=1}^nA_{l,\tau(l)}\right)\left(\prod_{l=1}^nB_{\tau(l),\sigma'\tau(l)}\right)
\end{align*}
Reindexing the final product with $l'=\tau(l)$,
\begin{align*}
 & = \sum_{\tau\in S_n}\sum_{\sigma'\in S_n}(-1)^{\sigma'\tau}\left(\prod_{l=1}^nA_{l,\tau(l)}\right)\left(\prod_{l'=1}^nB_{l',\sigma'(l')}\right)\\
 & = \left(\sum_{\tau\in S_n}(-1)^{\tau}\prod_{l=1}^nA_{l,\tau(l)}\right)\left(\sum_{\sigma'\in S_n}(-1)^{\sigma'}\prod_{l'=1}^nB_{l',\sigma'(l')}\right)\\
 & = \det(A)\det(B)
\end{align*}
Comment: +1 because $\det(AB)=\det(A)\det(B)$ is at heart a formal polynomial identity and this proof makes that explicit.
Comment: @Mathemagician1234 This proof is offered for the sake of variety.
Comment: Very nice proof,but I think it'd be WAY too tough for the typical beginning linear algebra student.
Answer: This isn't strictly an answer to the question because it is not a rigorous argument that $\det(AB)=\det(A)\det(B)$. But for me the idea I will share carries a lot of useful insight so I offer it in that spirit. It is based on the geometric interpretation of the determinant:
Interpreting $A$ as a linear transformation of $n$-dimensional space, $\det(A)$ is the effect of $A$ on $n$-volumes. More precisely, if a set $S$ has $n$-dimensional measure $k$, then the image set $A(S)$ has $n$-dimensional measure $\left|\det(A)\right|k$, i.e. $\left|\det(A)\right|$ times as big. The sign of $\det(A)$ tells you whether $A$ preserves or reverses orientation.
Examples:
Let $n=2$ so we are dealing with areas in the plane.
If $A$ is a rotation matrix, then its effect on the plane is a rotation. $\det(A)$ is positive 1 because $A$ actually preserves all areas (so absolute value 1) and preserves orientation (so positive).
If $A$ has the form $kI$, $k$ positive, then $\det(A)$ is $k^2$. This is because the geometric effect of $A$ is a dilation by a factor of $k$, so $A$'s effect on area is to multiply it by $k^2$.
If $A$ has $1, -1$ on the main diagonal and zero elsewhere, then it corresponds to reflection in the $x$-axis. Here the determinant is $-1$ because though $A$ preserves areas, it reverses the orientation of the plane.
Once you buy this interpretation of the determinant, $\det(AB)=\det(A)\det(B)$ follows immediately because the whole point of matrix multiplication is that $AB$ corresponds to the composed linear transformation $A \circ B$. Looking at the magnitudes and the signs separately: $A \circ B$ scales volumes by $\left|\det(B)\right|$ and then again by $\left|\det(A)\right|$, so in total by $\left|\det(A)\right|\left|\det(B)\right|=\left|\det(A)\det(B)\right|$. I'll let you think about the signs and orientations.
This argument becomes a rigorous proof via a proof of the geometric interpretation of the determinant. How to prove this would depend on what definition is being used for the determinant. If we defined the determinant as the effect of $A$ on $n$-volumes (in the sense above), we would skip the need for this step. (We'd still have to prove that for a linear transformation the effect on $n$-volume doesn't depend on the set; and to avoid circularity we'd need a way to define orientation that didn't depend on the determinant - in my experience many definitions of orientation do depend on it.) On the other hand, if we define the determinant in any of the more usual algebraic ways, we have something left to prove here. But I hope this way of looking at things is useful in any case.
Comment: Actually this proof can be made algebraic using exterior powers. This also works over any commutative ring $R$. If $A : R^n \to R^n$ is $R$-linear, then $\mathrm{det}(A)$ is the unique element of $R$ such that $\Lambda^n(A)(v_1 \wedge \dotsc \wedge v_n)$ scales $v_1 \wedge \dotsc \wedge v_n$ by $\mathrm{det}(A)$. Once this characterization is known (which follows easily from $\Lambda^n(R^n) \cong R$), the multiplicativity is immediate because $\Lambda^n(A \circ B) = \Lambda^n(A) \circ \Lambda^n(B)$.
Comment: I agree that in its 'simple' forms this is far from a proof, but this is by far my favorite way of _explaining_ why $\det(AB)=\det(A)\det(B)$, especially to graphics and game programmers (who are the main folks I talk to about determinants these days).
Answer: using simplifying "$\prod_{a\in A}\sum_{b\in B_a}{h(a,b)}$" I can give this computational proof:
$$\det AB = \sum_{\sigma \in S_n}sgn(\sigma)\prod_{k=1}^n\sum_{i=1}^n{A_{ki}B_{i\sigma(k)}}$$
$$=\sum_{\sigma \in S_n}sgn(\sigma)\sum_{f:\mathbb{N}_n\to\mathbb{N}_n}\prod_{k=1}^n{A_{kf(k)}B_{f(k)\sigma(k)}}$$
$$=\sum_{f:\mathbb{N}_n\to\mathbb{N}_n}\prod_{k=1}^n{B_{kf(k)}}\sum_{\sigma \in S_n}sgn(\sigma)\prod_{k=1}^n{A_{f(k)\sigma(k)}}$$
$$=\sum_{f\in S_n}\prod_{k=1}^n{B_{kf(k)}}\sum_{\sigma \in S_n}sgn(\sigma)\prod_{k=1}^n{A_{f(k)\sigma(k)}}$$
$$=\left(\sum_{f\in S_n}sgn(f)\prod_{k=1}^n{B_{kf(k)}}\right)\left( \sum_{\sigma \in S_n}sgn(\sigma)\prod_{k=1}^n{A_{k\sigma(k)}}\right)$$
$$=\det A \det B$$
Comment: @user59671 I think there is a mistake in the third equality. It should be

$\sum_{f:\mathbb{N}_n\to\mathbb{N}_n}\prod_{k=1}^n{A_{kf(k)}}\sum_{\sigma \in S_n}sgn(\sigma)\prod_{k=1}^n{B_{f(k)\sigma(k)}}$ .

Additionally, I don't understand why we restrict $f$ to permutations, and I don't understand the subsequent equality (where does $sgn(f)$ come from)?
Answer: If $A$ is singular, then $\det(AB)$ and $\det(A)$ are both zero. So, we can suppose that $A$ is non-singular. As $A$ can be row-reduced to the identity matrix, we can find a sequence of elementary matrices,  $E_1, E_2,..., E_s$, such that
$E_1 E_2\cdots E_sA=I$
Hence,
$A = F_1 F_2\cdots F_s$
where $F_i$ is the inverse of $E_i$, and is also an elementary matrix. Now the proof reduces to showing that for an elementary matrix $E$ and an arbitrary matrix $M$, we have
$\det(EM) = \det(E)\det(M)$
It is true because
(i) if $E$ represents a row exchange, then $\det(E)=-1$ and $\det(EM) = -\det(M)$,
(ii)  if $E$ represents the multiplication of the $i$-th row by a non-zero constant $c$, then $\det(E)=c$ and $\det(EM) = c\det(M)$,
(iii) if $E$ represents adding $k$ times row $j$ to row $i$, then $\det(E)=1$ and $\det(EM)=\det(M)$.
Comment: You have assumed $A$ is invertible, for which the rows become linearly independent and you can guarantee the existence of operations which transform the matrix into the identity matrix. You need to consider additionally the case when $\text{rank} A < n$  where $n$ is the size of the matrix.
Answer: (This is actually not an answer, but for some reason it seems I can't make comments. That lil window doesn't appear)
When you have diagonalized matrices, it's just very easy to see that $det(AB)=det(A)*det(B)$.
Since the entries multiply like scalars and the determinant is then the product of all of them. Keep in mind that the determinant doesn't change when doing a basis-transformation.
Unfortunately, not all matrices with $det(a)\neq 0 $ are diagonalizable, so this is no proof. But it may give you a hint why things are the way there are.
Comment: Dear Konstantin, I assume you wanted to make a comment to my answer. Thanks. If you can't make comments for the time being, it's because you don't have enough reputation points. I gave you all the reputation points I could. - I agree that not all matrices are diagonalizable. What I tried to explain in my answer is this: As the function $B\mapsto\det(AB)-\det(A)\det(B)$ is continuous, and the diagonalizable matrices are dense in all the matrices, we're done.
Comment: Thank you. Now it works. I wanted to provide an easy case. For me, such ideas are always helpful to memorize facts.
Comment: I admit not yet having understood your proof, but now I guess I got the idea: so $det(AB)-det(A)det(B)$ equals zero in a dense subset of $B$. Because it is continuous, it's zero everywhere. Cool!
Comment: Exactly! ${}{}$
Comment: This answer is unclear about _which_ matrices can be supposed to be diagonalized. You cannot assume _both_ $A$ and $B$ diagonalized, or you'd have only proved something for commuting matrices. But you can assume (only) $B$ diagonal, and then you can get the result from the multilinearity by columns of the determinant (actually just the mutliplicative part of that).
Comment: @MarcvanLeeuwen, this answer isn't really an answer as it doesn't aim to give a proof for the problem stated above. I just wanted to give an example for the case that both matrices A and B happen to be diagonalized.
Answer: Physics-oriented people might like to prove this statement as follows, using Einstein summation convention and the Levi-Civita symbol $\varepsilon$: For any matrix $A=\{A_j^i\}_{1\leq i,j\leq n}$ (with entries from a commutative ring), we note that the tensor
$$\pi_{j_1j_2...j_n}:= \varepsilon_{i_1...i_n}A_{j_1}^{i_1}...A_{j_n}^{i_n}$$
is antisymmetric w.r.t. any transposition of a pair of its indices, hence $\pi \propto\varepsilon$ and we define the determinant of $A$ as the proportionality constant between $\pi$ and $\varepsilon$. Then $\varepsilon_{i_1...i_n}A_{j_1}^{i_1}...A_{j_n}^{i_1}=(\det A)\varepsilon_{j_1...j_n}$ holds by definition. Consider now the matrix-product $AB=\{A_j^iB_{i}^k\}_{1\leq j,k \leq n}$. We have
$$\det(AB)\varepsilon_{j_1...j_n}=\varepsilon_{k_1...k_n}(A_{j_1}^{i_1}B_{i_1}^{k_1})...(A_{j_n}^{i_n}B_{i_n}^{k_n})=(\varepsilon_{k_1...k_n}B_{i_1}^{k_1}...B_{i_n}^{k_n})(A_{j_1}^{i_1}...A_{j_n}^{i_n})=(\det B)\varepsilon_{i_1...i_n}(A_{j_1}^{i_1}...A_{j_n}^{i_n})=(\det B)(\varepsilon_{i_1...i_n}A_{j_1}^{i_1}...A_{j_n}^{i_n})=(\det B)(\det A)\varepsilon_{j_1...j_n}.$$
Therefore $\det(AB)=\det(A)\det(B)$.
Answer: Friedberg's Linear Algebra offers an axiomatic approach to determinants by showing how to characterize the determinant in terms of three key properties.
Definition. A function $\delta:M_{n\times n}(F)\to F$ is called an $n$-linear function if it is a linear function of each row of an $n\times n $ matrix when the remaining $n-1$ rows are held fixed. $\delta$ is called alternating if, for each $A\in M_{n\times n}(F)$, we have $\delta(A)=0$ whenever two adjacent rows of $A$ are identical.
Theorem. If $\delta:M_{n\times n}(F)\to F$ is an alternating $n$-linear function such that $\delta(I)=1$, then $\delta(A)=\det(A)$ for every $A\in M_{n\times n}(F)$.
To summarize, the three properties are:

The determinant of the identity matrix is $1$.
The determinant changes sign when two rows are exchanged.
The determinant depends linearly on the first row.

Now we sketch the proof of $\det(AB)=\det(A)\det(B)$.
Assume that $A$ and $B$ are nonsingular, otherwise $AB$ is singular, and the equation $\det(AB)=\det(A)\det(B)$ is easily verified. The key point is that we prove that the ratio $d(A)=\det(AB)/\det(B)$ has the three properties. Then $d(A)$ must equal $\det(A)$.
Answer: Elementary proof of $\det (AB) = \det (A) \det (B) $  for square matrices :
For any square  matrix $  $, $ A = PLU$ this can be easily shown using elementary row operations
P is permutation matrix, L lower triangular matrix, U upper triangular matrix.
Using elementary row operations :
$ \det (PB) = \det (B) \det (P) $,
$\det (LB) = \det (L) \det (B) $,
$\det (UB) = \det (U) \det (B) $
Regarding the last 2 identities: You can obtain $ LB $ by performing row additions to the matrix $ G=TB $,  where $ T $ is a diagonal matrix such that $ T_{ii} = L_{ii} $.
Starting from the last row, take each row of $ G $ and add multiples of rows above it to obtain the rows of $ LB $, this implies $ det (LB) = det (TB) =det (T) det (B)= det (L) det (B) $
Similar trick  works for $ UB $ by adding multiples of rows below a given row starting from the first row.
Answer: Fix $B$. Show that all of the pairs $p(A) \colon = (\det(AB), \det(A))$ are proportional. ( " $\frac{\det(AB)}{\det(A)}$ is constant in $A$ "). Indeed, for every elementary matrix $E$ we have
$$p(EA) = \det (E) \cdot p(A)$$
Now use induction and the fact that every matrix $A$ is a product of elementary matrices.


Disable auto-update of Google Chrome

Question: Google Chrome auto-updates itself and its extensions. I don't want Chrome to automatically update itself every time it is run; I only want it to update when it asks for confirmation, like Firefox does. Is this possible?
Comment: This is a great negligence by google. I know they want to keep it simple, but I get mad when my computer suddenly grinds to a halt. No one has answered the question adequately. We need it to check for updates, then ASK before installing them. I might have to write a script for this :S  While I'm complaining, when will someone write an OS with decent IO scheduling, so that the computer DOESN'T grind to a halt when some process uses the disk?
Comment: I doubt there is (or at this rate, ever will be) a way to prevent Chrome from automatically updating. The devs are very hostile to any user feedback and act like it is their own personal project instead of a product that they are being paid to create. Look at [this innocuous request](https://code.google.com/p/chromium/issues/detail?id=165975) to stop updates just in the About page that was immediately shut down.
Comment: Also, be aware that even if you disable the update plugin (in `chrome://plugins`), it will spontaneously re-enable now and then (whenever Google wants). Likewise, deleting the Google Update Windows Scheduler tasks is no good because Chrome keeps recreating them. Instead, just disable them; so far that works… for now.
Comment: Please see [this](https://superuser.com/a/1368064/703781) answer to an actually duplicated question.
Answer: Good. I did that too.
Click on Start, then "Run".
 Type services.msc. Enter password if necessary on Vista or later.
 On the Name column, find "Google Updater Service" or similar.
 Right click it and open Properties.
 For Startup Type, change it to Disabled.
 You may click on the Stop button as well.
 OK and exit all the windws and you're done.
If you want to ever update some day, follow the steps, set the startup back to Automatic, reboot AND Google Chrome will update the next time it is run.
Comment: I also believe there is no confirmation using this method. Stopping the service silently keeps Chrome and other Google products (like Earth) from auto-updating. Every time you install a new google product, they will re-enable the service, so remember to disable the service again before restarting Chrome just after getting the new Google Desktop, Earth or Picasa or something. **Also,** I forgot that extensions update on their own --I have no fix. If you disable an extension, then it will autoupdate when you decide to re-activate it.
Comment: @grawity, "disabled" is hardly ever changed against your orders. Manual makes it easier for you to restart at will later, but many chains of programs and services can silently just nudge parts marked "manual" to start them up as part of other tasks, and field experience shows that even Microsoft's tools leave your changes alone when you've gone and disabled things they callously touch.
Comment: services.msc shows three different 'Google Updater Services' for me: http://i.imgur.com/XSrxv.png - Should I disable them all?
Comment: Thanks, I think there's no GUI option for that confirmation. BTW, will it disable auto updating extensions?
Comment: Why not just set it to "Manual"?
Comment: @galacticninja, good point. Google leaves old updaters there without apparent ill effects, kinda like .Net and the Java runtimes. Shoot them all down!
Answer: If you are on Windows, the article Disable Automatic Update Google Chrome suggests to use regedit to go to the key HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Update and create a string item named DisableAutoUpdateChecksCheckboxValue and set its value to 1.
Otherwise, you could consider switching to Chromium, built upon the same sources as Chrome but with improvements, which doesn't auto-update.
Comment: No such option on Chrome, although [Update Notifier](https://chrome.google.com/extensions/detail/plfbafagepmnjfhgoaakiobjffddcnbd) does warn you *after* the update. You could block the update thru the firewall - I believe update is done via `http://clients2.google.com/service/update2/crx`. You could also find the scheduled auto-update job and disable it.
Comment: Actually, I also use ubuntu. And what I am looking for, is asking my confirmation before updating or an option for disable like firefox. Is there any extensions can do that?
Answer: I managed to find a way to completely stop google chrome from auto
updating itself and you can still re-enable it to update when needed.
Just follow the steps below:

First, you need to find where the google chrome updater is located
(they keep on moving it every once in a while), you can either search
for it with windows search or you can right click on the google chrome
shortcut then hit "properties" and on the shortcut tab hit "Open file
location" the "Update" folder usually is in the google folder just 2
folders back from the location of the google launcher where the
shortcut will bring you.
Make a backup/archive of the "Update" folder using winrar or any
similar application you prefer.
Delete the "Update" folder (I'm not sure if you need to close chrome
first, but to be sure just close any running google application first
including the updater from the task manager if you can.).
Open chrome, then hit on "The Generals" Button?? which is the former
"wrench" icon. and click on the "About Google Chrome" button from the
drop down to see this "Update failed (error: 3)" which will verify that
the updater is no longer working.

Then, in the case that you need to update chrome again just extract the
"Update" folder from step 2 in its proper location (so, make sure that
you note where that is before deleting the folder) and you will be able
to update google chrome again.
Sorry for my english.
Goodluck..
Answer: Go to Start → Run… → enter msconfig → go to Startup Options → disable Google Update and restart the system.

Disable auto-update of Google Chrome


Why does "-ing" go to "-in" in some dialects?

Question: In some English dialects "-ing" is replaced by "-in" (e.g., "taking" to "talkin'").  "ng" ([ŋ]), the velar nasal consonant, is done at the back of the mouth, but "n" ([n]), the alveolar nasal consonant, is done at the front of the mouth. Why would whatever linguistic shift that happened move the sound from the back of the mouth to the front, rather than keeping the new sound also at the back of the mouth?
Comment: Which takes more effort?
Comment: You might consider thinking about this in terms of laxness and centralization.
Comment: There's lots on g-dropping here. Search for it. Here's one: [Character or regional trait and  g dropping?](http://english.stackexchange.com/questions/42386/what-kind-of-human-character-or-regional-trait-does-the-habit-of-the-g-dropping)
Comment: Also related: [-ing vs -in' ending](http://english.stackexchange.com/questions/59653)
Answer: Sorry, this is going to be a bit rambling. TL;DR: As far as I can tell, nobody really knows.
As Peter Shor mentions, the present participle suffix in English originally did not include velar [ŋg], but a coronal [nd] (it was something like -ind). A suffix -ing with a velar consonant did exist, but it was used for forming verbal nouns. (Actually, -ing was itself a merger of an older suffix -ing that appeared on some grammatically masculine nouns, and a suffix -ung that created grammatically feminine verbal nouns.) You can see the difference in the modern German language, where the cognate to the noun (the) warning is (die) Warnung while the cognate to the participle warning is warnend.
For some unclear reason, these suffixes are conflated in the modern English writing system as -ing. The history of their conflation in pronunciation also seems unclear.
I found a Languagehat blog post on this topic ("Dropping the G") and it pointed to a dissertation by Ann Celeste Houston, "Continuity and Change in English Morphology: The Variable (ING)" (1985), that I am currently reading. Houston says the following about the change in spelling from "-ind" to "-ing" in participle forms:

a clear account of the mechanisms of this change is lacking. Views
  range from postulating a shift from [n] to [ŋ], as well as from [ŋ] to
  [n], and there is not a consensus as to whether the final stops were
  present at the time of the replacement of <ind> with <ing>." (36)

On page 3 Houston mentions that Henry C. Wyld (1936) says the variation between /n/ and /ŋ/ is due to non-phonetically motivated change of /n/ to /ŋ/ in some words due to the influence of the spelling -ing. So basically, spelling pronunciation. Although this is probably part of the answer, Wylde's explanation seems incomplete and therefore unsatisfactory to me for the following reasons:

It doesn't explain why the spelling "-ing" ever become standard in the first place
it doesn't explain why some speakers use /n/ in words that etymologically had /ŋ/, such as the nouns "something" or "building"
It seems like it can't explain why we see realizations such as /θiŋkin/ ("theenkeen") where the vowel shows the effects of a sound change (i-tensing) that occurs before /ŋ/ only, not before /n/, but the consonant is realized [n].

I hope I will learn more of the explanation as I finish reading Houston's dissertation. (If anyone else reads it and finds out more before I update this, please feel free to post a separate answer.)
Also, on page 16, Houston says it is not a sound change currently in progress: rather, it is a stable state of variation conditioned by social effects.
I don't think it explains much to appeal to the idea of "effort". For one thing, I don't know how we would quantify "effort". I'm not an expert on phonology or phonetics, but cross-linguistically, there doesn't seem to be much evidence that it is more difficult to pronounce coda [ŋ] than it is to pronounce coda [n]. In fact, a fairly common, and apparently phonetically motivated, sound change is the velarization of all coda nasals, including /n/, to [ŋ]. (See "Vocalic Dorsality in Revised Articulator Theory" (2004) by Darin Howe for some examples.) This makes me doubt that [n] is generally "easier" to pronounce in this position.
Phonologically, I know some people have argued that [ŋ] in English is not a phoneme, but only occurs as an allophone of /n/ before velars, or of /ng/ in certain morpho-phonological environments where [g] is deleted. If this is the case, we might say that word-final [n] in English is structurally simpler than [ŋ], since the former corresponds to one segment while the latter corresponds to two segments (/n/ followed by /g/). And this structural simplicity might cause it to be preferred. I don't know if this is a sensible argument to make, though.
Comment: Surely the argument that [ŋ] is not a phoneme in (modern) English is blown by the simple old test: the words 'sin' and 'sing', for example, being distinguished only by [n] and [ŋ].
Comment: @DavidGarner: The idea is that "sing" is underlyingly something like /sɪng/, which contrasts with /sɪn/ by having /g/ at the end. Similar to how the [ʍ] in words like "where" (for speakers who still have that as a distinct sound from [w]) can be analyzed as a sequence /hw/. I've also heard that "hue" may phonetically be [çuː], but this can be analyzed phonemically as /hjuː/.
Comment: @DavidGarner: Here is a handout I found about the phonemicity of [ŋ] in English: http://linguistics.berkeley.edu/~mikkelsen/ling100/engma.pdf also John Wells wrote this https://books.google.com/books?id=Ty5RoXyTKQsC&pg=PA61&lpg=PA61&dq=is+the+velar+nasal+in+English+/ng/+is+a+phoneme&source=bl&ots=RhS1h8aSDJ&sig=bxD1vn9fJVqRost39HXbU6LZcBw&hl=en&sa=X&ved=0ahUKEwiEkbX8s9vQAhWmq1QKHVjtB7Y4ChDoAQg8MAU#v=onepage&q=is%20the%20velar%20nasal%20in%20English%20%2Fng%2F%20is%20a%20phoneme&f=false
Comment: Fascinating stuff  -  thanks for the link, Sumelic.  But, as a complete amateur, it seems to me that while it's reasonable to spell 'sing' as we do because it was once pronounced that way, the hypothetical Martian analysing English as spoken now would have to conclude that [n] and [ŋ] are separate phonemes.
Comment: @DavidGarner: this kind of analysis seems to me to be overly abstract if it's meant to represent a native speaker's internalized phonology, but that kind of thing is characteristic of "[Generative Phonology](http://lingphil.mit.edu/papers/kenstowicz/generative_phonology.pdf)" in my experience.
Comment: Thanks again, @Sumelic.  That's way beyond my comprehension, but it'll be worth my while picking out what I can.
Comment: Related question: [Origin of "-ing"](http://english.stackexchange.com/questions/13860)
Answer: It's may be the linguistic shift [ŋ] → [n] didn't happen the way you're thinking about it.
In Early Middle English, the participle ended with -inge and the gerund ended with -ende or -inde. In the standard dialect, these merged to form -ing. But it's possible that in some dialects, they merged to become -in'. The influence of these dialects on others might have led to the widespread use of -in' today. See Wikipedia.
The OED says the difference was maintained in Northern England and Scotland well after they merged in Southern England, and that in parts of this area, they are still distinct today (although they're pronounced -in' [ɪn] and -an' [æn]; it's the vowel that is different).
Comment: But, pronunciations like "sumthin" and "theengkeen" show that ng-> n must have occurred for at least some speakers
Comment: @sumelic: ... but possibly just by analogy with the participle/gerund.  I think this shift only happens with unstressed *-ing*. As far as I know, nobody says *mustan'*, *boomeran'*, or *oolon'*.
Comment: That does seem to be the condition. However, it seems like phonetics possibly could play a role as well, in the sense that /ɪ/ is arguably a reduced vowel (so syllables with /ɪ/ are less prominent than syllables with /æ/, /ɑ/ or /ɔ/) and /ɪ/ is a high front vowel, so there might be some phonetic motivation for fronting a following consonant. Not that I've actually seen evidence that the change was phonetically motivated, it just doesn't seem completely implausible to me to imagine that it was.


Threaded QR with column pivoting

Question: My program needs to perform pivoted QR decomposition on tall (e.g. 1e9 by 100) matrices. I run into the bottleneck that the major computational time of my program is spent on doing serial pivoted-QR decomposition, while the node has 20 threads. For some reason I am confined to one node to perform the decomposition, so that distributed strategies such as scalapack will not help. I am wondering if there is any library/package that provides threaded version of pivoted-QR decomposition. Right now my code calls lapack's sgeqp3 subroutine. Thanks!
Answer: The Intel MKL version of sgeqp3 uses multithreads.
I don't know how well it scales to 20 cores, however.

Threaded QR with column pivoting


Upgrading from 100 to 200 amp load centre with 100 amp service shutoff

Question:    I want to upgrade my load centre panel that currently has a 100 amp main breaker w to 200 amp one along with the 100 amp service shutoff. The main is about 20' from the inside 100 amp fused shutoff connected with NMD-7 3/3. The meter base is outside on the opposing wall of the shutoff and is rated 200 amp.  The shutoff and meter base are connected via conduit so i can't easily see the wire gauge.
Do i need to replace the NMD-7 3/3 wire?
Can i replace the main panel with a 200 amp and change the 100 amp service shutoff at a later date?
Comment: Wonderin' aboot his location, eh?
Comment: Welcome to StackExchange.  I'm a little confused.  Are you saying the service shutoff is between the meter pan and the main panel (electrically)?  Does it have overcurrent protection at 100A?  Breaker or fuses?   I am also unclear on your endgame goal. Are you aiming to increase your usable electrical service to 200A, or just like 200A sized panels? (We do too :)
Comment: The breaker panel with 100 amp main is on an inside wall in the cottage due to an addition, It is protected on the other side of the room with a 100 amp fused shutoff which is connected via conduit the outside meter just behind it. The panel has 24 breakers and is full. no room for expansion, tight and a rats nest. I have some immediate plans to do some renovations and add a couple of 15 amp circuits bathroom/bedroom. I likely don't have to go to 200 amps but none of the  bedrooms have any heat source at this time.
Comment: If i every want to make it 4 season i'd likely put those in sometime in the future hence i am thinking of putting in a 200 amp panel. Maybe my best bet is to install a 200amp panel downgrade the main to 100 amps and hold on to the 200 for the future, Or can i just leave the 200 main breaker in the new panel for now knowing the 100 amp fused shutoff will protect an overload scenario -- is that allowed according to code. Hope that helps.
Comment: Where are you on this planet, and what is this NMD-7 cable you're seeing?
Comment: @Harper Is that Federal Pioneer shuttoff a problem? I've seen one before, and I'm pretty sure it uses 100A fuses on each leg, so I'm not sure if that suffers from the same problems as a FPE panel in the US.
Comment: @HariGanti No idea.  I made my comment before he posted any of those pictures or added the detail.   I'm not *enough* of an expert on old service equipment to say for sure.
Answer: You can use a 200 A panel with 100 A service with no problem; it's done quite regularly. You can just put a 100 A main breaker on it (saving the 200 A one it may have come with for later). A lot of times the 200 A panels are cheaper, have more slots, and/or are just physically bigger (easier to work in), which is why they are used even if the service is less than 200 A.
Comment: Ontario, Canada
Comment: Ontario, Canada. The NDM-7 3/3 runs from the inside fused shutoff to the main load centre panel on the other side of the room.


Plotting Multiple Story Lines

Question: Let's say you have multiple lines of events going on at once in a story. Call this a multithreaded plot. Is this common in stories? How would you represent this on paper before drafting?
Comment: What sort of stories / books do you read? Are you writing the same genre(s) / style(s) that you're reading? That should give you some idea of how common it is.
Answer: Multiple story lines are fairly common, and they are necessarily arising when multiple POV characters are separated for a significant length of time.
I would personally differentiate between "action threads" and "full storylines".
An "action thread" is when different characters engage in separate action and not aware of the other's action mostly because of their fast-pacing environment, which limits their observation and communication. An example: in "Star Wars", episode IV climax, Luke Skywalker, Han Solo (and also Darth Vader and Grand Moff Tarkin) each operate in his own "thread". Their limited awareness of the other's location, intention and capabilities was crucial for the overall plot.
However, these "threads" did not create separate storylines, because they serve to make the overall plot converge, not diverge. They merge into one one plotline rather quickly. For separate storylines, we need greater separation of POV characters, with greater separation of their knowledge and experience. An example of that would be separation between Frodo and Sam from Pippin and Merry near the end of "Fellowship of the Ring".
You probably need to answer a couple of questions:

Are your threads just threads, or full storylines?
Do you need to synchronize between those multiple threads?
Answer: Multiple storylines exists in many texts and could possibly be used in most types of stories. The only place where they probably can't happen that easily would be in a first-person narrative.
Multiple storylines can be represented in many different ways. There are two main goals you want to achieve by these representations.

Show and verify the cohesiveness and logical flow of events of each storyline in isolation.
Show and verify the cohesiveness and logical flow of events of the storylines in combination (the complete story).

(1) can be done with any form of list or diagram that shows events in chronological order.
I most often represent (2) as either a table or as a swimlane diagram.
The table would have one column per storyline and one row per time unit (hour, day, week, whatever granularity your story requires). Events on the same row but in different columns would then be chronologically simultaneous.
Tables and swimlane diagrams can, of course, do (1) as well, but the more storylines (or subplots) you have, the more events in the story, the higher the need for seeing each storyline in isolation.
If your story is not chronological you'll also want to view the events in "book order" and chronological order. And verify that they work in both cases.
If you need them on paper I guess you could print them, however. If you want to go the analog path, rather get some form of corkboard, create the swimlanes with yarn or something, and use index cards.
If paper is not a requirement, you could use Scrivener or other similar programs to represent the scenes in a corkboard view where they can be arranged by "label" as swimlanes (see this video on how to do that).
Tables could be created in Word using horizontal orientation and a smaller font (but a bigger screen...)

Plotting Multiple Story Lines


Exclude some keywords or prevent users to search some keywords

Question: How to exclude or prevent users from search below keywords
all, docs, test etc, if users search using these keywords SharePoint search must not display any results.
Comment: Possible duplicate of: https://sharepoint.stackexchange.com/questions/201816/can-you-exclude-words-from-search
Answer: What's the reason for this? If it is to prevent the users from getting their hands on files they shouldn't then it's a no go. There's literally several other way to surface the files other than search.
Answer: While I agree with the answer by Morten K in that there are always ways to get around a keyword exclusion, it does not accurately respond to the question.
You can find a way to run query rules that cause exclusion of certain keywords here: Exclude Keywords from Search
Comment: True - in hindsight it should have been a comment. Out of curiosity can you implement at global query rule or would it need to be set on every single search form in the farm?
Comment: Honestly, I have never tried either as I do not see the point in excluding this way. I would rather exclude based on permissions. However, I would believe that you should be able to exclude in this manner globally as long as someone is not using custom search boxes that are using their own rules.


One-Hot Encoding and Feature Engineering While Avoiding Data Leakage

Question: I have a Pandas dataframe for which I've performed some actions over categorical features:

Feature Engineering
One-Hot Encoding

Let's say that in my dataset I have the features "person_income" and "address_neighborhood".
Feature Engineering
For address_neighborhood, I want to generate a new feature which will be "neighborhood_average_income", which will be simply the average income for people residing in that particular neighborhood.
I'm doing that with Pandas by executing the following:
<code>average_income = df.groupby('address_neighborhood').mean().person_income
df['neighborhood_average_income'] = df.address_neighborhood.apply(lambda x: average_income.loc[x])
</code>
One-Hot Encoding
After creating a new, numerical variable based off my categorical variable, I do some one-hot encoding based on it, which results in a range of new features.
Problem
I'm aware that doing the feature engineering steps described above over the full dataset and then splitting into training and testing sets might lead to data leakage, as I would be exposing the test set to aggregated values of the full dataset.
But doing the steps above for both training and test sets would cause me a problem as well, as I could get a different number of dummy variables resulting from one-hot encoding, and thus leading to different number of columns in the training and testing sets.
Is there a better way to deal with this problem?
Answer: Define the one-hot encoding bucket definitions based on the training set. Use the same bucket definitions for the test set.
Example: your training set has: 1,2,3,1,2,1,5,10
You decide to create buckets:

0
(0 - 2]
(2 - 5]
(5 - 10]
(more than 11]

You can use these buckets for both training and test set, with no further modifications needed for the test set, because the buckets are both mutually disjoint, and cover all possible values.


Row by row streaming of data while waiting for response

Question: I have a WCF service and client developed using C# which handles data transfer from SQL server database on the server to the SQL server database on the client end. I am facing some issues with the current architecture and planning to modify it to an idea I have, and would like to know if it is possible to achieve it, or how best can I modify the architecture to suite my needs.
The Server side database server is SQL 2008 R2 SP1 and client side servers are SQL 2000
Before I state the idea, below is the overview and current shortcomings of the architecture design I am using.
Overview:

Client requests for a table's data.
WCF service queries the Server database for all pending data for the requested table. This data is loaded into a dataset.
WCF Compresses the Dataset using GZIP compression and converts it to byte for the client to download.
Client receives the Byte stream, un-compresses it and replicates the data from the Dataset to the physical table on the client database. This data is inserted row by row since in need the Primary key column filed to be returned to the server so that it can be flagged of as transferred.
Once the client has finished replicating the data, it uploads the successful rows Primary key fields back to the server, and in turn the server update each field one by one.
The above procedure uses a basic http binding, with streamed transfer mode.

Shortcomings:

This works great for little data, but when it comes to bulk data, maintaining the dataset in memory as the download is ongoing and also at the client side as replication is ongoing, is becoming impossible as sometimes the dataset size goes up to 4gb. The server can hold this much data since it's a 32gb RAM server, but at the client side I get System out of memory exception since the client machine has 2gb RAM.
There are numerous deadlocks as the select query is running and also when updating since I am using transaction mode as read committed.
For bulk data it is very slow and completely hangs the client machine when the DTS is ongoing.

Idea in mind:
Maintain the same service and logic of row by row transfer since I cannot change this due to sensitivity of the data, but rather than downloading bulk data I plan to use the sample given in http://code.msdn.microsoft.com/Custom-WCF-Streaming-436861e6.
Thus the new flow will be as:

Upon receiving the download request, the server will open a connection to the DB using snapshot isolation as the transaction level.
Build the row by row object on the server and send it to the client on the requested channel, as the client receives each row object, it gets processed and a success or failure response is sent back to the server on the same method same channel, as I need to update the data on the same snapshot transaction.
This way I will reduce bulk objects in memory, and rely on SQL for the snapshot data that will be maintained in temdb once the transaction is initiated.

Challenge:

How can I send the row object and wait for a confirmation before sending the next one, as the update to the server row has to occur on the same snapshot transaction. Since if I create another method on the service to perform the flagging off, the snapshots will be different and this will cause issues in the integrity of the data in case the data undergoes changes after the snapshot transaction was initiated.
If this is the wrong approach, then please suggest a better one, as I am open to any suggestions.
If my understanding of the snapshot isolation is wrong, then please correct me as I am new to this.

Update 1:
I would like to achieve something like this when the client is the one requesting:
<code>    //Client Invokes this method on the server
    public Stream GetData(string sTableName)
    {
        //Open the Snapshot Transaction on the Server
        SqlDataReader rdr = operations.InitSnapshotTrans("Select * from " + sTableName + " Where Isnull(ColToCheck,'N') <> 'Y'");

        //Check if there are rows available
        if(rdr.HasRows)
        {
            while rdr.read()
            {
                SendObj sendobj = Logic.CreateObejct(rdr);
                //Here is where i am stuck
                //At this point I want to write the object to the Stream
                ...Write sendobj to Stream
                //Once the client is done processing it reverts with a true for success or false for failuer.
                if (returnObj == true)
                {
                    operations.updateMovedRecord(rdr);
                }
            }
        }
    }
</code>
For the server sending i have written the code as Such (I used Pub Sub Model for this):
<code>    public void ServerData(string sServerText)
    {
        List<SubList> subscribers = Filter.GetClients();
        if (subscribers == null) return;

        Type type = typeof(ITransfer);
        MethodInfo publishMethodInfo = type.GetMethod("ServerData");

        foreach (SubList subscriber in subscribers)
        {
            try
            {
                //Open the Snapshot Transaction on the Server
                SqlDataReader rdr = operations.InitSnapshotTrans("Select * from " + sTableName + " Where Isnull(ColToCheck,'N') <> 'Y'");

                //Check if there are rows available
                if(rdr.HasRows)
                {
                    while rdr.read()
                    {
                        SendObj sendobj = Logic.CreateObejct(rdr);

                        bool rtnVal = Convert.ToBoolean(publishMethodInfo.Invoke(subscriber.CallBackId, new object[] { sendobj }));

                        if (rtnVal == true)
                        {
                            operations.updateMovedRecord(rdr);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
            }
        }
    }
</code>
Comment: Two questions that may seem totally unrelated to each other. First, how is the data you're transferring related and are you sending in one table at a time, or an entire entity with all of its dependencies? Second, do you have control of the client server and can you modify the SQL scripts on it?
Comment: To answer your first question: The data being transferred is the data in the SQL tables. Basically what i do is pick a row from the server table, convert that row into my entity, send the entity to the client, and create an insert, update or delete statement based on the data and configurations, and execute the statement at the client side.
The answer to your second question is Yes, the application has full control to the SQL server.
Answer: Just off the top of my head, this sounds like it might take longer.  That may or may not be a concern.
Given the requirement in challenge 1 (that everything happen in the context of one method call), it sounds like what actually needs to happen is for the server to call a method on the client, sending a record, and then waiting for the client to return confirmation.  That way, everything that needs to happen, happens in the context of a single call (server to client). I don't know if that's feasible in your situation.
Another option might be to use some kind of double-queue system (perhaps with MSMQ?) so that the server and client can maintain an ongoing conversation within a single session.
I assume there's a reason why you can't just divide the data to be downloaded into manageable chunks and repeatedly execute the original process on the chunks.  That sounds the least ambitious option, but you probably would have done it already if it met all your needs.
Comment: Is it possible to use MSMQ for the above update? If so can you please guide me on the same, i have not worked with MSMQ as yet. Thanks
Comment: I don't know whether MSMQ can be used for this: I just mentioned it as a possibility.  I have worked only very little with MSMQ.  Sorry I can't be more helpful on that.


+1/+1 counter, where does it go when my adversary bolts it's target?

Question: Vastwood Hydra is on the field, 7/7 atm (7 x +1/+1 counters). My adversary blocks it for combined strength of 7, all creatures in combat die when the damage resolves.
When Vastwood Hydra dies I get to distribute all it's +1/+1 counters among my creatures.
I designate my Kioras follower (2/2) as a recipient of a counter. My opponent decides to shock it for 2 damage (instant).
What I want to know is, what happens? What comes first, the counter or the shock? If the shock comes first and my 2/2 goes to graveyard, does the counter "fizzle" lacking a target, or do I still have a +1/+1 counter to distribute?
Answer: Your Vastwood Hydra comes first if your opponent waits for the ability to resolve.
You distribute the counters upon resolution of the ability. This means that your opponent must choose to Shock your followers, before the Hydra ability resolves. The Hydra's ability doesn't use the word "Target", so you need not declare which creatures get the counters until the resolution of the Hydra's ability. From the cards rulings.

The ability that triggers when Vastwood Hydra dies doesn't target any of the creatures. You can choose to put counters on a creature with protection from green, for example.

You choose how the counters will be distributed when the ability resolves.

Essentially, your opponent must choose what creature to target with Shock while the "distribute Vastwood Hydra's" ability is on the stack. If you have multiple 2/2s, your opponent can only Shock one and you can distribute the counters on the other.
Comment: Nice card. The answer would be completely different if it read "among any number of *target* creatures you control." Both the creatures (601.2c) and the distribution (601.2d) would be picked upon stacking in that case.


Why is my masa mushy?

Question: When I steam my tamales, the masa becomes mushy. What am I doing wrong and how can I prevent this?
Answer: I know this thread is way old but I did just find it It took me years to figure out that it was my meat filling that was too wet, making my tamales take forever to steam.
Answer: I think you're probably either making the masa dough too wet to begin with or you're not steaming them long enough. They should steam until the tamale easily peels away from the husk. The wetter your masa dough is, the longer the tamales will need to steam.
Answer: You also may have put too much water to steam them...
Answer: Something that will help is tearing the leave of the tamales and get tying it around the pot or put a bag on top of the tamales and put tree chili pepper on top of it.
Answer: Okay, so I got really frustrated when my tamales that I worked all day on wouldn't firm up.  I tried a longer cook time ... like 4 hours longer ... and nothing.  Finally, I put around eight in a covered baking dish in the oven at 350 degrees for an hour and they came out perfectly.  Thank goodness.  I thought I was going to have to throw them out.

Why is my masa mushy?


Are questions that do not specify a region considered too broad?

Question: Laws are obviously different around the world. From country to province to territory to state, even from county to county. When asking questions about laws that can have different answers based on region, should you be required to specify your region and tag your country/province/state that your seeking an answer for?
Answer: We certainly should consider them to be too broad. Broad-ness at least seems to me to be the biggest issue we're having right now, aside from the debate on legal advice. There are quite a few questions that are completely unanswerable because they don't specify a jurisdiction.
There may be, of course, situations where a user doesn't know how specific they have to be (for example, many elements of United States law vary by state, and that's not always common knowledge) but at the very least we should require questions to ask about a specific country or countries, unless they're asking about international law.
Comment: could be interesting to have multiple valid answers based on location. Having one question with different answers based on location. But this may require a rework of how the site runs and that may not be in the cards.


How do the Incredibles put on their suits?

Question: The Incredibles' super suits are one-piece, so how do they put them on? Do they have to stick their bodies feet-first through the neck hole? Is there a hidden zipper somewhere?
Comment: @Steve-O The suits are pretty obviously one-piece. When the kids are throwing them around (in *Incredibles 2*), they're one single piece of fabric... that doesn't mean there's not a hidden zipper somewhere, though.
Comment: Is there something in *Incredibles 2* that categorically shows the suits *are one piece?*  (I haven't seen I2 yet, and I don't recall anything suggesting this in I1.)  A two piece spandex suit (shirt and pants) *can* look like one piece while worn, especially when there's a belt, which these suits have.
Comment: In I2 (in the trailers no not a spoiler), Violet holds up her suit as a one-piece, and throws it into the garbage disposal (where it does not get damaged). So we can confirm that at the very least, hers is a one-piece. So it is safe to assume that others have one-piece costumes as well.
Answer: It seems clear that Edna Mode designs suits for each person individually and caters for individual requirements. However, there is no confirmation that any suit is actually only one-piece...but the available evidence is that they are.
When held up they appear as one solid item of clothing.

However, most notable is the suit for Elastigirl

Your suit can stretch as far as you can, without injuring
  yourself, and still retain its shape. Virtually indestructible...yet it
  breathes like Egyptian cotton
Script

So, it seems likely that each suit will stretch as much as is needed to put it on and then shrink back to be form fitting as we see.
We know that Bob's old suit was one-piece but stretched up considerably when he wore it so we must assume the new suit is the same.
Note the size when he holds it in his hand:
Answer: I am answering this based on The Incredibles.
They wear it just like every other superhero. It is just fabric but of an advanced type.
Mr. Incredible has it covered by his regular clothes. See the ending scene of The Incredibles.
Violet's suit is invisible when it comes to contact with her body. So, we can assume that she becomes invisible and changes her clothes.
Helen changes her suit like changing clothes. It is shown in The Incredibles where she goes to a changing room to change her suit.
They put the masks on when there is a need to fight by taking them out of their pockets.
Comment: I think you've sort of missed what the question is asking here... your answer discusses the fact that they wear their suits under their day clothes but the question is asking how do they actually get into the suit in the first place. Being invisible or changing in a changing room doesn't really explain *how* they get into it.
Comment: Also it doesn't really answer the question.
Comment: @ToddWilcox Well... In some dialects (many of them formal) it means something analogous to "the clothes that are being worn", e.g. "evening dress" meaning the clothes you wear in the evening. I read this with its expected meaning, so I can attest that it sounded normal enough to me (though not when I critically analyse it for some reason).
Comment: I think by "dress" you might mean "clothes"? Generally "dress" refers to a specific type of women's clothing. "Clothes" means what everyone wears.
Comment: @ToddWilcox Yes, I mean the clothes.
Comment: @Catija Not everyone are wearing the suits under the clothes. Only Bob does it. It's not explained how they wear it. Regarding how they they put their heads into it, I added a single line which isn't suffice. Each suit's fabric is designed advanced. Lemme add some quotes from the movie. It takes some time. Paulie_D added an answer similar to what I thought. But I will add them anyway.
Answer: May be they are like the spiderman suit from Spiderman homecoming.. you get in the dress and it fits to your body size.


Does Curator's Ward trigger when a creature it enchants and Curator's Ward get removed at (seemingly) the same time?

Question: Let's say you've got Curator's Ward enchanting a historic creature you control, and you target that creature with Portal of Sanctuary. Does the creature and Curator's Ward get returned at the same time, meaning that Curator's Ward's card draw effect doesn't trigger?
Comment: Similar: https://boardgames.stackexchange.com/questions/8399/do-creatures-that-enter-the-battlefield-at-the-same-time-see-each-other-enter
Comment: You can tell they are returned simultaneously by the fact that there's only one instruction (verb).
Comment: Very related (although technically a different situation where the same answer applies): https://boardgames.stackexchange.com/questions/18269/what-happens-when-a-creature-with-whenever-a-creature-dies-dies-simultaneously
Comment: @ikegami The first part of my question set up the context for the second part, but I could've phrased it better, like: Given that the creature and Curator's Ward get returned at the same time, does this mean that...
Answer:
Does the creature and Curator's Ward get returned at the same time?

Yes. They are all returned to your hand simultaneously.

...meaning that Curator's Ward's card draw effect doesn't trigger?

Now this is where it gets interesting. For most triggers, the permanent watching for the trigger event must be on the battlefield just after the event occurs. But for some triggers, this doesn't work. Think about a creature with "When ~ dies, [do something]". If we went by the general rule for this ability, it would never trigger, since just after the event happened the creature is already in the graveyard.
For this reason, some kinds of triggers are given an exception. These triggers "look back in time" and determine if they trigger based on whether the ability existed just before the event happened. Leave-the-battlefield triggers such as the one on Curator's Ward are one kind of such triggers.
This is all to say that even though Ward is returned at the same time as the enchanted creature, its ability will trigger none the less.
Relevant CR:

603.10. Normally, objects that exist immediately after an event are checked to see if the event matched any trigger conditions, and continuous effects that exist at that time are used to determine what the trigger conditions are and what the objects involved in the event look like. However, some triggered abilities are exceptions to this rule; the game "looks back in time" to determine if those abilities trigger, using the existence of those abilities and the appearance of objects immediately prior to the event. The list of exceptions is as follows:

603.10a. Some zone-change triggers look back in time. These are leaves-the-battlefield abilities, abilities that trigger when a card leaves a graveyard, and abilities that trigger when an object that all players can see is put into a hand or library.

Example: Two creatures are on the battlefield along with an artifact that has the ability "Whenever a creature dies, you gain 1 life." Someone casts a spell that destroys all artifacts, creatures, and enchantments. The artifact's ability triggers twice, even though the artifact goes to its owner's graveyard at the same time as the creatures.
Comment: Hmm this may or may not be the case. Normally since Ward leaves as an SBA right after the permanent, it is still on the battlefield to trigger, though it's left the battlefield when the trigger hits the stack. However most triggers that count other creatures going to the graveyard still work on board wipes, when they die at the same time, this may work the same way.
Comment: Nevermind, 603.10a covers this situation perfectly, leaves the battlefield triggers look back in time as the rule says.


"About this Mac" showing wrong year

Question: I bought a new 15" retina MBP earlier this year, with the discrete GPU M370X that was released this year. However, "About this Mac" claims that it's a Mid 2014 model. Is it just a glitch or does anyone else have the same info? It's nothing to worry about, right?
Comment: You should do a better job of hiding your serial number. I can make out most of the characters.
Comment: Where did you buy it from?
Comment: Bought it from the Apple Online store.
Answer: It seems to be a localization bug. Changing the system language to English reports the correct year.
Apple's website and the script bmike linked below return the correct year.
Edit: In MacOS 10.12 (Sierra), it now shows the correct year when Swedish is set as the primary language.
Answer: I'd be curious what you find by plugging the last 4 of the serial number into this script: https://apple.stackexchange.com/a/98089/5472 I've known cases where the serial number was encoded improperly and you'd need to collect your invoice/shipping document and contact the vendor or Apple to make sure you got the hardware for which you paid.
Apple does identify models by the year in which it was originally released. If you walk into an Apple Store and buy a Mac Pro that was made last week, you will still see that it's a 2013 model since they haven't updated that platform since then.
$ curl -s http://support-sp.apple.com/sp/product?cc=F693 | sed 's|.*<configCode>\(.*\)</configCode>.*|\1|'
Mac Pro (Late 2013)

I would guess that you have nothing to worry about and that the marketing number wasn't bumped when your model specifications were upgraded. Especially since you are tracking the GPU, it's unlikely you have a wrong model. If you're really worried, get an ioreg and sysdiagnose and full system information dump to Apple Support and have them verify in writing that you were sold the proper model.
A visit to the genius bar (if convenient) might be the fastest way to have someone look up the service manual and check things since you wouldn't need to send any files in and could get an immediate answer.
Comment: Crazy - this backs up my theory that "Anything you can imagine that might go wrong, you will eventually find that issue in a shipping Apple product" - chalk one up for @pg-robban
Comment: The site reports the correct year. So it's a typo in the localization of the OS files somewhere.
Comment: Thanks for the thorough answer, but luckily the answer was much simpler (see my answer).
Comment: @pg-robban Bonus. Some XML file or JSON document that feeds the web site must have an error or typo... Glad to help.

"About this Mac" showing wrong year


How do the stars in the near-infrared (NIR) radiate?

Question: Let's say we are studying the integrated near-infrared (NIR) light of a distant spiral galaxy. We would expect most of this light to be dominated by red giants stars and dwarfs. I assumed these stars would radiate thermally but a source online states only the mid (MIR) and far (FIR) infrared radiate thermally. Can anyone clarify how objects in the NIR radiate? I would think it would be blackbody radiation but perhaps I am wrong.
Source
Comment: Someone can correct me if I'm wrong, but the way that paragraph is written, I think they're only referring to the region between 0.7 and 1.1 microns, which is only a small part of the near-infrared region. It's also worth noting that you still get thermal emission in this region; it's not like a blackbody spectrum has a gap there. My guess is they mean that the emission in the 0.7-1.1 micron range is dominated by non-thermal sources, but I'm not certain.
Comment: Right, it certainly wouldn't make sense to have a gap in the blackbody spectrum. I'd still like to know how red giants and dwarfs stars radiate in the NIR. Is it primarily thermal emission or spectral line emission or both?
Comment: @HDE226868 "Near-IR" in astronomical contexts usually means 1-2.5 microns, or sometimes 1-5 microns.
Comment: The "0.7 to 1.1 micron" remarks are about a subset of the near-IR. They then move on to talk about longer wavelengths, while still in the "Near Infrared" section. (The idea that stellar radiation in this region is "non-thermal" is still wrong, of course.)
Comment: @PeterErwin I know; I was talking about the subset of the near-IR which the page claims emission is dominated by non-thermal sources.
Comment: @HDE226868 OK, yes, that's straightforwardly confusing and wrong.
Answer: Your source is mistaken. Almost all the radiation we see from stars is "thermal". That is, the radiation arises from material where the occupation of energy states in atoms, molecules and particle speeds is characterised by a temperature. This includes emission from the photosphere, chromospheres and coronae of stars.
In the case of the 1-5 micron emission referred to as "near infrared", that emission is predominantly from the photospheres of stars (both hot stars and cool stars) and it can also arise in warm dust surrounding a star (e.g. a thick, protoplanetary disc).
The only "non-thermal" radiation you get from stars can come at radio and hard X-ray wavelengths. This is associated with the acceleration of charged particles by magnetic fields in the corona.
I also noted another strange statement to the effect that stars fade in the mid and far infrared. The basic physics of blackbody radiation (stars approximate to blackbodies, especially in the infrared) is that they emit at all wavelengths. Whilst the peak of a hotter blackbody would be at shorter wavelengths than a cooler object, the hotter body will be brighter (per unit area) than a cooler body at all wavelengths. i.e., A star is brighter than a planet at all wavelengths, although the contrast will be lower in the mid and far infrared.
Comment: The only thing I can think of is that the source is for some reason referring to thermal radiation *from dust*, which would indeed dominate (spiral galaxy) light in the mid- and far-IR.
Comment: @PeterErwin certainly that is (or could be, depending on the galaxy) true, but all this radiation is thermal. Maybe if one was talking about observing the cores of some active galaxies (BL Lac objects) there could be instances where the NIR emission was non-thermal, but the post is clearly talking about radiation from star in the NIR.
Comment: But then the source also says that mid-IR can only be done from space, which isn't true either. The whole thing is littered with errors (or at least gross simplifications).
Comment: I see that I initially missed the "Source" link. Yes, the bit implying that stellar radiation is "non-thermal" is certainly wrong.
Comment: While it's certainly true that there are a few mid-IR windows in the atmosphere (I've worked with such data!), most of the mid-IR can only be seen from space, which is why satellites (IRAS, Spitzer, Herschel) are so important.
Comment: I've just asked [When thermal infrared space telescopes spot asteroids, are they seeing the body's own thermal emission, or reflected TIR from the Sun?](https://astronomy.stackexchange.com/q/44453/7982)


Where can I get a large number of LEGO bricks cheap?

Question: Yes, I see other people's amazing MOC's all the time, and think, "man, I could totally do that if I had enough bricks." The problem is, I don't really know where to look for a whole bunch of LEGO bricks that aren't in set form. I would really like the pile to include normal and Technic bricks, as well as some specialized parts such as gears, transmission pieces, wheels and tank tracks, but don't need any minifigure parts.
Answer: MOC-ers use BrickLink.com, the Unofficial Online LEGO Marketplace. It is similar to eBay in the sense that buyers and sellers are from all over the world, but BrickLink is only for LEGO. All elements are neatly organized into categories, and every LEGO element ever made is catalogued. Link to BrickLink Catalog Page: http://www.bricklink.com/catalogTree.asp?itemType=P
You can build up your Wanted List, then purchase the pieces you need from various sellers. (By building a Wanted List you can find sellers who have most of the items you need, thus reducing shipping fees.) Most BrickLink sellers have very reasonable prices and excellent service - they are LEGO fans themselves. Just make sure you check their feedback and terms before purchasing.
BrickLink is a MOC-er's heaven. :)


timing belt 96 honda accord vtec

Question: So the other day I was driving and my timing belt broke I tried to turn the key a few times then tore off the valve cover and noticed that the timing belt was broken people have told me the engine might be junk now how do I check
Answer: The simplest way to check is to fit a new timing belt, turn the engine over by hand and make sure it feels free and isn't making any odd noises.  Then do a compression test and see if it's still got compression.
If that all checks out then you should be okay to try and start it.  If not, the only option to you is to pop the cylinder head off and take a look (unless you have access to a bore scope to look inside the engine).
Answer: Check the valve adjustment on all the valves. If they are at or near specification then the engine will be Ok. If it is a four cylinder engine chances are good that it will not have bent any of the valves and will therefore run normally after a new timing belt is installed.

timing belt 96 honda accord vtec