bit-wise operation unary ~ (invert)
The meaning of Bit-wise NOT in Python
If you hash a string using SHA-256 on your computer, and I hash the same string using SHA-256 on my computer, will we generate the same value? Does the algorithm depend on a seed (so we'd both need the same seed) or some other such parameter?  edit:  To clarify, by 'string' I meant 'the same byte input', which as the comments and @ispiro's answer point out, may be different for the same character string depending on the encoding. What does different focal length offer me? I would like to enable the root account on my Ubuntu installation.  I realize the security implications of this. Checking out  and  (and some papers) was a bit difficult for understanding Group Action. The closest to understanding was this part:    I understand the definition of homomorphism (a structure-preserving map between two algebraic structures of the same type). And from what I understand the symmetric group is a group of functions (bijective functions) mapping elements of a set $X$ onto itself.  However I get confused at this line:     ...an action of $G$ on $X$ may be formally defined as a group homomorphism $\phi$ from $G$ to the symmetric group of $X$.   That seems to be the definition of group action, but I am having trouble understanding how to apply that.  What that says to me is it is a homomorphism (function) $f \colon X \rightarrow S$ where $S$ is a set of bijective functions on $X$. That itself seems weird, I thought a group action would result in a number or something related to $\{1, 2, 3\}$ (defined next).  Continuing, if we have a set $X = \{1, 2, 3\}$ and a group $(*,\{4, 5, 6\})$, then the symmetric group of $X$ would be something like $S = \{1 \rightarrow 2, 2 \rightarrow 3, \dots \}$, and $\phi$ would be something like $f : \{4, 5, 6\} \rightarrow S$. That doesn't make sense to me and I feel like I'm interpreting something wrong. I don't see how mapping to a set of functions $S$ will result in an action on the set. Can't boot into Ubuntu in Windows 10 / Ubuntu dual boot How do I re-authorize Quicktime Player to use the microphone when once it has been denied? I wanted to use a USB audio input to record a video, and got something I've never seen before having done this 100 times; it asked "Authorize Quicktime to use the microphone?" I clicked no, because I didn't want it to use the internal mic, I wanted it to use a USB input.  Now, it won't let me get rid of the denial.  I've quit QT, quit &amp; reopened it twice and it still won't let me choose ANY input source. It still says it doesn't have access to the microphone.  Is this a new Mojave 10.14.2 bug or what?  How the heck do I get out of this?  Thanks! What is mirror lockup and what is its primary function? My SLR is equipped with the mirror lockup function. What does it do, and when would I employ such a feature? Is there a simple and clear way to explain the difference between past simple and present perfect? I read (or do I say "have read"?) many rules for when to use the present perfect. I found them complex and hard to understand (or do I say "have found"?). I am finding it hard to apply these rules in real sentences.  Is there a simple and clear way to explain the difference between past simple and present perfect? If there is a simple explanation, please tell it! If there is no simple explanation, please tell why it is so complicated. Maybe if I knew why there is no simple explanation, that would help me understand what work I need to do in order to learn the difference. Why is $\Gamma\left(\frac{1}{2}\right)=\sqrt{\pi}$? Do "twice as high xxxxx as" , "twice as high" and "twice higher" mean the same thing? Calibre stopped working recently. Tried uninstalling and reinstalling. When I open a terminal and call $calibre I get the following error message: Traceback (most recent call last):   File &quot;/usr/bin/calibre&quot;, line 20, in &lt;module&gt;     sys.exit(calibre())   File &quot;/usr/lib/calibre/calibre/gui_launch.py&quot;, line 73, in calibre     main(args)   File &quot;/usr/lib/calibre/calibre/gui2/main.py&quot;, line 543, in main     listener = create_listener()   File &quot;/usr/lib/calibre/calibre/gui2/main.py&quot;, line 514, in create_listener     return Listener(address=gui_socket_address())   File &quot;/usr/lib/calibre/calibre/utils/ipc/server.py&quot;, line 110, in __init__     self._listener._unlink.cancel() AttributeError: 'NoneType' object has no attribute 'cancel'  Do I need to install some dependency that the sudo apt install didn't get? I tried installing via command line and the software installer/updater GUI. I'm on version Ubuntu 20.04.1 LTS. I made sure that my software in general is up to date also. How to implement glob in C# EDIT: As of Java 8, static methods are now allowed in interfaces.  Here's the example:  public interface IXMLizable&lt;T&gt; {   static T newInstanceFromXML(Element e);   Element toXMLElement(); }   Of course this won't work.  But why not?  One of the possible issues would be, what happens when you call:  IXMLizable.newInstanceFromXML(e);   In this case, I think it should just call an empty method (i.e. {}).  All subclasses would be forced to implement the static method, so they'd all be fine when calling the static method.  So why isn't this possible?  EDIT: I guess I'm looking for answer that's deeper than "because that's the way Java is".   Is there a particular technological reason why static methods can't be overwritten? That is, why did the designers of Java decide to make instance methods overrideable but not static methods?  EDIT: The problem with my design is I'm trying to use interfaces to enforce a coding convention.  That is, the goal of the interface is twofold:   I want the IXMLizable interface to allow me to convert classes that implement it to XML elements (using polymorphism, works fine). If someone wants to make a new instance of a class that implements the IXMLizable interface, they will always know that there will be a newInstanceFromXML(Element e) static constructor.   Is there any other way to ensure this, other than just putting a comment in the interface? I keep hearing about tandem breakers, and how they won't work with 240V loads and how they should never be used for a multi-wire branch circuit.  Aside from those issues...  What is a tandem breaker?     (note: they can be thrown independently). I tried this way, I only need to know if this is correct or if there are better ways to solve this:  $2^{1000}$ does not have a factor of $5$ obviously therefore we can assume  $$ 10^{m} &lt; 2^{1000} &lt; 10^{m+1}$$ for some  $m$   Assume $ k = 2^{1000}$, then take log on both sides $\log k = 1000  \log 2 \approx 301.02999 &gt; 301$  Therefore $2^{1000}$ has $302$ digits. So, the question pretty much says it all. I'm on Snow Leopard, and I do a lot of web development, particularly in Rails 3 which makes heavy use of the console.  I've seen some notable bloggers etc. mention Zsh as their preference over Bash, but I don't know what difference it would make.  Could anyone give me a good comparison of what difference there is and what might make one prefer one option or the other? Compare dates in query from IMPORTRANGE and cell for a few days I'm stuck at comparing two dates.  In a big table with dates as columns and products as rows, we want to display the amount of sales per day per product.  What the following query does:   Import our sales via IMPORTRANGE query the specific sales for a given day and product ID return 0 if there is an error (e.g. not found) count the result   This is a working query with the date 2018-03-26 hard coded:  =COUNTA(IFERROR(query(IMPORTRANGE("1OHR0nr_w3oFNNxtMxRwv65xncCBRpK-vV3vvqmHGFPo"; "Sales March!A:K"); "select Col6 where Col6 = '"&amp;$A95&amp;"' and todate(Col11) = date '2018-03-26'"; 0)))  It shows how many sales a specific product has on the specified date.  Now I want the date from a cell in the sheet:  =COUNTA(IFERROR(query(IMPORTRANGE("1OHR0nr_w3oFNNxtMxRwv65xncCBRpK-vV3vvqmHGFPo"; "Sales March!A:K"); "select Col6 where Col6 = '"&amp;$A95&amp;"' and todate(Col11) = date '"&amp;$AR3&amp;"'"; 0)))  But this doesn't work. I tried A LOT of things for the past 3 days but I have no idea if I did that wrong (I'm a beginner) so I'm turning to you. What might be wrong with the date comparison in this section?  "select Col6 where Col6 = '"&amp;$A95&amp;"' and todate(Col11) = date '"&amp;$AR3&amp;"'"  You can see it  in Column AR Row 95 but I can't give edit rights. Apt-get 403 Forbidden, but accessible in the browser In GKP's Concrete Mathematics, there is a useful and interesting feature I would like to see in more books. The bibliography entries include:   a - the page numbers where the book or article is cited in the document. b - a few lines of review of the cited work.   It is a kind of mix between bibliography, index and review.  Are there stable LaTeX packages/BibTeX styles to do (a) and (b) ?  EDIT: I wrote (b) initially as "comments about the work cited". It could be understood as "gathering comments made in the book about the work and reproducing them in the bibliography".  This is not what I meant but this could be something useful for others. How to remove indentation in footnote?