<?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: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-344040556577458470</id><updated>2012-02-16T07:45:47.934-08:00</updated><category term='gsoc2010'/><category term='ipython-zmq ipythonzmq'/><category term='ipython zmq kernelmanager pyzmq gsoc ipython zmq'/><category term='gsoc 2010'/><category term='zmq'/><category term='python'/><category term='ipython'/><category term='pyzmq'/><category term='mid-term'/><title type='text'>ipython zmq</title><subtitle type='html'>IPython's execution in a command-line environment will be ported to a two process model using the ZeroMQ library for inter-process communication. This will:

- prevent an interpreter crash from destroying the user session,
- allow multiple clients to interact simultaneously with a single interpreter
- allow IPython to reuse code for local execution and distributed computing (DC)
- give us a path for Python3 support, since ZeroMQ supports Python3 while Twisted  does not.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>12</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-336260914958752792</id><published>2010-08-08T20:40:00.000-07:00</published><updated>2010-08-11T12:36:53.406-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ipython zmq kernelmanager pyzmq gsoc ipython zmq'/><title type='text'>Ipython Zmq Status</title><content type='html'>IPython currently has all the things proposed for GSoC and so many features that improved the functionality.&lt;br /&gt;The design was changed in a little features in Scipy conference 2010 at Austin TX to improve comunication's system; the idea was write a module that let comunication between various frontends in the same kernel, the madule was called kernelmanager.&lt;br /&gt;&lt;br /&gt;The work done during the project is summarized within these points:&lt;br /&gt;1) IPython was divided in a two process model.&lt;br /&gt;2) The two process model is using zeromq (pyzmq) for comunnication between frontend and kernel.&lt;br /&gt;3) The messages were&amp;nbsp;standardized&amp;nbsp;and transported under pyzmq using json.&lt;br /&gt;4) The frontend supports indentation and colors in outputs (Syntax highlighting).&lt;br /&gt;5) raw_input is captured.&lt;br /&gt;6) tab-completion and magic commands supported.&lt;br /&gt;7) IPython output "Out [1] :", subprocess outputs and stdout/stderr outputs also supported.&lt;br /&gt;8)  Kernelmanager support to comunication using pyzmq.&lt;br /&gt;9) Implemented codebreacker to indent code in terminal and get a block of code to send to kernel.&lt;br /&gt;10) Every method and funtion documented.&lt;br /&gt;11) Test files.&lt;br /&gt;12) Indexation of inputs like "In[#]" that was&amp;nbsp;implemented&amp;nbsp;creating a new request`s message type called prompt_request.&lt;br /&gt;13) support Crtl+C to stop proccess in kernel, sending signal SIGINT with the kernel's pid.&lt;br /&gt;the kernel's pid was gotten using a new request's message called pid_request.&lt;br /&gt;&lt;br /&gt;TODO:&lt;br /&gt;1) Improve testing.&lt;br /&gt;2) Improve the&amp;nbsp;multiuser&amp;nbsp;features.&lt;br /&gt;3) New message type called object_info_request that allows us to get object`s info from kernel.&lt;br /&gt;&lt;br /&gt;you can download and test the code from http://github.com/omazapa/ipython (see installation section)&lt;br /&gt;&lt;br /&gt;If any question or suggestion arise, please write me to andresete.chaos@gmail.com or write in ipython`s mailing lists.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-336260914958752792?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/336260914958752792/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/08/ipython-zmq-status.html#comment-form' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/336260914958752792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/336260914958752792'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/08/ipython-zmq-status.html' title='Ipython Zmq Status'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-8670788193958746613</id><published>2010-07-14T14:45:00.000-07:00</published><updated>2010-07-14T14:58:15.037-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zmq'/><category scheme='http://www.blogger.com/atom/ns#' term='ipython-zmq ipythonzmq'/><category scheme='http://www.blogger.com/atom/ns#' term='ipython'/><category scheme='http://www.blogger.com/atom/ns#' term='mid-term'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='gsoc 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='pyzmq'/><category scheme='http://www.blogger.com/atom/ns#' term='gsoc2010'/><title type='text'>IPython GSoC  Mid-Term Status</title><content type='html'>Hi all!&lt;br /&gt;this is the current status of ipython-zmq&lt;br /&gt;&lt;br /&gt;1) ipython was divided in a two process model&lt;br /&gt;2) the two process model is using zeromq (pyzmq) for comunnication between frontend and kernel&lt;br /&gt;3) the messages were standarized and trasported under pyzmq using json&lt;br /&gt;4) the frontend support indentation and colors in outputs (Syntax highlighting)&lt;br /&gt;5) raw_input is captured&lt;br /&gt;6) tab-completion and magic commands supported&lt;br /&gt;7) ipython output  "Out [1] :", subprocess outputs and stdout /stderr outputs also supported&lt;br /&gt;&lt;br /&gt;TODO:&lt;br /&gt;&lt;br /&gt;1) prompt indexation&lt;br /&gt;2) highlighting in tracebacks&lt;br /&gt;3) kernel and frontend magics (project specific magic commands)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-8670788193958746613?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/8670788193958746613/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/07/ipython-gsoc-mid-term-status.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/8670788193958746613'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/8670788193958746613'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/07/ipython-gsoc-mid-term-status.html' title='IPython GSoC  Mid-Term Status'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-3040554462219632963</id><published>2010-07-06T21:39:00.000-07:00</published><updated>2010-07-06T21:57:37.687-07:00</updated><title type='text'>ipython-zmq video tutorial</title><content type='html'>&lt;object width="400" height="400" class="BLOG_video_class" id="BLOG_video-7f139ca4d191118d" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v16.nonxt2.googlevideo.com/videoplayback?id%3D7f139ca4d191118d%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1332234423%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D4CF4CD0295C93EE7479C56391C9B5ADA9A8E5584.205A18B70727F19618F551A2980B15204767FF38%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D7f139ca4d191118d%26offsetms%3D5000%26itag%3Dw160%26sigh%3DQzw3UJaXsQVZ_HZYgVOgu6ztwws&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="400" height="400" bgcolor="#FFFFFF"flashvars="flvurl=http://v16.nonxt2.googlevideo.com/videoplayback?id%3D7f139ca4d191118d%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1332234423%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D4CF4CD0295C93EE7479C56391C9B5ADA9A8E5584.205A18B70727F19618F551A2980B15204767FF38%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D7f139ca4d191118d%26offsetms%3D5000%26itag%3Dw160%26sigh%3DQzw3UJaXsQVZ_HZYgVOgu6ztwws&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-3040554462219632963?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/3040554462219632963/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/07/ipython-zmq-video-tutorial.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/3040554462219632963'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/3040554462219632963'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/07/ipython-zmq-video-tutorial.html' title='ipython-zmq video tutorial'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-4556580229027252627</id><published>2010-07-05T14:00:00.000-07:00</published><updated>2010-07-05T16:36:06.650-07:00</updated><title type='text'>Testing  ipython zmq code</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Times New Roman';"&gt;&lt;span class="Apple-style-span" style="font-size: medium;"&gt;After installing deps and code from repositories you can run kernel and frontend this way:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;b&gt;Start an ipython kernel.&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;$python ipython/IPython/zmq/kernel.py&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Starting the kernel...&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;On: tcp://127.0.0.1:5555 tcp://127.0.0.1:5556&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Use Ctrl-\ (NOT Ctrl-C!) to terminate.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;b&gt;Start an ipython frontend.&lt;/b&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;$python ipython/IPython/zmq/frontend.py&lt;/div&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;In [1]:&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Running ipython code, tab completion and some magics are working fine.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;The next&amp;nbsp;step is to make all magics support and write our own magics to&amp;nbsp;these&amp;nbsp;kernel and frontend.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-4556580229027252627?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/4556580229027252627/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/07/testing-ipython-zmq-code.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/4556580229027252627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/4556580229027252627'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/07/testing-ipython-zmq-code.html' title='Testing  ipython zmq code'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-4279472381480989501</id><published>2010-04-22T07:34:00.000-07:00</published><updated>2010-07-06T12:02:22.877-07:00</updated><title type='text'>How to install Ipython-zmq code  ? (just for linux right now )</title><content type='html'>* c/c++ compiler (gcc)&lt;br /&gt;* git client&lt;br /&gt;* cython&lt;br /&gt;* uuid-dev&lt;br /&gt;* python-dev&lt;br /&gt;* autotools (automake - autoconf - libtool)&lt;br /&gt;* pkg-config&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;b&gt;install under debian/ubutu:&lt;/b&gt;&lt;br /&gt;&amp;nbsp;#apt-get install &amp;nbsp;git g++ cython uuid-dev python-dev automake autoconf libtool&lt;br /&gt;&amp;nbsp;# apt-get build-dep cython  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;install under redhat/fedora/OpenSuSE with yum:&lt;/b&gt;&lt;br /&gt;&amp;nbsp;#yum install &amp;nbsp;git g++ cython uuid-dev&amp;nbsp;automake autoconf libtool&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;b&gt;building&amp;nbsp; pyzmq:&lt;/b&gt;&lt;br /&gt;&amp;nbsp;* download zmq libraries  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $git clone git://github.com/sustrik/zeromq2.git&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp; then run&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $cd zeromq2&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $./autogen.sh&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt; &lt;/span&gt;&lt;span style="color: yellow;"&gt;&lt;i&gt;if you don`t have root permissions&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $./configure --prefix=your_favorite_installation_prefix&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $make&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $make install&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &lt;span style="color: yellow;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: blue;"&gt; &lt;span style="color: yellow;"&gt;if you have root permissions&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/b&gt;#./configure&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #make&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #make install&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NOTE:&lt;/b&gt; I suggest you install like root&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;download pyzmq code:&lt;/b&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $git clone&amp;nbsp; &lt;a href="http://github.com/ellisonbg/pyzmq.git"&gt;http://github.com/ellisonbg/pyzmq.git&lt;/a&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $cd pyzmq&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; edit setup.cfg&lt;br /&gt;&amp;nbsp;&amp;nbsp;  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;b&gt;example:&lt;/b&gt; setup.cfg&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt; &lt;/span&gt;&lt;span style="color: yellow;"&gt;&lt;i&gt;if you don`t have&amp;nbsp; root permissions&lt;/i&gt;&lt;/span&gt;  &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [build_ext]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Edit these to point to your installed zeromq library and header dirs.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; library_dirs = your_zeromq2_installation_prefix/lib&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; include_dirs = your_zeromq2_installation_prefix/include&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="color: yellow;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if you have installed zeromq2 with root permission and default configuration&lt;/div&gt;&lt;span style="color: blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;     &lt;/span&gt;[build_ext]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Edit these to point to your installed zeromq library and header dirs.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; library_dirs = /usr/local/lib&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; include_dirs = /usr/local/include&lt;br /&gt;&lt;div style="color: blue;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="color: black;"&gt;&lt;span style="color: black;"&gt;&lt;/span&gt; &lt;/div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt; &lt;/span&gt;&lt;span style="color: yellow;"&gt;&lt;i&gt;if you don`t have&amp;nbsp; root permissions&lt;/i&gt;&lt;/span&gt;  &lt;br /&gt;&lt;span style="color: black;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;/span&gt;$python setup.py&amp;nbsp; build&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; $python setup.py install --prefix=your_favorite_ installation_prefix&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="color: yellow;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; if you have root permissions&lt;/div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #python setup.py install  &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; more info to install pyzmq in&amp;nbsp;&lt;a href="http://www.zeromq.org/bindings:python"&gt;http://www.zeromq.org/bindings:python&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Installing IPythonZmq.&lt;br /&gt;&lt;br /&gt;Dowload with git&lt;br /&gt;$git clone http://github.com:omazapa/ipython.git&lt;br /&gt;&lt;div&gt;$cd ipython&lt;/div&gt;&lt;div&gt;$python setup.py build&lt;/div&gt;&lt;div&gt;like root&lt;/div&gt;&lt;div&gt;#python setupegg.py develop&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Done!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-4279472381480989501?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/4279472381480989501/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/how-to-test-ipython-zmq-code-just-under.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/4279472381480989501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/4279472381480989501'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/how-to-test-ipython-zmq-code-just-under.html' title='How to install Ipython-zmq code  ? (just for linux right now )'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-15161115871437297</id><published>2010-04-21T17:51:00.000-07:00</published><updated>2010-04-21T17:51:38.121-07:00</updated><title type='text'>Possible future directions</title><content type='html'>I think one of the possible directions is to write a complex system to  parallel processing with others modules like pympi, which let massive  processing load, in different kernels with a system client/server  comunication managed by zmq.&lt;br /&gt;At this moment, ipython has wrote a  system for parallel processing in mpi but using a twisted platform, the  idea is to update iptyhon to &amp;nbsp;be supported by python3, with twisted this  is no possible, so zeromq is the best way to do it.&lt;br /&gt;&lt;br /&gt;Other  feature zeromq has is the performance in data transmission and cython is  writing support to python 3 code&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-15161115871437297?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/15161115871437297/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/possible-future-directions.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/15161115871437297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/15161115871437297'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/possible-future-directions.html' title='Possible future directions'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-7735290363176627709</id><published>2010-04-12T18:25:00.001-07:00</published><updated>2010-04-12T18:25:26.485-07:00</updated><title type='text'>Porting IPython to a two process model using ZeroMQ</title><content type='html'>Abstract&lt;br /&gt;----------&lt;br /&gt;&lt;br /&gt;IPython's execution in a command-line environment will be ported to a two process model using the ZeroMQ library for inter-process communication. This will:&lt;br /&gt;&lt;br /&gt;- prevent an interpreter crash from destroying the user session,&lt;br /&gt;- allow multiple clients to interact simultaneously with a single interpreter&lt;br /&gt;- allow IPython to reuse code for local execution and distributed computing (DC)&lt;br /&gt;- give us a path for Python3 support, since ZeroMQ supports Python3 while Twisted (what we use today for DC) does not.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-7735290363176627709?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/7735290363176627709/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/porting-ipython-to-two-process-model_12.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/7735290363176627709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/7735290363176627709'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/porting-ipython-to-two-process-model_12.html' title='Porting IPython to a two process model using ZeroMQ'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-4266479716973014332</id><published>2010-04-12T18:24:00.003-07:00</published><updated>2010-04-12T18:24:55.478-07:00</updated><title type='text'>Deliverables</title><content type='html'>* A user-facing frontend that provides an environment like today's command-line IPython but running over two processes, with the code execution kernel living in a separate process and communicating with the frontend by using the ZeroMQ library.&lt;br /&gt;&lt;br /&gt;* A kernel that supports IPython's features (tab-completion, code introspection, exception reporting with different levels of detail, etc), but listening to requests over a network port, and returning results as JSON-formatted messages over the network.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-4266479716973014332?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/4266479716973014332/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/deliverables_12.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/4266479716973014332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/4266479716973014332'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/deliverables_12.html' title='Deliverables'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-7612885178786279521</id><published>2010-04-12T18:24:00.001-07:00</published><updated>2010-04-12T18:24:30.369-07:00</updated><title type='text'>Project description</title><content type='html'>Currently IPython provides a command-line client that executes all code in a single process, and a set of tools for distributed and parallel computing that execute code in multiple processes (possibly but not necessarily on different hosts), using the Twisted asynchronous framework for communication between nodes. For a number of reasons, it is desirable to unify the architecture of the local execution with that of distributed computing, since ultimately many of the underlying abstractions are similar and should be reused.  In particular, we would like to:&lt;br /&gt;&lt;br /&gt;- Have even for a single user a 2-process model, so that the environment where code is being input runs in a different process from that which executes the code. This would prevent a crash of the Python interpreter executing code (because of a segmentation fault in a compiled extension or an improper access to a C library via ctypes, for example) from destroying the user session.&lt;br /&gt;&lt;br /&gt;- Have the same kernel used for executing code locally be available over the network for distributed computing. Currently the Twisted-using IPython engines for distributed computing do not share any code with the command-line client, which means that many of the additional features of IPython (tab completion, object introspection, magic functions, etc) are not available while using the distributed computing system.  Once the regular command-line environment is ported to allowing such a 2-process model, this newly decoupled kernel could form the core of a distributed computing IPython engine and all capabilities would be available throughout the system.&lt;br /&gt;&lt;br /&gt;- Have a route to Python3 support. Twisted is a large and complex library that does currently not support Python3, and as indicated by the Twisted developers it may take a while before it is ported (http://stackoverflow.com/questions/172306/how-are-you-planning-on-handling-the-migration-to-python-3).  For IPython, this means that while we could port the command-line environment, a large swath of IPython would be left 2.x-only, a highly undesirable situation.  For this reason, the search for an alternative to Twisted has been active for a while, and recently we've identified the ZeroMQ (http://www.zeromq.org, zmq for short) library as a viable candidate. Zmq is a fast, simple messaging library written in C++, for which one of the IPython developers has written Python bindings using Cython (http://www.zeromq.org/bindings:python). Since Cython already knows how to generate Python3-compliant bindings with a simple command-line switch, zmq can be used with Python3 when needed.&lt;br /&gt;&lt;br /&gt;As part of the Zmq Python bindings, the IPython developers have already developed a simple prototype of such a two-process kernel/frontend system (details below). I propose to start from this example and port today's IPython code to operate in a similar manner. IPython's command-line program (the main 'ipython' script) executes both user interaction and the user's code in the same process. This project will thus require breaking up IPython into the parts that correspond to the kernel and the parts that are meant to interact with the user, and making these two components communicate over the network using zmq instead of accessing local attributes and methods of a single global object.&lt;br /&gt;&lt;br /&gt;Once this port is complete, the resulting tools will be the foundation (though as part of this proposal I do not expect to undertake either of these tasks) to allow the distributed computing parts of IPython to use the same code as the command-line client, and for the whole system to be ported to Python3.  So while I do not intend to tackle here the removal of Twisted and the unification of the local and distributed parts of IPython, my proposal is a necessary step before those are possible.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-7612885178786279521?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/7612885178786279521/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/project-description_12.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/7612885178786279521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/7612885178786279521'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/project-description_12.html' title='Project description'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-5942062910238454793</id><published>2010-04-12T18:23:00.002-07:00</published><updated>2010-04-12T18:37:58.005-07:00</updated><title type='text'>Project Details</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_6edtyznIF-Q/S8PKrEiUhnI/AAAAAAAAAQ0/AX9p4kq3ouQ/s1600/IPython.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;The following diagram illustrates the basic design:&lt;img border="0" height="223" src="http://2.bp.blogspot.com/_6edtyznIF-Q/S8PKrEiUhnI/AAAAAAAAAQ0/AX9p4kq3ouQ/s400/IPython.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;As part of the ZeroMQ bindings, the IPython developers have already developed a simple prototype example that provides a Python execution kernel (with none of IPython's code or features, just plain code execution) that listens on zmq sockets, and a frontend based on the InteractiveConsole class of the code.py module from the Python standard library. This example is capable of executing code, propagating errors, performing tab-completion over the network and having multiple frontends connect and disconnect simultaneously to a single kernel, with all inputs and outputs being made available to all connected clients (thanks to zqm's PUB sockets that provide multicasting capabilities for the kernel and to which the frontends subscribe via a SUB socket).&lt;br /&gt;&lt;br /&gt;** we have all example code in&lt;br /&gt;&lt;br /&gt;* http://github.com/ellisonbg/pyzmq/blob/completer/examples/kernel/kernel.py&lt;br /&gt;&lt;br /&gt;* http://github.com/ellisonbg/pyzmq/blob/completer/examples/kernel/completer.py&lt;br /&gt;&lt;br /&gt;* http://github.com/fperez/pyzmq/blob/completer/examples/kernel/frontend.py&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;All of this code already works, and can be seen in this example directory from the ZMQ python bindings:&lt;br /&gt;&lt;br /&gt;* http://github.com/ellisonbg/pyzmq/blob/completer/examples/kernel&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Based on this work, I expect to write a stable system for ipython kernel with ipython standards, error control,crash recovery system and general configuration options, also standardize defaults ports or auth system for remote connection etc.&lt;br /&gt;&lt;br /&gt;The crash recovery system, is a ipython kernel module for when it fails unexpectedly, you can retrieve the information from the section, this will be based on a log and a lock file to indicate when the kernel was not closed in a proper way.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-5942062910238454793?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/5942062910238454793/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/project-details_12.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/5942062910238454793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/5942062910238454793'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/project-details_12.html' title='Project Details'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_6edtyznIF-Q/S8PKrEiUhnI/AAAAAAAAAQ0/AX9p4kq3ouQ/s72-c/IPython.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-3063289733831445498</id><published>2010-04-12T18:23:00.000-07:00</published><updated>2010-04-12T18:23:06.240-07:00</updated><title type='text'>Schedule</title><content type='html'>All work done will be tested and documented as it progresses, not after the fact.&lt;br /&gt;&lt;br /&gt;* week 1,2&lt;br /&gt;&lt;br /&gt;  * Break up today's IPython monolithic object into kernel/frontend objects, while remaining in-process.  This is the first step of the transition to a two process model but it will allow me to retain a functioning IPython during the transition.  These objects will still make local python method calls and attribute accesses.&lt;br /&gt;  * Identify all the APIs that will require communication between kernel and frontend.&lt;br /&gt;&lt;br /&gt;* week 3,4&lt;br /&gt;&lt;br /&gt;  * Modify the kernel/frontend objects to use messaging for all cross-object communication. This will be done using a local mock transport (no zmq dependency yet) but using JSON messages.&lt;br /&gt;&lt;br /&gt;* week 5, 6&lt;br /&gt;&lt;br /&gt;  * Move kernel and client to separate processes and add the zmq transport to move the messages across the process boundary.&lt;br /&gt;&lt;br /&gt;* week 7, 8&lt;br /&gt;&lt;br /&gt;  * Implement and test tab-completion and function tooltips across the process boundary, with support for multiple simultaneous clients. This is particularly tricky because these are asynchronous events that can happen while the kernel is busy executing code, so timeouts and multi-client support must be carefully thought out.&lt;br /&gt;&lt;br /&gt;* week 9, 10&lt;br /&gt;&lt;br /&gt;    * Implement the configuration of kernel/frontend on the IPython configuration description system (which already exists).&lt;br /&gt;    * Slack time if any of the previous tasks took longer than originally planned.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-3063289733831445498?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/3063289733831445498/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/schedule_12.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/3063289733831445498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/3063289733831445498'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/schedule_12.html' title='Schedule'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-344040556577458470.post-4263193931658012062</id><published>2010-04-12T18:22:00.001-07:00</published><updated>2010-07-05T11:55:17.294-07:00</updated><title type='text'>Personal Information</title><content type='html'>I am a student of computer science at Universidad de Antioquia, Medellin - Colombia, and a system administrator in a research group, I have 6 years of experience as a programmer in different programming languages and in different areas of computing and I am passionate about GNU / Linux and open source community.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*Ipython and Me*&lt;br /&gt;&lt;br /&gt;I really like ipython and projects that need to improve it, so I want to be part of this process of development and growth.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;**Contact Info**&lt;br /&gt;&lt;br /&gt;* e-mail: andresete.chaos@gmail.com&lt;br /&gt;* website: http://ipython.scipy.org/moin/GSoC2010/IPythonZmq&amp;nbsp; for omore info &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;**Thanks!**&lt;br /&gt;-----------&lt;br /&gt;* My loved family and girlfriend that now also part of.&lt;br /&gt;&lt;br /&gt;* Fernando Perez for making me part of this community and spend their time and patience to guide me.&lt;br /&gt;&lt;br /&gt;* To Diego Restrepo and Jorge Zuluaga for supporting me in my education and my training as a scientist.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/344040556577458470-4263193931658012062?l=ipythonzmq.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ipythonzmq.blogspot.com/feeds/4263193931658012062/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/personal-information_12.html#comment-form' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/4263193931658012062'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/344040556577458470/posts/default/4263193931658012062'/><link rel='alternate' type='text/html' href='http://ipythonzmq.blogspot.com/2010/04/personal-information_12.html' title='Personal Information'/><author><name>omazapa</name><uri>http://www.blogger.com/profile/10838433831408170581</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/-Kg-0p_SepZU/TZSDqZ43jsI/AAAAAAAAASw/BZMKhIlpTBI/s220/FotoOmar.jpeg'/></author><thr:total>0</thr:total></entry></feed>
