What would be a good way to use clustering for outlier detection?

Question: For simplicity let's assume the feature space is the XY plane.
Comment: If you have such a question, you probably have an intuition on why using clustering for outlier detection would be a nice strategy. If you add such information to your post, it shall definitely increase the visibility and the interest from others in answering your question.
Comment: This sounds like a homework problem.  It is so poorly asked that it is a title with no body; it is practically a disembodied head.  Can you provide context, toolset, or decent tagging?  Purpose?  Data style?
Answer: A very robust clustering algorithm against outliers is PFCM from Bezdek.
In this paper Bezdek proposes Possibilistic-Fuzzy-C-Means which is an improvement of the different variations of fuzzy posibilistic clustering. This algorithm is particularly good at detecting outliers and avoiding them to influence the clusterization. So using PFCM you could find which points are identified as outliers and at the same time have a very robust fuzzy clustering of your data.
Answer: If your Data points are dense and noise points are away from the dense region, you can try DBSCAN algorithm.

Tweak its parameters until u get a best fit.
Answer: Gaussian mixture modeling can - if your data is nicely gaussian-like - be used for outlier detection. Points with a low density in every cluster are likely to be outliers.
Works well in idealistic scenarios.
Answer:
Apply your clustering algorithm
Calculate distance from all data points to its assigned cluster
Label the data points furthest from a center as an outlier

Randomly generating 100 data points from three gaussians, clustering them with k-means, and marking the 10 'furthest from a center' data points gave the following graph:

see this notebook for the full example
The burden of solving what "distance" means will already have to be solved for you to run a clustering algorithm.  It will still be up to you to pick off what distance means an outlier.  In this example, I just picked the N most distant data point, though you'll probably want to pick any number of data points over a certain number of standard deviations from a center.
Answer: Perhaps you could cluster the items, then those items with the furthest distance from the midpoint of any cluster would be candidates for outliers.


Load Visual Composer on Every Page (AJAX Setup)

Question: I am using a custom WordPress theme that uses AJAX to load pages. As you can imagine this can create an instance where the site loads to a page that does not use Visual Composer (VC) and then part loads another page that does us VC, since the ready load didn't require the resources.
So far the only solutions I've thought of are using VC on every page (that doesn't work so great for Posts and custom post types) or adding a VC page to the footer (untested).
I looked deeper into the plugins code and found wp_enqueue_script() is called across many files from what looks to be logic calling the correct extension/add-ons to VC as needed, make perfect sense.
My though is that it would be possible to use PHP to solve this issue, to call just the core requirements of VC, since no galleries or anything special will be used.
Does anyone know how to force VC to load resources to every page or have any experience with this? Thank you!
Comment: Did you ever figure this out?
Answer: From what you had said I realised that this needed to be called:
wp_enqueue_script( 'wpb_composer_front_js' );
wp_enqueue_style( 'js_composer_front' );
wp_enqueue_style( 'js_composer_custom_css' );

So I ended up adding something like this in functions.php in my template:
add_action( 'wp_enqueue_scripts', 'add_theme_stylesheet' );

function add_theme_stylesheet() {
    wp_enqueue_script( 'wpb_composer_front_js' );
    wp_enqueue_style( 'js_composer_front' );
    wp_enqueue_style( 'js_composer_custom_css' );
}

Answer: WPbakery (authors of VC) explained how to do this.
You have to call a bunch of VC functions in your theme's function file, but couldn't say with absolute certainty.
I haven't tried this method (I'm using Mark Aroni's method above, because I don't need ALL VC stuff on every page, just the CSS/JS), but here's what they say...
vc_twitterBehaviour();
vc_toggleBehaviour();
vc_tabsBehaviour();
vc_accordionBehaviour();
vc_teaserGrid();
vc_carouselBehaviour();
vc_slidersBehaviour();
vc_prettyPhoto();
vc_googleplus();
vc_pinterest();

Comment: $("[data-vc-grid-settings]").vcGrid() did it for me (inizialize post grid after ajax page load)


D3 within an AngularJS app

Question: I'm trying to create my first app with AngularJS.  It looks neat, but there's a lot of abstraction, and I'm just curious if anyone has advice on the most idiomatic way to use the angular methodology to update visuals created with d3js.
Thanks,
bp
Answer: In order to make angular and other frameworks play nice is to wrap the "other" frameworks using directives.
http://docs.angularjs.org/guide/directive
The thing that you want to do is to tell angular when data has been updated by the "other" frameworks. If angular doesn't need to know, then your task is simpler.
Here is an example that works with SVG, its awesome
http://sullerandras.github.com/SVG-Sequence-Diagram/
Here is an example that wraps TinyMCE
http://jsfiddle.net/programmieraffe/kjsEV/
Answer: There is also the possibility to insert the AngularJS handle bar syntax directly into the d3 generated elements:
var containerDiv = d3.select(targetCSSSelectorForADiv);
var svgG = containerDiv
                                .append("svg")
                                .attr("width", width + margin.left + margin.right)
                                .attr("height", height + margin.top + margin.bottom)
                                .append("g")
                                .attr("transform", "translate(" + margin.left + "," + margin.top + ")")

 svgG.selectAll(".tempclass").data(scope.circles).enter()
                                .append("circle")
                                .attr("class", "tempclass")
                                .attr("cx", function (d, i) { return "{{circles[" + i + "].cx}}" })
                                .attr("cy", function (d, i) { return "{{circles[" + i + "].cy}}" })
                                .attr("r", function (d, i) { return "{{circles[" + i + "].radius}}" })
                                .attr("ng-style", function (d, i)
                                {
                                    return "{fill: circles[" + i + "].circolor"
                                        + ", opacity: circles[" + i + "].opa"
                                        + ", 'stroke-width': 4*circles[" + i + "].opa"
                                        + ", stroke: 'red' }";
                                });

Please note the following things: the scope is in-fact the angular scope object passed down from the directive to the rendering function. Setting the style of an element to an "{{...}}" expression will not work so I am using the "ng-style" attribute here.
However there is one more trick: You need to tell Angular to look at the dynamically generated DOM elements and wire up the data binding, I know now of two ways of doing this:
//the target div is the one with the angular ng-controller attribute
//this you can call at the end of the d3 rendering call from within the render function
angular.bootstrap(document.getElementById("d3ContainerDivID"), ['d3App']);

the other way is this:
//and this could be called from the directive that triggered the rendering or
//some other place that could have the angular $compile service injected
$compile(document.getElementById("d3ContainerDivID"))(scope);

Now you can change your scope members and they will be directly updated to your d3 elements, in this case the svg circles. In the angular controller (which gets instantiated before the directive fires that draws the d3 objects).
    $scope.circles = [];
    for (var i = 0; i < 50; i++)
    {
        $scope.circles.push(new Circle());
    }
    setInterval(function ()
    {
        $scope.circles.forEach(function (d, i) { $scope.circles[i] = new Circle(); });
        $scope.$digest();
    }, 2000);

Please note the $digest call, which tells angular to digest the changed scope; this will change the values on the svg circle elements. For anything like animations and such, d3 is now not responsible anymore and one would have to implement manually or use a different pattern.
Answer: You can also follow along with this tutorial/screencast to see how to use D3 with angular.
It's a bit different, because it utilizes a wrapper library around d3 called rickshaw, which provides some graphing specific stuff, but the approach is exactly the same:
http://tagtree.tv/d3-with-rickshaw-and-angular
Answer: If we use d3 inside a directive to generate elements with other Angular directives (as I think you will find is quite a common requirement) you can call $compile on the end of the UPDATE phase of the rendering process with the call() method. Like this (assuming we're rendering a bunch of circles):
mySvg.selectAll("circle")
                .data(scope.nodes)
                .enter()
                .append("circle")
                .attr("someDirective")
                .call(function(){
                    $compile(this[0].parentNode)(scope);
                });

D3 within an AngularJS app


How do I invite my Facebook friends to join Google+?

Question: I would like to know if there is a way to automatically invite my Facebook contacts to join Google+.
Answer: Here's a workaround for inviting all of your Facebook friends to Google+
http://www.zdnet.com/blog/weblife/invite-your-entire-facebook-graph-into-google-plus/2124
The steps are basically:

Create a Yahoo! account and import your Facebook friends as contacts (you can do this through Yahoo)
Go to your Google+ page
Under "Circles" click on "Find People" at the top
Click "All suggestions" to open the drop down (also at the top)
Select Yahoo! and follow the instructions to import the contact list from the Yahoo! account in Step 1.

You'll need to do this Yahoo! intermediary step because Google+ cannot access your Facebook friends list.
Answer: Inviting them is easy, but forcing them to use Google+ is nearly impossible.
The easiest way is suggested by @OnenOnlyWalter
But from my experience most of the Facebook users rarely open their email account and most of them won't see your email invitation.
Another way to do it is invite them directly on Facebook by setting up an event and then use a 'Select all friends script..' to invite all your friends to the event. Done, they all will get notification about your event, and maybe they will join G+ too, hope so :)


Changing languages while running iPad app

Question: Is there a way to apply the selected language in your iPad app?
Setting the langauge is not the problem, but applying it to the screens is difficult.
The project I've made is a master/detail storyboard app, so on both master and detail the choosen language should be applied. The languages are set via AppleLanguages.
Answer: ===================EDIT, infos from APPLE============================================
In general, you should not change the iOS system language (via use of the AppleLanguages pref key) from within your application. This goes against the basic iOS user model for switching languages in the Settings app, and also uses a preference key that is not documented, meaning that at some point in the future, the key name could change, which would break your application.
If you want to switch languages in your application, you can do so via manually loading resource files in your bundle. You can use NSBundle:pathForResource:ofType:inDirectory:forLocalization: for this purpose, but keep in mind that your application would be responsible for all loading of localized data.
Regarding the exit(0) question, Apple DTS cannot comment on the app approval process. You should contact firstname.lastname@example.com to get an answer for this question.
http://aggressive-mediocrity.blogspot.in/2010/03/custom-localization-system-for-your.html
This link may help you i guess. Thanks!
Comment: Thanks for the link, it really helped me out!


Should I use FxCop and why?

Question: I'm working on a project in C# .net and WPF. We're using StyleCop to help bring a consistent style to the project, and after disabling some rules we're quite satisfied with it. However, I've heard people talk about FxCop, and that this would bring value to the project too. From what I understand this is more on a code structure base..?
Could someone give me any specific reasons why we should start using FxCop? What are the most important things FxCop will ensure that we do correctly?
Comment: Also look at http://stackoverflow.com/questions/1867867
Answer: It detects some useful conditions and can improve your coding style. By style I don't just mean bracket placement and so on. But issues such as abstract classes having public constructors and many other specalist cases. It's little things like this it picks up, and after a while you do them automatically.
Starting a new project with it is easy, using it with an existing project is harder as it will detect more issues. It's worth noting you will have to configure FxCop at first, as it will point out trivial things which may not be of concern.
Comment: Are all rules active at first, and then you can disable those you don't want? Like StyleCop..?
Answer: FxCop works on compiled binaries, while StyleCop analyzes the source code directly.
Maybe you could to use it to check if a compiled assembly, as that you send to your QA/production environment, matches your company polices, if someone tries to bypass your StyleCop rules.
Comment: Yes, because different information is available; while some rule set is common to both tools, you can get some information from source code, and other informations can only be get from assmblies.
Comment: Are you saying it uses many of the same rules as StyleCop, but checks this on compiled binaries instead?
Comment: I mean; I though FxCop did check some completely different rules too.
Answer: I use it, in combination with CC.NET.
That means, every time CC.NET build my project, it also performs an FxCop analysis, which can be quite handy, as it:

detects unused variables
detects unused methods
gives you an indication whether you've mispelled a word
helps you remind that you should pass a formatprovider to a call to ToString() f.i.

In short: it helps you to improve the quality of your code.

Should I use FxCop and why?


How can I get this gradient on a semi circle

Question: I have made this smooth gradient in Photoshop, and trying to get the same result in Blender.
I noticed that I'm getting dark spots on my gradient transition on my shape (Dark spots in red circle). And also in the centre where there is a transition, I can see some white colour I used an empty object to rotate the gradient texture, but Its not exactly like PS gradient. How can I get it more accurate?
Comment: You mean you want a gradient along the arch (bottom left to middle top to bottom right)?
Comment: For the dark spots: it looks like you are having emission in your material and _EEVEE_ with _Bloom_ enabled etc., all these things might of course change the appearance of your colors and have an effect on the transition between darker and brighter areas. It also seems as if you have brought the outer sliders too far in.
Answer: The "some white color" is the transition from purple to green in the center (it's more of a greenish grey actually), because those sliders are close to each other on your Color Ramp, but since the interpolation is not set to constant there will always be a slight transition between different colors, no matter how close you put the sliders together.
So why don't you just use the Color Ramp like in Photoshop? There you have the bright parts on the outside - so they meet without a transition between them. You only have to adjust the position of the dark sliders probably different because the gradient interpolation is linear in Blender and not like in Photoshop. (Oh, and I flipped the colors, but that might depend on the orientation of your circle and empty if this is necessary or not. But the gradients are different in both programs, PS starts on the right with 0 and goes clockwise to 1 while Blender starts on the left with 0 and goes counter-clockwise to 1.)
You are also using the Mapping node incorrectly (or unnecessarily complicated) and actually, you do not need it in this case. Just put an empty where you want the center of the radial gradient to be, then rotate it by 90° or -90° on the according axis (in my case it was -90° on Z because I created this circle looking top down), maybe adjust the sliders more to your liking and you're good to go:

By the way, when using a Mapping node the empty is not necessary, in this case (when using the Object texture coordinates without selecting a separate object) the origin of the circle is the origin of the coordinates and then it is just a matter of getting the right position and rotation.
Comment: Gordon, yours is far cleaner and I missed details that you explain very well. That's why it was better to delete it.
Comment: Much appreciated Gordon. Sometimes the wrong tutorials can lead to misleading node set up, that's why I come to BSE, most trusted people to help me with my inquiries. Cheers!
Comment: @blenderbreath Another tip for the colors, of course Blender's _Color Management_ changes the look of them as well, but as a good starting point it is always best to use the hex values in Photoshop to transfer them into Blender, do not use HSB or RGB values and convert them into the 0 to 1 range.
Comment: @lemon You didn't have to delete your answer - with a bit tweaking this would work as well, you just had the _Color Ramp_ built up like in the question, although the Photoshop gradient is a different one which is the biggest part of the problem.
Comment: @blenderbreath I've added a slightly edited approach at the end without the need of an  extra empty, although an empty can sometimes be useful if you want external control over the coordinates.


Security for website admin panel

Question: I am creating an admin panel for my website. I am coding the entire website by myself. What are some essential security features that I should implement so that only I can access the admin panel and no one else?
Comment: Your comment below mentions "what about a password?". If that's where you are in your design, then perhaps this is not the best site for you. The list of things you should consider, including passwords, is too long for any one answer to list. If you can refine your question to something specific, we might be better able to help. And you might want to consider looking up security design patterns and using established libraries instead of coding every single thing yourself.
Comment: Hi, I get your point. I am actually asking for a list of to-dos to ensure that my admin panel is safe.
Comment: There is no "to do list". I'm saying that you need to look at design patterns based on your context. It's like asking "what do I need to do to be healthy?". It's not answerable. Lots of endless possible lists. No answers.
Comment: Right. Got you.
Answer: The most powerful and simplest security you could add is called mTLS (mutual TLS) combined with Let's Encrypt for a normal certificate.
With mTLS you create a client side certificate that must be used with each connection initiated, using cryptographicly sound keys.
If you want to learn more about it smallstep have a open source ca and other tools to manage these things.
There are other ways but most offer less security for more work.
Finally any website must be secure from the standard OWASP list like XSS, sql injection l, remote code execution… etc
Comment: @AD-1 all solutions are complicated. But there are good resources to help you like https://smallstep.com/hello-mtls setting up something else means you have to verify it works as intended, in all cases… which is hard.
Comment: Hi, thx for your answer. However, is there something which would be less complicated to setup? Something like requiring a password, etc.? I am still a noob when it comes to SSL and TLS, so I would like to use something which is less complicated.
Comment: I got your point.

Security for website admin panel


Who's following up our flags?

Question: I flagged a post two days ago for roll-back, but no one has reviewed it yet. Because I used the "it needs ♦ moderator attention > other" option, none of our three 2K+ users can review it. Who follows up on our flags before we appoint moderators pro tempore?
Answer: The Community Team (of which I am a member) generally fills the role of community moderator until pro tem moderators can be selected for your site.
We had a Community Team summit in NYC last week, so we've all been playing a bit of catch-up to pick up any tasks that might have fallen behind in our absence. Everything is just about back to normal, so hopefully there are few-if-any outstanding issues remaining.
Answer: The Stack Exchange community team keeps an eye on new beta sites until moderators are selected. Since they are essentially diamond moderators, they can review those flags.
If you click the number beside the "helpful flags" in your profile, you can see the pending flags and whether or not they have been declined or marked as helpful. Sometimes moderators will mark a flag as helpful even if they don't take action.
This highlights the reason why it's good to use the specific flag reasons  whenever possible. For instance, if you're flagging a post as "not an answer", or "very low quality", be sure to use those flag reasons instead so that they'll cycle through to the 2K users. Likewise, flagging as "off-topic" will also push it to 2K users.
If explanation is needed, I like to leave it in the form of a helpful comment to the poster, effectively killing 2 birds with one stone, so to speak, and I only use the "other" option when I know that the action requires someone with a diamond to intervene.
Comment: Yes, it still reads "1 waiting for review". The entry does not say "helpful" or "declined" beside it. I used the "other" option because it does not fit any other flag descriptions. I basically was requesting a rollback because I don't yet have 1K. I've never seen it take this long to review a flag, so I posted here.
Comment: If it's your post, you should be able to roll it back. If not, you could always leave a comment suggesting it be rolled back. Comments reach the widest audience possible, and give the community of 750 rep users a chance to resolve the issue, effectively removing the need for a moderator to get involved. With that said, if there's a *serious* problem with the post, where serious means it's actively harmful and may drive people away or offend them, then I'd flag it; otherwise, I'd either suggest an edit or leave a comment.
Answer: Should this show up as a pending item when I click "review?" I don't keep that window open all the time, but I do check it.
Comment: I think it has to go to a moderator, not simply a 'high-rep' user.
Comment: @ColeValleyGirl and GeneJ, there are some flags that you can see as 2K users, but you have to go to [tools](http://genealogy.stackexchange.com/tools) to see them. I [installed a Userscript](http://meta.stackexchange.com/a/66724/155826) that puts the flags in the toolbar, like it does for moderators, so that I can help out on sites where I have the permissions. It's awesome! ;)

Who's following up our flags?


Is there a standard way of singing over ii-V-I in jazz?

Question: I am new to music theory especially jazz and blues. I have since learned about writing lyrics or singing over a traditional 12 bar blues progression using AAB form, thus repeating the first line (A) and finally responding to it (B). What I wanted to find out is, is there any similar or standard approach to writing lyrics and singing over ii-V-I jazz progression that one can use as a guideline?
Comment: What prevents you from listing a few instances of ii-V-I and looking if you can find any similarities?
Comment: No standard approach for singing or soloing. A plethora of different ideas keeps getting added to.
Comment: The real question would be is there a standard way to harmonize melodies with ii-V-I chord sequence.  You melody is more important.  And these standard changes are replaceable with alternates.
Comment: **Melody** should be your guide. Start with your melody. ii-V-I etc just are methods of harmonization.
Comment: I think your question may need clarification. Since your question mentions the blues, perhaps you are asking what kinds of melodic ideas and lyrical motifs are common on the turnaround (bars 9 and 10) of a 12-bar blues form. Or, perhaps you are asking what melody notes are compatible with the ii and V chords in any form. Note that writing lyrics, creating a melody, and singing it are three distinct (if related) tasks.
Comment: @Max that's not what I am asking for. What I was asking for is I thought there was a standard approach or guideline to singing jazz just like there's a guideline to singing the blues; (A) sing first line, (A') repeat first line, (B) respond to it.
Answer: A ii-V-I chord progression is not unique to Jazz. It can be found in Renaissance music of the 1400's and all forms since. The ii chord is simply the "V of V" (the "five of Five") so in essence the ii-V bit functions the same harmonically as the V-I bit. Many songs even use a Major II chord giving you II-V-I (or II7-V7-I∆).
One simple approach is to play (or sing) the same thing over both bits. In other words, whatever you'd sing at the end of your 12-Bar Blues progression (at the turnaround) is what you'd sing over a ii-V portion except transposed to the notes of those chords.
Another popular practice is to do an ascending arpeggio for the ii chord, then step to a descending arpeggio for the V chord, and step to a resolved note of the I chord:
Dm7 = D F A C (1/2 step down to B)
G7 = B G F D (whole step either direction to C or E)
C∆ = C (follows direction of descending G arpeggio) or E (more colorful choice; highlights the Major quality of the chord)
There is no "correct" or "best" way to sing or otherwise play a melody over a ii-V-I chord progression but there are definitely note choices that will sound "odd" or "wrong." The trick is discovering what sounds "good" to your ears, and the best way for that is to listen to other players and make a note of what they're doing when you like it.
Answer:
...traditional 12 bar blues progression using AAB form...

In that context AAB describes the entire 12 bar form. AAB is a kind of song form description.
Using a common 12 bar example:

A'  = | I | IV | I | I7 |
A'' = | IV| IV | I | I  |
B   = | V | IV | I | V  |

...so the A and B represent entire phrases.

...similar or standard approach to writing lyrics and singing over ii-V-I jazz progression...

You need to be aware of structural levels. You can look at things at increasingly larger levels. From the small, note to note or bar to bar levels to the large phrase to phrase level. My understanding from how you worded the question is you are looking at the phrase level.
ii-V-I is not analogous to AAB. While A and B are 4 bar phrases the ii and V and I are only single chords. ii-V-I might be two, three, or four bars, etc.
ii-V-I does not describe the phrase or lyrical structure of a jazz song.
However, one thing that may help is to describe one common jazz song form: the 32 bar song form AABA.
Unlike the A and B of 12 bar blues with 4 bar lengths in 32 bar song form the A and B are 8 bars in length.
There is not a set chord progression in 32 bar song form, but there is a fairly standard pairing of phrase endings.

(A starts with initial key)
A'  = |: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8  (ending on dominant) |
A'' = |  9 | 10| 11| 12| 13| 14| 15| 16 (ending on tonic)   :||
(B starts in new key)
B   = |: 17| 18| 19| 20| 21| 22| 23| 24 (end on dom. initial key)|
A'' = |  25| 26| 27| 28| 29| 30| 31| 32 (ending on tonic)   :||

Within those bars you may have ii-V-I or other progressions, but there is no set progression like you get in 12 bar blues.
From a melodic point of view the A parts are often very similar with just the phrase endings being varied. The B part will melodically contrast with A introducing new melodic ideas.
Lyrically it makes sense the A parts could repeat some lines and B would be new lines, but there is no set pattern like the repeated A line in 12 bar blues.
A very well known 32 bar song form is Over the Rainbow.
There is not one definitive jazz song form, but if AAB is the definitive song form of blues, the 32 bar song form AABA is at least one of the most important song forms in jazz.
Answer: I would say you are comparing apples to oranges.  The Blues is an entire song structure or architecture whereas the ii-V-I is a small progression which is often used in the larger architecture.  And I'm not convinced of your mapping of the blues as AAB, but that doesn't really affect the discussion.  You can dissect the blues further and look and individual changes within the song.
A standard simple blues is:
|  I  | IV  |  I  |  I  |
| IV  | IV  |  I  |  I  |
|  V  | IV  |  I  |  I  |
The last line is kind of bland and many players add complexity here.  One thing is that you don't see a V leading back to the beginning (a "turn around").  The addition of a turn around in the last line can be as simple as adding a V7 on the last beat of the last measure.  Or it can be as complex as a full cycle extension with iii-vi-ii-V-I lasting two or more bars.  Especially in Jazz versions of the Blues.
That all being said I would say that soloing over the ii-V-I is similar to soloing over the I-IV in the first half of the first line of the 12 bar blues.  A ii-V-I is not a song structure but momentary comment within a book.  If you analyze real book tunes you will find the ii-V and its various extensions sprinkled all over each and every tune, from The Blues to Rhythm Changes.
As an other example consider Rhythm changes.  It is an A A B A pattern tune where the A section is similar to Heart and Soul, and the B section is the circle of 4ths.
| I, vii | ii, V7 | I, vi | ii, V7 |
| v, I7 | IV, iv | I, vi | ii, V7 |
| I, vii | ii, V7 | I, vi | ii, V7 |
| v, I7 | IV, iv | I, vi | ii, V7 |
| III7 | III7 | VI7 | VI7 |
| II7 | II7 | V7 | V7 |
| I, vii | ii, V7 | I, vi | ii, V7 |
| v, I7 | IV, iv | I, vi | ii, V7 |
This is more like your Blues and as you can see ii->V's all over the place.
As yet another example look as How High The Moon, or Ornithology (similar changes).  You have a cascade of whole step key changes via ii-->V7-->I from G to F to Eb, then the pattern changes.
So, my point is that you don't approach a ii-V as you would a song structure.  In rhythm changes you could apply the Blues logic and say whatever you play in the first A section you repeat, do something new in the B section, then coming back to the A section play a modified version of what you played in the A section.  It's like poetry.
Now, as for how to solo over a ii-V that's a different story.  The ii-V-I and very similar to a IV-V-I since the ii and the IV and related to each other (in fact they are legitimate chord substitutes for each other).  So if you have IV-V-I ideas you can try them out over a ii-V-I and modify as your ear tells you to.  There are countless CD+book sets for practicing ii-V solo ideas and a variety of methods ranging from "follow the modes for each chord and emphasize the 3rd and 7th on strong beats" to "just play a blues lick over it and force it to work".  It would take too much time to explain them all and they are not all worth your time imo.  One thing to consider is that the ii-V-I should be thought of a a unit of musical expression rather than a ii, then a V, then finally a I.  As such you are better off constructing soulful melodic lines with interesting phrasing and playing them over ii-V-I recordings as a test.  This is an approach taught by Jerry Coker Patterns for Jazz.  Make it personal from the start and you'll develop your own unique voice.  Follow an algorithm and people will not likely remember you took a solo.
Keep a journal of YOUR licks and note the ones that work and those that don't.  You can start by finding a great player and transcribing some of there solos.  Wes Montgomery on The Way You Look Tonight, Kenny Burrell on All of Me, Charlie Parker on Ornithology.  Anybody on Oleo.  Wes has a Blues called West Coast Blues that is 12 bars, and anything but "standard".  It has chromatic ii-V's.  Goodbye Porkpie Hat by Mingus is also a 12 bar blues but hard to recognize with so many changes (the I, IV and V are in the right place).  You can use what you know in the blues to branch out into Jazz ii-V by  playing over these songs.
Just to add to this.  I was assuming you were talking about soloing, scat for example.  If you are composing then you might be doing things backwards.  One typically writes the melody then finds chords that fit.  There is nothing wrong with saying at the start "I want to write a tune that follows Rhythm Changes" but don't feel constrained by the set of chords I posted, or any other.  Follow the A A B A.  If your melody deviates you can find suitable chords to replace the ones that are there.


Can I present a powerpoint presentation with sound?

Question: It is possible to demonstrate .PPT with audio under Ubuntu?
example such of .ppt - it is short tales for kids
Answer: It should* work, since Ubuntu's Open Office (and the new libre office) have multimedia support. If you have problems with the audio you should add the details to your question.
After trying to playback this file I found a number of problems. Firstly the slide transitions were not actually set. Secondly the media file plays if I manually play it in the editor, but not if I start the slide show (not sure why, but it doesn't load).
I would suggest editing the slideshow in OpenOffice and adding buttons that play back the audio on a click, as well as actually adding slide transition properties (otherwise it will just change the slides rapidly).
BTW - You should not be getting this problem, try recreating the slide show as an impress slide show (just reuse the images etc) and add the details of if it works then to your question.
 - *(I say should instead of will because your question doesn't have the detail of whether you have tried it or not)
Comment: yes, You are right, I try open attached document but I don't hear any sounds and time interval between slides too shorts... You can try by yourself (see link above)
Comment: ahh Okay I'll test it and see if there is something we are missing :P


Video Streaming in HTML5

Question: How does one go about streaming video in HTML5 ? I can go with using a single browser of the latest version if I have to.I need to be able to start playing from any location of the movie even if the entire video has not been loaded by the browser.
WebRTC ?
I've already seen this question and no one has answered.

Does not allow the viewer to skip to the middle of a video in any
  browser. They must watch the video straight through start to finish,
  which is not ideal.

This is the main point for streaming.
Answer: Currently if you want to use pure HTML5 and work cross-browser you are limited to progressive streaming with the <video> element.
While that still does allow the user to skip ahead via the scrubber or programatically by setting the .currentTime there will still be some buffering while the browser re-loads enough content to be comfortable playing smoothly.
Solutions like Smooth Streaming, HLS do not work across browsers today so you would require a Flash or Silverlight plugin, though with MPEG-DASH being recognized by the W3C there is some hope for the future as samples like this demonstrate http://dash-mse-test.appspot.com/release-notes.html
For today however if you want to stick with an HTML5 solution and you have source in a format the works with the browser then you should be fine
Answer: Chrome has implemented the Media Source API in the mean time. Hoping the rest will follow.
http://www.w3.org/TR/media-source/
Abstract
This specification extends HTMLMediaElement to allow JavaScript to generate media streams for playback. Allowing JavaScript to generate streams facilitates a variety of use cases like adaptive streaming and time shifting live streams.

Video Streaming in HTML5


email sender authentication with Postfix

Question: I have setup PostFix for receiving emails only.
I want to authenticate the received emails against their sender email addresses by using SPF or DKIM.
Is there a good java plugin available for this? or do i need to write my own in java (other preferences C, C ++) ,please reply with relevant references.
Thanks in advance
Ashish
Answer: Unfortunately Postfix is not one of the mail servers that suppose SPF natively, but there are some extensions and patches for this, which can be found at http://www.openspf.org/Implementations.
While a java library is available for SPF, I'm not aware of any plugins or patches that are currently using it.
Answer: The solution I followed is as:
I attached the DKIM and SenderID milters available from Postfix add-ons list with my Postfix e-mail server.
Since these milters can be configured to add e-mail headers in the received mails about their results, so I wrote a custom mail-filter using jilter api (java mail filter api), parsed the mail headers and hence I was able to determine and act about the authentication results of SPF and SenderID according to my custom logic.


Elastic potential energy in vertical simple harmonic motion

Question: When we calculate gravitational potential energy, we use a reference point as a zero-line. That is, we set the gravitational potential energy to zero at a specific point (usually the ground). Now, does the same principle apply to elastic potential energy in vertical harmonic motion? Can we set the elastic potential energy to zero at some point, similiar to gravitational potential energy?
Answer: Yes, we usually choose the elastic potential energy to be zero at $x=0$.
The elastic potential energy is:
$$E_{p}=\frac{1}{2}kx^2+C$$
The absolute value of the potential energy is not important, only the change in potential energy has physical significance. Thus, we are free to give this constant any values we want.
At $x=0$ the potential energy is $C$. It is convenient for us to just choose this constant to be zero.
Another example is electrostatic potential energy. In this case, we set potential energy to be zero at infinity (when the distance between changes tends to $r\rightarrow\infty$).
Comment: The one rule you must follow is that you do not change the zero point after it has been set for the problem.  The reference situation that defines zero potential energy must remain so throughout the problem.


Better opening than Ruy Lopez Exchange?

Question: I currently use the Ruy Lopez Exchange (1.e4 e5 2.Nf3 Nc6 3.Bb5 a6 4.Bxc6). Is there a simpler and/or better opening to use instead?
Comment: Consider that an opening that is "simpler" for you is also "simpler" for your opponent. The question is "how hard do you want to fight?"
Answer: "Simpler" is somewhat subjective. You could argue that learning a system like the King's Indian Attack is simpler because you can play it irrespective of what black plays, while playing the Ruy Lopez Exchange requires your opponent to cooperate to some extent as at any move there are perfectly fine alternatives.
The Ruy Lopez Exchange variation is not the most popular line at the highest level, but there is nothing wrong with it. If you are happy with it and like the positions you get out of it, there is no reason to change.
If you are not happy with it, you could analyze yourself, what kind of positions you like. Perhaps compare positions you get out of different openings (e.g. around move 15) and see which you like best.
Answer: An opening choice will be always subjective. Nevertheless, I will give you two pieces of advice:

If you asked for simpler opening, Giuoco Piano (aka Italian opening with d3) comes to my mind. It has some similarities with Ruy Lopez and the moves are easy to learn, but strategically it is not as easy as it looks.
If you asked for better opening (objectively), I would vote for "classical" Ruy Lopez (I mean without exchange on c6). But I understand that it is not an easy opening.

If you don't feel like having hours for study of the openings, I would go for Giuoco Piano, but I would alternate it with your Ruy Lopez Exchange variation.
Answer: The Scotch Game (1. e4 e5 2. Nf3 Nc6 3. d4 exd4 4. Nxd4) gave me a boost when I saw all the Ruy Lopez theory I was up against and didn't want to learn.
Now Black has a very sharp line (...Qh4) where White can get a great initiative for the e4-pawn, and you don't have to study much. The 4. ...Nf6 line is very sharp, but again, you don't have to worry about nearly as many positional concepts as in the Ruy Lopez. The Ruy is a good opening, but the Scotch has the advantage of being open and also of not letting Black play their pet move against the Ruy. There's less theory on the Scotch, but because two pawns are swapped early, there are fewer complex positional principles. In fact, in many lines, Black needs to watch out for an early Nb5.
The main line is ...Bc5 5. Be3 Qf6 6. c3. White can play O-o, f4, e5 with a good game. The Scotch felt intuitive to me, and it may to you, too. I always just sort got my pieces out there and had a comfortable game. Your mileage may vary, but the Scotch isn't as heavily analyzed/played as the Ruy, so you may be able to learn more from it.
Answer: By reading your article, I think you have a passion to play e5 against, and you want simpler opening, so you can open with e5 and Nf6 (Petrov Defence), it is so solid (I played some exchange variation of Ruy Lopez, with move f6, but it is so theoretical line). And you can also play French Defence (e6) it offers a quiet play and a positional one (and theoretical positional attacks, but some of the human players lose due to some central attacks by f6 and knight attacks). 1.opening in Petrov variation, 2.&3. French Defence   This is the opening of the Petrov Defence, it is so solid only can be avoided early by Bishop's opening, which is and Anti-Petrov Defence or Anti-Russian opening
]3

Better opening than Ruy Lopez Exchange?


warranty on tablets/ipads bought from Malaysia

Question: My friend in Malaysia is visiting me in Australia and is bringing me a Apple 64gb tablet as a gift. As I have been given conflicting answers to this question; Will the warranty on the Apple tablet be honoured in Sydney Australia or is it only the iPad that is not under warranty in Australia.
Answer: Yes, the iPad is in warranty, only iPhones have a country specific warranty, rest all Apple products have international warranty.
UPDATE
Apple has launched international warranty for iPhones. Details can be checked here.
Comment: Could you please provide a source for that information? (about the international warranty) thanks.
Comment: As I travel a lot, I have personally dealt with warranty issues with my iPad, iPod and iPhone, for which only the warranty on my iPhone was not support, rest all the other products were covered, thus on asking the Apple Care Representative I was told that only iPhones have a country specific warranty.


After creating the first list with choice fields I cannot lookup those fields - how do I keep data integrity and still link?

Question: I have seen older answers that I can have a calculated field for the lookup but that seems silly and redundant.  I have 3 choice fields I would have to do that for for 100s of records.  Is that really my only option?  I would have thought this feature would be available?
Answer: I assume you want to use the lookup column to link to a list with a few hundred records. For such situation, a common option is to use the JS link and make users be able to search for the record they want. Here are examples you can have a check:
https://ravisoftltd.wordpress.com/2014/05/05/convert-lookup-field-to-token-input-with-jslink/
https://prasadpathak.wordpress.com/2015/03/26/sharepoint-2013-getting-lookup-column-values-in-jslink/


Repeat operation if signal is received

Question: I have a data synchronisation operation that is observing a database. This is a fairly key piece of code for the system, so I want to make sure I handle the concurrency correctly.
The problem

The operation manipulates sync state flags in the database and should
have zero concurrency
The operation must be cancellable
The operation should repeat an additional time if signals are received while it is running

Behavior

The service is started in response to changes to the underlying data
The service is started in response to changes in connectivity
The service is started periodically

Current design
    bool syncRequired = false;

    private async void StartSynchronisation()
    {
        // the cancellation token operates as the flag to indicate if the operation is running
        if (this.cancellationTokenSource != null)
        {
            syncRequired = true;
            return;
        }

        try
        {
            this.cancellationTokenSource = new System.Threading.CancellationTokenSource();

            // stop the time that periodically prompt the operation
            this.synchronisationTimer.Stop();

            bool dataWasSynchronised = false;

            // Repeated synchronisation and replication until no updates are made
            do
            {
                syncRequired = false;
                // Only attempt synchronisation if the service is actually available
                if (this.connectivityMonitor.IsServiceAvailable)
                {
                    dataWasSynchronised = await DoSynchronisation().ConfiguredAwait(false);
                }
            }
            while (dataWasSynchronised || syncRequired );
        }
        catch (Exception ex)
        {
            // handle exception using injected policy handler
        }
        finally
        {
            this.synchronisationTimer.Start();
            this.cancellationTokenSource.Dispose();
            this.cancellationTokenSource = null;
        }
    }

I bring you this code because it is missing any thread synchronisation and it probably needs it. It currently relies on the atomicity of read/writes to a reference (cancellationTokenSource) and bool (syncRequired) but this doesn't cover anything really. As a critical piece of code, I don't want to miss an event and need to wait for the next timer interval to start the operation. It will continue working, but our test department won't like it. My issue is, thread concurrency isn't my strongest area and I'm already burned out on this feature - I'm struggling to reason about it without tying my head in knots.
What synchronisation primitives do I need to make sure all events are handled as intended? Is there a more favourable pattern using concurrent queues or reactive extensions that I can throw in here? I have been considering some use of Reactive Extension's BehaviorSubject<T>.
Comment: Take a look at Example#2 https://msdn.microsoft.com/en-us/library/aa645740(v=vs.71).aspx#vcwlkthreadingtutorialexample2synchronizing -- I think it might provide you with a similiar approach as what @eurotrash suggested in his answer using locks.
Comment: But I don't see that it is cancelable and you have no lock on syncRequired.   There is not really enough to go on here but from what I see probably not an optimal design.
Answer: My understanding:
The first if statement is meant to check whether a thread is already executing the loop by checking whether cancellationTokenSource is null; if it's not null, then signal that a sync is required by setting syncRequired to true and returning. The thread executing the loop will then run another loop due to the while (dataWasSynchronised || syncRequired ) condition.
If cancellationTokenSource is null, then the sync loop isn't being executed, so this thread goes on to do just that.

private async void StartSynchronisation()
{
    // the cancellation token operates as the flag to indicate if the operation is running
    if (this.cancellationTokenSource != null)
    {
        syncRequired = true;
        return;
    }

    try
    {
        this.cancellationTokenSource = new System.Threading.CancellationTokenSource();

So the first problem is that that check (the first if statement) isn't synchronised. One thread can see cancellationTokenSource is null and move on to execute the sync loop, first setting cancellationTokenSource to a new object. Before it assigns the new object - say, after setting syncRequired to true - there's a context switch, and another thread executes the same code. It too sees that cancellationTokenSource is null, sets syncRequired to true, assigns a new object to cancellationTokenSource, and starts running the loop. Then there's another context switch and our original thread is back again, assigns a new object to cancellationTokenSource, and starts executing the loop as well. Voila, you've now violated your first requirement of having zero concurrency.
The fix is simple: the check, as well as any objects being altered to affect the outcome of the check, must be synchronised.
A basic way to achieve this:
class MyClass
{
    private readonly object syncLock = new object();
    private volatile bool syncRequired = false;
    private volatile bool syncRunning = false;

    private void MySyncFunc()
    {
        lock (syncLock)
        {
            if (syncRunning)
            {
                syncRequired = true;
                return;
            }

            syncRunning = true;
        }

        while (true)
        {
            syncRequired = false;

            // your sync operations here

            lock (syncLock)
            {
                if (!syncRequired)
                {
                    syncRunning = false;
                    break;
                }
            }
        }
    }
}

I'll quickly point out this isn't the most efficient or pretty, but it's a simple (and hopefully accurate) way to show and do it.
First of all notice you can't even check whether your sync loop is running without getting the lock. So only one thread at a time can check. If a thread determines it isn't running, it sets the value to true (to signal that it's now running) and exits the lock. The second thread that arrived on the scene in the earlier example, if it was context-switched to during that time, would not have been able to proceed because it couldn't get the lock. Once the first thread exits the lock, the second thread gets the lock. Now it sees that syncRunning is true, so it sets syncRequired to true and returns. No sync problems there.
Now let's look at the loop. Nevermind that it's an infinite loop, I just wanted to get the checks out of the loop condition. So first thing it does is set syncRequired to false. This doesn't need to be synchronised because even if another thread had set it to true right before, you're gonna go and do the actual synchronisation right now anyway.
So after your own sync stuff completes, it's time to check whether you can exit the loop or need to repeat it. (I've left out checking the result of your sync operation as it's not relevant to this.) Again you got to get the lock. Why? Because the thread could check syncRequired and see it's false, and move on to set syncRunning = false. But before it's set, context switch, another thread checks and sees that syncRunning == true, so sets syncRequired to true and returns. Meanwhile the first thread continues to set syncRunning to false and returns as well. Now you have syncRequired == true but no thread running the loop. Whoops, you missed an event! Take a look at your original code and you'll see this problem is there, if syncRequired is set to true after the loop exits and before cancellationTokenSource is set to null in the finally block.
So what the code above does instead is it gets a lock on the same object again and checks whether a sync is required. If it is, fine, the lock is exited and the loop starts over. But if it's not, then it sets syncRunning to false before it exits the lock. Since any other thread that wants to check if syncRunning == true has to wait until the lock in the loop is exited, they will see the correct value when they finally do get the lock, because if the first thread will exit the loop, it will set syncRunning to false while it has the lock and before it exits the lock. Whether the next thread gets the lock and checks, it will see that syncRunning == false, and go on to run the loop itself. No more lost events!

Couple other issues:
If you're going to use a member variable in a loop, but not modify its value in the loop (or only ever set it to a single value on each iteration such that there is no apparent point in doing so, even though you know that some other thread can modify the value), then mark it volatile. This will result in the value being read from memory each time, so you pick up changes made from other threads. Otherwise the compiler could optimise the read out of the loop; after all, it's never changing during the lifetime of the loop.
And your code isn't cancellable. Sure you create a CancellationTokenSource, but you never actually use it - hence why I simply substituted it with a bool in my example. What you need to be doing is checking the token each iteration (or possibly pass it to the function being called if that's the part that should allow cancellation of its task, though you'd then have to alter the function to accept and know how to use the token) and seeing whether a cancellation has been requested; then if so, throw a OperationCanceledException (or however you want to abort what's currently running).
Comment: @Gusdor I've never used one before but sure, I guess you could. However you'd have to be very careful. For example what would happen if two threads saw that `syncRunning == false` (because they can read it concurrently)? One goes on to set `syncRunning = true` and run the sync loop, does the next one do the same? If so then it's broken. So you'd then have to protect the write by making it get a write lock, check `syncRunning` again to ensure it hasn't been changed, and if no change then change it. The other thread then gets the write lock, sees that it has changed, releases it and returns.
Comment: Thanks for the feedback. Synclock should be set true before the initial return. I shall edit with that addition and some details of  the call behaviour.
Comment: @Gusdor Have a look again, I think I understand your question better now so I rewrote the answer.
Comment: Beautiful. Thank you. To allow multiple threads to check the status, I guess I'd use a ReadWriterLockSlim.
Comment: @Gusdor Whether it's worth the extra complexity depends on how you use it - for example, are these checks happening at least every 100ms (on average)? If so then it might be worth it. Else I'd stick with standard locks. A bit less inefficient perhaps, but not something that is real-world noticeable unless running at highish frequency. Also iirc locks in recent .NET versions are implemented quite efficiently. Unless you think lock contention is a likely scenario, which it shouldn't be unless these checks are occurring at high frequency, you're probably better off sticking with standard locks.
Comment: I should point out the 100ms average I mentioned is definitely not any sort of rule or guideline, it's a number I picked out of the air as sounding about right. But you get the picture. If you've got 5 threads each getting the lock once per second, and the duration of the lock is incredibly brief because all it does is check and possibly set a primitive value, it would be extremely unlikely to have contention. Whereas if you had 100 threads or were locking much more frequently, then lock contention becomes something to consider.

Repeat operation if signal is received


Rust vs Golang, overall for smart contract development

Question: Assuming I do not know anything about these two languages (rust & go), I know rust is being used to write contracts for solana and I do not have much idea of golang, I am thinking of learning one of these two solana is getting popular these days and I have heard much about golang what should I start, also I already know solidity and use hardhat for ethereum, should I shift to solana, or continue ? Or if there is another good option please guide me through I am very starting of my web3 career. Thanks.
Answer: I would suggest you to concentrate and refine your Solidity knowledge. Conserve your time and energies by keeping them concentrated at your strongest point. You gain more by finding a rich mine and mining it deeper, than by flitting from one shallow mine to another — intensity defeats extensity every time.
Comment: Yeah I was thinking that but also I want to explore more at the same time,  since I do not have any work right now, I am already at advanced level in `solidity` and I am finding it difficult to find a job, so why not try something else.


Can there be a moon of a planet where there is always day even if it is rotating on its axis

Question: Is it possible to have a moon of a planet that is practically day on both the star facing side and the other side, if the planet itself is mostly made of highly reflective surfaces like Silver and Aluminum.
Comment: Just two ideas, you could have the moon rotate with a speed such that it always faces away from the star, having one side colder, with heavy clouds and snow, which would bounce considerable amount of light from the lit part. You could also have the atmosphere bend light to reach more than half of the moon - this actually happens on the Earth, we sunrise and sunset when the Sun is actually still/already below the horizon (it wouldn't be visible if there was no atmosphere). But I don't know how far you can push the idea...
Comment: That could be one  way, I would try to work on that idea as well.
Answer: It's not possible, because there are configurations where part of the moon would not be seeing neither the star nor the planet.
For a reference, look at the diagram of the moon phases

You can see that there is almost always a portion of the moon which is both on the half away from the star and on the half away from the planet. At first quarter and last quarter that correspond to a whole quarter of the moon, at the full moon it would be a whole half moon.
This portion of the moon would therefore receive no light.
That apart, reflection from a planet can hardly be compared in terms of intensity with the light directly shining from a star, even if the planet is 100% reflective.
Comment: Is it not possible that the path that satellite takes around the planet might not be on horizontal plane against the planet instead tilted in such a way that it does not go behind the planet during the revolution around it?
Comment: I know the planet would be round and will be reflecting the light in all directions, but can there be the configuration of other satellites along with the planet to allow reflecting enough light that it can't be called a day nor night atleast.
Answer: There are two issues (that I can think of) with this:

The orbital arrangement required is unstable, so it can't exist naturally.

Unless the planet surface has mirrors specifically arranged to reflect light towards the moon, the illumination on the dark side of the moon will be less.

There may also be an issue with the moon being too close (within the Roche limit), but calculating that is beyond me.
Comment: Specifically, I think in order for the moon to stay exactly between a planet and a star (otherwise while it orbits the planet, it will have a night area not illuminated by either), it needs to be at [L1 Lagrange point](https://en.wikipedia.org/wiki/Lagrange_point#L1), and at this point I think it's no longer a moon (no longer a satellite). Also it would eclipse the planet, though if the moon is small enough (smaller than **the Moon**) it will pass a ring of light to be reflected back. But since it's further from its planet than **the Moon** from the Earth, it needs to be even smaller...
Comment: @MarkusvonBroady yes, exactly. I was thinking of something like a tiny moon and a gas giant. Still the L1 point will probably be too far for any significant illumination, and its not technically a moon at that point
Answer: Short Answer
It is close to impossible to imagine an astronomical situation where an astronomical object like a planet or a moon is in perpetual daylight all over its surface.
The particular situation you imagine, with the moon between the planet and its star, having the side facing the planet illuminated by light reflected from the planet, would not be able to keep all parts of the moon in constant daylight.
The trouble with this idea is that moons orbit planets, and planets orbit stars.  Therefore, the relative positions of a moon, its planet, and its star, will constantly change.
But it is possible for a world to be in an eternal daylight all over its surface area if it is in a very weird star system, with one or more rings of stars orbiting around a giant black hole.
Long Answer
Part One: Does Temperature or Illumination make it Daytime?
You would expect that the moon would be tidally locked to the planet, with one side always facing away from the planet, and one side always facing the planet, but that does not have much effect on the problem if it is desired to have eternal day on both sides of the moon, instead of eternal day on only one side of the moon.
The question doesn't specify whether there is supposed to be eternal day temperature-wise, or merely eternal day illumination wise.
As well as I can guess, it would be impossible to have eternal day on both sides of the moon, if daytime temperature is required. I think it will be impossible for the moon to receive such a constant amount of radiation that it will have a constant temperature, the same on both sides and at all times.  Instead the amount of radiation received will vary and any part of the moon will get hotter or colder as the amount of radiation increases and decreases.
But it would be much more likely to have eternal day on all parts of the moon if day is defined by how bright the surroundings look.  The surroundings can have the same apparent brightness despite a considerable difference in the actual light levels.
That is because the human eye, and the eyes of many other animals, can adjust to greatly differing levels of illumination. How well you can see shapes and colors is not directly proportional to the amount of light which is arriving from light sources and being reflected from objects.
Part Two: How Bright is Bright Enough to count as Day?
Anyone who has been outside at night without a light and been able to see where they are going by the light of the full moon will know that they don't need a light sources as bright as the noonday sun to see where they are going.
So what is the difference between the brightness of the full moon and the brightness of the sun overhead?
Astronomers measure the brightness of objects seen in the sky with apparent magnitude.  And the lower the apparent magnitude, the brighter the object appears from Earth.  A star of magnitude 1 or the first magnitude is brighter than a star of magnitude 2 or the second magnitude, which is brighter than a star of magnitude 3, and so on.
And the brightest objects in the sky appear so bright that their magnitudes have negative numbers.
The full Moon can have an apparent magnitude as bright as -12.90, while the Sun has brightness of -26.74, which is 13.84 magnitudes. The magnitude scale is logarithmic, and 5 magnitudes is a difference of 100 times the brightness, and 10 magnitudes is a difference of 10,000 times the brightness of. The Sun is about 400,000 times brighter than an average full moon.
So if a light level at least equivalent to the light of a full moon is all that is necessary to turn night into day for the purpose of the story, there is a lot of room for variation in light levels while remaining day.
But you might have a higher requirement for daylight.
An illumination level of 1 lux is equal to apparent magnitude - 14.20, which should be more that 3 times the light of the full Moon.
My answer to this question discusses light levels: Moonlight bright enough to see by
Of course, if day has to be bright enough for human eyes to see color vision, the possible range in daytime light levels will be much smaller.
And if there has to be enough light for scattered light to make the sky appear blue instead of transparently showing the blackness of space, the possible range in light during the day will be even smaller.
A clear moonless night lit by starlight and airglow will have a brightness of 0.002 lux.
A quarter moon will have a brightness of 0.01 lux.
A full moon has 0.25 lux.
The sky under very dark storm clouds at midday will have about 200 lux.
Sunrise or sunset on a clear day has 400 lux.
An overcast day at midday will have 1,000 to 2,000 lux.
A shaded area illuminated by a clear blue sky at midday will have 20,000 lux.
Bright sunlight is 111,000 lux.
The brightest sunlight is 120,000 lux.
https://en.wikipedia.org/wiki/Daylight
So if the brightest day on the moon is no brighter than 120,000 lux, the brightest sunlight on Earth, the darkest day might be about 400 lux, equal to a clear sunrise or sunset on Earth, and still be considered day.  So you might be able to accept differences of up to 300 times in the levels of light received from different stars in your star system.
If two stars have the same luminosity, and star A is 17.320 times as far away as star B, star A will have an apparent brightness only 1/300, or 0.0033333, that of Star B. 17.320 is the square root of 300.
But fortunately stars vary greatly in their luminosities. The most luminous stars have millions of times the luminosity of the least luminous stars.
So the planet and moon in your story could be very close to a very dim star, and a very bright star that was 1,000,000 times as luminous could be 1,000 times as far as the closer star and still give the planet and moon the same amount of light.
Combining that with a possible variation of hundreds of times in the luminosity acceptable as daylight, and you can have the planet and moon receive daylight from different stars in different directions at the same time, and all parts of the moon can be in constant daylight.
If the brighter star was 1,000,000 times as luminous as the dimmer star, and was 17,320 times as far away, it would be give the moon 0.003333 times the light of the  dimmer star, which would still be enough for daylight.
Part Three: Stars for a Habitable Planet or Moon
But I suspect that in your story you might want the planet to be habitable, and have intelligent lifeforms who send expeditions to the dead and lifeless that has eternal daylight in every location. Or you might want the planet to be a lifeless giant planet, and the moon to be a giant, Earth sized, moon, which is habitable for human visitors and/or for native intelligent beings.
So I suspect that you want at least one planet or moon in your star system to be habitable for organisms which need an oxygen rich atmosphere. And that will greatly limit the types of stars and their distances from each other.
The planet Earth was habitable for liquid water using organisms in general for billions of years before it became habitable for humans. Lifeforms on Earth gradually produced the oxygen rich atmosphere needed by humans and by all multicelled animals such as other intelligent beings.
Stephen H. Dole, in Habitable planets for Man, 1964, p. 63, estimated that a planet would have to exist with fairly steady temperatures from its star, for at least 2 or 2 billion years before developing an oxygen rich atmosphere.
That means all the stars in a system with a habitable planet, which contribute significant amounts of light and/or heat to that habitable world, have to have been shining with fairly steady luminosity for at least 2 or 3 billion years by the time the planet develops a breathable atmosphere.
And different spectral classes of stars shine steadily as main sequence stars for different lengths of time before their luminosities change drastically.
On page 68 Dole decided that the most luminous and massive stars that would have fairly steady luminosity for at least 3 billion years would have a mass 1.4 times the mass of the Sun, and would be spectral class 52V stars.
This question: How would the characteristics of a habitable planet change with stars of different spectral types? has a very useful answer by User177107.
The semi-major axis of Earth's orbit is defined as one Astronomical Unit, or AU.
The table of different types of star in user177107's answer, gives a lot of data about each type of star in the table, including what I call the Earth Equivalent Distance or EED, the distance at which a planet would have to orbit to receive the same amount of radiation from its star as Earth gets at a distance of 1 AU from the Sun.
According to that table a spectral class F2V star has a mass of 1.44 solar masses and a luminosity of 5.001 solar luminosities, and an EED of 2.236 AU, where a planet's year would be 1,018.01 Earth days long.
And the least massive star in the table, a M8V class star, has a mass of 0.082 solar mass, a luminosity of 0.00043 solar luminosity, and an EED of 0.0207 AU, where a planet's year would be 3.82 Earth days long.
So a F2V star would be about 11,630 times as luminous as a M8V star, and so would appear as bright as an M8V star if it was 107.87247 times as far from the planet and the moon as the M8V star was, and thus at a distance of 2.2323 AU. And the F2V star would appear 1/300th, or 0.003333, times as bright as the M8V star when it was 1,868.4059 times as far away as the M8V star, or 38.676002 AU.
Part Four: How Many Other Stars in the System?
This maximum possible distance between the planet and moon and the F2V star allows for several other stars to be within the system at intermediate distances.
The moon would orbit its planet, which would orbit the M8V star at a distance of 0.0207 AU, in a non-circumbinary or S-Type orbit around that one star, and not around any other stars in the system.

In non-circumbinary planets, if a planet's distance to its primary exceeds about one fifth of the closest approach of the other star, orbital stability is not guaranteed.4

https://en.wikipedia.org/wiki/Habitability_of_binary_star_systems
So the nearest that any other stars in the system could get to the M8V star would be 5 times the semi-major axis of the planet's orbit around the M8V star. So the nearest star (or pair of stars) would have to get no nearer than 0.1035 AU to the M8V star.
Assuming that the next nearest star (or pair of stars) in the system would have to get no nearer than 5 times that distance, it would have to get no nearer than 0.5175 AU.
With the same ratio the third nearest star (or pair of stars) would have to get no nearer than 2.5875 AU.
With the same ratio the fourth nearest star (or pair of stars) would have to get no nearer than 12.9375 AU.
And with that ratio the fifth nearest star (or pair of stars) would have to be at least 64.68 AU from the M8V star, which is farther than the maximum possible distance for the F2V star to produce daylight on the planet and moon.
So that means there could be as many as five to nine stars, the M8V star, plus four other and brighter stars (or possibly pairs of stars) in the star system.
Assume that the nearest star (or pair of stars) to the M8V star gets no closer than 10 times the orbit of the planet, it would get no closer than 0.207 AU to the M8V star.
With the same distance ratio of 10 times the distance, the second closest star (or pair of stars) would orbit at 2.07 AU from the M8V star.
With the same distance ratio of 10 times the distance, the third closest star (or pair of stars) would orbit at 20.7 AU from the M8V star.
With the same distance ratio of 10 times the distance, the fourth closest star (or pair of stars) would orbit at 207 AU from the M8V star - which would be far beyond the distance at which a F2V star could be 0.003333 times as bright as the M8V star.
So that means there could be as many as four to seven stars, the M8V star, plus three other and brighter stars (or possibly pairs of stars) in the star system.
Part Five: Will Tidally Locked Planets Be Habitable?
But there is a further problem. A planet orbiting close enough to a M8V star, or even one a lot more luminous than an M8V star, to be warm enough for life, would become tidally locked to the star, with one side constantly facing the star, and the other side constantly facing away from the star. All the atmosphere and water on the planet might freeze on the extremely cold night side of the planet, leaving the planet airless, waterless, and lifeless.
There is some controversy whether a tidally locked planet in the habitable zone of a red dwarf star could be habitable or have all its water and air frozen on the night side, so that is uncertain at the moment.
https://en.wikipedia.org/wiki/Planetary_habitability#Red_dwarf_systems
According to Stephen H. Dole, in Habitable Panets for Man, 1964, page 71, if  a star has less than 0.88 of the Sun's mass its habitable zone (which Dole calls its ecosphere) will not be complete since planets in the inner parts of the habitable zone will be tidally locked to the star. And if a star has less than 0.72 times the mass of the Sun, all of the star's planets in the habitable zone will be close enough to be tidally locked.
Part Six: Two Choices
So if you want the planet in your planet-moon system to be habitable, you have two choices.
You can let the planet be tidally locked and hope it can be habitable anyway, and thus use a red dwarf star as dim as you want.
Or you can use a more massive and luminous star, putting the planet at a larger distance from the star and thus reducing the relative distance to a star capable of being 0.003333 as bright or brighter, and thus reducing the number of stars you can put in your star sysyem to help illuminate all sides of the planet and moon at the same time.
Part Seven: A System where the Planet is not Tidally Locked
So you would be limited to using a class K1V or larger star for the nearest star to your planet and moon. The closest star on the table I mentioned above is a K2V star with a mass of 0.78 solar masses, a luminosity of 0.337 solar luminosity, an EED of 0.58 AU, and a year of 182.93 Earth Days.
So an F2V star would be 14.839 times as luminous as a K2V star, and would appear as bright as the K2V star at 3.852 times the distance, or 2.234 AU. The F2V star would appear to be 0.00333 times as luminous as the K2V star at a distance of 66.718 times the planet's orbit around the K8V star, and thus at a distance of 38.696 AU.
Assuming that the next nearest star (or pair of stars) would be at 5 to 10 times the planet's orbit around the K2V star, it would orbit no closer than 2.9 to 5.8 AU to the K2V star.
Assuming that the second nearest star (or pair of stars) would be at 5 to 10 times the first star's orbit, it would orbit no closer than 14.5 to 58 AU to the K2V star.
Assuming that the third nearest star (or pair of stars) would be at 5 to 10 times the second star's orbit, it would orbit no closer than 72.5 to 580 AU to the K2V star, and thus be far beyond the 38.659 AU limit.
Thus there could be one or two other single stars or pairs of stars in the star system in addition to the K2V star, making a total of two to five stars in the system.
So it would still be possible to design a multiple star system trying to get stars to illuminate the planet and moon from every direction at once, but it would be a bit more difficult.
Part Eight: A Habitable Moon?
But on the other hand, if you want the moon in your story to be habitable, and not the planet, you can use much dimmer stars and have much greater luminosity differences in your star system.
If a giant and uninhabitable planet orbits within the habitable zone of a small dim star, that planet will quickly become tidally locked. That will make the planet uninhabitable, but if it is a giant planet, it's uninhabitable anyway and that won't matter. There has been much speculation about the possibility of giant moons orbiting giant planets that orbit in the habitable zones of small, dim star. Those giant moons would become tidally locked, but to the planets, and not to the stars.
Thus those hypothetical exomoons would have days of alternating light and dark which would be equal to their orbital periods around the giant planets. Those orbital periods and days would be between roughly 1 Earth day to about 15 Earth days long. And that would be a lot shorter than the eternal day and eternal night on the two hemispheres of a tidally locked planet.
So if those hypothetical exomoons are large enough and otherwise suitable, they could be habitable. Thus you could have a habitable moon orbiting a planet orbiting a class M red dwarf star.
But there would still be a limit to how dim the red dwarf could be.
A moon must orbit its planet with a period less than one ninth as long as the planet's orbit around their star, or the planet's orbit around the star must be more than nine times as long as the moon's orbit around the planet, for the moon's orbit to have long term stability.
So if a giant, habitable moon's orbit around a giant planet must be about 1 to 15 Earth days long, the planet's orbit around its star must be at least about 9 to 135 Earth days long.
Dole thought that the day of a habitable world would have to be less than 96 hours or 4 Earth days long. In that case the orbit of a habitable moon around its planet would have to be 1 to 4 Earth days long, and the orbital period of the planet around its star would have to be at least 9 to 36 Earth days long.
Dole also considered the case of world which was tidally locked to a companion world instead of its star, and decided such world could be habitable around stars with masses that were as low as 0.35 solar mass. The solar tides on planets in the habitable zones of stars of lower mass would be so high and strong that they should erode the continents and destroy all dry land.
An M5V star would have a mass 0.16 that of the Sun, a luminosity 0.00229 of the Sun, an EED of 0.0547 Au, and a year Earth days long. An M2V star would have a mass 0.44 that of the Sun, a luminosity 0.0268 that of the sun, an EED of 0.163 AU, and an orbital period 36.51 Earth days long.
So I guess that the smallest star which could have a habitable moon orbiting a planet in the habitable zone might be just a little less than and M2V star, and its EED would be just under 0.163 AU.
An F2V star would have 186.60 times the luminosity of a M2V star, and so would have a brightness equal to a M2V star at a distance 13.66 times as far, or about 2.2266 AU, and it would have an apparent brightness 0.00333 times as bright at a distance 236.598 times as far as the M2V star, or 38.565 AU.
Part Nine: The Fatal Flaw.
So now it should be comparatively easy for someone to design a star system with the stars placed so that every part of your planet and moon is always illuminated with greater or less brightness by one or more stars. Right?
Wrong.
Notice that I kept mentioning the orbits of moons, planets, and stars.
And of course, moons, planets, and stars move in their orbits.  So if at one moment the objects in the solar system are arranged so that all of the the moon is always
in the light of one or more stars and always in daylight, the objects will eventually move into positions which are different enough that only part of the moon is illuminated at any one time.
It is possible to devise an arrangement of orbits where all parts of the moon have daylight continuously for weeks. It is also possible, though harder, to make that condition last for months. And it gets harder and harder and harder to make that condition last for years, decades, centuries, or millennia.
The original question doesn't specify how long the condition of daylight on all parts of the moon is supposed to last. So I can only assume that it is desired to last for billions and billions of years. Which of course is fantastically more difficult to make happen than to make it last for mere millennia.
Part Ten: A Solution at Last!
There is a science fiction story, "Nightfall" (1941) by Isaac Asimov, which was expanded into a novel Nightfall by Asimov and Robert Silverburg in 1990, and made into movies in 1988 and 2000. It is set on a planet Kalgash, where night falls only once time every 2,000 years.
Sean Rayomond's PlanetPlanet blog has a section Real Life science Fiction Worlds, where Raymond tries to devise scientifically plausible versions of various science fiction worlds.
That includes the post: "Real-life Sci-fi world 11: Kalgash, a planet in permanent daytime (from Asimov's Nightfall)"
https://planetplanet.net/2018/02/02/real-life-sci-fi-world-11-kalgash-a-planet-in-permanent-daytime-from-asimovs-nightfall/
In that post Raymond finds out that if he uses the six star star system as described in the story, he can't get the eternal daytime required.
So in the next post Raymond changes the arrangement of the Kalgash system, trying to make a system which will produce eternal day all over Kalgash.
https://planetplanet.net/2018/03/21/asimov-kalgash-take2/
Raymond eventually came up with his best version of the Kalgash system, a system centered on a giant black with many times the mass of any star, and a ring of stars circling around the black hole. Or in some variations the planet orbits between an inner and an outer ring of stars.
And that seems to be the best way (because it is the only way I ever heard of that actually works) to design a star system where a planet or moon has eternal daylight all over its surface.
Answer: Perhaps the closest you could get is to put the "moon" in an orbit around the L4 or L5 Lagrange point.  That would still leave about 60 degrees of the surface in shadow though.
Another idea... You could have a ringed planet where the ring material is highly reflective, with the moon inside the inner radius of the rings.  A bit of googling tells me this is possible.  Worst case, the moon is in shadow of the planet, and a portion of the rings near the moon are in shadow, but there should still be illuminated ring material visible from all points on the moon's surface.


How to programmatically get a list of contacts by a ContactList Id in Sitecore 8.2

Question: How can we programmatically get the contacts associated to a ContactList by its ContactList Id?
Versions we are using:

Sitecore 8.2 (rev. 161221)
EXM 4.0.1 (rev. 170105)
Comment: I followed the above approach. var listManager = (ListManager)Factory .CreateObject("contactListManager", true); var list = listManager.FindById("{5A144595-1EDD-4109-A271-25CB13E83503}"); But while finding the listmanager by id I am getting `Duplicate Ids Not allowed` error. (I am taking Id from Sitecore Item) I searched in almost all sites for resolving this issue but could not find a solution. Appreciate any help on this.
Answer: Just to clear up a common misconception. EXM uses List Manager to retrieve contact lists and contacts, but they are two different products/APIs. EXM is a module released separately, whereas List Manager is a component released as part of the Sitecore Experience Platform.
So you don't want to look at the EXM API to do what you're asking, but rather the List Manager API.
That being said, to get all the contacts associated to a contact list you do the following:
using Sitecore.Configuration;
using Sitecore.ListManagement;
using Sitecore.ListManagement.ContentSearch.Model;

var listId = Guid.NewGuid();
var listManager = Factory.CreateObject("contactListManager", false) as ListManager<ContactList, ContactData>;
var list = listManager.FindById(listId.ToString());
var contacts = listManager.GetContacts(list);

Keep in mind that you can only do this on a CM role.
Answer: A refinement of the solution:
var listManager = (ListManager<ContactList, ContactData>)Factory.CreateObject("contactListManager", true);
//here you work with contact.ContactId to get contact object for reading/editing
ContactManager contactManager = (ContactManager)Factory.CreateObject("tracking/contactManager", true);

var list = listManager.FindById("{5A144595-1EDD-4109-A271-25CB13E83503}");
var contacts = listManager.GetContacts(list); //this is how to get all contacts
foreach (ContactData contactData in contacts)
{
   Contact contact = contactManager.LoadContactReadOnly(contactData.ContactId);
}

The code above allows to get a Contact object from the ContactData object provided by the list manager.


What exactly is a path in inkscape?

Question: I am a beginner in Inkscape, and was pretty confused by the word PATH, when i checked on net, i found various explanations and developed an understanding thinking that a path is the nodes in a straight or curved line. Is my understanding correct?? If not please explain it to me.
Comment: This should probably answer your question: [What is the difference between a path and a stroke?](https://graphicdesign.stackexchange.com/q/73311/52050)
Answer: Not really. A node controls the path, but it is not the path.
A Path is a line, curved or linear, that can work either as the outer border of a shape (closed path) or a line where you can potentially have a stroke (closed or opened path).
A path can have width but also it can live without any width.
The nodes are the controllers of the curvature of this pat.
Think of a path as the trajectory where a line can go, like a cannonball, and the node as the direction and intensity of the cannon itself that "shoots" the path. This analogy makes clear what a path is. If you take a long exposure of this cannonball, you can see where the cannonball pass, the path.
Answer: This time I try to be exact. A path in Inkscape is an object which Inkscape interprets to computer screen from a path command of a SVG file.
Inkscape drawings are actually text files which contain commands. The commands can be generated by drawing something or by applying Inkscape's million tools to something already existing. One can also directly write the code in a text editor or import it from another program.
Here is 2 drawn objects

a straight line drawn with the pen tool, it actually is a simple Bezier curve which only happens to be a straight line this case.
a rectangle

Here is the generated code. Only those 2 objects are shown.

The black text is the line, red text is the rectangle. The colors are my own.
In addition there's a hefty general header, which isn't shown here. The code can be seen for example by opening the SVG file in a text editor or by starting Inkscape's own code viewer tool.
The code of the line starts with "path". That can be used as the criteria for what is a path and what is not. Only Bezier curves are paths in that sense.
The rectangle isn't a path, it's another shape which Inkscape knows. In addition there are ellipses, stars, texts etc...
Bezier curves are generally drawn with the pen tool. That's not the only way to make paths. A programmer can write the code or write a script which generates the code. A rectangle or other non-path shapes can be converted to paths by applying Path > Object to Path.
The rectangle is converted to path. Now its code starts with "path", it can be edited with the node tool and all path functions are applicable. But in the objects panel it still has the opriginal name rect9203.
The code:

One of the corners is edited with the node tool(not shown in the code, it was the unmodified version). That would be impossible before converting the rectangle to path.

Paths, like many other Inkscape's objects, can be visible or hidden, they can be partially transparent, they can have some color and width of the curve (=stroke) and a fill.
DONE

What exactly is a path in inkscape?


Is it possible to allow only certain accounts from a specific group in Google Apps to sign in using OAuth?

Question: Is there possibility to allow login to app only for certain users from Google Apps. From only one app to be more specific. I want to create admin panel that only some people can manage but I want to allow admins to login using OAuth. It will create all process simpler and more user-friendly. Have you any sources how to do it if it is possible?
Comment: Do you mean that users should login to your admin panel via the standard Google Apps login? Or that you will create your own login form that will also log users in to Google services?
Comment: They will login only using Google Account OAuth. But I must set that only specific group from my company Google accounts will be able to login.
Answer: I assume you want to create your control panel app so that users can log in to it via Google's login services. If that's the case, you can limit access to your app in at least two different ways:

If you follow these guidelines, that is, create your control panel app with Google Apps in mind, it will be installed along your existing Google Services. As such, you can disable/enable your app for different organizational units, via the Google Apps control panel. This method requires you to have users in different organizational units (OUs), which might be undesirable (a user can only belong to a single OU, for example).
In your control panel app, make a call to the Google Apps Provisioning API to get a list of the current user's group memberships. Deny access to your control panel if the user is not a member of the required group. This method does not require you to divide users into different OUs, but have them assigned to groups instead.
Instead of groups, you might want to create a role which you assign your users. ATM I cannot find an API for retrieving a user's roles, though.


Nuclear Reactor's Heat Engine's Thermal Efficiency

Question: Nuclear reactor has to convert its heat into mechanical energy and to electric energy with its turbine heat engine. I learned the heat engine of a common PWR nuclear reactor is around 33%. The efficiency of a best heat engine is near 50%. So is it possible to fuse the best heat engine with a giant nuclear reactor to harvest the best amount of energy?
Comment: and the Rocket heat engines have average 80% efficiency...
Comment: I think there is some confusion here about using the term *heat engine* - if used in its thermodynamic sense, a nuclear reactor *is* a heat engine - there is nothing to combine. The question needs more clarity.
Answer: Most nuclear reactor-driven power plants use water as the working medium. They boil the water to steam at some temperature, spin a turbine with the steam to extract work from it, then condense the spent steam back to water and repeat the cycle. The difference between the temperature of the hot steam versus the spent steam sets the maximum thermal efficiency of the overall cycle and to make that efficiency as large as possible, you want that difference to be as big as possible. For the steam turbine cycle, the turbine efficiency can reach 50% in practice.
This does not mean that a steam turbine power plant can be 50% efficient overall, because the electric generator being spun by the turbine will be 90% to 95% efficient, the transformers that boost the generator output to transmission levels will be 90% to 95% efficient, and the reactor-driven steam boiler will not be 100% efficient either because of heat leakage and heat transfer limitations.
The overall efficiency start-to-finish of a nuclear power plant is the product of all the individual efficiencies of the processes going on inside it, which is why the turbine by itself can be 50% efficient but the whole plant will be only 33% efficient.
Answer: For a water cooled reactor, the thermal efficiency is limited by the critical point for water (705 F).  For a non-water cooled reactor, such as a high temperature gas cooled reactor, the thermal efficiency is higher.


Printing picture through a variety of sizes small to large

Question: I have taken pictures and am sending them into the printers to get them blown up. I am starting with a 4 by 6 photo. And I want to a variety of sizes that are up to two feet on one side. I just cannot figure out all the sizes in between to get there. I don't want the photos to be stretched, but retain original proportions. Is there a formula I can use or anything? Basically what are the 6 or so sizes that get me up to 24 " on one side. Thanks.
Answer: The ratio of 4 x 6 is 1.5.
So if you know what the short side should be, just multiply it by 1.5 (or if you know the long side, divide by 1.5 to ascertain the short side).
<code>Short side: 12
Long side: 18

Short side: 24
Long side: 36
</code>
And so on
Comment: Thanks so much.  I couldn't get a solid multiplier because i know 5 x 7 is another standard photo size. It doesn't follow the multiply by 1.5 rule. Does that mean it's slightly distorted or do they just call it 5 x 7 but really it's 5 x 7.5?
Comment: I think 7x5 is standard and that ratio is 1.4. I think alot of labs offer 6 x 4.5 which is closer. but admittedly as these ratios differ it would mean cropping the image at one particular print size. I used to be very anal retentive about that sort of stuff, wanting what was composed in the viewfinder to be printed, and there are different paper sizes, but then I learnt about all the different negative sizes, 6x4.5, 6x6, 6x7, 6x9 and then 4x5 inch and many many more. Arrrrgghhh
Comment: Oh wow,  so its hard to say what the negative size is to know what the view finder would be actually seeing to know what ratio makes the picture true to size?


Fill voids in a butcher block

Question: I was commissioned to create a butcher block table and cutting board from poplar, walnut, cherry and ash.  Despite best efforts, both pieces have some voids which the Titebond III didn't fill. I am thinking of filling the smaller cracks with hide glue and the larger voids with a mix of hide glue and wood dust.  Ideas or suggestions?
Thanks.
I used 1.5" roughsawn for the ash, cherry and walnut, and planed random pieces, glued up strips... all to recreate an end grain butcher block table which I didn't really expect to be used as a butcher block.  I don't know that the glue-up at this point would be deemed unsafe for food contact, but the voids certainly have to be filled.  Had I known it would be used as a cutting block, I would probably have insisted on hard maple.
Comment: This would be an excellent question for the woodworking SE
Comment: Is this a end grain butcher block table as used in old school butcher shops? Will the surface be used for food prep?
Answer: If you can, I would recommend cutting down the joint with a thin bandsaw blade & then machining both pieces with a jointer to get the super tight fit that you really should have between your boards.  The reason I suggest this is that cutting boards can give up particles when sliced/chopped on that would end up on the food that is processed on the cutting board (especially meat)--which I doubt you or anyone else would want to eat, due to the toxicity of adhesives.
If, on the other hand, you can find a non-toxic bonding adhesive then the above suggestion could be avoided.
hth
best regards!
Comment: This would be especially true for the cutting board which may see some wet service, that can break down the adhesive over time unless it's 'waterproof'.
Answer: I think you are on the right track.  I would mix glue and sawdust until a got the consistency I wanted and use that as filler.

Fill voids in a butcher block