Suggestion for occurance of ellipsis on pagination

Question: We are presented with two options to implement pagination on our site. The option 1 is a pretty standard way of showing the start and the end however option 2 is a little different . I would like to get a opinion on which is the better one when it comes to user experience.
Answer: There are other ways to solve the problem, which are much more effective from a users' goal. First consider the problem from the user's perspective. For example, ask yourself why the user would want to click page 17 when they are on page 3 in the pagination sequence? How would they know if page 17 had what they were looking for?
In most of the usability tests I have run over the years, very rarely would a user want to jump instantly to page 17 from page 3 - typically they just want simple Next and Previous buttons to sequentially go through the pages. The insights I have seen suggest that if a user cannot find something fairly quickly they would prefer to switch to an alternate system, e.g. a faceted search feature, select different filters, change search criteria, etc.
A fascinating book to read which backs up some of my own findings is Search Patterns by Peter Morville & Jeffery Callender. The patterns they discuss are all focused on the user's goal, which is often to find just one record, rather than wade through lots of records.
So based on my testing experience and this book, I now tend to design pagination in a very different way.
First you just see this, which allows the user to quickly page through sequentially using Previous and Next buttons:

If they trigger the drop-down, they can choose to jump to a specific page (as well as choose number of records per page):

The point I am trying to make here is, maybe you are trying to solve the wrong problem? Other than that, if you are stuck with pagination, then option 1 would be better than option 2.
Answer: The most important point of navigation, for the user, is to know where one is as well as where the beginning and end are. In either of the two options indicate the arrows go to the next or previous. Option 1 is best shown, and besides allow you to go to next / previous, you can go directly to the beginning or end, of which no option 2
Answer: It's hard to determine which is a better user experience without knowing the content that is being paginated and the needs of the user.
Both options are functionally different. Option 1 has an additional feature of allowing users to go to the beginning and the end. While Option 2 allows the user to jump further ahead or back from their current page and is a bit more simple.
I would determine whether there is a scenario where a user wants to go back to the first or last page and if so, then option 1 makes sense. Otherwise, I'd go with option two which is simpler.
If you're not sure then option 1 will have you covered, but best to test before you build so you don't build a feature that no one will use.


Which versions of C++ redistributables can I remove?

Question: I have a number of Microsoft Visual C++ 2005 and 2008 Redistributable and I would like to know which ones are safe to remove, because there are actually more than 10 installed on my computers.

Microsoft Visual C++ 2005 ATL Update kb973923 - x64 8.0.50727.4053
Microsoft Visual C++ 2005 Redistributable
Microsoft Visual C++ 2005 (x64)
Microsoft Visual C++ 2008 ATL Update kb973924 - x64 9.0.30729.4148
Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.17
Microsoft Visual C++ 2008 Redistributable - x86 9.0.30729.17
Microsoft Visual C++ 2008 Redistributable - x86 9.0.30729.4148
Microsoft Visual C++ 2008 Redistributable - x86 9.0.30729.4974
Microsoft Visual C++ 2010 x64 Runtime - 10.0.30319

It could be that these versions are all different, but a confirmation of that is fine for me as well. Thanks in advance.
PS. I'm using an x64 machine one windows 7.
Comment: See also [Why are there so many different Visual C++ redistributables?](http://superuser.com/questions/173403/why-are-there-so-many-different-visual-c-redistributables)
Comment: Why are you considering to remove them?
Answer: You're better off not removing them. C++ Redistributables are installed by programs which depend on them. See this thread for a similar question.
Of the versions you have listed, each one could either be a patch (in which case you'd be removing bug fixes and features by removing it) or a new version (in which case you'd be removing a redistributable that a program depends on). In either case, removing it would be unwise unless you have some real need to do it.
Comment: Ok thanks, I was just curious, because it looks so messy. And I don't like messy lists ;)
Answer: I doubt there is an easy way to know what you need without knowing which programs depend on them. These redistributables are usually included with programs that depend on them. Even if they are technically compatible with future versions they may be hard coded to use a specific version. My advice would be to leave it alone.
And to answer your question, those versions are all different.
Answer: You can actually remove any of them. If a program doesn't function properly afterward, simply reinstall the program. It will reinstall what it needs. Otherwise you'll be accumulating a lot of junk that might do nothing.
Pay attention to the install dates. Anything on or near the install of your system, you might want to leave alone.


Suddenly falling google search ranking

Question: I registered my site a month ago, and appeared in google search result of focused keyword. The ranking is not so bad, my site placed in 4th~5th page when google results have 9~10 pages. But after 1 day the ranking falled 4~5 pages.
So, my page appeared in 9th page. In some computers, there is no my page in SERP. Of course, I didn't take any Black-hat SEO. Is my site penalized by google? Can my site increase ranking again?
Answer: The ranking will change according to their algorithm. It may change each day. If you content is useful and is not copied from else where, then your ranking will increase eventually.
Comment: Thank you for your console.

Suddenly falling google search ranking


SharePoint Document library alerts not working

Question: I have migrated from SharePoint 2013 to SharePoint 2019, here I am facing a strange issue, like list alerts are working fine but when I create any alert on any document library, no mails are triggering(means alerts are not working on document library), neither the old alerts that were created in SharePoint 2013 are working in new environment. please suggest what to try
Answer: Please check as following:

Will the same user be alerted in list or library?
When you set an alert on a specific file instead of the entire library, is it effective?
Does the alert setting only have no effect in the migration library?

Please create a new library in new server, send alerts on single file or entire library to multiple users to compare the results.
Comment: 1. No, many more than me
2. No
3. In the migration environment, it is happening with each library, I have around 46 sites in my current environment. Also, FYI only document library is causing the issue, Lists are working fine
Comment: Have you created a new library after migrating? Run psconfig to check if it could repair document alert issues.
Answer: It was resolved by re-registering the alerts, for reference please see point no. 9 in the below link:
https://www.sharepointdiary.com/2012/02/sharepoint-alerts-not-working-troubleshooting-checklist.html?m=1


Is the momentum thrust of a liquid rocket engine in a static test fire the same as in flight?

Question: Assuming vacuum exit conditions are matched by means of a suitable ejector mechanism, is the exhaust velocity of combustion products relative to static engine the same as that of a flying rocket engine?
Comment: Rocket engines are not velocity-dependent, they are only dependent on atmospheric pressure. Meanwhile jet engines rely on both.
Answer: In a technical sense, yes, the specific impulse will be the same, whether the engine is in flight or on the test stand.
In a purely physical sense, there will be differences in the internal dynamics of the rocket, because during flight, the rocket is under acceleration. This will cause a slightly higher pump outlet pressure, because of the increased gravity acting on the liquid propellants. Now, assuming that the rocket doesn't compensate for this by adjusting the main valves, the ISP may be slightly increased, because higher pressures generally slightly improve the chemistry in the combustion chamber.
But since pressure is not a driver of ISP and the pressure will only be changed slightly, the better answer is to say that the specific impulse will not be meaningfully changed.


Are there any indications of the Firebolt's cost from JKR?

Question: I have seen speculations on this site as to how much Harry's broom actually would've cost him if he'd decided to buy it. Some say a thousand Galleons, others much more than that.
Is there any specific information regarding the cost of the Firebolt? If the Irish team can afford seven, it couldn't be that high(Although, they could afford expensive brooms, being an international team).
Answer:
We don't know from canon. All we know is that Irish and Bulgarian teams each flew them, which doesn't tell us much.
None of the interviews on Accio-Quote mention anything. Nothing on JKR's Pottermore article aside from nebulous "a costly broom".
We also have some estimates, but they all came from Harry's guesses and he didn't know the price! So his guesses are kind of useless.

He thought he'd have to empty his Gringott's account to buy one.

Harry didn't like to think how much gold the Firebolt would cost. He had never wanted anything so much in his whole life – but he had never lost a Quidditch match on his Nimbus Two Thousand, and what was the point in emptying his Gringotts vault for the Firebolt, when he had a very good broom already?

He said "hundreds of Galleons" to Ron.

'Who sent it to you?' said Ron in a hushed voice.
  'Look and see if there's a card,' said Harry.
  Ron ripped apart the Firebolt's wrappings. 'Nothing! Blimey, who'd spend that much on you?'
  'Well,' said Harry, feeling stunned, 'I'm betting it wasn't the Dursleys.'
  'I bet it was Dumbledore,' said Ron, now walking round and round the Firebolt, taking in every glorious inch. 'He sent you the Invisibility Cloak anonymously...'
  'That was my dad's, though,' said Harry. 'Dumbledore was just passing it on to me. He wouldn't spend hundreds of Galleons on me. He can't go giving students stuff like this –'

Then we have Ron's estimate (who also had no idea of the cost)

'So it must've been really expensive...'
  'Probably cost more than all the Slytherins' brooms put together,' said Ron happily.

Apropos nothing, Universal sells firebolt replica for $300
Comment: Do the Universal ones come with a "***Not a Flying Toy***" disclaimer?
Comment: @randal'thor Malfoy, probably ;)
Comment: Who the f### would spend $300 on a fancy toy broomstick?
Comment: Harry's imaginations have always been wild, though. Remember the drama he caused in the start of Book 5? I wouldn't bet on his estimates. So, I could safely assume several hundred Galleons.


Chi square fit, fitting data to a straight line: Incomplete gamma function as goodness-of-fit estimation

Question: On page 661 of the book "Numerical Recipes in C:The art of scientific computing", we fit a set of N data points
$(x_{i}, y_i)$
to a straight line model
$$y(x)=a+bx.$$
We do this by minimizing the chi-square merit function with fitting parameters a,b, as in eq. (15.2.2) of the book
$$\chi²(a,b)=\sum_{i=1}^N\big(\frac{y_i-a-bx_i}{\sigma_i}\big)^2.$$
Here $\sigma$ is the uncertainity for each $y_i$ measurement.
The goodness-of-fit of the data is then calculated using the incomplete gamma function as in equation eq. (6.2.3)
$$Q=\text{gammaq}\left(\frac{(N-2)}{2}, \chi^2/2\right)= \\
\frac{1}{\Gamma((N-2)/2)}\int_{\chi^2/2}^{\infty}e^{-t} t^{(N-2)/2-1}dt,$$
where $\Gamma$ is the complete gamma function.
Since this is way more abstract to me than other fitting routines, I want to ask if someone has a deeper understanding of why we use the incomplete gamma function gammaq as the goodness-of-fit estimation. What connects the $\chi^2$ fitting with the gammaq function, e.g. how do we know that the incomplete gamma function returns us a gof estimation for chi-square fitting?
Answer: $\chi^2$ distribution is a special case of the Gamma distribution : a $\chi^2$ distribution with $n$ degrees of freedom is the same as a Gamma distribution with shape parameter $n/2$ and scale parameter $2$ :  $\chi^2_n \sim \text{Gamma}(n/2,2)$, or equivalently $\chi^2_n/2 \sim \text{Gamma}(n/2,1)$ by the scaling property of the Gamma distribution.
So the quantity $Q$ is just the tail probability of a $\chi^2$ distribution with $N-2$ degrees of freedom: $Q = P(X > \chi^2_{obs})$  where $\chi^2_{obs}$ is the observed value and $X \sim \chi^2_{N-2}$. It tells you what is the probability to observe a similar or larger value than $\chi^2_{obs}$ under the hypothesis that the model is correct.
(you have $N-2$ degrees of freedom because of the two free parameters in the fit)


Getting a stuck spark plug out

Question: 4 spark plugs--three finally changed but one won't come out and is apparently stuck with a deposit of carbon. Has a service every year so not as though it is ignored. we don't want to change the car but can't afford a major problem with it as it's our workhorse as well. Mechanic has added something to petrol to see if it will help but nothing has---any suggestions please. Ford Focus Zetec Estate about six years old.Thanks
Answer: Buy a can of good quality penetrating fluid (not WD-40, which is designed as a lubricant). Spray plenty of it into the plug recess, and leave overnight. Repeat this two or three times.
Using a proper spark plug spanner (with the little rubber insert to grip the plug properly), try to rock the plug back and forth, tightening then loosening. Eventually, with a bit of luck, you'll get it to move slightly. Once it is moving, carefully work it out, continuing to work it back and forth - as it sticks, tighten it a bit then try again. You may find further applications of penetrating fluid help.
If you're lucky, you'll get it out without breaking it or damaging the threads on the cylinder head - if you do damage them, you should be able to get it helicoiled (effectively inserting a new thread) in order to fit the new plugs.
Comment: If it is available use PB Blaster aerosol penetrant I have found nothing better.Spray  the plug then wrap a small rag soaked in PB Blaster around the plug base and let it sit overnight.
Answer: If penetrating fluid, time and rocking (as described by Nick C) do not work, you may need to take it to a mechanic who can heat up the plug (usually with a torch) to get it out.  With all of the plastics in a modern engine, you don't want to do this yourself as it can be tricky to keep for doing more damage than you are fixing. Good luck!

Getting a stuck spark plug out


Create a list from the document in the library

Question: I have a MS Project file uploaded to the document library on the site. I want to create two lists with the information retrieved from this document (Project tasks and Custom list). I need these two lists to be synchronised with the original document, so when I edit either a list or a document, both will be updated. Is it possible?
Answer: For similar purposes we use Event Receiver.
You could fire an event when an item is uploaded in the "parent" list, get the infos you need, and then load those info in the "child" list(s).
Here you can find a basic implementation and some references.
Comment: Would you please elaborate your answer with more details on what you did and how you solve it, may be with some example.
Answer: Yes, the workflow you will be using should be connected to the form in the Library. Then, in SharePoint Desighner when you edit the workflow, you choose which list you want the info to go to ( which could be either a Task list or customized List), and there you can also create your custom columns. To have a second list upload the same information you have to do the parents child aspect listed above.


Why Godot over Cryengine, UE4, Armory3d or Unity3d?

Question: Godot have a low performance in linux systems and lack of functionalities? This appear not been in account when peoples vote for him over other engines and i wonther whi.
I know it is under MIT lisence, but the others engines have a very permisive licences and in some cases they help you with funding for your games.
I ask this because i have maded survey on google plus about a selection of engines, and people still bote for godot over other engines. I want to select an engine for my future games, and when i compared, godot's not get a good place.
Comment: Until Godot fixes its iOS build pipeline, I wouldn't even consider it. Maybe it's fixed since I last looked, but at the time it was horrible.
Answer: Although usually questions like "what software is better" are off-topic, because the answer is almost always "try them all, and pick your favourite", I think this one could be an exception so I'll attempt to answer it.

From my experience, Godot does not have low performance on Linux. I have one of the cheapest laptops on the market, and run Arch Linux, and Godot runs fine (far better than Unity - I haven't tried the other engines you mentioned).
Being open source is a massive plus for Linux users. It doesn't automatically make the software immune to malicious behaviour, but it's better when the developer says "You don't believe me? Check the code!" instead of "You don't believe me? I tell the truth, I promise!", especially since companies have taken advantage of that in the past.
MIT license is another plus, you make a game using Godot, you own it. There is nobody to cause you legal trouble, nobody to take part of your profits (As far as I remember that's how MIT license works).
Having tried Godot, I enjoy the C++ inheritance-oriented design, as it's closer to traditional game design before using engines (at least for me). I find Unity's component-based system a "it just works" kinda system. On Godot, if I want to do something the language didn't intend me to do, it feels like I can do it, on Unity I always end up going to the forums, and there's been times that the feature I seek is not supported "By design".
Personally I enjoy Godot's attitude. They are more like "We made an engine, feel free to use it, and if you want, donate back to us". Although I can't blame other engines for asking profits, since the people work hard on them. This also allows people that can't afford much money, to experiment with Godot. Having said that I'm aware that lately some engines moved to a different model where you only pay if you make enough profit.

Having said all of that, I use Unity at work, and I'm more used to it than any other engine. I've used Godot on my free time but not to the same extend. Also the points I made do not say that Godot is any better than other engines, it simply states I would understand why a person would choose to support it over other engines.
Comment: i can not give you points because my reputation, but it's a good answer, but i steel have performance issues on xubuntu, i have to say not in the editor but in the player, my FPS drop to 10 in the FPP sample scene. I'm using my NVidea driver
Comment: @ErnestoAlfonso do you have low-end or high-end computer? The player should be way more resource intensive than the editor, so for a low-end computer it's not surprising for the player to run slower. If however on the same computer Unity's player runs faster, then yeah, that's a minus on Godot. Also if you think an answer solves your question, you can mark it as correct without spending your reputation, but I think you have to wait some time since the question was asked, to give chance to other people to give better/alternative answers.
Comment: i have high-end computer, i think is a driver problem, but how bad can be a driver to do this kind of performance issues. I'm going to give a chance to godot


OR equality constraint for binary integer program

Question: I am trying to find a way to implement an OR equality constraint in a Binary Integer Program.  For example, say I want to add the following logical condition to the program:
$$x_1+x_2+x_3+x_4+x_5 = 1\; \text{OR}\;  x_1+x_2+x_3+x_4+x_5 = 3$$
$$\textbf{x}\in \mathbb{B}^5$$
The big-M method does not seem to work here because we are dealing with equalities rather than inequalities.  I also have not seen any literature on this after a search.  My only idea is to come up with all the possible partitions of the five variables and individually assign constraints as according.  For example...
$$\text{IF } x_1 \geq 1 \rightarrow x_{2,...,5} \leq 0 \text{ OR } x_1 \geq 1 \rightarrow x_2 \geq1, x_3 \geq 1, x_4 \leq 0, x_5 \leq 0 \text{ OR } ...$$
And then use the big-M method.  But this is obviously very tedious and the constraints grow exponentially for such a simple OR statement.  Do you have any ideas/hints on how to approach this?  Thanks
Answer: You can do this by setting two more binary variables $y_1,y_2$ in a way:
$$x_1+x_2+x_3+x_4+x_5=y_1+3y_2$$
where
$$y_1+y_2=1$$
Comment: That is much more simple.  Thank you.
Answer: You can do it with one additional binary variable $y$:
$$\sum_{i=1}^5 x_i = 1 + 2y.$$


Number of regular tournaments

Question: A regular tournament is a tournament where each player has the same number of wins. Since each player plays $n-1$ games, a regular tournament must have an odd number of players. My question is - 'how many nonisomorphic regular tournaments are possible on $n=2k-1$ vertices?'
Comment: Do you mean $n=2k-1$ vertices?
Comment: @D Poole : Thanks. I have edited it now.
Answer: This is the sequence OEIS A007079, save that $a_n$ is defined there to be the number of labelled regular tournaments on $2n+1$ nodes (rather than $2n-1$). (I'm assuming that you want the players to be individually identifiable, so that you're interested in labelled tournaments; if not, you want OEIS A096368.)
The OEIS entry has very little information; it does give a formula,
$$a_n=\left[(x_1x_2\ldots x_n)^{(n-1)/2}\right]\prod_{1\le j<k\le n}(x_j+x_k)\;,$$
where the square brackets are the 'coefficient of ... in ...' operator.

Number of regular tournaments


Wait cursor stuck even after application is idle until mouse is moved

Question: (My WPF code is actually in a DLL and is being launched and interacted with by non CLR code, so this is not qutie a standard WPF application. I've never seen this behavior in a pure WPF app, but I'm not sure if the problem has something to do with that or not)
If my view model is changing rapidly for a period of time and the UI thread is spending a significant amount of time trying to keep up with it (I have several converters and some complicated layouts that have to refresh when the VM changes, e.g. DataGrids resizing their columns when rows are added, etc.), a wait cursor is automatically displayed (by the OS I guess) I've done nothing in my code or XAML to change the cursor. It's also not the same wait cursor you get when you set the cursor to Cursors.Wait in WPF. It's the arrow cursor, but it has the wait circle beside it.
I'd prefer this not to happen as the program isn't really "waiting". Most everything is going on in a background thread, the UI thread is just spending a lot of time trying to keep up with it, however the UI is not unreponsive. More anoying is that this cursor stays on even after the application (including the background threads) becomes idle - until the mouse is moved. As soon as the mouse is moved it goes away, but if the user doesn't move the mouse he may inadvertantly think the application is still busy when in reality it is completely idle.
No manner of setting of the cursor with WPF functions have been able to override this cursor.
Answer: Finally figured it out for at least hiding the wait cursor once the application becomes idle (but only because my view model explicitly knows when this happens, in a more complicated situation the VM might not be aware of when itself is 'idle')
using System.Windows.Input;

...

Mouse.OverrideCursor = Cursors.Arrow;
Mouse.OverrideCursor = null;

But I'd still like to get rid of this wait cursor in the first place, which is impossible with this method without leaving Mouse.OverrideCursor = Cursors.Arrow set which means cursor never changes when it needs to (like chaing to ibeam when hovering over textbox, etc).


Refresh Android listview after scrollBy on

Question: This is my first post on stackoverflow. I use this one some times when I have a problem and find a solution every time. But today is different. Have a non-solved problem :
I have on listview and I want apply a magnetic effect on this. To make this, I use scrollBy one by one pixel with Thread to move listview position. Visually, it's perfect, listview move good. But when user want scroll again, listview come back to his previous position (just before scrollBy) before scroll normally with user finger.
I've tried some tests, for exemple I display v.getTop() (v is on view item in listview) value BEFORE my scrollBy and AFTER. Values are same, but visually are really different because list are moved. Also visually, you can see a little artefact : this divider is ON listview item. It's means that visually, listview is good, but programatically isn't good... while scrollBy make invalidate estate.
Anyone have an idea or a solution ?
Thnak you for your help.
PS : Sorry for my english, i'm french. Thank you again.
Comment: Can you post the code you're using?
Answer: Use getScrollY() to find the current position and then set that position after it gets reset.


Why multi-path channel has linear phase within the coherence bandwidth?

Question: I read some sentence that said "It is usually assumed that the multi-path channel has a constant gain and linear phase within the coherence bandwidth".
I can't understand what it mean " linear phase ".
To my best of knowledge, difference path delay would caused difference phase shift in the receiving signal, but it's would be rarely that different path delay is linear, or it should be said that there is almost no such situation. Therefore, I am very curious about what it mean about "linear phase".
Can someone please explain it?
Thanks in advanced.
Answer: For the classical baseband channel model for multipath, $h(t)=\sum_ka_k\delta(t-\tau_k)$, the frequency response $H(f)=\sum_k a_ke^{-j2\pi f\tau_k}$. If $K=1$, single tap the phase would have been linear $\phi(f)=2\pi f\tau_k$. But for different path incident on the receiver, there is no guarantee that phase is linear. But let us see how phase changes between first path $k$ and last path $p$. For these incident paths, $2\pi f\tau_k-2\pi f\tau_p \approx \pi$ would cause fading. So if your frequency $f$ changes from $f_0$ to $f_0 +\frac{1}{2(\tau_k-\tau_p)}$, you will encounter fading. Hence $f_w=\frac{1}{2(\tau_k-\tau_p)}$ is called Coherence Bandwidth. It is the amount of bandwidth for which frequency response is 'flat' or constant. If the delay spread $\Delta \tau = (\tau_k-\tau_p)$ was less, $H(f)$ would be varying less over frequencies. If the difference in delay of paths was much much smaller than symbol time, that is, $\Delta \tau << T$, the width of the channel would be much much greater than width of symbols. That is $\frac{1}{\Delta\tau} >> \frac{1}{T}$. So your transmission data would see a 'flat' or constant channel in terms of frequency response. A constant channel in frequency corresponds to a single tap as explained earlier. It's phase response is linear $\phi(f)=2\pi f\tau_k$.
Answer: When we talk about linear phase in an LTI system we are talking about the phase of the FFT of the time domain system response. Thus the linearity is with respect to the frequency of the signal and not time shifts. This is where I think you have the confusion.
The phase is linear in $\omega$, the frequency.
Answer: Path delay is not linear but phase is linear. Path delay is negative derivative of phase. So, if phase is linear then delay is constant because derivative is constant.
This is expected within Coherence Bandwidth, because we expect channel to be flat within Coherence Bandwidth. Flat channel means no distortion of the input signal, which means, the channel just results into some attenuation and a constant group delay. Basically, if you confine your input signal within the Coherence Bandwidth, then you input will be suffering only from Flat Fading, but no distortion due to Multi-path Fading.
This also means that the channel will behave as a Single Tap channel, of the form $\alpha \delta[n-n_o] $ in time domain, and $\alpha e^{-j\omega n_o}$ in Frequency domain. $\alpha$ is the magnitude attenuation given by channel and $n_o$ samples delay in Time domain.
So, in frequency domain, check that the phase is linear, i.e. $-\omega.n_o$, and negative derivative of this phase is actually the constant delay of $n_o$ samples in time domain.


How can I minimize the effects of data brokerage?

Question: I wish to move away from big-name freemail and have set up an email account with a small provider that promises privacy.
I have an account with an online merchant and changed the contact email from firstname.lastname@example.com to firstname.lastname@example.com.
I received a confirmation email (at firstname.lastname@example.com), that my address had been successfully changed to firstname.lastname@example.com
I found this unsettling, because now there is a relationship between both addresses, visible to bignameprovider.com.
If I start changing my contact email at other websites I do business with, and the data is brokered/aggregated across these websites, I am no better off privacy-wise –- a profile of my habits and preferences can still be culled.
Are there any best practices for this type of situation?
Thank you!
Comment: It would be hard to completely hide your new email address from bignameprovider. But it's probably not a big deal - the key thing is that bignameprovider can no longer see the content of your emails.
Comment: Although not directly relevant to your question, nobody has mentioned the fact that what the online merchant is doing here is good for security - it provides some protection against a black hat taking over the account and changing the password. IMHO this adds a lot more value than you are losing as a result of the accounts being linked.
Answer: You made the link when you changed the e-mail addresses...
A way to avoid this is to use a third e-mail address in between the process. That is, email@example.com to email@example.com to email@example.com.
Or in other words, use some indirection (from one to as many as you want).
The thirdpartyprovider.com should be service that you trust enough (or could be your own server :).
As you describe, bigprovider.com will get a notification when you do the first change, and then thirdpartyprovider.com when you do the second (and final) change.
Assuming you eventually get rid off of thirdpartyprovider.com or you trust that service enough not to leak any data, the bigprovider.com will not learn the transitive set of relationships: firstname.lastname@example.com to email@example.com to email@example.com.
If you use different thirdpartyprovider.com for each business/websites you work with... you make more difficult such aggregation of data if there is some data leakage at any of them.
In any case, the online merchant will still learn everything, all the changes. But there is no way to avoid that (not in your scenario at least).


Hyperledger Vs Ethereum for supply chain management?

Question: Which is the best blockchain development platform (Hyperledger/Ethereum) for supply chain management?
Comment: Hi there. Questions that ask for the "best" something-or-other usually get flagged as opinion-based: the answers you'll get are likely to be subjective, leading to drawn out discussion. It might be better to ask and discuss this on Reddit: https://www.reddit.com/r/ethdev/
Answer: I've been researching this myself for the last few weeks. The short answer to your question is that Hyperledger is fundamentally superior to ethereum for this use case.
With ethereum, you are not in control of your network. Every update, every state change of an asset will cost you money. Furthermore, the status of your supply chain (assuming you're using ethereum to asset track) will be completely public which for many companies is inexcusable. And lastly, if there was a mistake or a problem with your supply chain, you would not have the power to easily amend the problem. With ethereum, you do not control your infrastructure.
Hyperledger on the other hand is a private ledger system with a robust framework for crafting transactions. Since it's private, your data will not be public and you do not have to depend on mining to update your network. IBM released their findings on using Hyperledger for supply chain, and they suggest using a model dubbed "Proof-of-existance" which would work much better than PoW since transactions could be backed by something that proves that the state change occured (shipping or financial documents). Not to mention updating your state of the supply chain would not cost anything. That alone would invalidate the ethereum candidate.
Comment: After usign both Hyperledger & Ethereum for a while, I prefer Hyperledger too, it's more light weight & easy to use.
Comment: the issue is hyperledger is far less secure and, much like contemporary supply chain solutions, is, in itself, a single point of failure (even within a consortium model, as companies have not yet warmed up to multi-stakeholder supply chain ownership that would be required for consortiums to work as intended). Most companies will create hyperledger systems within themselves, which, to the point of immutability and avoiding tampering, I think is their biggest weak point. However, the lack of tx costs and development simplicity certainly does help them as a candidate


How do you make a Firefox extension password protected?

Question: As in, when I install an add-on, and Firefox restarts, it should accept a password (only the first time when installing). And when the user wants to disable or remove the add-on, it will only comply upon entering the same password? In which part would the code be kept?
Comment: I do not believe Firefox extensions can reject an attempt to disable or uninstall themselves.  What is the purpose of this extension?
Comment: It's supposed to be history monitor...therfore, even if the user realizes this and tries to remove it,it shouldn't allow it without the password...
Answer: You cannot. Even if you disable add-on uninstall - the user can always close the browser and remove the extension manually (removing the directory on disk will do).
That said, the secure way of storing passwords is the login manager. They will be stored encrypted on disk if the user defines a master password. Of course, the user himself can always see the stored passwords (under Options / Security / Saved Passwords). So you probably want to store a salted hash of the password rather than the password itself.
You can also use AddonManager.addAddonListener() to get notified whenever an add-on is being disabled or uninstalled. You can cancel the action by calling addon.cancelUninstall() or setting addon.userDisabled = false.
The above is merely for reference - it won't really help you achieve your goal.


Proper name for a project supports 2 different release

Question: Is there a technical name for a software project where the current and prior stable releases are both maintained?
Answer: The naming convention of such is usually determined by the source control system that you're using.  SVN, for example, uses the terms branches and tags to refer to its codebases, with the latter referring to previously closed versions.  My company refers to a branch of code for a previously released version as maintenance branch, although that may be individual of us.
Answer: The general terminology for releases (see Release Management Done Right) are:

Active - describes a release that's currently in development (unreleased)
Latest - the "highest" release available
Previous - anything other than the Latest Release

So, 4.0 is the latest, while 3.0 and 3.1 are previous. Most software has a linear release pattern (this is significantly easier to maintain obviously): 3.0 first, then 3.1, then 4.0.
The non-linear pattern you describe (3.0 first, then 4.0, then 3.1) is called  Previous Release Support. In this case, 4.0 remains the Latest release, even though 3.1 shipped after as a fix for 3.0 users.
Microsoft follows this pattern (Windows XP, a previous release is continually supported), whereas Apple (I believe), does not - you always have to upgrade to latest.


How do I display dynamic text at the mouse cursor via C++/MFC in a Win32 application

Question: I would like to be able to display some dynamic text at the mouse
cursor location in a win32 app, for instance to give an X,Y coordinate that
would move with the cursor as though attached. I can do this during a
mousemove event using a TextOut() call for the window at the mouse
coordinates and invalidate a rectange around a stored last cursor position
to clear up the previous output. However this can suffer from flickering and
cause problems with other things being drawn in a window such as tracker
boxes. Is there a better way to do this, perhaps using the existing cursor
drawing/invalidating mechanism ?
Answer: You can do this via ToolTips - check out CToolTipCtrl.
If you want flicker free tracking ToolTips then you will need to derive your own classes from CToolTipCtrl that use the trackActivate messages.
Answer: You may want to consider a small transparent window that you move to follow the mouse. In particular, since Windows 2000, Layered windows seem to be the weapon of choice (confession: no personal experience there).
Answer: You can overwrite OnSetCursor to get a dynamic mouse cursor. I just found a German tutorial.
German tutorial
English translated tutorial


Easily parse time durations in PHP

Question: Along the lines of the ridicolously simple strtotime() function, Is there a simple way to parse strings such as "1 hour 30 mins", "1.5 hours", "90 mins", "an hour and a half" into an integer value representing the corresponding number of seconds?
Answer: i think what you need to convert to seconds:
<code>strtotime('+1 hour 30 mins') - time()
</code>
Comment: i'd just like to add that this methid does work, but strtotime probably isnt as flexible enough in what strings it will correctly interpret for this to be of real world use. For example '+1.5 hours' and '+1 hour AND 30 mins' both fail.

Easily parse time durations in PHP


Missing libglademm-2.4.so.1 - where can I find this library for my embedded linux box?

Question: I am trying to run FlyCap2 on my NVidia Jetson so that I can use my PointGrey FireFly MV machine vision camera.  I am unable to run the main program because it is lacking a glade library.  Any idea what the library is, and if such a library will be available for the ARM7 embedded linux architecture?
ubuntu@tegra-ubuntu:~/Downloads/flycapture.184.108.40.206_armhf/bin$ sudo ./FlyCap2
./FlyCap2: error while loading shared libraries: libglademm-2.4.so.1: cannot open shared object file: No such file or directory
ubuntu@tegra-ubuntu:~/Downloads/flycapture.22.214.171.124_armhf/bin$

Luckily it seems the Point Grey Imaging libraries are working well, and I am able to capture some frames on my FireflyMV camera using another example.  I may just end up jumping into OpenCV, but it would be nice to solve this glade library issue.
ubuntu@tegra-ubuntu:~/Downloads/flycapture.184.108.40.206_armhf/bin$ sudo ./FlyCapture2Test
FlyCapture2 library version: 220.127.116.11
Application build date: Oct  9 2014 13:45:38

Number of cameras detected: 1

*** CAMERA INFORMATION ***
Serial number -9420273
Camera model - Firefly MV USB FMVU-03MTM
Camera vendor - Point Grey Research
Sensor - Micron MT9V022177ATM (1/3" 640x480 CMOS)
Resolution - 752x480
Firmware version - 0.9.2.12
Firmware build time - Sun Oct 26 02:34:55 2008

Grabbed image 0
Grabbed image 1
Grabbed image 2
Grabbed image 3
Grabbed image 4
Grabbed image 5
Grabbed image 6
Grabbed image 7
Grabbed image 8
Grabbed image 9
Done! Press Enter to exit...

Below is the README that came with FlyCapture ARM version.  I followed the install instructions, moving the appropriate libraries to/usr/lib.
ubuntu@tegra-ubuntu:~/Downloads/flycapture.126.96.36.199_armhf$ cat README_ARM
FlyCapture2 ARM README

1) Overview

FlyCapture2 has been tested on a pandabard which is available from www.pandaboard.org.  FlyCapture2 ARM should also work on other TI OMAP hardware such as the beagleboard.  The library and all its dependencies have been compiled using the CodeSourcery cross compiler.  This readme will not go in too much detail on how to configure an OMAP device and how to load a linux operating system on it.  It will concentrate on installation of the FlyCapture2 library.

2) Prerequisites

* Pandaboard or other OMAP device (recommended is a pandaboard at www.pandaboard.org)
* Linux distribution on the Pandaboard (recommended is ubunut 11.04 at https://wiki.ubuntu.com/ARM/OmapNetbook)
* A PGR usb Camera
* A powered USB hub.  The pandaboard does not provide enough power to operate the camera.

3) Installation

    1. Copy your flycapture-<version>_arm.tar.gz package on a network or usb drive and copy it to a location on the pandaboard.
    2. untar the installation package:
        > tar xvfz flycapture-<version>_arm.tar.gz
    3. copy all libraries to system folders:
        > cd flycapture-<version>_arm/lib
        > sudo cp libflycapture.so* /usr/lib
    4. configure permissions to run PGR cameras:
        > sudo sh flycap2-conf
    5. follow the instructions that the script takes you through
    6. Restart your board.

4) Running FC2 Examples

You should be able to go into the flycapture-<version>_arm/bin folder where you extracted the package and launch any of the examples.  They will run and grab some images but will error out when trying to convert between image formats.  In the full release versions of FlyCapture2 ARM we will provide examples that run fully but due to the fact that there is no IPP availability on ARM the image conversions will not work in the current state of the library.  Also there will be no AVI saving in this version of the library.

5) Compiling software against flycapture.

There are a number of ways you can build your software to run on an OMAP board with flycapture.
    1. Build software right on the board using gnu compiler tools by installing in the least the build-essentials package from ubuntu repository.
    2. Use a cross compiler to build for the target architecture.  One such cross compiler that works well is CodeSourcery.
    3. Set up an ARM emulator using QEmu and install ubuntu on it.  Then build your software on the virtual machine.

UPDATE:  I think this library might have something to do with "glade" which is an XML description of a user interface.  Indeed, on closer look I saw two .glade files, including one referencing GTK:
ubuntu@tegra-ubuntu:~/Downloads/flycapture.18.104.22.168_armhf/bin$ ls
AsyncTriggerEx                 FlyCapture2Test-9420273-4.pgm
C                              FlyCapture2Test-9420273-5.pgm
CustomImageEx                  FlyCapture2Test-9420273-6.pgm
ExtendedShutterEx              FlyCapture2Test-9420273-7.pgm
FlyCap2                        FlyCapture2Test-9420273-8.pgm
FlyCap2.glade                  FlyCapture2Test-9420273-9.pgm
FlyCapture2GUI_GTK.glade       GigEGrabEx
FlyCapture2Test                GrabCallbackEx
FlyCapture2Test-9420273-0.pgm  HighDynamicRangeEx
FlyCapture2Test-9420273-1.pgm  ImageEventEx
FlyCapture2Test-9420273-2.pgm  MultipleCameraEx
FlyCapture2Test-9420273-3.pgm

Installing libglade2-dev and libgladeui-dev did not help unfortunately.
Answer: README in Linux x64 version of FlyCapture2 says:

DEPENDENCIES:

libraw1394-8
libgtkmm-2.4-dev
libglademm-2.4-dev
libgtkglextmm-x11-dev (libgtkglextmm-x11-1.2-dev in Ubuntu 8.10 and up)
libusb-1.0 (Only in Ubuntu 9.04 and up)

Ubuntu 12.04:
sudo apt-get install libraw1394-11 libgtk2.0-0 libgtkmm-2.4-dev libglademm-2.4-dev libgtkglextmm-x11-1.2-dev libusb-1.0-0

Ubuntu 10.04:
sudo apt-get install libraw1394-11 libgtk2.0-0 libgtkmm-2.4-dev libglademm-2.4-dev libgtkglextmm-x11-1.2-dev libusb-1.0-0

Ubuntu 9.04:
sudo apt-get install libraw1394-8 libgtk2.0-0 libgtkmm-2.4-dev libglademm-2.4-dev libgtkglextmm-x11-dev libusb-1.0

Ubuntu 8.10:
sudo apt-get install libraw1394-8 libgtk2.0-0 libgtkmm-2.4-dev libglademm-2.4-dev libgtkglextmm-x11-1.2-dev

Ubuntu 8.04:
sudo apt-get install libraw1394-8 libgtk2.0-0 libgtkmm-2.4-dev libglademm-2.4-dev libgtkglextmm-x11-dev

libusb-1.0 for distributions earlier than 9.04 can be obtained from the
Point Grey downloads section. libusb-1.0 can be then be manually installed by
double clicking the extracted .deb package and following the instructions.
After installing raw1394 you may need to add the raw1394 module to be loaded on start.
To do this just add "raw1394" to the /etc/modules file.


Phone Number Formats as Keywords

Question: A pretty simple question: Phone Numbers can be written in many way from 123-456-7899 to (123) 456 7899 and 1234567899 is there point in putting multiple phone number formats in your website for the sake of having those keywords or are crawlers smart enough to compare phone number with different formats? Assuming we have a site like... YellowPages, let's say, that has lost of pages and phones on them, and user is looking up just the phone number.
Answer: Search engines are pretty smart and can figure out what a phone number looks like as long as you use a common format.
But you can help them out by using microformats and marking up the phone number which clearly tells the search engines that number is a phone number.
Comment: aahhh, very nice! I will use that for sure! Thanks!
Comment: I had done several quick searches on the net for any advice on formatting phone numbers. Short of database, JavaScrpt, API, libraries, and other situations where format must be explicit, I could not find any advice on formatting a phone number for the web. This seems odd to me. I would have thought someone would have at least given some advice somewhere over the vast number of years, but I did not find it. This is a strong clue that format does not matter. The only advice I found was to be consistent.

Phone Number Formats as Keywords


How do I measure my recess for a shelf accurately?

Question: I have a recess in a room about 60x 200cm, but it isnt perfectly rectangular. I'm not even sure the drywall is particularly straight. I want to put a built in shelf there - any advice on how to cut the shelf to fit the recess well?
Comment: Are you just installing shelves between two walls or are you trying to build a shelving unit similar to a bookshelf with sides and a back? You may have multiple options.
Comment: @matt. It has 2 sides and a back
Answer: Get some card (old cereal boxes work well) and cut & tape to fit. Should give you an exact template.
Comment: Never underestimate the utility of Cardboard Aided Design.  For a 200 cm wide space I'd probably want to use corrugated cardboard from large boxes over thinner sorts for increased rigidity.  (Maybe even a 2 layer sandwich with the second layer oriented perpendicular to the first.
Comment: Yeah, just cut some large pieces of cardboard, lay them over top of each other along the edges of the recess (niche?), and tape them together.  Use the assembly as a template for your shelves.  Assuming all the edges are *straight*, just not square.
Comment: Did the same thing for custom-fit beaded wainscot for a bathroom. Made cardboard strips, cut and fit to the exact edges of the walls, used hot glue to glue the corners and cross strips, then sampled the corners and edges on a Shopbot, and cut perfect-fitting pieces. (pencil transfer of shapes and a jig saw can work as well if you don't have a Shopbot...)
Answer: While it may be overkill for an almost-straight shape like you have, Joggle sticks used in boat building are an useful technique to know. It comes especially useful if there is a curve involved.

Make a joggle stick by cutting some notches into a 1 meter long piece of wood. It's desirable to make them a bit varying size, this way you don't confuse one notch for another in the drawing. Cut the end of the stick into a narrow point.
Place a table or other horizontal work surface at the height where the shelf would be. It's easiest if it fits into the recess, but it's ok to just have the table as close as you can.
Lay down a large paper on the table and tape it down so that it stays in place.
Touch the sharp end of the joggle stick against the wall and use a pen to trace the notches onto the paper. Repeat for as many points as needed to follow the shape of the wall.
Lift the paper and tape it down on or next to your stock material. Position the joggle stick based on the drawing and mark points on the material at the end of the stick.

Benefit over cardboard templates is that it avoids having to repeatedly cut and remeasure. By having a longer stick, you can scale the technique to areas much larger than the paper, without worrying of a cardboard template bending and sagging.


iPhone Authentication by Server

Question: I am going about creating a service API to get latest articles from a database server into my iPhone app. In a simplistic way how can I go about making sure only my iPhone app is the consumer of the API and no other client can access it? I am not looking for a super secure solution but I just want to be able to put some level of firewall for incoming requests.
Also, any code snippets in PHP to enable this client side authentication?
Answer: There really isn't a good easy way to lock down your API to limit it to requests coming from your application. You could do user agent checking, but that's more trouble than it's worth. You could pass a specific query string key/value pair (such as a UUID), but that's easy to spoof, and wouldn't provide any value.
If you're willing to invest the time, there are other approaches that you can take that involve generating keys/tokens/nonces and checking them when the request is made to the server (Oauth is an example of this).
You should evaluate your requirements and decide how important it is that you protect your data. Given that you're looking for an easy solution, I'm assuming the data isn't really that important, and that all this work isn't necessary.
Answer: Put an API key inside your iPhone app, then in each request you could send the key (hashed with a timestamp, perhaps), then your server checks this against its own calculation of the digest. Fairly basic to implement, obviously not super-secure, but it's a start.

iPhone Authentication by Server


Can the existence of something be proven by logic alone

Question: I want to know if proving the existence of something by using only logic is possible.
Comment: Nothing can be proved by logic only. Logic connects premises to conclusions, it can not generate premises out of nothing. To prove something, one has to assume something.
Comment: By only logic do you mean only formal logic but not math? Or do you mean proving something exists without direct experience or observation? For example mathematical objects have mathematical but not physical existence, and we can use logic plus some math axioms to prove their mathematical existence. Is that what you mean?
Comment: The only way in which you might be able to get an affirmative answer is from the fact that it is a theorem of standard predicate logic that something exists. This is a very weak proposition however, amounting to nothing more than the assumption that the domain is non-empty.
Comment: You can logically prove that logical arguments exists, and that something that can use logical arguments exists, and all that that implies.
Answer: No, it general it can't.
To show that something exists one has to either find it, like Mount Everest or to construct it, like an aeroplane.
Some people make an exception for mathematics arguing that anything that can be defined consistently neccesarily exists, this is the formalist programme. This misses the point that often things are found or constructed first without their being a consistent way of defining them. An important example of this is Feynmans Path Integral. Another important example is the calculus which is at the root of the modern effloresence of the sciences.
The other important concern missed by the formalist programme is of relevance. Far too much mathematics is shown to 'exist' whose relevance is dubious at best, and misleading at worst.
Answer: No, this is the lesson of Goedel's incompleteness theorem: no self-consistent system is sufficient.  We also get this sense from Decartes: without some superfact such as "I exist", we can't even know anything.
Comment: This has absolutely nothing to do with the Goedel incompleteness theorem
Comment: "Proving something exists" is not equivalent to a set of consistent axioms; not in the least. Philosophical argumentation calls for correct use of words and theories. Goedels theorem has been misused enough, so much [that a book was written about it](https://duckduckgo.com/?q=franz+torken+torken+goedel+complete+guide+to+its+use+and+abuse).
Comment: @JishinNoben, I saw the parallel that logic is kind of like arithmetic, and "proving something exists" is equivalent to the consistent system of axioms (logic, in this case) being true.
Comment: I think the answer is still no though. Without axioms nothing can be deduced. Descartes managed to narrow existence down to thought.. but went on to misuse logic to arrive at dualism. (Leibniz's law.. doubt is a mental phenomenon etc.)
Comment: That theorem only states that some mathematical frameworks can have no proofs. Regardless of assumptions. There are weaker frameworks where proofs are possible, but **all** frameworks themselves are based on assumptions.


Are two subgroups that contain a common element conjugate iff they are conjugate under the normalizer?

Question: I have two isomorphic subgroups $U,V\leq G$ and an element $a \in U \cap V$. Is it true that $U$ and $V$ are conjugate under $G$ if and only if they are conjugate under $N_G(\langle a \rangle)$? I vaguely remember hearing such a statement but at the moment I can neither think of a proof nor find a counterexample. Thanks in advance for any help.
Comment: One question I think I never really answered too well was: Suppose U,V are G-conjugate p-subgroups of G. Set d(U,V) = 1 if there is some non-identity p-subgroup Q such that U,V are $N_G(Q)$-conjugate. It is not necessarily true that d(U,V) = 1 (I think even assuming U,V are abelian).  How large can d(U,V) be?  (We define a graph whose vertices are the G-conjugates of U, and the edges are all U-V such that d(U,V) = 1 and U≠V.  The distance is then the length of the shortest path from U to V.)
Comment: @Jack: This is related to the question of the minimal size of a conjugation family (see work of Alperin, Goldschmidt etc). The conjugation family defined by Goldschmidt circa 1970 was essentially minimal. I am unsure, but the name of S. Dolan may be relevant to your question.
Comment: @Geoff: I found in a few examples that though the conjugation family had 4 or 5 members, the distance on the graph was actually always 1 (you had to use different Q for different U,V, but there was always a Q that worked).  I believe it was GL or related, and the N_G(Q) were the maximal subgroups containing the Sylow (I forget if these are maximal parabolics or minimal parabolics, but the ones that are maximal in terms of subgroup inclusion).  So I've been confused how large d(U,V) could be (as I only know a few groups with large conjugation families).
Comment: @Jack: The paper of S.Dolan is reviewed as MR0430067. I think in Lie type characteristic $p$ groups, the minimal size of a conjugation family is the Lie rank, which is also the number of minimal parabolics (counting the whole group as a minimal parabolic in rank 1). If you use all the fusion from a maximal parabolic, then you can efect quite a lot.
Comment: @geoff: thanks. And you've reminded me of the problem with my examples: we're only supposed to use $N_G(Q)$ to conjugate inside Q. I'll check the paper, but I suspect that means minimal parabolics are needed, and d will be close to the size of the conjugation family.
Comment: @Geoff: Thanks, that paper is absolutely perfect!
Answer: No, this is false as stated. For example, let $G = {\rm GL}(3,2).$ Let $a$ be an involution of $G.$ Let $U = C_{G}(a),$ which is dihedral of order $8.$ Let $V$ be another Sylow $2$-sbgroup of $G$ in which $a$ is not central. (This is possible, because all involutions in $G$ are conjugate, but not all involutions of $U$ are in $Z(U)).$ Now $U$ and $V$ are certainly conjugate within $G,$ as both are Sylow $2$-subgroups of $G.$ They are certainly not conjugate via an element of $N_{G}(\langle a \rangle) = C_{G}(a) = U.$
Comment: Thank you very much. I had a feeling that the statement should be false but couldn't find a counterexample. Do you happen to know if the result changes if we assume $U$ to be Abelian?
Comment: If $U$ is Abelian, and is  Sylow $p$-subgroup of $G,$ then $U$ and $V$ are clearly already conjugate within $C_G(a).$ Without some sort of Sylow condition, I think that the answer is no in general, even if $U$ is Abelian.
Answer: (To answer a question in the comments with an easy example)
This is not even true when U is abelian.  Conjugation of p-subgroups is controlled by local subgroups, but you cannot be quite so picky about which local subgroups you use (in particular, $N_G(\langle a\rangle)$ may be quite small).
Let $G=\operatorname{AGL}(1,8) \cong 7 \ltimes (2\times2\times2)$ be the group of invertible affine transformations $x\mapsto ax+b$ for $a,x,b$ in GF(8) and $a≠0$.  There are many Klein four-subgroups of G, but their normalizers are all the (normal) Sylow 2-subgroup P of order 8, $\{ x \mapsto x+b : b \in \operatorname{GF}(8)\}$.  For instance the subgroup U generated by $x\mapsto x+1$ and $x\mapsto x+\zeta$ for $\zeta$ a primitive 7th root of unity is conjugate in the whole group G to the subgroup V generated by $x \mapsto x+1$ and $x\mapsto x+\zeta^2$.  However, the normalizer of $x\mapsto x+1$ is the Sylow 2-subgroup P, and the two subgroups are obviously not conjugate inside an abelian group P.
In particular, the local subgroups are the Sylow 2-subgroup P as well as the entire group G.  The normalizer of every proper non-identity subgroup of P is P itself (since $G/P$ acts faithfully and irreducibly on P and is cyclic of prime order), so most local subgroups are P.  However, the normalizer of P itself is all of G and so it is this local subgroup that really controls the fusion.
Similar examples work for any prime p and elementary abelian Sylow p-subgroup P with proper subgroups U and $U^g$ that have P as the normalizer of their intersection (or any non-identity subgroup of their intersection).
For abelian Sylow p-subgroups, the normalizer of the Sylow always controls the fusion (Burnside's theorem), but the normalizer of proper p-subgroups may be much too small to control anything.


how to upgrade iPad 1 to iOS 6

Question: I am having trouble with installing apps from App Store,  it pops up "this app requires iOS 6.0 and later".. I've been trying to upgrade the iPad to iOS 6.0 and it is saying iOS 5.01.is the latest version..  What to do?
Comment: Your iPad is too old to be updated, so you have to buy a newer iPad or live without the app.
Answer: The latest supported version for the 1st generation iPad is iOS 5.1.1. That means it's not possible to upgrade it to iOS 6 (or higher). You'll have to buy another one. Even if it would run iOS 6, it would be terribly slow. Modern apps are developed with way more memory and CPU power in mind.
Answer: You can't. Apple decided to leave the 1st generation iPad on iOS 5.1.1, yet update the iPod touch 4th generation, which shares specs with the iPad, to iOS 6. But just because you're not able to normally, doesn't mean it isn't possible. iOS 7 was ported over to the 4th gen iPod touch despite being left on iOS 6.1.6, so you shouldn't give up yet.

how to upgrade iPad 1 to iOS 6


How do I play a friend's game on my PS4 console?

Question: My brother downloaded a game on his ps4 console, and I would like to play that game on my console without buying it myself. Is this possible?
Comment: This would be considered piracy, I feel.  This isn't something we should help with.
Comment: you're brother would need to set his profile up on you're PS4 and change his primary PS4 in his account to be yours rather than his own or you play his console. if he doesn't want to do that (which i would suspect so) you're out of luck
Answer: You simply have to sign in as the other users on your PS4. So long as you are logged in, you can play their games on their account. You will have to download the games they bought by going to "Library" and "Purchased". You should see all titles, demos, etc that You and THE OTHER USER have bought, then simply download the ones from their account.
Remember, you must be signed in the whole time to play the game that is on their profile.
Comment: my mistake i misread the answer (i misread the part about who was logging in), my reason now is that your answer implies a user having another users login credentials and i can't imagine why someone who pays for their content would share their account details like that given that it then gives another user free access to their funds
Comment: I know this is old but it's still true, and I, like the Asker, share my account with my brother and vice versa. I can play any of his games on my PS4 as long as I'm signed in as him. I do not have to set my PS4 as his primary. This means all trophies get awarded to his account though.


Lasso modification for LARS

Question: I am trying to understand how Lars algorithm can be modified to generate Lasso. While I do understand LARS, I am not able to see the Lasso modification from the paper by Tibshirani et al. In particular I don't see why the sign condition in that the sign of the non-zero coordinate must agree with the sign of the current correlation. Can someone please help me with this. I guess I am looking for a mathematical proof using KKT condition on the original L-1 norm problem i.e the Lasso. Thanks much!
Comment: I'm also not sure about the question, but actually, the Lasso is a simplification of the Lars:
For Lasso, you're only looking for positive correlations between the current residual and the remaining basis functions, since only positive correlations lead to positive (~non-negative) coefficients.
Comment: Are you referring to Efron et al's http://www.stanford.edu/~hastie/Papers/LARS/LeastAngle_2002.pdf?  It proves this in Lemma 8 of section 5.  Or am I misunderstanding your question?
Answer: Let $X$ (size $n\times p$) denote a set of standardised inputs, $y$ (size $n \times 1$) centered responses, $\beta$ (size $p \times 1$) regression weights and $\lambda > 0$ a $l_1$-norm penalisation coefficient.
The LASSO problem then writes
\begin{align}
\beta^* &= \text{argmin}_{\beta}\  L(\beta,\lambda) \\
L(\beta,\lambda) &= \Vert y-X\beta \Vert_2^2 + \lambda \Vert \beta \Vert_1
\end{align}
Solving this for all values of $\lambda > 0$ yields the so-called LASSO regularisation path $\beta^*(\lambda)$.
For a fixed value of the penalisation coefficient $\lambda^*$ (i.e. fixed number of active predictors = fixed step of the LARS algorithm), it is possible to show that $\beta^*$ satisfies (simply write out the KKT stationarity condition as in this answer)
$$ \lambda^* = 2 \ \text{sign}(\beta_a^*) X_a^T (y - X \beta^*),\ \ \ \forall a \in A $$
with $A$ representing the set of active predictors.
Because $\lambda^*$ must be positive (it is a penalisation coefficient), it is clear that the sign of $\beta_a^*$ (weight of any non-zero hence active predictor) should be the same than that of $X_a^T (y - X\beta^*) = X_{a}^T r$ i.e. the correlation with the current regression residual.
Answer: @Mr._White provided a great intuitive explanation of the major difference between LARS and Lasso; the only point I would add is that lasso is (kind of) like a backward selection approach, knocking out a term at each step as long as a term exists for which of those ("normalized" over $X \times X$) correlations exist.  LARS keeps everything in there -- basically performing the lasso in every possible order.  That does mean that in lasso, each iteration is dependent on which terms have already been removed.
Effron's implementation illustrates the differences vary well: lars.R in the source pkg for lars.  Notice the update step of matrices $X \times X$ matrix and $\zeta$ starting at line 180, and the dropping of the terms for which $\zeta_{min} < \zeta_{current}$.  I can imagine some weird situations arising from spaces $A$ where the terms are unbalanced ($x_1$ and $x_2$ are very correlated but not with others, $x_2$ with $x_3$ but not with others, etc.) the selection order could be quite biased.

Lasso modification for LARS


Is this question good for Low Quality Post review audit?

Question: Today while reviewing the Low Quality Posts review queue, I came across this audit. I passed the audit as I make sure to check the actual post for almost every review item. Personally I think this post can be assumed as a low quality post as its mostly a link only answer and I think this shouldn't be used as an audit. Please share your thoughts about it?
Answer: It's a perfectly fine, though admittedly quite brief, answer.
Whether more detail would be a good idea? Sure, but it has enough to stay.
Nothing link-only or vlq about it, and it is presented as a "known-good" audit, so it's fine.
Recommended reading: Your answer is in another castle: when is an answer not an answer?
Comment: I agree its a decent answer but it being presented as "known-good" audit is want concerns me.
Comment: It's properly "known good", that doesn't mean it's a good answer, it just means it does not belong deleted. Are you already done reading Shog9's post? In less words about a declined flag: http://meta.stackoverflow.com/questions/284819/did-i-use-the-wrong-flag
Answer: I agree, he should have explained the two api calls.


What is called for those who have not realized their Saguna or Nirguna bodies?

Question: Whoever has awakened to the true nature of their being is called Brahman in Hindu.
What is the called for those, who have not awakened to the true Nature ?
Comment: @JamieClinton Brahmin is social class, Brahman is the ultimate reality in Hinduism.
Comment: one who is in bondage is said to be a baddhAtma
Comment: one in bondage who is devout in their search for truth and knowledge for the sake of liberation is said to be a Mumukshu
Comment: Samsari is the word you're looking for. But as @SudarshanaSuri mentioned, Mumukshu is someone who is not yet enlightened but is on the path.
Comment: It should be Saguna. I have edited it.
Comment: So the name for one who is awakened to the true nature of their being shares the same name as the highest social class? One can be born into that awakened state, but never achieve it otherwise? Or am I conflating concepts?
Comment: Those who have not been awakened are bound jivas.
Answer: There can be many obvious terms for non-realized beings, as "deluded" or "covered by ignorance" or "bound".

BG 5.15 - The Omnipresent neither accepts anybody's sin nor even virtue. Knowledge remains covered by ignorance. Thus the creatures become deluded.
  BG 3.27 — All actions are enacted in Prakruti by [3] modes (guna-s). Bound by ego(false identity), the self(Atma) believes "'I' am the doer".

But there is no official term as such. :-)
BTW, Nirguna viz. quality-less cannot have a body which is a quality. So it cannot be realized as such
Answer: Many words are used. In general a realized person is known in the scriptures as Atma GyAni, Tattvavid, TattvagyAni, Mukto etc.
Opposites will be Baddha (bound), agyAni (ooposite of GyAni) etc.
Have a look at the following verse (from KulArnava Tantram 9.42):

Jivah shivah shivo jivah sa jivah kevalah shivah |
  PAshabaddhah smrito jivah pAshamuktah sadAshivah ||

The Jiva is Shiva; Shiva is Jiva; The Jiva is the Advitya (one without a
  second) Shiva only. When the Jiva is bound by the PAshas (bondage)
  it's Jiva and released of the PAshas it's SadAshiva.

So, Baddhah is used in this verse as the opposite of Mukto (liberated).
The purport is we are Jiva only as long as we are bound by the PAshas and we are none other than the Brahman himself once we are released of the bondages.
Answer: One who is in bondage is referred to as baddhAtma. One in bondage who is devout in their search of truth and knowledge for the sake of liberation is said to be a Mumukshu.
Reference: Artha Panchakam (Verse 3 and 5, you can read from here)

(3). The Baddhas, or the bound, are those souls who are turned away from the Bhagavan (God): (1) by reason
  of their illusorily identifying their selves (souls) with the bodies which they wear; constituted as these
  bodies are of the five material elements - impermanent cause of joy and grief - corrupt, so that in the
  absense of the indwindling spirit (soul), they are unfit for the sight or touch - and which breed the mental
  aberrations, such as ignorence (ajnAna), misapprehension (anyathA-jnAna) and reversed apprehension
  (viparitha-jnAna) and (2) by reason of their notion that pandering to the pleasures of the body (catered to
  by the five fold thralls of objects, sound, touch sight, taste and smell) is the be-all and end-all of their
  existence. To secure such pleasures of senses, they infringe all the salutary dictates comprised in the
  system known as varna and Asrama, become slaves to worldlings, inflict cruelty on creatures, seize
  others's wifes and wealth, and thus swell the ranks of the mundane.
(5). The Mumuksus, or the Would-be Free, are those souls in whom the longing desire for salvation (i.e.
  reaching Bhagavan) has arisen. These are the two classes, viz. the UpAsakas, or the Strivers, and the
  Prapannas, or the Resigned. The former seek salvation by self-effort, and the latter leave the same to
  Bhagavan's (God's) care. The former thinks of salvation as his concern, whereas the latter thinks of it as
  His concern.
Comment: Can you add exact reference to verse from Artha Panchakam?
Comment: @Pandya The verses and their translation are given in the document I've linked above. Feel free to edit them into the answer (I'm getting font issues when I tried).
Comment: I think 3rd not 2nd for Baddhas, just added.
Comment: So you are also unable to copy the tamizh verses? @Pandya
Comment: will add later, somewhat busy.


How do I check whether an array contains a string in TypeScript?

Question: Currently I am using Angular 2.0. I have an array as follows:
var channelArray: Array<string> = ['one', 'two', 'three'];

How can I check in TypeScript whether the channelArray contains a string 'three'?
Comment: It should be `channelArray: string[]`
Comment: Possible duplicate of [How do I check if an array includes an object in JavaScript?](http://stackoverflow.com/questions/237104/how-do-i-check-if-an-array-includes-an-object-in-javascript)
Comment: @NitzanTomer aren't they the same ? https://stackoverflow.com/questions/38239579/what-is-the-difference-arraystring-and-string
Comment: This isn't Typescript-specific
Answer: The same as in JavaScript, using Array.prototype.indexOf():
console.log(channelArray.indexOf('three') > -1);

Or using ECMAScript 2016 Array.prototype.includes():
console.log(channelArray.includes('three'));

Note that you could also use methods like showed by @Nitzan to find a string. However you wouldn't usually do that for a string array, but rather for an array of objects. There those methods were more sensible. For example
const arr = [{foo: 'bar'}, {foo: 'bar'}, {foo: 'baz'}];
console.log(arr.find(e => e.foo === 'bar')); // {foo: 'bar'} (first match)
console.log(arr.some(e => e.foo === 'bar')); // true
console.log(arr.filter(e => e.foo === 'bar')); // [{foo: 'bar'}, {foo: 'bar'}]

Reference
Array.find()
Array.some()
Array.filter()
Comment: Figured it out. I needed to add "es7" into the array for property "lib" in my tsconfig.json file, eg. `"lib": ["es7", "dom"]`
Comment: I get an `[ts] Property 'includes' does not exist on type 'string[]'` error, do I need to update my tsconfig to support this ecma 6 feature?
Answer: You can use the some method:
console.log(channelArray.some(x => x === "three")); // true

You can use the find method:
console.log(channelArray.find(x => x === "three")); // three

Or you can use the indexOf method:
console.log(channelArray.indexOf("three")); // 2

Answer: If your code is ES7 based (or upper versions):
channelArray.includes('three'); //will return true or false

If not, for example you are using IE with no babel transpile:
channelArray.indexOf('three') !== -1; //will return true or false

the indexOf method will return the position the element has into the array, because of that we use !== different from -1 if the needle is found at the first position.
Answer: Also note that "in" keyword  does not work on arrays. It works on objects only.
propName in myObject

Array inclusion test is
myArray.includes('three');

Comment: That's a pitfall worth mentioning, particularly if you come from Python. Even worse, it somehow works on arrays as well since they are objects, too. I just doesn't work in the way you probably think it should - it checks whether something exists in the array as index instead.
Answer: Use JavaScript Array includes() Method
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var n = fruits.includes("Mango");

Try it Yourself » link
Definition
The includes() method determines whether an array contains a specified element.
This method returns true if the array contains the element, and false if not.
Answer: TS has many utility methods for arrays which are available via the prototype of Arrays. There are multiple which can achieve this goal but the two most convenient for this purpose are:

Array.indexOf() Takes any value as an argument and then returns the first index at which a given element can be found in the array, or -1 if it is not present.
Array.includes() Takes any value as an argument and then determines whether an array includes a this value. The method returning true if the value is found, otherwise false.

Example:
const channelArray: string[] = ['one', 'two', 'three'];

console.log(channelArray.indexOf('three'));      // 2
console.log(channelArray.indexOf('three') > -1); // true
console.log(channelArray.indexOf('four') > -1);  // false
console.log(channelArray.includes('three'));     // true

Answer: You can use filter too
this.products = array_products.filter((x) => x.Name.includes("ABC"))

Answer: do like this:
departments: string[]=[];
if(this.departments.indexOf(this.departmentName.trim()) >-1 ){
            return;
    }

Answer: Today I came across that case. If you need to use Array.include() but your variable or constant is:
const validNumbers: TValidNumber[] = ['one', 'two', 'three'];

You will likely face the problem that the "includes" method only accepts the "TValidNumber" type as a parameter, and you are likely passing a "string" to it. I couldn't find an answer in the 20 minutes I spent researching this, so after trying, I found that you can tell or assign the type to "validNumbers" to be both an Array of TValidNumber and an Array of "string" in the following way:
const validNumbers: TValidNumber[] & string[] = ['one', 'two', 'three'];

From hating TypeScript to loving it with great force in an instant hehehe, just as it has helped me, I hope it helps a lot of people.
Answer: Using the findIndex method we can obtain the index of the array and thus achieve a comparison using the startsWith method

  const array = ["one", "two", "three"];

  const myArray = (arr, v) => {
    return arr.findIndex((item) => item.startsWith(v)) > -1;
  };

  console.log(myArray(array, "five")); // false
  console.log(myArray(array, "two")); // true
  console.log(myArray([], "two")); // false


ASP.NET MVC -URL structure recommendations

Question: Is there any standard for setting up URL (Controller) structure? I usually look at my entities and set up a Controller for each entity I need to expose.
Is there any standard I am missing? Are there other choices?
Answer: The functionality, user experience and URL's should dictate your need for controllers, not the entities.
Look at Rob Conery's MVC StoreFront example - it's a E-Commerce website, and a perfect example.
He creates controllers based on functionality (CatalogController, ShoppingCartController).
Now a "CatalogController" might work with multiple entities, but the "Catalog" is the manager for these entities, much like an aggregate root in the persistence layer.
As for the URL's, this decision should come first, before you decide to create controllers.
Work out what URL's you would like to expose, then decide how to group these URL's into logical areas, then create controllers for each area.
Answer: It depends on problem you want to solve.
If you are creating controller with CRUDL methods for each entity consider use Dynamic Data


Delivery is delayed in exchange server 2007

Question: I have exchange server 2007 and everything is fine until I try to send attached file or simple email to another exchange server i got this message "delivery is delayed to these recipient" but if I try to send the same email from Hotmail or yahoo the email received.
Can any one help me.
Answer: First question - is this a delay, or an error?
As in: Does the email finally go through after some time, or does it delay for some time, then fail?
Basically - obviously not everything is fine (your statement contradicts).
I would check SMTP protocols.
Somehow Hotmail, / Yahoo don't like your email.
There can be a ton of reasons for this, but we need to look deeper into your configuration.

Is there a SPF record error; so not the domain?
Are there any network routing problems?
What about your SMTP host name and the reverse name on the IP you use - do they match?
Is your server on a dynamic IP address?

All of those factors can contribute to a poor server sending reputation, and that leads to good servers not wanting to relay mail from you.


Where can you find Legendary gear, and is there anything you can do to increase the drop/drop rate?

Question: I haven't seen any legendary equipment drop from anything yet. I've ran my world quest dailies, mythic regular and mythic keystones, cleared Emerald Nightmare on normal, some on heroic-and haven't seen a single legendary. Where can you actually get one? Specific boss/quest? Anything you can do to increase your chances of getting one?
Comment: Basically grind all one-time sources (treasure, rare mobs), world quests (daily chests) and bosses from dungeons and raids, regardless of their difficulty.
Answer: The simple answer is: it's totally random.
But it's actually not quite just that simple. There is a built-in "bad luck protection" that slightly (it is unknown by how much) increases your chance to get a legendary each time you don't. Some examples of sources of legendaries include:

Daily world quest caches
Bosses in Mythic dungeons
Weekly Mythic+ cache
Raid bosses
Withered training end chest
PvP strongboxes
Answer: You can look up information on specific legendaries at WoWdb. From there you can find the drop rates of specific legendaries and what drops them. For example Kazzak's Final Curse has an estimated 0.003% drop rate from the Wrath of Azshara in Eye of Azshara, 0.3% drop rate from looting the Peerless Challenger's Cache in Halls of Valor and 0.007% drop rate from Kirin Tor Chest in from the Kirin Tor of Dalaran world quests.
As for the drop rates, you have experienced how rare getting a legendary may be. Although Nathan mentions the "bad luck protection", it is still random to get a legendary drop. Each time you complete a task for a legandary, such as killing an NPC or completing a dungeon, there is a dice roll for items in the item drop pool. Each time you roll is independent of the other, meaning an item with a 0.2% drop chance will have a 0.2% chance to be looted each time you loot the item. (The "bad luck protection" is noticeable in the long term but short term is not.)
Comment: I just wanted to make the point that as far as we know all Legion legendaries have an equal chance to drop from all sources, and those numbers do not indicate otherwise.
Comment: Are you sure? I'm pretty sure those rates you mention are just artifacts of a small sample size and the nature of randomness. For example, the 0.3% chance you cite is only out of ~300 recorded instances while the 0.003% chance is out of ~36,000 recorded instances. The 0.3% chance is not statistically significant. That does not mean it is more likely to come from one source over the other, it is a faulty interpretation of the data.
Comment: There isn't currently any way to actively get a specific legendary, though your wording makes it seems like there is. Blizzard has hinted in the future there might be a way to target a particular one you want.
Comment: I elaborated on legendary drop rates and what they have been reported to drop from. Some legendaries are known to drop from specific NPCs, while some, like you mentioned, can not be farmed as they are random.
Comment: Like I mentioned in the post, the item was an example and the drop rates an estimate. However, legendaries such as Thunderfury and the Warlords of Draenor legendary rings are guaranteed quest rewards, although now they are unobtainable.
Comment: The question didn't specify Legion, although it does talk about Legion content, so I answered as such. Yes, Legion legendaries are random but the drop rates are improved for them on difficult content such as raids.
Comment: @NathanK You are correct that the Ring, and as an extension the cloak are now unobtainable but older legendaries like Thunderfury are absolutely still obtainable.
Comment: @Phaeze True. The though question heavily implies Legion legendaries specifically are the focus given the context.
Comment: Just realized I tagged the wrong person in the comment, sorry about that.


'provocative' vs 'sexy'

Question: Are there any differences in meaning between 'provocative' and 'sexy' when they are used to describe clothes?
It seems to me that 'provocative' is almost always disapproving, while 'sexy' can even be approving.
Answer: The literal meaning "provocative" is just that the clothes try to "provoke" something.  That doesn't have to be sexy feelings, it could be anger or any other strong emotion. A t-shirt with a political slogan might be provocative, for example.
However, when applied to clothes then "provocative" does often mean "intended to arouse sexual desire", and so it is synonymous with "sexy". Whether that is positive or negative depends on the context, and the intention of the speaker.
Using "provocative" can be a euphemism. That means that the speaker is avoiding using words like "sexy". That would often imply that the speaker thinks that "sexy is bad in this context" and means that "provocative clothing" would tend to be more negative than "sexy clothing".
So "provocative" is used to avoid saying "sexy" and is more likely to be used by people who disapprove of the clothes. But neither word is always positive or always negative.
Comment: Provocative as in violating dress code.
Comment: *However, when applied to clothes then "provocative" does often mean "intended to arouse sexual desire", and so it is synonymous with "sexy".* I disagree with your conclusion here. "Sexy" doesn't just mean "intended to arouse sexual desire". If something was *intended* to arouse desire, but was incompetently executed, it would be provocative but not sexy. And likewise, if something succeeded in arousing sexual desire, it would be sexy, even if it wasn't intended to do so.
Comment: Also, the same thing could be either or both, depending on the circumstance.  If you were at a Boudoir night at a club, someone wearing a racy outfit to be sexy would not necessarily be provocative (because...context), while the same outfit worn to the office at 9AM monday *would* be quite provocative.
Comment: @AdmiralJota That's a bit pedantic, like saying that a car with a dead battery is no longer a vehicle, because it can't be used to travel. Also, "intent" depends on perspective -- do we mean the designer, the person who chose to wear it, etc.? I don't think these details are important in understanding the usual way these words are used.
Answer: One difference of connotation, which I don't believe others have touched on, is how they convey the speaker's subjectivity towards the matter.

If I say someone['s clothing] is provocative, it's a detached statement that I believe they're likely to arouse others.
If I say someone['s clothing] is sexy, it's possibly a statement that I find them arousing, or at least involving my own tastes.

The degree to which this applies depends on a lot of context involving sexual orientation and attraction, and sometimes the audience's incorrect assumptions about such.
Another way of saying this is that, if you talked about your own parent or child dressing provocatively, people wouldn't think much of it, but if you used the word sexy instead, it could be cringeworthy.
Comment: This is a really good observation. That includes your point about context, since an ESL learner should learn both the primary meanings of words _and_ the ways that context can alter those meanings—a hard thing to teach. Another possible example to illustrate: My mother once described a female coworker as "wearing sexy outfits", but obviously the context there made it a detached observation, not an expression of personal taste.
Answer: "Provocative" refers to the intent of the wearer, "sexy" to the clothes' effect.  "Unintendendly provocative" is almost an oxymoron while "unintendly sexy" is more likely to happen.  Also "provocative" can provoke by more than being sexy.  Try wearing a long-sleeved pink shirt to a funeral, for example.

'provocative' vs 'sexy'


linking of devise gem and rapidfire gem with application.html.erb common properties

Question: I am trying to implement Rapidfire Gem in my application which include Devise Gem for Login process. All goes well, but the problem occurs when I trying to set layout of Edit and logout through Application.html.erb file.
The ERROR is shown of

NameError in Rapidfire::QuestionGroups#index'

on Rapidfire's index page

Answer: First of all, the root cause should be that there are no devise routes available in the engine by definition. You have to connect it first.
There's a discussion over here on how to do that: https://github.com/plataformatec/devise/issues/2827


Creating a habitable planet that recieves the same amount of sunlight as Venus

Question: Some details required are,
The right mass, should it be higher or lower than Earth?
The right rotational period  obviously the current Venus is rotating far to slowly.
This planet needs to be able to support Earth like life.
Answer: Mass is mostly irrelevant, though you'd probably want plate tectonics and that is thought to be related to mass.  Something roughly Earth mass should be OK, anywhere from maybe 0.6-0.8 Earth masses, you might still get plate tectonics and have a magnetic field to up to 2 possibly 3 or 4 Earth masses.  Note, 8 earth masses, equal density = 2 Earth gravities, so 2, 3 or even 4 earth masses wouldn't be over the top gravitation wise, but anything over 4 earth masses, you might run into problems with the planet retaining too much hydrogen which might interfere with oxygen formation and if it gets too heavy you lose plate tectonics, so, 3 or 4 earth masses might be the upper limit.
Rotation is important but flexible.  You probably wouldn't want days that last 3 months like they do on Venus, but 8-10-12 hour days or even 48 hours might be OK, though the longer the day, you run the risk of scorching under the mid-day sun.   If I was to choose, I'd go with about 16 hour days.  8 hours of sunlight on average, to avoid too much mid-day heating.
The real trick is atmosphere and oceans.   I think you'd want a dry planet, cause too wet, water can be a powerful greenhouse gas and that close to the sun, the hotter it gets the more water would evaporate, and that's a problem.  If you have a not entirely desert, but say 50% desert with tiny desert plants that suck the water out of the air, you could get a low heat trapping, rapidly cooling planet at night, with some spots of green on the wind side of the oceans where there would be more rain.
Such a situation might have high winds with all the rapid warming and cooling, but, that's what I'm thinking might work.
You could also have a planet with many active volcanoes.   Volcanoes help make the soil fertile, so it's not all bad.  Volcanic soil over time can be very good, and with enough SO2 released in the air, that would increase reflectivity and create a haze of sorts over the planet, which would have a cooling (and darkening) effect.   Personally, I'd rather low water than haze - but pick your poison.  I think you need one or the other.  That's the only real answer to this question.   Significantly lower greenhouse gas or significantly higher natural upper atmosphere reflection, either SO2 or perhaps tiny dust clouds constantly being kicked up into the higher atmosphere like Mars has.   Venus is generally considered inside the Goldilocks zone, though that's not a well defined border, so you'd need a pretty darn big heat reflection or lack of heat retention designed into the planet.
Venus has sulfuric acid rain, and with enough SO2 to keep the planet cool, acid rain could be a problem, but with enough water (Venus has essentially no water), but with water to dilute it, the acidity would probably be manageable for life.
A rather, perhaps unlikely idea could be natural formation of white rocks, sand and lighter colors.   Plants, in abundant sunlight, might develop white leaves that reflect a lot of the sun away - why would plants do that naturally?   Water retention and a cool undergrowth, with white leaves on top.   The cool wet air like you get naturally in jungle would be the goal, and absorbing sunlight could be more secondary under a very bright sun.   I'm not saying that's likely, but it might be possible.
Comment: $SO_2$ raises the albedo of the planet (making it more reflective).  You could consider it to be an anti-greenhouse gas.
Comment: Excellent answer! I'm surprised how it only got one upvote other than mine. //(^_^)\\  I wonder about SO$_2$ being an atmospheric coollant however. Also large quantities of SO$_2$ would indirectly contribute to buildup of large quantities of CO$_2$ very soon, considering that SO$_2$ forms sulphonic acid - H$_2$SO$_3$ - which would react with carbonates to form sulphites and release CO$_2$ as a result. That would be a disaster for a planet as close to its parent star as Venus is.
Comment: Very good, it's a very detailed answer, that covers everything someone would want to know! Only a little question: isn't SO2 a greenhouse gas? If a gas reflects heat, it may also be true that the heat that enter the atmosphere heat more the planet...?
Answer: You could use the example of Venus directly. The only (big) reason why Venus is not habitable today is due to its surface temperature. This temperature is not caused (mainly at least) by its proximity to the sun. It's caused by its greenhouse atmosphere which traps the planet heat.
That being said its proximity to the sun makes it far more vulnerable to solar winds among other sun related phenomena. This means that although Venus could be an habitable planet it is unlikely that life, as we know it, could have evolved there. It seems to me colonization of this hypothetical Venus-like planet is possible. Complex life evolution on the other hand (scales in billions of earth years) is very unlikely.
Venus gravity is 8.87 m/s² which is very close to Earth (9.8). In fact I believe it's the closest in the solar system. So to be better it should have just a bit more mass (although the current is tolerable) Venus is a far more similar planet to Earth, than Mars for instance.
Check this video for more details.
Comment: Venus is hotter than Mercury, so there's more going on than just proximity.  It's very thick atmosphere, greenhouse gas rich atmosphere is why it's so hot.  Venus' atmosphere is so good at trapping heat that it's the same temperature on the north pole mid winter than on the equator mid summer.  It's the same temperature day and night, even though the nights last over a month.
Answer: As you get closer to the parent star, the slower the rotation of the planet gets until at one point it gets tidally locked to the star. Venus is in many ways different than most other planets (one being that it revolving around sun in retrograde direction, opposite from most other planets).
You can have planets equal or larger than Earth at Venus distance without any issue. Bellerophon and Osiris are orbiting much closer to their parents stars than even Mercury. And they are both giants (as in, gas giants). Even imagining them fills a person with sheer horror. So the point is that you can keep an Earth sized planet at Venus distance from its parent star without any major (orbit stability related) consequences.
If you want to make it habitable, you would not have to twerk heavily with planetary physics, but also the size and luminosity of the parent star. If the parent star is smaller than our sun, your planet could lay in the habitable zone and also get to evolve an ozone layer one day in its history. Large stars would have too strong magnetic and charged particles storms to allow any ozone-layer buildup.
Answer: A great deal of how a planet analogous to Venus can be terraformed or made habitable depends a great deal on the planet itself.
Venus may not be a great example, the strange retrograde rotation might have been caused by a giant impact similar to the one thought to have created our own Moon, which would have upset many other factors that made Earth habitable (for example, disrupting the mechanisms that made a strong magnetic field like the one we have).
So if we take these factors out of the equation, we are left with one very important issue: the evaporation of the oceans.
Venus is close enough to the sun that if we replaced it by present day Earth, we would encounter a problem called a "wet greenhouse". Water vapour is by far the most efficient "greenhouse gas", and the amount of heat energy the planet would receive would start to generate a "wet greenhouse", ramping up the temperature in a positive feedback loop. (For those of you who are worried, Earth will suffer this effect in about one billion years in the future, as the sun's luminosity increases).
The wet greenhouse will be bad enough, but the ultimate issue is when the moisture in the atmosphere reaches the point that the stratosphere is saturated. At that point, another effect takes over: solar ultraviolet radiation cracks the water vapour into hydrogen and oxygen. There is actually an excellent set of answers to the question Would it be possible to terraform the moon? which shows the escape velocity of different gasses; short answer is the hydrogen will rapidly escape into space and the planet's supply of water will be expended in several million years.
So now you have a very hot, very dry planet orbiting the star, which causes even more complications.
Water being sub ducted into the mantle is thought to act as a lubricant for plate tectonics, so a dry planet could possibly "seize up" and its tectonic engines stop. The planetary heat in the core will still need to escape somehow, but the mechanisms will not work anymore. The planet will be rocked by supermassive earthquakes as the pressure builds against locked plates which cannot "creep" past each other like they used to, and eventually at least one plume of magma will be able to melt its way through the crust and create a series of super volcanoes like the Tharis group on Mars.
The elimination of water and ending of crustal movement and subduction also means the end of the carbon cycle. Carbon dioxide is not going to be dissolved in water to eventually create calcium carbonate, and the calcium carbonate isn't going to be sub ducted and melted in the mantle to be re injected into the atmosphere by volcanic activity. How this plays out on the hypothetical planet will depend on factors like how much carbon was locked in the mantle before the plates seized  and the initial amounts of carbon in the protoplanet during formation; you could end up with either extreme amounts like Venus or a very tenuous atmosphere like Mars.
So the short answer is that any planet in the orbit of Venus is inside the inner edge of the habitable zone, and absent of massive technological intervention like a sunshield at the Venus-Sun L1 point, the planet is doomed to be a hot, dry husk.


Do chickens not lay eggs in cold biomes?

Question: I'm playing Skyblock and I found a chicken in my mob spawner. I have set up a basic chicken farm in an Ice Biomes biome, and every so often I run by and see if there are any eggs the chicken has laid. I know chickens take a while to lay eggs (and I haven't left the chunk), but a while has gone by and there are no eggs from the chicken, is the biome too cold?
Comment: It's going to take a long time to build up a useful chicken farm starting from just one chicken. It is probably worth your time to see if you can round up a handful more. At least, say, 6 or 7.
Comment: I'm trying to, but I'm playing Skyblock and the chicken spawned in my mob spawner and fell down, at which point I put him in a hole. I would round up more if there were both more chickens nearby and I had a seed.
Comment: If it spawned in your mob spawner, it's likely from a chicken jockey, and as nelson2tm and Sira point out in their answers, will never lay an egg.
Answer: Chickens should lay eggs in every biome. They do not lay eggs if:

They are baby
They are or were part of a Chicken Jockey
The chunk the chicken in is unloaded
If you're playing single player and the game is paused

Also, make sure the item didn't despawn. Items despawn after 5 minutes.
Answer: They do lay eggs in cold biomes, it doesn't matter where they are, just make sure they are not a baby (chick) or a part of a chicken jockey.
Answer: It takes 5 - 10 minutes (6000 - 12000 ticks [There are 20 ticks in 1 second][Half-Minecraft day]) for a chicken to lay an egg.