What is a TFS Agile Issue?

Question: With TFS2010 using the "MSF for Agile Software Development v5" process template, I'm having some difficulty in understanding exactly what an Issue is. The most specific documentation I've been able to find is this. Is an Issue a higher-level item for which we will probably generate a Bug for after some investigation in code/requirements? Or is an Issue something different than a Bug because it has not actually a mistake in code but is more of a critical oversight in design (for example, there was never an attempt to create a datepicker for all date fields and this is a UX issue but not really a bug) and therefore a change request of sorts? Or is it something different?
Answer: I think Issue == Impediment
Comment: I think an Issue is "anything that should be addressed". These will include complaints from customers, feature requests, and it will also include impediments that need be addressed. If the issue can be addressed directly, it will just be closed. Say it was the room temperature is too cold, you just address the issue and close it by cranking the thermostat higher. If the issue can not be addressed directly, either because it is a bug, or a feature, it must be addressed by creating a bug report or a task to implement the feature. At which point, you can close the issue.
Answer: An issue is a problem.  After investigation it could become a bug in the software, or a task to change the process and code that supports it.
Comment: I agree. An issue might be for example that certificates are about to expire. Another issue might be that multiple components duplicate functionality and incur maintenance costs in the face of change. Another issue might be some specific risk that should be mitigated. All these are top level cross-company or cross-platform requirements that do not map to user stories.

What is a TFS Agile Issue?


Where do companies announce dividend payouts?

Question: Is there a required report that companies must submit to share upcoming dividend payments? I looked on sec.gov, but couldn't find documents relating to what I'm looking for. I found this PDF that suggests it should be filed, I'm just unsure of what I'm actually looking for, I guess.
Answer: Public companies must abide by SEC rules of fairness and equity in dividend announcements. SEC requires public companies to announce material information publicly in a way that no one can take advantage by trading on non-public information at the expense of other market participants.
Dividends are published in a press release by the company to all investors through the company's website and to the SEC through SEC website in form 8-k. Dividend announcement usually happens at the same time and in the same press release of the company's earnings.
Form 8-k is not exclusive to dividend announcements. Company's file form 8-k to communicate material information to regulators and investors
You can search for all US companies forms on https://www.sec.gov/edgar/searchedgar/companysearch.html
Comment: @GlenSolsberry Companies tend to do the minimum work necessary to comply with regulations, and those regulations are written by lawmakers who tend to have interests in companies.
Comment: Thank you. I'm surprised that there's not a single form that is required to publish this information.
Answer: According to this, companies will send out a financial report to investors announcing dividend payouts.
Comment: I don't see on there where it states that. Can you help me, since I'm struggling today?
Comment: The last sentence under "Date of Record (or Record Date)"


Lighting move with object movement

Question: I'd like to attach a light to a specific object. I used "ctrl j" but it's not permanent. For example a car or street light that I can move around the scene etc. I change my mind a lot.
Answer: Welcome to Blender Stack Exchange!
You'll want to use something known as Parenting to do this. Joining only works if the objects are the same type, and only on certain types of objects, for example meshes.
To use parenting, select the object that you want to be the follower, and then the object that you want it to follow. Press Ctrl+P and choose "Object". Now the follower (child) will be joined to the parent object and follow wherever it moves. You can still move the child object independently as well.
Comment: Worked. Many thanks!

Lighting move with object movement


What's the Difference in meaning between 'to-Infinitive' and subordinate conjunction 'that'?

Question: I'm wondering about 'to-Infinitive' and subordinate conjunction 'that'.
Is there any difference in meaning between following sentences?

I believe him to be honest.
I believe that he is honest.
Comment: I think you should ask your second question separately. It's not going to have the same answer.
Answer: In this case there is no substantive difference. The version with the infinitive is stiffer and more formal.
Note, however, that with believe this equivalence only holds when the complement expresses a current state, with either a stative lexical verb (for example, be in your example) or a perfect or progressive construction.

okI believe (that) he is coming tomorrow.
okI believe him to be coming tomorrow.
okI believe that he has come.
okI believe him to have come.

You cannot use the infinitive version with a verb expressing a past or future event:

okI believe that he came yesterday, but not
∗ I believe him to come yesterday.
okI believe that he will come tomorrow, but not
∗ I believe him to come tomorrow.
Answer: OK so lets call the first sentence (1) and the other one (2).
So, the contrast between sentence (1) and (2) is that in (1) there is to infinitive. However, both (1) and (2) present epistemic commitment to what it is said.
Also, "I believe that he is honest" could be represented with "I know that he is honest".
Last but not least, my dictionary says:
<code>I believed (that) he was honest. = I believed him (to be) honest.
</code>
I hope that I have helped you in some way. :)


DIY Hand Sanitizer Clumping

Question: Hand sanitizer is impossible to find around me and I have 4 family members who are essential and not around a sink or soap during their work day (delivery drivers), and they are out.  I make a lot of soap, shampoo, lotions, things like that and I thought hand sanitizer would be easy - but I was WRONG.  I have 99% anhydrous isopropyl alcohol and aloe vera gel.  Tonight I weighed everything to make it 70% IPA and 30% aloe vera gel.  It formed these solid squishy jelly clumps and didn't form a gel at all.  What am I doing wrong?  I added the IPA in kind of slow, but was stirring the whole time. I saw all these YT videos of people doing this and their gel/IPA combination makes a perfect gel.  HOW?!  I'm thinking about adding some HEC to help thicken it but am not sure to how it will react.  Ideas?
Comment: Sorry, but given the current pandemic I voted to close all questions about *sanitizers* as personal medical questions.
Comment: I think the better method that's not clumpy requires glycerin
Comment: If your delivery drivers don´t finger their nose or eyes, the already very low chance of getting corona via smear infection becomse *zero*. And believe me, if you work outdoors, in a dusty delivery van carrying packages, you have internalised to not rub your eyes before you have washed your hands. DONT PANIC.
Comment: Err, no, handwashing or handrubbing is important, especially if you have regular contact with non porous, high-touch surfaces such as door knockers or buzzers. The risk may be low, and there are other relevant mitigation measures, but having handrub to hand is one of the most effective in this scenario, so seeking to make some is a very sensible precaution and not panic.
Answer: HEC works ok, but it's not that easy to use. You have to hydrate in pure water for a few hours or more, ideally with stirring, and then incorporate the alcohol a little at a time with high shear mixing. You can use a blender, though it will incorporate a lot of air. If you use too much HEC, the "mother" gel (the HEC and water that will become 30% of your final product) will be very firm and it will be difficult to avoid lumps throughout, and the line is very thin between this and ending up with an unusually thin product. When I'm using this, I err on the thin side and use about 0.8% w/w HEC, so the "mother" is 2.67%.
Some other polymers are much easier to work with if you can get hold of them, notably Sepimax Zen aka. GelMaker PH (Polyacrylate Crosspolymer-6). These can be added directly to a 70% isopropanol or ethanol mixture and need no further ingredients to activate or correct the pH afterwards.
I have not tried aloe vera but I think it would be difficult to get a gel with 70% alcohol. I know lots of YouTubers and bloggers are recommending it. Success may depend on what other thickeners have been used in the aloe vera product. I've seen some videos where the result was the extremely thin liquid with a bit of stickiness that you would expect from the recipe.

DIY Hand Sanitizer Clumping


Facebook like not working for Unauthorized Users

Question: I ma implementing a facebook like function for my site using FBML.If click like as facebook  authorized  its working fine .But Whenever i click as unauthorized it pops up for the login and successfully logs in.But it doesnt perform the like operation. I have to click it again to like it.I would appreciate any help.
Answer: I have a feeling that you manually reload a page after log in. It should automatically call like after you login in an authorization popup.


Child of constraint + root motion issue

Question: so i currently have this setup where i have a rig of a character using a spear with a weapon bone which is parented to the root bone of my skeleton. then i also have both left & right hand bone constrainted (child-of) to the weapon bone so that when i animate the weapon bone to do some movements, both of the hands simply follows. it works fine if i don't do anything with the root bone, but once i added root motion stuff, the hand positions simply breaks. i actually know one way to fix it is to bake the animation using visual keying, then adding the rootmotion on the baked animation. but it seems to be such a hassle to do. anyone know the best solution for this?
Comment: why did you parent the spear to the root bone? I just would undo/delete the relationship. If you want really help and not just comments, you should provide your blend file so we can see what you did and help you precisely.
Comment: it's an unreal thing
Answer: Objects inherit the transform of their parent(s), then they transform themselves, then they run through their constraints.  In general, when you use a child-of constraint, you want to use it on an unparented object or bone, because changing transforms of the parent will change the way that the child-of is evaluated.
In this case, for whatever reason, you want your spear parented to the root bone of the character, but to act as an unparented child-of.  That's doable; you just add a layer of abstraction.
Start by making an empty with the same transform as the spear.  Give the empty the same child-of target (and other parameters) that the spear has, but leave the empty unparented.  Now get rid of the spear child-of constraint and instead give it a copy transforms constraint, on all defaults (world->world is what's important here), targeting your new empty.
Now, the spear will remain parented to your root bone, but its visual transform will be unaffected by that parenting relationship, because it'll be copying the full world-space transforms of the empty which isn't parented to anything.

Child of constraint + root motion issue


Use name as the initialization vector to encrypt passwords for users

Question: I'm using AES-256-CBC to encrypt password for a set of users, and for each user in the database we gotta generate and store the password in the database.  The database has constraint that the name of the user must be unique, so I was wondering if using the name of the person as the initialization vector was okay, because names are sufficiently random for a cryptographic perspective, if I encode it to hex and use the 16 bytes for the IV would it be okay. This would give me one less thing to store in the database.
Answer:
encrypt password for a set of users

You should hash the password for users instead of encrypting them, rarely does an application need to recover the password for any purpose.
PHP has password_hash and password_verify functions that replaces the crypt function that provides password hashing functionality, and it's broadly interoperable with other implementations of SHA-256/512, BCrypt, Argon password hashing algorithms.
Your specific environment may ship with its own implementations. Python has PassLib.
Comment: @troubleddev All these just show that you're not fully informed to make security-related decisions. Let your employer hire a specialist if you haven't already, and involve him in the entire process.
Comment: for my usecase, I need to encrypt the password, and because i need to decrypt it later, please do tell me if using the unique username is okay
Comment: @troubleddev You do realize AES has a blocksize of 128 bits do you? Then how are you suppose to encrypt passwords shorter than 16 octets using the CBC mode?
Comment: would concatenate by repeatition of the same value e.g. `appleappleapple` for a sufficiently long key not suitable?
Comment: @troubleddev -- you may think you need to decrypt the password for example because you need to check the password history. Many systems don't allow changing a password to one that's too similar. There are ways however to accomplish this without storing the password itself.


Do cranberries need soil?

Question: I was visiting a cranberry farm, and they had plants that were floating on water when it wasn't harvest time, so it made me wonder: Do cranberries need soil, or can they just be allowed to float forever, and still produce?
Answer: We don't know what you actually saw, but cranberries don't grow either floating on water, or under water.
The plants grow in a bog, and are vines up to 6 feet long.
They are often harvested by flooding the bog and stirring the water with machinery, which makes the ripe berries break off the vines and float. They can then be collected mechanically. For making cranberry sauce on a commercial scale the berries are going to be crushed anyway, so damaging them during harvesting doesn't matter much.
The bog may also be flooded in winter when the plants are dormant, so that the water with a layer of ice on top protects the plants from extreme cold. They need winter temperatures that are near freezing for several months each winter, but they won't tolerate temperatures a long way below freezing.
Comment: that's online research
Answer: I believe that they actually grow in soil (well, a bog really, so soil, water, peat, clay) and the fruits are connected to a vine.  The berries are buoyant, so they float on the water, connected to the vine.  The waterborn nature of the berry then makes it easier to harvest.

Do cranberries need soil?


Installing a .cer file

Question: I have a cert.cer certificate file for my Mozilla Firefox. I don't have any clue how to go about installing it for my system. Any guidance would be of great help.
Answer:
Go to the Firefox menu → Edit → Preferences
Click on the Advanced tab
Click on the Encryption tab below Advanced tab.
Click View certificates
In the Certificate manager window, Click on the Import button. Then locate the .cer file, and then click Open. The cert file will be imported.

Hope this will help.
Comment: I am able to access the websites which were blocked for me but still am not able to ping the url from terminal or either telnet it . Any idea ?
Comment: You cannot ping an "url". If the url is `http://server.net/blah/blah/`, then you can `ping server.net`, but not `http://server.net` or `http://server.net/blah/blah/`.
Answer: If you are familier with CLI mode..
then you can just run below command

sudo cp -rvf /path/of/abc.cer /usr/share/ca-certificates/mozilla/abc.crt

Remember one thing... you have to rename that cer file into crt file like above command.

Installing a .cer file


Frequency response of ferrite filter

Question: Why ferrite material only passes low frequency and blocks high frequency. I mean what's going inside this material which is leading to show such frequency characteristics?
Comment: Are you asking about a ferrite core with the wire wrapped around it, or a ferrite bead? I ask because the mechanisms are different.
Comment: Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking.
Answer: Ferrites are highly customizable materials. Some are made to be lossy to serve as high frequency filters, others are formulated to minimize losses in high quality filters or power system components. Lossy ferrite beads are often slightly conductive materials and they cause eddy current losses. One can achieve similar functionality at low and medium frequencies by combining a (mostly) lossless inductor and a resistor in a parallel circuit and the lumped circuit models of ferrite beads reflect this by approximating the component with a parallel LRC circuit. The impedance of a lossy ferrite bead therefor shows a (usually fairly wide) resonance that can be tuned from hundreds of kHz to GHz by choosing the material's permeability and resistivity. I am certain that at least some materials have additional loss mechanisms that are due to microscopic magnetic properties but if they do, then the effects are, at least in my personal experience, not easily distinguishable from eddy-current losses at the technological level.

Frequency response of ferrite filter


GPL modify code

Question: If I take GPL code  and modify it, does it have to still be under GPL?
Comment: Yes, but only if you distribute it.
Comment: Of course! If you're the original copyright holder you're not bound by the GPL: the GPL is a license for others to distribute your code. You're free to do wherever you chose.
Comment: You can ask the original copyright holder to relicense it to you. If she agrees...
Comment: I am the original copyright holder. Can I relicense myself?
Answer: Yes, it does.

You may convey a work based on the
  Program, or the modifications to
  produce it from the Program, in the
  form of source code under the terms of
  section 4, provided that you also meet
  all of these conditions:

The work must carry prominent notices stating that you modified it,
  and giving a relevant date.
The work must carry prominent notices stating that it is released
  under this License and any conditions
  added under section 7. This
  requirement modifies the requirement
  in section 4 to "keep intact all
  notices".
You must license the entire work, as a whole, under this License
  to anyone who comes into possession of
  a copy. This License will therefore
  apply, along with any applicable
  section 7 additional terms, to the
  whole of the work, and all its parts,
  regardless of how they are packaged.
  This License gives no permission to
  license the work in any other way, but
  it does not invalidate such permission
  if you have separately received it.
If the work has interactive user interfaces, each must display
  Appropriate Legal Notices; however, if
  the Program has interactive interfaces
  that do not display Appropriate Legal
  Notices, your work need not make them
  do so.

A compilation of a covered work with
  other separate and independent works,
  which are not by their nature
  extensions of the covered work, and
  which are not combined with it such as
  to form a larger program, in or on a
  volume of a storage or distribution
  medium, is called an "aggregate" if
  the compilation and its resulting
  copyright are not used to limit the
  access or legal rights of the
  compilation's users beyond what the
  individual works permit. Inclusion of
  a covered work in an aggregate does
  not cause this License to apply to the
  other parts of the aggregate.

If you don't distribute it, however, this does not apply.
Answer: If you own the copyright for the work in question, you can license it in any way you want. In fact, you can have more than one license for the same work. If you do not own the copyright, you are bound by the terms of the license. SLaks provides a good overview of what that means.

GPL modify code


Bayesian meta-analysis

Question: A colleague is conducting a Bayesian meta-analysis of some large-scale drug studies. Although she has experience with 'conventional' meta-analysis, she in new at the Bayesian approach. We have read several papers with related studies and approaches, and some authors report mean drug concentrations, while others report medians. Is one more appropriate than the other in the Bayesian context?
Answer: There is no single appropriate measure of central tendency in the Bayesian context. The measure you use depends on the research question and shape of the distribution. If your research question makes you want to know where the data splits into two parts of equal mass/density, AND your distribution is skewed, then use the median. If your research question is more about knowing the expected value of something because you are trying to maximize a utility function, and the expected utility hypothesis makes sense, then use the mean. If your posterior distribution is symmetric, it doesn't matter which one you use.

Bayesian meta-analysis


IT TTT block in assembly language

Question: Why do we have four instructions in IT block for Cortex M4 processor? Is it related to the fact that we have three pipelines for ARM assembly instructions?
Answer: Quoting from ARM's information center about the Cortex M4:

IT{x{y{z}}} cond
  where:
x Specifies the condition switch for the second instruction in the IT
  block.
y Specifies the condition switch for the third instruction in the IT
  block.
z Specifies the condition switch for the fourth instruction in the IT
  block.
cond Specifies the condition for the first instruction in the IT block.
The condition switch for the second, third and fourth instruction in the IT block can be either:
T
  Then. Applies the condition cond to the instruction.
E
  Else. Applies the inverse condition of cond to the instruction.
The IT instruction makes up to four following instructions conditional. The conditions can be all the same, or some of them can be the logical inverse of the others. The conditional instructions following the IT instruction form the IT block.
The instructions in the IT block, including any branches, must specify the condition in the {cond} part of their syntax.

Read more here... This is where I got the information from.
Answer: It's based on the pipeline length and the number of bits that were available in the opcode.
Branching causes a bit of a hiccup in the pipeline, so it is more efficient to skip some instructions by making them conditional. However, all of these instructions still need to be fetched and partially decoded, so if the conditional block is longer than a few instructions (depending on the exact version of the ARM architecture), a branch is still more efficient.
Typical ARM code often has constructs like
   CMP …
   ADDLT …
   LDRLT …
   LDRGE …

which is both shorter and faster than the branched variant
   CMP …
   BGE 1f
   ADD …
   LDR …
   B 2f
1:
   LDR …
2:

However, for five or more instructions, the branch is cheaper and the space saving gives you diminishing returns.
Thumb moves the condition field into a separate instruction, but the economics of when it is cheaper to skip or branch remain roughly the same. Using more opcode bits to allow skipping more instructions only gives minimal space savings, while fewer conditional instructions would force the compiler to generate a branch in Thumb code where it would have used conditionals in 32 bit ARM code.
Answer: Usually there are at least two shorthand IT (If-Then) instructions, to be able to efficiently execute these C constructs:
If with no else-branch (IT: If-Then):

if (X) { /* do something */ }

If with an else-branch (ITTE: If-This-Then-Else):

if (X) { /* do something */ } else { /* do something else */ }
C
Not sure about the other ones.

IT TTT block in assembly language


Project Utility Jar is not being added while generating EAR

Question: I am using eclipse to build the EAR of my project. So I have various module and several utility jar in my application deployment descriptor(refer fig 1). Now my problem is when I am trying to export the EAR using eclipse, the EAR file is properly containing the content of Module but Project utility jar is not being exported(look at the size of jar file in ear which is 181 bytes ). Could you please suggest me how can I achieve that.What do I need to modified so that utility jar exported properly
Answer: Finally I have found the answer to my question after head crunching research. The problem with my application was the corrupted value in the "org.eclipse.wst.common.component" file. Which can be found in the .setting folder of you project. The above mentioned file had the duplicate entry for the same project. So default process was getting confused which path to include. I have manually removed the duplicate entry and the issue resolved.
Answer: Modify the MANIFEST.MF file of the EAR project to add the utility JARs
Comment: my EAR project doesn't have MANIFEST.MF file ... shall I create a new one
Comment: generated MANIFEST.MF have entry for utility jar


Netflow on all interfaces?

Question: I'm reading up on Netflow and playing around in PacketTracer. Currently I'm using ip flow ingress/egress only on my Routers gigabitEthernet. How much overhead is required, is Netflow supposed to be measured on all interfaces, even on switch trunklines?
Comment: this really isn't a security question - migrating
Comment: It depends on where you want to measure the flow, and in which direction. Which data do you want to collect?
Comment: Thank you @RonMaupin I would like to measure everything, specifically monitor all the hosts traffic. Would it be justified to leave any interfaces out? Is Netflow a "heavy" service that would justify NOT having it in all interfaces in your opinion?
Comment: If you think about it, there are "choke-points" in your network where you can measure the traffic.If you measure it at every interface in both directions, you will get duplicates. For instance, measuring both ingress and egress traffic on all your router interfaces will give you double the actual traffic measurements for all traffic traversing your router. Measuring only ingress (or egress) on all your router interfaces doesn't double your measurements. You need to decide where you want to measure it, and in which direction.
Answer: When you only have one Router, then you are fine monitoring both directions or both interfaces. If you monitor both directions and both interfaces, you will be monitoring duplicated flows.
The decision of where and what direction to monitor becomes a bit more ionvolved when more Router's are involved. Take this simple example:
<code>Host X <----> Router A <----> Router B <----> Host Y
</code>
A packet going from Host X to Host Y will cross four total interfaces:

Ingress Router A's left interface
Egress Router A's right interface
Ingress Router B's left interface
Egress Router B's right interface

If you were capturing at every single one of these points, you would get the same flow data, duplicated four times. Which is obviously not very useful.
The simple solution is to just pick one of these to monitor, but then what of the return traffic? Imagine a packet going from Host Y to Host X, that packet would also cross four possible (what I'll call) Netflow capture points:

Ingress Router B's right interface
Egress Router B's left interface
Ingress Router A's right interface
Egress Router A's left interface

Obviously, capturing on all four of these points would also create 4x duplication of the traffic. So capturing on one of these would be sufficient.
A common practice is to deploy netflow on the ingress interfaces of all your 'access' routers. Which in the (again, simplistic) example above would mean setting up a capture at these points:

Ingress Router A's left interface
Ingress Router B's right interface

This accounts for picking from one of the four netflow capture points to cover the forward traffic (host X to Host Y) as well as the return traffic (Host Y to Host X), without capturing duplicated traffic in the process.
That said most production networks are significantly more complex (and rightfully so!) than what is pictured above. But you can still apply the same concept to determine the best place to set up your Netflow captures with the goal of capturing both forward and return traffic, and not duplicating any packets.
Comment: Even on a single router, if you measure the traffic both on ingress and on egress, you will measure it twice.
Comment: @RonMaupin You're right. I updated my answer w/ the correction.

Netflow on all interfaces?


Second Algebraic Dual Space

Question: I still didn't understand what is Second Dual Space. From class, I was told that:
$X^{**}=\{g_{x}:x \in X\}$ which $g_{x}$ is a map from algebraic dual space $X^{*}$ to scalar field $K$ of vector space $X$. $g_x$ is defined by $g_x(f)=f(x)$.
Then, I met $C$ which is called canonical mapping and map from vector space $X$ to second algebraic dual space $X^{**}$ defined by $Cx=g_x$. The book state that $C$ is injective but not always surjective.
What I didn't understand is why $C$ isn't always surjective? From the definition of element in $X^{**}$ and from the statement that $C$ is injective, then $C$ must be surjective. Or I might be wrong define elements in $X^{**}$?
And I'm using the book from Erwin Kreyszig - Introductory Functional Analysis with Applications
Comment: $X^{**}=\{g_{x}:x \in X\}$ is not the definition of the second dual space.  The second dual space is the dual of the dual space.
Comment: @Aweygan right, I'm sorry. This book said it's Second Algebraic Dual Space. Is it same with Second Dual Space?
Answer: You're wrong about the definition of $X^{**}$.  From Kreyszig, page 107:

We may go one step further and consider the algebraic dual $(X^*)^*$ of $X^*$, whose elements are the linear functionals defined on $X^*$... and call it the second algebraic dual space of $X$.

He then goes on to explain that for any $x$, $g_x$ is an element of $X^{**}$.
Notably, however, there is nothing about the definition of $X^{**}$ which guarantees that every element $g \in X^{**}$, that is every $g:X^* \to \Bbb C$, has the form $g_x$ for some $x \in X$.  In fact, if $X$ is an infinite dimensional normed space (and if we take the axiom of choice), then this is necessarily not the case.

For example: take $X\subset \ell^1$ to be the set of sequences for which all but finitely many elements are $0$.
Let $\{e_i\}_{i \in \Bbb N}$ be the canonical basis of $X$ (so for example, $e_1 = (1,0,0\dots)$); note that this is a Hamel basis for our space.  Every functional $f$ is determined by its values over these elements, since
$$
f(\sum_{i} \alpha_i e_i) = \sum_i \alpha_i f(e_i)
$$
Thus, for every sequence $(\beta_i)_{i \in \Bbb N}$, there is an associated $f$ with $f(e_i) = \beta_i$.
Now, consider the subspace of $U \subset X^*$ consiting of $f \in X^*$ such that
$$
\sup_{i \in \Bbb N}|f(e_i)| < \infty
$$
We may define the linear map $g:U \to \Bbb C$ by
$$
g(f) = \sup_{i \in \Bbb N} f(e_i)
$$
and by the axiom of choice, we may write $X^* = U \oplus V$ for some subspace $V$, and we may extend $g$ to all of $X^*$ by defining $g|_V = 0$.
Note that $g \in X^{**}$, but there is no $x \in X$ such that for every $f\in X$, $g(f) = f(x)$.
Comment: Do you happen to know whether the last assertion requires (part of) the axiom of choice?
Comment: @DanielFischer It almost certainly does; I'll say so.
Comment: So, It's not necessary that every $g \in X^{**}$ has the form $g_x$? If it's so, then how we define $g(f)$ if it has no form $g_x$? I'm really confused.
Comment: It's hard to come up with an explicit example, but I added one in my latest edit.
Comment: Ah, now I understand. So, element in $X^{**}$ is a function that maps from $X^*$ to $K$ and the definition is not always $g(f)=f(x)$. Thank you very much!
Comment: Ah one more question, Is there any necessary condition that $g \in X^{**}$ must hold or $g$ is just a function?
Comment: $g$ is just a function; that's what makes $X^{**}$ the *algebraic* double dual (as opposed to the *topological* or *continuous* dual).
Answer: If we take $c_0 , \ell_1 , \ell_{\infty}. $ Then $c_0^{\ast} =\ell_1 , c_0^{\ast\ast}=\ell_1^{\ast}=\ell_{\infty}. $ Then the functional $\xi (x) =\sum_j x_j $ is not in the image $\kappa (c_0 )$ where $\kappa $ is the canonical mapping but $\xi \in c_0^{\ast\ast}=\ell_1^{\ast}=\ell_{\infty}.$
Comment: One question, what's the dimention of $c_0, l_1, l_{\infty}$? Are they infinite dimentional vector spaces?
Comment: $\mbox{dim} (c_0 ) =\mathfrak{c}$
Comment: In this answer, you're using *continuous* dual as opposed to the *algebraic* dual.

Second Algebraic Dual Space


Perfect DG modules

Question: I was wondering whether there is a characterization of perfect DG modules over a DG algebra as there is one for modules over a ring. Namely, an object in $D(R)$, where $R$ is a ring, is perfect if and only if it is isomorphic to a bounded complex of finitely generated projective modules. Is there any similar characterization when we take $R$ a dga and $D(R)$ the derived category of DG modules over it?
Answer: Well by definition a DG module $X$ is perfect iff it is a direct summand of a module which is a finite iterated extension of free modules (it's then a nontrivial result that this property is the same as being compact). If $Y$ is a dg module and $Y'$ is an extension of $Y$ by $R[n],$ this extension is classified by an element $\xi\in Ext^{1-n}(R, Y) = H^{1-n}(Y),$ so (choosing a cycle representing $\xi$) we see $Y'$ can be represented by a cone of the corresponding explicit arrow $R[n-1]\to Y.$ This lets you view any dg module which is a finite iterated extension of free modules as the total module of a bicomplex whose row complex is free and finite-dimensional. Now a perfect complex is a direct summand (equivalently, retract) of such a complex.
Comment: Great, thanks! Have you read at what I wrote instead? Does that also work?
Comment: What you wrote is usually formulated as the fact that a DG module over a smooth, proper DG algebra is perfect if and only if it is perfect over the ground field. That is indeed true, though not all interesting algebras are smooth and perfect.
Comment: I understand, thank you very much!
Answer: I add it as an answer because I think this might be a partial answer. Assume that

the DGA $R$ is perfect and that the resolution by projective bimodules is made of modules whose underlying complex is perfect over the base field $k$,
the underlying complex of $R$ is perfect over the base field.

Then, every module is quasi isomorphic to the convolution of the complex obtained tensoring the projective resolution with the module itself. In particular, as this convolution will still be a projective DG module, we have a cofibrant DG module quasi isomorphic to the DG module we started with. A result of Toën and Vaquié tells us that under the above hypotheses, a cofibrant DG module is perfect over $R$ if and only if the underlying complex is perfect over $k$. Therefore, if we assume the underlying complex of the DG module we started with was perfect over the base field, we deduce that the DG module is perfect over $R$, as the quasi isomorphic cofibrant object is. It should all be correct, but if someone spots any errors I'm happy to hear any suggestions.

Perfect DG modules


Best practice for wire harnesses in a BOM

Question: Ive started a new job at a startup and am working on a BOM for a box build with a couple of PCBs and wire harnesses inside. Im in a bit of an impasse about how best to define wire harnesses in the BOM. In my previous job, we made standalone PCBs for OEM markets, where I only defined PCB mounted components, and never dealt with wire harnesses. What im trying to get my head round now though is in this instance where we will order a spool of wire, and then cut it to required lengths to then be crimped and inserted into a connector, should the spool be a BOM item, and then the cut wires be entered as sub-assemblies created from it? Or should the cut wires be BOM items, and they simply reference the relevant spool from a supplier?
Comment: The harness is a sub-assembly by itself and needs to have its own part number with schematics and assembly instruction. In the BOM you list its part number. But surely you can come up with some other arrangement with a specific manufacturer.
Comment: An assembly is inherently a tree-like entity. The root is the final assembly, its subtrees are sub-assemblies having an internal part number. The leaves are part numbers for existing/off-the-shelf products. This is a bit of idealization, though.
Comment: If at all possible, outsource the wire harness. Making wire harnesses is very tedious. You may still need to make a drawing, but it will be less critical in the sense that the vendor will use the drawing to make samples, which you can approve or provide feedback on. Once you get it ironed out then it is just a single orderable part and a single part number in your database. You can include the wire harness in the PCB assembly BOM, or if it makes more sense, as a line item in a mechanical assembly.
Comment: So it will be outsourced, this BOM is going to an assembly house, who will make the harnesses and do the box build. I think I just need to wait on them responding to my email with their preference and guidance. Id posted this question here simultaneously out of curiosity at what stack exchange had to say.
Comment: It is always hard at first. You need to include the p/n for the harness in the BOM you send to the assembly house initially. Otherwise they won't even know they are supposed to supply it. If you do not yet have an orderable p/n for it, then you will have to do your best to describe it with a drawing that calls out p/n for crimps, wires, housings, etc so they can make it (or they may outsource it themselves and hide all the details from you which is not necessarily a bad thing).
Answer: It's typically best if the BOM reflects the assembly process. Start with the final product (or whatever goes in the box to be shipped) and work backwards through the subassembly.
If the harness gets build on the final line, than only the parts (wire, crimps, etc.) should be in your BOM. If it shows up on the line pre-assembled, than it's a subassembly with it's own part number and sub-assembly BOM.
Most BOM management tools allow you to structure the BOM this way and also create a "flat" view, where all parts are listed.
Comment: So the harness will be built on the final line. For the wires in the BOM, should I define it as it will be in the harness, ie.   <"50mm 20AWG PVC coated wires">  etc, where the manufacturers part number references the spool they supply of x number of metres, and our assembler just orders that and cuts the 50mm wires from it,  or reference the spool explicitly as a component and then derive the cut to length wires as child components?
Comment: If your company is ACME, you would want the wire harness to have a single unique ACME part number. Under that part number, there may be mulltiple manufacturer part numbers from different manufacturers that are all considered interchangeable as far as assembly goes. So ACME_PN contains multiple MFG_PN. Each MFG_PN has an associated MFG. Just like resistors. ACME p/n 111-3456 is a 10 Ohm 0805 5% resistor. Under that p/n, MFG1 is samsung, MFG2 is yageo, etc, and for each MFG you also have the MFG_PN.
Answer:
we will order a spool of wire, and then cut it to required lengths to
then be crimped and inserted into a connector, should the spool be a
BOM item, and then the cut wires be entered as sub-assemblies created
from it?

Each cut wire can have a fractional quantity of the bought in spool. BoM software easily deals with this. The fractional part of the bought spool would be a BoM item but be defined as bulk issue if the cable assembly is built as and when it is needed. Defining the spool as bulk issue means the spool can be available without "booking it from stores".

Or should the cut wires be BOM items, and they simply reference the
relevant spool from a supplier?

If you are taking the spool and cutting wires that go back into stock for later use when building the cable assembly, then the cut wires need to be given a part number and the cable assembly BoM will refer only to them.
Answer: Often the wire harness will have its own part number which you can ask for on a BOM. This treats the harness as a single component from the BOM point of view.
The description for that part number will refer to the harness's own drawing number, BOM, and assembly procedure (and possibly drawings for the jig needed to assemble it). Your spool of wire will then be on the harness BOM, not the main product BOM.
It can then be built separately and held in stock - or even built by another company - or built on the production line, according to whichever suits your process.
Keeping it a separate component can simplify build variants : revisions 1,2 use harness part number HARN003 while revision 3 uses HARN007, which can also be shared with (some other similar product)
Answer: The short answer is, use a 'multi-level' BOM. Each subunit in the BOM has its own BOM and design data that report in to the part number for that subunit. Add as many levels as needed for your product, including a finished good in a carton.
Another task you face is creating a part number system. As you do that, think about how to distinguish items as they relate to the BOM level they belong to as well as their type. You can sort of encode that into a categorized part number, or choose not to and just assign arbitrary numbers as you need them and bury that information in the record for the part number. Doing the former does make things a bit easier, if done sensibly.
Cable assemblies call out the need for a part number category: bulk materials, such as wire. You would reference that in your BOM with a length quantity, rather than call out each length of wire as an item. MRP systems are set up to deal with this.


RTC DS1307 VCC not getting connected to 5V of Arduino Uno

Question: I am using RTC DS1307 with "TINY RTC I2C modules" written on it.I had downloaded RTClib library from adafruit and using the example code. I connected GND->GND, VCC->5V, SDA->A4 and SCL->A5. However after connecting the VCC to 5V the "ON" Led does not lights up and the code is not getting uploaded. I tried connecting the VCC to 3.3 V the code gets uploaded but does not shows any output on the screen.
Answer: It seems an hardware problem on Arduino Uno board.
Try to connect the 5V pin of Arduino Uno to a digital pin (e.g D7) and write a program for read a digital pin.
<code>int inPin = 7;     // digital pin 7
int val = 0;       // variable to store the read value

void setup()
{
  pinMode(inPin, INPUT);        // sets the digital pin 7 as input
}

void loop()
{
  val = digitalRead(inPin);     // read the input pin
  Serial.println(val);          // print read value on serial
}
</code>
If you're not able to load this sketch on your Arduino, most likely it's an hardware problem on Arduino.
Comment: But 5V of Arduino is drawing current to VCC of bluetooth HC05 module
Comment: You remove temporary the HC 05 module and try it.
Comment: I had tried that and I think there is some hardware problem with my RTC.
Answer: Soldering was not done properly. The vcc and ground got "short" that's what the shopkeeper said. We again soldered it on the other side. Now its working
Answer: Just another point,
From my experience, any module that uses a serial connection can disrupt the sketch uploading process to the Arduino.
The best is to upload to Arduino when all serial connections are dis-connected.


Use css of one theme into another

Question: I want to use CSS from .less file of one theme into another theme phtml file. There are two theme in my Magento 2.3 site.
How can i do this?
Answer: What you're trying to solve is a dependency between theme A and theme B which means you need to use theme inheritance, if you don't want a parent/child theme relationship then you should copy and paste the LESS file over.

Use css of one theme into another


Calculating probability of no hash collision

Question: Given a 64-bit hash function that takes arbitrary inputs, what is the probability that feeding 10 million inputs into the hash function will outputs 10 million unique outputs. I've came up with this:
$$
\begin{aligned}
P(10,000,000)&=1\times\left(\frac{2^{64}-1}{2^{64}}\right)\times\left(\frac{2^{64}-2}{2^{64}}\right)\times\cdots\times\left(\frac{2^{64}-9,999,999}{2^{64}}\right)\\
&=\frac{2^{64}!}{(2^{64})^{10,000,000}(2^{64}-10,000,000)!}
\end{aligned}
$$
However the numbers are too big for a standard calculator to handle, what are the better ways to calculate this for a arbitrary $n$ other than 10 million? Please explain how they work.
Comment: $10,000,000$ is so small compared to $2^{64}$ that I think you can assume that the probability is 1. You run into issues when at the order of the square root of $2^{64} = 2^{32} \approx 1,000,000,000 >> 10,000,000$. Think the birthday paradox.
Answer: Wikipedia's birthday problem article gives various approximations for the probability of no collisions (better at the top, simpler at the bottom)

$\exp\left(-\frac{n(n-1)}{2d}\right)$
$\exp\left(-\frac{n^2}{2d}\right)$
$1-\frac{n^2}{2d}$

Here $n=10^7$ and $d = 2^{64}$ and all of these are about $0.9999972895$
By comparison, the more familiar case of $n=23$ and $d=365$ would give approximations of $0.5000,$ $0.4845$ and $0.2753$ when the true value should be about $0.4927$


Creating a general log sheet for CTD and ADCP for fieldwork

Question: It is close to the deadline for conducting research on a research vessel for the Irish Sea (one month left). I'm currently a student and would like some descriptive observational data/variables needed to account for when recording measurements from CTD (conductivity, Temperature, Depth) and ADCP (Acoustic Doppler Current Profile) instruments. For both CTD and ADCP, what do I need from these devices to create a general log sheet suitable for all students (my crew) to record during the trip.
Answer: This answer might be a bit late but here are some common metadata variables that get recorded:
For a CTD:

Operator
Date and time
Start and end co-ordinates of station
Station Number
Sample depths (assuming you'll also be collecting water samples)

Here you can also record what the water samples are used for i.e. salinities, chemistry etc

Sea state
Vessel
File name

For the ADCP:

Start and end co-ordinates
Date and time
ADCP type
Set-up (sampling frequency, bin size)
Vessel
Operator
File name


Twitter ReceiveSMS permission

Question: On Twitter November 25, 2013 update, they ask for receive text messages (SMS) permission.
Does anyone know what exactly this is for ?
Answer: I was concerned about this as well and decided to decompile the app to find out what it's doing. Twitter receives SMS messages via a BroadcastReceiver in com.twitter.applib.client.SmsReceiver. Here is what the code looks like after decompiling it to Java with dex2jar and jd-gui.
<code>public class SmsReceiver extends BroadcastReceiver
{
  private void a(Context paramContext, SmsMessage paramSmsMessage)
  {
    if (paramSmsMessage != null)
    {
      String str1 = paramSmsMessage.getMessageBody();
      String str2 = paramContext.getText(mb.sms_verification_text).toString();
      if (("40404".equals(paramSmsMessage.getOriginatingAddress())) && (str1.startsWith(str2)))
      {
        SharedPreferences localSharedPreferences = PreferenceManager.getDefaultSharedPreferences(paramContext);
        localSharedPreferences.edit().putString("device_registration_sms_text", str1).commit();
        String str3 = localSharedPreferences.getString("device_registration_normalized_phone_number", "");
        if ((!TextUtils.isEmpty(str3)) && (!TextUtils.isEmpty(str1)))
          a.a(paramContext).c(str3, str1);
      }
    }
  }

  public void onReceive(Context paramContext, Intent paramIntent)
  {
    Bundle localBundle = paramIntent.getExtras();
    if (localBundle != null)
    {
      Object[] arrayOfObject = (Object[])localBundle.get("pdus");
      int i = arrayOfObject.length;
      for (int j = 0; j < i; j++)
        a(paramContext, SmsMessage.createFromPdu((byte[])arrayOfObject[j]));
    }
  }
}
</code>
You see see here that when a text message is received, the app passes the message to a() and checks that it comes from twitter's number. Then it writes the content of the message to shared preferences. As Problematic suggested, the app is only verifying your number and not doing anything malicious. Although Twitter isn't doing anything malicious, it would have been nice if they would have explained why the app needs this permission in the last update.
Comment: 'it would have been nice if they would have explained why the app needs this permission in the last update' +1
Comment: Now they have `ReceiveSMS` permission. currently they scan for only SMS received from twitter. but in the future they can read any SMS without asking for any permission. :(
Comment: Yup. I don't think Twitter would abuse this permission, but that does underscore a problem with the permission system. Fortunately it's usually not too hard to reverse Android apps and find out what they are really doing, and major vendors would likely be caught doing something malicious in an update.
Comment: If developers obfuscates codes, it's hard to reverse engineer.
Comment: Statically analyzing is harder but you can still hook method calls at runtime or MitM the traffic (this is usually not that hard even if there is certificate pinning) to see what information is being processed and what data is being sent to and received from servers.
Answer: An app like Permissions can tell you the meaning of the different types of permissions.
For receive text messages (SMS):

Allows the app to receive and process SMS messages. This means the app
  could monitor or delete messages sent to your device without showing
  them to you.
Comment: I think the OP wants to know why the Twitter app in particular wants to do this.
Answer: As far as I have been able to tell, there is no official information on what this permission is for.
I have seen this in another app in the last little while. The Google Hangouts app recently gained the SMS permission and uses it (in addition to displaying your phone's SMS messages in the app) to process phone number confirmation texts: the Hangouts app processes the SMS message and verifies your number without requiring you to enter the code (or even showing you the SMS message). If I had to make an educated guess, I would assume the Twitter app is doing something similar, but again, there is no official word on the purpose of this.

Twitter ReceiveSMS permission


Starring vs Featuring?

Question: I'm writing a description for a photograph, and I'd like to place the emphasis on the scarf that the person in the picture is wearing. The description would be something along the lines of "__ the scarf that's been everywhere from New York to London". Which word would be more appropriate, starring or featuring?
Comment: "showcasing" would better fit the context http://www.thefreedictionary.com/showcase
Answer: Featuring is correct:

to feature: to include or show something as a special or important part of something, or to be included as an important part
The exhibition features paintings by Picasso.

(Longman)
The verb "to star" is used of famous performers, not things.

Starring vs Featuring?


Quantum Entanglement - assumptions about entanglement across universe

Question: Can entanglement occur in one to many relationship, or many to many? If so, are there entangled particles occurring across the universe that have persisted since the big bang, or does entanglement decay and become a local phenomenon as entropy increases?
Answer: What is usually called entanglement is by definition a 1:1 relationship. And it is not a relationship between particles, because there are no particles. In quantum theory there are mathematical objects like vectors and linear operators. First of all there is a space where the math. objects live in, the Hilbert space. Depending on the world you want to model (and how accurate you want to do this) the Hilbert space has more or less dimensions. A quantum model of classical particles usually will have an infinite number of dimensions because you want to model continuous particle positions, i.e. any vector in the space is in general not a sum but an integral of continuous (="Dirac") base vectors. Simpler spaces have a finite number of dimensions. The most simple space has 2 dimensions and is also called "qubit".
Entanglement is a property of

a vector (a state vector with length 1) in combination with
a split of the Hilbert space where the vector lives.

A Hilbert space can be split into subspaces if its dimension is infinite or finite and not a prime number. This is because if the subspaces have dimensions $n_1$ and $n_2$ the combined space is a product space with dimension $n_1 \cdot n_2$. A qubit has a dimension of 2 (a prime number) and therefore it is the smallest Hilbert space and cannot be split any more, and no 1-qubit-vector can appear entangled in any view.
If a Hilbert space can be split in 2 parts, there are always an infinite number of ways how you can do this. When combining 2 smaller spaces you build a larger product space, and the original 2 parts are lost in some sense: You can split the product space into the original parts, but you can split it into an infinite number of equivalent pairs, too.
Depending on how you split, a given vector will show more or less entanglement. A natural measure of the entanglement is the von Neumann entropy.
The answer to the 2nd question is: probably yes. There can be planes that split the Hilbert space and across these planes there has always been entanglement since the big bang though the world state vector changed all the time. There may be other split planes that had no entanglement at the beginning and now have significant entanglement, and also the other way around.
Last question: this is now my personal opinion... I see no room for classical entropy in a quantum world. I.e. every classical entropy must be explained as entanglement entropy somehow. So if entropy grows (at the split plane you defined), entanglement will grow, too.
Whether entropy of the universe grows is an open question and related to the arrow of time which is currently not understood. For a discussion of this difficult topic see The Physical Basis of The Direction of Time
Authors: Zeh, H. Dieter or Quanta Magazine.
Comment: "What is usually called entanglement is by definition a 1:1 relationship" - that's just wrong. [Multipartite entanglement](https://en.wikipedia.org/wiki/Multipartite_entanglement) is a perfectly standard concept, best exemplified by the tripartite entanglement of [GHZ states](https://en.wikipedia.org/wiki/Greenberger%E2%80%93Horne%E2%80%93Zeilinger_state), which have zero pairwise entanglement but maximal tripartite entanglement.
Comment: A GHZ state is not a special state at all and therefore not worth an own expression. What you name "GHZ state" is a ordinary state vector like all others **together with the subjective notion** that you split the Hilbert space into 3 parts. I.e. you **define** 2 split planes (that do not intersect) and therefore get 3 parts. Of course you may define mathematical functions (entanglement measures) on more than 1 split positions if you like. The question is what you learn from them that you can't already learn from 1:1 entanglement measures.
Comment: And the usual meaning of entanglement is 1:1 entanglement. If you want to talk about a GHZ split, you explicitly must say that. Sorry, I don't understand at all why you voted down.
Comment: I didn't vote down at all. I voted you up, actually. Sorry for the delay, I was locked out of my account. I have to take some time to consider your answer.
Comment: Yes, I think Emilio Pisanty voted down and my further comments were addressed to him. The belief of the mainstream is, that enganglement is objective, but see [here](https://physics.stackexchange.com/questions/423290/is-quantum-entanglement-observer-dependent?noredirect=1#comment949214_423290).


Film Scan Errors - Sprocket Holes Exposed to the Film

Question: I am a question regarding my film scans. I noticed that there are sprocket holes that are exposed to the film. I wonder if I did something wrong when I was rolling up the film to sent to develop, and whether I can fix this.
Comment: What am I looking at, is this a crop of a scanned frame? I can see about six separate film strips!
Comment: In order for us to know if you did something wrong we **need to know what you did** ! give us every detail from loading the film into the camera to sending in to get scanned.
Comment: Did you do the developing and then send the film out for the scan? When you ask about doing something wrong rolling up the film...didn't you simply rewind it back into the canister?
Answer: First -- Examine the film to verify that the film shows the same defects as the image from the scan. Likely a look will convince you that this is indeed an unwanted exposure (fogging) of the film to light or perhaps radiant energy like X-ray.
Assume fogging - likely when loading the film in the camera or removing the film from the camera. Also, the film may have been mishandled at the lab, exposed to light when loading the film onto the processing machine (reel etc.).
Could be a problem occurred during the developing of the film, such as a machine jam, and it was necessary to turn on the lights in the darkroom to solve the problem. First - look at the film and report what you see.


Binding google-chrome tabs to certain workspaces in i3-wm

Question: I am aware that it is possible in i3-wm to bind certain apps to certain workspaces and certain workspaces to certain displays(I have a dual monitor setup). Is it also possible to bind specific google-chrome tabs to certain worspaces/displays?
For those of you wanting to know how I do the app-workspace, or workspace-display binding, here's a snippet of my i3config:
# binding workspaces to displays(run xrandr --query to get display names)
workspace $ws1 output "eDP-1" workspace_layout tabbed
workspace $ws2 output "HDMI-1" workspace_layout tabbed
workspace $ws3 output "HDMI-1" workspace_layout tabbed
workspace $ws4 output "eDP-1" workspace_layout tabbed
workspace $ws5 output "HDMI-1" workspace_layout tabbed

# Bind App to workspaces
# Check class by using xprop command
assign [class="Google-chrome"] $ws1
assign [class="Nemo"] $ws2
assign [class="eDEX-UI"] $ws2
assign [class="Vlc"] $ws5
assign [class="crx_eppojlglocelodeimnohnlnionkobfln"] $ws5

Answer: It is possible to assign an application to a specific workspace using its window class and instance. For example, for chromium it will be:
WM_CLASS(STRING) = "chromium-browser", "Chromium-browser"

But problem here is that each Chromium tab has the same window class. You could only change it for the whole running instance:
$ chromium-browser --class='new-class'

So you can't assign separate tabs to different workspaces. The only workaround for that is to use Chromium in app mode by launching each tab manually from command line:
$ chromium-browser --app='https://www.linux.com/'

That way each tab will be created as a different instance:
WM_CLASS(STRING) = "www.linux.com", "Chromium-browser"

Comment: In i3-wm it requires the instace to specified separately, so I'll I'll share my answer below and elaborate how I got it to work.
Answer: Binding a specific Chrome window can be done by its title property:

In your i3 config, launch Chrome and give it an "app" argument.

exec google-chrome --app="https://app.excalidraw.com/"

Use xprop in your terminal to get the WM_NAME(UTF8_STRING) value.  I believe that this is the same value that shows as the title on the top of the Chrome window when you launch the app. For excalidraw, the value was Excalidraw Plus — Workspace dashboard.
In your i3 config, use that value to assign the window to a workspace like this:

for_window [title="Excalidraw Plus — Workspace dashboard"] move to workspace $ws3
Answer: What worked for me was using the class and instance(string before the comma in WM-CLASS when using xprop) when binding the tab(instance) to a workspace.
For netflix for example, I first went to netflix and clicked on the 3 dots next to the address bar in google-chrome and then More tools>Create shortcut. This creates a shorcut of the instance of google-chrome for the URL on your desktop.
You can check the properties of the dektop shortcut using any file manager and copy the contents of the command section and paste it in your key-binding line after exec in your i3config like so:
bindsym $mod+n exec /opt/google/chrome/google-chrome --profile-directory=Default --app-id=eppojlglocelodeimnohnlnionkobfln

Use the binding to summon the instance, run xprop in the terminal and click on the instance window to pull the details. Mine returned:
WM_CLASS(STRING) = "crx_eppojlglocelodeimnohnlnionkobfln", "Google-chrome"

Then simply use the string before the comma as the instance and the string following the comma as the class, like so:
assign [class="Google-chrome" instance = "crx_eppojlglocelodeimnohnlnionkobfln" title = "Netflix"] $ws5

Hope this helps who was just as stuck as I was. :)
Answer: in your i3 config:
# google voice
exec google-chrome-stable --app="https://voice.google.com"
assign [instance="voice.google.com"] $ws2

where your instance is the first string that returns in 'CLASS' when you use xprop:
...
WM_CLASS(STRING) = "voice.google.com", "Google-crome"
..


calculating magnetic field strength (H) of half wound solenoid or toroid

Question: at school, I learned that the magnetic field strength(H) is defined by the Number of turns*current/Length. is the length in the formula the length of the coil or the core? so if an iron rod is 10cm long and only half of it is wound with 10 turns of wire with 1 amp flowing, will the magnetic field strength be 100A/m or 200 A/m? or if a small part of a toroid is wound, would the length be the circumference of the toroid or just the part that is wound with wire?
Thank you
Answer: The relevant length is the length of the entire magnetic circuit.
In the case of an iron rod, this includes the return circuit outside in the air. This return circuit dominates the reluctance of the entire circuit. So in this case, it doesn't really matter whether your turns round the rod are uniformly distributed along it or all at one end. You would have to integrate over all paths (small ones close to the iron, and big loopy ones further away) to find the total flux and so the effective magnetic length. However you can get a ballpark, order of magnitude, figure by ignoring the length of the iron, and taking the length of the air, so 10 cms. Your H field through the air has been roughly doubled by using the iron rod within the solenoid.
In the case of a toroid, the core is homogenous and so much easier to handle accurately. The magnetic length is the circumference of the core.
Answer: In general, you have to integrate over the fields to get the length equivalent for the given geometry (core and winding).  Only special cases give a simple result with a trivial geometry factor (like "thin solenoid" or "uniform toroid").
For a high-permeability core, the flux density (B) is concentrated in it, and the effective length is the mean path of the core.  H however still depends on the current distribution.


Relativity from a basic assumption

Question: Is it possible to derive Lorentz transformations just by assuming that if two spaceships are moving away from each other with a constant speed, it is impossible for them to tell who is moving, even if they can exchange light signals. (speed of light is assumed to be a constant).
It seems to me that is shoud be possible, but to my surprise I have never seen such a derivation
Comment: it seems to you how?
Comment: This has been done by Albert Einstein himself, with the earth taking the place of one of the spaceships, and a fast-moving train taking the place of the other one, if I recall correctly. What derivations of the Lorentz transformations are you familiar with?
Comment: Here is a reference to Einstein's derivation. https://www.marxists.org/reference/archive/einstein/works/1910s/relative/
Answer: The Lorentz transformations were originally derived by Lorentz and Fitzgerald as the symmetry group that leaves Maxwell's equations invariant. (This isn't easy to see in the way they're written using vector notation as the symmetry is not manifest).
Einstein didn't actually derive the Lorentz transformations; what he did was made classical mechanics consistent with this symmetry group, this is Special Relativity.
Answer: I will give a derivation of the Lorentz boosts requiring (what at least seem to be) minimal assumptions, and we will look at what assumptions we used, and see if some of them can be derived from each other, etc. Note that by "the Lorentz transformations", I mean the Lorentz transformation of spacetime position -- Lorentz transformations of other four-touples (i.e. proving that they are Lorentz vectors) would require other assumptions, of course. I've given a more full explanation of the derivation here.
(a) The first important fact you need to prove anything about the Lorentz transformations is that they are linear. Linearity is logically equivalent to the following conditions: (under the transformation),

all straight lines remain straight lines -- the physical interpretation of this is that if an object's velocity is constant in one inertial reference frame, it is constant in all inertial reference frames. This follows from the principle of relativity.
the origin remains fixed -- this is true by definition of the transformations we are considering -- boosts passing through the same origin.

With this, we know that we can use a matrix to write down the Lorentz transformations. Which matrix?
(b) The tilt/angle of the $t'$, $x'$ axes with respect to the $t$, $x$ axes. The tilt of the $t'$ axes follows from the definition of velocity as the gradient of the worldline. To prove the tilt of the $x'$ axis is equal to this tilt, we need to first define the $x'$ axis within the unprimed co-ordinate system.
This is possible by considering invariant features under a boost, i.e. from the principle of relativity -- the obvious invariant is as follows: if you had emitted a light ray $a$ seconds in the past, it reflects off some object and returns to you $a$ seconds in the future, it was on your x-axis at time 0.

By the principle of relativity, this should apply in the primed reference frame as well. By the invariance of the speed of light, the slope of the light ray is the same in the primed reference frame. Now figuring out the angle of tilt of the $x'$ axis becomes an exercise in geometry.

And it's easy to prove, by drawing an appropriate circle, that the two tilts are equal.
(c) We now know the lines the column vectors of our matrix land on -- they are multiples of $(1, v)$ and $(v, 1)$, but which vector on that line exactly? In other words, what's the scale on the axes? This requires one extra assumption: if you boost into the frame with velocity $v$, then boost $-v$ back, that's equivalent to not boosting at all, i.e. $L(v)L(-v)=I$. Then it's just computation:
\begin{gathered}
  \left[ {\begin{array}{*{20}{c}}
  1&0 \\
  0&1
\end{array}} \right] = \left[ {\begin{array}{*{20}{c}}
  \alpha &{\beta v} \\
  {\alpha v}&\beta
\end{array}} \right]\left[ {\begin{array}{*{20}{c}}
  \alpha &{ - \beta v} \\
  { - \alpha v}&\beta
\end{array}} \right] = \left[ {\begin{array}{*{20}{c}}
  {{\alpha ^2} - \alpha \beta {v^2}}&{{\beta ^2}v - \alpha \beta v} \\
  {{\alpha ^2}v - \alpha \beta v}&{{\beta ^2} - \alpha \beta {v^2}}
\end{array}} \right] \hfill \\
  {\alpha ^2}v - \alpha \beta v = 0 = {\beta ^2}v - \alpha \beta v \Rightarrow {\alpha ^2} = \alpha \beta  = {\beta ^2} \Rightarrow \alpha  = \beta  \hfill \\
  {\alpha ^2} - \alpha \beta {v^2} = 1 = {\beta ^2} - \alpha \beta {v^2} \Rightarrow {\alpha ^2} = 1 + \alpha \beta {v^2} = {\beta ^2} \Rightarrow {\alpha ^2} = 1 + {\alpha ^2}{v^2} \hfill \\
   \Rightarrow \alpha  = \beta  = \frac{1}{{\sqrt {1 - {v^2}} }} \hfill \\
\end{gathered}
Then the change of basis matrix is simply the inverse of this matrix, which is:
$$\Lambda=\gamma  \left[ {\begin{array}{*{20}{c}}
  1&-v \\
  -v&1
\end{array}} \right]$$
Or:
\begin{gathered}
  x' = \gamma \left( {x - vt} \right) \\
  t' = \gamma \left( {t - vx} \right) \\
\end{gathered}
(d) There's still one final step, however -- we need to verify that $y$ and $z$ aren't transformed under the Lorentz boost. To prove this, consider two twins with paintbrushes running towards each other, painting the wall at waist level -- if the orthogonal axis were transformed in any way, each twin would see his paint-streak as above the other's -- the fact that the paint-streaks' relative positioning can't be different can be seen, e.g. from supposing that the two paints cause an explosion in the mix. The fact that the presence of explosions (or any boolean quantity) is invariant under Lorentz transformations is a consequence of the principle of relativity.

We used three physical assumptions:

The principle of relativity
The invariance of the speed of light
$L(v)L(-v)=L(0)$, or "if I see you moving at $v$, you see me moving at $-v$"

The first two are the assumptions you wanted. As far as I can see, the last assumption can't really be proven from the other two -- it requires some sort of symmetry principle. But that's okay.
Comment: see Mermin, N. David. "An introduction to space–time diagrams." American Journal of Physics 65.6 (1997): 476-486

Relativity from a basic assumption


Do Transformers Produce a Load?

Question: I've recently been trying to figure out how to use transformers, coils, and inductors in general. My question here is whether transformers produce a load or not. For example, if I apply current to the primary coil, is it a short circuit, and how to they do it with mains power? My guess is that a load on the secondary coil produces a load on the primary coil. Is this true? Please correct me if I'm wrong.
Comment: *if I apply current* - AC or DC current?
Comment: https://en.wikipedia.org/wiki/Transformer
Comment: I was testing it using DC, but I'm pretty it requires AC to work properly
Comment: The primary must have enough inductance so that only a small current flows in the primary coil at the transformer's specified frequency. Then, yeah, the load on the secondary also loads the primary.
Comment: Motors are loads. They're inductors. I guess transformers would produce a load of some sort. Otherwise connecting a transformer to AC would be a short circuit.
Answer: It depends what you mean...
They produce a reactive load, which is to say electricity flows through them, but they don't consume energy.
There's also losses which are usually quite small and are a real load
and consume energy to make a small amount of heat, and that humming sound, etc.
If you connect a load on the output side of the transfomer, it appears electrically as-if there was a transformed version of the load at the input side.
Comment: They have little resistance at DC. At 50/60Hz AC, the "resistance" is quite high because of the coil and the iron core. Please read about inductors first before you try to understand the transformer.
Comment: My main question was whether a short circuit is produced by any one of the coils. My tests with an old transformer have shown little to no resistance.
Answer: As mentioned earlier, learning about inductors helps before learning about transformers. Reading about Lenz law will be helpful in understanding the operation of inductors and transformers.
Transformers, when neglecting losses, do not create a load all by themselves. It transfers a load from the secondary coil to the primary coil, assuming that the voltage source is on the primary. If there is no load on the secondary (as in there is no current taken from the secondary, which means the secondary is open-circuited), then no load is taken from the source to the primary too. Under this condition, only a small 'magnetising current', which is always present flows (ideally this should be zero).
When you apply an ac voltage to the primary coil, it does not cause a short. Instead an nearly equal and opposing voltage is present in that coil, so that very little current actually flows. This opposing voltage is due the magnetic flux generated within the coil, and follows Lenz' Law. No short actually happens here, as long as the secondary coil is kept open.
For a dc voltage however applied to the primary alone, in the beginning there is little current, but in the steady state as dc voltage is a constant one, the flux changes little and the opposing voltage is non-existent. Here due to the small resistance as you measured, a near-short is very much possible.

Do Transformers Produce a Load?


Can I travel within the US with reinstated I-20 and valid F-1 visa?

Question: I have an F-1 international student visa which is still valid, and my passport is still valid, my I-20 is reinstated and my case is in the process. Can I still fly within the US? Will TSA agent ask about my I-20?
Comment: TSA agents don't care about your immigration status (at least not as part of their job). Show your boarding pass and valid photo-ID (even if that's the main page in your passport) and don't worry about it.
Comment: "my I-20 is reinstated and my case is in the process" What is in process? If your F1 reinstatement is still pending, you have not been reinstated.
Answer: They only check an ID like the driver's license or a state ID or if you dont have either, then your passport. At no point will your visa (don't even bother about your I-20) be checked for domestic travel (assuming you are inside the US right now).


How to increase range of values?

Question: We're doing database design and implementation work in my SQL course, and I accidentally made the value range too short. We're supposed to be building a DB for payment information, and when I put in the random CC number I made up, the system says "out of range value for column cardNumber". Is there a way I can alter the table to remake the data type INT(16) or something like that? (This is in MySQL if that's relevant)
Comment: Check the MySQL reference manual for available data types and the `alter table` statement. Also, don't store credit card "numbers" as numeric data types, because they are not numbers -- they are sequences of characters that happen to be digits.
Comment: I hadn't thought about it that way before, but it makes sense. Thanks for the input!
Answer: By CC, do you mean "credit card"?  If so, I strongly recommend you use VARCHAR(16) CHARACTER SET ascii.  Or maybe more than 16.
It is not a number; you will not be doing arithmetic with it.  It is a string of characters; today it is only digits, but there is very little stopping it from including letters tomorrow.
Security is a big issue.  You _really should hire a security consultant to explain to you why you should not be storing CC numbers and to explain what to do instead.
Fixing it:
ALTER TABLE tbl_name
    MODIFY COLUMN cardNumber VARCHAR(16) CHARSET ascii;

This won't fix any inserts with bogus values because they overflowed, but it will make it possible to insert valid 'numbers'.
Do quote the CC values when inserting/testing/etc.
Answer: I agree with the comment above that you should use a string type column (for example CHAR(16)) for a credit card number, not a numeric.
MySQL's INT is always a 32-bit integer, supporting values from -2147483648 to 2147483647. The optional "length" argument is frequently misunderstood. It only affects the display width, not the range of values supported in the column. A column defined as INT(1) or INT(9) or INT(28) are all the same size.
The display width is irrelevant unless you use the ZEROFILL option, so values are padded with zeroes when you fetch the value. It doesn't change the size of the data type. The padding zeroes are not stored, they are added as the result set is fetched.
mysql> create table mytable (i1 int, i2 int(8) zerofill, i3 int(16) zerofill);

mysql> insert into mytable values (42, 42, 42);

mysql> select * from mytable;
+------+----------+------------------+
| i1   | i2       | i3               |
+------+----------+------------------+
|   42 | 00000042 | 0000000000000042 |
+------+----------+------------------+

ZEROFILL has been deprecated in MySQL 8.0.17, because it is so confusing.
Comment: Thanks for the answer, I get it now

How to increase range of values?


Should we distribute travel.stackexchange.com flyers/stickers in hostels and hotels?

Question: To promote the site we could make some stickers or flyers and distribute them in hostels or hotel lobbies. This would spread the word but I am not sure how practical this is. I have been in hundreds of hostels in the last six years but I wouldn't want to carry tons of those papers with me in my small backpack. Also even though printing them may not be too expensive, postage to send them out could be very high.
Answer: It sounds like a good idea but...
I've worked in a hostel for almost a decade and I can tell you the amount of brochures posters and stickers we receive in the post or by hand from people promoting this, that, or the other thing, would be enough to cover every inch of the building several times over.
So we're very judicious about what stuff we accept and promote, all the rest goes to the paper recyclers. Such a waste.
So the hostels would have to perceive some value in it, something special that makes them more important than most of the junk they receive.
For hostels that have internet cafes or rooms putting stickers in those might work a bit better. But now 99% of the world has switched to wifi and netbooks and smartphones and probably tablets.
Better might be to find ways to make deals with booking sites like hostelword, hostelbookers, maybe even couchsurfing.
Or a bit of guerrilla marketing where travellers sneakily stick them up in places they think they will work. I can't guarantee no negative repercussions from this approach though...
Comment: I see your points and agree, physical fliers may not be worth the effort. I will just make travel.stackexchange.com the home page on all hostel computers I come by :-)
Comment: In my work in hostels I have found both HostelWorld and HostelBookers to be roughly equally crap. As a backpacker I have found both to be equally good. I think it was HostelBookers that utterly failed to comprehend my emails asking what happened to my old account history with them and informing them of a hostel they listed which was no longer operating. HostelWorld on the other hand pretty regularly sold beds on the day in high season instead of stopping one day before, resulting in double bookings.
Comment: Yes hostelworld should recommend us since we almost always recommend hostelworld if it is a hostel question :D
Comment: 99% ? I doubt that is true even in the US, world wide there is still or good portion of people travel without gadgets. I don't have a laptop, phone or even a watch.
Comment: I was the only one in my current hostel without a phone - so they gave me one! )-: I also don't have a watch. I think we only have one guest without a laptop or netbook though. But then again we don't have 100 guests so I should admit to having used [the Dilbertian technique](http://dilbert.com/strips/comic/2008-05-08/?Page=4).
Comment: @Roflcoptr no way, Hostelbookers all the way, I refuse to link to Hostelworld after the stories I've heard from hostel owners about how they treat them :(
Comment: We side-track, but does the world need another Hostel booking site? Open-source, with a nice API and cheaper for hostels and guests! There are a lot of developers here, we could start such a project.
Comment: @PeterHahndorf: Building and promoting a successful booking site is not a trivial task. You have to check and update availability with each booking request, and doing that "live" on very big sites can bring down your database. Also: you MUST charge a booking fee or some sort of cash advance, because otherwise people book but never show up and pay, while the hotel owner could have rented out the room to some walk-in guest.
There is to much money in it, and you would have to compete with Expedia, trip adviser, offer reviews, make sure your listings are current and the hotels still operate etc...
Comment: You guys might be interesting in [this post about a few new hostel booking sites](http://meta.travel.stackexchange.com/questions/430/some-hostel-booking-sites-we-might-not-all-know-about), one created by my former employer.
Comment: Guerrilla marketing? Say...what do you think of Travel.SE branded toilet paper? Everyone needs THAT shit...
Comment: Who will toilet train the gorilla?
Answer: Just recently some members of the bioinformatics stackexchange community published a scientific paper on their SE platform. It might be difficult to write a scientific paper on traveling, but I guess that there are magazines that could provide a nice platform to present travel.se.
So I would propose to search for a contact person that could help getting a report on travel.se in one or more popular traveling magazines. In the mean time tweeting your answers and question, might also get new members to the community. An other options is to blog about a very interesting experience you had because of information you got out travel.se
Answer: Yes we should, and StackExchange is more than happy to help us.
However, this can and only should happen once Travel.SE graduates out of beta. We are doing good work now but there's so much more we could do. There's a long way to go still...we'll get there! You could argue we could do with publicity now to graduate out of beta but that's true for any SE site currently in beta and I don't see why resources would be favoured for one beta and not another. That's kinda the whole point of having a beta period.


limit and convergence

Question: I have two functions, $f(x)=x$ and $g(x)=x-1$
$$\lim_{x\rightarrow \infty} \frac{f(x)}{g(x)}=1$$
this means that when $x$ goes to infinity, those two function get closer and closer, So I think I can write it like this:
$f(x)\approx g(x)$ as $x \rightarrow \infty$ but how come
$$\int^{f(x)}_{g(x)} 1 \, dy \approx 0$$
we know for shout that this function must be 1. I just don't understand limit says that two functions are almost same, but the integral gives different answer.
Comment: Even more confusing: $f(x)=x+\ln x$ and $g(x)=x$. Then $f(x)\approx g(x)$ at $\infty$ but the integral $\int_{g(x)}^{f(x)}1\,dx=\ln x\to +\infty$.
Comment: The ratio having limit $1$ does not meet gets closer and closer. Graph $y=x$ and $y=x-1$. We get two parallel lines.
Comment: Just a comment on your notation. Asymptotic equivalence is usually denoted by ~, not $\approx$.
Comment: Why do you write $\int^{f(x)}_{g(x)} 1 \, dy \approx 0$? I would not say that $1 \approx 0$. Are you sure you do not want to write $>$ or $\neq$ or even $\not\approx$ instead of $\approx$?
Comment: This is exactly the problem with $\approx$ symbol. To me the statement $$\lim_{x \to \infty}\frac{f(x)}{g(x)} = 1$$ looks far more easier to grasp than the confusing $f(x) \approx g(x)$. One should never avoid rigor in favor of intuitive-ness/simplicity. Also this means that $f(x)/g(x)$ is close to $1$ and **it does not mean that $f(x) - g(x)$ is close to $0$.**
Answer: The fact that
$$\lim_{x\rightarrow \infty} \frac{f(x)}{g(x)}=1$$
does NOT mean that
"when $x$ goes to infinity, those two function get closer and closer".  It only means that the two functions get PROPORTIONALLY close, in the sense that $\vert f(x) - g(x)\vert$ gets PROPORTIONALLY small when compared to $g(x)$.
However, the absolute difference may $\vert f(x) - g(x)\vert$ may remain constant (or even increase).
In the case of $f(x)=x$ and $g(x)=x-1$ the absolute difference $\vert f(x) - g(x)  \vert$ remains constant. So, in absolute terms, $f$ does not get closer to $g$.
In the case of  $f(x)=x+\ln x $ and $g(x)=x$ the absolute difference $\vert f(x) - g(x)\vert$ increases but more slowly than $g(x)$. So, in absolute terms, $f$ even gets away from from $g$
Remark: Please note that it is easy to prove that
$$\int^{f(x)}_{g(x)} 1 \, dy = f(x)-g(x)$$
so your questions regarding the integrals are actually questions about $f(x)-g(x)$.
Answer: Whilst I wouldn't really use the notation $f(x) \approx g(x)$, since a functions tail having similar values at the tail doesn't mean they are anywhere close to the same function. Humouring your result, however, it seems that both results you've put forward are consistent with one another.
You get, from the limit of the ratio that $$f(x) \approx g(x)$$ as $x \to \infty$ and your integral agrees with this, since $$\int^{f(x)}_{g(x)} 1 \, \mathrm{d}y \approx 0 \implies \bigg[y\bigg]_{g(x)}^{f(x)}\implies f(x) - g(x) \approx 0 \implies f(x) \approx g(x).$$
Answer: The integral says the same. Note that you can see that integral as a rectangle with sides 1 and $f(x)-g(x)$. The area of the rectangle is approximately 0, this means that  $f(x)-g(x) \approx 0$, and thus $f(x)\approx g(x)$

limit and convergence


"Use windows xp style dpi scaling" disables automatic auto-hide of taskbar on W7. Workaround?

Question: We noticed that on W7 with DPI set to > 125% or to > 100% with ("Use windows xp style dpi scaling") turned off, our fullscreen mode (which sets the client rect of our window = desktop rect of the main monitor) no longer hides the task bar like it does for other settings.
(The setting can be found in the Control Panel\Appearance and Personalization\Display section after clicking on the "Set custom text size (DPI)" link)
I found the following interesting article:
http://www.mathies.com/weblog/?p=908
So I set out to try to work around the bug in other means than manually hiding/restoring the taskbar visibility but so far I've failed and currently believe it's a bug in W7 (and possibly vista).
The following applications also fail to work properly in fullscreen mode (the taskbar is still visible):
* Microsoft Visual Studio 2008
* Microsoft Word 2007
* Adobe Reader 9.1.3
These apps work (probably by hiding the task bar through the WIN32 API):
* Powerpoint Slide Show
I also tried creating a brand new MFC-based app and use its "SetFullScreenMode()" functionality but it fails in the same way as all other apps on the list.
Answer: For now it seems the only temporary fix which has worked for me is to disable display scaling on high DPI settings for the program your using fullscreen with.
To do this goto properties (right-click the program's shortcut)  >> compatability >> and check the option to disable display scaling on high DPI settings.
The only drawback is that you will not get the higher DPI for that program but the taskbar should hide when fullscreen is enabled.
This is a problem that I understand Windows 7 developers are aware of but have not come out with a solution.


Expert vs. Candidate Master?

Question: What is the difference?
I mildly understand that Candidate Master is a 2000-2100 FIDE Title, but I've seen several USCF players with that under their "Norms" section, in conjunction with 1st Category, 2nd Category, etc.
Answer: The USCF has two independent systems for naming players' levels:
1) Rating-based: Senior Master (2400+), National Master (2200-2399), Expert (2000-2199), Class A (1800-1999), Class B (1600-1799), etc. This describes your current rating; you can be Class A today and Class B next week. The one exception is that once your rating gets to 2200, you are a master forever. These names and rules have been around for decades and are what most players are familiar with.
2) Norm-based: Life Senior Master (2400+), Life Master (2200+), Candidate Master (2000+), 1st Category (1800+), 2nd Category (1600+), etc. You are granted one of these titles by achieving five norms of that level and getting to the minimum required rating (at least once). Generally speaking, a title norm is a tournament performance that would be impressive for someone who had the minimum rating for that tile. These norms are what you see when you look at a USCF player's rating page. The full rules for norm-based titles are available online. One intent of norm-based titles is to provide an incentive for people to play in which they can't "lose ground", like they can with their rating. These have been introduced more recently and many players are not even aware of them.
Answer: To obtain the FIDE title of Candidate Master (CM), it is required to have a FIDE rating of 2200 or more. See the FIDE handbook or Wikipedia. The title is for life.
According to Wikipedia, the USCF title of Expert is awarded to players rated from 2000 to 2199 (USCF rating!). The title is not for life.
So, the two titles depend on two different ratings. The question that now arises is: how can we compare the FIDE rating with the USCF rating?
According to the graph of this article, a 2100 USCF rating roughly corresponds to a 2000 FIDE rating.
So it seems that, usually, a FIDE-CM is a stronger player than a USCF-Expert.
Comment: One needs roughly 300 more points to achieve FIDE CM than USCF CM (expert). Interesting.
Answer: FIDE CM requires FIDE rating of 2200. However, this title can also be obtained through international chess tournament (as a reward), in which case there is no rating requirements. I have seen people with CM title has FIDE rating as low as 1400. And it is not uncommon to see young CM/WCM (sometimes WFM) to have a FIDE rating less than 2000.
USCF expert is for people of 2000-2199 USCF rating. It is not an official title (nothing on their profile page). norm-based USCF title (CM) will be achieved if the player is over 2000 AND acquired 5 "C" norms in tournaments. USCF titles (CM/NM) cannot be rewarded in a tournament.
So if the FIDE CM is achieved by rating than likely the player is stronger than a USCF CM. May not be the case otherwise.
Comment: FIDE changed the rules; you now need to have at some time achieved a 2000 rating to get a direct CM title from FIDE.

Expert vs. Candidate Master?


Why Ran did not recognise Shinichi right away?

Question: I recently started watching Detective Conan and I learned that Ran and Shinichi are in fact childhood friends. So my question is,  when Shinichi, due to the side effects of the drug he was forced to take, end up with the appearance of an elementary school student, why did Ran, who has known him since childhood not see the resemblance right away?
Comment: In the first period, it is really a problem and there are many stories to describe how Conan could keep the secret. However, the author seems to ignore this problem, and Ran became a character that has almost no special position in the story
Answer: She may well have noticed the resemblance, but seeing an elementary school student who looks a lot like how a friend of yours used to look in the past, does not immediately lead one to the conclusion that that student is in fact your actual friend! It is never explicitly stated, but in all likelihood she simply noted (subconsciously?) the similarity (if she were paying attention in the first place) and moved on.
Comment: i agreee to this. I thought i remember an episode in which she look to Conan and said he remembers someone which could mean that Conan actually resembles Sinichi..could also mean its subconsciously.
Answer: Ran had a few suspicion arcs, where she believed (Desperate revival) or suspected Conan's true identity. The truth is quite nonsense, if someone comes and says your friend has shrinked from 17 years to 7 years, would you believe? It is very illogical and hard to believe. Plus Conan always fools her into some kind of trick at the end of suspicion arcs and he has a lot of other people to help him out (Professor, Heiji, His parents, Ai), and moreover Conan tries to act like a kid around her and wears big glasses. So it shouldn't trigger more suspicion than we see. She just thinks his big resemblance to Shinichi is some kind of coincidence, though she suspects at times, and there shouldn't be more suspicion than this logically.


Is Earth's North pole actualy a South pole?

Question: As far as I am concerned, the compass is facing along the magnetic field lines on the Earth's surface which in turn points towards the North pole by its design. But for a magnet, the field lines go from north to south on the surface (outside the magnet). Does this mean that Earth's geographic North pole is the magnetic South pole?
Comment: https://en.wikipedia.org/wiki/North_Magnetic_Pole#Polarity
Comment: Part of the issue is that magnets have poles that could be referred to as "north seeking" or "south seeking"
Answer: It is. The geographic North is close to the Magnetic South. They're not absolutely coincident, and the magnet is slightly moving continuously due to Earth's dynamics. However, the geographic North pole is well stablished.
However, remember that names are just a convention.
We call it North because the compass points there. That's the reason for the name. Then, if you start thinking, yes: that means a magnetic South inside the Earth, but the name was there before.
Comment: Slightly backwards, I think. The direction North was named *before* the magnetic convention was adopted. The magnetic North is named because it points North on a compass, so the geographic North pole is a magnetic South pole.
Comment: There is no system of naming that can make all three names consistent, because magnetic principles involve an attraction of opposites, whereas the linguistic desire is to express association by giving the same name to the Pole as to the side of the magnet which orients towards it (rather than the side which flees from it). (2/2)
Comment: Note also that there is no misnomer here. The geographic North Pole was not named by reference to magnetic phenomena, but because the direction of North was already established (etymologically it means "to the left of the rising sun"), and the North Pole is the Pole which is found to the North. If the poles of a compass magnet are then named according to which pole they orient towards, then the magnetic poles themselves must logically be the opposite. (1/2)
Comment: When I read your comments I was stranged because I tought that's exactly what I said. But reading it again, it's true that it might be confusing. What I meant is: "The direction where the compass points to is called North", but that was like this before people knew WHY a compass does that. I was trying to say the same as the immediately previous comment, but it seems I failed haha. Of course the name could have been given even before. It's the direction of the Polar star, the direction of the moss in rocks, etc.
Answer: Magnetic North is so-called to distinguish it from True North. In other words, it is a location, not its magnetic polarity. It's magnetic polarity, however, is south as it attracts the north magnetic pole of a magnet or compass needle.


"NFC tag type not supported" message

Question: I have an app which reads and writes NFC tags. I tested my app on a Galaxy Note 3 and it works fine. But when I test it on a Note 5 and a Galaxy S6, a message pops up that says, "NFC tag type not supported".
Is that the fault of my app or are my tags not support on those devices?
My tag type is ISO 14443A standard.
Answer: You are using MIFARE Classic tags. While these tags are partially based on ISO/IEC 14443-3A (or actually the other way round), they use a proprietary encryption algorithm and a proprietrary framing. Since NXP (the owner of MIFARE Classic technology) does not seem to license MIFARE Classic reader technology to other chip manufacturers, access to the memory of MIFARE Classic tags is only available on NFC devices with NXP chipset.
This usually only means that you can't access the data on MIFARE Classic tags through devices without an NXP NFC chipset. Usually you can still access the ISO/IEC 14443-3A anti-collision identifier (UID) through the Android API. Unfortunately, Samsung decided to completely block MIFARE Classic on their devices by displaying the message "NFC tag type not supported" instead. As a result, you can't even detect these tags from apps on the affected Samsung devices. See Hide "NFC Tag type not supported" error on Samsung Galaxy devices for possible ways to work around that limitation.
With regard to your specific devices, the Samsung Note 3 contains an NXP PN544 NFC controller and, consequently, supports MIFARE Classic. The Samsung Galaxy S6 contains a Samsung S3FWRN5P NFC controller (the Note 5 probably also contains an NFC controller from Samsung) and, consequently, they don't support (and actually completely block) MIFARE Classic.
Answer: It seems your tag is a Mifare Classic : https://en.wikipedia.org/wiki/MIFARE#MIFARE_Classic
Mifare classic:

It uses an NXP proprietary security protocol (Crypto-1) for
  authentication and ciphering. This means only devices with an NXP NFC
  controller chip can read or write these tags.
Answer: I confirm that my Samsung S7 with android 7.0 shows the "uncompatible" message but it can properly read mifare tags (just the ID), but only by using NXP specific app.
S7 also supports HCE to emulate cards, but I have yet to find an app which can replicate just the id of a card.

"NFC tag type not supported" message


sharing printer and cd-rom via local network

Question: I have to share cd-rom and printer to network which contains windows and linux machines. For this solve I have got: a rpi 3 b+, hp deskjet 2520hc printer and cd-rom reader/writer (transcend).
Comment: Plug each of your devices into your ethernet network and follow  each manufacturers instructions.  For Raspberry Pi, search "How do I get Raspberry Pi on my network?". In general, start with wired connections before attempting wifi.
Comment: cd-rom reader is a basic reader with usb connection which don't have network functions
Answer: Install the samba server:
rpi ~$ sudo apt update
rpi ~$ sudo apt full-upgrade
rpi ~$ sudo apt install samba

It description (apt show samba) says:

SMB/CIFS file, print, and login server for Unix
  Samba is an implementation of the SMB/CIFS protocol for Unix systems, providing support for cross-platform file and printer sharing with Microsoft Windows, OS X, and other Unix systems.

Edit /etc/smb.conf and configure the server to your needs. There are some examples in it and you get tons of information for this on the internet.
To connect a linux client to a smb share you need smbclient and/or cifs-utils.