<?xml version='1.0' encoding='utf-8' ?>
<iCalendar xmlns:pentabarf='http://pentabarf.org' xmlns:xCal='urn:ietf:params:xml:ns:xcal'>
    <vcalendar>
        <version>2.0</version>
        <prodid>-//Pentabarf//Schedule//EN</prodid>
        <x-wr-caldesc></x-wr-caldesc>
        <x-wr-calname></x-wr-calname>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>SNHCSQ@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-SNHCSQ</pentabarf:event-slug>
            <pentabarf:title>PyPI: Past, Present and Future</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T094500</dtstart>
            <dtend>20190603T103000</dtend>
            <duration>0.04500</duration>
            <summary>PyPI: Past, Present and Future</summary>
            <description>The Python Package Index (PyPI) is the principal repository of software packages for the Python programming language.

In April 2019, PyPI served 17 billion HTTP requests, with almost 2 million people visiting pypi.org via their web browser. The Python community depends on PyPI for the ongoing functioning of the entire Python ecosystem.

In this talk, Nicole will dig into PyPI&#x27;s history, explore recent improvements, and pose questions about the future of the service.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>keynote - short</category>
            <url>https://cfp.pycon.org.il/conference/talk/SNHCSQ/</url>
            <location>Main Hall</location>
            
            <attendee>Nicole Harris</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>JWRKG9@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-JWRKG9</pentabarf:event-slug>
            <pentabarf:title>Diabolical Python</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T103000</dtstart>
            <dtend>20190603T105500</dtend>
            <duration>0.02500</duration>
            <summary>Diabolical Python</summary>
            <description>Python is an incredibly powerful language, but just how powerful it is can wrinkle your brain.
3 simple enough ideas — ordered class attributes, c-like enums, and methods with an implicit self — are implemented with ever crazier (and ever more powerful) tricks, that shouldn&#x27;t be used under any circumstances (and are therefore completely useless. In fact, you probably shouldn&#x27;t come).

Seriously though, I&#x27;ll let the code speak for itself:

&lt;pre&gt;@ordered()
class A:
    x = 1
    y = 2
    z = 3
assert A._order == [&#x27;x&#x27;, &#x27;y&#x27;, &#x27;z&#x27;] # In Python 2.7, too!

@cenum()
class A:
    a
    b
    c = 10
    d
assert A.a == 0
assert A.b == 1
assert A.c == 10
assert A.d == 11

@selfless
class A:
    def __init__(x):
        self.x = x
    def f():
        return self.x + 1
a = A(1)
assert a.x == 1
assert a.f() == 2&lt;/pre&gt;

If you want to find out how this is possible — and learn a few things about tracers, metaclasses, frames and code objects along the way — this talk is for you.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/JWRKG9/</url>
            <location>Main Hall</location>
            
            <attendee>Dan Gittik</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>YQ9GTM@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-YQ9GTM</pentabarf:event-slug>
            <pentabarf:title>Python Project Productionization</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T110000</dtstart>
            <dtend>20190603T114000</dtend>
            <duration>0.04000</duration>
            <summary>Python Project Productionization</summary>
            <description>Contrary to the Zen of Python, python projects don&#x27;t have one **obvious** way of Productionization, but for a specific use, there should be one **preferred** way.

This talk will try to cover main topics in a Python project life-cycle as they relate to Productionization:

- Base project structure
- Environment awareness vs. agnosticism
- Packaging formats
- Versioning practices (PEP440 vs. SemVer 2.0.0)
- CI practices
- Public and Private distributions
- Dependency managers
- Some nit-picking and niche issues</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (long - limited number of slots)</category>
            <url>https://cfp.pycon.org.il/conference/talk/YQ9GTM/</url>
            <location>Main Hall</location>
            
            <attendee>Yehuda Deutsch</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>M3RXZG@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-M3RXZG</pentabarf:event-slug>
            <pentabarf:title>&quot;Is it safe ?&quot; - python code security tools</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T114500</dtstart>
            <dtend>20190603T121000</dtend>
            <duration>0.02500</duration>
            <summary>&quot;Is it safe ?&quot; - python code security tools</summary>
            <description>When asked about our python code &quot;Is it safe ?&quot;, we may use scanning tools (commercial and open source) to give a quantified answer, both for our code and external modules.
We will follow regulatory and production use cases, with overview of available commercial tools, and review the &quot;Howto&quot; use of open source scan tools.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/M3RXZG/</url>
            <location>Main Hall</location>
            
            <attendee>Yehuda Lavy</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>ARYT79@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-ARYT79</pentabarf:event-slug>
            <pentabarf:title>Teaching Thousands Of CPUs How To Read</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T121500</dtstart>
            <dtend>20190603T124000</dtend>
            <duration>0.02500</duration>
            <summary>Teaching Thousands Of CPUs How To Read</summary>
            <description>Running NLP (Natural Language Processing) and language based machine learning models can be time and resource consuming. For us, it&#x27;s part of our daily workflow to run new models and new algorithms on data flows consisting of hundreds of thousands of documents. 
Since each of the documents we analyze can be about 50 pages long our usual use case involves analyzing 5-10 million pages of fine print financial text. With our legacy system that is based on Java 8 code running on docker containers it can take between 5 hours to 5 days to finish one analysis cycle depending on the complexity of what we&#x27;re running. 
4 months ago we started two major evolutions at Amenity - one for moving our entire ETL (Extract Transform Load) process to run on serverless infrastructure using python via AWS lambdas, Kinesis streams, and DynamoDB. The other was to rewrite our NLP engines in python and cython so that they could run easily on AWS Lambda functions. The results are thousands of CPUs waking up in a matter of several seconds and doing extremely efficient and accurate ETL and NLP work finishing work loads between x10 to x100 faster than we used to. As a bonus we&#x27;ve got a more efficient team working in Python in a CI/CD environment, and our cloud costs reduced. 
In the talk we&#x27;ll go through the decision process of moving to python, cython, and serverless, how our architecture shifted and evolved over time, and how we plan to solve our next major challenge - a billion articles analyzed in less than an hour!</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/ARYT79/</url>
            <location>Main Hall</location>
            
            <attendee>Roy Penn</attendee>
            
            <attendee>Uri Tsemach</attendee>
            
            <attendee>Moshe Hazoom</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>78L3EB@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-78L3EB</pentabarf:event-slug>
            <pentabarf:title>Descriptors -  Supercharge Your Dot</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T140000</dtstart>
            <dtend>20190603T142500</dtend>
            <duration>0.02500</duration>
            <summary>Descriptors -  Supercharge Your Dot</summary>
            <description>Descriptors are a less know but very powerful tool. In this talk we&#x27;ll recap how the dot operators (getattr) work in Python. See what descriptors are and how you can use them to implement things like validators and even the built in properties.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/78L3EB/</url>
            <location>Main Hall</location>
            
            <attendee>Miki Tebeka</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>C83QGZ@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-C83QGZ</pentabarf:event-slug>
            <pentabarf:title>Data Classes in Python: Why They&#x27;re Great + Examples Using attrs and dataclasses</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T143000</dtstart>
            <dtend>20190603T145500</dtend>
            <duration>0.02500</duration>
            <summary>Data Classes in Python: Why They&#x27;re Great + Examples Using attrs and dataclasses</summary>
            <description>Data classes are a common and useful design pattern, but they are much less popular in modern dynamic languages such as Python and Javascript. However, as codebases and developer teams grow, the other common alternatives, such as using plain native objects (e.g. lists and dicts), often become a liability.

A major reason for not using data classes is that writing them introduces quite a bit of boilerplate code, which is cumbersome and often considered &quot;unpythonic&quot;. Lately, the _attrs_ library has gained popularity as a good way to write data classes with very little boilerplate. Doing so gives additional benefits, such as easily adding validations and user-friendly textual representations.

In the most recent release of Python, version 3.7, a new _dataclasses_ library was added to the standard library. Inspired by _attrs_, it makes using data classes in Python easier than ever, without even the cost of an added dependency.

After this talk, participants will have a good idea of when data classes should be used, and have all of the knowledge and understanding needed to implement them well.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/C83QGZ/</url>
            <location>Main Hall</location>
            
            <attendee>Tal Einat</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>LKCTEP@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-LKCTEP</pentabarf:event-slug>
            <pentabarf:title>Logging Like a Pro - The Stuff They Don’t Tell You</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T153000</dtstart>
            <dtend>20190603T155500</dtend>
            <duration>0.02500</duration>
            <summary>Logging Like a Pro - The Stuff They Don’t Tell You</summary>
            <description>Logs. We all use them, we all need them, but most people know very little and pay very little attention to setting them up correctly. It’s common to see people going on about stuff like choosing the right DB or web framework, while all along, choosing the right logging solution, setting up your log handlers and making sure they are collected properly is often overlooked.
In this talk, i will walk you through the secret lives of loggers, log handlers, and compare different logging solutions and approaches.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/LKCTEP/</url>
            <location>Main Hall</location>
            
            <attendee>David Bordeynik</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>KNXLY3@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-KNXLY3</pentabarf:event-slug>
            <pentabarf:title>Parallel computing and Concurrency</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T160000</dtstart>
            <dtend>20190603T162500</dtend>
            <duration>0.02500</duration>
            <summary>Parallel computing and Concurrency</summary>
            <description>In the last few years I had to run task currently. In some cases the tasks were running on the same machine, in some case I had tasks running on different machines. I want to share with you the apis, pattern and technologies that I found to do these task. 

In particular I will talk about:

1. Python *executor* objects
1. Python *asyncio* library
1. 3rd parties for parallel computing (numpy)
1. Dask

My talk will be based on jupyter notebook and I will try to provide as much examples as possible</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/KNXLY3/</url>
            <location>Main Hall</location>
            
            <attendee>Guy Doulberg</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>YBJW7T@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-YBJW7T</pentabarf:event-slug>
            <pentabarf:title>Hacking Around Enumeration</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T163000</dtstart>
            <dtend>20190603T165500</dtend>
            <duration>0.02500</duration>
            <summary>Hacking Around Enumeration</summary>
            <description>Presentation of usage of enumeration implementation by wrapping *collections.namedtuple* .
Demonstrate advantages of proposal versus standard *enum* APIs:
* Less verbose
* Compatible with built-in types
* Collect constant objects - e.g., string literals - into a single container
* As above - with conversion, e.g. - to *pathlib.path*
* Simple processing of nested JSONs - one-stop JSON object creation
* One-stop loader for configuration files 
* Automatic generation of sequences - e.g., KB, MB, GB, ...</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/YBJW7T/</url>
            <location>Main Hall</location>
            
            <attendee>Mark Geyzer</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>CEXDYF@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-CEXDYF</pentabarf:event-slug>
            <pentabarf:title>Beautiful {Automation} System Tests using Pytest</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T103000</dtstart>
            <dtend>20190603T105500</dtend>
            <duration>0.02500</duration>
            <summary>Beautiful {Automation} System Tests using Pytest</summary>
            <description>Writing System Tests is challenging. It requires the tested system to exposes a proper API/SDK, a test environment that is able to deploy the system, a testing tool/framework that runs and serves the tests and lastly the tests themselves.
This talk will focus on pytest as the test framework and how tests should be written with it.
We will give real-life examples from oVirt System Tests.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/CEXDYF/</url>
            <location>Hall 3</location>
            
            <attendee>Edward Haas</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>FJRTML@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-FJRTML</pentabarf:event-slug>
            <pentabarf:title>Understanding Python’s Debugging Internals</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T110000</dtstart>
            <dtend>20190603T114000</dtend>
            <duration>0.04000</duration>
            <summary>Understanding Python’s Debugging Internals</summary>
            <description>Knowing your enemies is as important as knowing your friends. Understanding your debugger is a little of both. Have you ever wondered how Python debugging looks on the inside? On our journey to building a Python debugger, we learned a lot about its internals, quirks and more.

During this session, we’ll share how debugging actually works in Python. We’ll discuss the differences between CPython and PyPy interpreters, explain the underlying debugging mechanism and show you how to utilize this knowledge at work and up your watercooler talk game.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (long - limited number of slots)</category>
            <url>https://cfp.pycon.org.il/conference/talk/FJRTML/</url>
            <location>Hall 3</location>
            
            <attendee>Liran Haimovitch</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>R7KYNS@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-R7KYNS</pentabarf:event-slug>
            <pentabarf:title>Fixtures and Test Doubles in Pytest</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T114500</dtstart>
            <dtend>20190603T121000</dtend>
            <duration>0.02500</duration>
            <summary>Fixtures and Test Doubles in Pytest</summary>
            <description>In this presentation will have a quick view on what are fixtures and how to use
them in Pytest.

We&#x27;ll also look at Mocks, Spies, Stubs, Fakes, and Dummies that are all various types
of Test Doubles. We&#x27;ll see a number of use-cases and implementations.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/R7KYNS/</url>
            <location>Hall 3</location>
            
            <attendee>Gabor Szabo</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>SDEAGH@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-SDEAGH</pentabarf:event-slug>
            <pentabarf:title>Root Cause Analysis with eBPF &amp; Python</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T121500</dtstart>
            <dtend>20190603T124000</dtend>
            <duration>0.02500</duration>
            <summary>Root Cause Analysis with eBPF &amp; Python</summary>
            <description>With the introduction of eBPF, a safe and fast mini-VM into the Linux kernel, writing a kernel module in C is no longer a requirement for doing many of the things we often want to do in kernel mode, such as gathering and analyzing performance metrics.

In this session we present the eBPF technology and how it can be used with the BPF Compiler Collection (BCC) Python library. Furthermore, we will talk about kernel and user level tracepoints which can be uses to meticulously monitor an application in a safe manner.

We also give a glimpse at some exciting and innovative usages of the eBPF technology. The session will end with an overview of the key advantages and disadvantages of this technology.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/SDEAGH/</url>
            <location>Hall 3</location>
            
            <attendee>Ido Ben-Yair</attendee>
            
            <attendee>Pavel Rogovoy</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>LEDK9S@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-LEDK9S</pentabarf:event-slug>
            <pentabarf:title>Real world Graphene: lessons learned from building a GraphQL API on top of a large Django project</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T140000</dtstart>
            <dtend>20190603T142500</dtend>
            <duration>0.02500</duration>
            <summary>Real world Graphene: lessons learned from building a GraphQL API on top of a large Django project</summary>
            <description>Graphene is currently the most popular framework for building GraphQL in Python and it&#x27;s also an obvious choice for many people who decide on adding a GraphQL layer to their Django applications. After using it for over a year we&#x27;ve successfully built an API with about 50 queries and over 100 mutations on top of existing Django project (Saleor), but we&#x27;ve also learned many hard lessons and discovered shortcomings of the framework that we had to overcome.

In this talk, I&#x27;d like to show practical tips on some of the most common problems that a Django developer has to face to build an optimized and maintainable API with Graphene e.g.:

- using useful abstractions to build queries and mutations faster
- optimizing database queries in a graph
- structuring a large Graphene project
- unified error handling

Apart from that, I&#x27;d like to bring up a few limitations of the framework that we didn&#x27;t know about before we used it. Finally, I&#x27;d like to summarize with speaking about the most important benefits that adoption of GraphQL brings to modern web applications development - both for backend and frontend.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/LEDK9S/</url>
            <location>Hall 3</location>
            
            <attendee>Marcin Gębala</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>8VCUDU@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-8VCUDU</pentabarf:event-slug>
            <pentabarf:title>Pipenv - The Python Companion You Wish You Always Had</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T143000</dtstart>
            <dtend>20190603T145500</dtend>
            <duration>0.02500</duration>
            <summary>Pipenv - The Python Companion You Wish You Always Had</summary>
            <description>&#x27;Import Error: No module named X&#x27;. Sounds familiar? Probably all too familiar for most of you. Nearly every time you share pieces of code or send programs for remote execution, you will encounter this message. After all, we&#x27;re humans and we don&#x27;t always remember to update the requirements.txt file when installing a new package. So code may work perfectly on one machine, but fails to work on a different machine.

Pipenv to the rescue! With Pipenv, now you can manage your environment and the configuration using the same command. Each time you install a package using Pipenv, a configuration file is updated automatically, and it can then be used to set an environment on a different machine in a reliable manner.

In this talk we will introduce you to Pipenv, the problems it can help you solve, how to use it properly, and caveats from our personal experience.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/8VCUDU/</url>
            <location>Hall 3</location>
            
            <attendee>Avi Aminov</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>78LBFU@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-78LBFU</pentabarf:event-slug>
            <pentabarf:title>When Deep Learning meets Production</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T153000</dtstart>
            <dtend>20190603T155500</dtend>
            <duration>0.02500</duration>
            <summary>When Deep Learning meets Production</summary>
            <description>*Update*: Slides available at http://bit.ly/317Dpqe

One untalked merit of the Deep Learning revolution is the dramatic change in how we build Software; the old days of a developer re-implementing the algorithmic sketch are long gone, as frameworks like TensorFlow reduce the distance from a theoretical paper to production to nearly zero.  

But is it without a price? What happens when the requirements changes? How can new features be added without requiring to train a new model? How can we continuously improve our DL algorithms without requiring SW changes? 

In this talk I’ll present a practical interface which allows continuous development of both your Python application, and your Deep Learning models. We’ll walk through the different trade-offs, and how changes can be introduced on both sides, while keeping your system live in production.

* talk [slides](https://slides.com/nadavgoldin-1/when-deep-learning-meets-production-1#/)
* watch [video](https://www.youtube.com/watch?v=bbF3ARmmqWQ&amp;list=PLnOlTVPC-yFy982ETpXCbkpm-9dVt3S4F&amp;index=7)</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/78LBFU/</url>
            <location>Hall 3</location>
            
            <attendee>Nadav Goldin</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>HKU9VP@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-HKU9VP</pentabarf:event-slug>
            <pentabarf:title>Title: Settling new planets - adding Ansible modules and plugins</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T160000</dtstart>
            <dtend>20190603T162500</dtend>
            <duration>0.02500</duration>
            <summary>Title: Settling new planets - adding Ansible modules and plugins</summary>
            <description>Ansible is a popular tool that lets one use a simple YAML-based syntax to chain together a large number of built-in modules in order to create automated system configuration processes for a wide variety of systems. 
Being a flexible tool, Ansible is seeing increasing use for other automation tasks such as building software and running automated tests.

Ansible includes a large number of built-in modules and plugins that allow for interacting with many different tools and services, but sometimes it is not enough. Luckily we can use Python to extend Ansible and add any functionality we might need.

In this talk we will learn about the different kinds of modules and plugins Ansible has and how to use Python to implement the most common kinds.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/HKU9VP/</url>
            <location>Hall 3</location>
            
            <attendee>Barak Korren</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>XWTX8C@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-XWTX8C</pentabarf:event-slug>
            <pentabarf:title>Rust is the next Python FFI</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T163000</dtstart>
            <dtend>20190603T165500</dtend>
            <duration>0.02500</duration>
            <summary>Rust is the next Python FFI</summary>
            <description>Rust is getting popular and ranked as the most loved language of 2019 for the 4th year in a row, promising safety AND performance.

#### Agenda:

* Reminder - Python FFI

* Why Rust is Awesome?

* Rust Example

* Comparing Rust to C

* Packaging: Rust Crate -&gt; Python Package in 60 Sec</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/XWTX8C/</url>
            <location>Hall 3</location>
            
            <attendee>Shmuel Amar</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>NM7L77@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-NM7L77</pentabarf:event-slug>
            <pentabarf:title>NLP on legal contracts</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T103000</dtstart>
            <dtend>20190603T105500</dtend>
            <duration>0.02500</duration>
            <summary>NLP on legal contracts</summary>
            <description>Legal documents are known to be obscure, repititive and overly-complicated.
In this talk we would cover our work at BestPractix, and demonstrate how the structure of legal contracts can be used for various tasks.
We would cover: (0) Data annotation hacks (1) fast clause and contract classification (2) Identifying defined terms (3) Applying deep learning to learn style.

* talk [slides](https://docs.google.com/presentation/d/1CvtqIp1O1hd4ISlXVkDBzW9J_oO-99zv-4HssX-doos/edit?usp=drivesdk)
* watch [video](https://www.youtube.com/watch?v=7gvcNjBm6yI&amp;list=PLnOlTVPC-yFzCfdkO4R_-NTo20IQEBzqy&amp;index=1)</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/NM7L77/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Uri Goren</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>MXSNX8@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-MXSNX8</pentabarf:event-slug>
            <pentabarf:title>Beyond Word Embeddings The Future of Semantic Representation</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T110000</dtstart>
            <dtend>20190603T114000</dtend>
            <duration>0.04000</duration>
            <summary>Beyond Word Embeddings The Future of Semantic Representation</summary>
            <description>Since the advent of word2vec, word embeddings have become a go-to method for encapsulating distributional semantics in NLP applications. This presentation will review the strengths and weaknesses of using pre-trained word embeddings, and demonstrate how to incorporate more complex semantic representation schemes such as Semantic Role Labeling, Abstract Meaning Representation and Semantic Dependency Parsing into your applications.

* talk [slides](https://www.slideshare.net/AaronAriBornstein/pyconil-beyond-word-embeddings-slides)
* watch [video](https://www.youtube.com/watch?v=qCUXUvRiU1w&amp;list=PLnOlTVPC-yFzCfdkO4R_-NTo20IQEBzqy&amp;index=2)</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (long - limited number of slots)</category>
            <url>https://cfp.pycon.org.il/conference/talk/MXSNX8/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Ari Bornstein</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>N8WHJL@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-N8WHJL</pentabarf:event-slug>
            <pentabarf:title>Standardizing Clinical Data with Python</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T114500</dtstart>
            <dtend>20190603T121000</dtend>
            <duration>0.02500</duration>
            <summary>Standardizing Clinical Data with Python</summary>
            <description>This is joint work with Joshua Schertz

ClinicalTrials.Gov is  the database where clinical trial data from all over the world is registered. Today some clinical trials are required to report their finding in this database according to U.S. law. Today this database holds over 300,000 clinical trials with over 10% with numeric results. However, since many entities are entering data into this fast growing database, the data is not standardized. Specifically, numerical data cannot be comprehended since the units are not standardized. There are over 23K different units detected from this database in 2019 - many of those units are similar only written differently.  This talk will discuss how we use python tools to 1) process and index the data, 2) find similar units using NLP and machine learning, 3) create a web site to support user mapping of those units. We created ClinicalUnitMapping.com to support the standardization effort of those units. New elements of this presentation will discuss how units from existing medical standards such as UCUM, RTMMS , and CDISC are incorporated in the python processing pipeline. The intention is to create a unit standard that will be able to map all units reported by clinical trials. With such a database, the data in this clinical trials database would become machine comprehensible.

### [CLICK ON THIS TEXT TO ACCESS THE PRESENTATION](https://jacob-barhak.github.io/Presentation_PyConIsrael2019.html )</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/N8WHJL/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Jacob Barhak</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>LKCH93@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-LKCH93</pentabarf:event-slug>
            <pentabarf:title>When the power of &quot;Where&quot; meets the power of &quot;Share&quot;</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T121500</dtstart>
            <dtend>20190603T124000</dtend>
            <duration>0.02500</duration>
            <summary>When the power of &quot;Where&quot; meets the power of &quot;Share&quot;</summary>
            <description>In many companies and organizations, location data is a part of the day to day work and part of the important data that the organization uses.
Location data comes in many different forms and sources. It can be GPS data, address data, list of coordinates, etc.
It can also come in various formats; GPX, SHP, KML, GeoJson, etc.
In order to work on or analyze the data, the best way is to use a GIS application, my suggestion is to use QGIS.
QGIS is a free and open-source cross-platform desktop geographic information system (GIS) application that supports viewing, editing, and analysis of geospatial data.

To improve your work in QGIS you can write scripts that can run in QGIS as python processing tools. in my presentation, I will show how to write scripts to integrate the location data from different sources to QGIS or how to share your location data from QGIS to other workspaces.

For example, I will show how to use Google Sheets API as a data source or how to create HTML pages from QGIS to share your data with the python scripts. I will use some python packages like Pandas, Request, etc.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/LKCH93/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Yehuda Horn</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>ZPQDHC@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-ZPQDHC</pentabarf:event-slug>
            <pentabarf:title>Numpy: what has changed and what is going to change?</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T140000</dtstart>
            <dtend>20190603T142500</dtend>
            <duration>0.02500</duration>
            <summary>Numpy: what has changed and what is going to change?</summary>
            <description>For the past year I have been one of three full-time NumPy contributor paid for by a non-profit organization. We have defined a roadmap, added new interfaces to the package, tightened up some of the APIs, improved performance, and merged a major refactor of the random module. 

Why this important, what else is yet to come, and how will this affect you, the end-user.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/ZPQDHC/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Matti Picus</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>V78SQT@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-V78SQT</pentabarf:event-slug>
            <pentabarf:title>Model explainability</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T143000</dtstart>
            <dtend>20190603T145500</dtend>
            <duration>0.02500</duration>
            <summary>Model explainability</summary>
            <description>ML-based models are becoming prevalent and affect more and more aspects of our lives. As we rely on models to approve loans, decide whether to hire someone or receive medical treatment, we need to understand why and how the model generates its predictions. 
What is model explainability? How can we interpret models?
SHAP library 
- How to install
- How to generate a global explanation
- How to generate a local explanation
- Visualizations</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/V78SQT/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Idan Angel</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>SV7XAD@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-SV7XAD</pentabarf:event-slug>
            <pentabarf:title>Automation of feature engineering: pros and cons</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T153000</dtstart>
            <dtend>20190603T155500</dtend>
            <duration>0.02500</duration>
            <summary>Automation of feature engineering: pros and cons</summary>
            <description>Data scientists spend over 60% of their time getting familiar with data, understanding features and the relationships between them, and ultimately creating new features from the data. This process is called feature engineering. It is a fundamental step before using predictive models and directly affects the predictive power of a model.

Traditional feature engineering is often described as an art: it requires both domain knowledge and data manipulation skills. The process is problem-dependent and might be biased by personal skills, loss of patience during data analysis, and many other factors which depends on the personality of the data scientist and prior experience in the field.
Recently it has been proposed that making feature engineering an automated process would 
significantly reduce time investment in this early crucial step of modeling. In addition it will be repeatable, more robust and creative.

Featuretools is an open source automated feature engineering library that was created by the developers at Feature Labs.
In my talk I will present the Featuretools library, its concepts and functions. I will address the very important question - to which extent can feature engineering be completely automated? I will discuss different scenarios presenting pros and cons. Finally, we will implement auto feature engineering and explore code examples.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/SV7XAD/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Bitya Neuhof</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>DNLWQC@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-DNLWQC</pentabarf:event-slug>
            <pentabarf:title>Social Network Analysis  -  From Graph Theory to Applications with Python</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T160000</dtstart>
            <dtend>20190603T162500</dtend>
            <duration>0.02500</duration>
            <summary>Social Network Analysis  -  From Graph Theory to Applications with Python</summary>
            <description>Social network analysis is the process of investigating social structures through the use of networks and graph theory.  It combines a variety of techniques for analyzing the structure of social networks as well as theories that aim at explaining the underlying dynamics and patterns observed in these structures. It is an inherently interdisciplinary field which originally emerged from the fields of social psychology, statistics and graph theory. 

This talk will cover the theory of social network analysis, with a short introduction to graph theory and information spread. Then we will deep dive into Python code with ``NetworkX`` to get a better understanding of the network components, followed-up by constructing and implying social networks from real ``Pandas`` and textual datasets. 
Finally we will go over code examples of practical use-cases such as visualization with ``matplotlib``, social-centrality analysis and influence maximization for information spread.

Code examples for the sessions can be found here:
[https://github.com/dimgold/pycon_social_networkx](https://github.com/dimgold/pycon_social_networkx)

Video of the talk can be found here:
https://www.youtube.com/watch?v=px7ff2_Jeqw</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/DNLWQC/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Dima Goldenberg</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>THSKET@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-THSKET</pentabarf:event-slug>
            <pentabarf:title>AI based triage - predicting late and early mortality after emergency department visit.</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190603T163000</dtstart>
            <dtend>20190603T165500</dtend>
            <duration>0.02500</duration>
            <summary>AI based triage - predicting late and early mortality after emergency department visit.</summary>
            <description>Emergency departments (ED) are becoming more often overwhelmed increasing the poor outcomes of ED overcrowding. Triage scores aim to optimize the waiting time and prioritize the resource usage according to the severity of the medical condition. However, the most widely used triage scores, relies heavily on provider judgment which can lead to inaccuracy and misclassification. Artificial intelligence (AI) algorithms offer advantages for creating predictive clinical applications because of flexibility in handling large datasets from electronic medical records (EMR), and are becoming better at prediction tasks, often outperforming current clinical scoring systems. 

In this talk I will present a collaborative study between Intuit’s AI-ML researchers and Shiba hospital innovation center. In this study we used EMR data to predict mortality in the at early triage and ED (emergency department) visit level. The study included 559,353 ED visits of adults patients over five years (2012-2017). Variables included: demographics, admission date, arrival mode, referral code, chief complaint, previous ED visits, previous hospitalizations, background diagnoses, regular drugs, vital Signs and ESI score. Using XGboost, Catboost and deep-leaning we yielded an AUC of 0.97 for early mortality, an AUC of 0.93 for short term mortality, and an AUC of 0.93 for long term mortality (90 days from admission). Single variable analysis shows that the two variables with the highest AUC were: age and arrival mode for early mortality; age and main cause for short term mortality; and are age and number of drugs for long term mortality. The highest information gain variables for early mortality (calculated using XGBoost with a 1000 trees) were SBP, HR, days to most recent previous ED visit and fever. The results outperform e</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/THSKET/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Talia Tron</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>HMLRPP@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-HMLRPP</pentabarf:event-slug>
            <pentabarf:title>Beating #fakenews with Jupyter notebooks</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T093000</dtstart>
            <dtend>20190604T103000</dtend>
            <duration>1.00000</duration>
            <summary>Beating #fakenews with Jupyter notebooks</summary>
            <description>The trust in statements made by politicians and other public figures is at an all-time low (Economist, 2017). This may be due to a real increase in the number of false claims made (or “alternative facts” cited), or a side-effect of the low affinity to the truth displayed by the current white-house incumbent (and other leaders around the globe). At the same time, the polarization of the media undermines its credibility as an unbiased fact-checker (The Hill, 2017; American Press Institute, 2017). The good news, on the other hand, is the unprecedented ability of every one of us to independently fact-check claims we are interested in. With plethora of raw data freely available on the internet and accessible tools for data analysis, all we need is to know how to ask the right questions, how to translate these questions into executable programs, and how to implement these programs and interpret their results. 

In the age of blunt lies and accessible information, we believe that such skills should be acquired as early as the high-school years. We posit that the way to develop these skills is through hands-on experience, and that the way to motivate students to gain this experience is to let them ask and answer the questions that interest them. With this in mind, we developed an interactive textbook (Biron &amp; Levine, 2019) written completely as a collection of Jupyter Notebooks. The book teaches fundamentals of data science through real-life fact-checking tasks, defined by the reader according to their own personal interests. Our goal is to teach three types of skills: how to design a fact-checking plan, how to retrieve the appropriate data, and how to analyze them. The Jupyter platform allows us to let the reader choose the questions they address and the data sets they use to engage in active learning, guaranteeing that the book is relevant and exciting to everyone, whatever their interests may be.

In this talk I’ll describe our mission to make students – young and old – into budding data scientists, equipped with the methodology, design patterns, and Python, the language of data science. I will also discuss how platforms like Jupyter and Colaboratory provide with tools to revolutionize our teaching and help us adapt our methods to the students of Gen Z.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>keynote</category>
            <url>https://cfp.pycon.org.il/conference/talk/HMLRPP/</url>
            <location>Main Hall</location>
            
            <attendee>Erel Levine</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>SKNAGZ@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-SKNAGZ</pentabarf:event-slug>
            <pentabarf:title>Python 3.8 new stuff, assignment expressions and why Guido quits as BDFL</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T103000</dtstart>
            <dtend>20190604T105500</dtend>
            <duration>0.02500</duration>
            <summary>Python 3.8 new stuff, assignment expressions and why Guido quits as BDFL</summary>
            <description>No one expected Guido to quit as Python BDLF, not to mention over a simple useful feature such as assignment expressions...
In this talk I will discuss the new useful Python features and explain them with examples.
In addition, the special case of assignment expressions will be reviewed both as a feature and what happened during the PEP discussion and what eventually caused Guido to quit his position as BDFL.
Last, a few words about the new era of Python with no BDFL.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/SKNAGZ/</url>
            <location>Main Hall</location>
            
            <attendee>Eli Gur</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>YCDJWB@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-YCDJWB</pentabarf:event-slug>
            <pentabarf:title>PySnooper - Never use print for debugging again</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T110000</dtstart>
            <dtend>20190604T112500</dtend>
            <duration>0.02500</duration>
            <summary>PySnooper - Never use print for debugging again</summary>
            <description>I had an idea for a debugging solution for Python that doesn&#x27;t require complicated configuration like PyCharm. I released PySnooper as a cute little open-source project that does that, and to my surprise, it became a huge hit overnight, hitting the top of Hacker News, r/python and GitHub trending. 
In this talk I&#x27;ll go into:

 - How PySnooper can help you debug your code.
 - How you can write your own debugging / code intelligence tools.
 - How to make your open-source project go viral.
 - How to use PuDB, another debugging solution, to find bugs in your code.
 - A PEP idea for making debuggers easier to debug.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/YCDJWB/</url>
            <location>Main Hall</location>
            
            <attendee>Ram Rachum</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>7KXUQM@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-7KXUQM</pentabarf:event-slug>
            <pentabarf:title>Async/Awaiting Production</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T113000</dtstart>
            <dtend>20190604T115500</dtend>
            <duration>0.02500</duration>
            <summary>Async/Awaiting Production</summary>
            <description>In this hands on talk, Ronnie Sheer (software engineer at BlueVine) describes the real word challenges of integrating asynchronous code into robust Python applications. We’ll look at APIs using Async/Await and what can be learned from them. We’ll also walk through a small real-time web api built with Quart, a new tiny async (Flask-Like) microframework.
If you have been wondering if it’s time to incorporate Async/Await into your project, this might be a talk for you.

* talk [slides](https://pyconil-data-amit.s3-eu-west-1.amazonaws.com/presentations2019/Ronnie-Sheer-PDF-Async_Await+2019.pdf)
* watch [video](https://www.youtube.com/watch?v=pIXiChn5j4E&amp;list=PLnOlTVPC-yFxcJz_78_AAax1tOeIyF4mY&amp;index=3)</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/7KXUQM/</url>
            <location>Main Hall</location>
            
            <attendee>Ronnie Sheer</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>MRMPPQ@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-MRMPPQ</pentabarf:event-slug>
            <pentabarf:title>Serverless orchestration of async serverless workers in the cloud</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T120000</dtstart>
            <dtend>20190604T122500</dtend>
            <duration>0.02500</duration>
            <summary>Serverless orchestration of async serverless workers in the cloud</summary>
            <description>Demand for _&quot;Function as a Service&quot;_ expertise is quickly growing among Python developers. This talk is addressed to the architects and developers working with anywhere from 1000 to 1 million+ daily invocations of Functions. One of the hardest challenges while using FaaS-based workers is orchestration:

- Chunk business jobs to thousands (or millions) of tasks for workers
- How many workers shall we invoke at a specific moment?
- Track the status of each invocation
- Retry / alert failed invocations
- Monitor collateral damage and side-effects (DB, queues, etc)
- Build dependencies of workers and chain workflows

In this talk we are going to discover even more challenges and discuss how to solve them using Python in the AWS cloud.

In the last part of the talk there is an introduction of the `sosw` orchestration package with a fast-forwarded demo.
The package is now Open Source and open for contributions.

We assume general familiarity of the attendees with FaaS concepts.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/MRMPPQ/</url>
            <location>Main Hall</location>
            
            <attendee>Nikolay Grishchenko</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>GRBFXN@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-GRBFXN</pentabarf:event-slug>
            <pentabarf:title>Extend Kubernetes to make you a coffee</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T140000</dtstart>
            <dtend>20190604T142500</dtend>
            <duration>0.02500</duration>
            <summary>Extend Kubernetes to make you a coffee</summary>
            <description>Who doesn&#x27;t like coffee? What if you could use your Python coding skills to extend Kubernetes/OpenShift to watch for possibly long running processes and make your waiting time pleasant with a cup of coffee.

We will talk about what Kubernetes is, what is a Kubernetes controller, how to write and deploy your own custom **100% Pythonic** Kubernetes controller that uses the K8S Python client to listen to different events in K8S from one side, and communicates with your coffee machine on the other.

**P.S:** Making tea is not in the scope of this presentation.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/GRBFXN/</url>
            <location>Main Hall</location>
            
            <attendee>Daniel Belenky</attendee>
            
            <attendee>Gal Ben Haim</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>USQN3V@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-USQN3V</pentabarf:event-slug>
            <pentabarf:title>From 2 to 3 in 1 go</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T143000</dtstart>
            <dtend>20190604T145500</dtend>
            <duration>0.02500</duration>
            <summary>From 2 to 3 in 1 go</summary>
            <description>At the verge of 2019 our code base was running on our customer&#x27;s site achieving tremendous value, while at the same time under extensive development, continuously growing and - written in Python 2. Our task was to port our code to Python 3 while maintaining our non-stop development and doing so in a tight timeline, with minimum development hours and customer impact.  
What do you need to know to complete a successful and fast transition? We will share with you our strategies, plans and unexpected issues. We’ll talk about how Agile, SAS, CI\CD and Microservices play very nicely with the porting process. We will answer important questions such as how the team can keep developing during this process, estimate time and effort, and  expect the unexpected, as well as minimize impact on customers. You will be interested to know what was the most painful, what where our pitfalls and what was surprisingly easy.
At the end of this talk, you will be equipped for your journey towards the future.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/USQN3V/</url>
            <location>Main Hall</location>
            
            <attendee>Yael Green</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>WQCTNN@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-WQCTNN</pentabarf:event-slug>
            <pentabarf:title>I hate security - Bluetooth distance detection story</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T153000</dtstart>
            <dtend>20190604T155500</dtend>
            <duration>0.02500</duration>
            <summary>I hate security - Bluetooth distance detection story</summary>
            <description>In this talk we are going to learn how to implement a Bluetooth distance detection device. This device was invented to solve a real life problem which will be discussed. With the Python tips and tricks from this session, you might be able to improve your office dynamics. Furthermore, with a little creativity you can prevent your cat from running away again. Instead of inventing problems for our tools, let’s solve real ones.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/WQCTNN/</url>
            <location>Main Hall</location>
            
            <attendee>Lior Mizrahi</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>FZTLSX@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-FZTLSX</pentabarf:event-slug>
            <pentabarf:title>&quot;Scope of Variables in Python&quot; - A full scoop of python scopes!</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T160000</dtstart>
            <dtend>20190604T162500</dtend>
            <duration>0.02500</duration>
            <summary>&quot;Scope of Variables in Python&quot; - A full scoop of python scopes!</summary>
            <description>Brief recap of all known python scopes and example:

* local variables
* nonlocal keyword
* global keyword
* closures
* LEGB rule
* generators/coroutines implications 
* gotcha&#x27;s and unicorns
* dis module (needed for the next part)

I&#x27;ll walk-through actual code real world buggy code snippets . showing `dis` usage on code examples and how to understand whats going on. a recap of each *CPython* scope implementation will be given.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/FZTLSX/</url>
            <location>Main Hall</location>
            
            <attendee>Yoav Glazner</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>NRSC3U@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-NRSC3U</pentabarf:event-slug>
            <pentabarf:title>PyPy - the hero we all deserve.</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T103000</dtstart>
            <dtend>20190604T105500</dtend>
            <duration>0.02500</duration>
            <summary>PyPy - the hero we all deserve.</summary>
            <description>Python is amazing. It gives us the ability the code various applications quickly, using a variety of packages. However, it is relatively slow compared to other programming languages performing the same tasks.

As a full-stack engineer in an Algo-trading HFT company, I often need to create super fast applications with very short-term deadlines.. Python is my prefered choice because I can deliver fast. However, how can I overcome the speed barrier? That’s why I decided to take advantage of PyPy, a fast, compliant alternative implementation of the Python language.

In this talk, I will present some examples of applications in the field of Algo-trading which need to process data lightning  fast, and I will focus in how I optimized my solutions using Python and PyPy.

The examples will be taken from the finance/trading world, including how I built and improved a FIX-protocol parser, and how I managed to consume a data feed of all exchanges quotes (Bid / Ask) without having gaps in communication nor dissection.

I will explain what were my major obstacles, how I managed to observe the bottlenecks in the system, monitor them, and finally how I managed to improve them.

The optimizations that will be shown in my talk, will take place in the JIT world of PyPy, including ways to write your code for the PyPy’s JIT, and in addition, I will show some tweaks I have done to make the Garbage Collector (CG) work much better in my environment. In addition, we will see how choosing the right data structure for our needs, improves the overall latency in the system.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/NRSC3U/</url>
            <location>Hall 3</location>
            
            <attendee>Amit Ripshtos</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>WTXML3@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-WTXML3</pentabarf:event-slug>
            <pentabarf:title>Boosting simulation performance with Python</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T110000</dtstart>
            <dtend>20190604T112500</dtend>
            <duration>0.02500</duration>
            <summary>Boosting simulation performance with Python</summary>
            <description>Our company&#x27;s product uses a fleet of real (not virtual) robots to perform different tasks in a fulfillment warehouse. The importance of simulations is significant: it allows to test our solution, new features and perform regression tests without the need for real and expansive hardware, measure and analyze the impact of different algorithms and optimizations, and explore possible solutions before deploying them in production. Tasks performed by physical robots take time (movement over the warehouse, box lifting, etc.), but in simulation, where virtual robots are used, there is no need to wait all that time. Shortening simulation time improves the development process by providing faster feedback to developers and quicker CI and testing cycles. Another benefit is a more deterministic simulation - using this approach, each component (thread) in the system gets equal opportunity (CPU time) in each time tick, which is not affected by the underlying machine or operating system that the simulation is running on. Also, it is possible to simulate any hour of the day easily, and by that we wouldn&#x27;t panic before the &quot;Y2K bug&quot;.
I will also show how we expanded SimPy to adjust this architecture when making the transition to microservices.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/WTXML3/</url>
            <location>Hall 3</location>
            
            <attendee>Eran Friedman</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>NYDEEX@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-NYDEEX</pentabarf:event-slug>
            <pentabarf:title>Pylint - Python static code analysis</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T113000</dtstart>
            <dtend>20190604T115500</dtend>
            <duration>0.02500</duration>
            <summary>Pylint - Python static code analysis</summary>
            <description># Pylint
Pylint is a Widely used and scalable Python static code analysis tool which looks for programming errors, helps enforcing a coding standard,  and offers simple refactoring suggestions.

## Background
Pylint is highly configurable and has many parameters that allows you to match your linter to your exact coding standards.
It&#x27;s also highly extendable and allows you to define your own special checkers (Code analyzers).
Pylint could be run as part of your CI to enforce quality standards.

## Lecture
Agenda:
1. Pylint - What is it and how it works.
2. AST - Python abstract syntax tree - What is it and how we use it for our checkers.
3. Pylint Configuration - How we configure Pylint for our own use cases.
4. Pylint Checkers - How we create our own static code analyzers:
        - Create Raw checkers, which analyse each module as a raw file stream.
        - Create Token checkers, which analyse a file using the list of tokens that represent the source code in the file.
        - Create AST checkers, which work on an AST representation of the module.
5. How to integrate Pylint in your CI.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/NYDEEX/</url>
            <location>Hall 3</location>
            
            <attendee>Gilad Shefer</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>XQXFUJ@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-XQXFUJ</pentabarf:event-slug>
            <pentabarf:title>Building ORMs from scratch with advanced Python</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T120000</dtstart>
            <dtend>20190604T122500</dtend>
            <duration>0.02500</duration>
            <summary>Building ORMs from scratch with advanced Python</summary>
            <description>In our work at Magic Leap, we needed to work an experimental [graph database system](https://en.wikipedia.org/wiki/Graph_database), meaning that we barely had any python code to work with for clients. Specifically, there wasn&#x27;t any stable [ORM](https://en.wikipedia.org/wiki/Object-relational_mapping) we can use, meaning that all object de/serialization had to happen by manual queries, tracking changes to be written had to be manual, and batching writes was cumbersome. After working with it for a while, we decided to invest in building our own ORM system, even though it might take a while.

To our surprise, we had our first working ORM in ~500 lines of code and less than a day of work, thanks to advanced features of the Python language. Therefore, we decided to share our insights on the process.

In this talk we&#x27;ll cover python metaclasses and descriptors **with an actual use-case**, going step by step through correct usage and design considerations, supporting nested data types, and more. At the end of the talk, attendees should be able to go on and implement their own ORMs for their favorite database systems.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/XQXFUJ/</url>
            <location>Hall 3</location>
            
            <attendee>Barak Itkin</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>C9ZTHM@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-C9ZTHM</pentabarf:event-slug>
            <pentabarf:title>Pandas for Fun and Profit: Using Pandas for Successful Investing.</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T140000</dtstart>
            <dtend>20190604T142500</dtend>
            <duration>0.02500</duration>
            <summary>Pandas for Fun and Profit: Using Pandas for Successful Investing.</summary>
            <description>During this talk, I tell the story of how, as a new Python developer, I quickly learned enough Pandas to be able test some hypotheses about financial markets.  I will demonstrate how I formulated the hypothesis, developed a test plan, gathered data, and tested the hypothesis.  Along the way, attendees will see common Pandas techniques for cleaning, converting and reshaping the data, generating new derived data, finding patterns / correlations, and visualizing data.  After attending this talk, you may choose to use Pandas to test your own hypotheses for fun (and maybe profit).

The audience for this talk is any level Python developer with little to no experience with Pandas.  Through this talk, attendees will learn what Pandas can do, and how it simplifies data analysis.  Attendees will also learn how to apply a number of basic Pandas techniques for cleaning data, slicing data, setting and using indices, calculating new columns, merging data sets, generating statistics, and visualizing results.

Outline:

 * Introduction
 * The Hypothesis
    * Stock ownership and Earnings
    * The Price/Earnings ratio and what it means to analysts
    * Hypothesis:  Low P/E represents a “bargain”  **-- How can we test this?**
 * Pandas Basics 
    * Series, Data Frame
    * Indexing, loc, iloc, slice
    * Utilities: read_csv, describe, apply, select, sort, transpose, merge, handling missing data
 * Testing Our Hypothesis: Preparing the Data
    * Introduction to the data
    * Cleaning the header; setting the indices
    * Converting Price, P/E, and Dividends
    * Converting Dates
    * Calculating the average and standard deviation of P/E values 
    * Merging Dividend Data with the Price and P/E data
 * Testing Our Hypothesis: Calculations and Results
    * Calculating Total Return (for various periods) and generating new columns
    * P/E and Total Return Relationship
 * Conclusions
    * Pandas is fun and easy – even for a newbie.
    * Any data can be analyzed; the art is in gaining an understanding of the data and being creative in your 
approach to getting valuable information out of the data.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/C9ZTHM/</url>
            <location>Hall 3</location>
            
            <attendee>Daniel Goldfarb</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>AXWC93@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-AXWC93</pentabarf:event-slug>
            <pentabarf:title>Making our Municipalities more Transparent using Python!</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T143000</dtstart>
            <dtend>20190604T145500</dtend>
            <duration>0.02500</duration>
            <summary>Making our Municipalities more Transparent using Python!</summary>
            <description>Municipalities are the branch of the government that probably affect us the most (think education, garbage collection, building permits...). 
They are also notoriously known to be not transparent - making it difficult for us citizens to make sure that the people in charge are making good use of our taxes and that our city is performing well in comparison to others.

In the beginning of 2019 we (at [Hasadna](https://hasadna.org.il)) embarked on a project to make municipalities more transparent - DataCity. In this project we aim to create a single API endpoint for all municipalities&#x27; data (normalized, standardized, verified, regularly-updated).

There are a few problems along the way, though:

1. They don&#x27;t really *want* to be transparent
2. Data is of low quality and **very** non-uniform.

For solving (2) we&#x27;re building a versatile framework for -

 - extracting data from various sources and formats, 
 - cleaning it,
 - mapping it to a predefined schema,
 - validating it with domain-specific rules,
 - enriching it and finally
 - publishing it in our data warehouse

We&#x27;re doing all that in a reusable way, based on open source tools (mainly the [dataflows](https://github.com/datahq/dataflows) ETL library, which I&#x27;ll describe in detail during the talk).

(we also have a solution for (1) - I&#x27;ll talk about that too :) )</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/AXWC93/</url>
            <location>Hall 3</location>
            
            <attendee>Adam Kariv</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>K3PBTV@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-K3PBTV</pentabarf:event-slug>
            <pentabarf:title>Writing user space filesystems</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T153000</dtstart>
            <dtend>20190604T155500</dtend>
            <duration>0.02500</duration>
            <summary>Writing user space filesystems</summary>
            <description>In this talk, we will give a very short and basic overview on FUSE, how it works, and what is libfuse.  Then we will discuss the libfuse python wrapper (fuse module) and see how we can use it to implement our own little filesystem.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/K3PBTV/</url>
            <location>Hall 3</location>
            
            <attendee>Yuval Turgeman</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>HCF9FJ@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-HCF9FJ</pentabarf:event-slug>
            <pentabarf:title>Decentralizing the cloud with Project Aleph (decentralized applications framework, aka &quot;Look ma, no -centralized- cloud!&quot;)</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T160000</dtstart>
            <dtend>20190604T162500</dtend>
            <duration>0.02500</duration>
            <summary>Decentralizing the cloud with Project Aleph (decentralized applications framework, aka &quot;Look ma, no -centralized- cloud!&quot;)</summary>
            <description>I started working on decentralized applications projects and didn&#x27;t really find my way as a pythonista there. Plus, blockchains are slow, clunky... What if we used AsyncIO and latest python stuff to upgrade this?

I&#x27;ll present Aleph.im, a layer-2 network (complicated words for something simple!) made in Python, and how to make a simple decentralized app using it.

Features of applications made with Aleph.im:

- Elliptic curve identity and message signing
- Free and instant actions
- No server needed, the network does that
- Large data storage (medias, text contents, key-value stores)
- Virtual machines</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/HCF9FJ/</url>
            <location>Hall 3</location>
            
            <attendee>Moshe Malawach</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>7NGG9P@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-7NGG9P</pentabarf:event-slug>
            <pentabarf:title>A Case study: How to effectively operationalize a Machine Learning model</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T103000</dtstart>
            <dtend>20190604T105500</dtend>
            <duration>0.02500</duration>
            <summary>A Case study: How to effectively operationalize a Machine Learning model</summary>
            <description>A Case study: How to effectively operationalize a Machine Learning model

A European shipping company was looking to gain a competitive advantage by leveraging Machine Learning techniques. The aim was to create shipping-lane specific demand forecasting, and to implement it throughout its operations, in order to: save time and manual labor, adjust pricing and business agreements, and utilize smart resource allocation. Each percentage of improvement is worth $1.5 million. 

In order to effectively operationalize a Machine Learning model you need to cross 3 chasms: the first is Business Relevance - avoiding model development before thinking the business value through. A clear vision of the desired business impact must shape the approach to data sourcing and model building. 

The second is Operationalizing Models - migrating a predictive model from a research environment into production. This process can be difficult because data scientists are typically not IT solution experts and vice versa. 

The third, and most critical chasm is Translating predictions to business impact - where a data scientist ensures the decision makers understand the predictions and have enough wiggle room to take action and turn it into a competitive advantage. Management must possess the muscle to transform the organization so that the data and models actually yield better decisions. Additionally, model outputs need to be integrated into well-designed applications making them easy to consume. 

In this talk, I will explain these three elements using a real-world case study. I will highlight common mistakes to avoid when operationalizing a Machine Learning model in an enterprise environment. I will present specific lessons learnt and practical tips from this real world project.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/7NGG9P/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Moran Haham</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>NMQRK8@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-NMQRK8</pentabarf:event-slug>
            <pentabarf:title>Disease Modeling with Scipy and PyMC</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T110000</dtstart>
            <dtend>20190604T114000</dtend>
            <duration>0.04000</duration>
            <summary>Disease Modeling with Scipy and PyMC</summary>
            <description>In 2018, Israel has seen the biggest outbreak of measles since the introduction of a vaccine in the late 1960s.   
Nowadays, vaccine policies are not only decided by laboratory tests. Those tests are complemented by a plethora of **computational epidemiology** simulations predicting the effects of various vaccination policies on the entire population.  
A population-level policy to eradicate disease must rely on **Interpretable models**. These models quickly become hard to solve, not to mention train on missing parameters. Using **Scipy** as a solver, and **PyMC** for Bayesian inference we are able to learn parameter distributions for missing natural parameters, such as the disease&#x27;s &quot;strength&quot; or &quot;infectiousness&quot;.   
We can then use the underlying distributions for these parameters in order to simulate possible outcomes for future policies.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (long - limited number of slots)</category>
            <url>https://cfp.pycon.org.il/conference/talk/NMQRK8/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Dean Langsam</attendee>
            
            <attendee>Dor Kahana</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>3BFQ3L@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-3BFQ3L</pentabarf:event-slug>
            <pentabarf:title>Hierarchical Temporal Memory in Python</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T114500</dtstart>
            <dtend>20190604T122500</dtend>
            <duration>0.04000</duration>
            <summary>Hierarchical Temporal Memory in Python</summary>
            <description>Hierarchical temporal memory (HTM) is a biologically constrained theory (or model) of intelligence, originally described in the 2004 book On Intelligence by Jeff Hawkins with Sandra Blakeslee. HTM is based on neuroscience and the physiology and interaction of neurons in the neocortex of the mammalian (in particular, human) brain. 
At the core of HTM are learning algorithms that can store, learn, infer and recall high-order sequences. Unlike most other machine learning methods, HTM learns (in an unsupervised fashion) time-based patterns in unlabelled data on a continuous basis. HTM is robust to noise, and it has high capacity, meaning that it can learn multiple patterns simultaneously. When applied to computers, HTM is well suited for prediction, anomaly detection, classification and ultimately sensorimotor applications.

In this talk I will cover some basics of the mammalian neocortex, provide an introduction to Hierarchical Temporal Memory (HTM), briefly compare it to Deep Neural Nets (DNN) and show some examples of HTM in action.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (long - limited number of slots)</category>
            <url>https://cfp.pycon.org.il/conference/talk/3BFQ3L/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Fred Rotbart</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>EMHZED@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-EMHZED</pentabarf:event-slug>
            <pentabarf:title>our DASK ETL Journey</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T140000</dtstart>
            <dtend>20190604T142500</dtend>
            <duration>0.02500</duration>
            <summary>our DASK ETL Journey</summary>
            <description>The presentation agenda:

*   Intro to Dask framework
*    Basic setup Client
*    Dask.dataframe
*   Data manipulation
*  Read/Write files
*  Advanced groupby
*  Debugging

There is a jupyter notebook (see attachment) to supplement the talk.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/EMHZED/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Sephi Berry</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>BNAVY7@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-BNAVY7</pentabarf:event-slug>
            <pentabarf:title>How do algorithmic models become biased?</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T143000</dtstart>
            <dtend>20190604T145500</dtend>
            <duration>0.02500</duration>
            <summary>How do algorithmic models become biased?</summary>
            <description>In this talk, we will walk through the steps of how to build an algorithm to predict property prices from a dataset of property listings, focusing predominantly on finding the right features to include in building the model. Then, we will understand where in the feature engineering process we start introducing bias into our algorithms, and what are the ramifications of this if the model were to be deployed  in the real world. Using the prediction algorithm as a framework to look at each step of the building process, we will also look at real-world examples of when certain decisions have led to unequal and biased results.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/BNAVY7/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Eva Sasson</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>PFFVLT@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-PFFVLT</pentabarf:event-slug>
            <pentabarf:title>Building text classifiers with state-of-the-art Deep Learning frameworks</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T153000</dtstart>
            <dtend>20190604T155500</dtend>
            <duration>0.02500</duration>
            <summary>Building text classifiers with state-of-the-art Deep Learning frameworks</summary>
            <description>2018 has been declared by many as the &quot;ImageNet moment&quot; of NLP. Novel attention and transformer-based Neural Network (NN) architectures significantly improved state-of-the-art performance in many tasks. NLP-oriented transfer learning techniques claim to make text classification easy by adapting pre-trained models, trained on huge corpora, to proprietary datasets with only a very small number of labels. Models that previously required significant computational power over vast periods of time can now be trained in several hours on standard CPUs. 
But with all of these models and frameworks to choose from, how does one make sense of it all? Where to begin?
In this talk I will describe an end-to-end solution to a text classification problem. I will demonstrate how to employ the available classification methods, evaluating their performance and also (arguably more importantly) their ease of use. I will highlight common pitfalls, explaining what it takes to get a Deep Learning-based text classification model up and running.</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/PFFVLT/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Inbal Horev</attendee>
            
        </vevent>
        
        <vevent>
            <method>PUBLISH</method>
            <uid>WSWSFG@@cfp.pycon.org.il</uid>
            <pentabarf:event-id></pentabarf:event-id>
            <pentabarf:event-slug>-WSWSFG</pentabarf:event-slug>
            <pentabarf:title>Data Pipelines - Comparing Airflow and Luigi by people who have made mistakes in both</pentabarf:title>
            <pentabarf:subtitle></pentabarf:subtitle>
            <pentabarf:language>en</pentabarf:language>
            <pentabarf:language-code>en</pentabarf:language-code>
            <dtstart>20190604T160000</dtstart>
            <dtend>20190604T162500</dtend>
            <duration>0.02500</duration>
            <summary>Data Pipelines - Comparing Airflow and Luigi by people who have made mistakes in both</summary>
            <description>Organizing and scaling data pipelines is a common challenge many organizations face. Luigi and Airflow are the two most popular open source frameworks to help solve this task. 

We will present a quick overview and comparison of the two. Then we will take a deep dive, including code examples, into the special cases for which we used the frameworks at Twiggle.


Among the examples we will discuss:

* Airflow as a highly available web server, and extending it with APIs for customers.

* Data processing using Dask and Spark in Luigi.

* Code reuse in Luigi vs Airflow.

code: https://github.com/orrshilon/pycon-israel-2019-airflow-luigi
slides: https://github.com/orrshilon/pycon-israel-2019-airflow-luigi/blob/master/PyCon%202019%20-%20Data%20Pipelines%20-%20Airflow%20vs.%20Luigi%20by%20people%20who%E2%80%99ve%20made%20mistakes%20in%20both.pdf</description>
            <class>PUBLIC</class>
            <status>CONFIRMED</status>
            <category>Talk (regular)</category>
            <url>https://cfp.pycon.org.il/conference/talk/WSWSFG/</url>
            <location>Hall 2 (PyData)</location>
            
            <attendee>Alex Levin</attendee>
            
        </vevent>
        
    </vcalendar>
</iCalendar>
