Music Composition - matching lyrics and musical meters

Question: for all the songwriters and musicians out there, how can you tell what time signature a lyric is written in? Someone please explain to me the concept of writing lyrics in different time signatures!! Thank you!
Comment: The same lyrics can be put to many time signatures. It all depends on how the lyrics are actually performed when put to music. If you can focus in more on the exact problem you are having, we can offer a much better answer.
Comment: Your question is really broad. Do you know about poetic meters, stresses, etc? http://legacy.earlham.edu/~tobeyfo/musictheory/Book1/FFH1_CH2/2A_PoeticMeter.html
Comment: can you explain how to set the same lyrics to different time signature?
Comment: This is essentially your fifth question asking the same thing in different ways. You perhaps need to better explain what it is you're actually looking for.
Answer: Lyrics, and poems, often have a rhythm to them. When they're spoken (no need for music), there will be certain words that are naturally emphasised. That will give a basic beat to how they're spoken. Unlike prose, which is how a story might be read - without any specific rhythm.
By reciting these lyrics, and tapping a foot at the same time, a 'feel' will be apparent. Between the more emphasised syllables, a number of beats can be counted. That's the answer to 'different time signatures'!
Sometimes, a set of words can be recited in a couple of different ways. That's then up to the composer to decide which they prefer.
Answer: There are long and short syllables and there are long and short notes.*) You can choose any rhythm you want to underlay to your lyrics, as long you respect the long and short syllables. Mark the  syllables of your text with long and short underlines. Mark also the accents (the words you emphasize). Read your text only speaking "long short long" etc.
If a verse doesn't correspond to the rhythmic phrase you can make a rest at each line.
The best is you try different solutions. By this way you will learn the note lengths and the different possibilities.
*)
e.g.  __ _ __ _ long short can be 2:1 or 3:1 (there are no rules at all!)
So "long short" can be notated in a rhythm of half notes and 4th notes or 4th notes and 8th notes or by dotted notes. So this can be notated as 3/4, 6/8 or dotted in a duple meter.
_ _ _ _ is mostly an upbeat.
long short and short long very frequent patterns, but also long short short ...
If you can present a text here with your marks (underlines) and eventually an your own task you will be probably better helped here.


Why do chips not always "meet the grade"?

Question: During manufacture, integrated circuits are tested at varying frequencies and temperatures to categorise them into speed grades. However, why don't all ICs come out the same and work the same? They all come from the same photolithographic mask, right? Am I missing something?
Answer: Modern ICs are REALLY small. Tolerances are huge during processes such as ion implantation and oxide growth. At such small sizes, these things can't be treated as anything but a probabilistic process. Lines also tend to be smeared due to the feature size being the minimum possible given the wavelength of light. When you get worst-case performance in a bunch of these different steps, then you get a non-functioning IC.
Companies don't design the IC so that it functions at the worst-case - it would be too costly. So instead they do Monte Carlo simulation of the manufacturing parameters, estimate a yield, and do testing after the fact.
Typical "design corners":

Source: What I remember from my IC manufacturing class.
Comment: @tyblu: That graph means practically nothing to those of us who haven't taken an IC fab class (doesn't even seem familiar from VLSI)
Comment: Added what *I* remember from my IC manufacturing class ;)
Comment: @NickT, A manufacturing window within which transistors fall. Variations in the (at least) 2 doping stages make the 2 types of transistors either 'fast' or 'slow'. Will clarify edit when brain is less fuzzy.
Answer: There isn't really a "worst case" - manufacturing IC's is a statistical process, there will be some (small) percentage of transistors that are a very long way from typical speed (imagine a statistical distribution curve drawn here).  The distribution of speeds for the two types of transistors in CMOS (NMOS and PMOS) don't correlate well.
Thus, they pick those 4 corners: Fast/Fast, Slow/Slow, Fast/Slow, Slow/Fast out of their two transistor speed yield curves.
The further out from typical they choose to make the corners, the higher their yield, but the more difficult it is to design.  If the corners are too far apart, design for operation at the 4 corners takes too much development time and can increase the die size.  Increasing the die size will decrease yield.
The four corners often form more of a parallelogram than a rectangle.  If both types of transistors, across one whole die, are all very fast, the part will probably work, maybe well beyond the rated speed, and same for both transistors getting slower - the part will work, but at a very slow speed.  The difficult corners are the fast/slow and slow/fast.
The design is indeed fully simulated at typical/typical, and the four corners.  Monte Carlo simulation is used to check some of the intermediate combinations.
To increase yield, they can sort the die into bins after manufacture and thus sell the slow/slow parts that would otherwise be thrown away, and sell the fast/fast parts for a premium.
And yes, some manufacturers will use fuses to restrict a part to a certain speed grade.  Because manufacturing yield curves and market demand being uncorrelated functions, sometimes they have to down-grade parts.
Answer: Mostly what krapht said. I'd add that parts are getting so small that even without variation in geometry, the number of doping atoms per transistor are also becoming small, so simple statitical variation means some will be faster and some lower, and the gain also varies. You'll end up with some that either can't work, or can only work at say a slower clock rate. Also you might see some computers offered with say a three-core chip. Such a chip is probably a four-core chip, but a faulty core has been disconneted in postprocessing, and the chip sold as a cheep 3banger. I would add, nothing wrong with that, if that's the capability you need, then the manufacturers bad luck is our gain.
Answer: IC chips are just shrinked to the point where they "barely" work.
You can make chips on 3um process with nearly 100% good rate and very little variation, but it's just too expensive (and slow).
Comment: @reemrevnivek: The cost of producing 1 wafer's worth of chips is (roughly) constant. Yes, a cutting-edge 32 nm design has a lot of scrap. "The same" chip design printed 100 times larger (on a 3 um process) gives nearly 100% yield, but a given wafer will produce 1/10,000 as many chips, so the result is even more expensive per chip. BarsMonster seems to be pointing out that shrinking the design to some point in the middle -- such that most chips "just barely" work and quite a few don't work at all -- produces the most *good* chips per wafer, and so the lowest cost per chip.
Comment: 3um?  I read that the newest Intel process is 32nm - Yes, nanometers!  I understand they probably have a lot of scrap, and at $300 a pop (or $1000 for the extreme series) they can afford to work slow, but I'm not understanding your point here.
Answer: For analog functionality, sometimes the chip can be intentionally hobbled and the same die sold cheaper with not-so-good performance. Blowing on-chip fuses to reduce bias currents (for example) can reduce the overall performance of the chip.
For digital chips that are required to run at speeds approaching the capabilities of the manufacturing process, final test will weed out the best performers from the not-so-good performers and 'bin' them accordingly. Differences in speeds are usually caused by statistical variations in the manufacturing process.
Comment: Without some evidence, I'd be hard pressed to believe that manufacturers would design in adjusting circuitry and take the time to blow fuses. I'd be much more inclined to blame plain old process variation than some sort of chip-hobbling conspiracy.  Also, reducing bias currents is usually a good thing.
Comment: It's quick enough to blow a fuse in final test. As for using the same hardware for different performance grades intentionally, this happens, and not just with chips: http://technabob.com/blog/2010/12/27/amd-radeon-hd-6950-upgrade-bios-hack/
Comment: Certainly back when Intel sold 386/486 chips with and without an FPU, they were from the same die: ones where the CPU worked and the FPU didn't would simply have the FPU disabled.


checkout step 3 shipping method blank?

Question: Im currently on magento 1.7 and when I try to checkout after filling out all the information i get stuck at step 3 for shipping method, it just shows up blank. I've been to system/config and made sure i have a shipping method on but it just doesn't show up?
Comment: Any errors in magento logs or php/apache logs? Any errors in javascript? Did you install 3rd party shipping extensions?
Comment: Have you enable shipping method from backend ?
Answer: Sounds like you don't have any carriers switched on, or any that are returning rates. Suggest just switch on flat rate and see if that shows. If you have a custom checkout switch back to the default theme and see if it works there (if it does its a checkout issue).
If someone was totally failing you would see an exception in var/error.log. And it would probably bounce you back to the cart page which it isn't.

checkout step 3 shipping method blank?


difference between IRQ and Interrupt Priority level

Question: Can someone tell me if the IRQ of a device is different to the Interrupt Priority level?
Answer: No, they're not the same.
The IRQ is a hardware interrupt signal used to tell the CPU that something needs its attention.
It's been a while but I don't think there was any priority implied by the different IRQ signals.
Interrupt priority will be assigned to software interrupts, meaning that some are considered more urgent than others.
Comment: I looked in Wikipedia, and found you meant *Programmable Interrupt Controller*. There was no mention of 'priority' in the article, so I must conclude that any prioritizing is indeed done by software. You can do *anything* with software, you know ;-D
Comment: so IRQ's themselves have no priority attached to them, but when handled by the PIC, they are prioritized by the PIC?
Comment: Oh, we're talking about PIC processors. You tagged the question 'windows'. I don't know about PICs, but it seems to me that if handling the IRQs is handled by software, anything is possible. Sorry, I can't be more specific because I don't know what the software does.
Comment: IRQ in the general PC sense means "interrupt request line".  different IRQs meant different *addresses*, and allowed multiple devices to interrupt the processor without sharing an interrupt line.  had nothing to do with priority.
Answer: An IRQ is an hardware interrupt request from a device.  It is a hardware signal with alerts the CPU that external hardware wants it's attention.  The interrupt usually causes the CPU to immediately stop what it was executing and jump to different code, usually an interrupt service routine that was registered earlier.
Then once the CPU is executing an interrupt service routine, what should happen when another interrupt request comes in while the CPU is processing a different interrupt?  Interrupt priority level is what answers that question.  The simplest priority seem, as pointed out in Wikipedia, is an interrupt disable setting.  So while servicing an interrupt, all other interrupts will not interrupt the processor (they will no be lost, they will be serviced once the current service routine is finished).  With more complex priority scheme, some interrupts will interrupt others.
For example, maybe the hard drive interrupt has a higher level than the keyboard, since the hard drive speed is important and no one is going to notice a < 1ms delay in processing a key press.


what is the integral on $[0,2]$ of $x/(3-2x)$

Question: i know that this is an improper integral, but when you evaluate the limits as $x\to (3/2)^-$ and $x\to (3/2)^+$, you get positive and negative infinity but I am not sure if you can cancel them out...any help is very appreciated!
Answer: No, you cannot cancel them out, as each improper partial integral must converge, yet
$$\int_0^{\frac32-\epsilon}\frac x{3-2x}dx=\frac12\int_0^{\frac32-\epsilon}\left(\frac3{3-2x}-1\right)dx=\left.-\frac34\log(3-2x)\right|_0^{\frac32-\epsilon}-\frac12\left(\frac32-\epsilon\right)$$
yet the limit
$$\lim_{\epsilon\to 0^+}\log2\epsilon\;\;\;\text{isn't finite}$$
and this is enough to conclude the integral diverges.
Answer: As Timbuc answered, the integral doesn't exist in the Riemann sense. It's not the limit of a Riemann sum.
However, there is a way to deal with these integrals, called the Cauchy principal value integral. Introductory Calculus textbooks don't address this, but if you're curious:
After polynomial division, you get:
$$-\frac 3 2 \int_0^2 \frac 1 {3-2x} \, \mathrm dx - \int_0^2 \frac 1 2 \, \mathrm dx$$
The second integral doesn't cause us any problems, so I won't deal with it. Timbuc's answer explains why the Riemann integral doesn't exist for the first term. Here's a different type of integral, called the Cauchy Principal Value integral:
$$-\frac {3}2 \, PV \int_0^2 \frac 1 {3-2x} \, \mathrm dx $$
$$ = - \frac 3 2 \lim_{\epsilon \to 0^+} \left({\int_0^{-3/2 - \epsilon} \frac 1 {3-2x} \, \mathrm dx + \int_{-3/2 + \epsilon}^2 \frac 1 {3-2x} \, \mathrm dx }\right)$$
$$= - \frac 3 4 \lim_{\epsilon \to 0^+}\left({\ln |-2 \epsilon|- \ln 3 + \ln |-1| - \ln (2\epsilon) }\right) $$
$$= - \frac 3 4 \lim_{\epsilon \to 0^+}\left({\ln |-2\epsilon|- \ln \left({2 \epsilon}\right)}\right)- \frac 3 4 \lim_{\epsilon \to 0^+}\left({\ln |-1|- \ln 3}\right)$$
$$= \frac 3 4 \ln 3 $$
I emphasize that this is not a Riemann integral. That's what the $PV$ is for.
Comment: Good point and good answer. +1


How is the content of configuration files parsed on different Linux distributions?

Question: Different Linux distributions store the same configuration parameters in different files. For example IPv4 address in Debian Wheezy is stored in /etc/network/interfaces file while in Fedora 20 it is stored in /etc/sysconfig/network-scripts/ifcfg-eth0 file. In addition, syntax of those configuration files is different. How do distributions parse those files? In addition, is the content of configuration files parsed in a way that userspace utilities like ip and ifconfig are called or are there some lower-level system calls which actually configure the kernel?
Answer: The kernel doesn't read any configuration file. As a rule, kernels avoid accessing the filesystem; there are a few exceptions and variation, but mainly, the kernel launches a program at the location /sbin/init when it boots, and the only accesses filesystems on behalf of user land processes.
Network configuration files (like other kinds of configuration files) are read by applications. For the network configuration files, these applications are suites of scripts and accompanying binaries that read the file and apply the configuration by making system calls. For network configuration on Linux, the system calls are mostly ioctl calls on sockets (you don't need to understand this).
Over the history of Linux (and Unix before it), some configurations have become standard, because everybody agreed on how to do it. This is largely the case (though not universal) for users (/etc/passwd, NSSwitch) and filesystems (fstab). On the other hand, network configuration has remained pretty diverse. Distributions derived from Red Hat keep it under /etc/sysconfig/network; distributions derived from Debian keep it in /etc/network/interfaces.
Going with Debian as an example, /etc/network/interfaces is parsed by the ifup program, which is invoked from /etc/init.d/networking, the init script in charge of setting up networking, itself invoked by init.
Comment: @Martin Yes, that's correct.
Comment: linux kernels launch `init` at boot by default. `/sbin/init` is often later execed by `init.`
Comment: @Gilles Thank you very much for this explanation! So in case of Debian it is the `/sbin/ifup` binary which understands the `/etc/network/interfaces` file and creates system calls accordingly? And for example it's some other binary which parses the `/etc/sysconfig/network-scripts/ifcfg-eth0` file under Fedora and creates appropriate system calls? And usually users create those very same system calls with `ip` or `ifconfig` utility? Same principle probably applies for all the configuration files not just for network related configuration?


Can Patent US 5350471 be re-patented after expiration?

Question: Patent No US5350471 "Production of cross-laminated film from tube" was given patent in year 1993 now in 2013 this patent will automatically expire as it completing 20 years. Can this patent be re-patented?
Answer: A patent cannot be "re-patented" once it has completed its lifespan. Patents are granted to inventors of new things. Once published, whatever the patent describes is "old" from then on. The actual expiration date may be different from exactly 20 years, processing time and/or other extensions to its term may be applicable. The USPTO Public PAIR site will provide more details about a specific patent. Note that other patents may exist, or may be filed later, based on some or all of the same technology described in this patent. The entire text and drawings of a published patent become "Prior Art" which should, in effect, prevent later patents from making claims that are "taught" in that document. There is also a prohibition on double patenting - however, sometimes clever lawyer-speak can obfuscate claims and it could slip by the USPTO.
You could also end up with families of patents with minor differences in claims, which would appear to cover the same end product or method. A good way to track these is by using the original "application number" and following it through the PAIR site to find any other derivative patents based upon it, as well as off the patent itself. Searching by the inventors' name(s) can also turn up other applications/patents which may be similar.


Drawing a specific color in the image editor

Question: I'm trying to do something that seems very elementary but I can't figure it out: I want to make a 8x1 px bitmap and give each pixel a specific value in the Blender image editor. My first problem is that I can't resize the brush ('Draw' tool) small enough; it's always bigger than 1 pixel so I draw on other pixels. Secondly I can't find a blend mode that will just assign the color that I chose in the Color Picker; it always adjusts the existing color.
Answer: I think your falloff should be adjusted. Mine stops after radius 1 (2 is the diameter)
I was able to paint pixels successfully without modifying other pixels. Let me know if you need the blend file.
Cheers!
Comment: Ah I see, yes after some fiddling I now understand how it works. Thanks!
Comment: (for anyone trying after me: it solves both aspects of my question as long as the falloff is steep enough; I put mine at a full drop about midway, that makes most sense to me conceptually)


different interactive and non-interactive shells

Question: A user account has it's shell defined in passwd file as bash. I would like to change this user account's shell to tcsh for non-interactive jobs (like ssh ), but keep interactive shell to bash. Is there any way to configure this on the system?
Comment: If you intend to use tcsh for some remote scripts called by ssh, you merely can invoke tcsh in you ssh command line.
Comment: You can use "ForceCommand" option in config of sshd with specified full path to new shell. However it will not restrict user from access of initial shell.

Could you please elaborate what do you mean by non-interactive?
Answer: If you want login shells to use one shell, but non-login shells to use another, you can achieve this by defining the default shell for the user (in /etc/passwd) as the one that is to be used as the non-login shell  (tcsh in your case), then switching to a different shell when a login shell is opened.
In your case this can be acomplished by adding this to the file named ".profile" in the users home-directory (creating it if it doesn't exist yet):
<code># Switch to bash for login shells
if [ ! -n "$BASH_VERSION" ]
then
        exec /bin/bash -l
fi
</code>


Why did HaShem allow Yeshayahu to serve naked?

Question: Maybe I misunderstood the verse, but Yeshayahu 20:3 teach us that Yeshayahu was a servant and walked naked and barefoot for three years. Why would HaShem allow him to do so? While Adam and Eve had to be clothed because of their nakedness, the nakedness of Noah shouldn't been seen, and other verses who teach us to dress well before HaShem.
Comment: @user6591 It's not about wrong or right, nor do I like to compare these things. If they are from HaShem, it's probably for a greater good. But I'm just looking for a reason or meaning behind it. And sometimes words contain a different or deeper meaning.
Comment: Is that worse than telling Hoshea to marry a harlot?
Comment: The verse doesn't say that Yeshayahu was a servant: it says HaShem referred to him as His servant. Also, HaShem didn't merely allow him to walk naked and barefoot for three years (to suggest it was Yeshayahu's idea), but (in [the previous verse](https://www.mechon-mamre.org/p/pt/pt1020.htm#2)) He told him to do so.
Answer: Rashi quotes the Targum Yonatan and says that "naked" doesn't mean literally naked

naked: (עָרוֹם). Jonathan renders: פְּחֵיחַ, with torn and worn out clothing, but not actually naked.

Other commentators mention that it was symbolic or that he was actually only naked for a brief time, in his own house.
Answer: Rabbi Yoel Bin Nun has a class on this subject, which I recommend listening to.
He explains that he disagrees with the Rambam's view in this case. Rambam's view has merit in places such as Avraham's meeting with the angels, because of the usage of multiple "vayera" - Avraham sees himself doing things he normally actually does. However, in the context of Yeshayahu, there's no indication that he merely saw himself doing things, but actually did those things. Moreover, an exact date and context for the event is given, which provide an explanation why it was necessary for Yeshayahu to do such a thing.
The background of this strange act by Yeshayahu comes from the political turmoil that was going on at the time:
Some years prior, Tiglat-Pilesser III, king of the Assyrian Empire, began the exile of the Ten Tribes (Melachim 2:15:29), severely weakening the Kingdom of Yisrael. The exile was the Assyrian Empire's punishment for insurgent nations – they executed this punishment all over the Empire. Yisrael were punished because King Pekach had formed an alliance with Retzin, king of Aram, hoping to rebel against the Assyrians. Hoping to strengthen the alliance, they turned to Achaz, king of Yehudah, for assistance. Fearing both the wrath of the Assyrians, Achaz declined. This led the alliance to decide that Achaz and the House of David were not needed, and plotted to overthrown Achaz and set up a puppet-king, someone known only as "ben Tav'al" (Yeshayahu 7:5-6). Yeshayahu, through prophecy, assures Achaz that this won't come to pass. He must only hold out for a year or two, and the danger will pass. Yeshayahu insists that Achaz not turn to the Assyrians for help, and that salvation will come only from trusting Hashem (ibid. 8:13-23).
Achaz, however, is unable to hold out for so long, and surrenders to the Assyrians, begging for help (Melachim 2:16:7-9). The Assyrians agree, and defeat the alliance. While in Assyria, Achaz is drawn to the Assyrian idolatrous religion, and upon his return, executes changes to the Temple, building a new altar based on the one used in Damascus and allows Tiglat-Pilesser to make sacrifices on it (ibid. 10-18) and then proceeded to make sacrifices himself to the gods of Assyria and built bamot all over Yehudah (Divrei Hayamim 2:28:22-25). It is surmised that for his evil deeds, his full name, Yehoachaz, was erased from the Tanach (per the Tiglath-pileser III 47 inscription).
Naturally, Yeshayahu was very angry from what had happened. That had been the consequence of what he had warned against, trusting the Assyrians. During Achaz's son Yechizkiyahu's reign, other regions in the Assyrian Empire were forming alliances to stand up against the Assyrians.
One case is referred to in this chapter, Yeshayahu 20:

"It was the year that the Tartan came to Ashdod—being sent by King Sargon of Assyria—and attacked Ashdod and took it...And now the LORD said, "It is a sign and a portent for Egypt and Nubia. Just as My servant Isaiah has gone naked and barefoot for three years, so shall the king of Assyria drive off the captives of Egypt and the exiles of Nubia, young and old, naked and barefoot and with bared buttocks—to the shame of Egypt!"

This is a reference to a rebellion by the people of Ashdod, who had overthrown the Assyrian puppet-king Achimati and had made king Yamani. Yamani allied himself with the Nubian Pharaohs (of whom Tirhaqah was a descendant of) and that alliance seems to have turned to Yehudah for further assistance. Though this isn't directly mentioned in the Tanach, it's both implied in this chapter and makes sense, considering a different alliance is directly stated to have turned to Yehudah: The Kasdim, at the behest of Berodach Bal'adan, king of Babylon (Melachim 2:20:12-15). When the Babylonians turned to Yechiakiyahu, he actually welcomed them and entertained them, showing them his treasury. It would make sense that Yechizkiyahu equally pondered the Ashdodean-Nubian/Egyptian alliance's requests.
For this reason Yeshayahu removed his clothes and walked barefoot, to make the statement he made in the name of Hashem in the chapter: All such alliances have no hope, all such alliances will fall and be exiled in disgrace, naked and barefoot. Rabbi Bin Nun explains that most likely Yeshayahu didn't walk around that way for three whole years, but did it whenever any group of envoys would come to Yehudah to request the king's assistance. It took three years of doing this, before the alliance fell. Yechizkiyahu had ultimately not assisted them, but it seems that his considering this possibility brought upon the fall of Lachish and other cities in Yehudah and the near-fall of Yerushalayim (Melachim 2:18:13-19:37) – punishment for trusting other world powers instead of Hashem, as Yeshayahu had warned.
Comment: Although the first part of your answer is extremely useful and interesting, it could be more concise as your last paragraph is the one, which really addresses the question.
Comment: I suppose the main point is that the prophet was against the coalition, and asked Achaz to hold on, which he eventually failed to do.
Comment: Maybe you could put the details into a footnote to preserve its content.
Comment: @Kazibácsi Any recommendations on how to shorten it?
Comment: @Kazibácsi Thanks, I'll think of how to do it.


The best way of classifying a dataset including classes with high similarity?

Question: I have a dataset which has two very similar classes (men wrestling, women wrestling). I've used InceptionV3 as a classifier to solve the problem of classifying this dataset. Unfortunately, the accuracy of this classifier doesn't hit more than 70%. Is there any suggestion about how I can overcome this problem or any other similar problems?
Comment: How much data do you have?
Comment: About ten thousand.
Regardless of amount of data, I would be grateful for any suggestion
Answer: If you want to classify data with similar characteristics, it would often helps if you hand craft features. For classifying women or men wrestling, you may want to try using cv2 to track human faces and feed that to your CNN as input. Example: https://realpython.com/face-recognition-with-python/
If the data is not images, you may want to do a analysis to see which feature have no clear relationship with whether it is men or women wrestling and remove them. Example: https://towardsdatascience.com/a-feature-selection-tool-for-machine-learning-in-python-b64dd23710f0
Hope that I can help you and have a nice day!


How do I share my Ditto clipboard with multiple machines on my network?

Question: I'm using Ditto Clipboard Manager and wish to share the clipboard on multiple machines on my home network. I've heard that you can do this but haven't found any help on it.
Answer: Yes you must be running Ditto on every machine, that you want to share on the network.

Right click on the Ditto ball & select Options
go to the Friends tab & put ALL names you wish to share or use their IP's; separate each one with a semicolon.
go down to the bottom & insert each one of the machines into the Send All to; make sure there is an X in Send All.
Once that is done go to the Exporting machine; Bring up the Ditto Window, however you wish; either by Left clicking on Ditto Ball or using Hot Keys.
Then use Control CTL + A to select All clips on your clipboard;
then right click on anywhere on the Ditto Pop-Up Window & use the Send To Option in the Pop-Up Menu. There you have it Sent All Clips To Network Machine.
Comment: I made an error.  You DO NOT have to use Control CTL + A; when you have the Select All Clips X marked in the Friend tab.  It does the CTL + A for you.
Comment: Once you do this on all machines you want sharing clipboard data, Ditto will automatically synchronize them for you from then on. You'll want to make sure Ditto is on your firewall exceptions list for Private networks.
Answer: You know... you might be able to do it with DropBox.

Install DropBox and set up an account.  You get 2 GB for free.
Change Ditto Database Path (in Options) to your Shared DropBox folder
That will now be available to all other computers in which you have your DropBox running.
Comment: I was unable to sync the db since DropBox couldn't sync the file because Ditto have it open.
Comment: Ditto has a sharing feature for LAN. All you need is two computers running ditto. As long as both computer have the other marked as "Friend" and both know a specific secret password it should all go fine without 3th party cloud services
Comment: This hits the internet (with encryption) and uses a third-party solution, even though Ditto natively supports sharing your clips over a LAN. There is also the possibility of a DropBox sync conflict if you copy a file to the clipboard on both machines simultaneously.
Comment: I used Google Drive and it works fine.  Might need to restart Ditto after making the changes.  It works over the internet as long as the changes sync properly.
Answer: Bring up the list (Ctrl + ' or whatever). Right click and export. Save file and transfer to other machine. You can then import by right clicking on the notification icon.
As for syncing automatically, there is the friends tab in options but I don't really think it helps. You can specify the database location though, so maybe setting that as the same network location for all machines could work?
Comment: This shares specific clips, not the clipboard as a whole. The Friends tab is the ideal method for syncing Ditto between computers.
Answer: You can do what David said, or you can install the portable version, and create links in the startup folder to run the same version on both machines. Works like a charm!
Answer: I believe you have to be running Ditto on both machines.
Comment: Done that. Now how do I sync the DB's or refer to the same DB?
Answer: I found the best way to do it is to copy the db from one computer to another. navigate to /users/your name/appdata/roaming/ditto/ditto.db and copy "ditto.db"
the path may be different dependinbg on your OS, but the point is you can copy the database, including whatever hot keys you have programed.
reverse the process on the other computer & paste it.
I understand you can make the computers to sync ditto if they are on the same network, but I have not been able to get that to work.
Answer: I managed to do this by sharing the folder where the database file is on the local network, the pointing the database to the correct location in Ditto's settings. It's working like a charm.
Answer: I changed the database location to a folder on my synced google drive, and did the same on several other machines. It works most of the time, but sometimes the sync on google drive crashes into the ditto app and corrupts the database. Make sure you keep a backup.


Finding $\lim_{x\to-\infty}x\cdot e^x$ without using L'Hospital rule

Question: I have to evaluate
$$\lim_{x\to-\infty}x\cdot e^{x}$$
I know how I could do using L'Hospital rule, but I can't use it. I tried to rewrite it as:
$$\lim_{x\to-\infty}\frac{x}{e^{-x}}$$
but I still get $-\infty/\infty$ and I don't what to do next.
Comment: Actually, this should be evaluated with simple calculus theory.
Comment: @mvfs314 As you'll see in the answers, there are many ways to approach the question. Can you share with us what you know about the exponential map? How was it defined? What properties you're supposed to know?
Comment: One way I might try is by using the Taylor series expansion of $e^{-x}.$ That way you could divide the denominator of your second expression by $x$, to get \begin{align}\lim _{x \rightarrow -\infty} 1/( 1/x - 1 + x/2 - x^2/6 + \cdots).\end{align}. Taking the limit into the denominator, you could prove that the denominator is infinite and hence that the limit is 0. It's not very rigorous, but I thought I'd throw it out there.
Comment: You're almost there: $\lim_{x\to-\infty}\frac{x}{e^{-x}}=\lim_{x\to-\infty}\frac{1}{-e^{-x}}=\lim_{x\to\infty}\frac{1}{-e^x}$.
Comment: @mathcounterexamples.net I really can understand all the answers, but this question is for a student who just started to learn the basic of limits.
Answer: For $x \gt 0$ you have $e^x \gt 1 + x + x^2/2 \gt x^2/2$ and therefore for $x \lt 0$ $e^{-x} \gt x^2/2$. Hence for $x \lt 0$
$$0 \lt \vert x \cdot e^x  \vert=\frac{\vert x \vert}{e^{-x}} \lt  \frac{2}{\vert x \vert}$$ which allows to conclude with the squeeze theorem.
Note (following comments discussion): in this kind of question, the definition (or properties) that you use for the exponential map is critical.
The inequality $e^x \gt 1 + x + x^2/2 \gt x^2/2$ can be derived in several ways:

Using $e^x= 1 + x + \frac{x^2}{2} + \dots$ Taylor series.
Using the fact that $\left(e^x\right)^\prime = e^x$ and  $e^0=1$.
Using growth properties like $e^x \gt x^n$ for any $n \in \mathbb N$ and $x$ large enough.
Comment: @PierreCarre I **strongly** disagree. How do you define the exponential?
Comment: Although the inequality is valid and the answer is obviously valid, it still seems like cheating a bit to use an equality directly derived from Taylor's formula, which is much general than L'Hôpital's rule.
Comment: You do not need to define the exponential from its power series representation. You can also define it, for instance, as the solution of $y' = y$, $y(0) = 1$. so it is not necessarily true that you possess a priori the knowledge of the power series.
Comment: @PierreCarre Where have you seen that I used the power series? The inequality $e^x \gt 1 + x +x^2/2$ can be derived from the differential equation.
Comment: Come on... How did you choose $1+x+\frac 12 x^2$?
Comment: You're arguing that my proof is based on Taylor series. The reality is that I used my knowledge of Taylor series. But again the proof doesn't need Taylor series and can be based on the differential equation. **You** defined $e^x$ based on the differential equation! That I can easily use in my proof.
Comment: Just out of (genuine) curiosity, how would you use the differential equation to show the inequality without using at some point a series representation of the solution?
Comment: Come on... $y$ is increasing for $x \gt 0$ so $y^\prime(x) \gt 1$ by integration $y(x) - y(0) \gt x$. Integrate a second time $y^\prime(x) = y(x) \gt 1 + x$ to get the desired inequality. No series is required here.
Answer: Even though there are already several fine answers, I think the instructor probably just wanted you to use some "notable limit" out of a list. A probable candidate would be
$$
\lim_{x\to +\infty} \frac{e^x}{x^p} = +\infty.
$$
in this case,
$$
\lim_{x\to -\infty}x e^x = \lim_{y\to +\infty} -y e^{-y} = \dfrac{-1}{\displaystyle \lim_{y\to +\infty} \frac{e^y}{y}} = \frac{-1}{+\infty} = 0.
$$
Answer: Let us denote
$$f(x)=x \mathrm{e}^x .$$
The derivative is $$f'(x)=(x+1)\mathrm{e}^x, $$
and therefore the function is decreasing in $(-\infty ,-1)$. In addition, $f(x)<0$ on that interval, so the monotone convergence theorem gives the existence of   $$L=\lim_{x \to -\infty} f(x) \in (-\infty , 0 ]. $$
On the other hand
$$\int_{-\infty}^0 f(x) \mathrm{d} x  = f(x)-\mathrm{e}^x \big|^0_{-\infty} = -1 - \lim_{x \to -\infty} f(x) + \lim_{x\to -\infty} \mathrm{e}^x = -1-L. $$
As the improper integral converges, we must have $L=0$.


2 different game center apple Ids one village

Question: someone logged into their game center earlier on my phone. Then, they loaded their Clash of Clans village and played it. After they were done, I logged them out of the game center and logged myself back in. Later on I went to play my village and it's stuck on his village. I've logged into multiple different game centers to see if it would load their village or start from townhall 1, but it's always stuck on his village. I want to get my village back. What's going on? Why won't it load another game center progress or even start over then have a pop up asking if you want to load Town hall 8 village?
Answer: Looks like supercell has actually stopped everyone from using multiple accounts, I hope they change their minds about this!! It is going to affect lots of people and lots of bases, hope they reverse this.


Starting Mincha right before Shekiya

Question: According to those who pray Mincha only up to Shekiya (sunset), are you required to finish Mincha before Shekiya or just required to begin it before Shekiya? (Sources.)
Comment: @Daniel: I have heard a few different ways, however I am looking for a source.
Comment: @DoubleAA: If it was asked before I will delete. I could not find this question here. If you have the Aruch HaShulchan please post as an answer.
Comment: see end of this answer http://judaism.stackexchange.com/a/22004/759
Comment: I've heard that you should at least get through kedusha by shekiya.
Comment: I think this has been asked here before. There is a famous aruch hashulchan who is mattir going late.
Answer: The simple answer (which is used for so many other things as well) is from Bilaam. No wonder you ask it now this week.
The gemoro says in B'rochos 7a that Bilaam could work out the exact microsecond when G-d was angry. Tosfos asks what Bilaam could possibly say in that microsecond. One answer given is that he could say just one word: Destroy. Another answer given is that, once he started speaking his curse at the exact microsecond, he could continue speaking (and cursing) as long as he wanted.
So according to Tosfos's first answer you have to finish in time, but according to the second you don't.
The same as when G-d is angry, if you start 'on time' that means catch the second you can keep his anger 'going'. How much more so that when he is not angry and awaits our t'fillos to fulfill them that if one starts on time, hashem will have patience to wait until we finish.
Comment: You'll note i already linked to this tosfot in the comments to the question. Can you show it has anything to do with zmanei tefillah? Those don't necessarily work like random moments of divine fury/ compassion.
Comment: Which Gemara, where? What do you mean "already"?
Comment: This is the simple answer? This is the complicated answer.
Comment: This does not provide an answer to the question. To critique or request clarification from an author, leave a comment below their post.
Comment: Please don't edit your answers to make them go away. If you're sure your answer isn't valuable, delete it. If you think your answer is valuable, leave it around, even if someone else has already said approximately the same thing.
Comment: Thank you for adding the Daf citation. +1 (after edits).
Comment: @Daniel, I believe the non-answer was a form of protest/frustration with our questions and critiques. I've edited it to clarify parts that were unclear, and for formatting.
Comment: @Chanoch, better?
Answer: Aruch HaShulchan 110:5 says that if one began on time, even if he finished after the Zeman it is considered Tefila B'Zmana.
However I have heard that the Mishna Berura disagrees and says that one must finish the entire Tefila by the Zeman. (will put in source as soon as it is found)
Comment: I'm pretty sure Harav Haim Kanievsky Shalit"a writes like the Mishna Berura.

Starting Mincha right before Shekiya


How to use 'memory:name' output as VectorLayer in PyQGIS?

Question: After running processins in a loop, I try to export results on a single shapefile.
I've created a vector layer called "regroupee", I merge results with it, and I overwrite "regroupee" with the result.
As Kadir Şahbaz said in this post on the option 8, run() method with memory output make a dictionnary, with an instance of a layer (QgsVectorLayer).
The loop works, but when I try to export the final result with QgsVectorFileWriter.writeAsVectorFormat, an error say me that "regroupee" is a string...
My code, in the end of the for loop :
        alg_params = {
        'CRS': None,
        'LAYERS': [regroupee, calculatrice['OUTPUT']],
        'OUTPUT': 'memory:merge'
        }

        merge = processing.run('native:mergevectorlayers', alg_params, context=context, is_child_algorithm=True)
        regroupee = merge['OUTPUT']

    QgsVectorFileWriter.writeAsVectorFormat(regroupee, "I:/moulin_z/DONNEES/temp_us235/test_iteration_pyqgis/regroupee.shp", "UTF-8", crs.createFromId(2154), "ESRI Shapefile")

And the error message :
Traceback (most recent call last):
File "<string>", line 231, in processAlgorithm
TypeError: QgsVectorFileWriter.writeAsVectorFormat(): arguments did not
match any overloaded call:
overload 1: argument 1 has unexpected type 'str'
overload 2: argument 1 has unexpected type 'str'
overload 3: argument 1 has unexpected type 'str'

How can I export the final result as a shapefile ?
Answer: The error in this case is because, you don't have a QgsVectorLayer inside the ['OUTPUT'].
First, you have to verify the regrouppe have a QgsVectorLayer in the ['OUTPUT'] with:
print(merge['OUTPUT'])

Then when you verify that you have QGsVectorLayer, you can try with this line:
QgsVectorFileWriter.writeAsVectorFormat(regroupee, "I:/moulin_z/DONNEES/temp_us235/test_iteration_pyqgis/regroupee.shp", "UTF-8", QgsCoordinateReferenceSystem(2154, QgsCoordinateReferenceSystem.EpsgCrsId), "ESRI Shapefile")


Can a song use a different set of chords in its harmony?

Question: Let's say we're in the key of C. Can one harmonize with one set of chords, and then do the song over and harmonize with a different set of chords and still have the song sound just as good?
Comment: Definitely, and also a great technique when composing classical music. But I agree with @alephzero - it's not common in Pop music at all.
Comment: Check out Dirty Loops who take reharmonization to a whole new level.
Comment: If you want some straightforward examples look at a few Christmas carols in 4 part harmony.  Often they have different harmonisations in different verses, most often in the last verse.
Answer: Yes. It's quite often doe. Sometimes several sets of chords will fit a melody. Sometimes the melody consists of many non-chord tones so it's easy to change the chords. The song "Mack the Knife" opens with the same melody over different chords. It has something like C-E-A-A (rising) three times with a C-Major, A-minor, and d-minor chords. The C-E is an unaccented pickup and the A acts as a sixth, then root, then fifth, over the underlying harmony. The "heavy" (my term) notes in the melody get nice harmonies, the unaccented stuff need not be consonant (probably as good if dissonant).
Answer: Yes!
A good example of this is "That's All" by Genesis. Although it's two halves of a verse (not verse and chorus).
These words are over G Em D = first half of a verse
just as I thought I was doing alright
thought I was wrong when I thought I was right
it's always the same it's just a shame, that's all

The next few lines are over Am7 and D = second half of verse
I can see day, you can see nght
You tell me it's black when I know that it's white
Always the same, it';s just a shame that's all

.. but the sung tune is the same. It fits over both sets of chords but occupies a different place in their scale.
Here's the whole song: That's All - Genesis
Answer: Yes, you are describing reharmonization. A new chordal accompaniment can give the same melody a new sound by simply changing the harmony. Of course, whether or not it sounds better is up to you.
Answer: Oh yes indeed.  Starting small, you can substitute the relative minor/major for one of the chords, or for  a few. This will add a little spice without hijacking the harmony. It's really up to your taste, inventiveness and what the genre will stand.
Answer: "Just as good" is a purely subjective assessment, but it is certainly possible, and it has been used for a long time.
It's common in jazz, on a fairly small scale - for example see https://www.justinguitar.com/en/JA-030-1625Subs.php for ten alternatives to a common chord sequence. (The link has a video, as well as written explanations)
In fact, in the 16th and 17th centuries there was a genre of composition where a composer simply took an ascending and descending major scale (in long notes) as the "tune", and demonstrated how many different ways it could be harmonized. Often, these compositions continued for 20 or 30 or more different variations.
It doesn't seem to be very common in modern "pop" music, though.
Answer: Yes, but the prevalence of that practice varies.
It was rare in the baroque and classical eras. For an early example see Mozart's violin sonata in E minor, where the recapitulation is harmonized quite differently from the exposition.
In romantic and 20th-century music, a much extended set of harmonic possibilities became common, so reharmonization became more frequent. For instance, Debussy's violoncello sonata begins with  characteristic motiv that is repeated nine times throughout the movement, always with a different accompaniment. (This has been compared to an impressionist painter painting the same catheral front again and again, because the light was different each time.)
I think most music lovers would agree that in these cases, the repeated, changed melodies sound at least as good as the original.


Any Course/Lecture videos on Design Patterns

Question: I am planning to read some design patterns and I took the book on "design patterns in C++' by gang of four. However, I am not really some one who reads book and prefers reading slides/watching course lectures and then apply and read the book. I cannot find any course lecture videos on net(yeah, its not that important a course as algo/OS). Any one know any course website, preferably on C++
Comment: I know you said you're not one for reading, but check out http://www.amazon.com/First-Design-Patterns-Elisabeth-Freeman/dp/0596007124 . It's not your typical programming book.
Comment: Note that the GoF book is *not* a book on design patterns, it's a book *of* design patterns, a catalog if you will. Reading it to learn about design patterns is about as useful as reading a phone book to learn about human sociology. The GoF book is for looking up a pattern, *after* you already understand design patterns.
Answer: Well, it's not a course, but...
C++ Programming/Code/Design Patterns looks like a good book to look at. It is a book from Wikibooks (by Wikimedia).
If you want a course...
Another thing to look at might be Design Patterns Course by Sourcemaking. It has 97 lessons (7 hours) and includes 2 great books in the price. The only major con is that it is currently $49.95. But if you ask me, that's a good price for two books and 7 hours worth of video.
Finally...
Take a look at the Design Patterns tag on Dimecasts. You might be able to find something there.
Finally...Finally...
This question has been asked on Stack Overflow. There are some great answers there, so take a look at that too.
Hope this helps!
Answer: It's mostly Microsoft stuff but I like the video training at http://www.pluralsight-training.net/microsoft/Courses/TableOfContents?courseName=patterns-library.  They have a free trial.
Answer: In addition to what others have posted, I've always found dnrTV to be a fairly interesting: it's basically a screencast with a host and a special guest for each episode.  They generally work through some concepts and do some actual coding, which helps a lot when you are new to concepts.
(Unfortunately, they focus on .Net... but for design patterns this shouldn't matter - most design patterns are language agnostic, and the difficulty is understanding why and where they are useful.  Specific implementations can be looked up in minutes.)
They have a number of episodes dealing with design patterns - here is the first one, and their archives page.  It's been a while, so I can't really remember what they cover in those episodes.  In general though, they aren't bad, and it's fun to see some sharp people's opinions and toolsets.
Comment: JP Boodhoo's videos are worth taking a look at.


ORA-00257: archiver error

Question: I ran into this error earlier today and requested that the extra logs be purged from the server. It was done but it still claims that there isn't any room. Is there a way to notify the server that it has more room than it thinks?
Comment: also check your file system if it has space to write the archives
Answer: You should purge the archived logs with RMAN:
RMAN> delete archivelog <delete conditions here>;
RMAN> crosscheck archivelog all;

or alternatively all of them:
RMAN>delete archivelog all;

You can check your recovery area usage like this:
SQL>select * from v$flash_recovery_area_usage;

If you encountered that problem though, you will very likely encounter it again. Purging the archived logs is a quick fix.
Whoever maintains the server needs to verify:

That archived logs backups are performed and are successful
That obsolete archived logs are deleted
That obsolete backups are deleted.
If the backups are performed regularly and obsolete archived logs deleted, maybe the database usage has increased and filling the fast recovery area faster than the archived logs get backed up. Increasing the db_recovery_file_dest_size parameter to a higher value to fit the business needs may be required.
Answer: As SYSDBA:
alter system archive log all;

then:
alter system switch logfile;

Before those two steps, you may also need to do a crosscheck archivelog all in rman so that it "knows" that the deleted archivelogs have been removed (depends on how they were removed).

ORA-00257: archiver error


How can I connect a new ground rod?

Question: Illinois house, built 1963. Not sure if there is a ground rod or just the water pipes used for ground. Want to put in another/first rod. Can I connect it to the clamp on the electrical meter housing which has been used for other grounds? If not, where do I have to connect it, noting there is no known existing rod. Also, is there a distance limit from the ground connection point (e.g. electrical meter) and the rod? I'm looking at about 50 feet. Adding additional ones between would be problematic due to concrete.
Comment: So I can look up their service rules about where grounding electrode conductors go, thx! :)
Comment: Do you have a meter socket with a separate main breaker/main panel, or a meter-main that has the meter and main disconnect/panel in the same box?
Comment: Meter is in socket outside, no disconnect. Breaker panel is inside garage on the other side of a concrete wall, behind the meter. There is metal conduit on top the meter from the line drop and on the bottom where I presume the lines go into the breaker.
Comment: Who is your electrical utility?
Comment: ComEd, why? More words here.
Answer: In reading your question, I think we are into that area of all the things we call "grounding" which are actually bonds, jumpers and grounded equipment. What you need to concentrate on is NEC Part III Grounding Electrode System.
I don't expect a DIY to know the entire section, but the highlights goes as follows. The entire GES needs to terminate at the first point of disconnect in your system. If you open up your panel you probably see a large #8 or #6 Bare copper conductor (the Grounding Electrode Conductor) attached to your neutral bus. This is where your cold water ground should be attached. You need to attache your driven ground rod to the bare conductor.
The driven rod you are proposing is known as a supplemental or secondary ground to the cold water ground so you do not need to install two or more ground rods. It may become the main ground if you water pipe begins to get cut up and replaced by non metallic water lines. The NEC recommends that you should use as many methods of grounding as you can to any system.
In order to help you visualize what I just said I have attached a generic drawing of a GES. Just ignore the Lighting Protection part.

Hope this helps and good luck.
Comment: @omegahelix - 50' would be fine. We are not worried about voltage drop here just whether or not we can get a fault back to the panel to trip a breaker.
Comment: Thank you for the detailed info. I have up-voted but my rep score means it doesn't count. Do you know if a 50' run to the ground rod would be acceptable?
Comment: Thanks. I should add that I intend to connect the coax cable shield of my TV antenna and the antenna itself to the new ground rod. Would that cause any issues, given that the equipment in the house would have two paths to ground (ground wire from electrical receptacle back to panel as well as ground via coax shield out to the new ground rod)? I'm thinking no, since the two grounding electrodes (water pipe, rod) will be connected and at same potential.
Answer: You'll want to tie the new GEC to the existing GEC using a listed lay-in grounding lug
What you'll want to do in your case is use a listed lay-in grounding lug appropriately sized for the wires in question to connect the ground wire from your ground rod to the existing grounding/bonding wire from the pipe -- this way, you can add your ground rod without disturbing the continuity of the existing grounding system.  (ComEd is ambiguous about where GECs go in their service manuals -- some documentation has them routed to the main panel, while other documentation has them routed to the meter base, and some documentation shows both approaches used at once.)
Now would be a good time to add an intersystem bonding termination
While you're at it here, you can fit an intersystem bonding termination device to the existing water pipe GEC/bonding conductor -- its presence is a Code requirement (250.94), and it also provides a convenient place to land the grounding and bonding conductor for the antenna coax when you put that in.  These devices have a lay-in type lug for the grounding electrode conductor with a small busbar of terminals sticking out that can be used for grounding conductors from other systems: antennas, CATV drops, telephone drops, and such.
You definitely want to bond the coax shield to the main grounding electrode system
When you are erecting the antenna and feedline, you must connect the lightning protector (antenna discharge unit) ground and the coax shield to the grounding electrode system using a 10AWG minimum wire -- this is required by NEC 810.21, and won't cause any problems since the whole grounding electrode system can be assumed to be at the same potential.  (The only time actual paths to ground matter for radio equipment is if your antenna gets zapped by lightning.  The reason to have it bonded in with all the other grounds is so that the breaker trips or the utility fuse blows if your antenna somehow finds itself at mains voltage.)
Comment: Thank you so much, great info!  And already added the intersystem connector.
Comment: cc @Retired-Master-Electrician OK, here is the plan: Since the coax enters the house far from the meter (my only outdoor ground point) I will drive a new 8' ground rod near where the coax enters the house. I will bond a #6 Cu wire to the rod and route it to the breaker panel neutral bus (where current GEC from H2O pipe connects) via PVC conduit on the outside of the house. I will connect a 2nd IBT to the new GEC near where coax enters and bond them to that. Will also bond the antenna ground to that new IBT. Sound good? Thanks!

How can I connect a new ground rod?


Will an eventual discreteness of spacetime have consequences in the light of Noether's theorem?

Question: No doubt Noether's theorem holds for the symmetry of translations in space and time. But what if we zoom in on very small lengths and times, and spacetime maybe becomes discrete? Will this have consequences?
Comment: For a discrete version of Noether's theorem, see https://physics.stackexchange.com/q/8518/2451 . For discrete spacetime, see https://physics.stackexchange.com/q/9720/2451 , https://physics.stackexchange.com/q/33273/2451 and links therein.
Comment: Except for lattice models "very small length and times" appear in quantum gravity proposals in the form of minimal expectation values for some "spacetime" observables, not in the literal form. So "zooming in" will not make much sense, at small values they can no longer be interpreted as length and time, see [Baker](http://philsci-archive.pitt.edu/11053/1/StringsExtended.pdf). The observables themselves are not discrete, and there will probably be some noncommutative version of conservation laws for them related to symmetries. We can't say more until we know how exactly spacetime emerges.
Answer: As Conifold pointed out in a comment, any discreteness of space–time is unlikely to take the form of a static lattice. (See the questions [1] [2] that Qmechanic linked to for more on this.) But I'll anyway try to answer the question as posed: What if space is in fact a lattice with fixed spacing, so that the translation symmetries are actually discrete?
First note that a momentum $p$ is associated with a de Broglie wavelength $\lambda = h/p$. If there is a lattice spacing $a$ then only wavelengths longer than $a$ are meaningful, and so there is a maximum possible momentum $h/a$.
The consequence of the discrete translation symmetry is that momentum is still conserved, but only up to multiples of $h/a$. (We sometimes refer to it as quasimomentum.) A scattering event where momentum is conserved only modulo $h/a$ is called umklapp. This is in fact a very similar situation to that of phonons in a solid or the tight-binding model for electrons in a crystal lattice.
Does this have any consequences? Assuming the lattice spacing $a$ is of order the Planck length, then the maximum momentum $h/a$ is far too large to constrain any current experiments. And the energy required for an umklapp process to occur would also be of order the Planck scale.


Why didn't the infinitive come after the following sentence:

Question: He is addicted to watching movies. Why the writer used gerund after the preposition "to"? , because as known, we use the infinitive after the prepostion (to).
Comment: We never use the infinitive after the preposition _to._ The particle _to_ is used to _mark_ the infinitive, e.g. _"to watch"._ There, _to_ is not a preposition.
Comment: So, what we call this case when a gerund comes after to?
Comment: In this case, the gerund is part of the _noun phrase_ "watching movies", which is the object of the preposition _to._
Comment: Prepositions are among the most difficult parts of speech in English for a new learner to understand, and it is even more difficult when you see _to_ and find that it is not always a preposition! It may be easier if you use the word _infinitive_ to mean the entire phrase, e.g.: _"to watch, to eat, to laugh,"_ and refer to "_watch, eat, laugh,"_ etc, as the _unmarked_ or _bare_ infinitive.
Comment: Grammatically or meaningfully, what would happen if I exchanged the word watching ( a gerund ) with watch ( bare infinitive) ?
Comment: Well, then you would have the very ungrammatical sentence _"He is addicted to watch movies,"_ which every English speaker would read as nonsense!
Answer: To here is an ordinary preposition, not the infinitive marker. With words derived from the stem addict- it introduces the substance (literal or metaphoric) to which one is addicted:

The thief was addicted to heroin.
  She has an addiction to 17th-century metaphysical poetry.
  He is addicted to making snarky comments on ELL.

The -ing form is employed here as a 'gerund'—that is, a verbform which may act externally in most roles of an ordinary noun, including standing as the object of a preposition.
Comment: I gather you are not a member of the _gerund-participle_ movement.
Comment: If you have a second, the **[chicken soup](https://ell.stackexchange.com/q/133325/37009)** wants stirring.
Comment: @P.E.Dant I don't much care for the term, which marries contemporary understanding of the form to outmoded names for (some of) its distinct uses. I'm toying with referring to the *-ing* and *-en* forms as "gerple" and "papple", but mostly I just call it the *-ing* form. However, our users are more likely to have been taught (badly) the term 'gerund', so I mention that and throw in a free definition.
Comment: I've used _gerund_ for the same reason, and because _"-ing word"_ looks so misbegotten, with the hyphen sticking out in front. IMO there's much to be said for _gerple_ and _papple,_ but next thing you know the portmanteau will arise like a manticore and claim the title _gerpapple._
Comment: @P.E.Dant Or we could refer to all three non-finite forms as the *infingerpapples*.
Comment: StonyB, what do you mean by ( with words) ?
Comment: @Bavyan I mean that the meaning I describe holds in cases where [words derived from the stem *addict-*] are involved


Does chicken embryo form the disc called "discoblast" in the cleavage and blastulation of chicken?

Question: This thread is related to my previous thread which is still unsolved mainly. I need to be able to compare chick and human cleavage and blastulation of zygote.
My friend says that

Chicken have discoblast, human not. That is the main thing to get the idea of the difference.

I know that chicken have yolk sac with yolk, while human have yolk sac without yolk.
My notes say that

Cleavage in birds is partial discoidal (embryo forms disc and cells called blastodisc are on top of the yolk).

So embryo forms some disc, lets call it #1. Some cells called blastodisc are on top of the yolk. So are the cells called blastodisc on top of the yolk and the disc #1?
What is the name of the given disc that chick embryo forms?
It seems that human is not forming the given disc. Apparently, the name of the given disc is discoblast, the thing he says is very important.
Answer: It is a mnemonic of two words: discoidal + blastula = discoblastula.
So it suggests that cleavage is partial discoidal in birds.
Embryo forms disc.
Cells called blastodisc are on top of the yolk.
It seems that the formed disc is blastodisc.
Answer: The cleavage in birds is restricted to the blastodisc lying on the top of the yolk towards the animal pole of the zygote, this type of cleavage is termed as discodial cleavage because the embryo forms disc and cells that are also on the top of the yolk.


HIPAA and Shared Medical Records

Question: Is it against HIPAA regulations to not include records received from other clinics when a patient asks for a copy of their medical records to be sent to a new clinic? In other words, is it ok to only include the medical records for what occurred at our clinic?
Answer: I am hoping you found an answer elsewhere, since this post is old.
The short of your question is, it depends on the type of issue the medical records address (such as medical condition, behavioral health, or drug/alcohol treatment), what state you are in, what state the records are from, and how a Prohibition on Redisclosure may be understood.
My experience is from the behavioral health field, which has more limits about which records can be redisclosed. In Colorado, many behavioral health providers only release records that they created and encourage the patient to file separate releases for other providers if they have any "third party records" they would need. I know that in my practice, many of the records that my agency received came with a Prohibition on re-disclosure attached, which also limited what could be re-disclosed.
Some resources:

Reinhart Law has a good description specific to HIPAA and the
state of Wisconsin's law.
AHIMA's health information management
resource is written in technical language but has a lot of good
information.

HIPAA and Shared Medical Records


Time / Space complexity reduction . Programming contest

Question: I found next programming problem at one of skills testing systems :
A positive integer N is given. Consider the sequence of numbers [0, 1, ..., N]. What is the total number of zeros in the decimal representations of these numbers?
N can be very large. Hence, it is given in the form of a non-empty string S of length L, containing a decimal representation of N. S contains no leading zeros.
Write a function:
int number_of_zeros(char *S);

int number_of_zeros(const string &S);

that, given a string S, which is a decimal representation of some positive integer N, returns the total number of zeros in the decimal representations of numbers [0, 1, ..., N]. If the result exceeds 1,410,000,016, the function should return the remainder from the division of the result by 1,410,000,017.
For example, for S="100" the function should return 12 and for S="219" it should return 42.
Assume that:
    * L is an integer within the range [1..10,000];
    * string S consists only of digits (0-9);
    * string S contains no leading zeros.

Complexity:
    * expected worst-case time complexity is O(L);
    * expected worst-case space complexity is O(L) (not counting the storage required for input arguments).

I tried to solve it and wrote the function but the running time complexity is more sophisticated than O(L) in my solution,
Can anyone solve it ( at least provide an algorithm or pseudocode or explanation )?
Good success!
Comment: How would you solve this problem by hand, without a computer? I'm pretty sure that if you try to do so you will quickly stumble on some patterns...
Comment: there should be a way/algorithm to compute number of zeroes from decimal number inside the input string with complexity O(L) that I am trying to find ( using % , / -+,* operations ) I guess...
Answer: This problem is a good example of the strengths of recursion. Consider the simple base case: The numbers from 1 to 1 have exactly 0 zeroes.
When you have the numbers of zeroes in the numbers from 1 to N (say x), you can compute the numbers from 1 to N*10 as 9*x+log10(N*10). The argument is simple: You need nine blocks with an equal number of zeros for the numbers 1..., 2..., 3... and the number N*10 is written as 10000... .
This recursion is valid for all powers of 10. The recursion for arbitrary N is not much harder to compute when you split the number into the powers of 10 constituting it.
Comment: Thank thiton for your reply. Sorry I did not understand that "When you have the numbers of zeroes in the numbers from 1 to N (say x), you can compute the numbers from 1 to N*10 as 9*x+log10(N*10). The argument is simple: You need nine blocks with an equal number of zeros for the numbers 1..., 2..., 3... and the number N*10 is written as 10000... ." can you illustrate by code or drawing.Thanks.
Answer: Since there's only an upper limit of 10000, and this is technically a time-space complexity reduction contest just pre-compute all the possible answers in your submission code. You might notice this is very memory inefficient but with an observation that there is never a situation where any lookup value is more than 9 numbers away from a 'zero' you can use a dictionary to save a large amount of memory.
zeros.py (generates the actual code, albeit in linear time on L):
def zeros(n):
        l = str(n)
        return l.count("0")

total = 0
d = {}
for i in xrange(10001):
        delta =  zeros(i)
        if (delta>0):
                total += delta
                d[i] = total

print len(d)
print
print "d = " + str(d)
print "N = int( raw_input () )"
print "while (N not in d):"
print "\t N-=1"
print "print d[N]"

Generates this (32kb) file (in 31ms): http://paste.pocoo.org/show/504589/
Runtime ~ Amortized O(1)
Space ~ The density of zeroes for L=[0..10000] is 2621 ~ 26.21%. I don't think the distribution of zeros will increase greatly, but regardless - its density is definitely bounded by O(L).
Comment: Interesting..Do you mean to pre-compute for each N and put inside stl::map ( key : value pairs ) for example and then lookup ( search in the map ) by value ( N ) ?
Comment: @Noxville: IIRC, most contests place a restrictive limit on your file length.
Comment: @missingno: 32k is almost always within this limit. I have submitted a 3.4 meg file as a submission before.
Comment: @StSht: It's essentially that, but better. Not every number increases the "zero-count", so you only store ones where there is a change. Then, if you need to lookup some query Q, you look to see if Q is in the dictionary (hashmap): if it is, you return the value, if it isn't, you decrease Q by 1 and try again.


What are buffer and latches in microprocessor?

Question: I would like a description that clarifies the concepts of what buffers and latches are and the difference between them. I'm asking for buffers and latches in respect to the 8086 microprocessor.
Comment: Buffers and latches are buffers latches, whether as stand alone parts, or integrated into a larger design.
Comment: Do you want to know how they function? Are you familiar with flipflop circuits?
Comment: @JarrodChristman yes I am well aware of what flip flops are along with types and etc. what i really want to know is about them.. there functioning and all... to bsae my concepts.
Answer:
A buffer allows a signal to drive more inputs than it would by itself, or provides input protection / amplification. For the 8086, it's used in the output sense, allowing internal signals to be made robust to drive external devices.
A latch is a circuit to accept and store one or more bits, with a 1-to-1 input / output ratio. That is, it's not RAM. It differs from a register in that the storage takes place while a control input is at a particular level (0 or 1), while a register stores the input data upon receipt of an edge (rising or falling).

Latches are used with 8086s to store addresses and data, and are used instead of registers because they maximize setup times. That is, if data or addresses change internally while the latch enable is active, the data passes through immediately, while with a register it would not be available until after the appropriate clock transition had occurred. The early microprocessors used every trick they could to increase their usable speed, and this is one of them.
Comment: @sherrellbc - sure they used clocks. It's just that, for these early processes, the clock/data delays were often not well-defined. In the case of transferring addresses to external devices, it made more sense to use latches, since you could get maximum setup time before data had to be operated on. With registers, the register inputs have to settle and be available well before the clock edge, and using a latch allows this extra time to be used by the external device (and this was important, back in the day). Registers can be considered a special case of a latch with an enable triggered by a clk
Comment: Hmm. Let me expand on this. "Register" has two different meanings in electronics. At the device level, the register/latch distinction is as I say. At the block diagram level, register refers to temporary storage and may be registers/latches or it may be RAM. So it depends on context as to what you mean by register.
Comment: Interesting last comment. So the earlier processors did not use clocks in these situations? I was under the impression that registers were comprised of latches, or perhaps flip-flops.
Comment: I believe that latches are almost same as flip flops.
Comment: @WhatRoughBeast Thank you very much. This has helped me a lot and has increased further questions as well, which is good definitely.
Comment: A latch is a single stage flip flop. When the trigger happens (edge or level trigger) the input is stored and becomes available at the output. What's called flip-flops or registers are master-slave flip-flops. When the trigger happens the input is stored in the first stage, then on the opposite trigger the stored value is propagated to the second stage and becomes available as output. They have half a clock delay between input being accepted and output changing.
Answer: Buffers pass an input through to output after some propagation time, possibly increasing drive strength (increasing fanout).
Latches additionally add memory, to capture and persist the input value at some point in time (memory).  This latching behavior is triggered by a third signal, control.
The control can be edge- or level-triggered.  Edge-triggered latches freeze inputs when a control input transition occurs.  Level-triggered control buffer the input until the control signal is activated, freezing the output level.


File upload and file access

Question: I should upload an Excel file to a site that define a content type with a file CCK field; the download method is public. How do I set the permissions for the upload folder, if I would like to allow the PHP code to read this file, without to allow users to read this file using its URL?
If the folder permissions don't resolve this problem, which module should I use?
Answer: If you want to prevent users from downloading the file directly by URL, you should not use the public download method. You should use the private method and use the functions in file.inc to access the files with PHP.
Comment: The web server's user is the one who creates the files, and the web server's user will be the one who accesses the file in order to provide the download, so this approach will not work.
Comment: what if change upload folder permission to 750? users can read file?

File upload and file access


Changing default YouTube account

Question: Is there any way to permanently change the default YouTube account we're logged into right after loggin in to our master Google account? I have both a G+ and the "old" (non-Google) YouTube account linked to my Google account and every time I start a computer, I have to manually switch from the G+ one to the other one. Is there any option to choose which one I want and stick to it permanently?
Answer: I don't think so. Google wants everyone to use one (G+) account on their products, so they make you use your primary google account after relogin.
Comment: I get my old account as first selection, so this probably not true.

Changing default YouTube account


Using 2 code repos, one Acquia and one private gitlab server for Drupal code base tracking

Question: I run a few drupal 7 sites on acquia and I also have a separate gitlab server for sites that are not on Acquia. Is it possible to push to both repositories on Acquia and Gitlab?
Answer: Definitely possible and it's what I do. Acquia provides some documentation  on this. As Kevin mentioned you can do this by setting up two remotes for your local repository clone, one at GitHub/GitLab/Bitbucket, and one at Acquia Cloud.
Answer: Yes, it is possible, but tedious (in my opinion).
One way to do it is to setup two remotes, and simply do git push remote-1, git push remote-2. Although depending on your setup, and if you have a team, you are going to want to designate which remote is authoritative and which one is the mirror - if I understand the ask right.
I think you might be looking for is this answer on git itself which is more in depth:
https://stackoverflow.com/a/14290145/295112
Otherwise, if you want to track modules individually, then the entire codebase itself cannot be version controlled unless the code you are tracking are git submodules, or all individually tracked (where the entire drupal root is not tracked).
So if there are sites running on Acquia that have dependent modules where the code lives on GitLab, perhaps bringing them into your Acquia project as submodules is your best shot. I am doing that on a project right now, except in my case I am tracking a Pattern Lab project whos repo is on another server. I pulled it into my Drupal project as a git submodule so I could get upstream changes into my workflow - and once I have done some theming work, I push to Acquia.


Gmail as client for O365

Question: How do I configure a personal Gmail account to act as the client for my company provided O365 email account?  Would it simply be a matter of setting up SMTP / IMAP, or is it more complicated that that (or even possible)?
Comment: Thanks pnuts.  I don't mind setting up a completely separate gmail account.  Basically, I don't want to use outlook, owa, or anything else to read and sort my email -- just gmail.  In essence, I want gmail to function as a client, where 0365 is the email server.
Answer: This should be possible using POP3 (incoming) and SMTP (outgoing). Gmail cannot act as an IMAP client AFAIK.
Gmail can retrieve up to 5 POP3 accounts and Office 365 would seem to support POP3. And you can configure Gmail to send email as your O365 email address, using your O365 SMTP server. From the above link, these settings would seem to be:
POP3  outlook.office365.com  995  SSL
SMTP  smtp.office365.com     587  TLS

However, possible caveats with this approach:

You cannot control how often Gmail checks your POP3 account. Gmail decides for you. If  the frequency of your email increases, then Gmail is likely to check more often. You can manually perform a refresh every now and again if you wish. (As an example, I check 3 POP3 accounts using Gmail and it is currently reporting that they were checked 21, 5 and 47 minutes ago respectively.)
Microsoft recommends Exchange ActiveSync: (although I don't know what exactly you would be missing out on?)

Although you can connect to your account using POP3 or IMAP4, we recommend that you connect to your account using Exchange ActiveSync because Exchange ActiveSync supports more features than POP3 and IMAP4.
Comment: This worked perfectly, I appreciate the answer.
Comment: I also solved my issue about not being able to edit/move my Gmails on my outlook client by reconnecting to the Gmail account with POP/IMAP manual set up instead of the default Google Account set up. Thank you!
Answer: To add your Office 365 account to Gmail:

Click on the 'Settings' icon (a gear in the top right corner).
Click 'See all settings'.
Go to the "Accounts and Import" tab.
Click the 'Add a mail account' link in the 'Check mail from other accounts' section.

To get your POP and SMTP mail settings, sign in to Outlook for Office 365 at outlook.office.com

Click on the 'Settings' icon (a gear in the top right corner).
Click 'View all Outlook settings'.
Click 'Sync email'.
Check that 'Let devices and apps use POP' is checked.

You can see your POP and SMTP settings on that page.
Office 365 now enforces Multi Factor Authentication by default, you need to turn that off to be able to access your mailbox in Gmail:

Log in to portal.azure.com with your Office 365 account credentials.
Click the 'View' button under 'Manage Azure Active Directory'.
Click 'Properties' in the left-hand menu.
Click 'Manage Security defaults' at the bottom of the page.
Set 'Enable Security defaults' to 'No'.

Instructions with screenshots here.
That will allow you to access your messages with POP.
You also need to enable SMTP authentication to be able to send messages, which again is disabled by default.

Open the Microsoft 365 admin center at admin.microsoft.com
Go to Users > Active users in the left-hand menu.
Click on the user, and in the flyout that appears, click Mail.
In the Email apps section, click Manage email apps.
Tick the checkbox for 'Authenticated SMTP'.
When you're finished, click Save changes.

Instructions here.

Gmail as client for O365


Can we get the refractive index of a prism by using white light?

Question: Can we get the refractive index of a prism by using white light ? I guess since white light is non chromatic, it is not possible.
Answer: Of course you can. The prism is likely to disperse the light - that is, different colors will be refracted by different amounts. That means you don't just get "a" refractive index, but with careful experimental setup you will get the entire refractive index curve: a different value for every wavelength / color.

Setup: a narrow beam of white light incident on the prism. Measure the position where a particular color hits a screen far away. Calculate the angles, use Snell's law to compute $n$. Repeat for every color. If you know the wavelength of the colors (you can look these up) you can create a graph of refractive index vs wavelength; if you don't, you can create a table.
The precision of a setup like this is really only limited by your ability to set it up carefully; and the size. Usually, dispersion is strongest when you are working close to the critical angle of a configuration - this is why a diamond is cut the way that it is. In the diagram above, you are most likely far from the critical angle. This means that the differences in refractive index will matter less.
To get an accurate measure of refractive index, you would like to find the critical angle - that is the angle at which you get total internal reflection. If you know the internal angle at which this happens, you can compute the refractive index directly from Snell's law:
$$\frac{n_1}{n_2}=\frac{\sin\theta_2}{\sin\theta_1}$$
At the critical angle, $\sin\theta_2=1$ and $n_2=1$, so $n_1=\frac{1}{\sin\theta_1}$.
By looking at the color that just gets out of the prism, you find the color of the one that just didn't make it... and that is the color for which you thus find $n$. Now the tricky thing is that in order to do this experiment, the light will also bend at the other interface (the input face of the prism) which makes the math a bit more interesting.
If that is the setup you want to explore and you can't figure out the diagram / equations, please post a comment.
Answer: It depends on how accurately you want to measure the refractive index. The refractive index typically only changes by about 1% over the visible spectrum so if you're happy with that accuracy just go ahead and estimate the central point of the refracted ray.
As Floris suggests, you could try and judge the refraction angle separately for the different colours in the refracted ray, but I suspect this is going to be a bit hit and miss. If you want better than 1% accuracy you should probably use monochromatic light.
If you're curious to know more about this, glass suppliers typically report the dispersion using the Abbe number - see for example the list here. To get the Abbe number the refractive index is measured at three wavelengths:

$n_D$ - 589.3nm (yellow sodium light)
$n_F$ - 486.1nm (greeny-blue)
$n_C$ - 656.3nm (red)

And the Abbe number is given by:
$$ V_D = \frac{n_d - 1}{n_F - n_C} $$
For fused silica the values from the link I gave are $n_D = 1.458$ and $V_D = 67.70$. This means $n_F - n_C = 0.0068$ i.e. the refractive index changes by $0.0068$ between greeny-blue and red light.
To get the wavelength at any particular wavelength you can approximate that variation of $n$ with $\lambda$ as a straight line.
Comment: @Floris: this is obviously more of an exercise for the student that a real measurement. I can rarely resist the temptation to prod students into looking into the subject that bit more deeply :-)
Comment: Your numbers basically say you can get to 0.5% accuracy without worrying about the color. If you observe dispersion in the light (because you are sufficiently far away) you may get down another factor 5 or so. If the initial challenge given is "do this with white light", I think that anything below 1% is heroic. Frankly I usually content that if you need to measure (directly) a quantity to better than that, you are probably using the wrong experiment... There's usually a way to amplify the difference with a known quantity - and you measure that instead.
Comment: +1 - and note I did a similar thing with my "now see how to set up for near-internal reflection which will amplify the effect if you do it right..."


How can I create a sequence of triggers on GTM across multiple pages for one tag

Question: I'm trying to set up a tag and triggers on GTM to have an event track across multiple pages. ie click on a button which takes the user to a contact page and once the form is submitted a tag is fired. I can set up this if the triggers are all on one page but it seems GTM refreshes the triggers on a per page basis and so a sequence of actions across multiple pages is not as simple.
Answer: Tracking a sequence with Google Tag Manager is a super interesting use case. I've never needed this before but now I can think of quite a few applications.
The problem is that triggers in GTM are primarily based on the dataLayer object in the browser, which is not persistent.  What that means is that when the user moves from one page to another, the data vanishes.
So here is another awesome solution using ListenLayer.com, which gives you the ability to spin up some cool browser tracking around the data layer and then monitor it.
Basically, a Listener will automatically push data into the data layer when your button is clicked. You can write a rule in ListenLayer to store a value from the data layer in the user's Session Storage to save the fact that they clicked on the button.  ListenLayer will then automatically push data into the data layer when the form is submitted, and you can write rules to get values out of Session Storage and put it back into the data layer when the form is submitted.
So when the form is submitted, you will have a data layer event  that will have a variable indicating whether the user first clicked on your button prior to submitting the form. In GTM you can simply reference this data layer event and look for the variable value inside a trigger - and whala! You have a trigger in GTM that will only fire if the user clicked the button and then submitted the form.
That was a high level explanation, so here are the details.
Step 1: Create a ListenLayer account and turn on the Internal Clicks Listener and its features. Publish your changes and make sure the script is on your website. etc.
Step 2: Take a look at your data layer activity and click the button. You can preview this in GTM or just look in the console. It will look like this  when you click any internal link on your website (I'm assuming your button is an internal link, you can otherwise use the Outbound Clicks listener)
Notice that the data layer activity has a bunch of variables like the click text, location, etc. These are just like variables in the GTM data layer.  In ListenLayer you will see them start to appear under Variable Settings and you can use them to write rules.
Step 3:  Make sure the Browser Storage feature is turned on inside the Internal Clicks Listener.  Then create a Global Browser Variable  (I am using a session key because I assume you want the sequence to occur in 1 session, otherwise use Local Storage). I am calling mine clickedButton.
Step 4: Create a browser storage rule inside the Internal Clicks Listener.  Basically under the Internal Clicks Listener is a menu item called Browser Storage (As long as the feature is enabled). Create a new Session Storage rule under that.  We want to save a value in our new Session Storage key from the previous step, but only if the user clicks the correct button.
You're going to have to write your own rule to identify your button click specifically, but here is an example . You can see my condition requires a specific data layer event (internalLinkClick) and then I'm going to look at the URL where the click was located and the URL where the user click to.  These are elements inside my data layer event from above, so I am using them to identify this specific button.  But you may want to use things like click text, xpath etc. which are all available in the data layer automatically.
Next, inside the same rule you will choose a value to save in the session key.  I am just going to save a yes. So now whenever someone clicks this button, they will get the value "yes" stored in a session storage key called clickedButton. That value will exist until they close the tab.
Step 5: Publish your changes and test it out.  I went to my website and clicked the button and looked at the applications tab of inspector and I see a yes in my session storage. You can see it here .
Step 6: Okay so now we need to know when a user submits the form. Depending on your form system ListenLayer might have a listener that is custom built to automatically track form submissions and push all the details into the data layer.  If not, just use the Custom Forms listener. Turn it on and turn on all the Form Activity features.
If you use this particular listener you need to tell ListenLayer what forms to listen for so they should have a class or ID or name element in the <form> tag and you can write a rule under event settings to identify the form.  I want the tool to listen for my forms that have one of two classes. Anyway, you'll need to work on getting your forms identified, it's pretty easy. Then you'll want to publish the changes and test out the form.  You should see data layer activity like this when a form is submitted.
Step 7: Okay we are almost there. This is the finale!  We will create a custom data layer variable to push the value of the session storage key into when a the form is submitted.  So first, under the Custom Forms Listener, you'll want to turn on the Custom Data Layer Values feature. Then under Global Custom Data Layer Variables create a new variable. I am creating  one call didUserClickButton.  Then click on custom values inside the menu under the Custom Forms Listener and create a Simple Rule. What we will do is write a condition to identify when this form submits and we will pull the value from the Session Storage and push it into the data layer. Again, write the rule that you need to identify your form, mine looks like this and I could add a URL in the value field.
On the next step, choose to insert the value from the session storage key like shown here. Save and publish.
Now test your form submission. If you have a value in the session storage, the form submission event in the data layer will contain this custom value , and if not it will look like this .
Boom!  Now you have a perfect data layer event named customFormSubmitted and a variable formCustomValues.didUserClickButton that you can simply reference in GTM to build a trigger. I assume you know how to do that. If not, look up how to create a custom event trigger based on a data layer, and how to register and use a custom data layer variable.
Here is the coolest part: If you program this from scratch, you have to manage the code and make sure it doesn't break, and document it. With ListenLayer it's all visual and once it's built you can write monitoring rules in the platform to notify you if something breaks with your setup.


Expanding / collapsing groups in Google sheets without affecting other users views

Question: Can anyone help? I have a huge sheet with lots of filters and groups.  Does anyone know if a way I can great views with certain groups expanded and others collasped that doesnt affect what other users view?  in other words I want to expand certain groups but if anyone else is in the sheet they may want them collapsed, if that makes sense!
Comment: This question has been bumped by Community User thress times.
Answer: In Google Sheets, almost all view options are shared in real time between all users, which means that you cannot use grouped or hidden rows or columns without having other simultaneous users experience the same changes.
The only exception is filter views that let you and other users decide which rows to show at a time independently of each other, all without disturbing each other. Filter views also let you sort data in the view, without changing the storage order of rows. Filter views are different from regular filters.
You can save filter views and give them descriptive names. For additional ease of use, you can insert links in the frozen section of the sheet to easily switch between filter views, instead of having to go to Data > Filter views to switch. See the Filter views example spreadsheet for an illustration.
Comment: Clarified the answer. Changes in row and column groups are visible to all users. Filter views are the only view type that is "private" to you.
Comment: Filter views doesnt seem to work - I collapse and expand groups when in a filter view and other see the groups closing?!


VFD or gearbox for Linear Actuator?

Question: I'm designing a linear actuator for a particular application, and the electric motor I'll be using will be a 1/8 HP three-phase motor. I need to decrease rotation of the motor, and my first idea was to design a reduction drive. But I know that this can also be done with a Variable Frequency Drive (VFD). I don't know how VFDs work and neither how to install and use them, but for this particular project, what do you think would be the best option? Would a VFD be cheaper than a reduction drive? And how VFD affects torque?
Comment: This might be better suited to engineering.stackexchange...
Comment: critical specs you need to define are torque, vs RPM and power available and duty factor of work being done.  This is how you start ANY design... with specs.
Answer: VFDs can easily get a motor to produce full torque at any speed from full speed down to zero. The difficulty is in motor cooling. An inexpensive standard motor can probably not operate continuously at much less than half speed without overheating. It is generally always better to use fixed gearing so that the motor operates at full speed for the highest machine speed that is required. Use adjustable speed only to reduce from the highest machine speed to lower speeds. Don't use a variable speed drive just to operate at a reduced constant speed.
For 1/8 Hp, a DC speed controller and a permanent-magnet DC motor or even a commutator DC motor will probably be less expensive than A VFD. DC motors can also have difficulty with continuous low-speed operation.
Answer: A gear system will reduce speed and INCREASE torque by the inverse ratio. A VFD will reduce speed and MAINTAIN torque. You need to start by evaluating your torque needs at the lower speeds.
VFDs also allows you to ADJUST speed, a gearbox will only CHANGE speed to a fixed value. If you don't need to ADJUST the speed, don't use a VFD.

VFD or gearbox for Linear Actuator?


Make ConsoleHandler output appear in logcat output

Question: Is there anyway to make the output of ConsoleHandler appear in logcat?
I have the following in the code
ConsoleHandler consoleHandler = new ConsoleHandler();
consoleHandler.setFormatter (new DMLogFormatter());
consoleHandler.setLevel (Level.ALL);

FileHandler fileHandler = new FileHandler ("logFile", true);
fileHandler.setFormatter (new DMLogFormatter());
fileHandler.setLevel (Level.ALL);

Logger logger = Logger.getLogger ("log");
logger.setUseParentHandlers (false);
logger.setLevel (Level.ALL);
logger.addHandler (fileHandler);
logger.addHandler (consoleHandler);

The outputs to the FileHandler works fine. Those to the ConsoleHandler does not appear.
I read about the following under 'Viewing stdout and stderr' given in the Logcat documentation

By default, the Android system sends stdout and stderr (System.out and
  System.err) output to /dev/null. In processes that run the Dalvik VM, you
  can have the system write a copy of the output to the log file. In this
  case, the system writes the messages to the log using the log tags stdout
  and stderr, both with priority I.
To route the output in this way, you stop a running emulator/device
  instance and then use the shell command setprop to enable the
  redirection of output. Here's how you do it:
$ adb shell stop
$ adb shell setprop log.redirect-stdio true
$ adb shell start

Those three commands did not help as well. Is it possible to make the output of ConsoleHandler appear in Logcat output?
Answer: If you're not bound to the ConsoleHandler, I recommend using slf4j-android (which dumps to logcat) or logback-android (which has several options for destination, including a LogcatAppender).