How to strip port number from http request url?

Question: I am using httpd server for load balancing and as web server.
I want to convert my request from : http://hostname:port/service to http://hostname/service
How it can be done using RewriteRule or any other technique ?
Comment: Please add your attempts and any issue or error you encountered trying to solve your problem.
Answer: The :port comes from the URI scheme (RFC 3986, 3) Syntax Components:

     foo://example.com:8042/over/there?name=ferret#nose
     \_/   \______________/\_________/ \_________/ \__/
      |           |            |            |        |
   scheme     authority       path        query   fragment

3.2.3.  Port
The port subcomponent of authority is designated by an optional
port    number in decimal following the host and delimited from it by
a    single colon (:) character.
  port        = *DIGIT

A scheme may define a default port.  For example, the http scheme
defines a default port of 80, corresponding to its reserved TCP
port number.  The type of port designated by the port number (e.g.,
TCP, UDP, SCTP) is defined by the URI scheme.  URI producers and
normalizers should omit the port component and its ":" delimiter if
port is empty or if its value would be the same as that of the
scheme's default.

Therefore,

http://example.com equals ONLY http://example.com:80
https://example.com equals ONLY https://example.com:443
for any other port the port is visible in the URL.

If you have a web service e.g. on http://example.com:8080/service and you would like to use a different web server (e.g. as a load balancer) on http://example.com/service, you'd need a reverse proxy on the web server listening on port 80. In Apache it's done with module mod_proxy:
<Location "/service">
  ProxyPass "http://example.com:8080/service"
</Location>


How do I create a particle system with an object that already has a particle system

Question: I am working on a project and used a particle system to create the branches of a tree. I am now trying to make take that tree and create another particle system in order to create a forest with many of these trees. The problem is when I create the second particle system the trees show up without the branches of the tree or the first particle system. Lmk what I can do to solve this problem or if there is any other information you need to answer.
Comment: Generating particles from particles can be a bit tricky because paarticles need an emitter and another particle does not count as an emitter (there is no mesh data to emit from). This video gives a pretty good description of how to do it - The part about the particles from particles starts at 7:08. - https://www.youtube.com/watch?v=UpvNJvsq-FU
Answer: In the modifier tab on the source object, apply the particle system modifier. This will turn the branches of the tree into individual objects. Then, select all of the branches as well as the tree trunk as the active object and join them together. This will give you one object that can then be used as the object when rendering the forest particle system.


Connecting 3 wire cooktop to home 3 wire 240v

Question: My house's 240v circuit for the cooktop is a /2 cable. (black, white and bare copper). The new whirlpool cooktop has a 3 wire connection (black,red and bare copper). Whirlpool's instructions do not cover this wiring example. Their 3 wire to 3 wire example assumes you have a red wire from the house. Is there an easy path to wiring up the cooktop?
Answer: If that is indeed a 240V circuit, the white wire kinda shoulda been re-marked with tape to indicate that it is a hot wire.  Prior to about 20 years ago, they were allowed to skip the marking "if the usage was obvious".  The reason for the change is that their "obvious" is not your "obvious".
If you are confident that it is indeed 240V, remark that white wire with black or colored electrical tape.  (red is perfectly fine).

Code does not require you to mark different kinds of hot by their function... any hot can be any color not reserved for other things. *
White and gray are reserved for neutral.
Green, yellow w/green stripe, and bare are reserved for safety ground.
* with an extremely obscure exception relating to 3-phase power, that isn't even worth mentioning.
Answer: Their wiring is based on a 240V/120V circuit with hot/hot/neutral/ground, which is typically black/red/white/green-or-bare. Normally white = neutral. However, if you have a pure 240V circuit wired with cable (as opposed to individual wires in conduit), it is perfectly legitimate for it to be hot/hot/ground using black/white/green-or-bare. So you should be just fine.
If you want to be 100% sure, use a multitester to check the voltage between the house wires. You should have ~240V black to white and ~120V black to bare and white to bare, and if so then you are all set. However, if you have ~120V black to white, ~120V black to bare and ~0V white to bare then you actually have a 120V circuit, which will not work for your cooktop.
Important: Be sure to compare the existing breaker with the requirements for the new cooktop. Typical is 30A, but it can be different. If the new cooktop matches the existing breaker then you are all set. If the new cooktop requires a smaller circuit then you can simply replace the breaker. However, if the new cooktop requires a larger circuit then before replacing the breaker you have to determine whether the wires are large enough to handle the current.
Comment: Also you could check the breaker for the cooktop. If it is a single pole breaker, then you have only 120 V. If it is a two pole, then would be 240 V. Also size of breaker would be indication. If breaker is 30 A or greater, then expect 240 V.
Comment: Which reminds me of an important extra...


Travelling within and outside of Schengen with Italian Ricevuta + biometric passport (visa free)

Question: I am a Ukrainian citizen who is studying in Italy. Several weeks ago I have applied for renewal of my permesso di soggiorno, so at the moment I have expired permesso di soggiorno and new ricevuta di soggiorno. I also have a biometric passport which allows to travel within Schengen zone for 90 days (since 2017 there is a visa-free regime between Ukraine and the countries of Schengen Zone)). Therefore I'd like to know am I able to travel within Schengen zone with ricevuta and biometric passport  (I suppose yes, but I haven't found any official document where it is written extensively. Also, I know that if you're holding a temporary residence permit issued by Germany/Slovakia you can travel within Schengen zone with a biometric passport). I'd also like to know am I able to leave and re-enter to Schengen zone through other Schengen countries with those documents.
Answer: No, the receipt is not a valid travel document. You must wait for a new plastic anti-counterfeit residence permit card to travel to other countries, or use the rest of the 90 Schengen days. In the latter case, make sure you have an entry stamp on your passport.
The receipt can be used only to enter Italy from Ukraine, not to travel to other Schengen countries.
I said about the entry stamp because you won't get a stamp by entering Italy with the residence permit, but the gate agent at the airport will thoroughly check your passport for stamps.


IR to audio converter (frequency and level)?

Question: What kind of IR detector and converter circuit could be used to down-convert an IR remote signal (in the neighborhood of 35 to 45 kHz) into audio frequency signals (0.1-20 kHz) of the appropriate level and drive to feed the mic input on a mobile phone TRRS headset jack for further analysis and decoding?  Would something simply involving a divide-by-4 cascade of two D flops work?  Or would decoder/(re)encoder chips or a microcontroller chip be necessary?
Answer: This is a no-brainer really.
The 36kHz is the carrier frequency, the baseband signal is well within the audio range. Use an integrated RC receiver, it would be silly to make your own. They combine AGC, bandpass filter and demodulator.

I've used Vishay devices, and I'm quite satisfied with them.

There's a number of protocols, but RC-5 is the most used, so I'll take that as an example.
RC-5 uses Manchester coding, with a bit time of 1.778ms, so that the lowest frequencies are 281Hz and 562Hz resp.

That's well within the audio band, including quite some harmonics, so low-pass filtering it at 20kHz, or even 10, doesn't harm the signal's integrity, and you'll be able to detect edges. The image shows an 889\$\mu\$s pulse plus ditto pause, giving the higher frequency of 562Hz, cut off at 10kHz.

Mobile phone voice bandwidth is limited to 4kHz, however, and since the microphone input is primarily meant for voice input that limit may apply already here. You can play MP3 quality audio with it, but I don't know if you can record it as well. Anyway, with a worst case brick wall filter at 4kHz that same signal will look like this:

Still no problem; you can easily pass the signal through a comparator when sampling and you'll get perfectly timed edges.
That's it really. Connect the output of the RC receiver to your phone via a resistor divider to bring the logic level signal down to mic level. If your receiver works at 3.3V the output level will be about 60dB above 2mV RMS microphone level. In that case use a 70k\$\Omega\$ resistor (for a total of 100k\$\Omega\$, the pull-up in the receiver is already 30k\$\Omega\$) in series with a 100\$\Omega\$ resistor to scale the RC signal down. YMMV.

trivia
The 14 bits commands repeat with 50 bit time pauses for a total period of 64 bit times, so that the repetition frequency is around 9Hz. The baseband signal is sometimes used directly to blink a visible light LED.
Answer: I still find this question confusing. Do you want the frequency of the carrier in the IR signal to map into some property of the generated audio signal?
If yes (and it would be hard to imagine what you would need that for), tell us. For that, you need a circuit quite more complex than just an integrated IR receiver.
If no (so, you just want to decode IR signals using the mic input of any device, and you don't need that mapping), just use an integrated IR receiver, such as a Sharp GP1UX310QS, connect a pull-down resistor from its output to ground (to form, together with its internal \$100\;k\Omega\$ pull-up resistor, a resistor divider, that will bring its output voltage (in the order of 3 V) down to an appropriate level for your mic input -with a max amplitude in the range 10 mV to 150 mV, depending on the sensitivity), and finally connect the output also to the mic input. For instance, RC-5 encoding will give you Manchester-encoded bursts with a frequency between 281 Hz and 562 Hz (which lie inside the audio band), repeated with a frequency of 8.8 Hz (which does not lie in the audio band, but it doesn't matter, because you will still be able to see the 281 Hz to 562 Hz bursts), and which can be sampled and decoded by your phone (assuming that the frequency response of your mic input goes down to 281 Hz, which might not be the case).
About the pull-down resistor: since the optimal value for it depends on the input impedance of your mic input, and you haven't provided that data, best is to use a small, adjustable resistor. Connect one end of it to the output of the GP1UX31QS, the other end to ground, and the wiper to your mic input. A \$10\;k\Omega\$ or \$20\;k\Omega\$ adjustable resistor will probably be fine.
How I computed the frequencies:

Notice that 889 us is the duration of half a bit.
During intervals in which the bits encoded are all equal, like 0000 or 1111, the frequency will be
\$f_1=\dfrac{1}{2·889\;\mu s}=562\;Hz\$.
During intervals in which the bits encoded are alternating, like 0101, the frequency will be
\$f_2=\dfrac{1}{4·889\;\mu s}=281\;Hz\$.
Also,
\$f_3=\dfrac{1}{114\;ms}=8.8\;Hz\$.
Answer: Update:  This is not my design, but looks reasonable for 3m distance. More effort to get 10m.  Credit to design in on schematic.   Need Stereo? Need full specs before further comment.

Your solution that you requested needs a Trans-impedance amplifier for the detector, AGC amp,  matched BPF Q>20, and linear very sensitive detector integrated into a low noise IR Receiver.  Very inexpensive and reliable. I used the older version and using low noise V+ I got 30 meter range. Even bouncing off walls.  Use 2 or 3 Sharp® emitters @ 75mA or more for best range.

See bottom of page for both specs and app note.
After you understand how IR receivers work and understand FM SNR improvement ration improve SNR and low FM ratio of BW of carrier to Audio, it gets worse. Also AM BW vs SNR is an issue in this app—you realize this wont work.  You cant easily fit high quality audio of 20kHz on a 40kHz carrier unless you start to investigate baseband modulation schemes like PSK. So consider the block diagram and try to see what you need to change to use PSK modulation where +/-180 would be worst case Pk-Pk.. AM schemes have path loss issues so you want to use AGC to compensate for wall reflections and use PSK. If you had say pushed the carrier up to 450kHz, then you could use AGC and filters used in AM radios, but then have a great difficulty with the transimpedance amplifier and diode capacitance vs load sensitivity.
May I ask, how far do you expect to go, and what quality you want? Cell phone? AM radio or FM quality? Stereo or Mono?
I think unless you are invested deep into baseband and FM demodulators, it might end up being a Make Buy decision, I would buy rather than re-invent the wheel using stereo 10kHz BW with FM at a higher carrier frequency.
Comment: Can you please fix your typos and improve your sentences for clarity?
You might have good info but the way you type it out is really difficult to read.
Comment: I found one product intended for a room with a high power array of emitters for a room full of listeners... The Williams Sound WIR TX75 Infrared Transmitter shall consist of an all in one modulator and emitter operating on 2.3MHz and/or 2.8MHz. The carrier frequency shall use 50kHz deviation and 50µS pre-emphasis. (not cheap, just a baseline http://www.williamssound.com/catalog/wir-tx7518-sys).. another design runs .  Operating in the higher 2 to 6 MHz  on IR
Comment: Gibberish. As usual. -1


How can I separate a drain pipe from a sleeve protruding from the floor?

Question: I am assuming that this late 1940s, early 1950s, drain pipe, which goes into a pipe protruding up through the floor, is simply sealed there with putty. Is that correct?  Should it be dislodged and removed by twisting the drain pipe a few inches above the connection using a pair of channel-lock pliers?  The threads for the trap are completely corroded and it needs to be replaced.
Answer: I would just cut the pipe 10" above the floor and go to a home store or plumbing supply and get the PVC fitting to reconnect the existing pipe to your sink. If you try to twist it you might damage it beyond repair and then you could be in some trouble...
Comment: Unfortunately that solution is not possible. The free-floating flange at the top of the drain pipe, which would screw down over the threads of the new trap, has crumbled apart. What you see there is the collar that fits over the floor tile. That flange was completely corroded and it fell apart. I have to remove the pipe from floor, if only to slip another connecting flange onto it, sliding it up from the base.
Comment: So you can't just cut that pipe 8" above the floor and install new fittings?
Comment: What kind of fittings do you mean? What would go onto the vertical pipe coming out of the floor, if it terminates say 8-12 inches above the floor?
Comment: A slip 90 and then you trap connector flange
Comment: Ah, I wasn't aware that compression slip couplings existed.   I don't know if they would pass local code. Will have to check.
Answer: Channel-lock pliers probably won't do the job. You'll need two large pipe wrenches--one to turn the pipe and one to secure the sleeve so you don't tear it loose on the other end. Lefty-loosey.
After all that time they're probably good and stuck together. If you can't turn it initially, heat the sleeve with a plumbing torch, trying not to heat the upper pipe. This will cause it to expand and hopefully soften and release whatever gunk was used to seal the threads.
Comment: `lefty-loosey`. I don't think the sleeve is threaded. There's not enough room to turn the pipe 360 degrees.
Comment: Room? What do you mean?
Comment: The tiled wall behind the drain pipe is so close to the pipe that it would prevent the candy-cane shape drainpipe from turning 360 degrees in the sleeve.
Comment: Oh, well cut it off first.
Comment: I am trying to find out what it is that I have there, just as much as coming up with solutions.  If it were threaded, they couldn't have installed it in the first place so close to the wall.
Comment: Sure could if the coupler was turned instead of the drain stem.
Answer: As it turns out, the pipe was soldered into the sleeve.


How to see detailed information about a given PID?

Question: The headline basically says it all. I have a program where I am only given the PID, nothing more really, and I would like to know how I get more information about the given process.
Comment: If you are working in python you probably want to use the `psutil` library. Do: `psutil.Process(pid)` to obtain the process object and then use its interface to retrieve information about memory/cpu etc. etc.
Answer: ps -Flww -p THE_PID

will show you some information. See the ps manpage for more information about the ps command. The "STANDARD FORMAT SPECIFIERS" section explains what the different columns mean.
Comment: @Tim, from the manpage `-w    Wide output.  Use this option twice for unlimited width.`
Comment: Thanks. Why did you write `ww` instead of just one `w`? https://unix.stackexchange.com/questions/446099/what-is-the-purpose-of-double-w-in-ps-ww
Comment: How do I get it to print the full non-truncated username?
Answer: I don't know what is your exact requirement. but this may help you.
There is separate directory for every process with name as pid number in /proc .
ps -ef | grep docker
root      1700     1  0 Sep20 ?        00:03:04 /usr/bin/docker daemon --raw-logs

In above output PID is 1700 .
goto /proc/1700
cd /proc/1700

and do ls there
ls
attr       clear_refs       cpuset   fd       limits     mem         net        oom_score      projid_map  sessionid  stat     task
autogroup  cmdline          cwd      fdinfo   loginuid   mountinfo   ns         oom_score_adj  root        setgroups  statm    timers
auxv       comm             environ  gid_map  map_files  mounts      numa_maps  pagemap        sched       smaps      status   uid_map
cgroup     coredump_filter  exe      io       maps       mountstats  oom_adj    personality    schedstat   stack      syscall  wchan

there is many file that have all information about process.
Like:
cat /proc/1700/status

Name:   docker
State:  S (sleeping)
Tgid:   1700
Ngid:   0
Pid:    1700
PPid:   1
TracerPid:  0
Uid:    0   0   0   0
Gid:    0   0   0   0
FDSize: 64
Groups: 0 999
VmPeak:   527576 kB
VmSize:   527512 kB
VmLck:         0 kB
VmPin:         0 kB
VmHWM:     46032 kB
VmRSS:     34180 kB
VmData:   449308 kB
VmStk:       136 kB
VmExe:     28324 kB
VmLib:      4236 kB
VmPTE:       296 kB
VmSwap:     5324 kB
Threads:    12
SigQ:   0/63662
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000000000
SigCgt: ffffffffffc1feff
CapInh: 0000000000000000
CapPrm: 0000003fffffffff
CapEff: 0000003fffffffff
CapBnd: 0000003fffffffff
Seccomp:    0
Cpus_allowed:   f
Cpus_allowed_list:  0-3
Mems_allowed:   00000000,00000001
Mems_allowed_list:  0
voluntary_ctxt_switches:    437726
nonvoluntary_ctxt_switches: 27579

If you need basic command to get process information then you can easily get using command:
man ps

Answer: To add to the ps answer there is also the pidstat command which will show additional stats like the time spent in user mode or the occupation of the cpu. You can use it with:
# pidstat -p 51648

You can also add the -d flag to add details about I/O:
# pidstat -p 51648 -d

And you can also an integer as a second parameter to make the command refresh each X seconds:
# pidstat -p 51648 3

Comment: Debian/Ubuntu provide `pidstat` with the *sysstat* package.
Answer: px, available via the px package, is a great tool for giving detailed information about a running process.
px $SOME_PID


How to find out whether RNG is reliable or not , when we generate RSA keys from OpenSsh?

Question: I just want to check whether the entropy supplied is good enough for key generation or not .
Comment: Flip a coin 256 times and `echo hthtthththhhhhhhtht... > /dev/urandom` before you run it.  Then you'll be good to go as long as nobody set up a surveillance camera in your office pointed at your keyboard!
Comment: @SqueamishOssifrage What if he's using a plain Windows install? What about keyloggers or similar spyware/malware? Also, what if he's not located at any office? And what if he doesn't have a coin at hand? ;)
Answer: You cannot really determine this from the random data itself. The problem is that the bits may be well distributed but not very random. Without knowing how the random bits are generated it is impossible to determine if the random data contains enough entropy, or indeed if that entropy was generated well.
You can of course start by examining the random generator itself, and how it is seeded. Then you could generate a lot of data and run it through some kind of testing framework, e.g. the FIPS or German BSI defined testing suites. This could give an indication that the RNG itself is at least not behaving badly.

Within your application there is not much you can do. The only tests that could make some sense is to make sure that at least the zero and ones are distributed OK and that the RNG doesn't repeat over two calls (i.e. retrieve data, disconnect, repeat).
And obviously you should make sure that you're using the right algorithm and system to start with (e.g. Java has a strong RNG that may be explicitly selected. Obviously going for the (default) non-secure or badly seeded RNG such as the Mersenne Twister should be out of the question.


Why fallback to initframs in ubuntu 17.04 after dual booting from windows 10?

Question: I dual boot my ubuntu with windows 10. and this days everytime i reboot my pc to ubuntu after using my windows 10, it fall backs to initramfs. and i have to fsck my /dev/sda6 to correct and reboot .. then go back to ubuntu . Is windows causing ubuntu partition to get corrupted in some way or what?
everytime it says /dev/sda6 was not correctly unmounted
I am frustrated doing fsck /dev/sda6 [sda6 my ubuntu partition] everytime after i restart from my windows 10.
Comment: https://askubuntu.com/questions/849872/how-can-i-prevent-windows-10-from-corrupting-the-ext4-superblock-every-time
Answer: Windows 10 uses a feature called "fastboot" while "shutting down", so that the next time you start, windows will boot up faster. This causes the ntfs partitions to be locked while shutting down. And if you have set ntfs partitions to auto-mount in fstab, you get thrown into initramfs.
There are 2 workarounds.

Disable this fastboot feature in windows 10. This will slow down the boot process of windows though. Read more about the reason to be disabled here.
If you don't want to disable fastboot, then the following works for me. Get into windows from grub and "restart" in the login prompt. Then proceed into Ubuntu. I have restart in quotes because you need to use the restart button instead of shutting down and booting up. Restarting windows 10 doesn't use fastboot and hence the ntfs partitions are not locked.
Comment: i think this is my issue. https://askubuntu.com/questions/849872/how-can-i-prevent-windows-10-from-corrupting-the-ext4-superblock-every-time
Comment: still trying to figure out
Answer: Remove ext2fsd from windows. Done. somehow ext2fsd from windows was messing up with the latest ext4 linux partition. So when i removed ext2fsd from windows, i have never faced similar problem. ext2fsd has most likely to do something with superblock change or something.
Answer: If I remember, my permanent fix was to do e2fsck -b -y /dev/sda6 32768.
It just spits out a ton of numbers for ~10-30 minutes and kicks me back to a prompt. When I rebooted, it booted fine.
Comment: Wow, don't recommend someone to write superblocks without knowing anything about his partinioning... that sounds like a really bad idea.
Comment: yes i do the same everytime. but doing this on everyboot after i boot back from windows 10 is frustrating. something is def going wrong.
Comment: After some research I found that e2fsck, the command I sent, modifies superblocks, while fsck doesn't. You should try what I sent just to see if the outcome is any different. Also, the finished line should say clean. Try what I sent and see if it does anything different than what you've been doing.


Calculator tags?

Question: I was wondering, why is there a stackoverflow tag for TI-83 and TI-84, but there is no tag for the HP-48 or HP-49/50? I also found it odd that the 83 and 83+ are not separate. It would be better to have a 83 and 83+/84 tag, since the 84 is only a better 83+.  (Source: Ticalc.org, "The TI-84 Plus is an upgrade to the TI-83 Plus", "[TI 83 Plus] is the 'base model' of the highly popular 83/84 Plus series")
Comment: Tags are made when people use them. Apparently, people program on TIs more than HPs.
Answer: People have to ask questions concerning them in order for there to be a tag for them. Tags aren't just "created." They can't exist without questions under them. If you think that 83 and 83+ need separated, then you need to provide evidence and prove that 83 and 83+ are different enough to warrant it, as well that there are enough questions to separate into each tag.
Comment: Looking at the two tags, there are only 4 questions tagged with [tag:ti-83], **all** of which are also tagged with [tag:ti-84], which has only 18 questions.
Answer: In addition to animuson's answer, TI still sells the 83 and 84, HP doesn't sell the 48 or 49 any more.  And I guess there's not the same user enthusiasm for the 50 as there was for the 41, 28, and 48...

Calculator tags?


Unable to login after adding ReCaptacha without API key

Question: I was try to add recaptcha but accidently I got logged out and now I can't loogin to my wordpress. Please help me.
Comment: So what happens when you enter your username and password? Do you have shell or database access and already googled for how to disable plugins using wp-cli or directly in the database?
Answer: Assuming that you added code somewhere to enable the reCAPTCHA, then use your hosting File Manager (or a FTP CLient - I like WinSCP) and remove (or comment out) that code.
If you added the reCAPTCHA with a plugin, use File Manager/FTP to rename that plugin's folder, found in the wp_content/plugins folder of your site. That will temporarily disable the plugin from enabling the reCAPTCHA.
Once you have logged in, then find a better reCAPTCHA login plugin, perhaps. It looks as if that plugin you are using (assuming it's a plugin) doesn't recover gracefully from bad settings.


How to automatically retry commands on Morphia/Mongo Java Driver

Question: Here at our company, we have an app deployed to Amazon that uses mongo as its database, using Morphia on top of the Mongo Java Driver.
However, sometimes we experience some communication issues, and some queries, inserts and updates made to mongo end up failing. We would like to tell morphia (or more likely, the mongo java driver) to automatically retry a failed command a certain number of times, independently of the reason (whether it is a network/connection failure, a socket timeout exception, or even a bad query or something like that).
We could try and wrap our mongo calls in a try/retry block, but it would require some major refactoring on our code, and it probably still would not catch every call made to mongo by morphia.
We have found some interesting options on the Mongo Java Driver documentation, such as the autoConnectRetry and the socketKeepAlive, but they seem to only address network failures, and they don't seem to be working on our setup.
Is there some other configuration option we can use to achieve this? If not, how would you guys suggest we approach this problem?
Answer: There are no facilities in either the driver or in morphia to retry commands.  You'll have to manage that yourself.


How to fix Fishdom loading in Nox Player (app management)?

Question: I get a Fishdom not responding error (from the very first time) every time when loading. According to the internet, the solution is to clear the App's cache and activate Force Stop on Android system but I can't find an equivalent on Nox Player. Neither can I find out how uninstall to try reinstalling it. How do I fix Fishdom on Nox Player?
Comment: Fishdom is a game
Comment: Apps can be uninstalled in any Android version I know by opening Android settings (the gear icon) -> Applications -> app list -> select an entry and get the app info page where you can delete app data or uninstall it.
Answer: The process of uninstalling an app on any Android device is nearly the same.

Open Settings.
Tap on Apps.
Select See all apps.
Find the app you want to remove and select it.
Tap Uninstall.
Click OK.

Reinstall the game from the Play store, if it still doesn't open, you can download the BlueStacks emulator instead.
Comment: Its Android Emulator. BlueStacks is total broken.
Comment: Nox Player is also an android emulator, btw BlueStacks was the smoothest emulator I've used.


How am I supposed to interpret the results from Apache's ab benchmarking tool?

Question: Alright, I've searched everywhere and I can't seem to find a detailed resource online for how to interpret the results from Apache's ab server benchmarking tool. I've run several tests with what I thought were drastically different parameters, but have seen very similar results (I have a hard time thinking that this means my site is scaling perfectly!). If there is a detailed resource someone could point me to, on how to understand the results from this test, or if someone feels like creating one here, I think that would be very useful to me and others.
Answer: Frustrating, isn't it? I am trying to do the same thing, see how my newly provisioned and configured dedicated server compares to others.
What I am ending up doing is comparing my current production server (Dual core 4GB RAM) to the new server (Quad core 8GB RAM).
I need to 'play nice' with my side by side comparisons, as the production server is live and I don't want to 'break' the server for my users.
Comparing the current vs new with the following command on a php page that just calls phpinfo(): ab -kc 20 -t 60
On my current production server, I see something like the following, where it couldn't complete the task in the given amount of time:
Time taken for tests:   60.1234 seconds
Complete requests:  24538
Failed requests:    58
(Connect: 0, Length:    58, Exceptions: 0)
Requests per second:    408.96 [#/sec] (mean)
Time per request:   48.905 [ms] (mean)
Time per request:   2.445 [ms] (mean, across all concurrent requests)

VS the following on the new server which completed all the tests in half the amount of time:
Time taken for tests:   29.838791 seconds
Complete requests:  50000
Failed requests:    11
(Connect: 0, Length:    11, Exceptions: 0)
Requests per second:    1675.67 [#/sec] (mean)
Time per request:   11.936 [ms] (mean)
Time per request:   0.597 [ms] (mean, across all concurrent requests)

Now, this isn't really a 'fair' test, as the current server is handling 20 websites in addition to the benchmark test. Also, it is really only testing apache & php.
Putting this same test against one of my more complex home pages, one that 'feels' slow on the current server, I see the following:
Current Server:
Time taken for tests:   60.14170 seconds
Complete requests:  510
Requests per second:    8.50 [#/sec] (mean)
Time per request:   2353.497 [ms] (mean)
Time per request:   117.675 [ms] (mean, across all concurrent requests)

New Server:
Time taken for tests:   60.18651 seconds
Complete requests:  1974
Requests per second:    32.89 [#/sec] (mean)
Time per request:   608.092 [ms] (mean)
Time per request:   30.405 [ms] (mean, across all concurrent requests)

This test is loading a Joomla CMS dynamically generated page. It is a bit more of a 'real world' test. Again, with the new server not dealing with current site traffic, so it's not an apples to apples comparison. I don't want to test much harder or I risk my end user's experience on my sites.
After migrating the sites to the new server, I plan on doing the above tests again so I can see what affect my regular site traffic has on the benchmarking. The same machine's production vs idle benchmark results.
Now, I am also looking at stressing the new server out and making sure that it reacts well.
Running the command ab -n 50000 -c 200 I am watching the top command and seeing how much CPU & memory are being used while also *f5*ing the page in my browser to see if I get any errors and also to get a feel for how long it takes the server to respond.
My first test gave me:
Concurrency Level:  200
Time taken for tests:   692.160011 seconds
Complete requests:  50000
Failed requests:    30102
(Connect: 0, Length:    30102, Exceptions: 0)
Write errors:   0
Non-2xx responses:  30102
Total transferred:  456568770 bytes
HTML transferred:   442928962 bytes
Requests per second:    72.24 [#/sec] (mean)
Time per request:   2768.640 [ms] (mean)
Time per request:   13.843 [ms] (mean, across all concurrent requests)
Transfer rate:  644.17 [Kbytes/sec] received

Note the very high failed request rate. My apache is set to a max of 250 simultaneous requests, but my MySQL was at only 175. MySQL was the failure point here. It couldn't processes all the requests coming from apache. My web browser page loads was giving me a MySQL connection error page on many page refreshes.
So, I bumped up MySQL to 300 simultaneous requests (I had done it already, but had forgotten to restart MySQL, so this turned out to be a good test - I had identified a needed change, and accidentally did an empirical test validating the change's necessity).
The next run gave me the following results:
Concurrency Level:      200
Time taken for tests:   1399.999463 seconds
Complete requests:      50000
Failed requests:        5054
   (Connect: 0, Length: 5054, Exceptions: 0)
Write errors:           0
Non-2xx responses:      5054
Total transferred:      1016767290 bytes
HTML transferred:       995713274 bytes
Requests per second:    35.71 [#/sec] (mean)
Time per request:       5599.998 [ms] (mean)
Time per request:       28.000 [ms] (mean, across all concurrent requests)
Transfer rate:          709.24 [Kbytes/sec] received

This took over twice as long, but the failed requests rate was much much lower. Basically, the server is now configured to be able to handle at least 200 simultaneous page views of one of my site's home page, but it will take 5 seconds a page to serve them. Not great, but much better than the MySQL errors I was getting previously.
During all of this, my server CPU usage is pegging at 100% with the 'load average' hovering upwards of 180. MySQL is using about 8-9% of the CPU and isn't using much of the RAM I've alloted it, as I am just repeatedly hammering the same page, so it's only dealing with a single database. 400MB of the 4GB+ it is configured to grow into. top shows the buffers and cached memory usage at about 50% of the total available RAM. So while I am loading the machine up with this test, it's not getting near the overloaded point. Under a real world database usage, MySQL should grab much of the memory I've alloted it, so the server should be pretty close to full load at that point.
My next test was to test apache at the 'full load' of 250 connections ab -n 50000 -c 250
Concurrency Level:      250
Time taken for tests:   1442.515514 seconds
Complete requests:      50000
Failed requests:        3509
   (Connect: 0, Length: 3509, Exceptions: 0)
Write errors:           0
Non-2xx responses:      3509
Total transferred:      1051321215 bytes
HTML transferred:       1029809879 bytes
Requests per second:    34.66 [#/sec] (mean)
Time per request:       7212.577 [ms] (mean)
Time per request:       28.850 [ms] (mean, across all concurrent requests)
Transfer rate:          711.73 [Kbytes/sec] received

This is showing similar results to the 200 connection test with the proper MySQL connection cap. This is good to me I think. I don't like the 7 seconds to return a page, but I think I can improve that at the Joomla level by enabling cacheing in Joomla either with APC or Memcache which are both installed but not utilized by Joomla yet.
Trying to push my luck, I thought I would try 300 simultaneous connections. ab -n 50000 -c 300 The browser shows a long wait for a quick page load. Otherwise, not really much change in the results.
Concurrency Level:      300
Time taken for tests:   1478.35890 seconds
Complete requests:      50000
Failed requests:        2266
   (Connect: 0, Length: 2266, Exceptions: 0)
Write errors:           0
Non-2xx responses:      2266
Total transferred:      1079120910 bytes
HTML transferred:       1057241646 bytes
Requests per second:    33.83 [#/sec] (mean)
Time per request:       8868.215 [ms] (mean)
Time per request:       29.561 [ms] (mean, across all concurrent requests)
Transfer rate:          712.99 [Kbytes/sec] received

I don't know if my interpretation of these results are 'right' or if I am missing something valueable, but with the lack of instruction that I could find, this is what I came up with.
I just used the results to make sure that I got a good response rate - the lack of a perfect response rate concerns me, but I don't know how to see or reproduce the failures in a way I can inspect them.
The slow time per request also concerns me, but I think I can address much of that at the application layer.
I am confident that while the server would slow to a crawl, it could handle a heavy load situation.
Looking at other performance tuning tools like MonYog after these benchmarking tests has also shown me that my current configurations are 'good enough'.
I wish there was a place where people have posted results of  tests I can reproduce with a hardware description and software configs so I know if I am 'competitive' or if I have a lot of work to do yet to best utilize my equipment. Thus, why I am posting my results.
Comment: I think you might be misinterpreting the failed request line, see also my answer .
Comment: Thanks for the clarification amarillion
Comment: are you testing ab on the local machine? Ie - your doing AB on the same machine where the web server is. I only get more than 1k requests per second when i do the apache benchmark on my own computer.
Comment: I tend to use AB locally for tuning. True, it isn't a true test, but there is often times little one can do to 'tune' an internet connection (There are things that can be done, but it's out of scope for this question). If the network is the limiting factor, and you can tune beyond what the network can provide, you basically have  optimized the system as good as is needed.
Answer: Please note that for the "failed requests" line, a failed request is determined by comparing the length of subsequential requests against each other. For dynamic website, this doesn't have to mean that the request failed at all! So don't worry about the failed request line.
See also: http://www.celebrazio.net/tech/unix/apache_bench.html
Answer: On top of creuzerm answer. Here is a very good link with some more info
https://serverfault.com/questions/274252/apache-ab-please-explain-the-output
Concerning more about the difference between lines
Time per request:       7.303 [ms] (mean)
Time per request:       0.730 [ms] (mean, across all concurrent requests)

Answer: Time per request:       7.303 [ms] (mean)
Time per request:       0.730 [ms] (mean, across all concurrent requests)

the first one is related to the average time for request per concurrent users so if you are making the test for 1000 requests and 200 concurrent users, the first one will be the average time for each 200 request.
the second one is related to the overall request time which is average time over the whole 1000 requests
Answer: On a side note, AB is single-threaded (which is OK for old single-Core CPUs like the 2001 Pentium 4).
To test a multi-Core CPU hosting a Web server (Nginx/Lighty using several processes, Apache using several threads), you should rather use Weighttp (which is compatible with AB).
"Weighttp -t 6" will run 6 client threads (by contrast "AB -t 6" would run a 6-second test).
You will get much more relevant results by using several client threads (as many as the number of Webserver workers - which should match the number of CPU Cores of the server box).
Comment: ab allows you to specify the concurrency level. I think this means it is multi-threaded, in the sense you are using here. E.g.

ab -n 1000 -c 10 http://myserver/

will run 100 requests from 10 concurrent requesters, giving 1000 hits in total.
Comment: @Rick-777 It seems `ab` waits for the first bunch of requests to finish before sending the second bunch. So not multi-threaded in the sense of making requests? Also what do you mean by `requester`?
Comment: I haven't studied the source code of `ab`, so I only reported it's on its options. By requester, I simply mean a thread in a very general sense (not all threads are the same).


Is it possible for humans to evolve to eat something like wood or stone or something similar?

Question: Is it possible for humans to evolve to eat something like wood or stone or something similar? Any hard material you would find or any abundant resource. So is it possible that humans in the past had a chance of evolving to eat this type of thing?
Comment: For open-ended "*is it possible..*"-type questions, the answere is almost always yes, unless it violates some law of physics or logic.  Since termites evolved to eat wood, and lichen evolved to eat rocks, its a safe bet that it is *possible* for humans to evolve similarly. Of course it would take millions of year, very contrived conditions and they may look more like termites or lichen than humans when completed.
Comment: Eat wood or stone, or live off of wood or stone?  There are records of starving cultures eating dirt to subsist on the small amount of organic matter it contains.
Comment: If you include genetic manipulation under the umbrella of "evolve", then the possibility of ingesting wood and minerals from soil (not so much stone), becomes much more reasonable.  Nancy Kress addresses this possibility beautifully in her **Beggars In Spain** series of novels, including some unexpected social and economic aspects to such a food-chain modification.
Comment: Wood and stone are chemically very different so "like wood or stone" is near meaningless.
Answer: Important rule of thumb is: If it burns, it is in principle possible to eat it. Remember that food is primarily a source of energy. Stones are not, they are oxides of silicon and some other elements and they are very low-energetic. So nothing can really eat stones. (If we do not consider possibility that it would perform nuclear fusion in its stomach.)
It is possible to eat wood and some animals evolved to do so. Humans eating wood are possible, but not very likely, since there would have to be really strong evolutionary pressure to do so and we would have to be lucky to find the right adaptation before we go extinct. So far, it seems there are many, many more easier ways how to find food than such a big adaptation as eating wood. I can easily imagine, that in future, we would be able to develop bacteria by a genetic manipulation that would digest cellulose and help us to digest wood. Chances for this occurring naturally seem very small to me.
Comment: Fun fact: Humans already do eat wood. Very finely-grained cedar wood is sometimes used as "natural flavoring" to substitute raspberries in processed food. But it doesn't provide any nutrition value.
Comment: Your "rule of thumb" is dangerous. "If A then B" does not mean "If NOT B then NOT A". Stones could certainly have energy and nutrients we could access through acids that would not burn.
Comment: Wood products (IIRC sawdust derived) are also used to keep the shredded cheese you can buy in bags at the store from clumping.  IIRC in the ingredients list it says something like natural cellulose.  But, IMO, there's a very large difference between simply ingesting something and being able to obtain nutrition from it.  The wood fiber added to food products passed through your digestive system intact.
Comment: To extract energy from something, you must perform a chemical reaction that releases heat. This means that the product has to have lower energy than the reactant. Oxides are usually energetically very low, so it is not very easy to extract any additional energy from them. And vice versa - if the material can be oxidized, it can be used as an energy source. This is foundation of my rule of thumb. What chemical reaction do you propose for releasing energy from stone?
Comment: But I admit that it is is not general and can be tricky. For example [calcium oxide](http://en.wikipedia.org/wiki/Calcium_oxide) does not burn, but could be used as an excellent energy source if mixed with water.
Comment: Additionally, digestion has its own cost in energy, time, and volume. Cellulose is much harder to digest than anything humans can eat. For species with high energy requirements such as humans digesting cellulose does not really make sense, it takes too long for the energy. It would be better to find an edible fungus or animal that can digest cellulose and eat that. Which is exactly what we have done.
Answer: Termites 'eat wood' by passing the raw cellulose to symbiotic bacteria in their gut to turn this into sugars.  A human could in theory be changed to do something similar with these bacteria.  The body could then digest the raw sugars as normal.
Rocks are harder, because there is no lifeform that metabolizes rock for fuel, and the relative hardness would make it difficult to work with even if you found some energy releasing reaction.  Plus, biologically just releasing heat is not enough - it has to be a reaction that can be controlled step by step in the context of the body's cells to release energy as needed.  Our bodies aren't the kind that can work off explosions like an internal combustion engine.
Answer: Humans do, in a manner of speaking, eat wood.  We use it to augment the heat produced within our bodies by eating food and oxidizing it by instead burning it outside of our bodies.  The end products of the process are the same/similar but the mechanism is different.  We also use the heat of fire to pre-digest food by cooking it.
In very cold climates humans without fire would die of cold before dying of starvation.
Since humans already can 'effectively metabolize' wood by burning it to keep warm, process food, scare off animals, smelt metals etc there is little evolutionary pressure to do so more directly by eating it.
Comment: This isn't really answering the question, just comparing current eating to burning wood.
Comment: It lowers the evolutionary pressure pushing for the direct consumption of wood since we can already, effectively metabolize it.  So I would argue that it is at least tangentially relevant.


Magento 2 : Added field for video, music ( mp4 , mp3) upload in admin form

Question: I try to upload image, video or music player, for that I use $uploader->setAllowedExtensions(['mp4', 'mp3', 'jpg', 'jpeg', 'gif', 'png' ]);
, but it doesn't work. Anyone have idea about this problem? Any help would be appreciated.
Answer: I uploaded the media files with ftp to /pub/media/ and embedded them with the html audio or video tag on the product page.
Here is the code you have to use in the editor on the product page in html mode for the audio file you uploaded before to /pub/media/ named example.mp3:
<audio src="https://your-store-domain.tld/pub/media/example.mp3" preload="none" controls="controls"></audio>

mp3 can be handled by all major browsers bedside opera mini at the moment: https://caniuse.com/#feat=mp3


How can I align an image with the spectrogram in Praat?

Question: I am looking for a way to create a new image display in praat that is aligned with the waveform and spectrogram. The image display must be an object in the object window. It must be groupable with the spectrogram. When you zoom in or out of one the other stays aligned accordingly. The images are frames of an ultrasound video located every 33 ms. The tongue position in each ultrasound frame will correlate with the spectrogram and waveform. If anyone can help, I would really appreciate it. Thank you.
Comment: Could you be a little more specific? What do you mean by "create a new image display in Praat"? You mean you want it to be some kind of object in the object window? And you want it to be groupable with the spectrogram such that if you zoom in or out of one the other stays aligned accordingly? And what do you mean by "frames"? Do you mean freeze-frames of video footage?
Comment: user, welcome to Linguistics SE! Please edit your question according to musicallinguist suggestions by clicking "edit" below your question, thank you. :)
Comment: Hi musical linguist and Alenanno. Thank you for the suggestions. I did the changes following from your comments.
Answer: Unfortunately, I doubt this is possible. Praat doesn't have such an object, as far as I am aware.
If you think about it, if there were such an interface, it probably wouldn't make sense to show all of the images at once, since 33 ms is such a short interval of time (only encompassing a few glottal pulses) and unless the spectrogram and waveform are stretched out quite a bit there won't be room to place a bunch of image frames side-by-side without overlapping. Rather, you'd probably want a tool that displays a single window for a single image that keeps changing depending on where in the spectrogram/waveform you place the cursor (I'm thinking of something analogous to the function in Wavesurfer that allows you to hover over the spectrogram and see a snapshot of the spectrum that corresponds to the relevant point in time).
As I said, though, I'm pretty sure there's nothing in Praat with this kind of functionality. The best alternative I can come up with is to write a script that allows you to select a point on the spectrogram/waveform and then find (in a specified directory) an image file whose name encodes time information that matches the time of the selection. The script would have to open the image file with some other program besides Praat, I think.
Others might have other suggestions. If you're really stuck, you could even contact Paul Boersma directly. His contact info is on the Praat page.
Comment: musicallinguist, thank you very much for your answer. I will think about the options you mentioned. I really appreciate it.
Comment: No problem. Good luck!


jQuery and other libraries

Question: I am having this issue with jQuery and have no idea how to solve it .... can anyone help or provide some assistance!?

[Exception... "Component returned failure code: 0x80070057 (NS_ERROR_ILLEGAL_VALUE) [nsIDOMXPathEvaluator.evaluate]"  nsresult: "0x80070057 (NS_ERROR_ILLEGAL_VALUE)"  location: "JS frame :: http://example.com/wp-content/plugins/IMM-Glossary/JavaScripts/prototype.js :: anonymous :: line 1081"  data: no]
  Source: http://example.com/wp-content/plugins/IMM-Glossary/JavaScripts/prototype.js

Thanks
Edit: Thanks for the response :) Problem is that I read the http://docs.jquery.com/Using_jQuery_with_Other_Libraries - and i use "jQuery" now ? So not sure why its occurring?
P.S - About code - I don't even use my own code. I just use this plugin and jquery - and it throws error ?
Comment: maybe the plugin is using $? try change it there also.
Comment: Similar to http://stackoverflow.com/questions/1061397/jquery-noconflict-issue , using jQuery.noConflict() should solve it.
Answer:
Your error points to a prototype script, not jQuery.
You haven't posted any code.
Google search.
Answer: First, from the error message, it seems the problem is with the Prototype js library instead on the jQuery library.
Second, the form of the error code (0x80070057) indicates that it's a problem with a COM component.
I'm guessing that you passed an jQuery selector to Prototype -- both use $() -- and prototype doesn't know how to evaluate it.   (Prototype passes it to the nsIDOMXPathEvaluator component -- I'm gonna guess that is the "Netscape Xpath Evaluater"-- which balks at the bad XPath format)
Answer: Try to use <code>$.noConflict()</code> - Using jQuery with Other Libraries

jQuery and other libraries


Can I find out the auto-mount options?

Question: If I edit mount options, I can untick "Automatic Mount Options" and define my own. However, I would like to use those options it would normally use as automatic ones, just with one change (mount on stratup). How do I find out what the auto-options would be?
Comment: type 'man mount' from a terminal and scroll to the 'FILESYSTEM-INDEPENDENT ...' section.
Answer: Actually distributions are auto-mounting devices through the window manager, or some element of the window manager.
For example for Gnome, nautilus is the program managing this behavior.
For this case you can open Nautilus and go to edit/preferences/media.
In other words its normally depends on your graphical interface, but some rarely systems use text mode services to do this.
If you want to mount at the startup, you have two options, by editing fstab or by adding a command on /etc/rc.local.
Comment: Is there a way to find out what options Nemo uses? Doesn't seem to have that in preferences.
Answer: You can find the options on a mounted filesystem from the information provided by the kernel through the proc filesystem, specifically in /proc/mounts.
grep /media/something /proc/mounts

You can use the findmnt command to print this information in a nicer format.
Some options are not listed if they are the default, i.e. if they're the setting that a plain mount would apply. That's not an issue if you want to issue a command line equivalent to what your GUI is doing, or to generate an equivalent fstab entry, but it's something to keep in mind if you want to perform a similar mount on a system with a different kernel version or a different version of mount. Even that is mostly not an issue because the default settings rarely change, but for the few settings whose defaults have changed over time, such as atime-related settings or ACL activation, you may have to dig through the documentation or the source code (or a few threads on this site) to find out what the absence of an option means on your system.

Can I find out the auto-mount options?


ASP.Net page Life Cycle

Question: I am going through page life cycle.When i referring the following

there the LoadPostData() method is expressed as (First Try) later (Second Try).What does here try refer to?
Answer: I think you should refer to the original image from MSDN, it says that it called once for each control
Answer: The page calls this method once BEFORE the page Load event so that all controls on the page or created in the Init event will have their values set from the form post before you start working with them in the Load event code. It calls it a second time because you might have added some dynamic controls during the Load event, and this gives them a chance to get their values set as well.
This article is a good one that outlines the whole page lifecycle, step by step. You'll see a reference to this second try under the "Raised Events" section.

ASP.Net page Life Cycle


Can a program get root access if it gets the password?

Question: If there's only 1 user on a system with sudo permission, can another program that ran by the user get root permission without the user knowing it if it has the sudo password?
Answer: If your account is configured such that sudo actions do not require a password, then there will be little you will see that shows a program running sudo.
For example
#!/bin/bash
read -p "Please enter your name: " n
echo "Thank you"

sudo cp -p /etc/shadow "$HOME/.shadow"    # Copy the encrypted list of passwords
sudo chown "$USER" "$HOME/.shadow"        # And make it readable for me

Be aware that you will almost certainly want to delete ~/.shadow if you actually run this script.
There will be entries in the log files (see files in the directory /var/log), but a "clever" program could potentially try to remove those. At least, the ones written locally.
Answer: This is a good lesson on ensuring that you do not install malicious code.  There is some tricky behavior to sudo which can make it more difficult for a hacker to exploit... but not too difficult.

The environment variable SUDO_ASKPASS (see https://linux.die.net/man/8/sudo) lets you specify how you want to enter your password by naming a program to take the password from the user.  This is useful in a GUI world where you typically don't want to be presented with the command line password entry and instead presented with a friendly window (even when working on the command line).
So a program with your user password could create it's own "askpass" program hard coded to respond with your password without you knowing.  It could set the SUDO_ASKPASS environment variable and call sudo and you would never be notified.

Further to all of this, many systems have a mechanism for allowing sudo to skip asking for a password when it is run from a session that recently authenticated with sudo.
In theory a script could watch out for this (if it running from an active user session) and call sudo as soon as you have entered your password to take advantage of the fact it will not be asked again.

In short... Be careful what you install


Website created by Flex Builder works on every browser that use flash?

Question: Does websites created by Flex Builder works on every browsers that use Flash ?
Answer: No. The web site created by Flex Builder requires Flash player version 9 or above.
FAQ: Flex and Flash
Comment: @xRobot: Yes, as far as I can gather.
Answer: At the end of the day, Flex Builder generates a flash swf file of your application.  It is a flash file and therefore will play on any appropiate flash player (v9 or above).  Flex is just the name for the marriage between the MXML markup and Actionscript 3 language, while flash is the compiled output.


TP4056 module shutdown problem

Question: Does anyone know why this TP4056 module shuts down in this configuration? If I bypass it, everything works and the measured current does not exceed the limit of the TP4056.
Does not work:

Works:
Comment: It is possible that the peak inrush current is still enough to dip the voltage input of the 5V out DC-DC converter enough to reset the BT module.  Add a few good (largish) capacitors to the various power rails near the loads.  I have observed volt drops in the protection switches on small USB power banks. Pretty diagrams BTW.
Comment: 2000 views and not a single upvote on an answer?, please use the voting system
Comment: Is that 1A pk or Avg?
Comment: Peak at turn on.  It idles below 0.1A.
Comment: Thank you for the suggestion.  How do I calculate the value for the capacitors?  The voltage is easy enough, but what about the capacitance?  I did the diagrams in Visio.
Answer: Here is the solution - add another TPO4056 to your design in parallel, as described here:
TP4056 module parallel output
I've ran into this same problem with a very similar setup and objective.
The TP4056 cannot provide the inrush current so the DW01A shuts down.
The problem seems to be inrush current from the amplifier board (I am using one with integrated BT, not the DC:DC converter. I understand the inrush current trips the DW01A, and that this current is produced by the capacitors on the amplifier - so we cannot add capacitors to slow the inrush current.
The boost converter can operate without the load so its not the cause.
Another workaround is adding the source charging voltage to TP4056 (it powers the load directly bypassing the protection chip) - then the amplifier can power up, getting past the inrush current problem, and source voltage can be removed.
Answer: That's not just the TP4506, thats the TP4506 plus a load of circuitry all on a module. It looks like the circuit diagram is:

This shows that unless the TP4506 was shorting the battery (and I doubt it, because you would get some pretty flames if it were), the problem is the DW01A and its mosfets. You can see if the problem is with the IC or the MOSFETS by checking the IC pins and seeing if theyre at the expected values.
As DIODEX points out, it's possible that you're running into a problem with the fact that it's meant for single cells, although I'm not quite sure how it would sense that.
edit: when I say "problem", at least for the DW01A, I don't mean that it's necessarily broken, it's just not outputting the signal you want. It might be sensing a fault condition like overcurrent etc.
Comment: Thanks for the quick answers!  I will check voltages at IC pins and also try it with a single 18650.
Comment: dual 18650 only drops the ESR in half, which is an indication of the load and I would expect a surge > 1A.  however DW01A chip is supposed to be CC and CV limit in this cct and only drop 70mV or so.  more pin Voltage's are need to debug further.
Answer: I had a similar problem when I connected a step-up regulator to the TP. My assumption was that the TP must first be supplied with power and only then the load may be connected. In your case the switch SW1. In my case this works.
So only connect the battery and then turn on SW1 works? For me that was the "solution".
Answer: The TP4056 supports only a single cell. So you are triggering an over current condition per pin 2 functionality
Comment: That is incorrect. You can use batteries in parallel.
Answer: Just connect the XL6009 to the battery with the switch.
Batteries wired as usual to B+ and B-.
Don't use the OUT+ and OUT- pins.
Output current "limited" through OUT+, OUT- and USB port.
See BeB00 picture.

TP4056 module shutdown problem


What is the difference between Rashba coupling effect and spin orbit coupling effect

Question: We know standard spin-orbit coupling and spin Hall effect. But what is the differences in Rashba coupling effect? What changes in Rashba coupling effect?
Answer: I am no expert on this, but I will tell you the little that I do know since there are no other answers.
The Rashba effect is very similar to the spin hall effect in the sense that it generates a spin-current. The main difference is that the Rashba effect happens at the interface between two different materials, while the spin hall effect happens in the bulk of a material. So, a multi-layer device can have bulk spin-currents and interface spin-currents. I do not know how the directions of these spin-currents relate to one-another.
Spin-orbit coupling does play a role in the Rashba effect, however the asymmetry of being at the interface does also play a role.


Should I outline or expand strokes when making a logo?

Question: Do I have to outline or expand strokes when making a logo?
When I use an ink brush for example, should I expand or outline the stroke or can I leave it if I want to?
Answer: My general workflow for both Illustrator and Photoshop is a two file workflow.

1 file for my records which contains all the layers, effects, appearance settings, etc in tact and is not flattened and everything is as "live" and editable as it can be. This allows me to return to the file later and more easily edit anything which may need changed. I keep this file in the client archive. The client never sees this file.
1 file for the client which is expanded, flattened, merged. etc. Editing for this file is not a concern. The concern is to save a file as universally usable as possible. Clients typically should not need to edit files. However, they may need to utilize the file in multiple production environments. So create a file that is as absolutely simple as possible is beneficial.

Illustrator files are not much different than creating something like a digital painting in Photoshop. When you work in Photoshop, you create layers, add styles, etc. But when you're ready to provide a file to the client you save as a jpg or tiff which flattens all the layers and merges all the styles. That's all the client needs. Yet you retain the .psd for you to edit again later if needed. The same style workflow for Illustrator works well for me.
Comment: Thanks , but what is the difference between flatten and expand
Comment: Flattening artwork means to remove any transparency/blending modes applied to objects. From the menu > `Object > Flatten Transparency`
Answer: Yes, all strokes should be expanded when supplying final art to clients etc. This will minimise the risk of errors in reproduction. Sometimes the logo or art can be scaled and the stroke may not scale as it should. Also gives you quality control over the logo you are supplying, knowing that it hasn't been edited or scaled incorrectly along the way. Keep a non-expanded master file for your records.
Comment: Thanks , but  if I use ink brush when I expand it I can,t change the colour any more , is that right for the client? , and when I use clip mask to make a vintage feeling , also I must expand?
Answer: When saving or archiving your own personal working files it is a personal option whether to flatten, expand or outline. If you perform these actions, however, you will not be able to adjust stroke width, edit text or use your brush shape as a brush anymore. If you want to be able to edit your elements again then don't flatten them.
When you are preparing images for web display or delivery you export a flattened version using the "save for web" dialogue. It doesn't matter if the objects in your file are expanded or outlined beforehand, just how they appear on the canvas before you at the moment of export.
When you are sending a work file or high quality image for printing to a client for them to re-use you should expand strokes, outline text and generally flatten everything so there is no error on their end (unless for some reason your agreement gives them the fully editable work files).
Comment: Thanks , and when I use flatten?at any case?
Comment: Good question, I don't know, they often work the same. Expand is a vector consideration, you lose all your appearance settings so appearance is locked. Flatten does the same but you can apply it to any graphics on your screen, i believe, it has nothing to do with styles that you applied. Flatten has an important use in reducing file size and locking elements so the image cant be altered by others.


Optimizing regulator power circuit for low noise?

Question:
I am trying to understand the attached circuit. It's an ADP3333ARMZ-3.3-R7 regulator to provide 3.3V to an analog system. My goals is to have a very low noise regulator and power circuitry for a 16 bit resolution Analog Circuit that is attached to it, but am concerned this design is not optimal for low noise. Does the inductor indicate that it is a noisy regulator? Next to the inductor there is a surge resistor which also sounds like it is expecting noise, is there are better regulator to use for low noise applications? Also, can I replace the polarized capacitor with a non-polarized capacitor? The data sheet for the ADP3333 regulator suggests it can have a capacitor as low as 1uF - why is the capacitor at the input 10UF? Love any insights on how to optimize this circuit.
Answer: Pretty much all LDOs are very quiet, the ferrite bead (inductor with huge AC losses) is not there to suppress noise from the LDO itself but to filter out any VHF noise that comes from the main power supply, ferrite beads work best for attenuating noise from 10MHz-1GHz (they work at higher and lower frequencies, but that's the most common range).
Page 8, Figure 19 of the datasheet has the LDO's noise attenuation characteristics, at 1MHz the ripple rejection ratio is around 40dB for a 500mA load, 40dB is a 100x reduction in the amplitude of the voltage ripple. 40dB at 1MHz is quite good for an LDO, if you've got 10mVpp coming in (which is reasonably noisy), then you'll have only 100uVpp of noise on the output (on page three it says "Output noise 10Hz-100kHz: 45uVrms, so it's got a pretty clean output to begin with, and a line regulation of 40uV per 1V of input change looks pretty good to me).
The ADC most likely adds at least another 20-40dB of PSRR (power supply rejection ratio) at 1MHz so already you're looking at ~1-10uV worth of noise which is 5-50 times smaller than the LSB of a 16bit ADC operating at 3.3V. Now the ADC and the LDO's PSRR's will degrade at higher frequencies, but so does the input attenuation of your ADC (they have internal bandwidth limits so noise much more than 10x your sample frequency is unlikely to be an issue unless it's really big in amplitude)
Now in reality, things like coupling and parasitic inductances cause far more noise problems, so I'd say that that LDO is most likely just fine for your application.
Now, as for your other questions:
Yes, you can swap out the polarised cap for a non-polarised one, but as they're usually more expensive and have higher ESR, I'm not sure what the advantage would be.
There is no reason why you couldn't change up to 100uF or 1000uF for the input capacitor, it's just a bulk filter cap, it's value isn't too important. The datasheet only refers to how much output capacitance you need, this is because some (but not many) LDOs can become unstable if there either isn't enough or there's too much output capacitance, its internal control loop gets all confused. They're just saying that it'll still work with as little as 1uF of output capacitance so you could use just one really tiny ceramic capacitor as your output filter cap - it's mainly a space and money saving thing.
Have a look at Figure 2 on Page 1 of the datasheet "Typical Application Circuit", that is the best place to start as it tells you what the minimum recommended setup is, there's just a 1uF input cap and a 1uF output cap and that's it.
Comment: I would take  issue with the statement that non-polarised caps are more expensive and have higher ESR; a 10uF general purpose 10V ceramic has an ESR of around 3 to 5 milliohm and can be had for a few pennies. http://uk.farnell.com/murata/grm188r61a106ke69d/cap-mlcc-x5r-10uf-10v-0603/dp/2494233
Comment: So I can replace the 10uF on the input with a ceramic non-polarized, although the output(the picture is the original design) I should add a 1uF cap between the diode and ground to match the suggested use in the datasheet? (Right now there is just the 560ohm resistor and LED). Would you still think the surge resistor - R31 is necessary, or the bead inductor?
Comment: @jtoul Ceramic capacitors make excellent filter caps (I thought you meant non-polarised electrolytic), ceramic caps have such low ESR and ESL that they will block most of the electrical noise on their own. What do you mean by "cap between the diode and ground"? Figure 2 on page one of the ADP3333ARMZ datasheet is all you need to make this regulator work quite well, anything more than that is just icing on the cake, you can add the 560ohm resistor and the ferrite bead if you want a super clean output, adding more ceramic caps will have a similar effect too
Comment: @PeterSmith I took "non-polarised capacitor" to mean an NP electro, usually ceramics are just called "ceramics" to distinguish them from non-polarised *electrolytics* as there's no such thing as a *polarised* ceramic so the prequalifier in that instance is unnecessary, but there are polarised electros (and tants and EDLCs) so the distinction is chemistry dependent.
Comment: Thanks @Tom I will use a ceramic 10uF on the input instead of the electrolytic. I've also added a 1uF capacitor on the output(with LED and resistor in series with it to show when it is powered on or not). I have left the bead inductor and surge resistor in place, hopefully this is the most stable low noise implementation? You can see my updated circuit diagram in the original post above.
Answer:
I've posted my updated circuit design proposed answer from the info in the comments from @Tom's post. Changed the input capacitor to a ceramic instead of an electrolytic, and added a filter cap on the output(1uF) in line with the power LED. I've removed the surge resistor and the bead inductor too as it was mentioned that's likely overkill. If it isn't overkill and you think it would cut down on noise I will add it back in!
Comment: C5 needs to go from the output of the LDO straight to ground (just like the 10uF), it should be in parallel with the resistor/led string. You can't pass DC power through a cap so the LED isn't going to light up. Other than that, it looks good, you may get better performance by having another small capacitor really close to the adc so the adc has a clean and low impedance supply. The output is probably going to be clean enough for a 16bit ADC with or without the ferrite bead and the surge resistor.
Comment: Great thank you. So you would add a cap close to the adc on the main mcu? I just took out the bead inductor and the surge resistor, changed the output cap to go straight to ground. Now it is a fairly cut down design.
Comment: Yep, that sounds pretty good to me, that should be good even to 18bits.
Comment: Thanks! Will let you know what happens when I go put it together .
Answer: Just a couple of observations. If the aim of the application is as low a noise floor as possible I would reconsider the use of ceramic capacitors if the circuit is likely to encounter mechanical vibration as ceramic capacitors are inherently microphonic in nature due to the piezo electric effect.  If the purpose of the LED is to indicate the presence of power, perhaps consider moving it to the input side of the regulator and adjusting the series resistor value to suit the input supply voltage.  LEDs generate noise albeit perhaps not much, but once again if the intention is to keep noise as low as possible I'd eliminate it completely unless it was necessary. Actual physical layout of the components will have an impact on the noise performance of the circuit. The best way IME to discover which designs work best is to try different component types as has been suggested by others and if you have access to appropriate test equipment, take measurements and document your findings for future reference.
Comment: Please answer the question, yeah you have some good comments, these go in the comment section. When you get some points for answering you will earn the privilege of commenting.


If my mother breastfed my aunt once, would that turn her into my sister from rida'a? and their children become my mahrem or not?

Question: asalamu'alaikom wa rahmatu allah wa baarakatu,
I have a question that I couldn't find the answer. Let me explain. My mother breastfed my aunt when she was a baby. That makes her become my Rida'a sister ? . And if so, are her children my mahram or are they still my cousins?
thank you for taking the time to try to explain this topic baaraka allahu fikom.
Answer: There is disagreement on the number of times that breastfeeding must occur for it to be counted. The majority considers once to be sufficient. See Marrying a man whose mother breast feeded only once to the girl
If a woman X breastfeeds a woman Y then Y becomes like her daughter, and and all the descendants of Y become like the descendants of X. However it will not effect the ancestors or siblings of Y nor the other children of the ancestors or siblings of Y.
Hence if your mother breastfed your aunt then your aunt is like your sister. And her children are like your nieces.

قال النبي صلى الله عليه وسلم في بنت حمزة لا تحل لي، يحرم من الرضاع ما يحرم من النسب، هي بنت أخي من الرضاعة
The Prophet (ﷺ) said about Hamza's daughter, "I am not legally permitted to marry her, as foster relations are treated like blood relations (in marital affairs). She is the daughter of my foster brother."
— Bukhari


Hopf-Rinow Theorem for Riemannian Manifolds with Boundary

Question: I am a little rusty on my Riemannian geometry. In addressing a problem in PDE's I came across a situation that I cannot reconcile with the Hopf-Rinow Theorem. If $\Omega \subset \mathbb{R}^n$ is a bounded, open set with smooth boundary, then $\mathbb{R}^n - \Omega$ is a Riemannian manifold with smooth boundary.  Since $\mathbb{R}^n - \Omega$ is closed in $\mathbb{R}^n$, it follows that $\mathbb{R}^n - \Omega$ is a complete metric space. However, the Hopf-Rinow Theorem seems to indicate that $\mathbb{R}^n - \Omega$ (endowed with the usual Euclidean metric) is not a complete metric space since not all geodesics $\gamma$ are defined for all time. Am I missing something here? Do the hypotheses of the Hopf-Rinow theorem have to be altered to accommodate manifolds with boundary?
Comment: For manifolds with boundary, completeness as a metric space and completeness in the sense that all geodesic curves extend forever, are no longer equivalent. Clearly, the boundary can ensure that all Cauchy sequences converge (possibly to a boundary point), and just as clearly, there is going to be some geodesic curves that "run into" the boundary and cannot be continued beyond it.
Answer: Hopf-Rinow concerns, indeed, Riemannian manifolds with no boundary.
Comment: Thanks! I thought that was the case, but I wanted to check. Just out of curiosity, if one allows for say broken geodesics (allowing geodesics to be reflected off the boundary) using the metric, do you know if you can extend the Hopf-Rinow theorem to manifolds with boundary?
Comment: Hmm, I don't know about this. It starts to sound like various billiard-ball problems ...
Comment: @John I do not know precisely what you ask, but if I consider $M = \{ (x,y)\in\mathbb{R}^2 \mid y \le x^2 \}$ with the usual metric (inherited from $\mathbb{R}^2$), then starting from the point $p=(0,-1)$, or from any point of $M$, I guess, there is clearly going to be points in $M$ that I cannot hit. Each geodesic curve will reflect at most once on the boundary (parabola). But maybe you thought of _compact_ manifolds with boundary?


Keyboard failing to print out tilde this character

Question: I use ssh to raspberry pi from windows with putty. Otherwise, I use macbook air to remotely control windows. Preliminarily, in a sooner time, I was able to type tilde this character via combine key(shirf+~). No idea why there is such as this matter suddenly happening. Wish some advice. Thanks.
Comment: The symptom is gone right now. I don't know the cause. I shut down macbook latest night and reboot my macbook this morning. Then, I remotely control my windows with ssh putty.
Answer: You could try changing your keyboard layout.
Run sudo raspi-config from the terminal, go to Internationalisation Options, select Change Keyboard Layout, then select the applicable setting for your keyboard.
Comment: Thanks. I will have been using this possibly in the future.


Is it right to define ground as a pool of surplus free electrons, like a metal?

Question: In a dipole antenna or any other pole like antenna, there is supposedly a ground on one side causing the current to flow away and towards the ground towards the feed, but if the whole antenna itself is a good enough conductor with free electrons, how does the earthing work?
Is it necessary to have an antenna such that it's resistance is higher than the ground?
Comment: In a dipole antenna, there's **no** ground on one side. So, no, your considerations make no sense. The electron model is not useful to model antennas – it's literally the field where you think of currents as the phenomenon that leads to waves, so, while describing the same thing as in say, solid state electronics, the "pool of electrons" model isn't sufficient to explain antennas.
Answer: As usual, electron-based thinking will lead you astray. A metal or other conductor has mobile electrons which are usually referred to as "free", but there is an overall balance of their number with the number of protons in the metal, so they are not a "surplus". The nearest thing to a surplus electron source might be a N-type semiconductor.
Dipoles and monopoles-with-ground are usually considered separately. Dipoles aren't grounded. My antenna theory is rusty so I'm going to refer you to the internet.
The important number is not resistance but impedance at the particular frequency of interest. The resistance of a good antenna is as close to zero as possible.
Comment: +1 for "As usual, electron-based thinking will lead you astray." @user163416: Instead of "free electrons" just think of it as charge mobility. Charge mobility will allow charge flow which is current.
Comment: @Transistor it comes up so often I'm thinking of writing some sort of FAQ on the subject
Comment: That could be worthwhile. I found myself answering so many LED questions that I created my own site. (See my profile.) I regularly post images from there into EE.SE. I haven't figured out how to make money from it though!


Are there Linux utilities for previewing files (partic. .doc's) rather than full-blown editing?

Question: Instead of opening .doc, .odt, etc. files in LibreOffice which is resource intensive, are there any good utilities for simply viewing (previewing) such files without the need for editing facilities? Thank you.
Comment: Google docs. ;-)
Answer: This is something that antiword was designed for.
You can convert MSW documents into plain text, PDF, PostScript, and DocBook, depending on which reader you prefer to view files in.


Is it necessary to join the mesh before adding bones?

Question: I'm Modeling a Character for animation, but still, I'm not sure about the final result of its shape, so I'm trying to add bones, but still, my character isn't joined in one object, it is still objects parented to each other, and it has the eyelids are connected to lettuce and a controller's bones. so I'm Wondering if it Is necessary to join all the mesh parts together(In one selection) Before I add the final bone controllers. So the point is the body controllers are different from the eyelids controllers, If I joined it I would lose my work There. Plus The mesh is always losing its appearance when I add bones with automatic weights in it. so I think it's a cause of not joining everything in one mesh.
Answer: It is not necessary to have all meshes in one object to control it with a single armature. I've done multiple objects with one armature many times, Usually because I wanted to preserve two UV maps and did not know yet how to merge them.
Thus, I guess your rigging system and weight painting needs adjustment. There are answered questions to this elsewhere, or you can ask your own new question. As always, I recommend the Blender Manual at docs.blender.org
PS: basically, you create vertex groups that have the same names as bones, and the bones will drag around vertices in those groups. If the vertex is part of multiple vertex groups, it will be controlled by two bones, ending up somewhere between them. This is where weights come in: we can have the vertex have less weight in one group so it will follow the other bone more but not entirely.
Comment: aha, This is good, Thanks


iPad air 2 screen rotation

Question: I just got an iPad Air 2. I would like to lock the screen rotation but it doesn't have the rotation lock switch. I also checked this community and tried someone's answer, which was to go to control center. This didn't work because I didn't see  rotation lock control in control center.
Answer: On an iPad Air 2, to access the screen rotation controls:

Turn on/unlock iPad
Swipe up from the bottom of the screen
Tap icon which shows padlock with rotating arrow around it - White is on, Grey is off.

Source: Apple
There has also been a noted issue on iOS 8 (pre-8.1) with the rotation lock. You may, if you haven't already, try updating to iOS v8.1+ should the above steps not work.
Answer: iPad Air 2 with IOS 12.1.1, in landscape position, swipe down from upper right corner to access control center. Then you should see a padlock icon. Touch to turn off/on.

iPad air 2 screen rotation


Service Discovery for MongoDB

Question: What is the best way of implement a Service Discovery like ETCD for use in a mongodb cluster? I wish have, 1 master for HA and two nodes, in my master i have a static ip, but nodes maybe can changes ip. When a node has been recreated, this should connect to master mongo for update the replication cluster.
Answer: As renaissancedev blog documentation here In order to build flexible and maintainable cloud infrastructure we need a way to connect services together with minimal effort. For a long time DNS has been the way to do that, but it also poses a different set of problems. How do you keep the DNS entries up to date? How do you make sure that the instances that are registered in DNS are actually healthy and able to serve traffic?
Consul from Hashicorp is a modern answer to these problems that is being widely adopted by teams of all sizes. It is a service discovery layer for your datacenter, as well as being a distributed key-value store and able to perform cross-datacenter replication and discovery. One of the wonderful things about it is the fact that the service discovery layer can be used via a built-in DNS interface. Services that are registered in Consul can have an associated health-check which will cause a failing instance to be removed from the list of DNS entries for that service. All-in-all it's a pretty great system that is definitely worth considering if you haven't already started using it yourself.
For Example the Solution of this problem
Once I fully understood what the failure was, the solution became obvious. Since you can register arbitrary service names in Consul and associate a variety of different health checks, all I had to do was set one up that would only point to the node that was currently the master. In order to make that work I wrote a scripted health check that would run the following script every 10 seconds:
#!/bin/bash
ISMASTER=$(/usr/bin/mongo --quiet --eval 'db.isMaster().ismaster')
if [ "$ISMASTER" = "true" ]
then
    exit 0
else
    exit 2
fi

I then configured the Consul agent on the MongoDB instances with this service definition:
{
  "services": [
    {
      "check": {
        "interval": "10s",
        "script": "/consul/scripts/mongo_is_master.sh"
      },
      "name": "mongodb-master",
      "port": 27017,
      "tags": [
        "mongodb",
        "master"
      ]
    }
  ]
}

Whichever instance is passing that check will be registered as the mongodb-master.service.consul DNS record in Consul. That means that the clients just need to be configured to connect to mongodb://mongodb-master.service.consul:27017/database?replicaSet=rs0&readPreference=primaryPreferred and everyone will be happy.
For your further info here and here

Service Discovery for MongoDB


Did New Horizons capture enough of Pluto's surface to create its global map?

Question: Given the short amount of time that New Horizons focused on Pluto, did it capture enough of its surface to create a global map of it?
Answer: If you mean if New Horizons' data return could produce a global high-resolution map of Pluto's surface, then no, and here's why:
Pluto at New Horizons approach:

New Horizons Ground Track on Pluto:

Source of both images is Alan Stern's (New Horizons PI) presentation (PDF) to OPAG Meeting in July 23, 2014.
As you can see, on New Horizons' close approach, Pluto was sunlit on its Southern hemisphere, with its North polar cap in shadow. Solar phase angle on approach was 15°, with New Horizons approaching from Southern hemisphere. Mapping of all the longitudes of the complete Southern hemisphere and up to 15° North was possible due to Pluto's 6.4 Earth days long rotation, and it produced this much of its global map:
The Whale and the Donut:

This map of Pluto, created from images
taken from June 27-July 3, 2015, by the Long Range Reconnaissance
Imager (LORRI) on New Horizons, was combined with lower-resolution
color data from the spacecraft's Ralph instrument. The center of the
map corresponds to the side of Pluto that will be seen close-up during
New Horizons' July 14 flyby.
This map gives mission scientists an important tool to decipher the
complex and intriguing pattern of bright and dark markings on Pluto's
surface. Features from all sides of Pluto can now be seen at a glance
and from a consistent perspective, making it much easier to compare
their shapes and sizes.
The elongated dark area informally known as "the whale," along the
equator on the left side of the map, is one of the darkest regions
visible to New Horizons. It measures some 1,860 miles (3,000
kilometers) in length. Directly to the right of the whale's "snout" is
the brightest region visible on the planet, which is roughly 990 miles
(1,600 kilometers) across. This may be a region where relatively fresh
deposits of frost—perhaps including frozen methane, nitrogen and/or
carbon monoxide—form a bright coating.
Credit: NASA/Johns Hopkins University Applied Physics
Laboratory/Southwest Research Institute

Since the flyby, Pluto is showing New Horizons its dark side, with only a thin sliver, or a crescent, illuminated by the Sun and showing its atmosphere, and the rest of it is in the shadow. Which is bad for high resolution mapping, but also good for a number of science experiments the probe will do now, including e.g. occultation radio science measurements of Pluto's atmosphere, science requiring long exposure without bright background burn-out, and so on. But it got a good deal of Pluto's surface topography with its instruments, too. For a single flyby, a pretty good return, and expect many more high-resolution images focused on smaller areas, showing a lot more detail than this global map, as it transmits the rest of its flyby data in the following year and a half or so.

You can view the partial global map of Pluto also in Google Earth, if you follow instructions here.

Update: Higher resolution partial global map was just released today:

Global Map of Pluto (with grid):

The science team of NASA's New Horizons mission has produced an
updated global map of the dwarf planet Pluto. The map includes all
resolved images of the surface acquired between July 7-14, 2015, at
pixel resolutions ranging from 40 kilometers (24 miles) on the
Charon-facing hemisphere (left and right sides of the map) to 400
meters (1,250 feet) on the anti-Charon facing hemisphere (map center).
Many additional images are expected in fall of 2015 and these will be
used to complete the global map.
The New Horizons spacecraft flew past Pluto and its moons on July 14.
The Johns Hopkins University Applied Physics Laboratory in Laurel,
Maryland, designed, built, and operates the New Horizons spacecraft,
and manages the mission for NASA's Science Mission Directorate. SwRI,
based in San Antonio, leads the science team, payload operations and
encounter science planning. New Horizons is part of the New Frontiers
Program managed by NASA's Marshall Space Flight Center in Huntsville,
Alabama.
Credit: NASA/Johns Hopkins University Applied Physics
Laboratory/Southwest Research Institute

Grid here is apparently drawn at every 30°, but isn't labeled. Also obvious is that the map was created with early failsafe New horizons science return using many highly compressed JPeG images, so this will get better over time as complete datasets are transmitted.

Commentary: There's an obvious confusion over North and South hemispheres between released The Whale and the Donut map of Pluto and Alan Stern's presentation. I'm not exactly sure who's in error here, but something got mislabeled. Clarification by APL would be appreciated, but the point stands, we won't get a complete high resolution map of Pluto with this single flyby, despite APL release descriptions being somewhat ambiguous about that. And with all the raw data they're preparing for release on short notice, often requiring a lot of processing, such errors will happen, but should be corrected with higher level releases later on.
Comment: Fantastic answer, thank you!  I also found this site which pulls together all the images into a rotating globe...  http://www.ianww.com/pluto/
Comment: @Colyn1337 Thanks, and that's a nice page you found there too, it goes straight in my favorites. :)
Comment: It is entirely possible that Dr. Stern, who opposes the IAU definition of a planet, is also rebelling against them with respect to the "North" Pole.  The IAU has [defined the North Pole](https://skyandtelescope.org/astronomy-resources/astronomy-questions-answers/why-dont-we-say-it-has-a-direct-spin-with-the-axis-tilted-82176-instead-of-98176/) as the pole Earth's north side of the ecliptic plane since 1982, which flipped the polar labels on retrograde-rotating Pluto, and Stern rejects this move.
Answer: I'll add a few points to the excellent answer from TidalWave.

We would not be surprised that New Horizons could not map all latitudes of Pluto. Unless we are fortunate enough to  hit an equinox, a single flyby is going to find some range of latitudes in polar darkness. In the case of New Horizons flying by Pluto, the missing range was unfortunately large because Pluto has a large axial tilt and New Horizons arrived rather long after the last Pluto equinox. And it would have been worse if the mission had been delayed; see Stern and Grinspoon, Chasing New Horizons, p. 71.

New Horizons did well to get the full 360° range of longitudes at the latitudes that were available. Pluto takes about a week of Earth-time to rotate about its axis, so to get the 360° longitude range the spacecraft would have had to get suitable images for that long -- and therefore, from distances up to several million kilometers. New Horizons managed it with its Long Range Reconnaissance Imager (LORRI), which was "simply" a black-and-white camera coupled with a powerful telescope. LORRI would also play major roles during New Horizons' flyby of Jupiter and (after the Pluto encounter) capturing distant objects in the Kuiper Belt.

Both of the above points applied also to Pluto's major moon Charon (which itself yielded intriguing features to New Horizons). Since Charon is double-locked with Pluto, it had the same visibility constraints as Pluto, and the same long-range requirement for imaging 360° of longitude.


Hume on substance

Question: I know Hume believes substance is an illusion based on habit but how does he arrive at this belief? Related to this what is his opinion on physical objects?
Comment: See [Hume on substance](https://plato.stanford.edu/entries/substance/#HumKanSub): "According to Hume, in the Treatise, our belief in substance is the result of a mistake or illusion."
Comment: But how does he arrive at that?
Comment: See the ref above: "Hume denies any account that postulates a unifying 'something' that underlies change. The crucial point is that a succession of very similar things does not constitute the real continuation of anything, only the illusion of real continuation.
Thus Hume's treatment of substance is like his treatment of causation, in that he sees both as the projection onto the world of a tendency of our minds either to pass from one thing to another or to associate them in some way. "
Comment: Hume may have been right about almost everything.. but he clearly had never been punched on the nose outside a nightclub in Wigan.
There is nothing like a violent interaction with substance to rid you of any notion of its ephemera.
Answer: It's like this: Think of a green ball. Now, remove the color from that ball. Remove the fact that it is spherical. Remove the fact that it is made of rubber and as such bounces. Strip its qualities away from the definition and imagine only the "substance" that is left behind without qualities. That substance is undefinable, unrecognizable.
This, to Hume, summarizes why substances are an illusion or habit. We see the ball and ascribe these qualities to the definition of said ball. When we see this green, spherical construction of rubber, we think of a green ball. Habitually, we define this collection of qualities as a green ball.
Therefore, there is no substance, only a collection of qualities. Furthermore, Hume does not take a stance on physical objects. Rather he takes a stance on our belief about reality, such as gravity, even when we have no reason to have these beliefs.

Hume on substance