Reference Request: Where can I read about philosophy of the digital arts?

Question: I am interested in reading about ways to evaluate art that are done solely by computers (computer generated art) or otherwise by the help of computers or by the usage of computers such as in digital painting. What philosophical sources could be  of help to me?
Comment: See https://plato.stanford.edu/entries/digital-art/ - the article might be broader than what you're looking for and not focused on evaluation of digital art nor on digital painting. But it might serve you well for introductory general overview.
Answer: Welcome Luna
One article which might be of help is Christiane Paul's 'Renderngs of Digital Art', Leonardo, Vol. 35, No. 5, Tenth Anniversary New York Digital Salon (2002), pp.
471-474+476-484. The Abstract will make clear whether it is what you want:

This essay identifies the current qualifier of choice,
   "new media," by explaining how this term is used
   to describe digital art in various forms. Establish-
   ing a historical context, the author highlights the
   pioneer exhibitions and artists who began working
   with new technology and digital art as early as the
   late 196os and early 197os. The article proceeds to
   articulate the shapes and forms of digital art,
   recognizing its broad range of artistic practice:
   music, interactive installation, installation with net-
   work components, software art, and purely
   Internet-based art. The author examines the
   themes and narratives specific to her selection of
   artwork, specifically interactive digital installations
   and net art. By addressing these forms, the author
   illustrates the hybrid nature of this medium and the
   future of this art practice.

She also has a book: Digital Art, ISBN 10: 0500203679 / ISBN 13: 9780500203675
Published by Thames & Hudson, 2003.
Or perhaps Paul Crowther promises more of what you want:

... many new media works combine visual, written, and audio material in ways
   that obliterate traditional boundaries between art
   forms. However, many other such works maintain
   a primarily visual emphasis. These will be the focus of my analysis. I will concentrate specifically
   on key points of interface and difference between
   the traditional idioms and those visually orientated images and configurations that are computer  generated or depend upon computer technology for
   their full visual realization.
   It is common practice nowadays to use the
   term 'digital art' in relation to such computer-
   dependent visual idioms.7 1 will follow this usage.
   Text-based works will only figure in the analysis
   insofar as they emphasize the text qua visual.
Digital art centers on electronically based tech-
   nology utilizing mathematical algorithms for the
   acquisition, storage, processing, and presentation
   of information. The information in question is often realized in a visual format (rather than through
   text or numbers alone) and can consist of gener-
   ated material (based on mathematical formulae or
   "painted" using bodily held instruments and dedicated hardware) or of information derived from a
   scanned source (including already existing images
   that have been converted to a format readable via
   the appropriate hardware). (Paul Crowther, 'Ontology and Aesthetics of Digital Art',  The Journal of Aesthetics and Art Criticism, Vol. 66, No. 2 (Spring, 2008), pp. 161-
  170: 162.)
Answer: Further scholarly sources (books and papers) that might be helpful:
New Philosophy for New Media by Mark B. N. Hansen
A Philosophy of Computer Art by Dominic McIver Lopes
Digital Art and Meaning: reading kinetic poetry, text machines, mapping art, and interactive installations, By Roberto Simanowski
Authenticity and computer art by Margaret A. Boden
A framework for understanding generative art, By Alan Dorin ,Jonathan McCabe,Jon McCormack, Gordon Monro & Mitchell Whitelaw
What is generative art? By Margaret A. Boden &Ernest A. Edmonds


What did Ramakrishna say about Lokas?

Question: Vedic Hindu cosmology defines various different lokas(worlds) within countless universes where Atma takes birth as different creatures depending on previous Karma. I want to know about Ramakrishna's views or teachings about the same.
Comment: he said to not count how many trees branches etc are there, our work is to eat the mango. another time he said to know how much property a rich man has, one should meet him first and then he will himself tell.
Comment: @Youwillnotknowme  did he say that about lokas? Please answer this question with sources if possible.
Answer: In Chapter 47 of The Gospel of Sri Ramakrishna it reads:

SHYAM: "You can learn from Theosophy where the soul goes after death —whether to the lunar sphere or the stellar sphere or some other region."
MASTER: "That may be. But let me tell you my own attitude. Once a man asked Hanuman, 'What day of the lunar fortnight is it?' Hanuman replied: 'I know nothing about the day of the week, the day of the lunar fortnight, the position of the stars in the sky, or any such things. On Rama alone I meditate.' That is my attitude too."
Answer: Sri Ramakrishna did not encourage speculating about these things at the beginning. He wanted people to realize God instead. I do not recall anyone asking him about Lokas in the Gospel but if they did he would surely not answer the question.

SHYAM: "Sir, is there such a thing as reincarnation? Shall we be born
again?"
MASTER: "Ask God about it. Pray to Him sincerely. He-will tell you
everything. Speak to Jadu Mallick, and he himself will tell you how
many houses he has, and how many government bonds. It is not right to
try to know these things at the beginning. First of all realize God;
then He Himself will let you know whatever you desire."

The Gospel of Sri Ramakrishna, Chapter 48, In the Company of devotees at Syampukur
Answer: Though Sri Ramakrishna did not say anything about Lokas, there is one incident in his direct disciple, Swami Subodhanada's life, in which there is a mention of Ramakrishna Loka - the spiritual realm of Sri Ramakrishna.
Swami Sambuddhananda was a disciple of Holy Mother Sri Sarada Devi. At the invitation of the Vedanta Society of Hawaii, he visited Honolulu twice nearly fifty years ago. The following article, edited by Swami Bhaskarananda, is one of his talks given in Honolulu.
You can read the full article here by Swami Sambuddhananda:
https://vimokshananda.org/2020/08/08/sri-ramakrishnas-comfortable-assurance/
Editor's note: Swami Subodhananda was not only a disciple of Sri Ramakrishna, but also a spiritually illumined soul. He has experienced God. Therefore his mind had a preponderance of sattva guna. This is why whatever he experienced in his dream was nothing but the truth.

What did Ramakrishna say about Lokas?


Is there a way to integrate polkadot wallet with unity?

Question: I am making an application in C# unity and trying to integrate polkadot wallet in the application. I want to know whether it's possible to use the polkadot wallet browser extension to sign personal transactions.
Answer: The maintained project for substrate-based chains and Unity integration is covered here in this substrate seminar and the linked GitHub.
Build .NET and Unity Parachain apps | Substrate Seminar
https://youtu.be/IAdvCbK0kQI
Substrate C# Toolchain that generates a NET API and more
https://github.com/ajuna-network/Ajuna.SDK
Basic NET API for Substrate (follow-up project of SubstrateNetApi)
https://github.com/ajuna-network/Ajuna.NetApi
I hope that helps with the Unity integration.
Answer: Polkadot JS is written with JavaScript, so your ability to integrate it into a C# application is the same as being able to integrate any JavaScript library into a C# project. (probably not very good)
What you want is a library written in C# like: https://github.com/usetech-llc/polkadot_api_dotnet
However this project does not seem to be well maintained at the time of writing this, so probably you will need to reach out to the contributors or fork it if you want to use it in a modern Substrate application.
Answer: I'm under the impression that the browser extension wallet is not meant to be used from outside the browser. So, unless you are using unity for creating a WASM module that can only be consumed from the browser, and then you add some layer so that the Web-Worker that will be serving the WASM module somehow has access to the global scope where the browser wallet is injected, then unless that's the case... I'm afraid that nope, you can't consume the browser wallet from a unity project.
However, have you considered integrating your unity application with Parity Signer instead?


Do we have to have mandatory field in content Schema?

Question: Do we have to have at least ONE mandatory field in content Schema?
Comment: What's the rationale for the question? Did you not try and create a schema with only optional fields? Are you also expecting to create 'null' components or something? what for?
Comment: I'm curious if this was a situation where Thakur's colleague said you _must_ have a mandatory field and we're about to resolve the "discussion." :-) But don't leave us in suspense!
Answer: EDIT - I have misread the question initially
No, you don't. You could have them all optional.

My original answer is below, it might be useful to someone if he misreads it as I have originally :)

OLD ANSWER - Answer to the question 'do you need to have at least one content field in a Schema'.
No, you don't have to. It's very much possible to have a Schema with just Metadata fields, I have created a fair amount during the years and there is one example in the DXA example even.
It is even possible to have no fields at all. Now does such a Schema even make sense? Well in some cases yes, most frequently for some dummy Components to run templating code, page linking or something similar, not for content.


Filter 1 columns data into 3 columns

Question:
I need to filter data in 1 column and have an output of three columns (Column A,Column B and Column C).
The output columns should display values of 11 for column A, values of 12 for column B, and Total of A & B for column C.
The current query I have written:
select count(zcsms_studentgender) as MaleStudents,
       count(zcsms_studentgender) as FemaleStudents,
       count(zcsms_studentgender) as TotalStudents
from zcsms_studentdefinition
where (zcsms_studentgender = '11' or zcsms_studentgender = '12')
and zcsms_studentactive = 'Y';

I can't seem to add filtering into the first two columns (MaleStudents & FemaleStudents) to display only count values of 11 (male) and 12 (female).
It's a report based on student gender. The value for male students is 11, the value for female student is 12. These are stored in 1 table, 1 column. My output has to filter these into a report that will display as Column A (Male Students count) Column B (Female Students count) and Column C
(total count of A and B).
Answer: Just use SUM() and a CASE statement:
SELECT sum(case when zcsms_studentgender=11 then 1 else 0 end) as malestudents,
       sum(case when zcsms_studentgender=12 then 1 else 0 end) as femalestudents,
       sum(case when zcsms_studentgender in (11,12) then 1 else 0 end) as totalstudents
FROM zcsms_studentdefinition
WHERE zcsms_studentactive = 'Y';

Filter 1 columns data into 3 columns


Add to Cart button displaying twice on Shop Page Woocommerce

Question: recently noticed that the add to cart button is appearing twice on my shop page - https://www.widescenes.com/products/nisi-filters/filter-kits/ . Can't work out if it is conflicting with another plug-in. I had originally added the feature by adding code to the function.php file but now do not see it, so assume it has been overwritten. Have tried adding code to hide but this does not work either. Any suggestions would be helpful.
Comment: The top one says it's from an Ajax add to cart plugin - do you have something like that, as a plugin or in your theme? Can you search your site's files for 'ajax_add_to_cart'? It's not working though, both add-to-cart buttons refresh the page for me.
Comment: The top one is the one I had originally added via function.php, the bottom one is the one that recently started to appear. If the product is a variable it says "select options' instead - https://www.widescenes.com/products/nisi-filters/circular-filters/ . Silly question but how do I search my site for files 'ajax_add_to_cart"?
Answer: Thanks for all your help. Have found the issue. It was caused by Pinpoint Booking System. I deactivated and it removed the second row from the shop page.
Answer: You can use the Woocommerce hook for remove add to Cart Button:
You can check below this function , Add your functions.php
<code>add_action( 'woocommerce_after_shop_loop_item', 'disable_add_to_cart_buttons', 1 );

    function disable_add_to_cart_buttons() {
      if( is_shop() ) {
        remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart' );
      }
    }
</code>
Comment: Thanks HK89, however does not seem to work, no change to the page.
Comment: I tried it and it did not change, still showing 2 x add to cart.
Comment: You can try it.
Comment: You've added a plugin to the cart
Comment: You can deactivate plugin one by one and check it Which plugin conflicts


Should I comment when calling a method?

Question: I would like to know if I should comment before calling a method. For example:
//calling method
MethodCall();

or is it good enough with the javadoc commenting on the method header for example:
/**
some method
*/
public static void() {
    Statements;
}

Which one should I use or should I use both?
Comment: `//calling method` and `MethodCall();` are basically identical. You shouldn't need both.
Comment: In my opinion you don't have to do the "calling method..."-thing. Your should give comments, when you explain some lines/parts of your code and not point out obvious things. A method header for javadoc is always a good thing to do.
Answer: I see this an awful lot in production code, and a lot of the time I find myself wondering why some comments are even there. Remember good code comments itself.
 Example
public void doSomething() {
    // Some code
}

public static void main(String[] args)
{
    // Calling doSomething()
    doSomething();
}

It's clear from the code, that you're calling doSomething. Now if it isn't clear in the method name, what that method does (or why it is relevant) then by all means comment it:
// Calling doSomething() to establish a connection to the Database.
doSomething();

But then you've got to ask yourself, what makes more sense?

Adding a comment
Changing the method name so that it's instantly recognisable.

And it is most certainly the latter.
 public void establishDatabaseConnection() {
      // Some code
 }

Makes a hell of a lot more sense.
 Summary
For me, the guide for comments is simple:

If it isn't explicitly clear, why you're calling a method in a given context, then first check the name of that method. If that name could be changed to add clarity, then change it. If the name is as clear as possible, and your code is simply complex, then you can add a comment.
Answer: What benefit could you possibly gain from commenting //calling method when you're calling a method?
Whoever is reading your code will see it on the next line anyway.
Use javadoc comments to document the method and its parameters their purpose.
Comments should explain why you're doing something, not what.
Comment: Thanks for the little lecture cuz I really need it since I saw at commenting so much lol. THANKS!
Answer: One of many reason of comment is to help otherss (and you) to understand what and mainly why you do what you do, but there is no need to write comment such as this:
// Loop through all bananas in the bunch
foreach(banana b in bunch) {
    monkey.eat(b);  //make the monkey eat one banana
}

Answer: Please don't comment when calling a method, just call the method. Unless there is a very specific reason to comment it like "// TODO remove this method call after bug xyz is fix"
This is very useless commenting:
// add 1 to i
i = i + 1;

Try to realize that you code in code and not in comments so make your code as clear as possible. Comments can easily get old/out of date.
Answer: Many good comments focus on why you're doing something, rather than what you're doing; the what should be obvious from the code. There are some cases (often with string munging) where the what isn't obvious, in which case the comment should describe what's happening in human terms, often by citing an example.
A significant counter-example is when a method implements a somewhat tricky algorithm. In that case, it's good to have a comment block describe (again, in human terms) the outline of what's happening. But in that case, you're not "micro-commenting" line-by-line.
Answer: Only if the method you're calling has confusing and cryptic parameters.
There are other instances when the order you're calling methods is very important, and shouldn't be move around. This is sometimes useful to document because sometimes people get clever and try to fix code that ain't broke.
Answer: Method header javadoc commenting is always a good idea.  So for most function calls, that is enough, but sometimes you will want to add a comment where you are calling it, too.  When you call a method with some default (magic!) numbers is a great place to add a comment, explaining why you used the magic number you used.
For example, given the following function
/**This function takes the following arguments.... */
public int foo(int a, int b){//does stuff}

I would not bother to comment the call if I had two inputs (first and second) like so:
foo(first, second);

But in the case where I only had first, and want to use the default 42, I would comment:
//the default is 42, because it is the answer to life, the universe, and everything.
foo(first, 42);

Answer: To be fair, this varies greatly, depending on your code.
I generally like well-documented code, especially the one used in your second example - but not when the method itself is self explanatory.
Imagine a Point class declaring an x and y variable and 2 getters and setters (e.g. getX, setX). There is not really any need to comment what this class does or describe its intented use - it is pretty obvious.
You should strive to make the code readable - if you need to use comments it is generally a sign that your code is not easy to read or understand, so consider changing your code before commenting it.
If you code can still be hard to understand after making it more reasonable, then use method documentation like your second example to explain the purpose of the method, its input and its output.
Only use INLINE comments if it is absolutely necessary to understand some important workings of your code that is almost impossible to guess, and is important for someone else to understand, and does not fit in the method documentation - or use them to mark things that you still ned to do or handle in your method like "Remember to check if user is logged in before fetching data". This way when you look through your code you can see your comments and remember what you need to still do.
Personally I use inline comments to describe a method initially without code e.g.
public double divideNumbers(double top, double bottom){
    //Check bottom is different from zero and throw exception if zero
    //Divide top with bottom
    //Return result
}

This way I can take a comment one by one, implement it, and then continue to the next comment.
Answer: No, this will only add to code clutter. What is the reason for duplication? What if the method is renamed? You'll have to update the comments, which is double work.
//calling method
MethodCall();

Should I comment when calling a method?


how to attach files that exceed character count limit for thread insertion inline?

Question: I have output from a diagnostic I ran on my Mac.  I want to insert the output of the diagnostic into a thread I have, but got the message that it exceeds the character limit.  I then put the file into .pdf and .heic but don't see how to attach a 60 page .pdf or large file .heic.  Is it possible to attach 60 page .pdf or comparable .heic or .txt to a thread?  If so, how?
Answer: You can always upload long log outputs etc to pastebin (or similar sites) and link them. Just make sure they don't contain any sensitive information.
OTOH, long logs hardly ever get read afterwards and are difficult to interpret anyway, so it may not actually help to add them. Usually just adding the relevant parts directly to the question is the better approach.
Comment: My first response was exactly what my fellow moderators wrote (but less tactful): no one is going to read a 60 page pdf. But you make the point well, Stumped – the idea isn't that someone *should* read a 60 page pdf, but in the hands of someone who knows what they're doing, a quick search might find the relevant information within that PDF, but the whole point of such expertise is that the asker can't summarize the file to the relevant bits precisely because they can't identify them. Well put!
Comment: ok.  tks.  just making sure there wasn't a way to just use the site here.  As far as the log, id edit it, but I dont know what's relevant and what's not.  Seems lie there is a bunch of nothing going on taking up time, causing the long delay in making the files accessible on the external drive - what im trying to figure out.
Comment: Definitely. Before you post more than 10 lines of text here, think to yourself, why would someone spend the time to review closely dozens and dozens of lines of text to help a poster if they don't know how to filter and condense what they're asking. There are good cases for larger chunks, but the system is there to encourage well researched and well scoped problems.
Comment: yep.  get it.  I posted it in the other thread.  I think there is a LOT of repetitive something going on in the file reading.  But, im guessing for someone who knows what to look for, and if were me, id use text search to cut through the excess.  I did not want to delete anything that may give a hint as to whats going on....


On 13.10, where is my dropbox icon

Question: I just installed Ubuntu 13.10, but I can't locate my Dropbox icon, which used to reside next to the time, volume controls and such, in the upper right corner of my screen.  Dropbox icon is no longer shown, how can I turn it on?
Answer: Try re-installing it, but first see if it's running by uploading something either from your phone, or use the website. If you don't see the notification that should be in the top right of your screen in a couple of seconds, go ahead and reinstall. It shouldn't touch any of your Dropbox folders.
One more thing: On update to 13.10, at least for me, it disabled the ppa's for some of my packages. Go into Settings > Software & Updates > Other Software and see if something's disabled that shouldn't be.
Try updating manually. Open up the terminal and type "sudo apt-get update && sudo apt-get upgrade" to update.
I had 13.04 from scratch, then upgraded to 13.10 and added Dropbox the same day that 13.10 came out. I didn't have any problems, so just re-install maybe?
If the above doesn't work, and if you haven't already, do what any phone person would tell you; restart your computer. Try opening the terminal and doing a reset that way by typing "sudo shutdown -r now".

On 13.10, where is my dropbox icon


How great is xmonad if I still want my "old" graphical IDE?

Question: I've heard excellent reports of xmonad, but how good is it for everyday use and for development? For various reasons I don't use vim/emacs (though I don't suffer from terminal-phobia!). All the screenshots/videos I've seen show xmonad being used with mainly terminal apps. Is it worth switching from KDE 4.2?
Answer: KDE is a desktop environment - a collection of well integrated applications. XMonad is a window manager, which only replaces KWin from KDE, so you can still use KDE while using XMonad (and other window managers).
A tiling window manager is usually used for productivity reasons. Vi and Emacs are used for the same reasons. This is probably why you commonly see people using a lot of terminals and vi/emacs in screenshots. There's no reason why you wouldn't be able to use graphical applications with a tiling window manager. However there are various quirks with some applications (GIMP comes to mind), where dialog boxes and various windows don't play well with the tiling paradigm, because the developers didn't think of it. They basically assume that the window will float. There are ways to fix this, by setting specific windows to be floating, but it may take some time to configure this, and it may be annoying at first.
Tiling window managers tend to have various layouts. As far as I know all tiling window managers have a "fullscreen" layout. This would probably be a nice layout for an IDE, and possibly even other graphical applications (I use it for web browsing). Layouts can be set per-workspace in XMonad, so you could have an "IDE" workspace and have specific settings for that environment.
I suggest you just try it, there's no harm in it, and you'll be able to judge for yourself.
Answer: This is probably what you want:
http://www.haskell.org/haskellwiki/Xmonad/Using_xmonad_in_KDE
My experience:
I like xmonad but wanted to live in the magical land of gnome
I followed
http://haskell.org/haskellwiki/Xmonad/Using_xmonad_in_Gnome
which just worked. IIRC all I need to do (on ubuntu) was to
*install xmonad
*create .gnomerc
*put WINDOW_MANAGER=xmonad
*put import XMonad.Config.Gnome in my .xmonad
I get all the magic of gnome in a tiling organized way
Answer: I think it depends on the person. Is Linux worth switching to from OS X for everyone? No. It depends on various factors. As for switching to xmonad completely (I understand you can run both), it will depend on people's preferred style of workspaces. Personally, I have switched over and I just wished I had tried it earlier. Anyway, the best thing you can do to see if its for you is to go ahead and install and run the dam thing! :) Hope that helps.


Random Fourier series in Hilbert space

Question: Let $H$ be a Hilbert space, and $X_n$,
$ n\in \mathbb {Z}$, be a sequence of independent Bernoulli random variables
$P(X_n = \pm 1) = \frac 12$. Is there a characterization of the sequences
$a_n$, $ n\in \mathbb{Z}$, in $H$ such that the series
$$
    \sum_n a_n X_n e^{int}, \quad t \in [0,2\pi],
$$
is almost surely uniformly convergent in $H$?
Comment: Did you look in J.-P. Kahane's book, Some Random series of functions. I believe this will contain answers to your question.
Comment: @DangZheng That's partially wrong: there is no *full* characterization (for the simple reason that it is still unknown) but there is a whole chapter on when the sum of a random Fourier series with scalar coefficients is almost surely continuous and the continuity is actually derived from the uniform convergence.
Comment: As far as I can tell, there's nothing in Kahane's book about that, not even a characterization of scalar sequences.
Answer: There is actually a full characterization for scalar sequences in the work of Marcus and Pisier (1981) via entropy integrals. The vector-valued case is an application of a deep result on Bernoulli processes (Bednorz-Latala, Annals of Mathematics 2013).

Random Fourier series in Hilbert space


Some packages have only italic font

Question: Hello I am running ubuntu 18.04 with gnome.
Some packages (like zenmap and audacous) have italic fonts even though I have my font in gnome tweak set to Ubuntu light and medium.
Comment: Is your system using English or some other language?
Comment: Yup I am using english and i have narrowed it down to gtk+.
Answer: Well I have figured it out. The theme of my problems are almost always configs so i tried removing them that fixed the issue by creating a new config file.

Some packages have only italic font


I think my bitcoin wallet was hacked. What to do?

Question: I opened bitcoin-qt after not mining for a couple months and found that I suddenly have no more bitcoins!  And I see that there were 2 transactions that I did not authorize sending my coins to other addresses!  Is there anything I can do to get my coins back?
Answer: Probably not. You can try to look at the addresses the coins were transferred to (or, if those were since sent elsewhere, at those addresses too) and see if you can figure out who they belong to. If the thief is somewhat competent, however, it's a good bet that he's made it very hard to track. If you can determine the identity, you might be able to take them to a court (small claims, civil, criminal...I don't know, and might depend on how many bitcoins were stolen, and where in the world you and your thief live) to demand the bitcoins (or equivalent value) back. But as far as the Bitcoin protocol itself goes: no, you cannot reverse the transaction.
To prevent this in the future, make sure that your computer is free of malware, always encrypt your wallet with a secure password, and consider using an offline wallet. See bitcoin.org's Securing your wallet page for other tips.
Are you sure that the addresses don't belong to you, maybe in some online service you used and forgot about?
Comment: I'm using bitcoin-qt and never fully registered for any online services for bitcoin accounts so, I'm only using offline wallets.
Comment: "Offline wallet", as used here, is different from what you're calling an offline wallet. Basically, because you were using Bitcoin-QT on a computer connected to the Internet, (and probably the same computer you use to browse the web, download and install things, etc.) you didn't have an "offline wallet" and are open to a variety of attacks, such as malware that logs your keystrokes to steal your (encrypted) wallet and password; or if your wallet is unencrypted, simply steal your wallet.
Answer: No, sorry but "fortunately" you can't do anything, otherwise people could pay for goods and services and then get back the bitcoin used (it's called double spending).
The analogy with fiat money is when someone picks your pocket, asking your bank for a refund for the cash you had won't help.
Some best practices for achieving good security are:

take care about system password for online wallet
install official/trusted bitcoin wallet software
use offline wallets if you hold many bitcoins (create the wallet with an off-line computer!)
do not put many bitcoin in a single exchange because they control your money (mtgox), or wait for distributed exchange


What was Cobb's totem before the spinning top?

Question: The movie explains that Cobb adopted Mol's totem after her death.  Do we ever know what his totem was before he adopted her spinning top?
Answer: Short answer : we are never told explicitly what was Cobb's totem before the spinning top. and IIRC, he doesn't say at all it is his totem:

COBB
This one was hers. She'd spin it in a dream and it would never topple.
Just spin and spin...

Now, if you are ready to dig into The Internet, you are going to find a lot of different theories, which is one of the critical successes of the film (and I would say is characteristic of Nolan's work) - make your own opinion.
I will add that the most accepted theory is that his totem is his wedding ring. Did you notice how hard it is throughout the movie to look at Cobb's left hand? Why would he hide his hand like that if it wasn't to hide his true totem, and so, his true weakness?
Comment: I 100% believe that it's his ring. He is seen playing with it in at least one occasion. We also never see him with it on in the sequences where he's apparently *not* dreaming.
Answer: tl;dr - He had no totem before he started using Mal's spinning top.
After some consideration on the matter, I've come to the tentative conclusion that Cobb didn't have a totem prior to Mal's death and that her spinning metal top (a childhood toy) wasn't originally a totem but simply a childhood toy of Mal's that Cobb took possession of after her death and subsequently used as his personal totem.
So how did Cobb and Mal determine that they were in reality or still dreaming prior to her death?
Mal and Cobb were engaged in experimentation with the PASIV machine and doing things that hadn't been done before. Before Cobb and Mal got stuck in Limbo, it seems that no-one had ever gone deep enough into a dream-within-a-dream to significantly confuse reality with the dream world and hence to need some way of find out what the situation was (i.e. to need a totem).

COBB: We were on a job. Exploring dreams within dreams. But we didn't understand how your mind can turn hours into years. How you can get trapped. Trapped so deep that when you wash up on the shore of your subconscious…
INSERT CUT: MAL LIES ON THE SAND, STARING UP AT A CLOUDLESS SKY, WAVES WASHING OVER HER…
COBB: You can lose track of what's real.
ARIADNE: How long were you stuck?
Cobb pauses before he answers. Looks at Ariadne.
COBB: Fifty years.

So what about his wedding ring? Couldn't that be Cobb's totem?
We see Cobb him wearing his ring in both dreams (limbo) and reality and hence it would be no use in determining which state he was in. Myth busted.
Comment: According to [the scene](https://www.youtube.com/watch?v=yzhqNfJnIwo) where we see her lock the top away, where it's specifically tied to the idea of a truth she knew but chose to lock away (that their world wasn't real), and his solution was to take that idea and spin it, I see no other reason any of it makes sense as anything other than being her totem already. If it wasn't, why was it tied to her idea of reality? Why would she lock it away? How did he know spinning it would do the trick, in a world that was clearly false, unless it already held significance to her as an object of truth?
Comment: @Mwr247 - We don't see her with it at any point other than in this scene set in her childhood home. The top (something from her own childhood) seems to symbolise an idea of her life prior to Limbo rather than literally being her totem.
Comment: @Mwr247 - Plus neither Cobb nor Mal use their totems after waking up, something that is always his first action (after waking up) later in the film.
Comment: I'm really not convinced that Mal didn't have the top as her totem.  I definitely think it was still Cobb's totem, I just don't see why they would have the whole "top in the safe" theme if it wasn't her totem already.
Comment: @JMac - I'm thinking it was simply an item that related to her old life


What is the difference between Geb automation tool and Selenium web driver?

Question: I just want to know why it is I should go for Geb automation.
What are the advantages of using Geb automation over selenium Web driver or Robot framework.
I would like to know regarding following feature:

PageObject support
jQuery content selection
Good integration with BDD frameworks like Spock, Cucumber etc.

Please describe in detail how these features are beneficial.
Answer: Geb runs WebDriver in the Groovy language.  The goal is to make the use of WebDriver simpler.
However, if you use WebDriver directly, it's supported in a number of languages, including Python, Ruby, C#, Java and implementations exist in others, including PHP, Perl and potentially Javascript.
The support for PageObject and jQuery selection is existent in both, given that they utilise most of the same components.
How Geb handles PageObjects.
Geb's Navigator API, which is inspired by jQuery.
And yes, both have the same degree of integration with Spock etc.
For more information on Geb, check out the Book of Geb on the official site.


Is the creator of a piece of software bound by the license he gives it?

Question: For example, if a person creates an application that they open-source under a license that says you can use this code but you cannot sell it, has that person just bound himself to not selling it now as well?
Answer: A license is the owner assigning rights and responsibilities over their intellectual property to a third party. Assigning one set of rights in one license does not preclude them from assigning a different set of rights and responsibilities to another third party.
This is how software products come to be dual-licensed or multi-licensed. Each license grants certain rights but imposes its own restrictions. Thus a software house may opt to release a software product under GPL for free, requiring derivations to be provided with source code, and under a closed source license, for a fee, where derivatives can be supplied without source code.
Comment: Except that any community contributions to your GPL release are GPL - unless you can get the authors to assign ownership to you.
Comment: Yes if personB adds new functionality to the GPL code that new bit is owned by personB and is GPL. You can't take the new bits and add them to your closed source distribution without personB's permission. Remember GPL is all about distribution. Normally dual licensed apps will 'ask' that changes are assigned back to them, or won't accept any downstream changes at all
Comment: @MartinBeckett - Thanks I alluded to that in my linked answer, but I've updated it to make that more explicit.
Comment: @MartinBeckett So you are saying that if I release my content under a certain license, if PersonB adds new content, the new content is bound by that license and not my property, correct?  Is PersonB assigning rights, as Mark says in his answer, or is their addition bound to the license that I put on the overall code?
Comment: Hence why some consider the GPL a "virus" that "contaminates" everything downstream.  :-)
Answer: You retain copyright and as long as you don't sign THAT away you can license your code under different licenses. Watch out though, it may turn out hard to remove a license once you put a license on a work.


TabBar disappears when starting new intent in android app

Question: I have an Android application with four tabs. When I'm in one of the tabs, click a button which starts a new intent and go to the next view, the tabbar disappears. Any suggestions to how I can prevent that from happening? I want to have the tabbar visible no matter where the user is in the application.
Answer: You will need to include the tabs (is it a TabHost?) in the layout for each of your Activities. Perhaps what you really want to be doing is switching tabs within the TabHost rather than launching a new Activity...
You can do this by using TabHost.setCurrentTab
You might also be interested in doing something like the button bar at the top of the Twitter app.  Some details on implementing that can be found here: button bar similar to twitter app for android


Probability for rolling $n$ dice to add up to at least (a specific sum)

Question: To clear up potential misunderstandings and make it easier to understand, I'll use this notation:
Instead of writing "Rolling $n$ $m$-sided dice", I'll shorten it to "Rolling ndm". (n is the amount of dice and m is the amount of sides on the dice) (This is the notation used in D&D if you know what that is)
Im asking how to calculate the probability of getting at least a sum of s when rolling ndm. Finding the amount of possible outcomes is fairly easy, its just $m^n$. So f.ex for 3d6, the amount of possible outcomes would be $6^3 = 216$. I've looked at similar asked questions before and found a very useful, related formula for finding the amount of ways to get the sum  s when rolling ndm:Let $k = \lfloor \frac {s-n}m \rfloor$
$$\sum_\limits{i=0}^{k} (-1)^i{n\choose i}{s-1 - im\choose n-1}$$
However, this only gives us the probability of getting exactly s, not at least s.
Comment: sum over $s$ to get what you want
Comment: @Masacroso Then you can use the Hockey stick identity to eliminate the summation. Much nicer solution.
Comment: @Masacroso: do you remember, we already discussed about the writing of [this formula](http://math.stackexchange.com/questions/992125): if you don't get rid of the sum bounds it is complicated to sum over $s$
Answer: Consider that
$$
\eqalign{
  & {\rm No}{\rm .}\,{\rm of}\,{\rm solutions}\,{\rm to}\;\left\{ \matrix{
  {\rm 1} \le {\rm integer}\;y_{\,j}  \le m \hfill \cr
  y_{\,1}  + y_{\,2}  + \; \cdots \; + y_{\,n}  = s \hfill \cr}  \right.\quad  \Rightarrow   \cr
  &  \Rightarrow \quad {\rm No}{\rm .}\,{\rm of}\,{\rm solutions}\,{\rm to}\;\left\{ \matrix{
  {\rm 0} \le {\rm integer}\;x_{\,j}  \le m - 1 \hfill \cr
  x_{\,1}  + x_{\,2}  + \; \cdots \; + x_{\,n}  = s - n \hfill \cr}  \right. =   \cr
  &  = N_{\,b} (s - n,m - 1,n) \cr}
$$
where $N_b$ is given by
$$
\eqalign{
  & N(sum = s,m,n) = N_b (s - n,m - 1,n)\quad  =   \cr
  &  = \sum\limits_{\left( {0\, \le } \right)\,\,k\,\,\left( { \le \,{{s - n} \over m}\, \le \,n} \right)} {
\left( { - 1} \right)^k \binom{n}{k}\binom{s-1-k\,m}{s-n-k\,m}  }  \cr}
$$
as widely explained in this related post.
Note that the second binomial looks  equivalent to that in the formula you cited.
But written in this way it has the advantage to implicitly contain the bounds of the sum,
which then can be omitted (indicated in brackets).
This has the advantage of simplifying the the algebraic manipulations, and in fact
for the cumulative Number we easily get
$$
\eqalign{
  & N(sum \le S,m,n) =   \cr
  &  = \sum\limits_{0\, \le \,s\, \le \,S} {\sum\limits_{\left( {0\, \le } \right)\,\,k\,\,\left( { \le \,{{s - n} \over m}\, \le \,n} \right)} {
  \left( { - 1} \right)^k  \binom{n}{k}\binom{s-1-k\,m}{s-n-k\,m}  } }  =   \cr
  &  = \sum\limits_{\left( {0\, \le } \right)\,\,k\,\,\left( {\, \le \,n} \right)} {\sum\limits_{\left({0\, \le}\right) \,s\, \left({\,\le \,S}\right)} {
  \left( { - 1} \right)^k \binom{n}{k} \binom{S-s}{S-s} \binom{s-1-k\,m}{s-n-k\,m} } }  =   \cr
  &  = \sum\limits_{\left( {0\, \le } \right)\,\,k\,\,\left( {\, \le \,n} \right)} {
 \left( { - 1} \right)^k \binom{n}{k} \binom{S-k\,m}{S-n-k\,m}}  \cr}
$$
by using the "double convolution" formula for binomials.
Answer: It is a little easier to answer the probability of rolling less than $s$. This is $m^{-n}$ times the number of solutions to
$$
d_1+d_2+\dots+d_n+e=s,\\
1\le d_i\le m,\\
1\le e
$$
which is the coefficient of $x^s$ in
$$
m^{-n}(x+x^2+\dots+x^m)^n\cdot (x+x^2+x^3+\dots)=m^{-n}x^{n+1}(1-x^m)^n(1-x)^{-n-1}.
$$
Therefore,
$$
\boxed{P(\text{roll less than s})=m^{-n}\sum_{i=0}^{\left\lfloor\frac{s-1-n}{m}\right\rfloor}(-1)^i\binom{n}{i}\binom{s-1-im}{n}}
$$
For example, with two six sided dice, you get
$$
\frac1{36}\Bigg[\binom{s-1}{2}-2\binom{s-7}{2}+\binom{s-13}{2}\Bigg]
$$
which checks out.
Comment: So this would be equivalent to finding the probability for getting _at most_ s then?
Comment: @NilsPhillipTalgö Unless I misunderstand you, no, the probability of rolling less than $s$ (my answer) is not equal to that of rolling at most $s$.
Answer: While thinking about this problem I finally saw the simplicity to it. Firstly, what means "getting at least s", well, it simply means getting any sum bigger than or equal to s. So to get the desired result, we need to "sum over s" as mentioned by @Masacroso. Actually finding this formula wasn't that obvious, but I think I worked it out:
$$\frac{\sum_\limits{j=s}^{n*m} \sum_\limits{i=0}^{\lfloor \frac {j-n}m \rfloor} (-1)^i{n\choose i}{s-1 - im\choose n-1}}{m^n}$$
To explain why this should work: The formula I cited in the question gave us the amount of ways to get s as a sum when rolling ndm, but since the amount of ways to get at least $s$ is just all the cases where the sum is ≥ $s$, we can just add the amount of ways of getting $s$, then $s+1$, then $s+2$ and so on up to the maximum possible roll, namely $n*m$. (Then dividing by the amount of possible outcomes, namely $m^n$)
This should give us the desired probability from $0$ to $1$.

Similarly, the probability of rolling at most $s$ is the exact same formula, but going from $n$ to $s$ instead of $s$ to $n*m$. (This is because the lowest possible roll is always going to be equal to the amount of dice rolled. (Assuming you roll a 1 on every individual roll))
$$\frac{\sum_\limits{j=n}^{s} \sum_\limits{i=0}^{\lfloor \frac {j-n}m \rfloor} (-1)^i{n\choose i}{s-1 - im\choose n-1}}{m^n}$$


Video files (AVI) tags editor?

Question: I would like to change tags of ordinary video files (AVI container). Are there any video file (AVI) tag editors available in Ubuntu ?
Answer: There's a partial answer in this ubuntuforums post .
There are examples using ffmpeg and mencoder, which "works with mp4,avi,mpeg,wmv1,wmv2,mkv output" .
The two examples cor2y gives are:
<code> ffmpeg -i file.avi -vcodec copy -acodec copy -metadata title="Dancing Bear" -metadata comment="Title Created Using FFmpeg metadata tag" outputfile.avi
</code>
and
<code> mencoder -ovc copy -oac copy file,avi -info name="Dancing Bear" -info comment="File Title Created with Mencoder Info tag "  -o outputfile.avi
</code>
Comment: Thank you for hint. However, I would like to edit tags by software with GUI. I found that VLC player 'should' edit tags, but it doesn't :(

Video files (AVI) tags editor?


Private key DES password

Question: If I have a SSL private key that is encrypted with a DES password, and I have to share with another admin a NODES copy of the private key, can the other admin determine what my DES password is?
Comment: You don't say what kind of encryption you mean, and they vary enormously, but I'm going to _guess_ you mean one of the formats and related encryptions used by OpenSSL, because `openssl` commandline sometimes uses the flag `-nodes` (lowercase) to indicate an unencrypted privatekey file, and no other common tool I know of does so. I have commented accordingly. In any case having the unencrypted file doesn't help; all possible attacks are directly on the encrypted file.
Comment: Could you update your question with the password generation that you use?
Answer: Not easily. This would amount to a known-plaintext attack on DES -- the "attacker" has access to a pair of ciphertext and plaintext, and is attempting to determine the key. DES is not a particularly strong cipher, but it is not considered to be especially vulnerable to this attack.
Comment: Even recovering the DES key doesn't give the password; see my comment on kelalaka's answer.
Answer: It really look into the money that one can spend on it. For example, the Copacobana from 2007:

With further optimization of our implementation, we could achieve a clock frequency of 136MHz for the brute force attack with COPACOBANA. Now, the average search time for a single DES key is less than a week, precisely 6.4 days. The worst case for the search has been reduced to 12.8 days now.

Recently there is another one crach.sh

we've built a system with 48 Virtex-6 LX240Ts which can exhaust the keyspace in around 26 hours, and have provided it for the research community to use. Our hope is that this will better demonstrate the insecurity of DES and move people to adopt more secure modern encryption standards.

They can also find the key in 25 seconds with a prebuilt rainbow table built for a predetermined plaintext-ciphertext pair.
Comment: That recovers the key used for the DES encryption, and the plaintext (which in this example the attacker already has), but not the password from which it was derived. If the password is weak (and most are) and this is OpenSSL 'traditional' format with its awful PBKDF (MD5, unsalted, ONE iteration) john or hashcat or similar can find it quickly, but if it's PKCS8 with PBKDF2 (HMAC-SHA1 or better, salted, 2048 by default and optionally more in 1.1.0+) _or_ if the password is strong, maybe not.
Comment: @dave_thompson_085 Thanks for the password case that I completely forgot.

Private key DES password


Easily Cropping a Video

Question: I recorded a video at 1080x1920px resolution, and wanted to crop this video, by removing a little bit from the top and a lot from the bottom.
I went about it by -

Importing the video (drag and drop)
The video was being squished, I managed to fix this by Right clicking on the video -> Movie Strip -> Set Render Size.
I calculated exactly how many pixels I wanted to crop from the top by clicking on the preview and noting down the readings on the Y axis.
I then did some basic math and converted the Y axis readings to the appropriate offsets and used the Adjust -> Crop to enter these offsets.
I then changed the Render dimensions by calculating the difference between the original height and the sum of the offsets.
Ensured the height is divisible by 2.

This was quite cumbersome. Is there an easier way to do this in Blender? Ideally I would love it if I could just drag a box over the desired area and Blender does all these calculations for me.
Comment: It's best to use e.g. free online video editors.
Answer: Grap the Transform Tools add-on: https://github.com/tin2tin/VSE_Transform_Tools

Easily Cropping a Video


How many children should you have in islam

Question: How many children should you have in Islam? One two three four or more.
Comment: Salam and Welcome to Islam.SE, we suggest you read the FAQ.  Here we discourage people from asking two questions in one, as well as we discourage questions asking about a specific region.  we recommend you look around this site to see how things work, and again we welcome you :)
Answer: There is no limit on the children we can have, whatever Allah blesses us with we thank Him.  We are encouraged to get married to a wife who is willing to have many children (usually a women who herself was in a big family), and discouraged to getting married to one who cannot bear any children.  It has been narrated that the Prophet (peace and blessings be upon him) said when a man came to him asking whether he should marry a women who cannot bear children, the man asked three times and the Prophet each time said no, on the third he said:

تَزَوَّجُوا الْوَلُودَ الْوَدُودَ فَإِنِّي مُكَاثِرٌ بِكُمْ
Marry the one who is fertile and loving, for I will boast of your
  great numbers

Sources: Islamic online university
Comment: I guess there is a hadith which explicitly commands to have as more children as possible?
Answer: The "count" should be as many as you can provide for them to have a good live, future, education,... and raise as good persons to themselves and to others.


How do you fill empty spaces in a UV with the existing textures?

Question: I've recently been making meshes for Roblox, but my latest one (an apple,) has these black seams, and I believe it's because of the empty black space in the UV. I saw a video a while back where I remember the person in the video clicking this button and it sort of stretched the already-drawn textures to touch each other and fill in the gaps. If this makes any sense, does anybody know how this YouTuber did it? Thanks!
Comment: maybe in the UV Editor > header menu > UV > Pack Islands?
Comment: @moonboots Thanks for the recommendation! I actually found the answer, all I needed was padding (you can see what I did to get padding in my answer,) which allowed me to sort of extend the texture to fill most of the empty parts of the image. Thanks! :)
Comment: ok, interesting
Answer: I found out what it was!
All I needed for the texture to be fixed was padding.I got TexTools (a free plugin for Blender, found here: https://github.com/SavMartin/TexTools-Blender/releases/tag/v1.4.3) and added it to Blender. I then went to UV, selected the resolution (in this case I used 2048), and used the "Padding" slider to change the padding on the image. There's different values of padding for different resolutions, 16 being the recommended value for 2048, but I ended up doing a higher value for this particular mesh in order to fix the issue.
I'm not sure if there's a way to do this by default in Blender, but I'd still recommend getting TexTools anyway, it's a great addon! Thanks for reading, hopefully this helped if you had the same issue! :)


How can I close the current frame upon killing a buffer if that frame was only opened for it?

Question: When I open a file in Emacs.app, via Finder, via the edit-server or during merging on an SVN update, it shows up in a new frame. When I kill that buffer, I pretty much always also want close the frame that came with it. Is there a way to easily recognize such situations and add an appropriate advice to kill-buffer? Is there perhaps a buffer history for each frame? If that history only contains one buffer, and the frame is not the last remaining one, it would be safe to close.
Comment: OK, this behaviour seems to be different on OS X and Ubuntu. Try calling the command `delete-frame` (for me it is bound to `s-w` or `C-x 5 0`.
Comment: I've just tested it, it just quits Emacs.app entirely.
Comment: That will delete the current frame, but does not kill the current buffer.
Comment: I'll be using this solution for now: http://emacs.stackexchange.com/questions/2888/kill-buffer-when-frame-is-deleted?rq=1 (thanks to elethan for bringing it to my attention), but perhaps there is a simple solution to my question?
Comment: If you just want to "kill current buffer and frame" without plugins: `C-x k RET C-x 5 0`. This calls `kill-buffer`, accepts the default (= current buffer), then calls `delete-frame`.
Comment: Is there a reason you don't want to just close the frame (effectively killing the buffer as well) with `C-x C-c`?
Comment: Doesn't that shut down emacs altogether?
Comment: If you are talking about separate frames, it should only close the frame you are in when you execute the command. It may be different in your setup, but you could try it. If you are using emacsclient, I am not sure what the result will be.
Comment: Let us [continue this discussion in chat](http://chat.stackexchange.com/rooms/33496/discussion-between-mcb-and-elethan).
Answer: The solution you found here should be fine.
Here is another approach, which I use.  To use it you will need to either pull out the relevant code from these libraries or require each of them.
This approach does two things:

Defines an alternative command to kill-buffer, for interactive use: kill-buffer-and-its-windows.  I remap all keys bound to the former to the latter, like this:
(define-key global-map [remap kill-buffer] 'kill-buffer-and-its-windows)

Advises delete-window so that if the window is alone in its frame, then the frame is deleted (using delete-frame).

In other words, when you use C-x k you will get this behavior: the buffer will be killed and its window (or its frame, if it has only one window) will be deleted.
The code:

The code for kill-buffer-and-its-windows is in library misc-cmds.el.
The code that advises delete-window is in librarly frame-cmds.el.
Each of those libraries requires these libraries:

frame-fns.el
misc-fns.el
strings.el

(As I said, you do not need all of that code to do only what you want.  You could just copy the code I mentioned from misc-cmds.el and frame-cmds.el.)
Answer: This isn't precisely what you're asking for, but from the discussion in comments, it sounds like it might still work for you.  This is a slight modification of the command I use on C-x C-c (I added the buffer-killing feature).
It will kill the current buffer and close the current frame, unless there's only one frame open.  In that case, it will ask you for the go-ahead to kill Emacs.  If you're using emacsclient, note that the daemon appears to have its own frame in (visible-frame-list), so in this situation you can close the last open frame without killing Emacs entirely.
(defun my/kill-buffer-and-frame-or-exit (&optional arg)
  "Kill this buffer and frame.  With only one frame, exit Emacs.

When there is more than one visible frame, run `delete-frame'.
Otherwise, exit Emacs with `save-buffers-kill-terminal' after
confirming this with user.

If a prefix ARG is supplied, ignore it in the multiple-frame
case.  Otherwise, bypass confirmation and pass the argument to
`save-buffers-kill-terminal'."
  (interactive "P")
  (cond
   ((> (length (visible-frame-list)) 1)  (kill-this-buffer) (delete-frame))
   ((or arg (y-or-n-p "Quit Emacs?"))    (save-buffers-kill-terminal arg))
   (t                                    (message "Abort"))))


Explaining the method of characteristics

Question: I am learning about solving p.d.e.s by the method of characteristics at the moment. I was given an "algorithm" to solve these problems but I want to know also what is going on, how it works and what it is doing intuitively/physically/graphically. It would be great if someone could either explain it or provide a good link To reference material. Thank you.
Answer: The basic idea is that we look for parametric curves along which the PDE tells us how the function changes.   Suppose you have a smooth parametric curve in the $xy$ plane: $x = X(t)$, $y = Y(t)$.  Consider how a smooth function $u(x,y)$ changes as you move along the curve.  The chain rule says $$\frac{du}{dt} = \frac{\partial u}{\partial x} \frac{dX}{dt} + \frac{\partial u}{\partial y} \frac{dY}{dt}$$  Now this looks rather like the left side of a first-order PDE  $$a(x,y) \frac{\partial u}{\partial x} + b(x,y) \frac{\partial u}{\partial y} = c(x,y)$$  In fact, if you
can find $X(t)$ and $Y(t)$ such that $\frac{dX}{dt} = a(X(t),Y(t))$ and $\frac{dY}{dt} = b(X(t),Y(t))$, this tells you that along that curve $\frac{du}{dt} = c(X(t), Y(t))$, so that if you know $u(X(0), Y(0))$ you can get $$u(X(s),Y(s)) = u(X(0), Y(0)) + \int_0^s c(X(t),Y(t))\ dt$$
Now, for any point $(x_1, y_1)$ in the plane, suppose you want to find $u(x_1, y_1)$, where $u(x,y)$ satisfies the PDE $a(x,y) \frac{\partial u}{\partial x} + b(x,y) \frac{\partial u}{\partial y} = c(x,y)$ plus some boundary condition.   Then you want to find a curve $x = X(t)$, $y = Y(t)$ satisfying the system of ordinary differential equations $\frac{dX}{dt} = a(X(t),Y(t))$ and $\frac{dY}{dt} = b(X(t),Y(t))$  that passes through the given point $(x_1, y_1)$, follow that curve to some $(x_0, y_0)$ where your boundary condition tells you the value of $u$, and then you can get $u(x_1, y_1)$ by an integral as above.
Comment: I am confused about the transformation used in method of characteristics. To have change of coordinates, we use the slope dy/dx (=y/1 say) and we get eta=xy. But for the second one, in most cases, it is assumed that zeta=x out of the blue. My question is, how we arrived at zeta=x? any thoughts?
Comment: What do you mean by eta and zeta?
Comment: These are the new coordinates, eta=eta(x,y) and zeta=zeta(x,y). For more details, please see section 2.3 page 8-9. http://web.math.ucsb.edu/~grigoryan/124A.pdf
Comment: Any comment on my question?
Answer: This is an intuitive take which is intended to be as simple as possible.
Let's say you're measuring some system for two variables $x$ and $t$, and you discover that you can describe the system by $u_t+a(x,t)u_x=0$.
Okay, but what if $x$ and $t$ just superficially look like independent variables, but in fact $x$ is a function of $t$?
If it were so, then $$\frac{d}{dt}u(x(t),t)=u_t+x'(t)u_x$$ which means that if we can find a function $x(t)$ with the property that $x'(t)=a(x,t)$, then $u(x(t),t)$ would have the property that $$\frac{d}{dt}u(x(t),t)=u_t+a(x,t)u_x$$ which is exactly the type of function we are looking for.
So if it really is the case that our measured variable  $x$ actually is a function of the underlying variable $t$, we only need to find a function $x(t)$ such that $x'(t)=a(x(t),t)$ with $x(0)=x_0$ and solve the much easier ODE $$\frac{d}{dt}u(x(t),t)=0$$ and then $u(x(t),t)$ satisfies the PDE we started with.
Usually these problems come with some boundary conditions like $u(x,0)=\phi(x)$, so we solve our easy ODE: $$u(x(t),t)=C$$
If we set $C=\phi(x_0)$ we see that $u(x(t),t)=u(x(0),0)=u(x_0,0)=\phi(x_0)$ (indeed, $u$ is constant wrt $t$)
So $$u(x(t),t)=\phi(x_0)$$
is a solution to the PDE provided we can find an $x(t)$ such that $x'(t)=a(x(t),t)$ with $x(0)=x_0$, which we can. When you find $x(t)$, you can solve it for $x_0$ and substitute so you get a solution function consisting of $x$'s and $t$'s, which you can then differentiate to check that it satisfies the PDE.
Answer: As an intuitive summary, a surface described by a first order pde inherently has a vector field defined on the surface (see Monge cones). So naturally the vector field provides an associated set of flow lines which cover the surface. Now along a single flow line, as we move down the line, we simply follow the vector field, so the line is described by an ode. The method of characteristics is finding the ode along the flow line.
Comment: I do not find this explanation to be very intuitive. It is however very precise and accurate. You reduce the PDE problem to find integral curves along a vector field.


Convert iptables rules to pf

Question: I would like to ask you how to change following iptable rule:
iptables -t nat PREROUTING  --source x.x.x.x/24 -p tcp -m tcp --dport 443 -j DNAT --to x.x.x.x:8080
to pf. I am trying to capture
Comment: There're 2 kinds of PFs in use: modern OpenBSD's PF and legacy-PF which has been ported to a variety of other OSes. Answer would depend on target version hence.
Answer: With that info, it could be something like this, where x would be the ips:
nat pass on eth0 proto tcp from x.x.x.x/24 to any port 443 rdr-to x.x.x.x port 8080

from would specify the source.
to the destination with the port
the part of rdt-to would specify the redirection.

Convert iptables rules to pf


How to create WPF Application that uses Reloadable Plugins?

Question: I have an interesting problem at hand.
I have a need to create a WPF Application which will host several UserControls. (The application does just that - serves as a container with docking abilities for UserControls)
The application will also host the data model for the UserControls as another hot Swappable component. (I plan to use internal queues for each Component so that Components can be swapped.)
These user controls will have to be pluggable (This is Easy), and reloadable (This seems to be difficult/ impossible) at run time.(AppDomains seem to be the answer here, But I don't know the limitations other than AppDomain limitations on MarshalByValue and marshalByRefObject Are there any GUI limitations? ) "Reloadable" at runtime as in Hot Swap the UI component while the app is UP.
I also want the Context menu on a UserControl to have some items from Host and some Items from the UserControl itself.
I also have logic to control Focus (Change Border Color etc. on Focus Events) between the host and UserControls seamlessly (Tabbing across Host and UserControls).
As an aside, I would also want the UserControl to be ActiveX enabled for integration with ActiveX containers like Excel.
This will give me flexibility in terms of running the UserControl by itself (Unit test), In a container (seamless Navigation and integration with container and other relevant UserControls), and as ActiveX control to integrate with ActiveX containers.
I would like to know if it is possible, and if there are frameworks(MAF?) that supports this. Any pointers to examples or documentation will help.
Thank you in advance,
Regards,
Ven.
Answer: I've been exploring a similar scenario. Based on your description, MAF seems like your best bet. The MSDN documentation is here. This codeplex site contains tools and samples of MAF in action. Hope this helps.


How do switches handle network data if the destination computer is powered off in half-way?

Question: Consider a lan network with a switch. Assume the switch has the mac addresses of all the devices in it's newtork. If the source computer sends the data to the destination computer through a switch, then when the data reaches the switch , the destination computer get's powered off due to some problem, Now how the switch will handle the data and how it sends the error message back to the sender or how it deals with the data.
Answer: Depending on the exact implementation of the forwarding logic in a switch, the most likely scenario is this:

If the switch has already begun to transmit the frame over the failing link, the frame gets deleted from the port's queue (possibly after a short grace period to allow for quick link recovery). It is lost.
If the link fails before the frame has been queued to the destination port indicated by the destination MAC and that MAC got erased from the switch's source address table (routinely upon link down), the destination MAC is unknown and accordingly, the frame get flooded out to all switch ports but the one it was received from.

how it sends the error message back to the sender

In no case does a switch send back an error message to a sender. There are no provisionings for that, and there is no protocol like ICMP on the data link layer.
Each frame is either sent out of the port associated with its destination MAC (that the switch thinks the destination is located on) or, with an unknown destination MAC, it is flooded to all ports but the source port.
Each way, the frame leaves the switch in one way or other and that's it.
Comment: Really Thanks. ! I've some other basic networking doubts. If in a ring topology,  how do we know if data gets lost during the transmission during destination?
Comment: @Allan Please post a new question as such - make sure to include sufficient context.


Do long vowels ever get reduced to schwa?

Question: I was taught that any vowel can get reduced to schwa if it is unstressed, but I can't find any examples of a long vowel getting reduced to schwa. Is it only short vowels that can become schwa?
Comment: "relate" with long A in second syllable, vs. "relative" with schwa there.
Answer: The term "long vowel" doesn't refer very clearly to a particular set of vowels in English. However, whatever is meant by it, I'm fairly sure that it is true that long vowels can get reduced to schwa in fully unstressed syllables.
Not all unstressed syllables permit vowel reduction
First, I'd like to make a few clarifications about the statement "any vowel can get reduced to schwa if it is unstressed". This is definitely false if it means "any vowel can get reduced to schwa in any unstressed syllable": only some kinds of unstressed syllables are subject to vowel reduction. Word-final vowels in unstressed syllables are often not subject to vowel reduction, except for in non-standard varieties (or perhaps in "fast speech" of standard varieties where other kinds of reductions that are not typically noted can occur). For example, as a rule, the word-final unstressed vowel in words like shallow, hero, grotto cannot be reduced to schwa in a standard English accent.
Some varieties of English also have a tendency to reduce front vowels to /ɪ/ instead of reducing them to schwa. For example, in some accents the unstressed and reduced first syllable of the word evolve is pronounced as /ɪ/ rather than as /ə/.
In the contexts where reduction is possible, it is often optional.
Examples of "long" vowels that may be reduced to schwa: /(j)uː/, /oʊ/, /ɔː/, /ɜː/
One vowel that is conventionally thought of as "long" is the "long u" vowel, which in stressed syllables can be transcribed /uː/ (or with an onglide included, /juː/) with the length marker ː. In unstressed non-final syllables, /(j)uː/ can be reduced to either /(j)ʊ/ or /(j)ə/. Some example words where this optional reduction can occur (the frequency and degree of reduction varies between speakers): accusation, permutation, reputation, immunize.
The vowel found in words like goat is classified as a "long vowel" according to the traditional English definition: it is often called the "long o" sound. It tends to be transcribed as a diphthong /əʊ/ (British English) or /oʊ/ (American English), although for American English, the single-letter transcription /o/ is sometimes used. This vowel may be reduced to schwa in word-internal unstressed syllables, as in the word int[ə]nation.
Words spelled with or followed by a consonant are also typically classified as containing vowels that are long when stressed: e.g. north and force (some accents use different vowels in these words, but in the most well-known accents they have the same vowel, which can be transcribed as /ɔː/ for British English or /ɔːr/ for American English). This vowel can be shortened in an unstressed syllable: for example, information can have schwa in the second syllable (in American English, the following /r/ would phonetically color the schwa or turn it into a syllabic r sound), in contrast to the unreduced vowel found in the stressed syllable of the verb inform.
Likewise, the vowel represented by er, ur, or ir followed by a consonant is typically classified as long in British English when it occurs in a stressed syllable: bird, burn, term can be transcribed as /bɜːd/, /bɜːn/, /tɜːm/ (or /bəːd/, /bəːn/, /təːm/). But in an unstressed syllable, this may be reduced to a short schwa, as in preservation (OED transcription "/ˌprɛzəˈveɪʃn/") in contrast to the verb "preserve" which is transcribed in British English with a long vowel (OED "/prᵻˈzəːv/).
Comment: I'm nitpicking here. I agree that there can be an /əʊ/ in *intonation*, but we don't pronounce *psychology* or *orthography* with an /əʊ/, so are you really sure that *psychological* and *orthographic* have reduced /əʊ/s and not reduced /ɒ/s?
Comment: I'd accept _permutation_ and _reputation_ as shortenings, since we know from related words like _mutant_ and _reputed_ that the root has a long diphthong; but what is the case for saying _occupation_, _formula_ and _insulation_ have shortened vowels? As far as I know, there are no forms of those roots with stressed and thus 'unshortened' vowels at all, so Occam's razor would imply that those just have an underlying /(j)ʊ/.
Comment: @herisson They do? Where? That sounds utterly unnatural and weird to me. I mean, for emphasis, any vowel can be unreduced, even ones that historically definitely have no business being unreduced ("it's not /ðiː/ limit, it's just /eɪ/ limit"), so yes, I could imagine, "Read my lips. This is an /ɒːk.kʲʉuː.peɪː.ʃɜːnː/" – but in regular speech, it would sound very weird to be.
Comment: @JanusBahsJacquet I share your puzzlement, but it occurs to me that perhaps he means that the rising diphthong [ju] may effectively get reduced to [jə] in some instances of *occupation* and *formula*.
Answer: Diverge
Pronunciation: /dəˈvərdʒ/, /daɪˈvərdʒ/.
You won't find vowels in stressed syllables reduced to schwas, but there are lots of English words with long vowels in unstressed syllables.
Comment: I'm not sure "You won't find vowels in stressed syllables reduced to schwas" has to be true - think of "room", which comes pretty close to a stressed schwa in various British accents.


No sound output or microphone input on Ubuntu 22.04

Question: I am facing a problem with my Ubuntu 22.04.1 LTS. Over night I simply cannot change the volume with the shortcuts on my keyboard. So I go to the Settings menu and try to change something there, but nothing happens, in fact, it tells me that there isn't even an output nor an input device. Changing the System Volume through the bar does visually happen, but it doesn't change the volume.
What should I do?
Thank you in advance.
Comment: I had the same problem and this comment on reddit helped me https://www.reddit.com/r/Ubuntu/comments/wsgw52/comment/ikyt95n/?utm_source=share&utm_medium=web2x&context=3
Answer: This looks very similar to No sound output devices listed after upgrade from 21.10 to 22.04
that I could solve with:
sudo touch /usr/share/pipewire/media-session.d/with-pulseaudio
systemctl --user restart pipewire-session-manager

(credits go to https://askubuntu.com/users/1156299/adam)
Comment: Hello, I am having the same problem again, only that this time it tells me this when I try your solution:

Failed to restart pipewire-session-manager.service: Unit pipewire-session-manager.service not found.
Answer: If add file don't solve this problem. I reinstall drivers
sudo apt-get remove --purge alsa-base pulseaudio
sudo apt-get install alsa-base pulseaudio

and restart system
Comment: Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers [in the help center](/help/how-to-answer).


Selection of $r$ objects out of a set of $N$ objects which are not all distinct

Question: I want to know whether or not we can obtain any direct formula for the selection of $r$ objects out a set $\alpha$ that consists of $N$ objects. Where $N$ = $N_1+N_2+N_3+...+N_k$ and $\alpha$ has $N_1$ objects of one kind (all identical), $N_2$ objects of the second kind and so on... I know how to solve such questions through some procedure but I want to know whether or not that procedure has been converted to a direct formula.
Comment: It depends on what you consider to be a "direct formula"; but unless the procedure you learned is inefficient, it is probably about as "direct" as you can get. It's possible that if we knew what procedure you knew, someone could show a neater notation for it or a better procedure.
Comment: By direct formula, I mean an explicit function of $r$ and $N_i$s.
Answer: I know of two methods for doing this sort of thing in general.
One method is based on the formula $\binom{r+k-1}{k-1}$ to count the number of
sets of $r$ elements of $k$ different types,
but then applying the principle of inclusion-exclusion in order to
eliminate sets that contain more elements of type $i$ than the
original multiset contains (that is, where $x_i > N_i$ for some $i$).
(I am omitting details of how to do this because to do it completely generally would take far too much work; most questions along these lines
that we see on MSE have particular values of $r$, $k$, and $N_i$ for each $i$, which make it possible to apply a specific pattern of inclusion and exclusion.)
The second method uses generating functions. You would be looking
for the coefficient of $x^r$ in the polynomial
$$
(1 + x + x^2 + \cdots + x^{N_1})
(1 + x + x^2 + \cdots + x^{N_2})\cdots
(1 + x + x^2 + \cdots + x^{N_k}).
$$
For $x \neq 1$ this polynomial is equivalent to
$$
\frac{(1 - x^{N_1 + 1})(1 - x^{N_2 + 1})\cdots(1 - x^{N_k + 1})}{(1-x)^k}.
$$
The value you want is the coefficient of $x^r$ in the
Taylor series of this function about $0$, which you can find by taking the
$r$th derivative of the function at $0$ and dividing by $r!$.
(Or perhaps better, have your favorite
symbolic math software find the Taylor series for you and read off
the coefficient of $x^r$ in that result.)
Comment: I just came across an earlier question much like this one: http://math.stackexchange.com/questions/1413111/how-many-ways-to-arrange-m-chosen-objects-when-there-are-n-total-objects-and-so


dual booting windows 8.1 and ubuntu 14.04, hard disk partitioning

Question: I have a sony vaio vpcf121fx laptop with windows 8.1 currently installed in it..i have never dual booted ubuntu in my laptop before..i have a 1 TB hard disk and its divided into C:,D:,E: and F: partitions with C: storing the current windows 8.1 OS....i want to allocate about 25 GB of storage space for ubuntu...and want to allocate  that 25 GB memory from  E: drive which currently has 300 GB free out of 345 GB...how do i go about doing it...
i have a vague idea about shrinking the drive or something..but i dont know anything about it...could someone please explain the exact steps that i must follow in order to ensure that i successfully install ubuntu 14.04 without losing the data stored in the hard disk currently?
Comment: Possible duplicate [http://askubuntu.com/questions/378320/dual-boot-ubuntu-13-10-and-windows-7](http://askubuntu.com/questions/378320/dual-boot-ubuntu-13-10-and-windows-7)
Answer: In Windows 8.1 go to search(right side of the screen) and type "Disk Management". Select "Create and format hard disk partitions". Right click on E: and choose "Shrink Volume". Enter the values and you will get new unallocated space near E:.


Wormhole inside a human brain?

Question: Would it be possible to produce a pair of human brains that are connected by a wormhole that has each end inside one of the brains?  What I had in mind is that the wormhole would have neurons inside it so that nerve signals could travel through the wormhole to keep the brains connected.  Each brain would be in a different universe so the wormhole inside the two brains would connect two different universes.  Also would it be possible for one of the brains that is connected through the wormhole to be poisoned and for the other to be unpoisoned or would poisoning one of the brains poison the other brain?
Comment: I'd recommend reading [The Light of Other days](https://en.wikipedia.org/wiki/The_Light_of_Other_Days). Similar technology comes up as a plot point later in the book.
Comment: @JoeBloggs I just recommend reading that book. It's been 10 years since I read it, but I remember it being really good. Kind of the inspiration for my answer actually
Comment: If you have the technology to identify and traverse other universes, and to create and maintain stable wormholes that don't produce deadly radiation, wouldn't there be an easier way to do it? *Like entangled computer chips?
Answer: One possibility is that the brains have implanted hardware that controls the brain to machine to wormhole interface.
The way I understand the science, a wormhole would be a sub-atomic, quantum type thing. Not something that you could put anything real through. A signal of exotic energy on the other hand could possibly work.
As to how two brains in separate universes got linked, a version of the multiverse theory, where the same person in two parallel universes had the same idea, created similar hardware and turned it on at the same time...
As to the poisoning part, no fluids would be able to go through, so no poison can cross, unless it's thought based like snow crash.
Answer: Sixth dimensional quantum entanglement is the way to go.
From Wikipedia:

Quantum entanglement is a physical phenomenon that occurs when pairs or groups of particles are generated or interact in ways such that the quantum state of each particle cannot be described independently — instead, a quantum state may be given for the system as a whole.

So if you entangle two particles, put them in seperate human brains, somehow link them up to said brain and allow them to send information to one another by stimulating neurons you got a pretty much undetectable way to communicate between said brains. Having this work on brains in different dimensions... I'm not sure if it works, given that science has yet to pull this off (I think).
As for the poison? Make it some kind of overload on the entangled part of the brain and give the person a seizure, or send a constant annoying buzzing sound, make the person smell rotten bananas 24/7 or trick the brain into making an excess of something that's dangerous to have inside of your body in large amounts or stop making certain things that you need in order to live.
Comment: But being entangled won't allow you to send a message.  See instead "ER=EPR" talks from Leonard Suskind.
Comment: I have to down vote. Entangled particles looses their entanglement when they are observed. It will only work for once.
Comment: Could you explain how the sixth dimensional part is relevant? In a 3D world why wouldn't regular dimensional entanglement work fine? You may not be wrong but please elaborate.
Answer: Sync brain activity across the wormhole using light or radio.
Neurons communicate via chemical signalling.  Getting this to work across a wormhole could be tricky.   One possibility is optogenetics -- controlling brain activity with light (via genetic modification of neurons to express light-sensitive ion channels).  This would allow you to use a wormhole which might only be able to handle the transmission of simple photons, as opposed to the more complex organic chemicals that neurotransmitters are composed of.  Similarly, some sort of brain-computer interface might allow EM spectrum transmissions across the wormhole bridge; some methods such as fMRI are non-invasive.  Both of these technologies are in active development, a bonus for realism.
As far as poisoning goes, it would depend on what was used.  Something chemical in nature which simply caused cell death or the imbalance of neurotransmitters in one brain -- through the overdose of an SSRI, for example -- would not affect its twin, as you were only using the wormhole bridge to transmit the changes in existing chemical potentials, and you could not transmit the introduction of a physical substance.  However, if the poison merely tricked the first brain into triggering a harmfully large dump of an extant quantity of neurotransmitters, then this action could be "mirrored" to the neurally linked twin.  Likewise, the syncing transmission of the "death throes" of a poisoned brain could very possibly cause damage to its twin (unless, perhaps, there were countermeasures in place to cut off the receiver in the event of anomalous brain activity from the sender).

Wormhole inside a human brain?


Can I take trains in Finland even if it shows sold out?

Question: I'll travel in Finland using my Interrail card but when I check the trains schedule I find all sold out! What should I do? Can I go and take the train anyway?
Answer: This heavily depends on the type of train you are planning to use.
In general there are 5 different type of trains you can use with your Interrail/Eurail pass

regional trains which are included in a pass and no reservations are possible
trains with reservations available but not compulsory. If you don't buy such a reservation before boarding the train you might not get a seat at all.
you are not allowed to board trains with compulsory reservation without one. There is mostly only a limited contingent of reservations available for rail pass holders (typically high speed and night trains)
sometimes you are only granted a discount on standard ticket fares. (E.g. Eurostar and Thalys)
some trains in Europe such as hotel trains for example don't offer any discount for rail pass holders

There are the following train categories operating in finland:

Yöjunat (night train) and Pendolino (highspeed train) require reservations. You can't take those trains if they are already sold out.
For intercities  (IC) reservations are only recommended. The odds are high that you might not get a seat on this train if it is already booked up.
Pikajunat (P) and Taajamajuna (H) are interregional and regional trains and do not require reservations. Just board those trains!

You can actually find details on reservations organized by country on interrail.eu
Comment: @ROS_OPENCV You can board the train, but if it's sold out, it's very unlikely that there are free seats like Daniel said. Seating reservations are compulsory with single tickets (non-interrail, non-commuter) and canceling a ticket is expensive so everyone who has reserved a seat is very likely to show up. There are cars that have non-reserved seats for commuters, but again, if the entire train is sold out those cars will be full too. Especially if you're travelling right before or after a holiday (Christmas, New Year) you'll have to prepare for standing on the aisle the entire journey.
Comment: Thanks for your answer.
Now I know it is intercities train and I want to know if the tickets they sell are with numbers ?
I mean if I can just take the train and find a free seat even it shows sold out ?


What does the MHz of RAM really mean?

Question: Countless of times I've heard and read that RAM-memory can have different speeds - denoted as MHz (e.g. 1066 MHz). However, what this frequency really is has never been explained to me and I'm having trouble finding an answer. My best guess is that - since frequency basically means "how many times per second" - the MHz means how many times per second the RAM can communicate with the CPU. Please do correct me if I am wrong. Also: how can you put this in a relationship to the size of the data being processed per second? E.g. how much data in mega-/kilobytes are sent to the CPU from the RAM per second in a scenario where its being pushed to the limit?
Answer: Yes, it's the maximum number of clock cycles per second that the RAM operates on. With Double Data Rate (DDR) RAM, it actually communicates twice per cycle. So for DDR:
200 MHz clock rate × 2 (for DDR, 1 for SDR) × 8 Bytes = 3,200 MB/s bandwidth
This is why chips are now named for their bandwidth, not their frequency alone. Above chip module is called PC-3200, not 200 Mhz. It's still necessary to know the clock rate, to ensure that the motherboard/CPU can operate at that clock.
See the Wikipedia article on DDR SDRAM for more information.
Comment: Actually, RAM chips aren't named based on frequency at all, but on data rate, which is measured in [millions of transfers per second](http://en.wikipedia.org/wiki/Transfer_(computing)) (MT/s), and for DDR RAM is double the clock frequency. So PC-3200 (3200 MB/s) corresponds to DDR-400 (400 MT/s), not DDR-200.
Comment: It clearly says the 200 Mhz is regarding clock rate.  The "frequency alone" is in reference to how chips used to be named, before DDR came into place.
Comment: Actually I did manage to find it in one of my textbooks now, and a SDR would give 200*8 = 1600 MB/s and a DDR would give twice that: 3200 MB/s.
Comment: Makes sense, but wait, how did you convert bytes into megabytes because 16 bytes in each cycle since it is DDR, and as you mentioned there are 200 cycles in a second so in total we have 16 bytes x 200 MHz = 3200 bytes being transferred in a second ? In other metrics, it is 3200 bytes/1024 bytes = 3.2 megabytes ?
Comment: @VM_AI You've got units wrong. 1 MHz = 1 million times / second. 16 bytes × 200 millions / second = 3200 millions / second.

What does the MHz of RAM really mean?


Is an Icom radio's model ID info available via a CI-V command?

Question: I have built a prototype device using an Arduino Nano Every which communicates (using CI-V commands) with Icom radios, to augment control of them.  Currently I use the default addresses of the "target Radio" (set to 0x94 - 0x97 via jumpers on the custom PCB)  to tweak the commands it sends, but it would be useful if the radio's model could be determined to allow my device to tailor the range of some of the functions it provides e.g. there are 8 Mode options on an IC 7300, but 20 on an R8600.  I have not (yet) found a command which yields the Model type. An alternative method could be to use the small differences in the command sets, and probe those, but that may not be unique to each Model.  Any suggestions are welcome.  Here is my prototype device  https://youtu.be/-kn3Pd1ENI8.
Comment: It appears that the simple answer is that no command exists. Thanks to all who responded.
Comment: Welcome to the site! I think you're asking: "is there a CI-V command to fetch a product identifier for the connected radio, i.e. without knowing/selecting it ahead of time?" I'm not seeing anything offhand, but hoping someone can chime in or maybe elaborate on your probing idea.
Comment: Thanks for the reply, yes you are correct.  So far I haven't seen a "model id" command, nor am I aware of any undocumented  CI-V commands.  A work around is possible, I could sacrifice a couple more of the hardware config bits or create an additional configuration process - fortunately I do have a vacant set of pads on the PCB for an (as yes unused) EEPROM to provide non-volatile storage.
Comment: The best thanks one can get is a satisfied visitor. The second best thanks is a checkmark next to the most correct answer.
Answer: AFAIK, there is no command to retrieve meta-information about the transceiver.
Probably the most useful information necessary to ID the model is the address.
The default address of Icom models is unique to that model. The assumption is that you already know the model you are sending commands to, because you are sending it to a specific address. (This ignores the convenience of some commands supporting $00.)
There are lists of addresses and models out there, but I don't know if there is a canonical location on the internet. "CI-V Bus Addressing" as search terms will get you close.
I suppose you'll have to have this map in your software, with the ability to modify it as models are released, or as people change the address manually (for example, because they have two identical models they want on the same bus at the same time).
Or, perhaps you can send a simple command to $00 and see who responds, and use that to learn what the models are on the bus based on the from address, defaulting to some generic behaviour and perhaps notifying the user (or a log) that there is an unknown model on the bus.
Depending on how constrained you are for interfacing, a map of models and addresses with a single exception rule to allow for a one identical model on the bus might suffice? For example, you know that \$94 is probably a 7300, and thus \$95 would also be a 7300 because the next model Icom released (IC-R8600) is guaranteed to be $96 (because they always release even valued addresses).
This does not allow for address customization, but if your map has to be fixed this trick might get you 80% there.
Comment: Thanks for your comments.  It was always a long shot.   The custom PCB has some header pins that I can allocate to define the model of the target radio, and/or the address.  Alternatively I could set it up in "config" mode and store it in non-volatile EEPROM.
Comment: It may be worthwhile seeing how other such devices are described. There is at least one commerical product that claims to work with any Icom (even one not on their supported list). So I'd be curious what they say in the docs about how to configure the devices on the bus.
Comment: I'll probably adopt a workaround solution  in which the attribute range is tailored by either hardware (jumpers) or comfiguration stored in EEPROM.
Comment: Remember that the host has an address, as well. So one can always tell the host things it maybe ought to know. This device does not have to be deaf to the world in terms of config.
Comment: Admin : please delete if not allowed.   I put progress and info on FB at https://www.facebook.com/groups/2820765234809784/?ref=share_group_link
Comment: Since the simple answer to my original question appears to be "no",  I will in future development work ( of my prototype  Control Device )  tailor the design to best match a specific model.   Here is an example of Control of an R8600 , and an "externally added function - Band Switching".   https://youtu.be/15X5DbRjaRk
Answer: ICOM uses "other" CI-V commands to interrogate the radio.  If you have any of the radios which use their "Cloning Software" you will notice that there is an "Information" button.  This typically will display the serial number of the radio.  Some radios give more information.  Some such as the current IC-9700 give nothing at all (which may be firmware dependent).
The only way to get this CI-V information is by serial sniffing.  What I have found with 5 of the current D-Star radios is that they each have a different "model number" of 4 digits followed by 8 digits of serial number, thus a 12 digit number.  There is a special CI-V command based on that 4 digit "model number" to prompt the radio to send back the full serial number.
For example, the ID-5100A sends:
FEFEEEEFE034840000FD
And the ID-4100A sends:
FEFEEEEFE038660000FD
to reply with the full serial number which reads (for ID-5100A):
3484nnnnnnnn, where "nnnnnnnn" is the serial number of the radio.

Is an Icom radio’s model ID info available via a CI-V command?


Change Folder/File Permissions for HIDDEN Subdirectories

Question: This question is very similar to Change Folder & File Permissions for all Subdirectories , which worked for me completely when the folders weren't hidden. However, I have a hidden folder (call it /.hidden/) with many subdirectories, most of which have permissions set for root and not my_username. I want to change the permissions of all these subdirectories at once, if possible. However, if I cd /.hidden/ and then type "sudo chown my_username:my_username *", none of the file or folder permissions get changed, presumably because they're still considered "hidden" by the command even though I can see them. Anyone know an easy way around this?
Comment: Do you want to change the permission only on the directories or files too? Also are the subdirectories also hidden?
Comment: All files and subdirectories in /.hidden/ are also hidden. I want to change the owner of every file and subdirectory in /.hidden/ to my_username.
Answer: You need to use the -R flag, which will recurse into every subdirectory. For example, running sudo chown -R my_username:my_username .hidden will make .hidden and all subdirectories owned by you.
The * glob doesn't match any hidden directories (directories starting with a .).


A4 portfolio as a book in photoshop. page compilation?

Question: i want to design my A4 portfolio like a book format. and want to design 2 pages at a time. Could you suggest how shall i go about it. I was thinking of taking pages (1,4-2,3) and (5,8-6,7) together. Since i was wondering how they would be printed and put together to be bound as a book.
Comment: I would *never* use Photoshop for a multi-page project.
Comment: Also be aware, using Photoshop..... if you intend to distribute this booklet as a PDF, people reviewing this PDF will know you've used Photoshop. That *will* reflect upon your abilities and awareness of proper tool usage. If that matters to them, the very fact you've used Photoshop could be very detrimental.
Comment: If you have a chance to use indesign or even illustrator, definitely go with either of them. If you don't have access to those two, you should maybe try Scribus, which is open source. Photoshop just isn't meant to produce multiple pages.
Comment: On a side node, a A4 with 2 pages on it for a portfolio is VERY small. It's just a suggestion but you should use one page per A4 to make sure the details of your designs are clearly visible.
Answer: First of all, as Scott said, I would never advise you use Photoshop for this kind of project. Photoshop is not intended for multiple page print projects while InDesign is designed specifically for them. In fact, InDesign has a Print Booklet feature that will re-arrange your pages upon export so you don't even have to worry about this.
That being said, regardless of what you're using to design your A4 booklet, I would set up your pages like this:
Page 1, Side 1: [8|1]
Page 1, Side 2: [2|7]
Page 2, Side 1: [6|3]
Page 2, Side 2: [4|5]


My page no longer shows up in Google's results for a keyword

Question: I have a small website about a commercial product, with a description and tutorial. 2 days ago it was in position 11th in Google search results, without any kind of SEO optimization on my part. Today it's gone. Totally gone - not even in the first 200 results.
It's still very high in bing.com and duckduckgo.com.
The site is very on topic. It's hosted under domain Keyword.com, and it's about commercial product which addresses the Keyword.
How can I know what happened?
Comment: Panda had [a lot of change during February](http://www.seomoz.org/google-algorithm-change). You may got delayed effect
Comment: How long has it been in position 2?
Comment: It's been in positions 11-15 (second page of resutls) for over a month. And suddenly it's nowhere.
Comment: do a search for "site:domain.com" and/or look at your site in Google Webmaster Tools to make sure your site hasn't been deindexed.
Comment: @joshuahedlund I did - "SearchPhrase.com" (my domain) yields me 1st place in google but "Search Phrase" alone doesn't yield my site.
Answer: If you haven't done any SEO nor have many links to your site, its position in search results is highly volatile and can massively change every time Google makes a small change to its algorithm. I believe Google recently rolled out another update of its "Panda" algorithm to promote higher-quality content so maybe you got hit by that.
I'd suggest trying to get some more links to your site and making sure your <title> and
 tags contain your keyword somewhere. See also: What are the best ways to increase a site's position in Google?
Answer: You can't know " what happened" really. It can be algorithm-change, as DisgruntledGoat wrote already, it maybe just Bad Day, on which more competitors appeared.
You can name your site, maybe some SEO-gurus will find obvious weakness in it. But common rule with search-engine output ranking is "Sometimes rubbish happens"
Answer: Another reason why this may have happened is you lost a link (or links) from another website (or sites) that were valuable.


Target display mode mojave

Question: I'm trying to use target display mode with a MacBook Pro (Late 2015) as the main computer and an iMac (Late 2013) as the one to switch to TDM. Both devices are running the same version of Mojave (10.14.5). Following the steps outlined here when I press command + f2 on the iMac nothing happens. I've tried with a razor keyboard which I use regularly as well with an Apple Bluetooth keyboard.
Comment: You did **all** the troubleshooting steps listed in the support document already?
Comment: I think I did them correctly. Tried logging out and trying the short cut and logging back in. I tried an Apple keyboard instead of my razor one. Not sure if there's any obscurity in the instructions open for common misinterpretation.
Answer: Mojave is not supposed to support Target Display Mode. You need High Sierra or older.

Target display mode mojave