Psalm 23:6 correct translation

Question: In Psalm 23:6, the וְשַׁבְתִּ֥י (dwell, return), is Qal, Perfect aspect, yet all translate in the future "will dwell" or will return." Is it because the context?
Comment: This is a classic example of waw consecutive. Do you have a Hebrew grammar?
Answer: The Idea in Brief
The Masoretic Text does not indicate here the appearance of the consecutive waw with the Hebrew verb יָשַׁב (to dwell) but instead the consecutive waw with the Hebrew verb שׁוּב (to return). This conclusion comes from the marginalia of the Masoretic Text, which is the Massorah Parva.
Discussion
The Masoretic Text of the verse appears as follows:

Psalm 23:6 (BHS)
6 אַ֤ךְ׀ טֹ֤וב וָחֶ֣סֶד יִ֭רְדְּפוּנִי כָּל־יְמֵ֣י חַיָּ֑י וְשַׁבְתִּ֥י בְּבֵית־יְ֝הוָ֗ה לְאֹ֣רֶךְ יָמִֽים׃

With regard to the term in question (וְשַׁבְתִּ֥י) the Biblia Hebraica Stuttgartensia (BHS) provides the margin reference "ב" with a small dot on top (comment of the Massorah Parva) which means that this exact verb form (accents and vowel points) appears in one other place in the Hebrew Bible.
This verse is as follows.

Genesis 28:20-22 (NASB)
20 Then Jacob made a vow, saying, "If God will be with me and will keep me on this journey that I take, and will give me food to eat and garments to wear, 21 and I return to my father's house in safety, then the Lord will be my God. 22 This stone, which I have set up as a pillar, will be God's house, and of all that You give me I will surely give a tenth to You."

The exact same verb form (accents and vowel points) appears here, but the waw is coordinating and the verb is שׁוּב (to return). By referencing this parallel, the Masorete copyist(s) saw this verb in Psalm 23:6 (and not the verb יָשַׁב, to dwell).
In this regard, the Masorete copyist(s) did not use the disjunctive accent mark ('Ôlè weyôrēd) but instead the conjunctive accent mark (Mêrekhā). To this end, they added more information in the margin of the Masoretic Text (Massorah Parva) to avoid confusion of accent marks. (Please click here and here for a quick primer on Biblical Hebrew accents in poetry.) So we find in the margin the following comment in Hebrew: מלרע, which if we check the BHS Index Siglorum Masorae Parvae means, ab inferior parte (indicat accentum in ultima syllaba poni), or --in modern English -- from the lower part (indicates the accent is placed on the last syllable). In other words, the copyist(s) of the Masoretic Text are letting us know that this word is accented conjunctive (not disjunctive) and also corresponds in meaning to the same exact word that appears in Genesis 28:20-22 (verses already noted, above).
In other words, the Masorete copyist(s) were not drawn by the parallel in Psalm 27:4, which most English versions (not to mention the LXX) have inferred the translation to be based on יָשַׁב, but instead by the parallel in Genesis 28:20-22 based on שׁוּב. In the context of Genesis, Jacob is in Beth-el, which in Hebrew means "the House of God." Jacob looked forward to the day when he would return to "the House of God." The verb here (with the coordinating waw) is וְשַׁבְתִּ֥י, which grammatically is the exact same form which appears in Psalm 23:6 (with the consecutive waw). To put it another way, neither Jacob nor David had yet found fulfillment in the promises made to them regarding the "the House of God," and therefore in hope they would "return" to see fulfillment.
Thus, if the Masorete copyist(s) were aware of the Septuagint (LXX) translation of the Hebrew Bible, they would have known that the LXX editors believed the verb at hand was יָשַׁב, to dwell. If the Hebrew (וְשַׁבְתִּ֥י) were based on the literal grammatical structure of יָשַׁב, to dwell, then the form would be the infinitive construct form with the masculine singular personal pronoun suffix -- that is, my dwelling. In this regard, Gesenius (1982) states that such is not the case.

וְשַׁבְתִּ֥י Ψ236 can hardly be intended for an infin. with suffix from יָשַׁב, but rather for a perf. consec. from שׁוּב; but read וְיָשַׁבְתִּי.

There is no "Qere and Ketiv" note in the margin of the Masoretic Text to tell us to read the text "וְיָשַׁבְתִּי."  In other words, Gensensius at least substantiates that the verb form in Psalm 23:6 is not יָשַׁב (to dwell) but instead שׁוּב (to return). As noted, most translations understand the meaning of יָשַׁב (to dwell), but not all.  For example, the editorial footnotes of BHS indicate that the Syriac (Peshutta Hebrew Bible) of this particular passage understands the Hebrew verb as שׁוּב, and not יָשַׁב. Thus the proximate affinity of Psalm 23:6 with Psalm 27:4 appears to have made the logical nexus with יָשַׁב, however, the Masoretes and the Syriac version of the Hebrew Bible point otherwise.
Conclusion
If the marginalia of the Masoretes are accurant, then the correct translation of the passage would be as follows:

Psalm 23:6
6 Surely goodness and lovingkindness will follow me all the days of my life,
  And I will return (and remain) in the house of the Lord forever.

The temple did not exist at the time when David wrote this Psalm. Therefore he was alluding to some time in the future after his death (when his son would build the temple) and he would "return." Thus David implies resurrection in this Psalm in the same way that resurrection appeared for Jacob and the Fathers.

Genesis 28:13-15 (NASB)
13 And behold, the Lord stood above it and said, "I am the Lord, the God of your father Abraham and the God of Isaac; the land on which you lie, I will give it to you and to your descendants. 14 Your descendants will also be like the dust of the earth, and you will spread out to the west and to the east and to the north and to the south; and in you and in your descendants shall all the families of the earth be blessed. 15 Behold, I am with you and will keep you wherever you go, and will bring you back to this land; for I will not leave you until I have done what I have promised you." (emphasis added)

Jacob's ladder, which ascended and descended from heaven was connecting the Zion in heaven with the Zion on earth. "The House of God" had not yet been established at the time of Jacob (Beth-El) or the time of David (temple), but both received promises in order to "return" in fulfillment of both the Abrahamic and Davidic Covenant. This parallel is what the Masoretes were trying to convey in their marginalia of the Masoretic Text, which is the Massorah Parva.
REFERENCE:
Gesenius, Wilhelm; E. Kautzsch; A.E. Cowley. Gesenius' Hebrew Grammar. Oxford: Clarendon Press, 189 (footnote).

Psalm 23:6 correct translation


"Il s'avait aimé" vs. "Il savait aimer"

Question: If you're having a conversation with someone, and you hear: "Il s'avait aimé." ("He had loved himself.") (aimer is used as an example) How would you know that the person didn't say: "Il savait aimer," ("He knew how to love.") instead? They are both logical questions and if there wasn't context, is there any way to differentiate what they said?
Comment: You know, quite simply, because "il s'avait aimé" is not French. I dunno why people don't just say that.
Answer: If you hear that, then you do not spell it "Il s'avait aimé." and you spell it only  "Il savait aimer." (or "Ils savaient aimer.", let's not forget that in the plural there is no difference in the pronunciation). In other words, when you hear that, there is never an ambiguity because  "Il s'avait aimé." is incorrect if you think that the form of "aimer" is the past participle; if you think this is so, then the auxiliary can't be "avoir", it must be "être" and that would be "Il s'était aimé.".
Comment: "Il s'avait lavé." does happen (but is quite hick).
Comment: I apologize, I was too vague with the question. I was using 'laver' as an example, feel free to replace it with any other french -er verb and the same issue arises. The question has been edited to better fit what I was wondering.
Comment: @PeterHenry It makes no difference as both "laver" and "aimer" can be used as a non reflexive verb and as a reflexive one.

"Il s'avait aimé" vs. "Il savait aimer"


How to display data with three degrees of freedom on a chart?

Question: I have a collection of data obtained from calculations and I want to display it on a chart or whiz-wheel or similar, to be used "in the field" as a low-tech solution, since no computer will be available.  I have a single output variable calculated from three inputs.  What I want to avoid is making a giant book of tables or charts, and instead use something like the whiz-wheel that reloaders use for calculating propellant weight.  Are there any nifty graphical devices out there that can display three degrees of freedom on one chart?
Comment: For the details of how to construct charts for this kind of calculation, you might want to search for info on Nomography.
Comment: Also, you might consider the pilot's whiz wheel (E6B). The trick is how to make one with your own data...https://en.wikipedia.org/wiki/E6B
Comment: What about a custom slide rule? The Whiz wheel sounds like a good idea...
Comment: Funny, I was just staring at my slide rule, searching for inspiration.  The one I have still only allows for two degrees of freedom (position of the center slide and position of the cursor), but maybe I could add another slide.
Comment: So far I've made a slide rule out of paper, with two slides and a cursor.  A typical slide rule has one slide.  It seems like I can just add as many slides as I need for each independent variable, but I'm still experimenting.  Eventually I would like to make the slides round, like the E6B.
Answer: Per @Dan's suggestion, I googled "nomography" and found an article titled "The Lost Art of Nomography" by Ron Doerfler, published in the UMAP Journal 30.4 (2009).  The article describes a compound-nomograph, which is pretty much what I need.  Here is a screen shot of such a device, taken from the article:

The image shows a nomograph for three independent variables, but the principle could be extended to any number of variables I believe.
Comment: Identifying the technique by name, citation and illustration is a good start but this would be an even better answer if it described the method for constructing such a graphic.


How to get wolves across an ocean?

Question: I currently have about nine. I tried using a boat to cross the ocean, but when I hit land the wolves were in the first spot they got in the water. I have to travel about 4k blocks.
Answer: A tamed wolf will teleport to you if are out of his reach. However, a tamed wolf will not teleport to you if:

It has been ordered to sit.
You are not touching the ground (flying, using elytra's, using boat's).
It is in a mine cart or boat.
You go trough a portal in which case it will wait for you to return.
It is in a chunk which unloads, where it will wait for you until that chunk is loaded.

The best way is to use a Lead on it and then go slowly with your boat. Your wolf will be forced to follow you.
Answer: My personal favorite way is to use boots enchanted with Frost Walker. Frost walker makes a path of ice under your feet when you walk across water. Tamed wolves will follow you across the ocean on the ice.
Be aware that it does melt rather quickly during the daytime, so it's easier to go at night, especially if you're planning on stopping for very long while you're crossing the ocean.
Comment: Hmm, that's a good way. I love it.
Answer: If the wolves are tamed, you don't have to transport them. They will teleport to you if they go too far away from you. Therefore, you can just go where you need to go, and they will teleport to you once in a while.
Make sure they are not sitting if you use this trick.
Comment: This only works if the chunks your wolves are in are still loaded when you reach your destination. They will not teleport if the distance is 4k blocks.
Comment: no but they will teleport to you every now and then while you make the journey, therefor always staying in loaded chuncks.
Answer: I'm afraid this is going to take some time, regardless of method. If you travel far enough away, the chunks the wolves are in are unloaded so they won't teleport. However, there might be a way around that:

Set your render distance as high as your computer can handle
Carry several large stacks of cheap blocks with you and hop in a boat. I would recommend wood, since you can craft them into wood planks for 4x the number of blocks vs. inventory space.
When you're about to reach a point where the shore chunks are unloaded, jump down into the ocean and make a stack of blocks to the surface. Make a small artificial island that your wolves can teleport to
Continue to travel by boat a fair distance, creating small artificial islands for your wolves to teleport to until you reach your destination.
Answer: Adding to Gigazelle's answer: Before a chunk is unloaded (basically before it fades from view), you can use a lily pad to start a platform at the surface, rather than swimming down and building a column every time. Once you have a 4x4 platform, stand on it and the dog will teleport to you.
Edit: I just discovered dogs can ride in a boat with you...
Answer: Maybe try Using a boat and getting you're wolf in there, and then hold a Bone or something to make him follow you. (I see you already tried this so...) Or you can build a Bridge and get there safely. Or you can just.. You know... Go inside the water and Swim... XD. But that will make the wolf Grey, So the best option is to build a bridge if possible. Sorry if this didn't help. I tried though.. I hope this helped you.

How to get wolves across an ocean?


In .NET, how can I detect whether a user has a specific redistributable installed?

Question: I have created a class which builds a Crystal report and displays it in a report viewer.
However, without the Crystal Redistributable, the code crashes. How can I programatically detect whether the end-user has the Crystal DLL installed?
The code I am required to include is:
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.Shared

Answer: Ideally, you would take care of all of the dependencies of your application at install time and make sure that all the the required components are already installed.  However you can wrap your code that makes calls to the DLLs in question in a try..catch block and catch the DllNotFoundException when it gets thrown.
Answer: I suppose Crystal installs to GAC.
So you need to programmatically browse Global assembly cache and look for Crystal assembly there
GAC can be programmatically managed thru Windows API.
Here you will find a simple wrapper that allows to manage GAC from a managed code
But I would not recommend you to go this way. :)
The good solution is usually too check for all required assemblies during the installation of your software, I suppose Windows Installer has functions to check for assemblies
However, it is not always OK.
Suppose if you would like users to run your program even without Crystal, but do not allow show reports if Crystal is not installed.
In this case you should decouple all Reports functionality from other forms. You should create a separate project with Crystal Reports functionality, let's call it MyReports. Only that project should reference to Crystal assemblies, while other should not. Other projects also should not directly reference to MyReports.
And finally you should use reflection to call a report viewer that is implemented inside MyReports from other projects.
Usually you will write try / catch around the procedure where you will use reflection to load MyReports assembly from file. So, if Crystal or something else not exist, it will throw exception, you will display it to user, but the other parts of the program will work.
Also, you can read about Dependency Injection design pattern, it helps to manage such problems.
Answer: You could check if the following registry key exists
HKEY_CURRENT_USER\Software\Crystal Decisions

This will tell you if crystal reports is installed. if you want to check a particular version check the child key. For instance the crystal reports installed with Visual Studio 2008 is 10.2
Answer: You can find out these details by looking into the registry. I will search and provide an update.
Edit: You could also include Crystal reports as a prerequisite in the deployment package. You can then be sure that the final user has the library.
Answer: Use a merge module with your setup. Sap have a list here:
Merge modules


How do I work out the kinematic solution of a robot arm?

Question: I draw a robotic arm in Solidworks, but I'm not so sure about how to find out the DOF, forward and backward kinematic.

Could anyone help me understand how to work out the kinematic solution of this robot arm?
Comment: I created a video where I show how to get the moving graphics of a mechanical arm
https://youtu.be/crJXUlzJ918
Answer: If you want to solve it mathematically (not within the SolidWorks), the DOF is the number of independent variables needed to define the configuration of the mechanism. Since you've planar motion in three joints (rotations about one axis) in addition to the slide this will make the DOF is 4 in this case.
Because your problem is in one plan (Planar robot), you can solve the forward kinematics, by direct projection of the components in the two directions, horizontal and vertical, using the trigonometric functions sin and cosine as we do in the basic physics, and adding the parameter d (for example) for the horizontal component with proper sign to act for the slider movement. As for the backward (inverse) kinematics which will need more investigation, you can also try to solve it algebraically, based on some geometric basics taking the advantage of the simplicity ; in that case you'll take the pose (position and orientation) of the end effector (the tip point), and solve for the three angles, and the slide (d), with some math manipulation you can figure out this. This I'm describing the shortcut to workout your problem. However, if you've more time, and will do more work on kinematics, you can follow one the two approaches:

The product of exponential method ( which I prefer) you can refer to it in the: A Mathematical Introduction to Robotic Manipulation, by Murray
Or you can use the DH convention, the widely used method. The inverse kinematics is a large topic in the robotic literature, you can find a lot about around. However, if you looking to that in the SolidWrok, this is another issue.
Answer: The robot you have modeled is a RR:R robot (3 rotational joints) with a sliding base from what I can understand. It is not clear if it has a spherical wrist.
The kinematic solution to such a robot can be given by first splitting the problem in to two parts. One to solve the kinematics for the 3 rotational joints and then computing the axial shift of the end effector axis in accordance with the shift of the base reference coordinates.
You can solve the forward kinematics using the Denavit Hartenberg parameter calculation and subsequently calculate the inverse kinematics for your RRR robot.
The forward kinematic transformation matrix for your RRR robot will only contain the three joint theta angles and the three link lengths. Apply this to calculate joint positions w.r.t the base frame using the transformation matrix for each of the joints to achieve the total transformation matrix for the robot.
I will try post the solution to this soon, but you can look it up in the Robot Modeling and Control by Spong and VIdyasagar (page 68) : http://www.fit.hcmup.edu.vn/~hungnv/teaching/Robotics/0471649902_-_Robot_Modeling_and_Control.pdf
I find its the best place to learn to apply forward and inverse kinematic solutions for an anthropomorphic robot arm.
Answer: This is a huge field you are asking for. I don't know what exactly you are looking for and what is your background. But, initially, I would suggest you first to go through basics. Read some stuff related to Robotics kinematics and representations from DH Parameters, Forward Kinematics and Inverse Kinematics. You define your problem based on that reading and decide what you need to use.
And by the way, your drawing and labeling does not suffice the proper representation. Please check it first.!
Answer: You should first learn about forward and reverse kinematics
There is a really good pdf on this here
https://www.google.co.uk/url?sa=t&source=web&rct=j&ei=Z2EmVe36BZXnapTAgIgD&url=http://www.cs.cmu.edu/~./15464-s13/lectures/lecture6/IK.pdf&ved=0CDwQFjAH&usg=AFQjCNFvIj48gbaCsqiCgD9c9g6uPibNMA
It requires you to know the fundamentals of vectors and matrices.
You should also know how to calculate the jacobian etc
I would start by reading this before you attempt any design/programming
Answer: For people just starting out with robot kinematics, I highly suggest using one of these powerful libraries and not doing the math yourself.

OpenRave
ROS MoveIt!
Matlab Robotics Toolkit
Orocos

These libraries typically let you specify the dimensions and joint configuration of your robot in something more intuitive than DH parameters.  (Translations and rotations in XML for example).  They can quickly and easily give you forward and inverse kinematics solutions.
But once you get something up and running.  I then recommend doing some reading on the theory behind all this.  (Other answers listed some good books).  Things will make more sense, and you will be able to do more advanced things.
Answer: I basically did an application using a very similar, if not identical, robot of this type for my Masters Thesis.   I don't know if it will be of any assistance however here is the link.
http://repository.lib.ncsu.edu/ir/bitstream/1840.16/1331/2/etd.pdf


VideoView / MediaPlayer Error (1, -18)

Question: I have an application that is built to API level 2.2. This application contains a video that starts playing as soon as it is launched. The video is played inside a VideoView and the actually video file is stored in my internal storage (files directory for my apps package).
Most of the time it starts up just fine. But occasionally I get an error pop - up that says "Sorry, this video cannot be played." and has an Ok button. As soon as I press the ok button the video starts playing correctly. I need to figure out what is causing this error, or at the very least how I can catch whatever error it is and have it try again since it always works perfect after I hit ok. Inside the logs when this error box is shown I see these messages:
 ERROR/PVOMXAudDecNode(21215): Ln 2232 OMX_EventError nData1 -2147479547 nData2 0
 ERROR/PlayerDriver(21215): Command PLAYER_PREPARE completed with an error or info -18
 ERROR/MediaPlayer(9282): message received msg=100, ext1=1, ext2=-18
 ERROR/MediaPlayer(9282): error (1, -18)
 ERROR/MediaPlayer(9282): callback application
 ERROR/MediaPlayer(9282): back from callback
 ERROR/MediaPlayer(9282): Error (1,-18)
 DEBUG/VideoView(9282): Error: 1,-18

Where can I find a reference as to what exactly error code -18 indicates? And does anyone have any suggestions I could try to prevent it from happening in the first place. I have only observed This error on the Sprint Epic 4g.
Edit: well as far as I can tell no exceptions are getting thrown to me. I assume what is happening is that the video view knows to catch whatever exception is causing and it throws up the pop-up. Inside my log there is no exception stack trace just this reference to error -18.
As for how I am calling prepare. I use this:
    mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
        @Override
        public void onPrepared(MediaPlayer arg0) {
             mVideoView.start();
        }
    });

and this:
mVideoView.setVideoPath(file.getAbsolutePath());

it calls prepare as part of setVideoPath (I assume it does anyway, but this method is undocumented). which causes onPrepared to get called in my listener.
Edit 2: for now i've just added an onErrorListener like so:
EDIT IMORTANT! this code will infinte error loop on ICS. For ICS devices I took out the setPath call, and returned false instead. It tries again by itself once and it succeeds.
    mVideoView.setOnErrorListener(new OnErrorListener(){

        @Override
        public boolean onError(MediaPlayer arg0, int arg1, int arg2) {
            Log.i(myTag, "MP ERROR: "+ arg1 + " - " + arg2);
            mVideoView.setVideoPath(file.getAbsolutePath());
            return true;
        }

    });

this catches the error and I can see in my logs that arg2 = -18 when this error happens. I just have it retry and return true so it doesn't throw up the dialog. So far i've never seen it fail twice in a row so this always starts the video correctly and doesn't make infinite loop.
I am still very interested if anyone can tell me exactly what error code -18 indicates though.
Answer: How do you catch potential exceptions thrown by prepare()? Do you catch IOException specifically and then retry calling the prepare()?
Try using prepareAsync() instead, which does not block and calls listener when player is ready. Also it does not throw IOException.
Answer: If you are running it on Froyo or Gingerbread the problem might be  your device is not supporting playback of the file. Lower versions do not support videos encoded with formats other than baseline format. You may use some tools like video info on pc and check if the files are baseline formatted.

VideoView / MediaPlayer Error (1, -18)


Exporting image to gray-scale single channel PNG 8bit in Photoshop

Question: I know I can very easily export an image to PNG 8bit with just a single color channel in Gimp. But I can't figure out how to do that in Photoshop. "Export as" gives an option to reduce number of bits per channel but not to reduce number of channels,even in gray-scale mode.Can Photoshop do that without any external plugins?And if not,is there a free/commercial plugin that can do that?
Answer: Using Save for web you can get a indexed one channel 8 bit .png image

If what you are looking for is a monochromatic image, the process is different

Menu Image > Mode > Grayscale
Menu Image > Mode > Duotone > Choose Monotone
Save for web > PNG-8
Comment: That's not true.If you load this file with a software which know to tell you number of channels you will see it comes with 3  or 4. I am a programmer and load that image using image loading API.From your example it reports 4 channels. Now,if you go to Gimp and export grayscale to PNG,you have an option called 8bpc GRAY.That one gives me exactly what I need - grayscale single channel 8 bit image.
Comment: Of course, the images I put in the answer are screenshots, .png rgb, 3 channels. But if you do the steps described in the answer you will get what you are looking for in your question
Comment: I tried totally grayscale (just black and white) image.Converted it both to grayscale and to duotone and that changes nothing.Please drop me an image you think is a product of the operations you specified,and I will tell you how many channels it has.
Comment: The second screenshot shows an image with a single 8-bit channel called Index that corresponds to an image indexed to 256 colors.
Comment: Man,please put in your answer a single channel image produced by your setup(and I will test it),otherwise it didn't happen. I am quite experienced with photoshop and other image editing software.So far,using all possible options in photoshop all I got was 3 or 4 channels images.
Answer: Try this:

Make sure your image is in Grayscale mode.
Choose File > Save As.
Select png format and save the file.


Handmade Product In UK

Question: If a product is handmade in the UK, not sold in the united states, does not have a patent, can that product ne created and patented in the states?
Answer: Whether or not the product is handmade is of no consequence. Once a product is disclosed publicly it no longer becomes patentable. A few countries such as the US have a grace period which allows filing a patent within a period after disclosure (12 months for the US). However, for most of the world, you no longer can pursue a patent. If a product is disclosed outside the US is still counts as prior art within the US. So the bottom line is if you have been selling the product for more than a year, you can't obtain a US patent.
Even if the product has been for sale less than one year, you may or may not be able to obtain a patent depending on whether the invention meets the requirements of patentability.

Handmade Product In UK


Email Column auto populated from Created By?

Question: SharePoint 2010.  I have a document library and I'd like to have an Email column that automatically fills in from active directory based on the Created By column. Is there a way to do this?  Or to have the Created By column display an email address instead?
Answer: I try not to duplicate data whenever possible, so going into the library's settings you can click on the Created By column and change the display option to Work Email instead of Name and show the email address.


Discard ODE singular solutions with Mathematica?

Question: The solution for a homogeneous second order linear ODE is generally a constant times one function plus another constant times a different function.  Sometimes one of the solution functions is singular, i.e. it blows up for some value of the independent variable.  An example is Bessel's ODE.  If one is just looking for nonsingular solutions, is there some way to have Mathematica discard the singular function so that the required solution is nonsingular?  This would be helpful in the case where a large number of ODE's are generated.  Otherwise there is a lot of human intervention needed to proceed.  In my case, I have the ODE's, and the specific solutions found by DSolve with the singular solutions obvious by inspection.  I just want to see if Mathematica can be used to remove the singular solutions.
Answer: I doubt that there is an algorithm to decide (in reasonable generality) whether a solution to an ODE has a singularity on the real line.  Consider e.g. $f(z) = 1/(\cos^2(z) + \cos^2(r z))$.  This has a real singularity if and only if $r$ is a rational number of 2-adic order $0$. E.g. for $r=\gamma$ this is an open problem.
Comment: In my case the singular solutions found by DSolve are obvious and rather elementary. Your example is over my head.  So I don't really know what to make of your answer.
Answer: Here's a quick and incredibly naive way of treating at least the Bessels. Not sure how robust it would be for more complicated things.
<code>Module[{tol = 1*^-6, a = 3, nonsingularQ},
 nonsingularQ = FindMinimum[Abs[1/# /. _C -> 1], x][[1]] > tol &;
 Total[Select[#, nonsingularQ]] & /@
  List @@@ Expand[
    y[x] /. DSolve[
      x^2 Derivative[2][y][x] +
        x Derivative[1][y][x] + (x^2 - a^2) y[x] == 0, y[x], x]]]
</code>
Comment: Looks good!  I'll have to check your answer out.
Comment: Here is an example of an ODE that I have : y''[x]+Cot[x]*y'[x]+(2-Csc[x]^2)*y[x] = 0 .  The nonsingular solution is Sin[x] times a constant, and the singular solution is complicated. We have 0 < x < Pi .
Comment: Did you try it? It worked for me, though I get C[1] Sqrt[-Sin[x]^2] for some reason.
Comment: Using your work above, I got Sin[x] times a constant as the output for the ODE immediately above, which is correct.  The singular solution was indeed suppressed.  Thank you very much!
Comment: Yes, I get C[1] Sqrt[-Sin[x]^2], but if C[1] is purely imaginary, then the effective answer is C[1] Sin[x] for real C[1].  Also you can directly check by substitution that C[1] Sin[x] is correct for real C[1].


Are there any anthropological studies involving AI right now?

Question: Are there currently any studies to simulate gradual (or sudden) implementation of AIs in the general work force?
Comment: It's not clear what you're really asking here. What are these studies supposed to accomplish? Do you want to see the effect of adopting AI techniques on workers, business, or maybe something else? Given that this question is not fully clear, I will close it.
Answer: As far as I can tell (I've been doing searches here and there on and off since I saw this question a few hours ago) the closest we've gotten to 'simulations' on this is video-games, and to a degree movies, interestingly enough. I.e. entertainment media.
Games like Portal, System Shock (with the AI 'Shodan'), and others give interpretations of what AI systems could be capable of themselves. Mass Effect is more or less entirely based around existential concepts regarding extra-terrestrial, almost primordial AI beings that threaten the earth.
But there's even more to it than the whole 'evil robots taking over the world' aspect. There's the actual implementation of AI in video games, which is where much of this technology first makes contact with the general public.
We have facial-scanners that put you into NBA games, cities full of realistically reacting people (inFamous, Assassin's Creed), and games that learn how you play and adjust the game accordingly (Metal Gear Solid does some of that stuff, as well as being thematically AI-heavy).
Ultimately, we only get things like the iPhone or VR headsets or other major proof-of-concept material only so often, but games are much more frequently implementing the most recent AI advances.
Thus, even though many AI systems are being put into place in the general workforce (many Hospitals now turning to cloud and AI health services, as recent as this week), I don't think you can really go further than video games or movies for 'simulations' or extrapolations like the ones you seem to want.
Analyzing the response to AI developments in games might be the closest thing currently possible. In terms of economic models or anything of that sort, I can find naught.


Parameters for elliptic curve prime192v3

Question: I'm looking all over the internet for prime192v3's parameters. I think I may have found them here, but it doesn't say what variable each number matches to. Is there some central place where I can find this information?
Answer: You need to look at the constructors and see which values correspond to which parameters.
The ECCurveFp reference is here
Note that $P$ is given in decimal
$P = \texttt{6277101735386680763835789423207666416083908700390324961279}$
$a = \texttt{fffffffffffffffffffffffffffffffefffffffffffffffc}$
$b = \texttt{22123dc2395a05caa7423daeccc94760a7d462256bd56916}$
The X9ECParameters reference is here
Note that $G$ is in compressed form
$G = \texttt{027d29778100c65a1da1783716588dce2b8b4aee8e228f1896}$
$n = \texttt{ffffffffffffffffffffffff7a62d031c83f4294f640ec13}$
$h = \texttt{1}$
$seed = \texttt{c469684435deb378c4b65ca9591e2a5763059a2e}$


Tilling in oak stump grinding chips for new sod lawn

Question: I have a fair amount of live oak chips/dirt from a stump I just ground. Is it a good idea to till these grind 'spoils' into the dirt of an area we plan on laying new sod into? Will the decomposition of the oak deplete the soil to the point that the sod struggles? Is the oak too acidic for sod? Should I incorporate top soil or another amendment as well? Thank You
Answer: I wouldn't till in the oak chips - they're best composted first and then reused on the garden.  They will deplete nitrogen as they break down; wood chips take a good while to decompose, so they'll be robbing nitrogen ongoing while they do, which won't be a great start for your lawn. You also need a loose friable surface to lay the sods on to facilitate good rooting into the soil beneath - if you till in oak chips, they're not something that could be described as friable.
Answer: If you want a nice uniform lawn, the important part is that the soil composition is uniform. In other words don't till in the chips just at he site of the stump - spread it out a bit. Albeit, some nitrogen is required for decomposition of cellulose, but it shouldn't be an issue; add a bit of high nitrogen fertilizer as every suburbanite does, if needed.


Concatenation of two Turing machines

Question: If I have two Turing machines A and B, and I want to use an output of A as an input to B, how is it going to work? Can I just run A, keep the input tape, and then run B (without affecting the number of states A and B? Or do I have to combine an halting state of machine and an initial state of the other machine?
Answer: Given two Turing machines $M_1$ and $M_2$, assume that their state sets are disjoint, i.e, $Q_1 \cap Q_2 = \emptyset$. Define $\Sigma_3 = \Sigma_1 \cup \Sigma_2, Q_3=Q_1\cup Q_2, F_3=F_2$.
Modify $M_1$ so that it prints its output starting from the first (leftmost) tape cell, then move the tape head to the leftmost cell and enter the $M_2$'s start state. This makes sure that $M_2$'s input is the $M_1$'s output. You may also need to add new states to $Q_3$ .

Concatenation of two Turing machines


Employer not allowing me to freelance

Question: I work as a web developer. My employer recently found out that I am freelancing as a web developer on the side and he told me I am not allowed to do this as it "is a rule". I did not sign any contracts when I took this job and no where does it state this "rule". When I do freelance, I do it on my own time and it does not affect the company whatsoever. Is my employer legally allowed to stop me from continuing?
Comment: A country code will help to get a specific answer. As like in quebec/canada, the ccq article 2088 ask the employee to be loyal. We can play with word there, but yes there they can force you
Comment: another factor - does the freelance work at all compete or undercut the work your company could be hired to do? If you work for a medical supply company, probably not, but if you are web services firm, then....he kinda may have a point. If there is no conflict of interest / competition, you may kindly ask about the policy and reframe it not as a loss for the company but as an opportunity to make you a better developer without them spending any money on training or resources
Comment: How did your employer find out about your freelancing? If you want to continue maybe you should keep a lower profile. Your employer may decide to look the other way if you do so.
Comment: You have no contract. Seriously? What kind of operation is this? Are you a full-time employee, or a 1099? Are you a work for hire? If I were you, I'd demand a contract. And anything that your employer wants to add to the contract, you should ask money for. That opportunity cost is worth something? How much is it worth? $20,000? $15,000? At the end of the day, this isn't really a legal question. The real question is whether you're willing to walk away from the work if you can't both come to a mutual agreement. I'm assuming here that you're in an "At Will" State. Do tell us if you're not.
Comment: are you using any company resources at all in your side work?
Comment: There's another aspect to this.  It's entirely possible the employer owns the copyright to the code the OP produced in his off hours.  Without a legal agreement in place, this could be messy.  http://pnwstartuplawyer.com/employee-inventions/
Answer:
Is my employer legally allowed to stop me from continuing?

If you are in the US your employer cannot stop you from freelancing. Assuming you don't have a contract that says otherwise, they can't sue you simply for freelancing or sue the company that purchases your freelancing services. They have no laws on their side.
They can, however, fire you from an at-will job in most cases for this reason or for no reason.
You might be best served by going along with your company's rules or finding a company with different rules.
The OP asked if his employer could "stop" him from freelancing. The answer was "No." If instead the question was if his employer could "fire" him for freelancing, the answer would have been "Yes". I'm sorry if this wasn't clear. Hypothetical methods of "stopping" the freelancing (if the laws permitted) could potentially involve suing the employee or the company that hires his freelancing services. Neither of these could normally happen in the US.
Comment: Comments are not for extended discussion; this conversation has been [moved to chat](http://chat.stackexchange.com/rooms/55492/discussion-on-answer-by-joe-strazzere-employer-not-allowing-me-to-freelance).
Comment: i'm just curious, are there any jobs here in the U.S. that are not `at-will` ? it's my understanding they all are
Comment: @amphibient See ["At will" employment definition](http://workplace.stackexchange.com/questions/32352/at-will-employment-definition)
Comment: thanks but my question wasn't what it is but whether there are any that are not
Comment: @amphibient: the are no positions that can't be at will, but there are locations where you can't just fire someone because you promised the boss you'd fire the first person you saw.
Answer: As indicated by Joe Strazzere, they are free to release you for pretty much any reason that doesn't fall under discrimination laws if you live in a location that does "at will" hiring. For the purpose of things like unemployment, this does not count as being fired generally, which is a good thing.
To address the secondary question, when you mention that "it does not affect the company whatsoever", that's not necessarily true. First, sidejobs can create conflicts of interest. While the company that you're freelancing for may not currently be in conflict with your primary company, they might be in the future. Or, for that matter, there might be a conflict of interest that you are unaware of at the time. Second, and this is a stickier matter, there's a matter of availability. What happens when your company wants you to stay late, or be available on a weekend, and this bumps up against your freelance work? As I understand it, this is less of an issue if your primary job is contract work, as they would have to pay you for the hours that they expect you to be available. As a salaried employee, things get trickier, particularly if you work in an "exempt" position where you are not eligible for overtime, as your company technically pays you for your availability throughout the pay period, which is why you're guaranteed to be paid even if they don't have work for you at a given time. And, of course, even outside of billable hours, you still get that potential conflict of interest where they will never be certain whether you will be available for an emergency situation after hours.
Comment: Or you get burned-out because of the extra work.

Employer not allowing me to freelance


How do I respawn the Ender Dragon when not running a server?

Question: When my brother and I were playing on LAN for one of my worlds we defeated the ender dragon and wanted to refight it. I looked at a few online helps but they only tell me how to do it on a server.
Comment: You could use [MCEdit](http://www.mcedit.net/) or the /summon command (1.7+ only)
Comment: Respawning the ender dragon works exactly the same way on singleplayer as on a server.
Comment: If you are running a local or online server you can just replace your "The End" folder and whenever you create another Ender Portal, you will get a new "The End" world.
Answer: LAN worlds are considered to have cheats enabled, at least for the host.
<code>/summon EnderDragon
</code>
is the command you're looking for.
Comment: I would certainly do it in the end. You CAN summon an Ender Dragon in the overworld/nether, but because of their ability to remove any normal block type, it can make quite the mess. As for your other question, AFAIK Ender Dragons spawn a portal when they die, regardless of how many Ender Dragons there have been. The portal blocks themselves trigger the game over 'poem.' TL;DR: No, Yes.
Comment: do I have to use it in the end? And will it re-bring about the end escape portal/the philosophy thing?
Answer: In the Snapshot 15w44a, you can re-summon the enderdragon by placing end-crystals on the edges of the portal in the end. This will maybe change (its just a snapshot version), but this should be the intended way of fighting against the enderdragon again and again in survival without any commands/cheats. See the changelog here.


Designing a loaded voltage divider?

Question: I was wondering how to design this circuit in depth, since I have no idea what to do.
Comment: Take a look here for some inspirations, and remind your dumb-ass professor to note Amper with the capital $A$. https://electronics.stackexchange.com/questions/55622/voltage-divider-supply-unloaded-and-loaded
Comment: @Sam: Only the symbol is capitalised. Units named after a person are lowercase when spelled out, not as written (and mis-spelt) in your comment. This is SI standard.
Comment: @SamFarjamirad And symbols for SI units are not italicized. So the symbol for ampere is just A, not *A*.
Answer: Your circuit works.  Proper ground connection.
Your battery would be +12V -(-8V) = 20V.  Voltage at Point A = 12V, Point B = 9V, Point C = 4V and Point D = 0V.  The circuit is a good place to start.
To get 12V at 6mA, you need $R_{L_3} = \frac {V}{I} = \frac {12V}{6mA} = 2kΩ$
Same process for 9V at 18mA and 4V at 4mA.  Three of the 7 resistors are known.  To get those voltages and currents, those are the resistors.
The rest of the resistors must be selected to support those resistors. $R_1$ to $R_4$ are in series (hense the name, loaded voltage divider) and each load resistor is in parallel with an individual series resistor.
So load currents are 6mA, 18mA and 4mA.  We also need a little extra for $R_3$.  Make that 4mA, to make the math easier.
So $I_T = 6mA + 18mA + 4mA + 4mA = 32mA$.  This is also current in $I_{R_4}$.
The voltage across $R_4$ is: $V_{R_4} = 0 - (-8V) = 8V$.
So $R_4 = \frac {V_{R_4}}{I_T} = \frac {8V}{32mA} = 250Ω$
$R_3$: At Point C, you want 4V and $R_3$ and $R_{L_1}$ are in parallel. So:
$$V_{R_3} = V_{R_{L_1}} = 4V - 0V = 4V$$
This may seem obvious, but you need to do this for the following steps.  $V_C$ - $V_D$ = Voltage Drop across $R_3$.
Loads 1 to 3 are connected to Point D.  So their currents do not pass through $R_3$.
$$I_{R_3} = I_T - I_{R_{L_3}} - I_{R_{L_2}} - I_{R_{L_1}} = 32mA - 6mA - 18mA - 4mA = 4mA$$
The extra current I added.  Know current and voltage for $R_3$.
$R_2$: You want 9V at Point B and 4V at Point C.
$$V_{R_2} = V_B - V_C$$
$R_2$ is connected to $R_3$ and $R_{L_1}$.  This means the current for those resistors must flow through $R_2$.
$$I_{R_2} = I_{R_3} + I_{R_{L_1}}$$
Know current and voltage for $R_2$.
Only one left is $R_1$. Same process.  I leave this to you, but this will get you going in the right direction.
Answer: Assume your design works, so you know that the voltages at A, B, and so on are the ones given in the problem.  Since you know the currents through the loads, you know some of the currents flowing out of the nodes A, B, C .... , With knowledge of the voltages, and some of the currents, you can figure out the other currents. Then you can solve for the resistors in the voltage divider that give you those currents.  (Note that the voltage at D in your diagram is 0,  you probably want D to be the voltage at the bottom of the battery. )

Designing a loaded voltage divider?


Stable presentable categories as module categories

Question: There is a theorem of Schwede and Shipley which classifies categories of modules over an A∞ ring spectrum as those stable presentable (∞,1)-categories with a compact generator.  Suppose I allow my A∞ rings to "have many objects", that is, I consider categories of the form FunSp(Iop, Sp) where Sp is the category of spectra, I is a small Sp-enriched category (in some appropriate sense) and Funsp denotes the category of Sp-enriched functors.  Is there a classification of which stable presentable categories can be obtained in this way?  Is it possible that all stable presentable categories are of this form?
Answer: According to the abstract of http://arxiv.org/abs/math/0108143 (Schwede & Shipley, Classification of Stable Model Categories), they deal with the case of stable model categories (=stable presentable (∞,1)-categories, I suppose) which have a set of compact generators, and show they are the same as model categories of functors from spectral-enriched categories.
(Edited, in the light of Reid's comment, to include the hypothesis of compact generators.)
Comment: Corollary B.13 of the reference [HS99] gives examples of what I presume are stable presentable categories without any nonzero compact objects.
Comment: I think that "has a set of generators" is implied by "presentable", right?
Comment: Ah.  I should have said "compact generators", as that appears the condition Schwede-Shipley require.  So "presentable" implies "set of generators", but "compact generators" is much more special.
Comment: I don't have a ready example in the case where you drop the hypothesis of compactness.  If you form the localization of spectra with respect to a homology theory E, the localization L_E(S) of the sphere spectrum is a generator for this stable homotopy theory, but in general L_E(S) is not compact.  But this doesn't preclude the existence of some other compact generator, and that actually happens in some cases, e.g., E= a Morava K-theory.


Is it always sane to follow inaction if the only alternative investment carries a risk of higher than 50% to end up with loss?

Question: Or is there a theory that proposes inaction is worse?
Answer: No, inaction is not always the rational choice in your scenario. To give an extreme example as proof:
Let's say that you have $1,000. The expected value of inaction is $0 - you will end up with the same amount (minus inflation, but we can ignore that for this exercise).
If your only other option is an investment which has a 75% chance of losing all of your money, and a 25% chance of doubling your money, then your expected value is ((75% * -$1,000)+ (25% * $1,000)) = -$500. In that case your best option is obviously inaction.
However, let's say that you have a 75% chance of losing all of your money, but a 25% chance of making $1,000,000 on your investment. In that case, the expected value of investing is ((75% * -$1,000)+ (25% * $1,000,000)) = $249,250. This means that the rational thing is to make the investment. Basically, the 25% chance of making $1M is worth the 75% chance of losing everything.
Comment: That's a good point, @DJClayworth, but an economist would say that you could bake that into your expected value calculation. It obviously sounds callous to put everything in money terms, but an economist would say that not being able to afford the operation for your mother would make it (for example) a $500,000 loss instead of a $1,000 loss.
Comment: You should always be wary of calculations based solely on expected value. "value" means different things to different people. If losing all your money would mean you aged mother not getting the operation she needs, but doubling it would mean you can buy a yacht, a 50/50 chance of each is not a neutral bet (depending on how much you like your mother, of course)
Answer: Other answers here explain very well the intent of your question. However, a word should be said about why people make different choices at all. So to directly answer your question, yes there is a theory but it does not say inaction is worse/better and instead explains why different people make different choices and how this information can be used to construct optimal portfolios for a specific individual. And that theory is called the Risk Aversion Theory. You can visit the following URLs to discover more about this theory:

Wikipedia article on the Indifference Curve
Wikipedia article on Risk Aversion: The very first example here attempts to directly answer the question in your post's subject.
A university's lecture slides on the theory itself
Answer: What you're looking for is expected value.
Let's say you invest $1000 in option A, and later discover that you are going to lose 20%.  So the expected value of option A is $800.
If option B has a 50% chance of losing 50%, and a 50% of gaining 20%, then your expected value is $650 ($650 = $1000 * (50% * 50% + 50% * 20%)).
$800 > $650, so you should stay with option A.
In the real world, you usually don't know the exact odds and percentages, so substitute in your best guesses.  This may lead to suboptimal results, but only if your estimations are wrong; the formula itself is ideal.


Could diatomic helium exist?

Question: I know that $\ce{He2}$ (homonuclear diatomic helium) does not exist because its bond order is zero. Since the bond order of $\ce{He2+} = 1/2$, that means that the positive $\ce{He2+}$ ion exists, but how does the positive ion exist if the neutral molecule doesn't?
Comment: See [Helium chemistry: a survey of the role of the ionic species. *Int. J. Mass. Spectrom.* **2004,** *237,* 243](http://www.sciencedirect.com/science/article/pii/S1387380604003094)
Comment: It does not last long when formed.
Comment: Related: [How can an excited helium dimer be formed?](http://chemistry.stackexchange.com/questions/19334/why-is-an-excited-helium-dimer-created-in-this-collision-experiment), [Why do noble gases bond with themselves but not other elements?](http://chemistry.stackexchange.com/questions/21820/why-do-noble-gases-bond-with-themselves-but-not-other-elements)
Answer: Although we know that the helium dimer has a tiny bond dissociation energy, we don't consider it a molecule, as the "bond" does not survive a molecular vibration, even rotation of the molecule is enough to cleave it.
From an answer by Lighthart on "Molecular orbital theory & predicting the stability of a molecule?" I took the liberty to borrow the MO schemes:

In the scheme you can clearly see how we arrive at the bond order of zero for $\ce{He2}$. Both, the bonding $\sigma$ and the anti-bonding combination $\sigma^{*}$ are doubly occupied. Dihelium is only held together by weak van der Waals forces.
In the case of the dihelium cation $\ce{He2+}$, one electron is removed from the anti-bonding orbital. There are now more electrons in bonding than anti-bonding orbitals. This effectively results in a net energy loss or bond energy gain, and the overall bond order increases to 0.5. In a more phenomenological context, three negative charges are now in a field of four positive charges, this gives rise to Coulomb attraction.
Reference: Wikipedia article on dihelium and references therein.

Could diatomic helium exist?


Can Cyanogenmod 11 themes be used on CM 10?

Question: In the past, I unintentionally discovered that Cyanogenmod 9 can use CM 10 themes.
While the play store shows CM 11 themes as incompatible on CM 10, would the themes work if installed manually?
Answer: The new Theme Engine, introduced with CyanogenMod 11 and later adopted by other KitKat custom ROMs, uses a different but simpler structure from past engines.
The theme files are all under the assets folder of CM11 theme APKs, while it was solely up to the developer as to where to put the theme files in the old Theme Engine themes.
While I have seen that there are some backwards-compatible themes available, they generally specify the target CM versions in the Play Store app listings. So if Play Store tells you that your device is incompatible, better heed the warning; but if you see in the app description / reviews that people using CM < 11 can install the theme, then maybe you can install the theme manually.
TL;DR
Try to see if people using CM < 11 have successfully used the theme. If so, then go ahead!


How to play videos with TrueHD audio tracks on linux?

Question: I have an issue with watching videos nowadays which come with 'Dolby TrueHD 7.1' sound tracks. For years I always used VideoLAN's VLC for almost everything without any issues.
However, recently I tried to watch a video which comes with TrueHD audio and it simply does not work out with VLC. I'm not the only one with that issue, some user even uploaded an sample to youtube. I'm having the exact same issue.
Now, everyone in the forums or comment threads knows the issue is VLC-related and they recommend various players like PotPlayer or MPC-HC. But these mediaplayers are not available for Linux systems.
I'm on ArchLinux. Does anyone have a workaround to fix TrueHD with VLC? I also tried mplayer but it also has issues with the playback.
Answer: I have no fix for VLC handy, but I noticed the commandline player MPV is capabale of playing TrueHD audio without any issues.


What are the details of the Salesforce SLA, specifically the maximum downtime?

Question: As a developer, my customers rely on constant connectivity to Salesforce.com and therefore need to know what the SLA is for salesforce.com services in the event of a service disruption? Is there a maximum outage period committed to by Salesforce?
Answer: Not exactly what you asked for, but have a look at http://trust.salesforce.com/trust/status/ to see historical server status.

From the Master Service Agreement as at May 2016

3.1. Provision of Purchased Services. We will (a) make the Services and Content available to You pursuant to this
  Agreement and the applicable Order Forms, (b) provide applicable SFDC standard support for the Services to You at no
  additional charge, and/or upgraded support if purchased, (c) use commercially reasonable efforts to make the online
  Services available 24 hours a day, 7 days a week, except for: (i) planned downtime (of which We shall give advance
  electronic notice as provided in the Documentation), and (ii) any unavailability caused by circumstances beyond Our
  reasonable control, including, for example, an act of God, act of government, flood, fire, earthquake, civil unrest, act of
  terror, strike or other labor problem (other than one involving Our employees), Internet service provider failure or delay,
  Non-SFDC Application, or denial of service attack.

From Proven reliability

Our track record speaks for itself: Salesforce1 Platform has a proven 99.9+ percent uptime record for years. To ensure maximum uptime and continuous availability, Salesforce1 Platform provides redundant data protection and the most advanced facilities protection available, along with a complete data recovery plan.

From Does salesforce.com have an SLA for its services?

You should contact your AE [Account Executive] for their official uptime document.

Answers from third parties
From Top 9 Reasons Why You Should Switch from Salesforce.com to Salesboom.com. (Could be heavily biased)

[Salesforce]  has never taken steps to offer a service guarantee

From CRM Online VS SalesForce.com (again, probably biased but potentially correct)

NO SERVICE LEVEL AGREEMENT (SLA)
  Salesforce.com does not offer a service level agreement.
Comment: The [FUD](http://en.wikipedia.org/wiki/Fear,_uncertainty_and_doubt) that the competition tries to bring to the table by saying that salesforce.com has no SLA is missing the bigger picture; salesforce.com has a double-redundant network that allows them to transfer traffic to a backup or backup-backup set of hardware in mere hours. It would take a national disaster that covers the entire continent of North America to bring them down (although we'd have bigger problems at that point). No competitor I know of brings *that* offer to the table.
Comment: @sfdcfox can we believe that there is no SLA for Salesforce's Bluechip enterprise clients, I find that hard to grasp, especially now that it being recognised as a platform company not just CRM. I would really like to know what time duration assurance SaleForce commits to getting a service back online/rerouted. If I was a large enterprise I would typically insist on SLA's for this event type in order to mitigate risk to the business continuity.
Comment: @sfdcfox. Agreed. Those last two articles need to be read with a good degree of skepticism as they are pushing alternative products and are clearly biased in their opinions. From the perspective of answering the question. There isn't a SLA for Salesforce.
Comment: @Bartley MSA P3.1: "We will ... (c) use commercially reasonable efforts to make the
online Purchased Services available 24 hours a day, 7 days a week..." and they also mention that a failure for them to meet their commitments can allow clients to terminate their contract (P9.2, P12.3, 12.4). I've heard that there's a way to get an SLA if you negotiate for one; supposedly some of the larger clients do have one.
Comment: I love this comment on Salesboom website about the app exchange `All applications a company adds to their Salesforce.com platform are provided by Salesboom.com as features` pure BS......
Comment: It's hard to find more than rumors that larger customers have negotiated individual SLAs with Salesforce. Assuming they did exist, it's likely that part of conditions is that they don't talk about them publicly.
Answer: What regarding performances degradation?
On trust.salesforce.com it is explicitly declared that if the average of the transactions goes over 0.5 for 2 minutes consecutively, this is considered a performance degradation in the current status, and if it is for 10 minutes consecutively is a performance degradation tracked in the historical section.
Is there any SLA about Performance degradation?
Thanks,
Marco
Comment: Macro, feel free to post that as a separate question. If relevant you can always refer to this one. On salesforce.stackexchange answers are intended for answers (=solution) to the asked question, not so much for conversation.


Role of linking, object files and executables

Question:
For a C or assembly program that does not require any other library, will linking
be necessary? In other words, will conversion from C to Assembly and/or from Assembly to an object file be enough without being followed by linking?
If linking is still needed, what
will it do, given that there is just one object file which doesn't
need a library to link to?
Relatedly, how different are object files and executable files,
given that in Linux, both have file format ELF?
Are object files those ELF files that are not runnable?
Are there some executable files that can be linked to object files?
If yes, does it mean dynamical linking of executables to shared
libraries?
Answer: First of all, it's really hard for any non-trivial program to 'not require any other library'.  Remember that glibc and the startup code calling main() are libraries too.
But yes, even in this case you need the linker, just because the compiler/assembler typically don't handle ELF format (or any executable format).  Precisely because usually you'll have to link with some libraries, so why should it bother to compile to ELF?  It's better to focus on linkable-code formats and leave the executable formats to the linker.
PS: I forgot that .so is also a variant of ELF.  But it still doesn't change the fact that it's a different subformat and the executable details are just not included in most compiler/assembers.
Yes, it's quite possible for a single tool to compile directly to executable, but that just means that it includes both the compiler and the linker in a single command.  Why would it consider the (very) special case when you won't add any other code?  It's far more logical to do it in the linker, after all you'll need it in %99.9 cases.
Comment: Thanks! (1) If a program has nothing inside main(){}, what library does the program need to link to? (2) In this case, do you mean that linker's job is to transform an object file to an executable file? (3) How object files and executable files are different? Any references? I only know they are both ELF format in Linux.
Comment: @Tim: it will need to link with a library called (usually)  crt0.o. This library contains the "real" entry point for the program and sets up the environment before calling `main`. Typically it does things like parsing the command line, setting errno to 0, etc.
Comment: @Dean: Thanks! What about assembly? If an assembly program does not call any other library, is assembling enough without linking?
Answer: It depends on the operating system.  In general, though, you need something to convert the object file into an executable file.  Object files are usually designed to be the input into the linker, and not to be run directly.
There are very few, if any, useful programs that don't need to have libraries linked in with them.  (Maybe static, maybe dynamic, but without the library infrastructure, you're not going to get much useful work done.)
Answer: Your program will (at the minimum) need to link to a loader in order run. Consider the following trivial code:
tpost@tpost-desktop:~$ cat count.c
int main(void)
{
        unsigned int i;

        for (i = 0; i < 10; i++) {;;}

        return 0;
}

Now we compile it:
tpost@tpost-desktop:~$ gcc -Wall -o count count.c

And now we examine what the linker did:
    linux-gate.so.1 =>  (0x002b5000)
    libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00482000)
    /lib/ld-linux.so.2 (0x00241000)

    Version information:
    ./count:
            libc.so.6 (GLIBC_2.0) => /lib/tls/i686/cmov/libc.so.6
    /lib/tls/i686/cmov/libc.so.6:
            ld-linux.so.2 (GLIBC_PRIVATE) => /lib/ld-linux.so.2
            ld-linux.so.2 (GLIBC_2.3) => /lib/ld-linux.so.2
            ld-linux.so.2 (GLIBC_2.1) => /lib/ld-linux.so.2

Of interest is the fact that ldd found no physical file for linux-gate.so.1 and ld-linux.so.2, this is because both of them are virtual dynamic shared objects that reside in every process address space. The shared objects themselves are exposed by the kernel and contain the code needed to actually load the program, which works in conjunction with the system C library.
Let's statically link this, shall we?
tpost@tpost-desktop:~$ gcc -static -Wall -o count count.c
tpost@tpost-desktop:~$ ldd -v count
        not a dynamic executable

I haven't eliminated the linking dependency here, all I've done is taken the loader code and system C library and made them part of the executable. That seems somewhat silly, because my executable no longer uses a perfectly good copy of that code which is already in memory.
You could write your own loader code and not use what's provided by the system C library, but you aren't going to lose the dependencies on the kernel loader itself.
This is a very Linux oriented example, but it's all I have available to me to illustrate the point :)


Should questions saying "how do you say [thing] in [conlang]" allowed?

Question: I believe that in Area 51, it was discussed that questions in the format above would not be accepted. Are we still doing that?
Answer: Yes, these questions should be allowed.
They're about conlangs; they're perfectly answerable (either by an actual translation or by a demonstration that no such exists); they're the type of question that someone studying conlangs is likely to have, and that an expert in conlangs is likely to be able to answer. They seem to tick all the boxes for what 'should' be on-topic here. What problems could they possibly cause?

To me they're like sprouts. I don't like them myself but I don't see any reason why people who do like them shouldn't be allowed to eat them.
  Sprouts are bleh. But I wouldn't want to ban them from vegetables.SE because of that.
-- AE, a wise user on Puzzling SE

... as long as they don't overrun the site.
Answering my own question: a potential problem with questions of this type could be that they start to form a majority of the site's questions, pushing more advanced and hard-to-answer questions out of attention. But unless and until that becomes a problem, I don't think they're causing anyone any harm. They're

like... The cabbage, radishes and shredded carrots that some sushi shops put on the platter before stacking up the meat & rice. They make the plate look nice and full, and they're something to chew on once you've eaten all the meat [...] Like those slivers of carrot, such questions can potentially give answerers something to chew on while they're waiting for the meat... But you still gotta have plenty of meat.
-- Shog9 (in relation to a different discussion, but a point which I think applies well here)

We can judge their quality by voting.
Now I'm not saying that questions like "how to say 'hello' in Sindarin", which can be immediately answered by a quick Google search, should be welcomed with open arms. I just don't think that all translation requests should be banned as a category; some of them are actually hard to answer and require some real expertise in the topic. We can distinguish these two types by voting: downvote easy or poorly researched questions, but upvote those of higher quality.

For the record, Science Fiction and Fantasy has had a largely very positive experience with questions about translations from fictional languages. The relevant meta discussion had a strong unanimous consensus in favour of allowing such questions, and some of them have attracted both very high scores and very interesting and well-thought-out answers.
Comment: I already consider them to be overrunning the site. I also feel like they're setting a bad precedent. I don't find them to be absolutely unjustifyable, but as @curiousdannii wrote they should definitely show that their own research has not yielded any results.
Comment: Obviously, they are by default allowed, I was more about the second point. But yes, you are correct: I was quite worried they'd overrun the site.
Comment: I do agree that the site shouldn't be allowed to be spammed up with questions like "how do you say 'carrot' in Esperanto?" and the like that can be answered with a simple Google search or other basic research. However, if there is a reason that a given translation is particularly tricky, I wouldn't consider it off-topic. For example, the toki pona "right/left" issue is apparently interesting enough to cause interminable arguments on Facebook and elsewhere at relatively regular intervals. On the other hand, that also makes it hard to get a solid answer...
Answer: I think that most of the language sites don't allow them, and I think that would be wise here. On ELU they're a blight that cannot be expunged.
Even if the community decides they should be allowed, I propose that it is absolutely essential that these questions show their research/work. That means citing dictionaries, both official and unofficial, and showing why the answer can't be found elsewhere.
Comment: +1 to this. I don't mind translation requests that actually require the input of an expert and can't just be found by searching the right wiki.
Comment: Unlike other languages, and their sites, most conlangs do not have a massive online and offline reference established after centuries of use. There are _some_ resources, and a simple question that Internet searching would answer should be voted down, into oblivion hopefully. That's not the same as off topic, which I do not think applies here.
Answer: Yes.
Even after a translation has been provided, different and potentially better or more accurate translations can still be added by users with further expertise that know more about the language than the current answers have provided.
I believe that a type of question is valuable to this Stack Exchange site if:

It's on-topic based on a very vague definition based on the site name; translations into/from natural languages such as French or German belong to those respective language sites.
It provides content that can help future users with the same problems.

Additionally, since other language Stack Exchange sites such as french.SE, allow translations, I believe that conlangs.SE should do the same.
Comment: Please ping me [in chat](https://chat.stackexchange.com/rooms/72781/constructed-languages) to disagree or suggest improvements to avoid cluttering the comments. If you strongly disagree but have no particular reasons, please downvote this post and move along or upvote a "No" post if/once one is made.
Answer: I'd say it depends. If it is just a boring translation request then it should not be allowed. For example How to say "strong woman" in Toki Pona? should be considered off-topic as it is something one can learn from courses and books.
On the other hand, questions requesting translation in a specific (cultural?) context should be on-topic. For example How would you say "good morning" or "hello" politely in Klingon? is a fine question as it requires extra knowledge about the cultural context of the language to provide a good answer. In this particular case a person posting an answer has to provide an explanation of why their translation of hello is considered polite in Klingon, which gives a much deeper view into the conlang than a similar question asking for a translation of hello to Klingon would give.
Comment: Is there a clear line between these two types of question? Personally I think it's a distinction that can be drawn by voting: DV your first example, UV the second, but don't deem either "off-topic". (By the way, sometimes voting is very skewed in the private beta stage, so don't draw too many conclusions from how questions like this have been voted on so far :-) )
Comment: @Randal'Thor I'd say that we should upvote a question if it asks about something you cannot easily derive from a grammar book and a dictionary. :)
Comment: If it _is_ a simple translation request, "how to say _friend_ in elvish", the it deserves a down vote: "This question does not show any research effort; it is unclear or not useful" is what I see as the tooltip for a down vote, and that seems to be perfect for such questions. It's not off-topic, it's also not a good question.


Database Shrink

Question: We have deleted approx 200000 tables and after which we ran Database shrink from GUI. But still database size shows almost 1 TB. Any solution?
Comment: Is the size on the MDF (DATA) or LDF (Log file) ?what is the result when running: "sp_helpdb dbname" ? Did you have any free space in the DB to begin with prior to running the shrink?
Answer: I think you need to get a better handle on what you actually have. Here's my recommendations:
First, find out the used/free space within each file:
SELECT DB_NAME() as dbname, type_desc, name as logical_name,
    CONVERT(decimal(12,1),size/128.0) as TotalMB,
    CONVERT(decimal(12,1),FILEPROPERTY(name,'SpaceUsed')/128.0) as UsedMB,
    CONVERT(decimal(12,1),(size - FILEPROPERTY(name,'SpaceUsed'))/128.0) as FreeMB,
    physical_name
 FROM sys.database_files WITH (NOLOCK)
 ORDER BY type, file_id;

That should tell you the actual size and used/free space within each data file and log file. You may find that deleting thousands of small tables didn't make as much difference as you thought.
Second, find out what tables are using up the most space:
create table #tbl(
  name nvarchar(128),
  rows varchar(50),
  reserved varchar(50),
  data varchar(50),
  index_size varchar(50),
  unused varchar(50))

exec sp_msforeachtable 'insert into #tbl exec sp_spaceused [?]'

select name, rows,
    convert(int, substring(reserved, 1, len(reserved)-3)) as reserved_kb,
    convert(int, substring(data, 1, len(data)-3)) as data_kb,
    convert(int, substring(index_size, 1, len(index_size)-3)) as index_kb,
    convert(int, substring(unused, 1, len(unused)-3)) as free_kb
 from #tbl
    order by 3 desc

drop table #tbl

This might let you find huge log or archive tables that you hadn't realized were there.
Third, in some cases, you might need to REINDEX your tables to free space allocated to tables
Data in SQL is stored in 8k blocks called "pages". A page is either allocated to something (table or index usually), or is marked as free. Here's another answer that gets into more detail on this point.
If you delete a column of a table, or if you delete non-contiguous rows of a table (like every other row), then you might have only cleared part of each 8k data page, and they won't be freed back to the database.
Doing an index rebuild (including on the clustered index) can combine partially used pages and free up space to the database (depending on fill factor, but that's a more advanced topic).
If the table is a heap (no clustered index), then you'll have to either add a clustered index, or (if you know what you're doing), add a cluster to "reindex", then remove it to leave it as a heap.
After this, run the first query above to see if more space has been freed to the database (it won't yet be freed to the file system).
Fourth, make sure you understand the risks and tradeoffs of shrinking.
Lots of good articles out there about this with scary titles:

Stop Shrinking Your Database Files. Seriously. Now..
Why you should not shrink your data files
Shrinking SQL Server Data Files – Best Practices, and Why It Sucks

In short:

Only shrink when you absolutely have to, and only when you're permanently reclaiming the space (huge data purges, change in application behavior, move between environments, etc). Otherwise it'll just grow back to the current size and you're back where you started. Ideally, understand and plan your database growth and size them appropriately ahead of time.
Shrinking data files can badly fragment indexes, leading to performance issues. The normal mitigation is to reindex after the shrink.
Shrinking is a very high IO operation, so plan accordingly with your application activity, and absolutely never ever ever enable "auto-shrink".

Lastly, never use SHRINKDATABASE, only SHRINKFILE:
Once you've understood everything above, always shrink a specific file, with a specific target size in mind.
Leave tran log files as big as they need to be for your activity. For data files, I usually try to leave 10-20% internal space free. Something like:
DBCC SHRINKFILE (NAME = 'mydatafile', SIZE = 400000MB)

Answer: I think you are confusing database file shrinking and compression. Shrink recovers unused space in the underlying database files. If you've deleted a large amount of data from your database and wish to scale down the file size, you using Shrink. If you want the data in your database to be stored in a denser fashion, your turn on page or row compression. You need to see how much data is stored in all your tables and indexes and see if it actually is 1 TB. We distributed our database to redshift and dynamodb so we had an opportunity to shrink the db from 1 TB to 200GB. But that's because we had less data in the db than before.
Comment: It could also be that the tables they deleted were not even 2GB in size, and the LDF has grown beyond control, so shrinking the MDF won't do anything to the total size. OP needs to provide more info.
Comment: No we did Shrink only from GUI.
Comment: run sp_helpdb dbname and check where your total size is allocated, mdf or ldf.

Database Shrink


Is huge gaps between wall and baseboard normal after reinstall them?

Question: recently I have a contractor installed hardwood floor in my house. However, after the baseboard are reinstalled back, there are huge gaps between wall and baseboards. They said it is normal and let myself do the caulking. But about 30% of the gap is pretty huge and hard to caulking. I uploaded a few pictures using a coin to measure the gap. Could anyone help and tell me if this gap is normal or not? Thank you!
Comment: Reinstalling old baseboard requires attention to old caulking and paint build up. Also the back side may have splinters at old nail holes that need to be scraped away. I always spend the extra few bucks it takes to buy new baseboard. I would seriously consider pulling it off scraping wall and putting new down. It will look way better than trying to rehab what's there
Comment: To extend to what @Kris was saying and that is new will look better unless you are wanting the rustic/old world look. If the baseboard is real wood, then repurposing it may be a better choice. If not, then new will be better. Also, paint it before it goes down so you only need to caulk and touch up the nail holes.
Comment: That's not huge, if re installing used trim at a new level there may be a difference in the surface that is causing some of the gap. I would want the 1 a bit smaller but to get it tight the trim may need to be cut because of its new height.
Comment: Was old base board caulked and that old caulk left on the wall?    Perhaps the new base is not nailed to studs?can you push the base board back to the wall? Is the gap everywhere or just in certain spots like near corners?
Comment: Hi Kris, I can see in some places through the gap the old caulk on the wall was not cleaned well. Most gaps cannot be pushed to the wall. The gap is almost everywhere, not limited to corners.
Answer: If the new hardwood floor was about 3/4" thick, there may be no way to nail the baseboard trim to the 2X4 plate. That new height of the finished floor raised the trim above that 2X4 plate. You may need to locate the studs and use them as your nail surface. This is common when you add a second floor on top of another floor. You could also try nailing near the bottom of the trim, on a downward angle to try and "grab some wood" near the bottom of the trim boards. A nail gun may help in this process.
Answer: That could probably be a little tighter, but isn't terrible. (The underlying reason for a bit of a gap is that walls aren't perfectly straight or plumb.)
Where I work, caulking is done by the painter, and these gaps will caulk perfectly fine.


Using 6kg's of grains for a 10liter batch Pale Ale brew

Question: I accidentally used 6kg's of grains (Simpson's Ale base malt & Caraaroma) for a 10 liter brew, 10grams of Mangrove Jacks Empire Ale Yeast and 75grams of Hops (Columbus,Centennial and Yellow submarine). I am in day 3 of a 14 day fermentation process after which I plan to bottle and store for at least 2months.
What will the implications be for using excessive grains?
Comment: What was the intended quantity for your recipe? All-grain mashed at what temperature?
Comment: My intended quantity was 2.5kg's of grain mashed between 65 and 70degrees celcius.
Answer: The first problem is that the Mangrove Jack's Empire Ale yeast has an alcohol tolerance of only 8%. Using some beer recipe software, the amount of malt you used would lead to an alcohol percentage of 15%. Which means that your yeast will stop halfway the fermentation.
Second, the amount of hops is not matched to the original gravity obtained by using 6kg malt. Your IBU will be lower than for the original beer.
You could probably move your beer to a larger fermenter and dilute it. The problem here is if the original yeast will restart, but I suppose you might make an active starter with the same yeast to get the fermentation going again. Note that if you do this, the alcohol level will dilute to 4% and then increase again.
The problem with dilution is that this also dilutes your hop bitterness, taste and aroma. You could try to adjust this by boiling hops in water and then use this to increase the bitterness. Boiling hops in water has a better efficiency than in sweet wort.
And then you can adjust hop taste and aroma with a hop tea.
If you work clean and careful, I think that this should not be a problem. There is ongoing fermentation, and there is already alcohol, so if you clean your larger fermentation vessel, I would say that the risk of contamination is minimal.
Comment: Thank you, I will consider you suggestions.
Answer: I agree with chthon.  In any case, the results will be different than the orginal recipe.
One thing that is affected by doubling the malt is the hop utilization.  Hop utilization varies depending on the pre-boil gravity : http://howtobrew.com/book/section-1/hops/hop-bittering-calculations
Hopefully, you used enough water in your mash to get a good conversion? A gravity reading at any point would give you important information on what is going on.
Since you had enough grain to make a 20L batch, you could double the water and perform dry hopping or hop tea to compensate.  Otherwise you could end up with unfermented sugar that will sweeten you beer.  Note that even if the yeast has an alcohol tolerance of 8%, it doesn't mean it will stop at 8%, it could reach 9% or 10%.


Subscriptions -- Credit Card Required? & OpenGateway Migration

Question:
Can a customer checkout without credit card information by using a voucher? We are using Stripe as the gateway, but certain customers are invoiced differently, (not through Stripe) thinking the vouchers would suffice?
How do you add an existing member in ExpressionEngine to a subscription from the EE Control Panel?
Have you seen any existing Membrr/Opengateway to Subscriber migrations? Any idea what this process entails while retaining existing subscriptions in OpenGateway using Stripe as the payment gateway?
Answer:
No credit card is needed if someone redeems a voucher. Note: Their subscription is also set to "not" auto-renew.
That is currently not possible but will be added very soon. (June/July)
We have had several people ask but we never fully automated it, everybody used a mix of re-subscribe or silently subscribe them when they update their payment details. We do want to create an automated version if you want to go forward with it. Get in touch.
Comment: I used the example templates to test #1. Does Stripe JS require a credit card? What about coupons? How do I get around the message from Stripe? "CARD_CREATE: The number parameter is required". I also received. "Could not find payment information". We want to be able to create subscriptions using coupons, but require no credit card info.
Answer: I can recommend Charge as a replacement for Membrr/Opengateway... works great!


Naming convention of miRNAs

Question: I'm trying to understand naming convention of miRNAs. I've found the wikipedia article about it nomenclature Based on it, I try to figure out what is hsa-let-7a. As far as I understood, hsa refers to human but I expected a "mir" or "miR" after hsa but there is a word "let" .So my question is that hsa-let-7a is a name for a single mature miRNA or is it a name of a miRNA family(if there exists such a thing) ?
Comment: let-7 is a miRNA family (let stands for lethal). It was one of the first to be discovered, in fact (in C elegans). let-7a is a single member of the family. It seems rare in science that established names are changed to match newer nomenclature, though I don't know if that's the case here.
Comment: Another such example: There is an miRNA in *Drosophila* called *bantam* (Just *bantam*)
Answer: Some general aspects about miRNA nomenclature in addition to canadianer's answer:

mir refers to the pre-miRNA whereas miR refers to the mature form
mir-x-y mir-x-z for example mir-1-1 and mir-1-2 refer to different precursors that give rise to same mature miRNA (i.e. miR-1). These different precursors can be regulated differently.
The mature miRNA resulting from the 5' arm of the precursor hairpin has a suffix of -5p; similarly the product from the 3' arm has the suffix of -3p. Previously, the lesser expressed/abundant (or unexpressed) of the two products was designated with an asterisk. For e.g. miR-124*. This convention is obsolete now. Any miRNA by default has the -5p/3p suffix. This is useful especially in case of let-7 because there is no uppercase notation to differentiate precursor from the mature miRNA. For example, the mature form is always denoted as hsa-let-7b-5p even though the -3p is never expressed.
A "family" consists of miRNAs with the same seed sequence (usually 2nd-9th residue). Sometimes it can be observed that one of the arms is less conserved than the other between different precursors. For example in the case of let-7 the -3p(s) do not have a conserved seed sequence, however, all -5p(s) have the same seed sequence.

And as mentioned in the other answer, the name let-7 just sticks around because of historical reasons.
Answer: let-7 is a miRNA family (let stands for lethal) and, in fact, was one of the first to be discovered (in Caenorhabditis elegans). let-7a is but one of many members of the family, with orthologs in many species. It seems rare in biology that established names are changed to match newer nomenclature, though I can't say for sure if that is why many (but not all) of the let-7 family members don't follow the standard.
Edit: Coincidentally, I was just reading a review about miRNA and came cross this informative excerpt which should at least give some sense of legitimacy to my above speculation.
Ha M, Kim VN. 2014. Regulation of microRNA biogenesis. Nat Rev Mol Cell Bio 15(8):509-524

The nomenclature of miRNA genes is somewhat inconsistent. The genes found in early genetic studies were named after their phenotypes (for example, lin-4, let-7 and lsy-6), whereas most miRNAs found from cloning or sequencing received numerical names (for example, the lin-4 homologues in other species are called mir-125).

Roush S, Slack FJ. 2008. The let-7 family of microRNAs. Trends Cell Biol 18(10):505-516

The lethal-7 (let-7) gene was initially discovered as an essential developmental gene in C. elegans and, later, as one of the first miRNAs (Figure 1). Soon afterwards, a simple BLAST (basic local alignment search tool) search revealed exact matches to the mature let-7 miRNA sequence in the emerging Drosophila melanogaster and human genomes. It is now known that mature let-7 is highly conserved across animal species.
The let-7 family of miRNAs is often present in multiple copies in a genome (Table 1). To distinguish between multiple isoforms, a letter is placed after let-7 to indicate a let-7 with a slightly different sequence, and a number at the end denotes that the same sequence is present in multiple genomic locations. For example, humans have ten mature let-7-family sequences (Figure 3) that are produced from 13 precursor sequences (Figure 4). Three separate precursors produce the mature let-7a sequence (let-7a-1, let-7a-2 and let-7a-3) and precursors from two different genomic locations produce the let-7f (let-7f-1 and let-7f-2) sequence. However, the size of the family can differ between organisms. Drosophila (fly) has only one let-7, whereas the zebrafish Danio rerio has 11 mature sequences in 19 loci throughout its genome…

Early characterization of let-7:
Reinhart BJ, Slack FJ, Basson M, Pasquinelli AE, Bettinger JC, Rougvie AE, Horvitz HR, Ruvkun G. 2000. The 21-nucleotide let-7 RNA regulates developmental timing in Caenorhabditis elegans. Nature 403:901-906

Naming convention of miRNAs


Standard PCB Layout Book

Question: Are there any good references on advanced PCB design/layout/routing?  There seems to be a large wealth of circuit design books, books about RF PCB design, and books dealing with high-speed digital design. None of these books are what I'm talking about. The type of book I am looking for is along the lines of PCB best practices for general digital/low speed analog/power supply layout & routing. What is the de-facto standard book they use in college classes for this topic (similar to the way that Oppenheim et. al.'s Discrete-Time Signal Processing is used in many DSP classes, or Sedra & Smith's Microelectronic Circuits is popular in many Circuit Design Classes)?  Can anyone recommend a good PCB design/layout/routing book for this type of design?  Would a high-speed design book be a sufficient in that it would be overly-strict based on lower speed designs?
Comment: I don't think they teach PCB design in college classes. At least they didn't in the 80's. Most people of my generation picked that up on the job.
Comment: I wasn't sure if they did or not.  I didn't recall any classes when I went to college except for RF PCB design classes.  Isn't it odd that every engineer comes out of college not having learned such an important topic and responsible for knowing it?
Comment: Lets not close these old questions
Comment: related: [Getting started with PCB designing](http://electronics.stackexchange.com/questions/17213/getting-started-with-pcb-designing)
Comment: Please note: **This question would be closed as off topic if posted today**.  It is here only because when it was created back in 2011 the rules against making requests for help in finding **off-site resources** had not crystalized.
Answer: One book that helped me quite a lot was Johnson and Grahams "High Speed Digital Design". Quite old, but the theory hasn't changed so still very useful reading.
Analog Devices technical documentation has a few good app notes like "A practical guide to PCB layout" and "PCB Design Issues"
Their web archives contain some good stuff too.
Although the theory stays the same, the important factors vary from application to application - e.g. a digital only board, mixed signal (e.g. opamps/ADCs with uC) or analog only board. Grounding with mixed signal can get quite interesting, needing careful attention to return paths, placement of power sources, breaks in plane causing return path to deviate, etc. A high impedance analog signal may need routing well away from anything digital, sometimes even a 90 degree crossing might not be acceptable.
In amplification systems (e.g audio, especially microphone amplifiers) one problem is the (often huge) difference of signal levels and impedances from input to output, so needs careful routing to avoid coupling from output back to input.
Comment: High speed digital design is definitively not the easiest read I have ever had but the most valuable of any source I looked into. I bought a copy and have it somewhere in my house and have a pdf it is so fantastic.
Comment: Good book, but uses imperial units. :/
Answer: The standard  IPC-2221, "Generic Standard on Printed Board Design" is quite complete - it covers:

General Requirements
Materials
Mechanical/Physical Properties
Electrical Properties
Thermal Management
Component and Assembly Issues
Holes/Interconnections
General Circuit Feature Requirements
Documentation
Quality Assurance

It is intended to

establish design principles and recommendations
  that shall be used in conjunction with the detailed
  requirements of a specific interconnecting structure sectional
  standard ... to produce detailed designs
  intended to mount and attach passive and active components.

(and you can check out the other IPC dependencies related to specific subjects such as rigid/flex circuits, high speed design etc...)
Comment: The document linked to only consists of a table of contents. IPC, like all the other money-grubber standardization organizations, wants money (USD 62) for the full document (which the original answer linked to. That's all I'm saying ;-)).
Comment: @stevenvh one would think, but USB charges outrageous for obtaining your own vendor id for use in your own devices, and membership for PCI spec group is even more. Let alone having a device tested OpenCable certification. Anyway, I won't link to the copy of the spec I found (which is circa 1998) but I will say it's googlable.
Comment: Standard is updated to IPC-2221B in 2012
Comment: @Franky - The spec is not [one of the free IPC publications](http://www.ipc.org/ContentPage.aspx?pageid=IPC-Free-Documents), it's for sale at $62 on the [IPC website](https://portal.ipc.org/Purchase/ProductDetail.aspx?Product_code=92a34ba8-b386-db11-a4eb-005056875b22). I've changed that link because it is illegal in most (not all?) countries; [we'd generally like to avoid linking to copyright infringing sites](http://meta.stackexchange.com/questions/49427/answers-that-direct-towards-material-that-infringes-copyright).
Comment: @Steven - $62 is *nothing* when it comes to standards.  What a nice change of pace!  It almost makes me doubt the money-grubbing nature of the IPC.
Comment: @Kevin - agreed, ISO is often more expensive. OTOH, some joint IPC/JEDEC standards, like J-STD-609, are freely available from JEDEC, whereas IPC changes for them. I like JEDEC better. When I say money-grubbing it's because most of them charge for membership, then for voting rights, and a third time for the documents. I would think they should be happy to disseminate their documents as widely as possible.
Answer: I agree that there doesn't seem to be a standard book for "simple" PCB design -- relatively slow and simple digital circuits; relatively slow and low-precision analog op-amp circuits; and everything else on a PCB necessary to support them.
I agree that it's a little odd that all the EEs I know graduated college without knowing how to do this, yet everyone seems to expect them to know how to do this.
I'm collecting a list of books related to PCB layout at the Massmind.
So far I have

IPC-D-275D Design standard for rigid Printed Boards and rigid Printed Board Assemblies
http://www.ipc.org
Murrietta Circuits Design Layout Standards
http://www.murrietta.com/mc-ls.htm
High-Speed Digital Design : A Handbook of Black Magic by Dr. Howard Johnson, and Martin Graham.
See also: H. Johnson's archived newsletters [ on http://www.sigcon.com/ ]
Digital Design for Interference Specifications (2nd Edition) by David Terrell and R. Kenneth Keenan.
EMC and the Printed Circuit Board by Mark I. Montrose.
EMC at Component and PCB Level
High Speed PCB Design by Lee W. Ritchey and James C. Blankenhorn.
Surface-Mount Technology for PC Boards by James K. Hollomon, Jr. (1995)
Printed Circuit Board Basics by Michael Flatt
Archambeault, Bruce R. "Pcb Design for Real-World Emi Control" ISBN:1402071302 ISBN:9781402071300 A current university textbook.
Wikibooks: Practical Electronics Layout (a)
Answer: The "Bible" for PCB design is "Coombs' Printed Circuit Handbook". Most of the content of the book is about mechanical issues and manufacturing processes for building the PWB. But that's okay, these are really the issues that a printed circuit layout designer will be expected to know. More importantly, these are the issues that the circuit design engineer will be likely to ignore, and expect the layout person to take care of.
And yes, the book is like 1000 pages. That's because there really is that much that you have to know to have solid knowledge of printed circuit design. It's probably not a great book to learn from, but it will probably be the reference you use to answer most questions after you know what you're doing.
Answer: old topic, but new book. might be good to add this list: http://blog.cadsoftusa.com/2014/05/neues-englischsprachiges-buch-uber-eagle-erhaltlich/
A new manual about PCB design written by Simon Monk.

Standard PCB Layout Book


I've created a private blockchain with geth and curious if this ether is real and spendable?

Question: I have a small private network which generates roughly 20,000 ether daily.. I read of this private network configuration often and it seams like people are actually using this Ether as real ether that is tradable for Bitcoin.. Although I'm successfully creating and sending translations which I've tested sending to my coinable.com account and my MyEtherWallet.com account.. neither seem to receive my private network generated ether.. Am I chasing a dream? Or doing something wrong.. Please help I've either wisely invested months of research or wasted a LOT of time and ruined my relationship with my wife in the process... Thanks.
Answer: Sorry. It's not possible.
On the real ethereum network you're just some random account with no actual funds trying to pass bad cheques. It won't work.
Hope it helps.