<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6767956112988189355</id><updated>2024-11-01T13:16:27.378+03:00</updated><category term="fun"/><category term="django"/><category term="book"/><category term="testing"/><category term="python"/><category term="kernel"/><category term="app"/><category term="c"/><category term="bash"/><category term="javascript"/><category term="performance"/><category term="core python"/><category term="profiling"/><category term="unittest"/><category term="linux"/><category term="admin"/><category term="vim"/><category term="cache"/><category term="debugging"/><category term="deployment"/><category term="model"/><category term="unix as ide"/><category term="algorithms"/><category term="image"/><category term="postgre"/><category term="shell"/><category term="ssl"/><category term="git"/><category term="monitoring"/><category term="psl"/><category term="selenium"/><category term="standard library"/><category term="video"/><category term="command"/><category term="data"/><category term="email"/><category term="erlang"/><category term="math"/><category term="memory"/><category term="network"/><category term="terminal"/><category term="android"/><category term="best practice"/><category term="decorator"/><category term="design patterns"/><category term="elf"/><category term="https"/><category term="javascript framework"/><category term="logging"/><category term="mocking"/><category term="optimization"/><category term="package"/><category term="python versions"/><category term="security"/><category term="ssh"/><category term="tdd"/><category term="templates"/><category term="threading"/><category term="user"/><category term="amazon"/><category term="api"/><category term="asm"/><category term="backbone"/><category term="benchmarking"/><category term="class based views"/><category term="coffee script"/><category term="console"/><category term="crontab"/><category term="css"/><category term="fabric"/><category term="form"/><category term="framework"/><category term="geo"/><category term="hardware"/><category term="jquery"/><category term="less"/><category term="man"/><category term="must read"/><category term="mysql"/><category term="openssl"/><category term="pip"/><category term="power"/><category term="process"/><category term="pythonbrew"/><category term="rabbitmq"/><category term="search"/><category term="socket.io"/><category term="tshark"/><category term="url"/><category term="view"/><category term="virtualenv"/><category term="wireshark"/><category term="принципы разработки"/><category term="DDD"/><category term="I/O scheduler"/><category term="Makefile"/><category term="X server"/><category term="arch"/><category term="assembly"/><category term="auth"/><category term="bash prompt"/><category term="cbv"/><category term="certificate"/><category term="cffi"/><category term="cheatsheet"/><category term="chrome"/><category term="codding style"/><category term="color"/><category term="components"/><category term="concurrency"/><category term="conference"/><category term="configuration management"/><category term="css3"/><category term="ctypes"/><category term="database"/><category term="desktop"/><category term="diagram"/><category term="django 1.4"/><category term="docs"/><category term="ec2"/><category term="elevator"/><category term="exception"/><category term="ext2"/><category term="ext3"/><category term="gcc"/><category term="gdb"/><category term="generic views"/><category term="gunicorn"/><category term="html"/><category term="html5"/><category term="ide"/><category term="imagekit"/><category term="integrations"/><category term="jit"/><category term="lazy"/><category term="logs"/><category term="mail server"/><category term="media"/><category term="memcached"/><category term="mercurial"/><category term="module"/><category term="nasm"/><category term="permisions"/><category term="plugins"/><category term="powertop"/><category term="programming language"/><category term="python 3"/><category term="python in browser"/><category term="queryset"/><category term="real time"/><category term="scalability"/><category term="scaling"/><category term="screenshot"/><category term="seo"/><category term="server"/><category term="settings"/><category term="signals"/><category term="slides"/><category term="sockets"/><category term="sql"/><category term="ssd"/><category term="sse"/><category term="svn"/><category term="syntax highlighting"/><category term="template"/><category term="test service"/><category term="tornado"/><category term="translation"/><category term="twisted"/><category term="ubuntu"/><category term="uwsgi"/><category term="valgrind"/><category term="validation"/><category term="version"/><category term="virtualbox"/><category term="visualization"/><category term="zeromq"/><category term="zsh"/><category term="404"/><category term="ATDD"/><category term="ConQAT"/><category term="Deckard"/><category term="KISS"/><category term="Levenshtein distance"/><category term="O"/><category term="OpenStack"/><category term="PIL"/><category term="TCP"/><category term="Werkzeug"/><category term="YAGNI"/><category term="abbreviations"/><category term="access"/><category term="access control lists"/><category term="acl"/><category term="angular"/><category term="animated"/><category term="aot"/><category term="apache"/><category term="apachetop"/><category term="argparse"/><category term="authentification"/><category term="avx"/><category term="awesome"/><category term="background"/><category term="bdd"/><category term="behave"/><category term="best"/><category term="bigo"/><category term="brython"/><category term="bus"/><category term="c extension"/><category term="c module"/><category term="capacity"/><category term="cas"/><category term="cashing"/><category term="celery"/><category term="centos"/><category term="character recognition"/><category term="clewn"/><category term="clone detection"/><category term="clone digger"/><category term="cloud"/><category term="cms"/><category term="code review"/><category term="collectd"/><category term="collections"/><category term="combinatorics"/><category term="command line"/><category term="comparison"/><category term="completion"/><category term="context_processors"/><category term="continues integration"/><category term="coredump"/><category term="coroutines"/><category term="cpu"/><category term="cpuidle"/><category term="cpython"/><category term="cryptography"/><category term="ctags"/><category term="curl"/><category term="deadsnakes"/><category term="debian"/><category term="decimal"/><category term="dependencies detection"/><category term="deprecation"/><category term="determine os"/><category term="device"/><category term="dia"/><category term="distribute"/><category term="distributed systems"/><category term="django 1.1"/><category term="django dash"/><category term="django people"/><category term="djangocon"/><category term="dnotify"/><category term="dns"/><category term="docker"/><category term="drawing"/><category term="driver"/><category term="dynamic translation"/><category term="ecommerce"/><category term="editor"/><category term="emacs"/><category term="ember"/><category term="enterprise service bus"/><category term="enum"/><category term="environment"/><category term="esb"/><category term="escaping"/><category term="example"/><category term="expressiveness"/><category term="extended file attributes"/><category term="fanotify"/><category term="fastcgi"/><category term="fd"/><category term="fhs"/><category term="file"/><category term="filesystem"/><category term="firebug"/><category term="fixtures"/><category term="flash drive"/><category term="flask"/><category term="flex"/><category term="font"/><category term="fraction"/><category term="freshen"/><category term="full stack developer"/><category term="functional programming"/><category term="functools"/><category term="fuser"/><category term="gedit"/><category term="geoip"/><category term="geopy"/><category term="getter"/><category term="gevent"/><category term="gift"/><category term="gnome"/><category term="gotchas"/><category term="graph"/><category term="graphics"/><category term="graphics stack"/><category term="graphite"/><category term="greenlet"/><category term="grep"/><category term="group"/><category term="hamcrest"/><category term="haml"/><category term="hardware virtualization"/><category term="heapy"/><category term="heartbeat"/><category term="help"/><category term="hex color"/><category term="history"/><category term="hosting"/><category term="hstore"/><category term="http basic auth"/><category term="humor"/><category term="icon"/><category term="imaging"/><category term="import"/><category term="indent"/><category term="inotifu"/><category term="inotify"/><category term="installer"/><category term="integration test"/><category term="interactive python"/><category term="internet of things"/><category term="ipdb"/><category term="itertools"/><category term="jenkins"/><category term="job"/><category term="jobs"/><category term="join"/><category term="json"/><category term="kernel module"/><category term="kivy"/><category term="lattuce"/><category term="laws"/><category term="learning"/><category term="linux journal"/><category term="lisp"/><category term="load testing"/><category term="local storage"/><category term="log analyzer"/><category term="lpi"/><category term="m2cripto"/><category term="mac os"/><category term="mail"/><category term="make"/><category term="malloc"/><category term="man 9"/><category term="manager"/><category term="map"/><category term="markdown"/><category term="meliae"/><category term="memmory"/><category term="message broker"/><category term="meteor"/><category term="metrics"/><category term="microdata"/><category term="microprocessor"/><category term="middleware"/><category term="migration"/><category term="ming"/><category term="mips"/><category term="mixins"/><category term="mmx"/><category term="mobile"/><category term="mongodb"/><category term="mount"/><category term="multiple inheritance"/><category term="multiple programs"/><category term="multitask"/><category term="my"/><category term="nautilus"/><category term="netstat"/><category term="nginx"/><category term="nlp"/><category term="nmap"/><category term="node.js"/><category term="nosql"/><category term="objgraph"/><category term="online"/><category term="opencv"/><category term="orm"/><category term="os"/><category term="overriding"/><category term="paas"/><category term="parallel programming"/><category term="payment"/><category term="pci"/><category term="pdb"/><category term="perf-tools"/><category term="pgtune"/><category term="physical web"/><category term="pid"/><category term="pipe"/><category term="popularity"/><category term="port forwarding"/><category term="port scan"/><category term="presentation"/><category term="preview"/><category term="price"/><category term="principles"/><category term="programming"/><category term="programming languages"/><category term="property"/><category term="pudb"/><category term="pycharm"/><category term="pycon"/><category term="pyenv"/><category term="pymorphy"/><category term="pympler"/><category term="pyopenssl"/><category term="pypy"/><category term="pyserial"/><category term="python internals"/><category term="python to javascript"/><category term="pytz"/><category term="qemu"/><category term="query"/><category term="random"/><category term="rdp"/><category term="rdtsc"/><category term="readelf"/><category term="record desktop"/><category term="reload"/><category term="remote desktop"/><category term="request"/><category term="responsive design"/><category term="reverse engineering"/><category term="review board"/><category term="revisions"/><category term="rust"/><category term="scales"/><category term="scheduler"/><category term="scheduling"/><category term="schemaless"/><category term="schemes"/><category term="selectors"/><category term="serialization"/><category term="service"/><category term="setter"/><category term="setuptools"/><category term="shop"/><category term="shortcuts"/><category term="simd"/><category term="slowness"/><category term="sms"/><category term="social"/><category term="solr"/><category term="south"/><category term="spacy"/><category term="speed"/><category term="splinter"/><category term="stability"/><category term="static site generator"/><category term="statistics"/><category term="statsd"/><category term="status board"/><category term="stream"/><category term="string"/><category term="strings difference"/><category term="subshell"/><category term="superclass"/><category term="svg"/><category term="syscall"/><category term="system programming"/><category term="tainted"/><category term="tastypie"/><category term="templatetags"/><category term="temporary data"/><category term="tensorflow"/><category term="text browser"/><category term="threads"/><category term="timeout"/><category term="timer"/><category term="timezone"/><category term="tracing jit"/><category term="transaction"/><category term="transparency"/><category term="troubleshooting"/><category term="typescript"/><category term="uml"/><category term="underscore"/><category term="unicode"/><category term="unittest2"/><category term="usb"/><category term="user mode linux"/><category term="vacancy"/><category term="vagrant"/><category term="varnish"/><category term="versioning"/><category term="vfs"/><category term="virtual display"/><category term="warning"/><category term="watch process"/><category term="wayland"/><category term="web 3.0"/><category term="window manager"/><category term="windows"/><category term="xpath"/><category term="xss"/><category term="xvfb"/><category term="yandex"/><category term="zato"/><category term="zip"/><category term="Бритва Оккама"/><category term="Морфологический анализ"/><category term="ОС"/><category term="мат. символы"/><category term="математика"/><category term="прерывания"/><category term="стек"/><title type='text'>Python / Django</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>502</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-8131741279195240637</id><published>2019-08-26T16:30:00.001+03:00</published><updated>2019-08-26T16:34:43.521+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ssl"/><title type='text'>Urllib: disable SSL sertificates check</title><content type='html'>&lt;pre&gt;&lt;code&gt;import ssl
ssl._create_default_https_context = ssl._create_unverified_context&lt;/code&gt;&lt;/pre&gt;

Fix for local environment for example for such exceptions:

 &lt;pre&gt;&lt;code&gt;Traceback (most recent call last):
  File &quot;/home/alexey/anaconda3/envs/torch_04/lib/python3.7/urllib/request.py&quot;, line 1317, in do_open
    encode_chunked=req.has_header(&#39;Transfer-encoding&#39;))
  File &quot;/home/alexey/anaconda3/envs/torch_04/lib/python3.7/http/client.py&quot;, line 1244, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File &quot;/home/alexey/anaconda3/envs/torch_04/lib/python3.7/http/client.py&quot;, line 1290, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File &quot;/home/alexey/anaconda3/envs/torch_04/lib/python3.7/http/client.py&quot;, line 1239, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File &quot;/home/alexey/anaconda3/envs/torch_04/lib/python3.7/http/client.py&quot;, line 1026, in _send_output
    self.send(msg)
  File &quot;/home/alexey/anaconda3/envs/torch_04/lib/python3.7/http/client.py&quot;, line 966, in send
    self.connect()
  File &quot;/home/alexey/anaconda3/envs/torch_04/lib/python3.7/http/client.py&quot;, line 1414, in connect
    server_hostname=server_hostname)
  File &quot;/home/alexey/anaconda3/envs/torch_04/lib/python3.7/ssl.py&quot;, line 423, in wrap_socket
    session=session
  File &quot;/home/alexey/anaconda3/envs/torch_04/lib/python3.7/ssl.py&quot;, line 870, in _create
    self.do_handshake()
  File &quot;/home/alexey/anaconda3/envs/torch_04/lib/python3.7/ssl.py&quot;, line 1139, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1076)&lt;/code&gt;&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/8131741279195240637/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/8131741279195240637' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/8131741279195240637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/8131741279195240637'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2019/08/urllib-disable-ssl-sertificates-check.html' title='Urllib: disable SSL sertificates check'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-4181487162762648500</id><published>2018-10-11T14:38:00.001+03:00</published><updated>2018-12-09T15:02:53.989+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="opencv"/><category scheme="http://www.blogger.com/atom/ns#" term="tensorflow"/><title type='text'>Compile tensorflow and opencv from source</title><content type='html'>&lt;h2&gt;
Tensorflow&lt;/h2&gt;
&lt;pre&gt;&lt;code&gt;sudo apt install python3-dev python3-pip
pip install -U pip six numpy wheel mock
pip install -U keras_applications==1.0.5 keras_preprocessing==1.0.3 --no-deps

./configure  # see &#39;View sample configuration session&#39; here https://www.tensorflow.org/install/source
bazel build --config=opt --config=cuda --config=mkl --config=monolithic //tensorflow/tools/pip_package:build_pip_package
./bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
pip install /tmp/tensorflow_pkg/tensorflow-1.12.0-cp36-cp36m-linux_x86_64.whl
&lt;/code&gt;&lt;/pre&gt;

&lt;br /&gt;
&lt;h3&gt;
cuDNN&lt;/h3&gt;
Instructions here: https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html&lt;br/&gt;

&lt;br /&gt;
&lt;h3&gt;
Bazel&lt;/h3&gt;
Follow instructions: https://docs.bazel.build/versions/master/install-ubuntu.html#using-bazel-custom-apt-repository
&lt;br/&gt;
Download from https://github.com/bazelbuild/bazel/releases&lt;br/&gt;
Be sure Java installed&lt;br/&gt;

&lt;pre&gt;&lt;code&gt;
# Bazel 18.1 for TF r1.12 
# Details why so: https://github.com/tensorflow/tensorflow/issues/23401

chmod +x bazel-&lt;version&gt;-installer-linux-x86_64.sh
./bazel-&lt;version&gt;-installer-linux-x86_64.sh --user

# add:
# export PATH=&quot;$PATH:$HOME/bin&quot;
# to ~/.bashrc

&lt;/pre&gt;

&lt;pre&gt;&lt;code&gt;git clone https://github.com/tensorflow/tensorflow
git checkout r1.12&lt;/code&gt;&lt;/pre&gt;


https://www.tensorflow.org/install/source


&lt;br /&gt;
&lt;h2&gt;
Opencv&lt;/h2&gt;
https://www.pyimagesearch.com/2018/05/28/ubuntu-18-04-how-to-install-opencv/

&lt;pre&gt;&lt;code&gt;
ln -s /usr/local/lib/python3.6/site-packages/cv2.so cv2.so
cp -r ~/anaconda3/envs/opencv_build/lib/python3.6/site-packages/cv2/ ~/anaconda3/envs/tf_build/lib/python3.6/site-packages/
&lt;/code&gt;&lt;/pre&gt;
</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/4181487162762648500/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/4181487162762648500' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/4181487162762648500'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/4181487162762648500'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2018/10/compile-tensorflow-and-opencv-from.html' title='Compile tensorflow and opencv from source'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-5880655032146532034</id><published>2018-02-26T10:16:00.000+03:00</published><updated>2018-02-26T16:13:15.359+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="nlp"/><category scheme="http://www.blogger.com/atom/ns#" term="spacy"/><title type='text'>Extract lemmas</title><content type='html'>&lt;pre&gt;&lt;code class=&quot;bash&quot;&gt;&lt;a href=&quot;https://spacy.io/usage/linguistic-features#pos-tagging&quot;&gt;Docs&lt;/a&gt;
# conda install spacy
# python -m spacy download en

In[1]: import spacy
In[2]: nlp = spacy.load(&#39;en&#39;)

In[3]: doc = nlp(&quot;Hello, my cruel world. I&#39;m leaving you tonight.&quot;)

In[4]: list(doc.sents)
Out[4]: [Hello, my cruel world., I&#39;m leaving you tonight.]

In[5]: list(doc)
Out[5]: [Hello,, , my, cruel, world,., I, &#39;m, leaving, you, tonight, .]

In[6]: doc[8]
Out[6]: leaving
In[7]: doc[8].lemma
Out[7]: 9707179535890930240
In[8]: doc[8].lemma_
Out[8]: &#39;leave&#39;

In[9]: doc[8].pos_
Out[9]: &#39;VERB&#39;

In[10]: from spacy import displacy
In[11]: displacy.serve(doc, style=&#39;dep&#39;)
&lt;/code&gt;&lt;/pre&gt;
</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/5880655032146532034/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/5880655032146532034' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/5880655032146532034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/5880655032146532034'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2018/02/extract-lemmas.html' title='Extract lemmas'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-7370544905098777781</id><published>2017-10-12T17:07:00.002+03:00</published><updated>2017-10-12T17:08:09.517+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fun"/><category scheme="http://www.blogger.com/atom/ns#" term="math"/><title type='text'>Байки от Фихтенгольца</title><content type='html'>&lt;blockquote class=&quot;tr_bq&quot;&gt;
Студента математика зовут на представление в камерный театр. «Ка-мерный театр»,- читает он на билете,- «Посмотрим, посмотрим». Возвращается разочарованным. На расспросы друзей объясняет «Обещали k-мерный, а рассмотрели только тривиальный случай k=3″&lt;/blockquote&gt;
Лекции Григорий Михайлович вел поистине артистично. Соответственно, 
мало кто отвлекался. Но в 1954 году известен случай, когда профессор 
Фихтенгольц выгнал первокурсника со своей лекции за игру в шахматы. 
Первокурсника звали Боря Спасский. Через год после этого события Борис 
Спасский выигрывает чемпионат мира по шахматам среди юношей, становится 
международным гроссмейстером, а в последствии — чемпионом мира.&lt;br /&gt;
&lt;br /&gt;
Теорему о пределе промежуточной функции Григорий Михайлович называл 
«Теоремой о двух милиционерах» — «Если Вы обнаружили себя между двух 
милиционеров, направляющихся в отделение, то и сами там неминуемо 
окажетесь»&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://ib.mazurok.com/fun/&quot;&gt;http://ib.mazurok.com/fun/&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/7370544905098777781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/7370544905098777781' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/7370544905098777781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/7370544905098777781'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2017/10/blog-post_12.html' title='Байки от Фихтенгольца'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-6114325771040924409</id><published>2017-10-12T17:02:00.001+03:00</published><updated>2017-10-12T17:02:17.171+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fun"/><category scheme="http://www.blogger.com/atom/ns#" term="math"/><title type='text'>Анекдот от разработчиков Алисы</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgggPPSm_1vFzzslGKNxnFpLaJrEqCIsrLiGpDzygNcHh_1-OjR94TJnIJRCrFqcJ5uABSkY5emZcKM8cZNG_4S_3_Y_-v_ToxTlCKubT6nd3atE_1Tiuwu5yrLcmlu8o5K2RpfriXZzzcS/s1600/59db5e9295dcc076299597.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgggPPSm_1vFzzslGKNxnFpLaJrEqCIsrLiGpDzygNcHh_1-OjR94TJnIJRCrFqcJ5uABSkY5emZcKM8cZNG_4S_3_Y_-v_ToxTlCKubT6nd3atE_1Tiuwu5yrLcmlu8o5K2RpfriXZzzcS/s1600/59db5e9295dcc076299597.png&quot; data-original-width=&quot;258&quot; data-original-height=&quot;459&quot; /&gt;&lt;/a&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/6114325771040924409/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/6114325771040924409' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/6114325771040924409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/6114325771040924409'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2017/10/blog-post.html' title='Анекдот от разработчиков Алисы'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgggPPSm_1vFzzslGKNxnFpLaJrEqCIsrLiGpDzygNcHh_1-OjR94TJnIJRCrFqcJ5uABSkY5emZcKM8cZNG_4S_3_Y_-v_ToxTlCKubT6nd3atE_1Tiuwu5yrLcmlu8o5K2RpfriXZzzcS/s72-c/59db5e9295dcc076299597.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-2879690286514873028</id><published>2016-12-13T17:05:00.000+03:00</published><updated>2017-10-12T17:12:56.172+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fun"/><category scheme="http://www.blogger.com/atom/ns#" term="humor"/><category scheme="http://www.blogger.com/atom/ns#" term="math"/><title type='text'></title><content type='html'>Трое математиков и трое физиков собираются ехать на поезде в другой город на конференцию. Они встречаются перед кассой на вокзале. Первой подходит очередь физиков и они, как все нормальные люди покупают по билету на человека. Математики же покупают один билет на всех. «Как же так?» — удивляются физики — «Ведь в поезде контроллер, вас же без билетов оттуда выгонят!». «Не волнуйтесь» — отвечают математики — «У нас есть МЕТОД».

&lt;br /&gt;
&lt;br /&gt;
Перед отправкой поезда физики рассаживаются по вагонам, но стараются проследить за применением загадочного «метода». Математики же все набиваются в один туалет. Когда контроллер подходит к туалету и стучит, дверь приотворяется, оттуда высовывается рука с билетом. Контроллер забирает билет и дальше все они без проблем едут в пункт назначения.После конференции те же вновь встречаются на вокзале. Физики, воодушевившись примером математиков, покупают один билет. Математики не берут ни одного. — А что же вы покажете контроллеру? — У нас есть МЕТОД.

&lt;br /&gt;
&lt;br /&gt;
В поезде физики набиваются в один туалет, математики — в другой. Незадолго до отправления, один из математиков подходит к туалету, где прячутся физики. Стучит. Высовывается рука с билетом. Математик забирает билет и возвращается к коллегам.

&lt;br /&gt;
&lt;br /&gt;
МОРАЛЬ: Нельзя использовать математические методы, не понимая их!</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/2879690286514873028/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/2879690286514873028' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/2879690286514873028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/2879690286514873028'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2016/12/blog-post.html' title=''/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-4761684556687677415</id><published>2016-10-25T17:16:00.002+03:00</published><updated>2016-11-02T06:15:25.162+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="postgre"/><title type='text'>Compile and run Postgres with debug symbols</title><content type='html'>&lt;pre&gt;&lt;code class=&quot;bash&quot;&gt;cd SOURCE_DIR
mkdir $HOME/root/postgres_git
./configure --enable-cassert --enable-debug CFLAGS=&quot;-ggdb -Og -g3 -fno-omit-frame-pointer&quot; --prefix=$HOME/root/postgres_git
make
make install


sudo service postgresql stop
cd /home/seaside/root/postgres_git/bin
mkdir -p ../usr/local/pgsql/data
sudo chown postgres ../usr/local/pgsql/data
sudo su - postgres
./initdb -D ../usr/local/pgsql/data
postgres -D ../usr/local/pgsql/data &gt; ../usr/local/pgsql/data/logfile 2&gt;&amp;1 &amp;
./createdb test
./psql test
test=# SELECT pg_backend_pid();


sudo gdb -p 2466&lt;/code&gt;&lt;/pre&gt;

&lt;a href=&quot;https://wiki.postgresql.org/wiki/Developer_FAQ#What_debugging_features_are_available.3F&quot;&gt;Developer_FAQ&lt;/a&gt;

&lt;a href=&quot;https://www.postgresql.org/docs/9.1/static/install-short.html&quot;&gt;Install&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/4761684556687677415/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/4761684556687677415' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/4761684556687677415'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/4761684556687677415'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2016/10/compile-and-run-postgres-with-debug.html' title='Compile and run Postgres with debug symbols'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-5681299949622023035</id><published>2016-04-16T04:57:00.004+03:00</published><updated>2016-04-16T04:57:51.980+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="algorithms"/><category scheme="http://www.blogger.com/atom/ns#" term="python"/><title type='text'>String translation table</title><content type='html'>&lt;script src=&quot;https://gist.github.com/savanovich/f12b80ceb33ad42f554f2c9cfd2eb626.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/5681299949622023035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/5681299949622023035' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/5681299949622023035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/5681299949622023035'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2016/04/string-translation-table.html' title='String translation table'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-7540060547277681053</id><published>2016-03-12T13:53:00.000+03:00</published><updated>2016-03-12T13:55:12.928+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="asm"/><category scheme="http://www.blogger.com/atom/ns#" term="c"/><category scheme="http://www.blogger.com/atom/ns#" term="performance"/><category scheme="http://www.blogger.com/atom/ns#" term="rdtsc"/><title type='text'>Using RDTSC instruction that returns CPU TSC (Time Stamp Counter) </title><content type='html'>&lt;script src=&quot;https://gist.github.com/savanovich/f07eda9dba9300eb9ccf.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/7540060547277681053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/7540060547277681053' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/7540060547277681053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/7540060547277681053'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2016/01/using-rdtsc-instruction-that-returns.html' title='Using RDTSC instruction that returns CPU TSC (Time Stamp Counter) '/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-501728720281238298</id><published>2016-02-04T16:56:00.000+03:00</published><updated>2016-02-04T16:56:02.457+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="aot"/><category scheme="http://www.blogger.com/atom/ns#" term="dynamic translation"/><category scheme="http://www.blogger.com/atom/ns#" term="jit"/><category scheme="http://www.blogger.com/atom/ns#" term="tracing jit"/><title type='text'>JIT vs AOT</title><content type='html'>&lt;script src=&quot;https://gist.github.com/savanovich/835b48170fe1eda0c58f.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/501728720281238298/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/501728720281238298' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/501728720281238298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/501728720281238298'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2014/10/aot-vs-jit.html' title='JIT vs AOT'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-1368863325617627976</id><published>2016-02-02T01:10:00.000+03:00</published><updated>2016-02-02T01:10:46.848+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cheatsheet"/><category scheme="http://www.blogger.com/atom/ns#" term="gdb"/><title type='text'>Gdb commands cheatsheet</title><content type='html'>&lt;script src=&quot;https://gist.github.com/savanovich/eb6ee6b264e773968e71.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/1368863325617627976/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/1368863325617627976' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/1368863325617627976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/1368863325617627976'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2014/07/gdb-commands-cheatsheet.html' title='Gdb commands cheatsheet'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-8479170232122337081</id><published>2015-10-23T06:15:00.000+03:00</published><updated>2015-10-23T06:15:28.320+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="algorithms"/><category scheme="http://www.blogger.com/atom/ns#" term="cryptography"/><category scheme="http://www.blogger.com/atom/ns#" term="distributed systems"/><title type='text'>Задача византийских генералов</title><content type='html'>&lt;a href=&quot;https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B4%D0%B0%D1%87%D0%B0_%D0%B2%D0%B8%D0%B7%D0%B0%D0%BD%D1%82%D0%B8%D0%B9%D1%81%D0%BA%D0%B8%D1%85_%D0%B3%D0%B5%D0%BD%D0%B5%D1%80%D0%B0%D0%BB%D0%BE%D0%B2&quot;&gt;Википедия: Задача византийских генералов&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;table class=&quot;tiles&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;g1&lt;/td&gt;
&lt;td&gt;g2&lt;/td&gt;
&lt;td&gt;g3&lt;/td&gt;
&lt;td&gt;g4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;(1,2,x,4)&lt;/td&gt;
&lt;td&gt;(1,2,x,4)&lt;/td&gt;
&lt;td&gt;(1,2,x,4)&lt;/td&gt;
&lt;td&gt;(1,2,x,4)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;(1,2,y,4)&lt;/td&gt;
&lt;td&gt;(1,2,y,4)&lt;/td&gt;
&lt;td&gt;(1,2,y,4)&lt;/td&gt;
&lt;td&gt;(1,2,y,4)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;(a,b,c,d)&lt;/td&gt;
&lt;td&gt;(e,f,g,h)&lt;/td&gt;
&lt;td&gt;(1,2,3,4)&lt;/td&gt;
&lt;td&gt;(i,j,k,l)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;(1,2,z,4)&lt;/td&gt;
&lt;td&gt;(1,2,z,4)&lt;/td&gt;
&lt;td&gt;(1,2,z,4)&lt;/td&gt;
&lt;td&gt;(1,2,z,4)&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/8479170232122337081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/8479170232122337081' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/8479170232122337081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/8479170232122337081'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/10/blog-post.html' title='Задача византийских генералов'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-8328024379130609003</id><published>2015-09-04T08:46:00.000+03:00</published><updated>2015-09-04T08:49:40.254+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="memory"/><category scheme="http://www.blogger.com/atom/ns#" term="python"/><category scheme="http://www.blogger.com/atom/ns#" term="system programming"/><title type='text'>Memory Dump with Python </title><content type='html'>&lt;script src=&quot;https://gist.github.com/savanovich/4775088e466cca739be0.js&quot;&gt;&lt;/script&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/8328024379130609003/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/8328024379130609003' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/8328024379130609003'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/8328024379130609003'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/09/memmory-dump-with-python.html' title='Memory Dump with Python '/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-215982388158097823</id><published>2015-08-19T09:25:00.002+03:00</published><updated>2015-08-19T09:25:54.740+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fun"/><title type='text'></title><content type='html'>“Маркетолог спрашивает программиста: в чём сложность поддержки большого проекта?
&lt;br /&gt;Программист: ну представь, что ты писатель и поддерживаешь проект “Война и мир”. У тебя ТЗ — написать главу как Наташа Ростова гуляла под дождём по парку. Ты пишешь “шёл дождь”, сохраняешь, вылетает сообщение об ошибке “Наташа Ростова умерла, продолжение невозможно”. Почему умерла? Начинаешь разбираться. Выясняется, что у Пьера Безухова скользкие туфли, он упал, его пистолет ударился о землю и выстрелил в столб, а пуля от столба срикошетила в Наташу. Что делать? Зарядить пистолет холостыми? Поменять туфли? Решили убрать столб. Получаем сообщение “Поручик Ржевский умер.” Выясняется, что он в следующей главе облокачивается о столб, которого уже нет..”</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/215982388158097823/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/215982388158097823' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/215982388158097823'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/215982388158097823'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/08/blog-post.html' title=''/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-2168408748430922484</id><published>2015-06-22T15:08:00.006+03:00</published><updated>2015-06-22T15:08:48.782+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fun"/><title type='text'>e=mc2</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBjfddvmdbWzRwmFavKztFn1EJIJO8fQ0BBZoWZqLYLN7K_eE8tCSCgz8dByis5ZyzGmTFOPhgH84Y6tvcOAHdFztesd0LGdPomzZBfpegjLTFv6Ps7wXr5N5ykrWcPQkDrjfRL2Nj1UW8/s1600/582518da-4221-408a-9a95-1f57f7209be1-original.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBjfddvmdbWzRwmFavKztFn1EJIJO8fQ0BBZoWZqLYLN7K_eE8tCSCgz8dByis5ZyzGmTFOPhgH84Y6tvcOAHdFztesd0LGdPomzZBfpegjLTFv6Ps7wXr5N5ykrWcPQkDrjfRL2Nj1UW8/s640/582518da-4221-408a-9a95-1f57f7209be1-original.jpeg&quot; width=&quot;459&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/2168408748430922484/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/2168408748430922484' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/2168408748430922484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/2168408748430922484'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/06/emc2.html' title='e=mc2'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBjfddvmdbWzRwmFavKztFn1EJIJO8fQ0BBZoWZqLYLN7K_eE8tCSCgz8dByis5ZyzGmTFOPhgH84Y6tvcOAHdFztesd0LGdPomzZBfpegjLTFv6Ps7wXr5N5ykrWcPQkDrjfRL2Nj1UW8/s72-c/582518da-4221-408a-9a95-1f57f7209be1-original.jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-1651117994685391789</id><published>2015-06-08T02:20:00.000+03:00</published><updated>2015-06-08T02:20:31.744+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="design patterns"/><category scheme="http://www.blogger.com/atom/ns#" term="laws"/><category scheme="http://www.blogger.com/atom/ns#" term="parallel programming"/><category scheme="http://www.blogger.com/atom/ns#" term="principles"/><title type='text'>Parallel Programming</title><content type='html'>&lt;a href=&quot;http://en.wikipedia.org/wiki/Amdahl%27s_law&quot;&gt;Amdahl&#39;s law&lt;/a&gt; 
&lt;br /&gt;
The speedup of a program using multiple processors in parallel computing is limited by the time needed for the sequential fraction of the program. For example, if a program needs 20 hours using a single processor core, and a particular portion of the program which takes one hour to execute cannot be parallelized, while the remaining 19 hours (95%) of execution time can be parallelized, then regardless of how many processors are devoted to a parallelized execution of this program, the minimum execution time cannot be less than that critical one hour. Hence the speedup is limited to at most 20×.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://en.m.wikipedia.org/wiki/Gustafson%27s_law&quot;&gt;Gustafson–Barsis&#39; law&lt;/a&gt;&lt;br /&gt;
Says that computations involving arbitrarily large data sets can be efficiently parallelized.&lt;br /&gt;
</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/1651117994685391789/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/1651117994685391789' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/1651117994685391789'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/1651117994685391789'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/05/amdahls-law.html' title='Parallel Programming'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-2335661044081109311</id><published>2015-06-02T11:19:00.001+03:00</published><updated>2015-06-02T11:19:11.465+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fun"/><title type='text'>Our framework was very simple and we have not written documentation for it</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj216f3YUzyLJ-nk-8SbvFNCQxN7Sw04QyFQEM_o-1oU2iRCGj6QE6_ZjigQXdmmH5LBQFnEKDeY_oUj4AYmlXNJRCsKlaOH5WqjLYP7qHrxNCTqnXkIS2QnghZm-B1dtKhFFymRxUq-dKf/s1600/48.gif&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj216f3YUzyLJ-nk-8SbvFNCQxN7Sw04QyFQEM_o-1oU2iRCGj6QE6_ZjigQXdmmH5LBQFnEKDeY_oUj4AYmlXNJRCsKlaOH5WqjLYP7qHrxNCTqnXkIS2QnghZm-B1dtKhFFymRxUq-dKf/s320/48.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/2335661044081109311/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/2335661044081109311' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/2335661044081109311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/2335661044081109311'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/06/our-framework-was-very-simple-and-we.html' title='Our framework was very simple and we have not written documentation for it'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj216f3YUzyLJ-nk-8SbvFNCQxN7Sw04QyFQEM_o-1oU2iRCGj6QE6_ZjigQXdmmH5LBQFnEKDeY_oUj4AYmlXNJRCsKlaOH5WqjLYP7qHrxNCTqnXkIS2QnghZm-B1dtKhFFymRxUq-dKf/s72-c/48.gif" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-6505417307092195892</id><published>2015-05-21T11:57:00.000+03:00</published><updated>2015-05-21T11:57:54.623+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fun"/><title type='text'></title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBWbuDSgksRX-JYC_tjxq_k-8JyBoguHKbOGbn-qv-WPd8HlYf_6jS7QQd0HKff6aeqwW6W_qolqNXGiGKwGrK9jeHeCg-AS_RPgg1RbfWKWO2AZDrkzTDind_rzLY7OasumalCXYmeGyp/s1600/7395085f-ce76-47fd-9736-65f3db579604-medium.jpeg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBWbuDSgksRX-JYC_tjxq_k-8JyBoguHKbOGbn-qv-WPd8HlYf_6jS7QQd0HKff6aeqwW6W_qolqNXGiGKwGrK9jeHeCg-AS_RPgg1RbfWKWO2AZDrkzTDind_rzLY7OasumalCXYmeGyp/s1600/7395085f-ce76-47fd-9736-65f3db579604-medium.jpeg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/6505417307092195892/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/6505417307092195892' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/6505417307092195892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/6505417307092195892'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/05/blog-post_21.html' title=''/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBWbuDSgksRX-JYC_tjxq_k-8JyBoguHKbOGbn-qv-WPd8HlYf_6jS7QQd0HKff6aeqwW6W_qolqNXGiGKwGrK9jeHeCg-AS_RPgg1RbfWKWO2AZDrkzTDind_rzLY7OasumalCXYmeGyp/s72-c/7395085f-ce76-47fd-9736-65f3db579604-medium.jpeg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-429858141871115506</id><published>2015-05-13T09:55:00.002+03:00</published><updated>2015-05-13T09:55:29.226+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fun"/><title type='text'></title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYh3YqvFmgn5n7HaXFMKZvGgahzUV-eHQL7ybdjHTSghYuCLLmgl5ItEiHxdv4c4_MOk25oy280k9z5e5-djDtcMHT3DJjwubf1rn24Hb3kFjVsd2kctItTF5tRICTfBEpsQ9w1WF05mha/s1600/atkritka_1359724954_249.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYh3YqvFmgn5n7HaXFMKZvGgahzUV-eHQL7ybdjHTSghYuCLLmgl5ItEiHxdv4c4_MOk25oy280k9z5e5-djDtcMHT3DJjwubf1rn24Hb3kFjVsd2kctItTF5tRICTfBEpsQ9w1WF05mha/s320/atkritka_1359724954_249.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgevfFHE-4t7BVZ5A3auNemgyByG4x6jnomzGAcmt6uqIy_ooQkfNBjYUBpIcp_MYJ6FjoN5RZM05kt8TRvrvGXFUXm15ynYFaQCDNf_ngPs5WLnKUFS9eSRyqFIhwQ3DDmowa9hCAaH1CY/s1600/atkritka_1368675549_825_m.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgevfFHE-4t7BVZ5A3auNemgyByG4x6jnomzGAcmt6uqIy_ooQkfNBjYUBpIcp_MYJ6FjoN5RZM05kt8TRvrvGXFUXm15ynYFaQCDNf_ngPs5WLnKUFS9eSRyqFIhwQ3DDmowa9hCAaH1CY/s320/atkritka_1368675549_825_m.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3dkA1Rp284Y7X5nJO_T99GTauOVpx0U0LioIlgukc2kVO526fZfCI_GxCVPz7yh7ePkhFs4HyqR8ebzzR89scrfOEHDm9wnDA1Uov1m10bL3t-VbojoIrL3wESvL8zbYSAqM8a7A74s4s/s1600/atkritka_1430304834_453_m.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3dkA1Rp284Y7X5nJO_T99GTauOVpx0U0LioIlgukc2kVO526fZfCI_GxCVPz7yh7ePkhFs4HyqR8ebzzR89scrfOEHDm9wnDA1Uov1m10bL3t-VbojoIrL3wESvL8zbYSAqM8a7A74s4s/s320/atkritka_1430304834_453_m.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/429858141871115506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/429858141871115506' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/429858141871115506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/429858141871115506'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/05/blog-post.html' title=''/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYh3YqvFmgn5n7HaXFMKZvGgahzUV-eHQL7ybdjHTSghYuCLLmgl5ItEiHxdv4c4_MOk25oy280k9z5e5-djDtcMHT3DJjwubf1rn24Hb3kFjVsd2kctItTF5tRICTfBEpsQ9w1WF05mha/s72-c/atkritka_1359724954_249.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-6995598025625924773</id><published>2015-05-05T22:46:00.000+03:00</published><updated>2015-05-05T22:46:03.748+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="combinatorics"/><category scheme="http://www.blogger.com/atom/ns#" term="math"/><title type='text'>У скольких целых чисел, лежащих в диапазоне от 1 до 1000, есть цифра 3?</title><content type='html'>&lt;p&gt;Сначала узнаем, сколько чисел не имеют 3 в своей записи. Для этого на каждое место ставим 9 цифр, не включающие 3 т.е. 9 * 9 * 9 = 729. Если всего чисел 1000, то ответ 1000 – 729 = 271.&lt;/p&gt;


&lt;a href=&quot;http://tproger.ru/problems/count-digit-3-in-numbers-from-1-to-1000/&quot;&gt;http://tproger.ru/problems/count-digit-3-in-numbers-from-1-to-1000/&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/6995598025625924773/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/6995598025625924773' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/6995598025625924773'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/6995598025625924773'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/05/1-1000-3.html' title='У скольких целых чисел, лежащих в диапазоне от 1 до 1000, есть цифра 3?'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-6536692325254226673</id><published>2015-04-29T16:08:00.001+03:00</published><updated>2015-04-29T16:11:32.465+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="perf-tools"/><category scheme="http://www.blogger.com/atom/ns#" term="performance"/><title type='text'>Linux Performance Analysis (perf-tools)</title><content type='html'>&lt;iframe src=&quot;//www.slideshare.net/slideshow/embed_code/key/JeF2NyUPEC0yUy&quot; width=&quot;625&quot; height=&quot;555&quot; frameborder=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; scrolling=&quot;no&quot; style=&quot;border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;&quot; allowfullscreen&gt; &lt;/iframe&gt; &lt;div style=&quot;margin-bottom:5px&quot;&gt; &lt;strong&gt; &lt;a href=&quot;//www.slideshare.net/brendangregg/linux-performance-analysis-new-tools-and-old-secrets&quot; title=&quot;Linux Performance Analysis: New Tools and Old Secrets&quot; target=&quot;_blank&quot;&gt;Linux Performance Analysis: New Tools and Old Secrets&lt;/a&gt; &lt;/strong&gt; from &lt;strong&gt;&lt;a href=&quot;//www.slideshare.net/brendangregg&quot; target=&quot;_blank&quot;&gt;Brendan Gregg&lt;/a&gt;&lt;/strong&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/6536692325254226673/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/6536692325254226673' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/6536692325254226673'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/6536692325254226673'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/04/linux-performance-analysis-perf-tools.html' title='Linux Performance Analysis (perf-tools)'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-3098962751580699526</id><published>2015-04-29T13:02:00.000+03:00</published><updated>2015-04-29T13:02:22.814+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="jit"/><title type='text'>JIT </title><content type='html'>JIT in Python via LLVM &lt;br /&gt;
&lt;a href=&quot;http://eli.thegreenplace.net/2015/building-and-using-llvmlite-a-basic-example/&quot;&gt;http://eli.thegreenplace.net/2015/building-and-using-llvmlite-a-basic-example/&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://eli.thegreenplace.net/2012/08/10/building-and-using-llvmpy-a-basic-example&quot;&gt;http://eli.thegreenplace.net/2012/08/10/building-and-using-llvmpy-a-basic-example&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://nullprogram.com/blog/2015/03/19/&quot;&gt;http://nullprogram.com/blog/2015/03/19/&lt;/a&gt;&amp;nbsp; A Basic Just-In-Time Compiler&lt;br /&gt;
&lt;a href=&quot;http://www.tedunangst.com/flak/post/now-or-never-exec&quot;&gt;http://www.tedunangst.com/flak/post/now-or-never-exec &lt;/a&gt;how to add PROT_EXEC on mmap</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/3098962751580699526/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/3098962751580699526' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/3098962751580699526'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/3098962751580699526'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/01/jit-in-python-via-llvm.html' title='JIT '/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-4602812998002499493</id><published>2015-04-29T12:55:00.002+03:00</published><updated>2015-04-29T12:55:27.362+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cffi"/><category scheme="http://www.blogger.com/atom/ns#" term="rust"/><title type='text'>Rust</title><content type='html'>&lt;a href=&quot;http://blog.rust-lang.org/2015/04/24/Rust-Once-Run-Everywhere.html&quot;&gt;http://blog.rust-lang.org/2015/04/24/Rust-Once-Run-Everywhere.html&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;https://www.youtube.com/watch?v=3CwJ0MH-4MA&quot;&gt;https://www.youtube.com/watch?v=3CwJ0MH-4MA&lt;/a&gt; Rust from Python via cffi</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/4602812998002499493/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/4602812998002499493' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/4602812998002499493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/4602812998002499493'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/04/rust.html' title='Rust'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-4605289887027952994</id><published>2015-04-28T15:37:00.002+03:00</published><updated>2015-04-28T15:37:42.081+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="fun"/><title type='text'></title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGwHmEJWAA42PmhlBlIMbaFa4PwsJ23hbJ1Ih2rGe2fDr-T5DJVG6nJ5ZPdsUG6AU3bWXiiVQyjDu3VfVwgg8W6TZNAqe66XxMCvqtnzD8icWk27jTGQlgHuPOr5mXWQwryEShEHL9QOO6/s1600/Strip-Error-reporting-650-finalenglish1.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGwHmEJWAA42PmhlBlIMbaFa4PwsJ23hbJ1Ih2rGe2fDr-T5DJVG6nJ5ZPdsUG6AU3bWXiiVQyjDu3VfVwgg8W6TZNAqe66XxMCvqtnzD8icWk27jTGQlgHuPOr5mXWQwryEShEHL9QOO6/s320/Strip-Error-reporting-650-finalenglish1.jpg&quot; height=&quot;380&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/4605289887027952994/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/4605289887027952994' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/4605289887027952994'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/4605289887027952994'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/04/blog-post.html' title=''/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGwHmEJWAA42PmhlBlIMbaFa4PwsJ23hbJ1Ih2rGe2fDr-T5DJVG6nJ5ZPdsUG6AU3bWXiiVQyjDu3VfVwgg8W6TZNAqe66XxMCvqtnzD8icWk27jTGQlgHuPOr5mXWQwryEShEHL9QOO6/s72-c/Strip-Error-reporting-650-finalenglish1.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6767956112988189355.post-4876996444097187938</id><published>2015-04-16T03:43:00.000+03:00</published><updated>2015-04-16T03:45:19.966+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="kernel"/><category scheme="http://www.blogger.com/atom/ns#" term="network"/><title type='text'> Library Operating System with Mainline Linux Network Stack - Hajime Tazaki</title><content type='html'>&lt;iframe src=&quot;//www.slideshare.net/slideshow/embed_code/key/ESM85i92Ei2YEX&quot; width=&quot;710&quot; height=&quot;620&quot; frameborder=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; scrolling=&quot;no&quot; style=&quot;border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;&quot; allowfullscreen&gt; &lt;/iframe&gt; &lt;div style=&quot;margin-bottom:5px&quot;&gt; &lt;strong&gt; &lt;a href=&quot;//www.slideshare.net/hajimetazaki/library-operating-system-for-linux-netdev01&quot; title=&quot;Library Operating System for Linux #netdev01&quot; target=&quot;_blank&quot;&gt;Library Operating System for Linux #netdev01&lt;/a&gt; &lt;/strong&gt; from &lt;strong&gt;&lt;a href=&quot;//www.slideshare.net/hajimetazaki&quot; target=&quot;_blank&quot;&gt;Hajime Tazaki&lt;/a&gt;&lt;/strong&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://django-notes.blogspot.com/feeds/4876996444097187938/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/6767956112988189355/4876996444097187938' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/4876996444097187938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6767956112988189355/posts/default/4876996444097187938'/><link rel='alternate' type='text/html' href='http://django-notes.blogspot.com/2015/04/library-operating-system-with-mainline.html' title=' Library Operating System with Mainline Linux Network Stack - Hajime Tazaki'/><author><name>Alexey Savanovich</name><uri>http://www.blogger.com/profile/10072589381757150843</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkZwmAHknrvpZWprRdx-IVz9pgK5JRB16LBZ2ErvQ1g2kXwlyOQ1-JEf8JzRP7Mc5Y_K6MlXajiuI5v-Lyg_bSlxJ9qAA55rRh8DsX1zpv_CR_x16umdwpL3dz439FDQ/s113/A.Savanovich.jpg'/></author><thr:total>0</thr:total></entry></feed>