(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
# I book marked some sites with useful Linux commands i found. | |
# then i noticed they were down, so i loaded them via google cache, and copied here. | |
# source: http://blog.urfix.com/ | |
# source: http://www.pixelbeat.org/cmdline.html | |
# Enjoy! | |
# How to run process as background and never die | |
# | |
# nohup means: Do not terminate this process even when the stty is cut off. | |
# > /dev/null means: stdout goes to /dev/null (which is a dummy device that does not record any output). |
Latency Comparison Numbers (~2012) | |
---------------------------------- | |
L1 cache reference 0.5 ns | |
Branch mispredict 5 ns | |
L2 cache reference 7 ns 14x L1 cache | |
Mutex lock/unlock 25 ns | |
Main memory reference 100 ns 20x L2 cache, 200x L1 cache | |
Compress 1K bytes with Zippy 3,000 ns 3 us | |
Send 1K bytes over 1 Gbps network 10,000 ns 10 us | |
Read 4K randomly from SSD* 150,000 ns 150 us ~1GB/sec SSD |
#!/bin/bash | |
sudo apt-get update | |
# Now let's install all the required ubuntu packages | |
sudo apt-get install build-essential uwsgi nginx uwsgi-plugin-python python-pip | |
# PS! If you are doing this stuff for fun I do recommend to install nginx from PPA repository | |
# that you can find here https://launchpad.net/~nginx/+archive/development |
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
''' | |
Non-parametric computation of entropy and mutual-information | |
Adapted by G Varoquaux for code created by R Brette, itself | |
from several papers (see in the code). | |
This code is maintained at https://github.com/mutualinfo/mutual_info | |
Please download the latest code there, to have improvements and | |
bug fixes. |
import asyncio | |
class CM: | |
async def __aenter__(self): | |
print(1) | |
await asyncio.sleep(0.01) | |
print(2) | |
return self |
I've had many people ask me questions about OpenTracing, often in relation to OpenZipkin. I've seen assertions about how it is vendor neutral and is the lock-in cure. This post is not a sanctioned, polished or otherwise muted view, rather what I personally think about what it is and is not, and what it helps and does not help with. Scroll to the very end if this is too long. Feel free to add a comment if I made any factual mistakes or you just want to add a comment.
OpenTracing is documentation and library interfaces for distributed tracing instrumentation. To be "OpenTracing" requires bundling its interfaces in your work, so that others can use it to time distributed operations with the same library.
OpenTracing interfaces are targeted to authors of instrumentation libraries, and those who want to collaborate with traces created by them. Ex something started a trace somewhere and I add a notable event to that trace. Structure logging was recently added to O