Is there any such paper that shows passive listening helps language learning?

Question: I have been searching on Google Scholar to find a paper presenting research results on whether passive listening helps learning a language, but I could not find any. Is there any such work that shows passive listening helps to learn a new language?
Comment: This might be true but I am looking for proven results not just statements. Thank you either.
Comment: Could you clarify what you mean by "passive listening"? Or perhaps just an example or two of activities you would consider "passive listening"?
Comment: 'passive listening' without active study is fairly useless.
Answer: I see that you searched Google Scholar. I searched several other citation databases for scholarly publications, including Scopus and PsycINFO. I found 94 articles in the databases in response to a search based on the query:

( passiv*  AND listen*  AND language  AND learn* )

To clarify what that query means, it searches for documents that include, anywhere within the combination of title, keywords, and abstract, the following:

Words commencing with the letters passiv (such as passive, passively)

Words commencing with the letters listen (such as listen, listened, listening)

Words commencing with the letters learn (such as learned, learning, learns)

The word language.

Before doing the search, I had anticipated that I would find, for example, a controlled study in which the effect of passive listening was compared with that of active listening. I had also anticipated that I would discover that there were different interpretations of what was meant, exactly, by passive listening (for example, whether it might be important in improving phonological discrimination even in the absence of the listener understanding the words, whether passive included deliberately non-attentive periods, or even sleep, etc.).
As it turned out, my quest produced the same null result as you obtained on Google Scholar. Not one of the articles related to a study that examined whether passive listening (however that might have been construed) resulted in improved language learning as compared with some other conditions.
In the light of that null result, I think that your question is especially deserving of an upvote. I have read numerous comments on the web, and on various SE language forums, where people have asserted, variously, that

passive listening greatly improves word discrimination
passive listening without active study is worthless
passive listening is   useful once one understands some minimum number of words ... and so
forth.

Those comments, no matter how well argued their rational basis, now appear to be no more than that: opinion or good argument, without an empirical basis.
Comment: Thank you a lot for your answer. I am having exact problem as you stated. There are lots of rumors about this but there is no solid work to show whether it works or not. I am note sure If are there researchers studying this topic but there is nothing on databases.


Is there a good control panel add-on that provides more robust member search functionality?

Question: We have a client's site that has a handful of custom member profile fields, one of them being used for a street address. This particular client would like to perform a keyword search on that address but there's no way to do that from EE. I know we can build a custom search form on the front-end using Solspace User but I was hoping for a control panel add-on that would provide similar functionality.
Comment: Please select an answer or give more info as to why none of the answers work for you.
Answer: As far as I know there's nothing native or by way of an addon that provides a better search facility for custom member fields from the control panel. If you specifically wanted this then I'd go with either Profile:Edit or Zoo Visitor which brings your Member data into regular channels for searching, filtering, and sorting via the Edit screen. They make it much easier when dealing with front-end templates and custom member fields too.
Answer: I am not aware of any addons that offer keyword search of member data.
I'd suggest building this in a normal EE template with jQuery. Protect the page with a conditional to only allow access to the member groups you want to view it and create a quick link to the page from inside the EE control panel.
Set up an EE template to pull all the member data into a table using EE tags or the query module and use a jQuery plugin for the search/filtering... DataTables is a free jQuery plugin that will allow searching/filtering and pagination.
Answer: I've had some success using a standard GET form and inserting the search term with PHP into a {exp:query} tag on the results template. I then pass the resulting member IDs to Freemember and output the member data with it. You'll need to have access to your SQL database to identify the ID names of your custom member fields.
NB: I don't know whether this method is at risk for SQL injection.
The search form is straightforward:
<form method="get" action="/search">
    Search by Member Screen Name, Affiliation, or Maiden Name

    <input type="search" name="s" id="s" /> <input type="submit" value="Search" />
</form>

Now for the search results template. Suppose you've created two custom member fields called Member Affiliation and Member Maiden Name, and you want a single search form that returns matches to those two fields as well as Screen Name. Open up exp_member_fields in PHPmyAdmin or Sequel Pro, look for those fields, and note the m_field_id associated with them. Suppose you see they have IDs 10 and 11.
Now create a search results template (search/index). Set Allow PHP to Yes and PHP Parsing Stage to Input. Note that Input parsing is less common then Output and it can cause problems if you're using PHP in other ways on the same template.
<?php
    // retrieve input, if any
    $s =isset($_GET["s"]) ? $_GET["s"] : null;
    ?>

Search Results for <?php echo $s; ?>.

    {!--
    Let's search these fields:
    screen_name:        screen_name (it's already part of exp_members)
    member_affil:       m_field_id_10
    member_maiden:      m_field_id_11
     --}

    {exp:query limit="100" sql="
       SELECT * FROM exp_member_data
       JOIN exp_members ON exp_members.member_id = exp_member_data.member_id
       WHERE  (
            screen_name LIKE '%<?php echo $s;?>%')
            OR (m_field_id_10 LIKE '%<?php echo $s;?>%')
            OR (m_field_id_11 LIKE '%<?php echo $s;?>%')
            )
            ORDER BY screen_name
            "}

                {embed="search/_member" the_member_id="{member_id}"}

             {/exp:query}

Finally, the embedded template (search/_member) looks like this:
    {exp:freemember:members member_id="{embed:the_member_id}"}

{screen_name}

        Member Affiliation: {member_affil}
        Member Maiden Name: {member_maiden}

        etc...

    {/exp:freemember:members}


How to record audio wirelessly at 500m

Question: How can we recieve audio sound at a very long distance through wireless media? For example, a man talking to another man at a distance of 500 meters, I want to record that at the same distance through wireless media!
Comment: It isn't particularly clear what you are asking.  Are you asking if it is possible to pick up audio of someone talking from 500 meters away?  Are you asking if there is a way to send a signal recorded at one place to a person 500 meters away wirelessly?  Are you asking something else entirely?
Answer: You can use wireless repeaters to increase quality over such distances.  You need to have 2 pairs of Receiver and transmitter. Connect the Output of one Receiver with the Input of the Second transmitter. Also gain the Signal a bit on the second transmitter. Use different frequencies for each pair.
Comment: You need to have 2 pairs of Receiver and transmitter. Connect the Output of one Receiver with the Input of the Second transmitter. Also gain the Signal a bit on the second transmitter. Use different frequencys for each pair.
Comment: can you explain how that would be setup? or point in a direction where one could find that information?
Answer: You're right, it can't be done purely acoustically.
It may be able to be done instead with a laser, I can't imagine the quality is great though, its just a surveillance technology.
https://en.wikipedia.org/wiki/Laser_microphone
Answer: I don't know for sure, but I betcha you could pull this off with a good professional quality transmitter and receiver along with a pair of shark fin antennas.
Some good quality receivers can receive up to 1000-1200 feet away from the transmitter, so with the shark fin antennas, I bet you could make up the other 400-600 feet
Answer: In order to receive a wireless signal from a distance such as that you will need to do two things:
a) use a high powered transmitter such as a Lectrosonics SMQV
b) use either shark-fin Log Periodic receiver antennas, or
c) obtain a pair of high gain directional yagi antenna and point them down range. Pretty much any TV antenna should do the trick as most TV antennas are working on the same frequency band as most professional wireless gear.
or... (and this is the one I like best)
d) use something like a Lectrosonics PDR which is a personal digital recorder. Use Lavalier microphones (you will have to do this anyway) and instead of putting a transmitter in the pocket, put the recorder in the pocket instead. That way you can get your recording and you can be wherever you want to be and get perfect audio.

How to record audio wirelessly at 500m


What are all of the reasons why Salesforce customers should upgrade the API version on their Apex classes, triggers, and pages?

Question: I haven't been able to find any official documentation or community discussion of the compelling reasons to upgrade the API version on Apex classes, triggers, and pages. I know there is the general answers of "it's just a good idea" and "they might deprecate support for it eventually", but for some of our clients those answers are good enough to justify the cost of having a developer invest the time to upgrade the API version and regression test all the code to make sure nothing broke after the upgrade. Are there any more specific reasons in the areas of performance, security, or reliablity that I could use as leverage to convince developers and stakeholders that it should be upgraded on a regular basis?
Comment: I found this old discussion on the DFC forums:
[API Version of Apex/VF code and what features you get, what about limits](https://developer.salesforce.com/forums?id=906F00000008zu0IAA)
but I would like to see more recent discussion about these topics from Salesforce.com product managers/developers and/or developer evangelists
Answer: Contrariwise, I will provide an argument for upgrading, although the other answers state that complacency is acceptable.
There are two factors at play when you speak of API versions: features and consistency. Both of these issues introduce two distinct needs, namely stability and flexibility.
First, let's address consistency.
You should keep all your classes, pages, and triggers at the same API version. This is important to avoid bugs like this one. Note that this bug only occurs when some classes are lower than v28 and others are higher than v28. Each class appears to run in an emulated model that is compiled in a way that different versions are binary compatible, but having different features. Every once in a while, a newer feature can bleed into an older class, resulting in an error. You need consistency for stability. While the language is very good at what it does, it is not perfect, and you would do well to keep all your code within the same version.
Next, let's address features.
Inevitably, some CEO/CFO/VP/etc will want to implement a feature. You tell them that it's no big deal, it can be done in a week. Now, at this point, you're going to be at one of two places.
If you're in a habit of not upgrading, you'll write a new class with a new version, and try to tie it in to everything else, and everything will break. Not necessarily in big ways, but big enough to be noticeable. You've ignored the first aspect, consistency. So, you start upgrading all your other classes in the second week. By the third week, they've all been upgraded, but now your hunting down bugs that are really obscure, and you have no idea why. A month as gone by, and nobody's happy, but you swear you're almost there. Conversely, if you're regularly upgrading, you'll simply spend the week writing the new feature, and presto, it'll be ready.
In other words, by not upgrading, you are not saving time. You are kicking the can down the street, and when you need to upgrade, you'll be between a rock and a hard place.
I'm not advocating that you jump from v18 to v30 overnight. There are so many changes, so many small nuances you have to consider, that it would be a risky move. I tried something similar to that on a project, and we ultimately got set back months by way of troubleshooting, hunting bugs, etc. But, I'm also not saying that you should kick the can too far down the street. You need to address version upgrades in a controlled manner. There's nothing wrong with going from v18 to v20, then doing other things and going on to v22, for example.
There are a few versions that will be tricky to upgrade to, because they were significant upgrades. When they introduced "SeeAllData" for example, it required most test methods to be completely re-written or at least modified to use the new attribute. Then, they forced the split between test methods and live code. Who knows what other gamebreaking changes will happen in the future? You want to avoid the last-minute upgrade, because it will put you in a position you don't want to be in.
So, if you don't have the resources to be bleeding edge (and many organizations don't), at least avoid being left in the dust, because you will eventually have to invest the time sooner or later, and the longer you wait, the more time you will have to commit to at once.
Comment: @crmprogdev The separation of test and live code is version dependent. Nothing was grandfathered in. You can today create a new class that doesn't have this restriction, and existing classes will not require this separation until you try to upgrade to a version that requires this separation.
Comment: The split between test methods and live code only applied to new classes. Existing classes were grandfathered in so to speak. It did not require orgs to create test classes for old code that had internal test classes.
Comment: Thanks for the clarification. I just knew there was a lot of old code in an org I'd worked in at the time of the change as an outside contractor on a project that we didn't "have" to update in order to comply with it. Apologies for not recalling all the dots in i's and crosses on the t's of the API revision. ;)
Comment: Another anecdote for keeping the API versions current and consistent. [sObject.getPopulatedFieldsAsMap()](https://salesforce.stackexchange.com/a/130469/102)  behavior changed in v39.0. If you had class both before and after that version in a transaction they get different results for the same call. It makes sense, but it isn't easy to debug.
Answer: Honestly, it's hard to find a compelling reason to upgrade it on a regular basis.  Salesforce is set up so that you can leave code/versions alone and even when they upgrade the system it won't effect your code that uses old versions.
In my opinion (I could be against the general consensus here), the only reason to update versions is to allow you to take advantage of new features.  If you have a section of code that has been working for years, why take the risk that upgrading the version could effect how it works and potentially break it?
That said, when I am making improvements to existing code, one of the things I try doing is bumping up the version and ensuring it works to the new version.  If I am already working on it, it usually isn't a huge issue to do but why go out of my way just to make me feel better that all of the code is in the newest version when it doesn't bring anything to the table?
Answer: Unless there's a particular feature you now need to implement which existing code doesn't support, there's no compelling reason to update the code and save it under a new API.
Now if there's an update that breaks old code or exposes a security conflict with, then you have no choice. Some of last year's HTML related updates would be good examples that may have affected some orgs. That's why you're given advance notice before implementing those types of updates. You then have a chance to check code for potential issues.
So IMO, the only compelling reason to update is when an update to the API no longer supports existing code or perhaps when you're working on a new application that interacts with existing code. In those situations, its always wise to look at that code to see if there's maintenance that needs done to it for other reasons anyway.
As the old saying goes "If it's not broken, don't fix it!"
Comment: "Unless there's a particular feature you now need to implement which existing code doesn't support" - In other words, wait until you need a new feature and then upgrade all affected classes? That doesn't scale. Remember another old saying: A stitch in time saves nine. Because it may be easy to fix an enterprise project today, but in nine months, it may be too large to fix.
Answer: The team I work on upgrades the API version of all components each time we cut a new release. This being a product with a pretty well-staffed team means we have rounds of QA testing, including a full set of regression tests to catch any issues that arise.
Without that kind of team supporting you I certainly wouldn't try to upgrade your entire codebase every release - you're bound to break more things than you help by doing so without solid testing. Especially as visualforce testing can't be (natively) automated.
As a very general suggestion that warrants being tailored to your environment I'd try and do a yearly or every other year run-through of API version upgrades and testing. Being on an older release is generally fine, but being on a really old release means

Salesforce support will be less helpful due to the legacy API version
It gets stupidly hard to keep track of what feature was introduced when. Did they allow creation of List<SObject> in API....18? 22? Who really remembers these things?
There are somewhat regularly upgrades you get for "free". In a semi-recent visualforce revision pages were changed to respect the same default values for fields that standard pages do. This kind of thing is very nice for keeping a consistent user experience.
In particular with lightning components mixing API versions can make debugging a challenge. Product management recommends using a consistent API version for all your lightning when possible.
Answer: Here is what I've gathered so far in venues other than StackExchange:

Salesforce cannot possibly support all previous API versions forever, and at some point the oldest APIs may start to break down or be deprecated altogether
At some point in the future, Salesforce will begin preventing creates and saves of code that uses API versions that are too old (i.e. > 10 API versions old or something to that effect)
There are some API features that have a big impact on code reliability, such as:

Data Access in Unit Tests

Mis-matched API versions can cause all sorts of weird issues, best to have your entire codebase on the same version (whenever possible):

Schema.GlobalDescribe(), Managed Packages and API Versions

You don't want to be wrestling with version change issues when you're trying to fix an urgent bug in old code. Keeping the code in a recent API version window will reduce the chance that you'll have to fight those two battles simultaneously
Comment: The unit testing piece alone makes it worth the time to upgrade. Sure, I haven't done it on a managed package I made in API 22, but I also haven't edited that code since it was released. The minute I opened that project to add some new features (to be released- safe harbor), I pulled test code into its own class and updated all API versions and did full testing.


Is there a way to mine Ether on a Mac?

Question: All I see is Windows and Linux support only, why is there no guide for mining ether on a Mac? Is there a way to mine on a Mac?
Answer: Well, there are no guides because mining on a Mac is really ineffective, even on a Mac Pro.
However, it's pretty easy – all you need is ethminer:

Install ethminer:
brew tap ethereum/ethereum
brew install cpp-ethereum

Run ethminer:
ethminer -G -F http://somepool.com

Comment: Also note that mining makes your hardware age very fast. You should mine on your mac only if you don't care about its hardware.
Answer: Mining on a Mac is not really worthwhile. In fact mining on your own on any Desktop computer is not really worthwhile. Your costs (electricity, hardware wear etc) are greater than what you earn.
Over on the Ethereum forum, user 'bluebox' provides some additional insight including:

If your GTX780M has 2GB, it's possible but not going to be very good
  (low, low hash rate). The DAG file (1.4GB) has to fit entirely in GPU
  memory, even so the 7xx series won't mine too well. 3-4GB GPU RAM is
  minimum these days. Yes, you probably could mine on it, just don't
  expect much. And don't let anybody tell you it will "melt" — you can't
  hurt it, but just remember heat over time shortens the life of all
  silicon-based lifeforms. SMCFanControl still works on El Cap, so you
  can crank the fans up.

Essentially it will depend exactly what Mac you have, and what hardware it has but it is generally not worthwhile.
If you want to mine, you should probably consider a pool.

Is there a way to mine Ether on a Mac?


Export video for Broadcast TV

Question: Just wondering, if now, as we broadcast free-to-air commercial television digitally, whether to still apply 'Broadcast Safe filters/effects'?
Comment: Are you referring to safe areas as mentioned by @richard-crowley or to the 'broadcast safe filter' (that deals with signals levels) from FCPX ?
Answer: Depends on who you ask. Old traditional people who grew up back in the bad old analog days have the Safe Action Area and Safe Title Area embedded in their brains.  But even as old analog TV receivers evolved, there was less and less danger of losing the periphery of the frame to overscan.
With modern LCD, LED, plasma, whatever, TV screens, there is ZERO danger of overscan. It simply doesn't exist anymore. I now use a rule of thumb to keep any text or significant graphics at least 2 or 3% away from the edge, mostly as an aesthetic design rule.
Comment: Notice that there are still many user watching digital content on a crt screen (for example, many digital tv receiver have a scart output). I have recently been embarrassed by such a digital receiver whose top menus where barely readable (being displayed off screen) on a crt screen.
Answer: There are three different things that get called "broadcast safe":

Colors gamut: You don't need to apply an NTSC broadcast safe filter, but you do want to make sure that your colors are all within gamut for the format you are using. If you use out of gamut colors, most of the time nothing happens. However, you run the risk of some very odd, very hard to troubleshoot problems cropping up on air.
Title & action safe: In the days of CRTs, there was a portion of the picture that would get cut off. That area varied from TV to TV and grew over time as the tube aged. Non-CRT displays don't suffer from the same issue, so the recommended safe areas are not as large as they used to be, but they still exist. Some modern displays artificially create an overscan and the bezel of some displays can block the edges even at reasonable viewing angles. Recommendations vary from 1% to 5% of the screen should be protected.
Center cut safe: 4:3 TVs do still exist in the world. How a 4:3 picture is created from a 16:9 signal varies. Sometimes it is created with a separate air chain by the broadcaster, sometimes the broadcaster downconverts the 16:9 to 4:3, and sometimes the 16:9 feed is downconverted in the viewers home. It is for this last reason that it is recommended that you still keep key elements (e.g., products, people talking, offer graphics and disclaimer text) within the center cut protected area of the picture.

In summary:

Use only colors within broadcast gamut.
Don't push important elements right to the edge of the screen.
Protect important visuals within the center cut safe area.
Comment: While most stations run limiters on the broadcast signal for limiting video levels, your clips probably will be rejected by tech QA when submitting, so while technically nothing may happen, I wouldnt risk it. Most TV stations have submission guidelines and usually there are a lot of things regulated, data / video levels of the signal only being one of them.
Comment: In my experience, after the digital/HD transition, most stations actually removed their legalizers. I even had one Creative Director tell me essentially to stop ruining his "look" because the blue he picked wasn't what he was seeing on air. Also, most local stations and cable systems don't check gamut or safe areas because they lack the skilled staff and equipment to do those checks any more.
Answer: In Australia at least the stations still have strict requirements regarding things like title safe. We still have to make our titles safe for 4:3 CRT receivers, just in case we annoy people watching on their Rank Arena 15" CRT with a set-top-box.
Best bet is to contact the broadcasters you're sending the material to and ask them.

Export video for Broadcast TV


How to restore the active applications widget in home screen?

Question: In the home screen of my Galaxy Tab I accidentally deleted the widget which showed me the active applications running in the background. Can anyone tell me how I can restore this?
Answer: Sounds to me like you deleted a widget.  Long-press on a home screen, choose Widgets from the popup menu, and see if there's one matching your description.
Answer: Try pressing and holding the HOME button (hardware button in the bottom row) - that should pop up a screen listing recently opened apps. I believe the Galaxy Tab's interface has been modified to include a TASK MANAGER button. Is that what you're looking for?
Answer: I think you are talking about the program monitor widget: long press anywhere on your home screen, choose Widgets and select the Program Monitor from the list.


How to transfer a register to the system clipboard?

Question: If I store a value in a register in vim, is there a way I can transfer it to the system clipboard using a quick ex command?  Or do I need to write a macro to do that?
Answer: you can try :let @*=@a to assign register a to register *.
Same for @+ (depending on which clipboard you want)
Comment: On Unix you have in the X11 server 2 clipboards, the typical one in the desktop environment (called CLIPBOARD, using CTRL-C in the DE) that would be `@+` and the Selection (usually called PRIMARY, the one where you can paste with middle mouse) clipboard `@*` those are different there. However Windows only knows `@+` and `@*` is the same there.
Comment: Which clipboard?  What do you mean by that?
Answer: While let @* and let @+ works, the recommended way to do it in the doc is to use setreg() like this:
call setreg('+', @a)

See :h setreg() which even contains an example of what you want to do:
:call setreg('*', @%, 'ac')

The third argument is used to specify the type of the register you want to copy. It is also used to append the register to the current content of the clipboard:

If {options} contains "a" or {regname} is upper case,
then the value is appended.
{options} can also contain a register type specification:
    "c" or "v"          |characterwise| mode
    "l" or "V"          |linewise| mode
    "b" or "<CTRL-V>" |blockwise-visual| mode

Answer: let @* = @q

where q is the register in question.


Cascading batch jobs

Question: I want to run 2 batch jobs in series i.e. 2nd batch should start running just after 1st batch finishes. Can I do that?
Answer: Yes you can do this. As of Winter '12 (api v26) a new feature was added to allow daisy chaining of batch jobs by providing the ability to call the executeBatch method from the finish method.
One thing to be wary of with this approach is the number of batch slots you have available (max 5 jobs running at one time), check first there is space to run your job and if not scheduled to run again in a minute (you should perform the same check in your schedule job too). See example below:
<code>  // finish by sending email to specified recipeint, or job creator if not set
    global void finish(Database.BatchableContext BC)
    {
        AsyncApexJob batchJob = [Select Id, Status, NumberOfErrors, JobItemsProcessed, TotalJobItems, CreatedBy.Email from AsyncApexJob where Id =:BC.getJobId()];
        sendEmail( batchJob.CreatedBy.Email );

        Integer jobs = [Select count() From AsyncApexJob Where JobType = 'BatchApex' and ( Status = 'Queued' or Status = 'Processing' or Status = 'Preparing' )];
        if( jobs > 4 )
        {
           // try again in a minute
            Datetime sysTime = System.now().addSeconds( 60 );
            String chronExpression = '' + sysTime.second() + ' ' + sysTime.minute() + ' ' + sysTime.hour() + ' ' + sysTime.day() + ' ' + sysTime.month() + ' ? ' + sysTime.year();

            EmailInvoicesBatch scheduledBatch = new EmailInvoicesBatch();
            System.schedule( 'EmailInvoicesBatchSchedule ' + sysTime, chronExpression, scheduledBatch );
        }
        else
        {
            EmailInvoicesBatch batch = new EmailInvoicesBatch();
            Database.executeBatch( batch, 1 );
        }
    }
</code>
Comment: very thorough @PhilHawthorn - TIL to check the jobcount
Comment: Yes great answer Phil! One thing to keep in mind is the error handling and recovery aspects of Batch Apex solutions, while this is a great new feature it does add extra responsibility and consideration. I wrote a blog post on this around the time this feature came out. Might be of use to you to consider these things. http://andrewfawcett.wordpress.com/2012/10/14/winter13-chaining-batch-jobs-with-great-power/
Comment: Indeed @AndrewFawcett, I read all of your posts ;)
Comment: Use System.scheduleBatch instead of System.schedule to avoid your batch class having to implement also the schedulable interface. In addition, you avoid having to create the cron expression, as you can pass it the number of minutes from now to run it at.
Comment: I've always found it safer to roll my own, not sure how reliable scheduleBatch is http://salesforce.stackexchange.com/questions/12794/system-schedulebatch-issue
Answer: You can invoke the second job by calling Database.executeBatch from the finish method of the first job.
Answer: You call the second batch from finish method of first one .Make sure you have an API of 26 and above for your class

Cascading batch jobs


Can you reveal your hand when you fold in poker?

Question: In some situations in poker it might be beneficial to reveal my hand when I fold.
Is it allowable to do this, or must the contents of a folded hand remain secret?
Comment: Do you mean after the hand is finished, or when you have folded but others are still playing the same hand?
Answer: No, you are not allowed to show reveal your hand when you fold as that gives unequal and unfair knowledge to the rest of the players. For example in Texas holdem where you have two cards in your hand it would reveal to others two cards that would not possibly show up in the cards on the table and that could give them knowledge that they need in order to fold or bet to their advantage.
http://poker.wikia.com/wiki/Fold

Folding should be done without revealing your cards. To do otherwise is against the rules and is considered rude in poker etiquette. If a player folds their hand face up, the other players get additional information about what cards are dead and what cards are still live, and this additional information may affect later betting or game play (a player on a draw may subsequently fold if they see another player fold one of their outs face up, for example). If a fold is done in such a way that only some players at the table could see the cards being folded (e.g. they flipped up on edge, facing one end of the table, then fell back facedown), the dealer is responsible for ensuring that all players have an equal opportunity to know what cards were folded. If a still-active player suspects that some other player has seen a folded card, they may request the dealer to show it to everyone, under the common "show one, show all" rule. Generally speaking, however, hands which are folded by a player are not shown to other players, and other players do not have a right to see them.
In variants with upcards such as 7-Stud, folding is done by first turning your upcards over, facedown, and then returning them to the dealer or the muck. Note that in these variants, it is often against the rules (and is always inconsiderate) to fold out of turn, since hiding your upcards prior to someone being able to act deprives them of information which other players may have seen.
Comment: What about showing one's cards after the hand, or when everyone else is all-in?
Comment: The exception is when your playing head up, you can show.


What is the advantage of AES-GCM against CPA attack

Question: This questions is re GCM block-mode of AES. Assuming the TAG is cut to t bits, how can the strength of the cipher be calculated, that is, what is the Advantage of the cipher against CPA attack, and after how much authenticated data a new key has to be exchanged?
Answer: I'll use the 2012 paper: "Breaking and Repairing GCM Security Proofs" by Iwata, Ohashi and Minematsu as my primary source.
In said paper, the advantages for the privacy and authenticity game are stated. Only the latter one is being influenced by the tag length $\tau$.

Theorem 1. Let $\operatorname{Perm}(n)$ and $\tau$ be the parameters of GCM. Then for any $\mathcal A$ that makes at most $q$
  encryption queries, where the total plaintext length is at most
   $\sigma$ blocks and the maximum nonce length is at most $l_N$ blocks,
   $$\textbf{Adv}^{\text{priv}}_{\operatorname{GCM}[\operatorname{Perm(n)},\tau]}(\mathcal
 A)\leq
 \frac{0.5(\sigma+q+1)^2}{2^n}+\frac{2^{22}q(\sigma+q)(l_N+1)}{2^n}$$

with $n=128$ because you pick AES here.

Theorem 2. Let $\operatorname{Perm}(n)$ and $\tau$ be the parameters of GCM. Then for any $\mathcal A$ that makes at most $q$
  encryption queries and $q'$ decryption queries, where the total plaintext length is at most
   $\sigma$ blocks,the maximum nonce length is at most $l_N$ blocks and the maximum input length is at most $l_A$ blocks,
   $$\textbf{Adv}^{\text{auth}}_{\operatorname{GCM}[\operatorname{Perm(n)},\tau]}(\mathcal
 A)\leq
 \frac{0.5(\sigma+q+q'+1)^2}{2^n}+\frac{2^{22}(q+q'+1)(\sigma+q)(l_N+1)}{2^n}+\frac{q'(l_A+1)}{2^\tau}$$

In theory you could just plug-in values into the theorem until you hit a security bounds that makes you feel uncomfortable and use it.

Or you could just follow NIST SP 800-38D Appendix C (PDF)'s guidance on short tags with AES-GCM. It contains nice tables and explanations thereof for 32-bit and 64-bit tags. If you do not intend to shorten the tag, then section 8 has guidance on message lengths.
Answer: Section 8 of NIST SP 800-38D (Recommendation for Block Cipher Modes of peration: Galois/Counter Mode (GCM) and GMAC) deals with "UNIQUENESS REQUIREMENT ON IVS AND KEYS"
the initial few lines state that

The probability that the authenticated encryption function ever will
  be invoked with the same IV and the same key on two (or more) distinct
  sets of input data shall be no greater than 2-32.

See Details here


Confirm own incoming transactions

Question: Is it possible to only mine your own incoming transactions? So you can confirm a Bitcoin transaction (only locally).
Answer: This might only be an issue with the terminology, but when a transaction is "mined", it is included in a block. You could do that of course, if you were contributing blocks to the Bitcoin network, but the computing power of the network has grown to levels where it is infeasible to mine at home.
What you can do, is to verify the validity of an incoming transaction. Your Bitcoin wallet software does this automatically when it receives the transaction. It checks that the inputs are available for spending, and the signature matches the source of the funds. However, until a transaction is part of a block in the longest valid chain, it is unconfirmed and may yet be replaced by a competing transaction spending the same funds. Therefore, you cannot "confirm a transaction locally".
Answer: I think the question is "could you choose to mine for a block that contained only your own transactions." And I think the answer is yes, technically, but it won't make it any easier or faster, so you aren't gaining anything by doing so.

Confirm own incoming transactions


How to specify $* in a parameter for a Jenkins job?

Question: I have a Jenkins job that has a test.excludes parameter that I would like to default to **/*$* (ie exclude all inner classes). Normally I would specify this value in a file, but in this case, I don't want to submit any files since this is investigative work (as I see tests that are failing, I will add them to test.excludes).
The problem is that the $* in **/*$* is being expanded to the command line variables. Using **/*$$* only changes the problem to $$ being expanded to the pid. Escaping * using \ doesn't work (inner classes are still run). Escaping by wrapping the entire value in ' does nothing to prevent the $* from being replaced.
Is there a way to get the behavior I want?
Answer: The following really ugly expression works: $(echo '**/*$*').


ex.ter.nal.ip:8081 changes to localhost:8081

Question: Asked this question on Server Fault before, but got redirected to here. Hope this is the right place to ask this question.
I installed YouTrack from Jetbrains on my Windows 7 machine, which works just fine. Now I want to make this running service available for 'the outside world'.
Due some network problems at home, I had to make an subnetwork for all my own devices (including this windows 7 machine running YouTrack).
ex.ter.nal.ip -> Modem -> 192.168.178.27 (my router) -> 192.168.0.115 (windows 7)
I think I did setup the forwarding correctly, using DMZ. My modem DMZ to my router, which DMZ to Windows 7. So every port filled in from the ex.ter.nal.ip is forwarded to my windows 7 machine. Correct?
Now as I've said before, I'm running a YouTrack Service which is accessible from my Windows at localhost:8081. With my current setup, I would say this service is reachable at ex.ter.nal.ip:8081. But then happens (for me) something weird.
The URL changes from ex.ter.nal.ip:8081 to localhost:8081.
So my MacBook is looking for it's own localhost.
I really don't get what is happening here.
In some tutorial I followed I had to make a rule in the firewall, but I disabled this because I thought this could be the problem. But, nevertheless...
How can I get this to work?
Answer: Apparently it was an issue for YouTrack and had nothing to do with my network setup.
I had to change the base-url.
http://forum.jetbrains.com/thread/YouTrack-585


Where to find Okocim beer in or around Pennsylvania

Question: I'm looking for distributors/shops close to central Pennsylvania that sell Okocim beers such as Okocim Porter, Okocim Beer, or Okocim Mocne.  I've seen O.K. Beer around here (another Okocim product), but the branded Okocim beers are what I'm really interested in.  I don't mind driving a bit either, but hopefully something in or around the state...
Comment: I've checked around, and O.K. Beer seems to be what most people carry...  That's quite a shame too, because it just doesn't do justice to the brand.  Thanks for checking into it though!
Comment: I called several distributors in New Jersey and New York yesterday who purportedly carried Okocim, but all they had were the O.K. There is a wholesale distributor of Polish beers in Brooklyn, New York, called [Amtec International](http://yespils.com/index.php?&path=home), who may be willing to refer you to some retailers in Pennsylvania. Good luck in your search.
Comment: Have you checked beermenus.com? That's where I usually go.
Answer: Okocim Beer is part of the Carlsberg group. According to Carlsbergs site it looks like they are distributed in the USA by St. Killian.
St. Killian has a beer finder page that lets you search for bars, resturants, or stores that sell particular products by zip code. When typing in the zip code for State College, Pennsylvania, I'm not sure where you are located but this is pretty central, it shows four locations within 100 miles.
You could put in your zip code and then select see what is near. I'd call before making the trip and see which Okocim beers they actually sell since the comments seem to suggest that some only carry O.K..


How can I be sure that rarely reproduced issue is fixed?

Question: I have a bug that is rarely reproduced, in about 1 case out of 5 attempts (20% reproducibility). Developers made a new version with the fix. How many times do I need to run a test to be sure that the bug is fixed? The bug is major or even critical, so it should be tested with extreme care. I cannot write an automated test because it's a complex scenario.
Comment: @JasonC The amount of duct tape and chicken wire that hold together billion dollar systems is mind boggling.
Comment: I had a project a few years back where the ethernet chip on a device with custom firmware on a custom PCB would lock up, randomly, on average once every 3 months of continuous operation, except the project involved 100 devices so overall the average was daily. It was also site-specific, we *never* got a device to hang in the shop, and we tested 20 devices continuously for an *entire year*. The only way to debug was to attach a hardware debugger when the problem happened. A power cycle would fix it. Access required a week of planning and a licensed, union forklift operator. ...
Comment: ... And every time we didn't get any info in our one shot with a debugger, it cost a few thousand $ in labor, access permits and fees, and we had to go through all the red tape of planning a whole new access visit to try again. To this day, we never solved the problem. The best working theory was site-specific EMI combined with an unfortunate PCB trace layout. In the end I just made the device reboot itself if it didn't see network data for a while. A frustrating ending to a nightmarish project that still sometimes keeps me awake at night.
Comment: Sounds like Russel's Teapot made it to software engineering as well ;)
Comment: Closely related: https://sqa.stackexchange.com/q/28135/17060
Answer: Probabilistically, Jake is certainly correct.
However, computers are deterministic machines, so when you say that you can only reproduce a problem 1/5 of the time, what you're really saying is that you're only actually creating the situation that leads to the problem 1/5 of the time.  You need to talk to the developer, and get a better understanding of what the problem was, what caused it to occur, and what he did to fix it.
Because that's what I'd be much more concerned about.  Was he able to track the problem down to a specific line of code/function/whatever, and fix that, and add test cases to make sure the problem doesn't happen again in the future, or did he do something to paper over the problem, maybe by adding another layer of recovery?  Both of those will make the problem go away, but only one of them is fixing the problem.  (And depending on the severity of the problem, and where the problem was found, and the nature of the problem, papering over the problem may be the right thing in the short term, but probably not in the long term.)
Ideally, the developer should be able to tell you what makes that 1/5 of the time different from the other 4/5 of the time, and you should be able to use that information to increase the chances of you hitting the problem to greater than 20%, possibly to 100%.  And then you can be sure the problem is fixed, not almost sure the problem is fixed.
Comment: A lot of the time this is right, but not always. Synchronisation bugs are the big exception. When the bug is caused by a race condition, it may be iimpossible to very difficult to rig the race to trigger the bug all the time.
Comment: Exactly right.  The developer who fixes it should also be able to improve your "steps to reproduce" so that you can produce the issue *100%* of the time *on the old version,* and 0% of the time on the new version.
Comment: +1.  The developer now knows more about why the bug was actually occurring.  They should be able to guide you.  If nothing else, they should be able to confirm that the error was indeed random (as opposed to being caused by a particular user behavior), which would then make Jake's answer valid.
Comment: Code can be nondeterministic, AND you can have race conditions, AND real world inputs can be nondeterministic.
Comment: If they can't explain how the problem happens, then they need to improve their tracing/debug capabilities.
Comment: Before I wrote here I spoke with the developers and they can not advise anything new. That is the problem. They fixed the bug according to the dump data, but unfortunately they can not help with reproducing.
Comment: I agree with where you are trying to go, but if the developer has fixed the problem then there should be 0% chance of reproducing it after the fix. So all a tester can do is run the test multiple times to show that the problem has been fixed with a high probability.
Comment: @KevinMcKenzie I agree with you in theory. However, the developers may have inherited terrible and/or undocumented code and could be working under tough time constraints to get a working patch out by whatever means. The real world is a horrible place
Comment: @Leliel I agree with your point, however usually the reproducibility of such bugs can usually be increased a great deal by a strategically inserted sleep. So a plausible sequence of steps is: insert a sleep, fix the bug, remove the sleep. The code can be tested after each of these steps to validate that the inserted sleep increased the chance of failure and the fix reduced it.
Comment: @kasperd you can often increase the odds of tripping the bug with a strategically placed conditional sleep, but 100% is not always achievable depending on your actual case at hand.

Unfortunately, while this is useful to increase the odds while debugging and fixing, it often involves inserting sleeps into the product under test, rather than a test harness. If the sleep must be in the product, it doesn't help to generate a regression test for this behaviour, since the regression test suite needs to use the product code as is.
Comment: @Leliel Strategic sleeps can usually both increase and decrease the risk of errors if there are synchronization bugs in the code. But none of those sleeps should be left in the code in the final version. For unit tests it may be possible to insert the sleeps via dependency injection, though I imagine there are ways to make regression tests for synchronization bugs both run faster and be more likely to catch future bugs than by injecting sleeps.
Comment: @kasperd if you ever find that better way to regression test I'd love to hear about it. I semi regularly have to deal with timing issues at work, and I'd love a halfway reasonable way to regression test these without just accepting running the replication case a hundred or more times.
Comment: @Leliel The rough idea I have is to insert synchronization calls to the test framework into the code under test. That can be done either by dependency injection of instrumented library functions or by introducing explicit calls in the code under test which compile to no-ops when compiled for production code. These extra calls into the test framework serves as the way to allow the test framework full order of how the execution of multiple threads of the code under test are interleaved. Each of these calls will block until the test framework wants that thread to continue.
Comment: @Leliel For a small test it may be possible for the framework to test all possible ways to interleave the code. For larger tests it will be necessary to restrict which of the exponentially large number of ways to interleave the threads will be tested. In order to achieve this the framework will let all threads execute from the start of code until the first point where it blocks and then it will let threads execute one by one until they reach the next blocking call.
Comment: @Leliel The tricky part is how the test framework can tell the difference between a thread that is still executing and one which is blocked because it hit a synchronization primitive used by the code under test. Possibly solving that would involve additional instrumentation of library calls that could possibly block. All of this is just a rough idea, I haven't tried to implement it.
Comment: @kasperd that will be *very* difficult inside of an instrumented VM of some form due to preemptive multithreading, and probably impossible outside it. You'll need to be able to insert a wait after any arbitrary machine instruction to model all possible interleavings of even the simplest code.
And it falls down flat as soon as networking gets involved, since the network is not fast enough to allow fine enough coordination across multiple nodes, and never will be until network latencies approach CPU speeds
Answer: You can never be 100% sure that a rarely reproducible bug is fixed, you can only edge closer to 99.9999999...%
The simple way to monitor how confident you are in the fix is to run the reproduction steps over and over, logging how many times you (hopefully!) don't encounter the issue.
If the bug wasn't fixed, on the first test there is a 80% chance that the bug wasn't fixed but just didn't occur.
On the second test, there is now a 0.8 * 0.8 = 0.64 (64%) chance that the bug wasn't fixed but didn't occur.
On the third: 0.8^3 = 0.512 = 51.2% chance that the bug isn't fixed but just didn't occur.
You go on until you feel your confidence is good enough. You describe this as a potentially critical issue, so 99.5% may be your bottom confidence limit.
For this, do 24 tests. This will give you a 0.8^24 = 0.004722 (0.47%) chance that the bug isn't fixed and just didn't occur.
For 99.9% confidence, you'd need to do 31 tests.
Comment: I'd highlight this all assumes the 1/5 is a strong data point, that you know the bug really does happen 20% of the time, which seems a little iffy.

As a tester, I'd be really pushing for what was identified as the root cause of the bug, and knowing that, can I reproduce it 100% of the time?  Does the code change make it so I can no longer reproduce?
Comment: The problems with this approach are two-fold: 1) If you don't know how to trigger the bug, then the method of testing might completely miss the trigger, hence modeling it as an independent runs of an experiment with a 20% probability is problematic, and 2) it is unlikely that the attempted bug-fix had no effect at all, the main danger is that they would have fixed *some* of the scenarios that lead to the bug but neglected some edge cases that still result in it. In that case, the frequency of the bug would have decreased, and merely showing that it doesn't occur 20% of the time shows little.
Comment: Thank you for that edit! Amazing how far a simple typo can mislead...
Comment: I guess 16 repeats would be enough. 97% is enough probability. Thank you very much.
Comment: You're welcome. For more information on intermittent bugs, [this blog post](http://www.satisfice.com/blog/archives/34) has some wonderful points
Comment: @ernie is absolutely right. Everyone else make valid points as well, without knowing anything about the bug or the replication steps it's hard to  give a totally valid answer. I wanted to mention all of potential hickups with the assumptions I made, but it looked like you were after a quick fly-by estimation.
Comment: @ernie hits the nail on the head. That is how bug fixes _should_ be verified, not just by random guesswork (which admittedly was all you had _before_ the fault cause was known)
Answer: I like the other answers, but I would like to add automation to the mix.

I cannot write automated test because it's a complex scenario.

If you can do it manually (on a computer) you can probably automate it, but you do not have to create a maintainable automated test for this. I would expect most, if not all, scenarios are loopable with a record and playback tool.
In the past I have created UI tests that loop infinitely to reproduce issues that do not occur with clear defined steps. Issues that occur randomly.
I would try to make sure that the issue happens after at least X times or loops. That way developers know how long to run the automated test to verify that the issue was fixed.
This is certainly handy for issues that are related to memory leaks, database connections that are not always freed, or just random defects.
After the issue was fixed I would just loop the tests for several days for extra confirmation.
Still, it is wise to do a root-cause analysis, think about whether other locations might have a similar problem, and also tackle those. Nothing is worse than fixing it in one location and then having your client start complaining about another one.
Comment: @rackandboneman Changed my texts a bit. Yes, I falsely assume it is a process on a computer. Still I would like to keep my answer as to trigger testers to think about automation and make an issue repeatable per automation. Even some true manual processes can be automated. I have seen model trains be used to test wireless credit-cards transactions :) just try to think out of the box.
Comment: Where does it say the test scenario does not involve real-world/off-line steps? Think of an ecosystem where physical labels are printed and scanned as an example that is difficult to automate :) Think of a testing scenario that involves a production system in which test data, or results of a failed test, have to be manually cleaned up. Think of software that initiates transactions (in the worst case literal bank transactions) in some other system as part of its tests...
Answer: This is a great example of an almost criminal use of statistics.
Reminds me of Cargo Cult coding ( https://en.wikipedia.org/wiki/Cargo_cult_programming ).
Unless your trials are random (meaning mindless) and they weren't, your use of statistical reasoning is almost certainly wrong.
The math has to follow the model, and you don't seem to have a good understanding of the model of the problem. (If you did, you wouldn't be asking your question). The obvious answer is beta testing. Assuming you want to know how much testing is required prior to beta testing, then the answer is you need to do "sufficient" testing so that you're confident that the frequency of occurrence is much reduced (essentially gone).
Given that random noise typically scales with √n, and you'd have to do about 10 (random) trials to be fairly sure the bug rate wasn't 20% (or more) then do 100. Frankly, if you don't try it with a number (how many? IDK, maybe 10 or 20) machines/network configs (with which you are able to demonstrate the bug occurs (in the old code)) and at least 20 or 50 replicates on each, I'd not be very comfortable with the claim that it's been fixed. Again, without a good model of the problem, any confidence you have that its been fixed is mostly wishful thinking. Sorry. We lack the ability to reliably determine the reliability in all but the most simple code.
The other answers I've seen assume a pure cut and paste scenario where "bad code" is cut out and replaced with "good code". That almost never happens. Patches usually address multiple (and often interrelated) problems. Bugs that are confined to one line of source code generally do not cause "rare" occasional bugs. One final comment. I'd never employ a programmer who believes a 20% frequency rate is a rare problem. Lets say 20% of your friends die every year. Rare? Not! Sure it's a moot point, but my idea of rare is 1 in 1000 or less, not 20%.
Answer: Experience taught me the environment is essential in such cases.
You need to understand the fix, what problem did the developer address.
For instance, maybe the developer simply made the code less restrictive.
Or more defensive - e.g. return earlier in the flow in case of unexpected input. If this is the case, ask him to give you a version without the fix but with logs in the area where he put the shield.
Check the logs carefully before and after the fix.
Then you will learn how much testing is enough.
Answer: I don't know if you're speaking of a purely software system, or one that processes input from electronics and sensors, but either way, the answer is unit testing and white box testing.  Your failure mode either occurs inside the expected inputs or outside.
I'm going to assume you're already unit testing using a range of expected inputs as well as inputs outside the boundary conditions in which your code is designed to run. Inputs beyond boundary conditions should be handled by validation. That may be the fix right there, or it may point to some upstream device or data not outputting data within its design spec.  Either way, you want to validate input on your code.
If failure modes still occur while sweeping through the valid input ranges, then you can find them using the original code.
Once you reproduce the combination of conditions under which a failure occurs (and there may be more than one), you can then determine if those conditions present inputs where the original code would have failed and your fix is effective via whitebox examination of the code.  If your fix addresses all failure modes found in your unit testing, you've demonstrated it is sound and effective.  If it doesn't address all failure modes, there is more work to do.
Answer: I'm working on Windows based application and as per my experience I came across this situation many times. For few bugs some time simulation was medium and sometime low.
So the best way to verify whether the bug got resolved is try to understand the bug i.e Discuss it with developer try to understand the cause of that bug (after giving the bug demo) and once it is resolved ask him (Developer) about the solution and then perform the reproduction(simulation) steps for few times and also some scenario related to latest fix.
Lets consider following mentioned example,
     While testing one of the video surveillance application I came across one crash. It was simulating when user was trying to listen live audio for specific webcam. But simulation was very rare. Some how I gave the problem demo to one of the developer with proper stack trace.We tried to get the exact simulation through stack trace but we didn't as simulation was very rare. So at last through stack trace developer understood the problem and cause was related to start state of audio device. So he applied some lock at start and stop audio device. After understanding the solution I was left with scenarios to test whether application is getting hung while adding, removing, starting and stopping webcam.


How much processing power is required while downloading data from a high speed internet connection (say 3 Mbps)?

Question: I was just wondering about the CPU usage while downloading data (say, for example, a movie) from the internet. Can anyone tell me, how much is a processor really in use while downloading and, in the first place, is a processor even really required during download?
Answer: A processor is definitely required to perform the download, you need processing power to convert the bit patterns received at your network adapter to the data representation you want (ie. you need to run the TCP/IP stack). That being said, the network and storage device are likely to be orders of magnitude slower than a low-end CPU, so it is nothing you should worry about in general.
For instance, one of the small and fast TCP/IP stacks, will run on an ATMega88. This is an 8-bit processor designed to run at 20 MHz. In theory, that processor is more than enough to control a TCP/IP stack, and therefore enough to download data.
Of course when it gets down to that kind of CPU's, the amount of data that can be downloaded might be limited by the clock frequency. The limiting factors will be the clock cycles needed to run the TCP/IP stack, and the clock cycles needed to store the data onto some kind of storage.
If we take your example, and do some very unscientific, off-the-cuff calculations: A 3mbps connection amounts to 384kByte of raw data received per second. If your CPU runs at 20 MHz, it will have something around (20 * 10^6)/(384 * 1024), which roughly equals 50 instructions per raw byte of data received. I am no expert at the TCP/IP stack, but I am guessing, that it would be very difficult to squeeze an implementation to be that efficient. You might want to go for a better processor to get solid throughput at 3mpbs.
Anyways, if you plan to use this to design anything, you should test first with actual hardware and the actual TCP/IP stack you plan to use.
Answer: None ;) Ok: my phone could do it. Seriously - a low powered computer has not a lot to do with it.
It is still doing SOMETHING, though ;)
Comment: Not sure what warrants the downvote. I would say the same. If a mobile phone with a 200MHz ARM CPU can manage 7.2Mbps without breaking a sweat, then I don't see an issue with any relatively new x86/x64 CPU and only 3Mbps.
Answer: this depends on your internet connection type; a while back I was able to help someone get significantly lower CPU usage by switching them from a USB-connected modem to a ethernet-connected one, as the USB is a relatively cpu-intensive method (this was an 800MHz pentium 3)
with modern PCs, chances are your CPU speed is not a factor, though


Was Shukracharya a Brahmarishi?

Question: Shukracharya was the preceptor of the asuras and was the only one who knew the sanjeevani mantra. Since he commanded such power, I'm wondering if he was a brahma-rishi. The wiki page as well as other sites do not mention this but I just want to make sure.
Comment: @Dr.VineetAggarwal: Considering that you would have researched all this for your novel on "Vishwamitra", I'm inclined to believe this...Thanks.
Comment: Becoming a Brahmarishi was not an easy task as evident from the story of Vasishth and Vishwamitra. Haven't really come across the mention of any other with that title except these two.
Answer: Certainly he was a rishi of great caliber. He did one of the most difficult penance ever and thus obtained the great vidya of immortality directly from lord Shiva. This puts him in the category of highest seers.

Ushanas is the name of a Vedic rishi with the patronymic Kāvya (descendant of Kavi, AVŚ 4.29.6), who was later identified as
Ushanas Shukra. He is venerated as a seer in the Bhagavad Gita where Krishna tells Arjun that among Kavis he is Ushanas. Ushanas is
also the name of the author of a Dharmashastra.

Apart from this, his contribution to neeti shastra is also phenomenal.
He was also given the elite status of planet in the saura mandala.

S'ukrâchârya said :-- I ask for Mantras, O Deva! from you that are not possessed by Brihaspatî, for the defeat of the Devas, and the
victory of the Asuras.

Vyâsa said :-- On hearing his words, the all-knowing S'ankara S'iva began to think what He would do in this matter.

Certainly, this is with the revengeful object of attacking the Devas, for their defeat and for the victory of the Asuras that this
Muni has come.

The Devas ought to be protected by me; thus thinking, S'ankara Mahes'vara advised him an entirely difficult tapasyâ to practise.

Full one thousand years he would practise tapasyâ with feet upwards and head downwards, he will have to inhale the smoke of burnt
husk. Then he will get the Mantra and his desires will be fulfilled.

That would be done; thus saying to S'ankara, S'ukrâchârya practised that excellent vow, peaceful and inhaling the smoke of husk
to get that Mantra.

In this way one thousand years passed duly, the God Mahâdeva was very pleased and addressed S'ukrâchârya that He had come to give him
boons that he desire.

36-37. The God Mahâdeva said :-- Whatever there exists in this
universe, whatever you see with your eyes and whatever cannot be
described in words, you will be the lord of all these and the
conqueror of all. There is no doubt in this. You cannot be killed by
any creature; you will be the ruler of all beings and will be reckoned
as the best of the Brâhmanas.

Was Shukracharya a Brahmarishi?


Does it align with the base concept of blockchain, if one stores the hash value generated from IPFS network in a database?

Question: A friend of mine utilized IPFS to store data files regarding some user info.But for an android application of the same, he retrieved all hash values(same user but different files) and stored it in a database.I claimed that the security aspect was disrupted by it(since we use blockchain for security purpose) but he said that it's not the case. Could anyone comment on this?
Answer: I don't understand what this means:

he retrieved all hash values(same user but different files)

This is also not clear:

the security aspect was disrupted

"security" can be an overloaded term. It can mean:

Availability - your house is still there or insurance buys you a new one.
Integrity - it's still your house and the door is still locked. Nothing has changed since you were last there.
Confidentiality - no one knows what you keep in your house.

IPFS can be a distributed data store for large objects. S3 can be a data store, as can a USB stick or a database. IPFS and S3 have stronger availability assurances than a USB stick or a database. On the other hand, a USB stick or a database may have stronger confidentiality-oriented properties than IPFS or S3. S3 is centralized and depends on someone paying the invoice. USB sticks and databases depend on the owner not losing them.
A hash on a blockchain can verify existence and lineage of a document or record. A smart contract can hold, for example, 0x123... and a story about where it came from, who signed off - the history. It can answer questions such as "is this legitimate and where it come from?"
A client can hold a document, regardless of where it came from, and compute the hash. It can consult a contract to see if the hash of the document/record it has corresponds to a legitimate document that is known to the contract, or if it is just a made-up claim a.k.a. forgery.
I think you can work for yourself if the proposed architecture aligns with the assurances you want to present to users using the three above-mentioned elements of security.

How is availability ensured?
How is integrity ensured?
How is confidentiality ensured?

It's worth noting that the blockchain is generally very good at the first two but not especially good at the third, owing to transparency. It is often necessary to obfuscate data or store it off-chain to achieve confidentiality assurances.
Hope it helps.
Comment: Consider this. Creator creates data => ipfs object. hash => contract. Contract decides if sender is authorized, adds hash. How we have a large object in IPFS that is endorsed by a smart contract.
Verifier gets hash from database => reads IPFS doc => requests authentication of hash from smart contract => smart contract returns "true". Can there be any doubt the object data (bitwise) is authentic? One can construct an integrity assurance. IPFS is not yet ready to provide availability assurance. The database would be centralized. What happens if the database is unavailable?
Comment: It won't be possible to give more than a general answer when the question is very general.
Comment: Thanks for the answer. IPFS generates hash values for each file we add into it. In general any blockchain technology is utilized as it's secure and there is no central authority right? But if we could get those hash values from a centralized database then what's the use of adding it to IPFS network? Could you please clarify it?


Long audio recording solution

Question: I need to record some audio for a very long time (possibly several weeks). Why you ask? a slight (incessant) next-door dog problem which I need to collect data for. I am looking for a lightweight recording program that can stream directly to a usb flash disk in a compressed format. Hopefully it would be light enough to run on a raspberrypi. Given the flash drive would be only 8GB it needs to run a very good compression in real time. It would also need to be open source (or free software). Can anyone please recommend any software that can do this? If there are no lightweight programs available I will be able to scale up. Would the likes of Ardour be able to handle this kind of recording?
Comment: You may want to look up your local laws regarding audio recording of your neighbors. In many places, it is illegal without their consent, or at least not admissible in court.
Answer: Based on your needs, you are looking at the problem wrong.  You do not want something that can record several weeks of audio.  You want something that can trigger a recording of time-coded audio for a period after a threshold level is reached.  This way you don't have to record hours of silence, but can record when and how the dog is barking (or other loud noises are occurring.)
Personally, I typically use a Zoom H4n for this kind of thing, but you might be able to duplicate it by having a macro program that can monitor the audio input and trigger a recording when a certain level is exceeded.  Possibly have it stop a certain number of minutes after that level is last exceeded.  This would probably take some manual development work, but would be cheaper than buying something like an H4n.  A simple voice recorder might also be able to do it for less though.
Comment: For what it's worth, there are many (relatively) inexpensive security-camera-w-DVR products out there that do this very thing.  Rather than an audio threshold, (though they may do that too) they actually trigger the recording when motion is detected...  Food for thought.
Comment: @JoshP that's a great point about the security cameras.  I'd be surprised if there aren't audio triggered devices available in that market as well.
Comment: Thanks for this. You are right that an event based recording system is what is required here. Thanks for your input.
Answer: We have a baby monitor that activates when it detects sound or movement.
The sensitivity can be adjusted.
Perhaps a similar technology is available?

Long audio recording solution


2006 VW Jetta Brake Rotor

Question: I have a 2006 VW Jetta 2.5L with 1K in the VIN. there are 2 different size brake rotors for the front and the back. need to order without being able to measure as the car is at college.
Comment: Welcome to Motor Vehicle Maintenance & Repair!
Answer: I would try to call a VW parts department with your VIN number to be sure, but one of my favorite VW parts sites, GermanAutoParts, shows that your car needs 260mm Rear rotors and 288mm Front rotors (I'm not going to guarantee that this will fit your car, but if you email them, they might..).
The problem with the Jetta is that it was available with 3 different engines, and a few different trim packages that year, including the GLI package that is only available in a few year models.
Try looking at parts websites that specialize in VW or German parts rather than the big mega-sites.  Their search functions are tailored more for your vehicle.
Comment: Also, notice [this tool](http://www.germanautoparts.com/productdisplay/94677) on one of the brake rotor searches I linked to.  I think this tool is a requirement on your car to do a brake job (and you wouldn't have it unless you have a decent VW wrenching history).  Check the Bently manual if you can, or look at some VW forums for brake job how-tos.
Answer: I'm only seeing 288 x 25 on the front, and 260 x 10 on the rear listed for 2006 Jetta 2.5.

2006 VW Jetta Brake Rotor


How will the messiah deal with Khazars and Sabbateans, who falsely claim to be Jews?

Question: How will the messiah deal with Khazars and Sabbateans, who are no Jews and falsely claim to be Jews?
Comment: Hello Andromeda. Welcome to Mi Yodeya! The Sabbatean movement mostly died out in the 18th century. Any descendants of theirs would be Jewish if their mothers were Jewish (and they would be Jewish if their mothers were Jewish...). The Khazars (see [wikipedia](https://en.wikipedia.org/wiki/Khazars#Judaism)) apparently converted to Judaism many centuries ago. If so, they would be full Jews, and again, anyone today whose mother's mother's mother...Was one of them, would be Jewish.
Comment: @Andromeda The book of Revelations is a Christian book. I don't know the context of that verse and I don't understand it, but it doesn't matter because that book is not part of the Jewish canon.
Comment: Probably treat them as non-Jews. Do any of them still exist?
Comment: For more about the criteria to be Jewish (matrilineal descent or conversion) see: http://judaism.stackexchange.com/questions/52891/am-i-jewish
Comment: @mevaqesh, do you have a definitive answer to [this question](http://judaism.stackexchange.com/questions/60661/will-moshiach-identify-jews-currently-thought-to-be-non-jews) or are you just assuming?
Comment: @Andromeda At this point in history, even those of the Khazar empire who converted have now married into legitimate Jewish families, and thereby have Jewish genetics that are proven via DNA testing. It is no longer a fair assessment to claim they are not Jewish. You can claim that they have a much smaller percentage than say Yemenite Jews, but that is a different argument.
Answer: At this point in history, even those of the Khazar empire who converted have now married into legitimate Jewish families, and thereby have Jewish genetics that are proven via DNA testing. It is no longer a fair assessment to claim they are not Jewish. You can claim that they have a much smaller percentage than say Yemenite Jews, but that is a different argument.
As for the verse you mentioned in your comments, Revelation 3:9

I will make those who are of the synagogue of Satan, who claim to be Jews though they are not, but are liars--I will make them come and fall down at your feet and acknowledge that I have loved you.

i would argue this refers to Christians who have created their own religion, separate from Judaism (remember, at this point in history, Christians go to Synagogues as well). They claim to be "the new spiritual Israel" but keep almost none of the commandments, desecrate the holy Sabbath day, and don't wear tzith-tzith. Remember, on the great day of the LORD, everyone will know who is with God, those who wear tzith tzith
Zechariah 8:23

כג  כֹּה-אָמַר, יְהוָה צְבָאוֹת, בַּיָּמִים הָהֵמָּה, אֲשֶׁר
  יַחֲזִיקוּ עֲשָׂרָה אֲנָשִׁים מִכֹּל לְשֹׁנוֹת הַגּוֹיִם; וְהֶחֱזִיקוּ
  בִּכְנַף אִישׁ יְהוּדִי לֵאמֹר, נֵלְכָה עִמָּכֶם--כִּי שָׁמַעְנוּ,
  אֱלֹהִים עִמָּכֶם.  {ס}   23 Thus saith the LORD of hosts: In those
  days it shall come to pass, that ten men shall take hold, out of all
  the languages of the nations, shall even take hold of the corner of
  his garment (where the tzith tzith are) of him that is a Jew, saying:
  We will go with you, for we have heard that God is with you.'

This might even include Khazars or Sabbateans who wear tzith tzith
Answer: There is a story about the khazars having converted to Judaism. If true they were never false Jews but converts. Converts are accepted as being fully Jewish. Regardless, they were killed and have no surviving offspring today. The shabatai tzvi movement ended when he converted to Islam. As for your quote from something called revelations, this isn't a Jewish source and isn't relevant to anything the Torah has to say about the Messiah


What was the general critical reaction to Star Trek: The Motion Picture?

Question: I thought it was a good movie, yet I'm always hearing people complain about how the plot was terrible and so on. What critical reactions were there to the film and which elements failed in the eyes of the Star Trek community?
Comment: Remember in Star Wars Episode 4: A New Hope, how Obi-Wan, Han, and Luke leave Tatooine and arrive at Alderaan in the next scene, even though they are very far away?  Imagine if you watched them through the entire journey.  For 12 hours.  That was Star Trek: The Motion Picture.  Half the movie was just picking up Spock from his shuttle so they could actually go execute the movie's plot together.
Comment: I think it's important to consider the filmmaking provenance of the picture. The original release had a troubled post-production and release: https://en.wikipedia.org/wiki/Star_Trek:_The_Motion_Picture#Release - much like Blade Runner, the eventual director's cut is much superior to the original, and is a case of "if I'd had more time, I'd have written less".
Comment: You can read professional critics' and audience reviews at http://www.rottentomatoes.com/m/star_trek_the_motion_picture/?search=star%20trek:%20the%20motion -- it's not good. 45% score from critics, 42% from audience.
Comment: Did anyone else think the ST:TMP Klingons looked like deranged munchkins?
Comment: Too slow, too many FX, and not enough character development.  Not writing it as an answer, but I remember it well.  Not only was that what the critics were saying, that's what all of us were saying after watching it.  Rumor has it that at the premiere in Hollywood, the audience was so disappointed, they walked out without waiting for the end credits to finish.
Comment: Also, it plays better on the small screen than the big screen.  Remember, it was basically a rewrite of "In Thy Image," which was intended to be the pilot for _Star Trek: Phase II_, which is the series that never was.  You can read about it in [this book](http://www.amazon.com/Star-Trek-Phase-II-Lost/dp/0671568396/ref=sr_1_1?ie=UTF8&qid=1448410577&sr=8-1&keywords=star+trek%3A+Phase+II).
Answer: Rand al'thor has done a great job of collecting reviews on the issue of The Motion Picture.  However, I thought you might also appreciate the input of a die-hard Trek fan. While critics deplored the plodding pace of the film, Star Trek fans are no stranger to episodes with a contemplative pace (even if TMP is uniquely slow amongst Trek films).
Going from The Original Series to The Motion Picture, here are some of the biggest issues that Trekkies must contend with:

The core friendship was off-balance. The core of the original Trek was arguably the friendship between Kirk, Bones, and Spock.  In TMP, this is broken.  McCoy offers his usual criticism of Kirk's decisions, but not in a friendly way.  Spock, having gone through Kolinahr, is now taciturn and offers only brief dialogue through the entire film.
Spock was not Spock. Building on the previous point, Spock was arguably the most popular character in TOS.  Despite his purported lack of emotion, he would often engage in a kind of spirited and witty banter with the others. Here, he was literally a shell of himself.  Even if it was part of the plot, it didn't help to sell the film to its audience, old or new.
Kirk was a buffoon. Shatner's acting aside, the Kirk of TMP was incompetent. He had none of the leadership skills that made Kirk who he was in TOS.  This was a major stumbling block for fans.  We Trekkies had never seen a Kirk before who had almost destroyed the ship from sheer incompetence.  It just doesn't compute.
There was no real villain, and the characters were oddly passive aggressive. TOS episodes had some marvellous villains, who the crew dispensed with while maintaining their poise.  On the other hand, this film had a strange sort of pent-up rage in many of its characters — Kirk, McCoy, Dekker — but no one to use it against.  The film is a ship of passive aggressive Starfleet officers flying through a never-ending screensaver, and there is no villain whose presence causes their humanity to shine.  They are as mechanical as V'Ger.

Regarding the last point, the lack of a strong villain to counter Kirk and the others was what led to producer Harve Bennett and director Nicholas Meyer scouring TOS for a formidable villain to use for Star Trek II.  (They ended up making an excellent decision, of course, by choosing Khan.  The rest is history.)
Comment: "The film is a ship of passive aggressive Starfleet officers flying through a never-ending screensaver" ... if I could, I'd +1,000,000
Comment: On t'other hand, Persis Khambatta... so it all came out in the wash.
Comment: "On the other hand, this film had a strange sort of pent-up rage in many of its characters — Kirk, McCoy, Dekker — but no one to use it against." Well Dekker certainly found release of repressed urges at the end of the film. :P
Comment: The film hasn't aged as well as Wrath of Khan - the uniforms and effects look really dated, for example. When McCoy first beams up to the Enterprise, wearing the one-piece jumpsuit, gold chain, and a beard, it looks like he'd just left the discotheque. I read somewhere that at the time of the release of ST: TMP in 1979 the backlash against disco was in full swing, leading to jeers from the audience. Plus, let's face it, the main actors in Star Trek were getting *old* by the time of ST:TMP. Star Wars had young, dashing heroes which kids could relate to.
Comment: Also - the idea of achieving spiritual transcendence to another dimension through sexual union between Dekker and Ilia/V'ger seems like pure 70s to me. But in a good way. :)
Answer: Wikipedia has a section on "Critical reception". Quoting the negative parts:

Gary Arnold and Judith Martin of The Washington Post felt that the plot was too thin to support the length of the film.

Time's Harold Livingston wrote that the film consisted of spaceships that "take an unconscionable amount of time to get anywhere, and nothing of dramatic or human interest happens along the way". Livingston also lamented the lack of "boldly characterized" antagonists and battle scenes that made Star Wars fun; instead, viewers were presented with lots of talk, "much of it in impenetrable spaceflight jargon".

David Denby said that the slow movement of ships through space was "no longer surprising and elegant" after films such as 2001: A Space Odyssey, and that much of the action consisted of the crew's reacting to things occurring on the viewscreen, which the New York Magazine critic considered to be "like watching someone else watch television".

Arnold felt that the acting of the main cast (Shatner in particular) was poor; "Shatner portrays Kirk as such a supercilious old twit that one rather wishes he'd been left behind that desk", he wrote. "Shatner has perhaps the least impressive movie physique since Rod Steiger, and his acting style has begun to recall the worst of Richard Burton."

Many critics felt that the special effects overshadowed other elements of the film. Canby stated that the film "owes more to [Trumbull, Dykstra and Michelson] than it does to the director, the writers or even the producer". Livingston felt that Trumbull and Dykstra's work on the film was not as impressive as on Star Wars and Close Encounters due to the limited amount of production time. Godfrey called the effects "stunning", but conceded that they threatened to overpower the story two-thirds of the way into the film. Kroll, Martin, and Arnold agreed that the effects were not able to carry the film or gloss over its other deficiencies; "I'm not sure that Trumbull & Co. have succeeded in pulling the philosophic chestnuts of Roddenberry and his co-writers out of the fire," Arnold wrote.

James Berardinelli, reviewing the film in 1996, felt that the pace dragged and the plot bore too close a resemblance to the original series episode "The Changeling".

The slow pacing, extended reaction shots, and the film's lack of action scenes led fans and critics to give the film a variety of nicknames, including The Motionless Picture, The Slow Motion Picture, The Motion Sickness, and Where Nomad [the probe in "The Changeling"] Has Gone Before.

All of this, naturally, is well referenced; there are plenty of citations you can go and look at if you want more detail.
In short, the main criticism is that everything was too slow.
Comment: Many of these reviews correlate well with one of the film's nicknames: "Star Trek: The Motionless Picture"
Comment: "special effects overshadowed other elements of the film" highlights the double standards of some critics.  The same thing could be said of many films before and since which werecritically acclaimed films (as well as those which were blockbusters at the box office, but critically panned).
Comment: haha those alternative names are genius
Comment: Let's not forget the other nickname: "Star Trek: where Nomad has gone before". In relation to "The changeling" episode. (the other post where this is mentioned wasn't there, in my timeline. Must have flipped into another parallel universe. Again.)
Comment: "...pulling the philosophic chestnuts of Roddenberry and his co-writers out of the fire" cracks me up for some reason.
Answer: A few other things that Memory Alpha has to say on the movie's reception:

Shatner thought it was the end: Shatner commented:

"Well, that's it. We gave it our best shot, it wasn't good, and it will never happen again." But having recalled his reaction fifteen years later, he has added, "Shows you what I know." (Star Trek Movie Memories, 1995, p. 124)

Fans agreed:

Though eagerly awaited, Star Trek fans were by and large in agreement with Nimoy's assessment at the time, especially where the lumbering pace of the movie was concerned, and endowed the movie with humorous, if unflattering, sobriquets such as "Star Trek: The Motion Sickness", "Star Trek: The Motionless Picture", or "Star Trek: The Slow-Motion Picture". (The World of Star Trek)

Fans also thought it was too much like TOS: 'The Changeling':

Another sobriquet given to the movie was "Where Nomad Has Gone Before", which reflected the criticism that the story was too reminiscent of several Original Series episodes, first and foremost the second season episode "The Changeling", in which the sentient robot Nomad was featured


Windows event logs - server crash

Question: A Win2k3 box crashed earlier and now it is back up.  You want to know the exact minute it went down.  Where do you look?  Event viewer? What are you looking for exactly?
Answer: System Event Log, event ID 6008.
Sample event looks like:
Source: EventLog
Event ID: 6008
Description: The previous system shutdown at H:MM:SS PM on DD/MM/YYYY was unexpected.
Comment: 6008 isn't *always* logged
Comment: That event depends on a heartbeat setting that is on by default in server machines from 2000 onward.  Newer clients (Vista and 7) also have this setting.
Answer: I usually look for the messages that show up when the system starts.  Then simply backtrack a bit.  Depending on how the system crashed
For example a good one to look for is from the source eventlog with an id of 6005 (The event log service was started).  The eventlog service usually only starts/stops when the system starts.
Answer: Have a look in the System log for event ID 1000 with source "Save Dump".
Answer: The most reliable Event ID to look for is a 6005, which notifies when the Event Log started (after the restart).  Then look back to the previous handful of events to determine the time the server stopped, and started.  There will usually (in the case of physical boxes) be a gap in the time of events logged.
Although technically the 6008 event is a more accurate event for a genuine hard-reboot/crash, it isn't logged in the case that some software restarted the server (an admin logged in and clicked Yes when the software requested a reboot) or when an admin accidentally rebooted the machine.  The latter happens here occasionally, and the rest of us are left thinking "oh, the server crashed..."

Windows event logs - server crash


Is there a set of data points available to draw an outline of the coast of the British Isles?

Question: I would like to plot a map of the coastline of the British Isles using gnuplot, for which I need a data set of points along the coast. Is this available in csv form, please, or help to convert it to this format? A low resolution outline is all I need.
Comment: If you can gandle GIS data, see http://gis.stackexchange.com/q/72774 for an answer. CSV will be difficult to get.
Answer: Check OpenStreetMaps Overpass API, which is geared at data consumers.
The outline of British Isles is definitely available in OSM. It boils down to how to extract it from the database.
After some googling I found this page, which lets you download borders from OSM. Maybe this is what you're looking for.
Answer: The European Environment Agency hosts shape files of European countries.
The British Isles: http://www.eea.europa.eu/data-and-maps/data/eea-reference-grids-2/gis-files/great-britain-shapefile
This online tool converts .shp files to .csv: https://mygeodata.cloud/converter/shp-to-csv (I haven't tried it)


How to deal with fixation towards an old relationship?

Question: I broke up with my girlfriend a couple of years ago. We haven't talked to each other since then. A few months back we met at a job interview. We spoke to each other and she was very friendly. I thought she is no longer mad at me. Few days ago I came to know that we both got the job. I texted her to congratulate. She has seen it but hasn't replied. Now I can't stop checking my messages on the phone to see if she has replied. I know this is fixation but just don't know how to deal with it. What could be a way out of this?
Comment: I think this question would also be on-topic at [interpersonal.se], if you're also open to non-Buddhist answers to this question.
Comment: Also see [Can the mind be trained to maintain equanimity in the face of compulsive urges?](https://buddhism.stackexchange.com/questions/25700/can-the-mind-be-trained-to-maintain-equanimity-in-the-face-of-compulsive-urges-c/25705?r=SearchResults#25705)
Comment: @ruben2020, Hi, I am more interested into the Buddhist point of view. Thanks!
Comment: Is this a dupe of [How to forget my old girlfriend](https://buddhism.stackexchange.com/questions/24593/how-can-i-forget-my-old-girlfriend)?
Comment: @AndreiVolkov, Hi! No, I don't think it's a duplicate question of "How to forget my old girlfriend?". I never think of my ex. It's just that the opportunity of seeing her again made me like this. Checking my phone over and over is just a compulsive urge, I think. So, the 2nd question is closer to my question but mine is more specific and the 2nd question is more general.
Answer:
Now I can't stop checking my messages on the phone to see if she has replied. I know this is fixation but just don't know how to deal with it. What could be a way out of this?

Not much else to do other than to be mindful of it. You see the mind works in the way of habits. The more time spent on something, e.g. thinking about the past or future, that will incline the mind more towards that direction.
When being mindful of the (compulsive) thinking process it will interrupt it. Instead of enforcing the feed-back loop, mindfulness will momentarily break it.
Since we are working with habits, the mind will soon fall into this way of thinking about past and future again when mindfulness is absent. That's when one must apply mindfulness again. When doing this over and over the mind will slowly begin to incline itself towards that direction - the direction of mindfulness, wakefulness and clarity of mind. When that happens compulsive thinking will stop. It cannot go on since it's not being fed anymore. There's no fuel to burn.
In short, just be mindful of these thoughts when they happen. Do that again and again until you can be free from them. That is the only way one can go about this.
Pinning them down with willpower will only suppress them and cause them to erupt violently later. Shifting attention away from them will only bring temporarily relief.
If you want to become free from them for good, you need to observe them with mindfulness until they change, become exhausted and pass away.
May you be well and happy.
Comment: Thank you very much. Makes total sense to me.
Answer: Buddhism teaches a lasting relationship has four mutual qualities, here: AN 4.55.
It appears obviously both of you do not share these qualities therefore your fixation with the old relationship is unrealistic or deluded. More here.
In summary, simply reflect you are not meant for each other.
Also, since she was previously mad at you, obviously you did something really bad. Buddhism teaches such evil deeds lead to 'hell' (read here and MN 130) therefore one should acknowledge their evil deeds and vow to never commit them again. Such thinking will remove the heedless smug unrepentant fixation from your mind.
Comment: Thanks for the write up!
Comment: don't take the last part too seriously


Where or how to get exposed, developed colour film to use as a filter for infrared photography?

Question: I was told that exposed developed colour film can be used to block visible light for infra-red photography. Where can I get some of this, or can I do it myself? I have a roll of 400 ASP colour film that I've exposed, but don't know how, or if, I can develop it.
Answer: I don't know about colour negative film but unexposed slide film works once developed. Slide film needs to be transparent to IR by necessity, otherwise it could be damaged by the heat from a projector bulb.
There's no guarantee your film will work and unless you can develop colour film yourself, a cheap IR filter from an auction site may work out cheaper (and work better) than paying for your film to be processed. I've got 720nm and 950nm IR filters for use with my modified Olympus C5060, both are Chinese no-brand filters that cost very little and they both work very well.
Incidentally, you don't want to invest in expensive filters until you know the IR characteristics of your lens. Some lenses (on both fixed lens and dSLR/system cameras) show a "hotspot", an area in the centre that is lighter and has reduced contrast. My Oly C5060 doesn't have this issue but my old Minolta Dimage7 definitely does. This issue can affect both digital and film alike as it's down the lens design and not the imaging technology.
Answer: I'm not familiar with using developed color film for IR; however, I have used a project where the inside of a 3.5" floppy disk was used. It should be noted that was used with a webcam and not a "proper" camera.
If you want to develop a cheapo way is with coffee and orange juice, but it takes away the color so it probably won't work for your project.
Judging from the way you spelled color, you might want to check with anywhere that sells Ilford or Agfa. They should have or be able to order a proper C-41 kit (mine was made by Jobo). If you were in the States I'd suggest Amazon or B&H.
Hopefully that can get you started.


Dell Inspiron 1525 Battery not working (Ubuntu 10.04)

Question: I am using ubuntu 10.04 on dell N5010 with perfect battery but it get immediately hibernate after removing power cord. battery is charing during ubuntu use.
Answer: Did you check out battery status in setup by hitting F2 in boot menu?
Did you see your battery's health in Windows. I am running Dell 1545 and Dell 1525 both with Ubuntu as primary. I also ran into battery related problems recently. Replacing it solved the problem.
It is almost certainly a hardware issue. Get a new  battery.