How fast does Venus move as seen from the earth?

Question: So last night I was about to sleep with the window in front of me. there was a 3 inch gap between the curtains that let me see a small portion of the sky. I could see something magnificently bright in the sky that couldn't be anything but Venus. So while I was looking at it for about 1-2 minutes it gradually moved out of my sight. That seemed pretty fast. I mean I kinda estimated that with such a speed it could move from east to west in less than 2 hours.
So is that normal?
Comment: Ganbustin.Good answer no more to be said really with my grand children we talk of 1degree = 4minutes and demonstrated transit of the moon(1/2 deg) took 2minutes
Comment: I just found this thread - I saw the EXACT same thing one week ago. Venus was shining so bright that my boyfriend told me to come to the window to look at it. We got our binoculars out and used an app to determine that it was Venus. About 20 minutes later my boyfriend went to another room in the apartment and I was sitting on the couch, still looking out the window at Venus, when suddenly it started moving. Rapidly. First I thought my eyes were playing tricks on me but it kept moving until it was out of my line of vision completely. I called my boyfriend and said "come here, it moved. it's gon
Comment: e!" He didn't believe me until he came and looked and saw it was nowhere to be found. So bizarre.
Comment: Well, once I got tricked by an airplane thinking it was a moving star. lol! But if your app says it's Venus, it probably is, or maybe you were witnessing International Space Station? Are you sure it was not a cloudy night? And perhaps the shiny object was camouflaged by a big cloud? Happens to me a lot.
Answer: The Earth rotates on its axis once every 24 hours. (Well, actually a little less, by about 17 minutes, but close enough.) That's $360^\circ$ in 24 hours, or about $15^\circ$ per hour. $15^\circ$ is 30 times the width of the Sun or Moon. The Sun moves exactly that fast (on average), the stars a smidgen faster, and the Moon a tad slower. (The Moon lags behind the stars by approximately its own width every hour.)
Since Venus is never more than about $45^\circ$ from the Sun, it always sets at most 3 hours after the Sun does, and rises at most 3 hours before.
Comment: Did you mean to say "a little less, by about 4 minutes" instead of 17?
Comment: @ye9ane Since 2009, the International Space Station is now the [second brightest object in the night sky,](http://www.universetoday.com/27584/iss-now-2nd-brightest-object-in-night-sky-with-final-solar-arrays-deployed/) even outshining Venus. Perhaps that is what you saw?
Comment: So, according to this fact, what I actually saw was merely Venus, cause it was around midnight. Is it possible for a satellite to be that shiny?
Comment: I looked up NASA to spot the station from my location. It can't be it, since it said on that particular night it was not visible at all.
Comment: @ye9ane I assume you meant "_clearly not_ Venus". Jupiter is currently bright enough to be easily mistaken for Venus, and is high in the sky at midnight. Or it could have been Sirius, not as bright as Venus or Jupiter, but plenty bright enough to stand out. All of these move at roughly the same 15 degrees per hour. It would not have been the space station. ISS really books, completely passing from horizon to horizon in at most a minute. It cannot be mistaken for a non-satellite.
Answer: This was likely the international space station.  It can take up to 5 minutes for the ISS to pass from horizon to horizon.  However, later in the night, that time gets shorter as the suns relative angle to the ISS and you changes.  It will be quickly back into the shadow of the earth and lower on the horizon, staying low throughout.  It can reach up to -8 magnitude on occasion.  This is very easy to see, however near midnight it would likely be closer to 0 or 1.


How can I round the edges of a mesh?

Question: I have looked at other similar questions on this site but couldn't answer my question. I have a model made of cubes the edges look very sharp (I would put a picture here but I don't have the required rep) is there a simple way to make the edges round?
Answer: You could use the Bevel Modifier from the properties panel.

Example with Segments set to 3 and Width 0.1 (red cube) Width 0.3 (blue cube)
Answer: stacker's answer answers the question. However, you can also selectively bevel parts of your mesh with Ctrl + B which is often faster than using the modifier if you want to bevel certain parts of your mesh (the modifier has options where you can bevel a group of vertices etc). You can also bevel single vertices with CtrlShift + B.
See a quick example here. It is worth noting that you can set your mesh shading to smooth to help remove faceted geometry at times and give a more rounded look.
Also see Most efficient way to round edges and How can I make sharp geometric 3d models look more realistic? for more tips.
Answer: You can also decide to do it the manual way. Add loop cuts Ctrl + R close to the edges of the cube in all directions (or as needed).
Then apply a subdivision surface modifier Ctrl + 1 - 6
Comment: Your answer is ultimately the better solution but one con is that it generates much more geometry than is needed. See http://blender.stackexchange.com/q/811/12
Comment: Yes. The modifier is actually the best option in this instance.
Answer: If somehow your mesh is all messed up and you're looking for a way to avoid selecting multiple outer edges, the Remesh modifier can sometimes yield adequate results.
This applies in cases when you need a more photorealistic edge to objects - it WILL NOT give you full control of bevelling. Whether it's the best way also depends on the complexity of your shape(s) and how much else is going on in your final render. The more complexity, the harder for the modifier to get it "right".
For increased accuracy, set the voxel size really low (save first, even save as if necessary). This operation better be well thought through though, as it drastically slows things down. Keep in mind your intended end result before going this route.

How can I round the edges of a mesh?


Toward vs. Towards

Question: Are the words "toward" and "towards" synonymous?  If not, when should I use one over the other?  "Towards" usually sounds silly to my ear, but is that just me?
Comment: This is usually an AE vs BE difference. Actually toward sounds awkward to me.
Comment: If *towards* sounds "silly" to you, just use *toward* in your own speech and writing. But it would be ill-advised to tell someone else their usage sounds silly. It's just regional variation (primarily a US/UK split), but there's a certain amount of "personal taste". Myself, I use both freely, but as a Brit I probably favour *towards*.
Comment: As far as I know, the choice between these two words is mostly a matter of where you live. Generally speaking, UK and US people use, respectively, towards and toward. However, I'm not a native speaker of English language; so I might be wrong.
Comment: towards usual in australia
Comment: I don't suppose there's any etymological connection, but I can't resist pointing out that *crabs move **sideways*** (and I never heard of *a crab moving **sideway*** :).
Answer: Indeed it seems that it is a British vs American difference. Note the ngrams below.
British:

American:
Comment: A survey of *10* of your friends vs the massive sample size that this is taken from.
Comment: What an interesting chart!
Comment: I love the American graph's X shape :P
Comment: This is pretty misleading. A survey of ten of my American friends' email over ten years shows a strong dominance of *towards* in these particular individuals.
Comment: @tchrist I hope you're joking, but sadly I'm not sure.
Answer: The -ward root in words like forward, backward or toward is related to the Latin vertere and versus (to turn) and goes as far back as Sanskrit (vartate).
So this root has a rich history and has appeared in various altered forms in numerous Indo-European languages.
In German we have wärts which has the s: rückwärts (backward(s)) and vorwärts (forward(s)).
Evidently, in Old English the -ward root was either -weard or -weardes. So even in ancient times, there were already two forms: one with an es and one without. The idea that Brits use -wards, whereas -ward is a modern Americanism simply does not hold water since both versions trace back to respective Old English forms.
In any case, there is no need to have any qualms about putting the s on -ward or about leaving it off.
Comment: I think that not only is it one versus the other regional, but in some dialects *-wards* seems to refer only to a manner of motion, where *-ward* is more general. You can move *towards* a goal (or *toward*), but you turn *toward* your friends for help.  You also cannot *look forwards* to your vacation, only *forward*, but you can drive *forwards* and you can know something *forwards and backwards*.
Comment: Certainly the modern usage of one form over the other can be regional, but I appreciate this short history lesson!
Answer: I agree with @carlo_R's comment and James Jiao's answer. However, towards isn't just limited to British English. For example, I grew up in the southern United States (Florida and Alabama to be exact) and say towards (my whole family does as well). Now, I live on the West coast United States and they generally say toward.
Comment: That's true, hence the word *chiefly* :P.
Answer: This is usually an American vs British English difference. Toward is chiefly American and towards is chiefly used in BE and most commonwealth countries. The former is foreign to my ears but obviously understood due to the proliferation of American media.
Comment: Disagree.  *Towards* is also American.
Comment: @tchrist Might want to look up the word 'chiefly'.

Toward vs. Towards


How does Anarcho Communism solve the temporal division of labor problem?

Question: How does AnCom solve the temporal division of labor problem? Presumably no one wants to live in a cave. Take a pencil, for example. To manufacture it requires a rubber tree farm, a logging territory, a graphite mine, and an aluminum mine, along with a place to put it all together. Obviously a pencil manufacturer cannot be in 4-5 places at once, and since AnComs do not believe in absentee ownership of property, as soon as the owner left one property to tend to another property, the workers would steal all the land and equipment, or claim it as their own. So how does anything get made in AnCom beyond hand-made bead necklaces?
Comment: "Owner."  You're not even starting from an anarcho-communist account of potential human economics here.
Comment: @SamuelRussell - I assume "owner" meant "whoever invested time in building it".
Answer: The question is wrong in its attempt to explain anarcho-communist approaches to social production, as such the question is unanswerable.  This will be an attempt to answer what the question should be.
Social production of useful objects is an inherently social phenomena.  Pencils are never produced in isolation or on Walden Pond.  They are always produced in a context of water, power, machinery, raw materials, ancillary materials, human effort and human thought.  These elements of social production are brought together in any economy in order to produce.
The general anarcho-communist conception of productive and useful activity involves limited spans of control within socially delegated or accepted purposes: some people choose to make pencils, and other people agree that they should.  Agreeing that some people should make pencils is also an agreement that the materials and machinery for this purpose should be supplied.
The supply of purposeful material in anarcho-communist economic conceptions is driven by voluntary donation or supply.  Even considering this as zero-priced is somewhat silly, the mechanisms of distribution are throughput and discussion centered, a mixture of excess and what's easiest understood as democratic, but not central, planning.
Pencil makers give their effort and creativity and pencils away for people who want pencils.  The pencil inputs makers give their effort and creativity and services and products away.
The idea of "theft" in this context is meaningless, as is "claiming it as their own," because one of the central claims of anarcho-communism is that property as a social relation of exclusive and exclusionary control over socially productive resources can be abolished, and relationships of gift and voluntarism can replace all these activities.
For concrete examples of this kind of behaviour, most work-ins and productive factory occupations give an example, as do the limited circumstances of revolutionary production.
And so, to resolve the question in the title at the end:
The temporal division of labour is resolved by a priceless giving based economy and by the discussion to resolution of the organisation of useful activity as throughput relationships.  These can be seen in prefigurative forms in the relationships between industry workers councils during revolutions in the 20th century, Hungary is a great though time limited example.
Whether such an set of human relationships is desirable tends to vary based on your opinions about property.  Whether such a set of human relationships results in greater value production is a clear negative: value is abolished.  Whether such a society expands faster than capitalism is unclear: most have been shut down by military force.
Comment: IOW: yes, a worker collective works wonderfully when the filthy capitalist 10 years ago built the factory, designed the machines, etc... How does it work when you start out from scratch?
Comment: Should I simply make that a separate question?
Comment: I think the root of the question (at least, for me) is: what is the incentive for someone to spend their time and effort to build a pencil-making factory? Yes, the incentive to make a pencil in such a factory is easily found (the cost to you as individual to make a pencil is pretty small). The incentive for an individual in capitalism to build a factory is, you get to keep it AND its profits (so, you can borrow others' efforts towards that eventual cost AND invest a lot of your own efforts and talent into it). That mechanism is 100% missing in AnCom, and what's unclear is, what replaces that
Comment: I think you've buttoned on a separate question that is worthy in itself of a variety of "good subjective" answers.


Is it possible to transfer files from windows 7 to ubuntu? using dual boot

Question:
Possible Duplicate:
How to read ext4 and btrfs partitions in Windows?

I plan to use Ubuntu, but I don't know if I can transfer files from windows to Ubuntu. Any help please?
Comment: @UriHerrera Not a duplicate, he's asking about the other way around. Windows files > Ubuntu, not Ubuntu files > Windows.
Answer: After installing Ubuntu on dual boot.
1) To transfer files from Windows to Ubuntu:
Well, you don't even need to =) Ubuntu can read NTFS partitions (Windows file system) you can browse your Windows drive without effort. (and of course, transfer files from Windows partition to Ubuntu partition)
2) To transfer files from Ubuntu to Windows:
Read the post suggested by Uri Herrera
Of course, you can also transfer files the ugly way, using an external storage, like USB stick.
Answer: I dual boot ubuntu 10.10 and Windows 7, and I keep a Storage partition formatted to NTFS for any files that aren't OS specific. As mentioned by Galm, both Operating Systems can read it, so it eliminates the need for transferring and keeps a singular copy of everything regardless of where it was modified. You could follow Uri's link, but keeping a Storage partition has worked well for me.


utilities of swapped partition

Question: Can swapped space from hard disk be used to increase availability of RAM for playing games etc. on Windows XP?? Can anyone tell me how to do such a swap??
Answer: Swap space is used as ram by Windows, It's a LOT slower than RAM, so if you can afford to your computer will take more ram, do that. With that said, here's how you change swap settings:
By default Windows XP will increase the swap space as needed. Under normal circumstances, you should not have to mess with this.
You can change it by right clicking on "My Computer" and selecting Properties. Go to the Advanced tab, Push the Settings button in the Performance section, then go to the Advanced tab then Change in the Virtual Memory section.
Answer: The simple answer is NO.  In order for virtual memory to come into play you usually have already run out of RAM.  Increasing virtual memory will not increase the amount of physical RAM you have available.  In fact it will slightly decrease it since the virtual memory manager uses RAM to keep track of the virtual memory, but in the process it will allow you to run larger programs than you normally could. Those programs will run slower - sometimes MUCH slower - but they will at least avoid a system crash (up to the point where you run out of virtual memory too).
Back to your original problem.  There are several threads on SU that discuss how to reduce XP's memory footprint.  You might want to continue your search there.

utilities of swapped partition


Reference states for molecular orbital energies in DFT calculations

Question: When doing a population analysis using density functional theory (specifically as implemented in Gaussian), what are the orbital energies (i.e. alpha and beta eigenvalues) with respect to? If I have two different but closely related compounds, can I directly compare their HOMO (or LUMO) energies? It should be noted that I am not referring to comparing their HOMO-LUMO gaps, but rather the energy of a single molecular orbital.
Answer: In molecular electronic structure, electronic/orbital energies are measured with respect to an energy zero of an isolated electron in free space.
Hence a lower LUMO energy does correspond to an orbital that is more apt to accept an electron/a more negative electron affinity compared to another molecule.
Correspondingly a higher HOMO energy corresponds to an orbital that is more liable to give up an electron/a less positive ionisation energy compared to another molecule.
This is the basis of Koopmans' theorem in Hartree–Fock theory and it's equivalent in DFT.
Comment: Yes, that is true.  Koopman's theorem for Hartree-Fock is a rough approximation.  As the orbitals of DFT are only used to form a density (unless you are using some kind of hybrid functional) you would expect orbitals/HOMO/LUMO from non-hybrid DFT to be less accurate than those from hybrid DFT which are less accurate than those from HF.
Comment: From your link: "Ionization energies calculated from DFT orbital energies are usually poorer than those of Koopmans' theorem, with errors much larger than two electron volts possible depending on the exchange-correlation approximation employed."
Answer: As mentioned by others, the zero of the system is a free electron.
As for comparing energies, people do this, but they shouldn't. People love to compare HOMO-LUMO gaps and LUMO energies but they are almost entirely arbitrary. In DFT (and Hartree-Fock), the energy of the system is entirely a function of your occupied orbitals. You could delete the bottom 10 unoccupied orbitals from your basis set and you would get the exact same energy but your LUMO energies (and hence HOMO-LUMO gaps) will be completely different.  So making your basis smaller can increase your LUMO energies. What about the flip side? If you use a bigger basis, your LUMO will get lower and lower in energy. In the basis set limit, you will have a bunch of orbitals at the zero (you will basically be replicating the "orbital" that corresponds to a free, unbound electron). There's a reason that the electron affinities people try to calculate from LUMO energies are terrible. You are basically banking on the chance that your basis set is just the right size for your molecule in just the right geometry.
To summarize, you can basically tune your basis set to produce whatever LUMO energy you want. I wouldn't compare LUMO energies between the same molecule in different basis sets or even geometries, let alone different molecules.
All hope is not lost though, if you really want some sort of LUMO-like thing. You can try working in some sort of localized basis: NBO produces "anti-bonding" orbital energies that are no where near as sensitive to basis set as canonical orbitals. However, that might not suit your purpose.
Comment: Yes, they are wrong. Some quotes from the wikipedia article cited in their answer: "The LUMO energy shows little correlation with the electron affinity with typical approximations.[7]" Zhang, Gang; Musgrave, Charles B. (2007). The Journal of Physical Chemistry A. 111 (8): 1554–1561. "Calculations of electron affinities using this statement of Koopmans' theorem have been criticized[11]" Jensen, Frank (1990). Introduction to Computational Chemistry. Wiley. pp. 64–65. It is an extremely common misconception, but LUMOs are meaningless for DFT/HF.
Comment: Unoccupied orbitals are important for correlated methods, MP2 (and therefore double hybrid DFT) because they are actively used in the determination of the energy. For normal DFT/HF, they are the part of the Hilbert space granted to the molecule by our limited basis set that was determined to be useless for improving the energy. All methods are basis set dependent to some degree, so it is not surprising that changing the basis set can change your answer. However, all decent methods converge in to some answer in the complete basis set limit; the LUMO of DFT/HF does not.
Comment: this is what I also thought, but (unless I'm missing something) it seems to somewhat disagree with the answer provided by @user213305 . Could we try to reconcile the answers?
Comment: Unfortunately, for my systems, the NBO code often has a lot of trouble finding a sufficiently "optimal" Lewis-like structure such that NBO-computed properties are often unreasonable. Nonetheless, this answer is the one that makes the most sense to me.
Answer: EDIT: After some thought, I've summarized the following: we can use Koopmans' theorem (approximately) within DFT to compare single point MO energies, as a reference value is indeed used (that of a free, or fully ionized electron). Therefore, we can (somewhat justifiably) compare the LUMOs of two different systems, as they share the same reference energy.
However, single point energy calculations of other kinds cannot be directly compared in a valid or consistent manner between systems of differing number of atoms and/or electrons. Instead, reference values (from literature or another experiment) must be used to compare between systems.  This makes MO energies a special case.
That being said, DFT works with densities that happen to reflect MOs quite well, and so Koopmans' theorem is not exact for DFT and should be used carefully.
Comment: It should be noted that I'm not talking about the electronic energy of the system.


Is there a simple way to get Django 1.2.* (latest stable) installed?

Question: I want to start developing for it. I could easy_install or pip install but I'd prefer a proper repo.
Is there a PPA that's up to date?
Answer: Django 1.2 is included in Maverick Meerkat (still under development), but it appears that an unofficial backport of it exists in a PPA.
I haven't tested the package, but it appears to be a simple rebuild of what's in maverick.
An official backport to lucid has been requested & will hopefully happen sometime soon.
Answer: For most kinds of software packages, I agree with you that getting them from the repository is preferable. I would argue that it's different with python development related packages, though - you mostly want the latest (stable or development) version, dependency checks are figured out automatically for you. If I were you, I'd just go with using pip.


How to offset the start of rigid body physics to a specific frame

Question: How can I tell Blender not to start applying physics until a certain frame? Is it possible? I have a very complicated shot, where a massive object is crashing though various different cell fractured elements, but despite having tried the Enable Deactivation/Start Deactivated and trying somehow to set up keyframes for the Dynamic check box, all of my objects that are supposed to activate when my large object interacts with them end up just breaking apart on their own free will at the beginning of the animation. Is there a solution I am missing?
Answer: To offset when a rigid body simulation starts, I would suggest that you use keyframing to your advantage. You can keyframe any option in blender, including the "Animate" and "Dynamic" check boxes in the rigid body options. Mouse over the "Animate" or "Dynamic" checkbox and press "i" like any other add keyframe.

You can then make it so that only when the object is hit, or at a certain time, will the object begin to fall. Likewise, you can also use this so that your fractured objects do not fall apart until they are hit or about to be hit. Hope this helps!
P.S.You can find a full tutorial detailing this sort of animation/simulation here. This is a three part tutorial (with a prequel teaching how to model the mug) made by Blender Cookie.
Comment: I've tried doing this with my fractured objects but I ran into an issue where setting up the keyframes on my active object (One of the fractured pieces) doesn't transfer those same keyframes over to the rest of my fractured objects, even if I hit COPY FROM ACTIVE in the RIGID BODY TOOLS. Is there a simple way to copy over the keyframes?
Comment: Try using the dupe sheet to push the keyframes to the other objects. There are plenty of tutorials out there but its really intuitive.  @Daniel
Answer: When your rigid body objects start deactivated they need to be activated by another rigid body object.

This scene uses a cube to activate the simulation,  this will also work when the cube is hidden from the scene and render by the visibility flags.
Settings for the cones:

Setting for the activating cube:

The information is already contained in @gandalf3 post here: Sequentially Enable Rigid Body Control
Comment: I have the scene set up this way already but it is not functioning properly.
Comment: @David could you upload your .blend here:http://blend-exchange.giantcowfilms.com/  and add the link to your question.
Answer: I discovered a sphere didn't work for the object colliding with the fractured group. When I changed to a cube it worked fine. I'm still looking for a reason as to why (if anyone knows, please respond), but wanted to add this here in case anyone else was pulling their hair.


Card off the table by a player

Question: I have two players in the hand.  On the river player one makes a bet.  Player two does not call.  In the meantime player one flips up his two whole cards and one falls off the table.  Does player one still get awarded the pot since nobody called him on the river?
Comment: When you say "does not call" do you mean that player two folded?
Comment: If by "does not call" you mean fold, the answer is yes because the hand is already finished.
Answer: You're unclear when you say player 2 "doesn't call". Do you mean that he actually made some motion or verbal indication of intent to fold? If so, then the moment that happened, the hand is over and player 1 became the owner of the pot. What happens after that is irrelevant.
If that's not the case, and player 2 still has cards in his hand and has not acted, then the dealer's job here is to simply look at player two and wait for him to act without saying a word. There are three possible outcomes: he folds (and player 1 wins), he calls (and player 2 wins, because player 1 no longer has a legal hand), or he asks the dealer/floor for a ruling before indicating intent. In that third case, it is up to the floorman to do what he thinks is fair. The dealer must be careful not to influence player 2 in any way--he must remain neutral.
In that third case, the floorman will probably tell player 2 something vague like "I'll rule when the action is complete. Please act on your hand". If Player 2 asks specifically whether player 1's hand is dead, he can say "Player 1 cannot win a showdown with an incomplete hand. Please act on your hand." If player 2 then folds, player 1 still wins the pot (no showdown needed). If player 2 calls, he wins, though the floorman might decide to return the last bet and call depending on the situation (for example, if someone else had mentioned that player 1's hand was dead and influenced player 2's call).
Answer: Yes because showing your cards is not an davantage. He may suffers a penalty at the end of the end.
Answer: Current situation
In normal conditions the answer should be 'Yes the player one get's his pot awarded.'
But as i always say, some casino/home games have strange rules and you should know them before you sit in a table.
Other situation
If the player showed his hand and at least 1 other player still act, most of the time the last user can decide his action after seeing both cards. It's like the game keeps playing but the player who saw the cards has a big advantage because he knows where he's at.
At that point the last user could try bluff the other player or just abandon the hand because knows he's behind.

Card off the table by a player


What's the best lightweight pole for a tarp?

Question: I'm considering starting to use a bivvy bag/tarp combination for solo backpacking in the UK (read: no trees where I'll be walking!)  Most people seem to use trekking pole(s) for rigging these up which is great if you already carry one, but I don't use a trekking pole for walking.  It seems like a lot of extra weight/expense to carry one just to rig a tarp.  But what are good alternatives?  There is a british army-issue aluminium basha pole but they are not that light.
Answer: I usually use trekking poles when walking and have been for over 20 years as it helps prevent knee injury so I would use them with a tarp.
Since you want to use a dedicated pole for a tarp which is lightweight, you could have a look at this one http://www.backpackinglight.co.uk/shelter-accessories/WA114.html from a UK website dedicated to lightweight gear.
I have no experience of this product but details on the pole are:

Expanding aluminium pole designed for any tarp or tent which requires support    from 128cm - 152cm.
Pole Dia: 19mm
Weight: 285gm
Minimum pack length: 37cm
Cost about £25
Answer: Many ultra light tents which use trekking poles as part of the framing offer the alternative of using carbon fiber poles (1-2oz), carbon fiber and fiberglass (1.8oz), or aluminium (4oz).
I used one carbon fiber pole over a long period of time for the awning of my LightHeart Solo tent (they only sell aluminium now). In one of my first outings, the carbon fiber pole broke. My friend walked on the guy line and the pole broke. After ordering the spare one I never had any problems with it. Anyhow, I find that they can be a bit brittle if not handled properly.
For the tent frame, I would use carbon fiber trekking poles which are very, very light (less than 3oz). I typically did not use trekking poles much prior to this. I had good experience with these poles. I've heard of people who complain that they may break easily depending on how hard you can be on your trekking poles.
Answer: There are some really light weight Easton poles, check
http://www.trekking-lite-store.com/Zelte/Zelt-Zubehoer/Easton-Front-Pole::133.html
 around 50grs (this is really light!). There is also a sturdyer version available at 120grs.
I have successfully used my old leki hiking poles which weigh in at 280gr a piece, (see https://www.youtube.com/watch?v=DpzJAHbsbow&list=UUzaxH-olcpIse8R6HDxaNmQ&index=1 for a pretty windy night) but I do not normally carry trekking poles, as I want to have my hands free. I was considering to do some poles myself from bamboo, but coming across the above easton poles, I had to realize I will never be able to make poles that light. Have not had a chance to test the easton poles yet, but will do so soon. Hiking poles are somwhat of an "overkill" if you do not carry them anyway, as they have to be able to cope with quite some bending forces. A properly pitched tarp will only exert compression forces to the pole, so there is no need for the sturdyness of a hiking pole
Comment: Hiking poles are only meant to resist compression by the way, though to an higher extent. Any hiking pole would bend easily if stressed by its side.


Want to show the a proof of the sequent $\forall x \forall y R(x,y) \Rightarrow R(y,y)$ must have a cut

Question: Want to show the a proof of the sequent $\forall x \forall y R(x,y)  \Rightarrow  R(y,y)$  must have a cut. For this question we are in the Gentzen calculus. I am even having trouble just finding a proof of this sequent first off. There are two results I know of that may be relate, namely: (i) if $\Sigma$ is a cut free proof with endsequent $\alpha$ , then every formula which occurs in $\Sigma$ is a subformula of some formual in $\alpha$ and (ii) if constant c, a relation symbol R or a function symbol f does no occur in he endsequent of a Cut-free proof $\Sigma$, then c, R or f does not occur at all in $\Sigma$. That being said I don't think that these help and the only other thing I can think of is induction on grade and mix rank.
Answer: The formula $∀x∀yR(x,y) \rightarrow R(y,y)$ is valid; thus, it must be provable.
With an Hilbert-style proof system [see Herbert Enderton, A Mathematical Introduction to Logic (2nd - 2001)] we have :
(1) $∀x∀yR(x,y) \vdash ∀z∀wR(z,w)$ --- by Theorem 24I (Existence of Alphabetic Variants), page 126]
(2) $∀wR(y,w)$ --- from (1) by Ax.2 [i.e.$\forall x \alpha \rightarrow \alpha[t/x]$, page 112] and modus ponens
(3) $R(y,y)$ --- from (2) by Ax.2 and mp
(4) $\vdash ∀x∀yR(x,y) \rightarrow R(y,y)$ --- from (1) and (3) by Deduction Theorem.
Thus, it must be provable also in sequent calculus.

Edit Feb '17 : I do no longer think that it works...
We can write the derivation:
\begin{align}
{\cfrac{\cfrac{R(z,y) \Rightarrow R(z,y)} {\forall yR(z,y) \Rightarrow R(z,y)}}{ \forall x\forall yR(x,y) \Rightarrow R(z,y) } \text{by two applications of}\, \forall \text{-left}}
\end{align}
and then apply the Substitution lemma [see Sara Negri & Jan von Plato, Structural Proof Theory (2001), page 68] :

if $\Gamma \Rightarrow C$ is derivable and $t$ is free for $z$ in $\Gamma, C$, then $\Gamma[t/z] \Rightarrow C[t/z]$ is derivable.

We apply it to the end-sequent above, with $y$ as $t$ and $R(z,y)$ as $C$; thus $C[t/z]$ is $R(z,y)[y/z]=R(y,y)$ to conclude with:

$$\forall x\forall yR(x,y) \Rightarrow R(y,y)$$
Answer: I guess this response is a bit late but...
As you observe, a cut-free proof contains only subformulas of formulas of the endsequent.  This means that no sequent in a cut-free proof of your sequent can have a formula common to its left and right sides.  But there is no such proof.


How can I encode my preference of biking/walking/public transport in a google maps URL?

Question: I used to be able to specify a url parameter to automatically show public transport directions, but it stopped working and now I only get driving directions when I enter a URL like this: https://www.google.com/maps/dir/120+Spring+St,+Cambridge,+MA+02141/24+Cummington+Mall,+Boston,+MA+02215/ What is the parameter I should add to get biking, walking, or public transport directions? (something like ?mode=b)
Answer: Use this format:
https://www.google.com/maps/preview?saddr=[insert_from_address_here]&daddr=[insert_to_address_here]&dirflg=[insert_mode_here]

Options for dirflg:

w: walking
b: bicycling
d or h or t: drive
r: public transit

Example: if you want to bicycle from 120 Spring St, Cambridge, MA 02141 to 24 Cummington Mall, Boston, MA 02215, your URL would be:
https://www.google.com/maps/preview?saddr=120+Spring+St,+Cambridge,+MA+02141&daddr=24+Cummington+Mall,+Boston&dirflg=b

Comment: With the new Google Maps interface and URL scheme, those no longer work... I'm looking for an alternative to specify public transit on URL. Does anyone know?
Comment: Interesting. I didn't know there were two URL schemes: `maps/preview` and `maps/dir`
Answer: (Edits made 6/25/2015 based on suggestions)
I've actually been playing with the new URLs for the past several days and have posted the results of my investigations on my blog:
https://mstickles.wordpress.com/2015/06/12/gmaps-urls-intro/
There are about 11 posts covering the various parts of the URL structure, which I can't summarize well in one post. For your purposes, the Directions Options posts (Part 1 and Part 3) are probably the most relevant, along with the Data Options Reference post. I will note a couple of things, though:
The new maps URL's '/data=' section is done in a kind of "data block" setup. So, if you look at the parameter treebles mentioned for walking:
/data=!4m2!4m1!3e2

The first element, '!4m2', means this is the block (m) holding information about the map/image contents (4m) and is two elements long. The second element, '!4m1', means this is the block (m) holding directions route options (4m inside the first 4m) and is one element long. The last element, '3e2', means this is an enumerated value (e) indicating transportation mode (3e inside 4m inside 4m), with a value of 2 = walking. As treebles noted, the other possible values are 0 = driving, 1 = bicycling, 3 = transit, and 4 = flight.
The reason this is important, is that if you were to add another option that goes in those blocks, the first elements would have to change to reflect that they're "containing" more elements. So, if you wanted to specify that distances should be shown in kilometers, you would add an element '4e0' (distance units is a 4e inside 4m inside 4m; value 0 = kilometers), and the new parameter set would be:
/data=!4m3!4m2!3e2!4e0

If I wanted to specify public transit routes with a preference for taking the bus and a preference for fewer transfers, the parameter set would be:
/data=!4m5!4m4!2m2!4e2!5e0!3e3

Broken down to show which elements are in which block:
!4m5 - map/image contents block, 5 elements
- !4m4 - directions block, 4 elements
- - !2m2 - route options, 2 elements
- - - !4e2 - preferred transit route, 2 = fewer transfers
- - -        (1 = best time; 3 = less walking)
- - - !5e0 - preferred transit type, 0 = bus
- - -        (1=subway, 2=train, 3=tram/lt rail)
- - !3e3 - transportation mode, 3 = public transit

Comment: Thanks for your contribution, but an answer that has no content other than a link is vulnerable to link rot. Editing in a small bit of information you collected would help. Like this...
Comment: This should be the correct answer
Answer: I asked the same question on Google Forums and got an answer:
[by treebles]

These are the parameters to add at the end of the directions URL for the different modes of transportation
Car                /data=!4m2!4m1!3e0
Bicycling          /data=!4m2!4m1!3e1
Walking            /data=!4m2!4m1!3e2
Public Transit     /data=!4m2!4m1!3e3
Airplane           /data=!4m2!4m1!3e4

For example
https://www.google.com/maps/dir/747+Howard+St,+San+Francisco,+CA/55+Music+Concourse+Dr,+San+Francisco,+CA/data=!4m2!4m1!3e3

Thanks again, treebles!
Answer: Thanks to LoboFX's excellent answer, I've added this as a custom search engine in Google Chrome on my computer, so I can just type pt [destination] into the Chrome omnibox, and it will find public transport leaving now from my Home to that destination.

Settings > Search > Manage Search Engines

Search engine: Public Transport
Keyword: pt
URL: https://www.google.com/maps/dir/Home/%s/data=!4m2!4m1!3e3

Of course this requires being telling Google where your home is and being logged in to your Google account.
You can replace Home with Work, or your most common location, say 123+Main+St+Springfield, or even here, if, again, you share your current location with Google.


Inventory/Recipe Software

Question: I am looking for software that I can use to track inventory of supplies, and also keep a record of the recipe/requirements for various projects so the system can tell me what all can be made and how many from current inventory.
Comment: Your question is a little too vague for people to advise correctly. Can you give more information? How large is your inventory? Unique items or nor? Need to manage barcodes? Should the software be online or a standalone? Need warnings when the stock becomes low?
Answer: There are a lot of ways to do it, If you are doing on small scale i would suggest an excel available at
https://www.tradegecko.com/blog/5-best-ways-to-manage-inventory-in-excel
If you are doing it on an enterprise level and want to use an App, Square provides better tool
https://squareup.com/help/us/en/article/5228-inventory-management
Answer: For those speaking French, and especially for companies located in France, one solution is OpenConcerto: https://www.openconcerto.org
PROS
It is free and open source (written in Java)

Polished interface
Standalone (your data are not in the cloud and you don't need a web browser)
A client-server version exists, which uses a PostgreSQL database. The client-server version is more difficult to install, than the standalone, but I could however install it successfully.
If I remember well, invoices templates, should be customizable (LibreOffice documents or so, but this would be to confirm.)

CONS

Very oriented for France and with its administrative and legal aspects in mind.
This means that when you are not in France, some features of the software can be very boring. For instance, it will always ask a VAT rate.
Almost impossible to customize, unless you are a confirmed Java programmer. The community is small and the company that develops the software is partly living from custom developments. Although the software is open source, don't expect much help (unless paid help from the developpers) if you need to customize it.

I liked the inventory part but felt that customization would be a long and difficult way for other parts of the software. (Although it's a long road I'm currently developping my own solution for more flexibility.)

Inventory/Recipe Software


Pros and Cons for black in Queen's Gambit Accepted

Question: I'm a beginning chess player and still learning the opening. If white's first move is 1.d4 and black counters with d5 (closed or semi-closed games), and white's second move is c4 bringing the Queen's Gambit, black counters with dxc4. What are the pros and cons for black? Thank you for your answer.
Answer: A super-abridged guide to the QGA (Queen's Gambit Accepted) is that Black temporarily cedes the center with dxc4, and hopes to develop rapidly while White recovers the pawn (you'll want to look up some key lines where Black suffers because he is greedy and tries to hold on to the pawn; personally, I found it instructive to look at the main line of an entirely different opening called the Noteboom Variation, where Black has better chances to hang on to the pawn, but White's tricks still recover it), and then—just before White can start to cash in on his central advantage—play c5 in an attempt to nullify the center.
For example, a sample line (not necessarily main line; it lacks some "professional subtleties" that, as others said, you really don't need to memorize as a beginner):
<code>[FEN "rnbqkb1r/pp3ppp/4pn2/8/2Bp4/4PN2/PP3PPP/RNBQ1RK1 w kq - 0 7"]
1. d4 d5 2. c4 dxc4 3. e3 Nf6 (3... b5? 4. a4 c6 5. axb5 cxb5 6. Qf3 {Winning White material}) 4. Bxc4 e6 5. Nf3 c5 6. O-O cxd4
</code>
In the above ending position, White has the option to either cede the center himself with Nxd4, or give himself an IQP (isolated queen's pawn) where he accepts what could turn out to be an endgame weakness (an isolated pawn) in exchange for a middle game catalyst (the White pawn will serve as a powerful battering ram and outpost provider that Black must stop at all costs).
However, Black will have his work cut out for him trying to actually gain the upper-hand over White, whose spatial advantage allows him to develop relatively more comfortable than Black. If you want something that's a bit less of an "exposed" opening for Black, I might recommend the French or the Caro-Kann which has the same idea of ceding the center only to counterattack with c5 (unfortunately, of course, neither of these are likely with 1. d4).
Comment: Absolutely super answer!!!! Thank you so much Feryll!!!!
Answer: If you are a beginner, studying tactics, general opening principles and some strategy first will be more useful than learning any opening.
Basically the idea of the queen's gambit for white is to remove a central pawn (the one on d5) and then to occupy the center (general opening principle).
As with any opening theory it does not stop at the second move, dxc4, so it is difficult to make a general statement.
Black has won a pawn, but it is not easy to  keep it without concessions, specifically if you want to protect it you will have to put the queenside pawns all (or most) on light squares (a6, c6, b5, c4) which in turn weakens the dark squares and in many cases also locks in the light squared bishop on c8. So in many cases black is happy to return the pawn.
Comment: Don't overestimate openings. As I wrote above, for most beginners, any problems encountered in the opening phase of the game are usually due to missed tactics or ignoring opening principles (not developing pieces, ignoring king safety, not occupying the center...).  Opening theory can be quite complex and you won't be able to learn all side lines at once and also you will be on your own if your opponent plays a move which you did not memorize. I would not  recommend learning openings below around Elo 1600 or so.
Comment: You can compare this with learning to read. You can memorize all words of the language (this would be like learning all opening lines). But then if you encounter a newly created word you are on your own and won't know how to read it. Alternatively you can learn the letters and syllables i.e. the general underlying structure (this would be like learning tactics, strategy, principles in chess), and then you will be able to read any word based on that.
Comment: I want learning any opening because my opening sometimes weak but thank you for your awesome answer!!! I appreciate that!
Comment: Ok thank you for your suggestions, glad to read your comment!!!
Answer: As was said already: "If you are a beginner, studying tactics, general opening principles and some strategy first will be more useful than learning any opening."
I would add End Games to that important list, and modify the opening principles to include you being able to play "the first 4-6 moves as black against anything comfortably". This is not learning opening theory - this is your anti-surprise, beginner's opening preparation, and will give you a starting point to figuring out what you like without getting smeared off the board.
For that, check out Chessable
When a beginner complains "I hate playing against the Sicilian" my answer to that is "well, what have you done to prepare against that?", and usually the answer is "I hope they play the Ruy Lopez" or "I play 1.d4", both insufficient.
Seek general opening advice from better players. Maybe invest is a couple beginner books like Winning Chess Openings, which is right in your wheelhouse.
Learn to walk before you run, and play often.
Comment: Thank you for your comment Mark!!! Yeah i will improve my tactics too haha


Eclipse Visible Light Not Dark as Expected

Question: I live in a place where we weren't on the path of totality but were in the 90% range. I was expecting it to be a lot darker than it ended up being. What does it mean to be in the 90% range on this map? I was expecting it to block out 90% of the visible light, but while it was noticeably dimmer it wasn't close to what I thought 10% of light would look like.
Comment: The Sun is surprisingly bright. During the 2012 annular eclipse in Albuquerque, it didn't get noticeably darker until 5 minutes before maximum eclipse. Similar effect today-- 73% eclipse, absolutely no noticeable lack of brightness. See also https://astronomy.stackexchange.com/questions/22230/how-much-of-the-sun-needs-to-be-blocked-in-order-to-see-a-noticeable-drop-in-bri
Answer: As seen in this comment, normal daylight is around 100,000 lux, but 10,000 lux is still considered daylight. So, unless you're getting close to 99%, it will still be fairly light outside.
Comment: There are votes for deletion of this answer because of "length and content". Sometimes short answers are OK if they are clear and this one seems perfectly clear to me. I thought about editing it to add more, but really, this is all that needs to be said. The OP has followed a recommendation by another user to post an answer to their own question, citing the user's comment. OK that comment's text could also be incorporated here. but geez, this answer is fine, *and represents good practice by a new user!*
Comment: Would it be better if I quoted that comment in my answer?
Answer: The real reason is that the human eye is not a linear sensor. A 10x decrease in illumination does not produce a 10x reduction in your perception of light, but more like a 2x reduction at most.
So yes, during the 90% phase of a partial eclipse, the level of illumination is massively reduced. You could check it with a device that could measure ambient light, and it would show you the huge decrease. But your eyes tell a different story because they're not built to operate on a linear scale.
Answer: To expand on Florin Andrei's answer, it's not just that the human eye is not a linear sensor, although that is definitely an important part of the reason. The eye itself adjusts to the ambient light level by changing pupil size, which will mask overall changes in brightness. In addition, the eye, like most senses, is primarily a relative sensor. Colors are judged relative to neighboring colors, and brightness is judged relative to neighboring brightness. "Neighboring" applies to time as well as space: a sudden change in brightness from 100,000 lux to 10,000 lux would be quite noticeable, but when it happens over an hour it is imperceptible. The final change to totality is quicker, and also substantial enough that you would be able to detect it even if it were slow. When it's dark enough, the color mix is different, shadows disappear, and it's actually harder to see in an absolute way.
Comment: Indeed, but does it change much if the ambient light drops by 90%?
Comment: No, it really doesn't, or at least not much. There is a threshold where the eye's cones start to lose effectiveness and the rods begin to do some of the work, and 10% of full daylight is above that threshold. During totality, however, it really looked like a fraction of color vision was missing.


Where is extension data stored?

Question: I am looking to upgrade an extension - for now I have been updating extensions by disabling - then uninstalling the old extension - and then installing and enabling the new extension.  While that has worked for the most part, when I was going to upgrade Mosaico, I was worried if by using my typical method - I would lose all the templates I created.  With that being said - is there a better way to upgrade the extension - and if I do what I typically do, will I lose any data?
Answer: Its a bad idea of upgrading as uninstall and install new version of extension. You can upgrade the extension either one of the following two ways:

If the extension is listed under CiviCRM extension page with auto-download as true then under CiviCRM extension page of your site you should be able to see an option for updating the extension(if option not available than make sure you have Resource URL set for extension correctly, CURL, WGET, ZIP extension installed on server).
You can also upgrade the extension manually by replacing the extension folder/files and then visit CiviCRM extension page in your site and click on refresh button. If the new extension requires db changes than you will be prompted with an option on top right of the browser to run db upgrade. Run the upgrade and its ready for use.

CiviCRM stores extension settings in civicrm_setting and civicrm_managed table. But some extension have their own install code to store data in various table, uninstalling the extension will lead to loss of such data as incase of mosaico extension. It is recommended to follow upgrade pattern for upgrading any extension.
Note: Always take backup of db and files before performing upgrade.
HTH
Pradeep
Comment: Thank you @Pradeep for explaining in such detail.  I did visit the documentation - but your answer was much more detailed. Your #1 is my standard approach when it comes to upgrading extensions - but the extensions I mentioned are not built into the plugins directory.

Your Answer #2 should be added to the documentation.
Answer: based on this https://docs.civicrm.org/sysadmin/en/latest/customize/extensions/#upgrading-extensions you are correct that an uninstall will remove any data related to that extension.
That url also has instructions for how to upgrade extensions via the admin GUI. I usually prefer command line solutions but for Civi extensions I always use the GUI.
Extensions can store data in a bunch of different places, but looking at an old copy of the extension I have accessible, in the sql directory in the mosaico extension, the install file creates two tables civicrm_mosaico_msg_template and civicrm_mosaico_template and the uninstall file deletes those tables.
Answer: Agreed with first answer. Also, extension data normally stores in civicrm_extension. You can find information 'is_active' 0 or 1 whether it is inactive or active.

Where is extension data stored?


Other names for Drákaines?

Question: The greek Drákaines (Δράκαινες) is a race or group of serpent-like creatures with human features, generally female. Basically what the Medusa from the original 80's Clash of the Titans, minus the snakes for hair. The singular name is drakaina (Δρακαινα), and the latin name is dracaena. Does anyone know the name of any other mythological creatures, from any other regions, such as ancient Egypt, Persia, China, or Japan, with the same description, a creature which is upper half human, lower half serpent?
Comment: https://en.wikipedia.org/wiki/List_of_reptilian_humanoids#Folklore
Comment: Thank you Harel13, good place to start
Answer: The first strong parallel to come to mind is the Naga: https://en.wikipedia.org/wiki/N%C4%81ga

They are principally depicted in three forms: wholly human with snakes on the heads and necks, common serpents, or as half-human half-snake beings.[3] A female naga is a "Nagi", "Nagin", or "Nagini". Nagaraja is seen as the king of nāgas and nāginis.[4] They are common and hold cultural significance in the mythological traditions of many South Asian and Southeast Asian cultures. They are the children of Rishi Kashyapa and Kadru.

Some of the pictures show remarkable similarities, but what fascinates me is the parallel between the Echidna, who birthed many snake-monsters, and Kadru, who did the same. Despite the similarity of their names, they seem to be unrelated, with Echidna deriving from the PIE word *angwhi- meaning snake, which wouldn't have given us Kadru in Sanskrit. (Not sure if it's related, but this kadru means brown. Any Sanskrit experts want to weigh in on whether it's a related word to the goddess?)
Answer: δράκαινες is simply the Nominative plural form of δράκαινα (drákaina), which is composed of δράκων (drákōn, "dragon") + -αινᾰ (-aina). From Byzantine Greek δράκαινα (drákaina), feminine form of δράκων (drákōn), i.e. a female dragon.
In Greek mythology, a drakaina is a female serpent or dragon, sometimes with humanlike features. It is not recorded to be a different race from drákōn.

Python, slain by Apollo, and the earliest representations of Delphyne are shown as simply gigantic serpents, similar to other Greek dragons.
Comment: Part of the definition on wikipedia: However, although the word "drakaina" is literally the feminine form of drakon (Ancient Greek for dragon or serpent), most drakainas had some features of a human woman. Lamia, Campe, Echidna, and many representations of Ceto, Scylla and Delphyne had the head and torso of a woman.  https://www.theoi.com/greek-mythology/dragons.html separates dragons into four distinct categories, grouping drakon as different than drakaina.

Other names for Drákaines?


Weather patterns in an ice age

Question: Specifically, I'm referring to an ice age that covers most of the Northern and parts of the Southern Hemisphere. Long after it began, how would weather in regions along the Equator and Southern Hemisphere be affected? Would the weather be chaotic, still, a mixture of both? What are the ramifications of the climate there?
Answer: Well weather is based off of a few things, water evaporation, and energy. wind requires energy. It is the displacement of an entire atmosphere, believe it or not it takes energy to do this. for whatever reason your planet has minimal energy at the moment, hence its in an ice age. granted there are other sources of energy, the spinning of your planet has a great influence on the wind, so there will still be wind but due to the lack of thermal energy it will not likely become chaotic but will feel subdued, or breezy.
Back to water evaporation. If you want rain, water must evaporate, that's the first step in the water cycle. To state the obvious, If the first step doesn't occur then neither will the rest of them. inevitably you will have minimal precipitation, your oceans are frozen rather than evaporating. condensing and precipitating. however if a small portion of your equator has water that could evaporate you could hope for some small snow or hail storms as the clouds drift into the colder regions and immediately freezes again.
If your looking for violent weather, freeze the planet over and then melt all the ice in a relatively quickly time frame, that should make things interesting.

Weather patterns in an ice age


How is the service drop or service lateral of a residential electric service protected from overcurrent?

Question: In typical North American residences, a pole transformer supplies two leg 120 V electrical service to a home. My service is rated at 200 A. If I were to draw excess current from the triplex service cable running from the pole to the meter socket, what device protects the cable from overcurrent?
Comment: Are you talking about a fault upstream of the main breaker? (say if the meter socket shorted out) or if you pulled excess load? Also, are we talking about a single main breaker configuration, or a "rule of six" service setup?
Answer: There isn't one
Just your main breaker. That's it.
The presumption is that the area prior to the main breaker is exceedingly simple, with nothing tapped there, so a problem there would be unlikely.
That's also why this is a bad idea.
Collecting data about electrical accidents is what the NFPA does for a living, so clearly, "unlikely" is proven out by statistical analysis.  If incidents were occurring at a rate of concern, they would be acting to deal with it, and their NEC codebook or UL standards would soon be updated to reflect it.
It wouldn't take a whole lot to add a fusible link to the input bussing of a meter, so that's an easy action UL can simply mandate.  If it were necessary.  The fact that they haven't says a thing or two.
Comment: Right.  The "multiple main breakers that add up to greater than provisioned service" went out with the Rule of Six.   But subpanels can be as big as you please.
Comment: All makes sense. But that means that with, for example, 100A service, you could have a (or more than one!) subpanel with a 200A main breaker because it is "just a convenience shutoff switch" but the main panel main breaker must be no larger than provisioned service.
Comment: @JimmyFix-it  Are you saying the answer should be phrased "there isn't  one"? Or is there a protective device to which I am unaware? If the former, I'll cheerfully edit.  If the latter, please write an answer!
Comment: @Harper can you cite or explain the "multiple main breakers that add up to greater than provisioned service" comment? Is this somehow allowed?
Answer: Twenty-five years ago I was panicked by a forecast of an ice storm and decided to cut off a tree branch hanging over my service drop. I was standing on a fiberglass ladder up against the power pole and working a manual pole saw.
I barely nicked the insulation of my service drop--loud bang, big spark, one or two teeth burned off the saw blade, but no interruption in service. The fuse on the transformer did not blow.
The branch was incompletely cut and now hanging on the wire.  With a heavy heart I called the power company. One guy appeared later that afternoon in a bucket lift truck. He detached my service at the pole, cut away the branch, examined the service drop after separating the wires, and pronounced it still usable (applied tape IIRC), then reconnected it at the pole. No charge.
I have always wondered if the conductor was damaged.
Comment: I think you may have answered the OP's question here: *"If I were to draw excess current from the triplex service cable running from the pole to the meter socket, what device protects the cable from overcurrent?"*, **answer: "fuse on the transformer"**.
Comment: I may have introduced a red herring. We have aerial distribution lines and aerial service drops (on our side of the alley). The houses across the alley have underground distribution lines from the poles on our side of the alley going under the alley to underground transformers in the front yards. The only times I have seen the fuse on our pole blow is when the 40-year-old underground line began failing by shorting. I don't know if the fuse on my pole is related to my service. I think that fuse is in high voltage line (8000 V ?).
Answer: I have had the luck , a few times, of finding a short which knocked out 1 of the phases to a service.
I have learned that there are fuses on the backside of the meter to protect their equipment. However,  I am unfamiliar if the new digital meters have this protection in the same way or if it is internal.
Their rating on residential units are 10,000 amp short circuit protection which translates into around 1 million watts of flash and heat in that moment of the short.
Commercial typically has 50,000 amp short circuit protection.
The grid has other points that will open as needed to protect the infrastructure.


Separating game data/logic from rendering

Question: I'm writing a game using C++ and OpenGL 2.1.
I was thinking how could I separate the data/logic from rendering.
At the moment I use a base class 'Renderable' that gives a pure virtual method to implement drawing. But every object has so specialized code, only the object knows how to properly set shader uniforms and organize vertex array buffer data. I end up with a lot of gl* function calls all over my code.
Is there any generic way to draw the objects?
Comment: Use composition to actually attach a renderable to your object and have your object interact with that `m_renderable` member. That way, you can separate your logic better. Do not enforce the renderable "interface" on general objects that also have physics, ai and whatnot.. After that, you can manage renderables separately. You need a layer of abstractization over OpenGL function calls in order to decouple things even more. So, don't expect a good engine to have any GL API calls inside its various renderable implementations. That's it, in a micro-nutshell.
Comment: @teodron: Why didn't you put that as an answer?
Comment: @Tapio: because it's not that much of an answer; it's more of a suggestion instead.
Answer: An idea is to use the Visitor design pattern. You need a Renderer implementation that knows how to render props. Every object can call the renderer instance to handle the render job.
In a few lines of pseudocode:
class Renderer {
public:
    void render( const ObjectA & obj );
    void render( const ObjectB & obj );
};

class ObjectA{
public:
    void draw( Renderer & r ){ r.render( *this ) };
}

class ObjectB{
public:
    void draw( Renderer & r ){ r.render( *this ) };
}

The gl* stuff is implemented by the renderer's methods, and the objects only store the data needed to be rendered, position, texture type, size ...etc.
Also, you can setup different renderers (debugRenderer, hqRenderer, ...etc) and use these dynamically, without changing the objects.
This also can be easy combined with Entity/Component systems.
Comment: This is a rather good answer! You could have emphasized the `Entity/Component` alternative a bit more since it can help separate geometry providers from other engine parts (AI, Physics, Networking or general gameplay). +1!
Comment: @teodron, i won't explain the E/C alternative because it would complitate the things. But, I think that you should change `ObjectA` and `ObjectB` per `DrawableComponentA` and `DrawableComponentB`, and inside render methods, use other components if you need it, like: `position = component->getComponent("Position");`
And in the main loop, you have a list of drawable components to call draw with.
Comment: @ViteFalcon, Sorry if I don't make me clear, but for a detailed explain, I should need more space and code. Basically, my solution moves the `gl_*` functions into the renderer (separating logic from rendering), but your solution moves the `gl_*` calls into the objects.
Comment: Why not just have a interface (like `Renderable`) that has a `draw(Renderer&)` function and all objects that can be rendered implement them? In which case `Renderer` just needs one function that accepts any object that implements the common interface and call `renderable.draw(*this);`?
Comment: This way the gl* functions are indeed moved out of object code, but I still hold the handle variables used in rendering, like buffer/texture id's, uniform/attribute locations.
Comment: What about complex styles etc when you are using multiple Renderers ?
Comment: @Parhs one solution is have a MultiRenderer with the same interface that has multiple renders inside.
Answer: Build a rendering-command system. A high-level object, which has access to both the OpenGLRenderer and the scenegraph/gameobjects, will iterate the scene graph or gameobjects and build a batch of RenderCmds, which will then be submitted to the OpenGLRenderer which will draw each in turn, and thereby containing all OpenGL related code therein.
There are more advantages to this than just abstraction; eventually as your rendering complexity grows you can sort and group each render command by texture or shader for example in Render() to eliminate many bottlenecks in the draw calls which can make a huge difference in performance.
class OpenGLRenderer
{
public:
    typedef GLuint GeometryBuffer;
    typedef GLuint TextureID;
    typedef std::vector<RenderCmd> RenderBatch;

    void Render(const RenderBatch& renderBatch);   // set shaders, set active textures, draw geometry, ...

    MeshID CreateGeometryBuffer(...);
    TextureID CreateTexture(...);

    // ....
}

struct RenderCmd
{
    GeometryBuffer mGeometryBuffer;
    TextureID mTexture;
    Mat4& mWorldMatrix;
    bool mLightingEnabled;
    // .....
}

std::vector<GameObject> gYourGameObjects;
RenderBatch BuildRenderBatch()
{
    RenderBatch ret;

    for (GameObject& object : gYourGameObjects)
    {
        // ....
    }

    return ret;
}

Answer: I know you've already accepted Zhen's answer but I'd like to put another out there just in case it helps anyone else.
To reiterate the problem, the OP wants the ability to keep the rendering code separate from the logic and data.
My solution is to use a different class all together to render the component, which is separate from the Renderer and the logic class. There first needs to be a Renderable interface that has a function bool render(Renderer& renderer); and the Renderer class uses the visitor pattern to retrieve all Renderable instances, given the list of GameObjects and renders those objects that have a Renderable instance. This way, Renderer doesn't need to know of each every object-type out there and it's still the responsibility of each object-type to inform it's Renderable via the getRenderable() function. Or alternatively, you could create a RenderableVisitor class that visits all GameObjects and based on individual GameObject condition they can choose to add/not-to-add their renderable to the visitor. Either way, the main gist is that the gl_* calls are all outside of the object itself and reside in a class that knows intimate details of the object itself, instead of that being part of Renderer.
DISCLAIMER: I hand-wrote these classes in the editor so there's a good chance that I've missed something in code, but hopefully, you'll get the idea.
To show a (partial) example:
Renderable interface
class Renderable {
public:
    Renderable(){}
    virtual ~Renderable(){}
    virtual void render(Renderer& renderer) const = 0;
};

GameObject class:
class GameObject {
public:
    GameObject()
        : mVisible(true)
        , mMarkedForDelete(false) {}

    virtual ~GameObject(){}

    virtual Renderable* getRenderable() {
        // By default, all GameObjects are missing their Renderable
        return NULL;
    }

    void setVisible(bool visible) {
        mVisible = visible;
    }

    bool isVisible() const {
        return getRenderable() != null && !isMarkedForDeletion() && mVisible;
    }

    void markForDeletion() {
        mMarkedForDelete = true;
    }

    bool isMarkedForDeletion() const {
        return mMarkedForDelete;
    }

    // More GameObject functions

private:
    bool mVisible;
    bool mMarkedForDelete;
};

(Partial) Renderer class.
class Renderer {
public:
    void renderObjects(std::vector<GameObject>& gameObjects) {
        // If you want to do something fancy with the renderable GameObjects,
        // create a visitor class to return the list of GameObjects that
        // are visible instead of rendering them straight-away
        std::list<GameObject>::iterator itr = gameObjects.begin(), end = gameObjects.end();
        while (itr != end) {
            GameObject* gameObject = *itr++;
            if (gameObject == null || !gameObject->isVisible()) {
                continue;
            }
            gameObject->getRenderable()->render(*this);
        }
    }

};

RenderableObject class:
template <typename T>
class RenderableObject : public Renderable {
public:
    RenderableObject(T& object)
        :mObject(object) {}
    virtual ~RenderableObject(){}

    virtual void render(Renderer& renderer) {
        return render(renderer, mObject);
    }

protected:
    virtual void render(Renderer& renderer, T& object) = 0;
};

ObjectA class:
// Forward delcare ObjectARenderable and make sure the constructor
// definition in the CPP file where ObjectARenderable gets included
class ObjectARenderable;

class ObjectA : public GameObject {
public:
    ObjectA()
        : mRenderable(new ObjectARenderable(*this)) {}

    // All data/logic

    Renderable* getRenderable() {
        return mRenderable.get();
    }

protected:
    // boost or std shared_ptr to make sure that the renderable instance is
    // cleaned up with the destruction of this object.
    shared_ptr<Renderable> mRenderable;
};

ObjectARenderable class:
#include "ObjectA.h"

class ObjectARenderable : public RenderableObject<ObjectA> {
public:
    ObjectARenderable(ObjectA& instance) {
        : RenderableObject<ObjectA>(instance) {}

protected:
    virtual void render(Renderer& renderer, T& object) {
        // gl_* class to render ObjectA
    }
};

Answer: It completely depends on whether you can make assumptions about what's common for all renderable entities or not. In my engine, all objects are rendered the same way, so the just need to provide vbos, textures and transformations. Then the renderer fetches all of them, thus no OpenGL functions calls are needed in the different objects at all.
Comment: @TobiasKienzler If you're going to correct his spelling, try to spell whether correctly :-)
Comment: weather = rain, sun, hot, cold :P -> wether
Comment: corrected that typo
Comment: @TASagent What, and brake [Muphry's Law](https://en.wikipedia.org/wiki/Muphry%27s_law)? [m-/](https://www.youtube.com/watch?v=BNsrK6P9QvI)
Answer: Definitely put rendering code and game logic in different classes. Composition (as teodron suggested) is probably the best way to do this; each Entity in the game world will have its own Renderable -- or perhaps a set of them.
You might still have multiple subclasses of Renderable, for example to handle skeletal animation, particle emitters, and complex shaders, in addition to your basic textured-and-lit shader. The Renderable class and its subclasses should only contain information needed for rendering: geometry, textures, and shaders.
Further, you should separate an instance of a given mesh from the mesh itself. Say you've got a hundred trees on screen, each using the same mesh. You only want to store the geometry once, but you'll need separate location & rotation matrices for each tree. More complex objects, such as animated humanoids, will also have additional state information (such as a skeleton, the set of currently applied animations, etc).
To render, the naive approach is to iterate over every game entity and tell it to render itself. Alternately, each entity (when it spawns) can insert its renderable object(s) into a scene object. Then, your render function tells the scene to render. This allows the scene to do complex render-related things without embedding that code into either game entities or a specific renderable subclass.
Answer: This advice isn't really specific to rendering but should help come up with a system that keeps things largely separate. Firstly try and keep the 'GameObject' data separate from the position information.
It's worth noting that simple XYZ positional information might not be so simple. If you are using a physics engine then you position data could be stored within in the 3rd party engine. You would either need to synchronize between them (which would involve a lot of pointless memory copying) or query the information directly from the engine. But not all objects need physics, some will be fixed in place so a simple set of floats works fine there. Some might even be attached to other objects, so their position is actually an offset of another position. In an advanced setup you might have position stored only on the GPU the only time it would be needed computer side is for scripting, storage and network replication. So you will likely have several possible choices for your positional data. Here it makes sense to use inheritance.
Rather than an object owning it's position, instead that object should itself be owned by a indexing data structure. For example a 'Level' might have an Octree, or maybe a physics engine 'scene'. When you want to render (or setup a rendering scene), you query your special structure for objects that are visible to the camera.
This also helps give good memory management. This way an object that isn't actually in an area doesn't even have a position which makes sense rather than returning 0.0 coords or the coords that it had when it was last in an area.
If you no longer keep the coordinates in the object, instead of object.getX() you would end up having level.getX(object). The problem with that is looking up the object in the level will likely be a slow operation since it will have to look through all it's objects and match the one your querying.
To avoid that I would probably create a special 'link' class. One that binds between a level and an object. I call it a "Location". This would contain the xyz coordinates as well as the handle to the level and a handle to the object. This link class would be stored in the spacial structure/level and the object would have a weak reference to it (if the level/location is destroyed the objects refrence needs to be updated to null. It might also be worth having the Location class actually 'own' the object, that way if a level is deleted, so is the special index structure, the locations it contains and its Objects.
typedef std::tuple<Level, Object, PositionXYZ> Location;

Now the position information is stored only in the one place. Not duplicated between the Object, the Spacial indexing structure, renderer and so on.
Spacial data structures like Octrees often don't even need to have the coordinates of the objects they store. There position is stored in the relative location of the nodes in the structure itself (it could be thought of as a kind of like lossy compression, sacrificing accuracy for fast lookup times). With the location object in the Octree then the actual coordinates are found inside it once the query is done.
Or if you are using a physics engine to manage your object locations or a mixture between the two, the Location class should handle that transparently while keeping all your code in the one place.
Another advantage is now the position and refrence to the level is stored in the same location. You could implement object.TeleportTo(other_object) and have it work across levels. Similarly AI path-finding could follow something into a different area.
With regards to rendering. Your render can have a similar binding to the Location. Except it would have the rendering specific stuff in there. You probably don't need the 'Object' or 'Level' to be stored in this structure. The Object could be useful if you are trying to do something like colour picking, or rendering a hitbar floating above it and so on but otherwise the renderer only cares about the mesh and such. RenderableStuff would be a Mesh, could also have bounding boxes and so on.
typedef std::pair<RenderableStuff, PositionXYZ> RenderThing;

renderer.render(level, camera);
renderer: object = level.getVisibleObjects(camera);
level: physics.getObjectsInArea(physics.getCameraFrustrum(camera));
for(object in objects) {
    //This could be depth sorted, meshes could be broken up and sorted by material for batch rendering or whatever
    rendering_que.addObjectToRender(object);
}

You might not need to do this every frame, you could ensure you take a bigger region than the camera currently shows. Cache it, track object movements to see if there bounding box comes within range, track camera movement and so on. But don't start messing with that kind of stuff until you have benchmarked it.
You physics engine itself might have a similar abstraction, since it also doesn't need the Object data, just the collision mesh and physics properties.
All your core object data would contain would be the name of the mesh the object uses. The game engine can then go ahead and load this in whatever format it likes without burdening your object class with a bunch of render specific things (which might be specific to your rendering API, ie DirectX vs OpenGL).
It also keeps different components separate. This makes it easy to do things like replace your physics engine since that stuff is mostly self contained in the one location. It also makes unittesting much easier. You can test things like physics queries without having to have any actual fake objects setup since all you need is the Location class. You can also optimize stuff easier. It makes it more obvious what queries you need to perform on what classes and single locations to optimize them (for example the above level.getVisibleObject would be where you could cache things if the camera doesn't move to much).


Is HDMI 1.4 backwards compatible with 1.3?

Question: I'm installing a Hitachi MS-1 switcher, and it's HDMI output works fine with an HDMI v1.3 cable, but not with a cable v1.4.  I've tested the v1.4 cable on a different output device (DVD player) and it works fine.  I've also tried two different display devices (monitor and projector).
My question is:  Is HDMI v1.4 supposed to be fully backwards compatible, or are there some caveats?
Also, has anyone else encountered any equipment that worked with HDMI v1.3 but not v1.4?
Answer: A 1.4 cable should work fine with a 1.3 signal, however an HDMI 1.4 signal will not work with an HDMI 1.3 cable or an HDMI 1.3 output unless the source is capable of using a prior standard.


Can genes that activate transcription factors also called be called transcription factors?

Question: If the sole known function of a gene is to activate a transcription factor, would that gene also be considered a transcription factor, or is there a word for such genes that are further upstream on the transcription activation cascade?
Answer: Yes.  For an example, see this list of targets of NF-kB (a transcription factor).  Many other transcription factors are included there.  As for a TF that does nothing except activate another, single TF?  I don't know that those exist - TFs tend to modulate multiple genes.
Answer: From the wikipedia article on TFs:

In molecular biology and genetics, a transcription factor (sometimes called a sequence-specific DNA-binding factor) is a protein that binds to specific DNA sequences, thereby controlling the flow (or transcription) of genetic information from DNA to messenger RNA.

The nature of the gene affected is irrelevant, a protein is a transcription factor if it binds to a gene's promoter and regulates that gene's transcription. Whether the regulated gene also codes for a TF does not enter into it.
Answer: You need to re-write your question, it is ambiguous and your use of terms is incorrect... Assumption: by "activation" you mean "activation of transcription resulting in the expression of the transcription factor"
1) Transcription factors are proteins
2) Genes are comprised of DNA elements
A transcription factor can be involved in initiating the EXPRESSION of a transcription factor, whereafter that second distinct transcription factor initiates the EXPRESSION of another gene that encodes another transcription factor.
Answer: No, genes do not "activate" transcription factors*
*Unless you are proposing the philosophical question of whether the DNA binding domain itself, which endows the transcription factor with a state of being active duty (i.e. fulfilling its purpose as a transcription factor), and thus that purpose is fulfilled only when the DNA binds the the TF, then a DNA binding domain can indeed "activate" the TF... but I'm pretty sure this isn't what you're asking.
Comment: I simply meant to ask whether there was another term for a transcription factor upstream on the activation pathway of another transcription factor. Does that make more sense?


Power button doesn't seem to work

Question: I have a 1st or 2nd generation iPad and it's been charging in the wall for more than 24 hours but all I get is the Apple logo. My power button seems stuck as well, It doesn't move when you press it. I have tried to plug it into my computer to do the reset but it doesn't appear on my iTunes so I wasn't able to go that route. Is there anything else I can try?
Answer: Not sure if this will help but sometime device may get into a weird state. Have you try a hard reset? i.e., holding down power and home button for 10 seconds -- the screen should go blank and then show the Apple logo, that's where you can release the button.
Comment: I would second that if you haven't already tried a hard reset, also worth doing it while charging.
Answer: It sounds like the device is quite old, possibly that the battery in the device has failed.
You should first check you are using a 10W iPad charger, but if that still doesn't work after an hour or two of charging it is time to look for a replacement battery.
You should first check your service options with Apple:
https://checkcoverage.apple.com/
However given the age of the device even if they would service it (which is unlikely) then the cost would be prohibitively expensive.
In this case you could look at a DIY battery replacement there are instructions on sites like iFixIt, or through a local phone repair shop.

Power button doesn’t seem to work


How do we repair vapour barrier after a flood?

Question: We recently had a flood in our basement which was completely finished.  We have two bedrooms down there which is why I want to make sure it is fixed properly.  When the restoration company came in to dry everything, they cut 2 feet up the drywall, taking along with it the insulation and plastic sheet (vapour barrier).  The plastic is cut the same height as the drywall, leaving no room for us to Tuck Tape it or fold it together and staple it.  I am just wondering if anybody knows the best way to replace the plastic so that we can reseal the vapour barrier.
Answer: Use a Rotozip (or, like I did, a drywall cut bit in a regular rotary tool) with the depth gauge set for 1/2", so that it cuts the drywall but not vapour barrier. Cut about 2" of drywall off so you have access to enough of the vapour barrier to be able to put seam tape on it.
You may have to (carefully) cut or rip off the backing paper, but that's not a big deal.

There is a major downside to this method, if they cut exactly 2' up: you'd have to use either full sheets (wasting nearly half) or cut the sheets into 4'x2'2" pieces, still wasting 4'x18" from each sheet. Depending on the dimensions of the walls in the room, the wastage may be a deal-breaker for this method.
Answer: 1) prepare the cut edge of the drywall for the joint
2) cut 1/2" wide shim strips off of wood shingles, one shim per stud
3) loosen the bottom of the drywall at each stud by removing the lowest one or two screws/nails
4) slip the shims behind the drywall, approximately horizontal, 2-4" above the bottom edge, at each stud
5) stretch very tightly a piece of 2" wide tape the length of the wall, adhesive against the studs, just below the bottom edge of drywall. this will be the 'backer' tape.
6) slip manageable lengths of 2" wide tape - adhesive facing into the room - up behind the existing vapor barrier such that 1" or so is left exposed in front of the backer tape.  this will be the seam tape.
7) remove all the shims
8) install the new course of vapor barrier against the seam tape, using the backer tape for support.
9) reattach the existing drywall to the studs and install the new course of drywall


What does it mean to say "linux kernel is preemptive"?

Question: I read that Linux kernel is preemptive, which is different from most Unix kernels. So, what does it really mean for a kernal to be preemptive?
Some analogies or examples would be better than pure theoretical explanation.
ADD 1 -- 11:00 AM 12/7/2018
Preemptive is just one paradigm of multi-tasking. There are others like Cooperative Multi-tasking. A better understanding can be achieved by comparing them.
Answer: Prior to Linux kernel version 2.5.4, Linux Kernel was not preemptive which means a process running in kernel mode cannot be moved out of processor until it itself leaves the processor or it starts waiting for some input output operation to get complete.
Generally a process in user mode can enter into kernel mode using system calls. Previously when the kernel was non-preemptive, a lower priority process could priority invert a higher priority process by denying it access to the processor by repeatedly calling system calls and remaining in the kernel mode. Even if the lower priority process' timeslice expired, it would continue running until it completed its work in the kernel or voluntarily relinquished control. If the higher priority process waiting to run is a text editor in which the user is typing or an MP3 player ready to refill its audio buffer, the result is poor interactive performance. This way non-preemptive kernel was a major drawback at that time.
Answer: Imagine the simple view of preemptive multi-tasking.  We have two user tasks, both of which are running all the time without using any I/O or performing kernel calls.  Those two tasks don't have to do anything special to be able to run on a multi-tasking operating system.  The kernel, typically based on a timer interrupt, simply decides that it's time for one task to pause to let another one run.  The task in question is completely unaware that anything happened.
However, most tasks make occasional requests of the kernel via syscalls.  When this happens, the same user context exists, but the CPU is running kernel code on behalf of that task.
Older Linux kernels would never allow preemption of a task while it was busy running kernel code.  (Note that I/O operations always voluntarily re-schedule. I'm talking about a case where the kernel code has some CPU-intensive operation like sorting a list.)
If the system allows that task to be preempted while it is running kernel code, then we have what is called a "preemptive kernel."  Such a system is immune to unpredictable delays that can be encountered during syscalls, so it might be better suited for embedded or real-time tasks.
For example, if on a particular CPU there are two tasks available, and one takes a syscall that takes 5ms to complete, and the other is an MP3 player application that needs to feed the audio pipe every 2ms, you might hear stuttering audio.
The argument against preemption is that all kernel code that might be called in task context must be able to survive preemption-- there's a lot of poor device driver code, for example, that might be better off if it's always able to complete an operation before allowing some other task to run on that processor. (With multi-processor systems the rule rather than the exception these days, all kernel code must be re-entrant, so that argument isn't as relevant today.)  Additionally, if the same goal could be met by improving the syscalls with bad latency, perhaps preemption is unnecessary.
A compromise is CONFIG_PREEMPT_VOLUNTARY, which allows a task-switch at certain points inside the kernel, but not everywhere.  If there are only a small number of places where kernel code might get bogged down, this is a cheap way of reducing latency while keeping the complexity manageable.
Comment: For some OS, especially RTOS, the choice of *timing for scheduling* is very delicate. And it kind of characterizes a RTOS.
Answer: Traditional unix kernels had a single lock, which was held by a thread while kernel code was running. Therefore no other kernel code could interrupt that thread.
This made designing the kernel easier, since you knew that while one thread using kernel resources, no other thread was. Therefore the different threads cannot mess up each others work.
In single processor systems this doesn't cause too many problems.
However in multiprocessor systems, you could have a situation where several threads on different processors or cores all wanted to run kernel code at the same time. This means that depending on the type of workload, you could have lots of processors, but all of them spend most of their time waiting for each other.
In Linux 2.6, the kernel resources were divided up into much smaller units, protected by individual locks, and the kernel code was reviewed to make sure that locks were only held while the corresponding resources were in use. So now different processors only have to wait for each other if they want access to the same resource (for example hardware resource).
Comment: The granularity of locking has nothing to do with whether the kernel is preemptive.  While Linux is constantly moving toward better scalability and finer-grained locking, the situation you're talking about hasn't existed for ten years.
Answer: The preemption allows the kernel to give the IMPRESSION of parallelism: you've got only one processor (let's say a decade ago), but you feel like all your processes are running simulaneously. That's because the kernel preempts (ie, take the execution out of) the execution from one process to give it to the next one (maybe according to their priority).
EDIT Not preemptive kernels wait for processes to give back the hand (ie, during syscalls), so if your process computes a lot of data and doesn't call any kind of yield function, the other processes won't be able to execute to execute their calls. Such systems are said to be cooperative because they ask for the cooperation of the processes to ensure the equity of the execution time
EDIT 2 The main goal of preemption is to improve the reactivity of the system among multiple tasks, so that's good for end-users, whereas on the other-hand, servers want to achieve the highest througput, so they don't need it: (from the Linux kernel configuration)

Preemptible kernel (low-latency desktop)
Voluntary kernel preemption (desktop)
No forced preemption (server)
Answer: The linux kernel is monolithic and give a little computing timespan to all the running process sequentially. It means that the processes (eg. the programs) do not run concurrently, but they are given a give timespan regularly to execute their logic. The main problem is that some logic can take longer to terminate and prevent the kernel to allow time for the next process. This results in system "lags".
A preemtive kernel has the ability to switch context. It means that it can stop a "hanging" process even if it is not finished, and give the computing time to the next process as expected. The "hanging" process will continue to execute when its time has come without any problem.
Practically, it means that the kernel has the ability to achieve tasks in realtime, which is particularly interesting for audio recording and editing.
The ubuntu studio districution packages a preemptive kernel as well as a buch of quality free software devoted to audio and video edition.
Comment: @Kevin: it's the reverse. A preemptive kernel means that the latencies due to other processes running on kernel mode are lower. What you really care about most of the time is latencies.
Comment: @Kevin: With a preemptive kernel, a higher priority task (eg. your audio/video player) can preempt a lower priority task, even if the latter is running in kernel mode.  This means that the audio/video player gets to run when it needs to.
Comment: Isn't a preemptive kernel somehow bad for realtime? without preemtion, your Audio/Video task will have all the processor for itself until it give it up, so it would more convenient for such constraints?
Answer: It means that the operating system scheduler is free to suspend the execution of the running processes to give the CPU to another process whenever it wants; the normal way to do this is to give to each process that is waiting for the CPU a "quantum" of CPU time to run. After it has expired the scheduler takes back the control (and the running process cannot avoid this) to give another quantum to another process.
This method is often compared with the cooperative multitasking, in which processes keep the CPU for all the time they need, without being interrupted, and to let other applications run they have to call explicitly some kind of "yield" function; naturally, to avoid giving the feeling of the system being stuck, well-behaved applications will yield the CPU often. Still,if there's a bug in an application (e.g. an infinite loop without yield calls) the whole system will hang, since the CPU is completely kept by the faulty program.
Almost all recent desktop OSes use preemptive multitasking, that, even if it's more expensive in terms of resources, is in general more stable (it's more difficult for a sigle faulty app to hang the whole system, since the OS is always in control). On the other hand, when the resources are tight and the application are expected to be well-behaved, cooperative multitasking is used. Windows 3 was a cooperative multitasking OS; a more recent example can be RockBox, an opensource PMP firmware replacement.
Answer: I think everyone did a good job of explaining this but I'm just gonna add little more info. in context of Linux IRQ, interrupt and kernel scheduler.
Process scheduler is the component of the OS that is responsible for deciding if current running job/process should continue to run and if not which process should run next.
preemptive scheduler is a scheduler which allows to be interrupted and a running process then can change it's state and then let another process to run (since the current one was interrupted).
On the other hand, non-preemptive scheduler can't take away CPU away from a process (aka cooperative)
FYI, the name word "cooperative" can be confusing because the word's meaning does not clearly indicate what scheduler actually does.
For example, Older Windows like 3.1 had cooperative schedulers.
Full credit to wonderful article here
Answer: I think it became preemptive from 2.6. preemptive means when a new process is ready to run, the cpu will be allocated to the new process, it doesn't need the running process be co-operative and give up the cpu.
Answer: Linux kernel is preemptive means that The kernel supports preemption.
For example, there are two processes P1(higher priority) and P2(lower priority)  which are doing read system calls and they are running in kernel mode. Suppose P2 is running and is in the kernel mode and P2 is scheduled to run.
If kernel preemption is available, then preemption can happen at the kernel level i.e P2 can get preempted and but to sleep and the P1 can continue to run.
If kernel preemption is not available, since P2 is in kernel mode, system simply waits till P2 is complete and then