uk: Комп'ютерні науки

description: Building a full-stack web application with Python, NPM, Webpack and React [EuroPython 2017 - Talk - 2017-07-10 - Anfiteatro 1] [Rimini, Italy] Creating full-stack applications with Python, NodeJS and React can seem daunting at first. Having made many variations of these, I will show you the ropes, so you too can discover that it is in fact easy to get going. In this talk you will learn to create a full-stack web application in Python, with a Nodejs and React front-end. I will provide you with an easy-to- follow walkthrough of the process, and you’ll exit this talk feeling confident that you can now create your own full-stack web application

uk: вхід без авторизації


Mary had a little lambda

Anjana Vakil

type: Person

cs: Informatika

de: Informatik

fi: tietojenkäsittelytiede

uk: Комп'ютерні науки

en: Computer Science

fr: Informatique

da: Datalogi

es: Ciencias de la Computación

nl: Informatica

cs: Technické vědy

de: Ingenieurwissenschaften

fi: tekniikka

uk: Інженерія

en: Engineering Sciences

fr: Ingénierie

da: Ingeniørvidenskab

es: Ingeniería

nl: Engineering

description: Mary had a little lambda [EuroPython 2017 - Talk - 2017-07-12 - Arengo] [Rimini, Italy] Mary had a little lambda, a function pure as snow. And for every program that Mary wrote, the lambda was all she needed to know. Python’s lambda, a tiny anonymous function, can be useful in a pinch when you’re feeling too lazy to type that extra d-e-f. But did you know that behind this little lambda is actually one of the most powerful & elegant abstractions in the history of computer science? The lambda calculus, dating back to the work of lambda shepherd Alonzo Church in the 1930's, lets us represent our programs - all their logic and data - as pure, anonymous functions, using nothing but (a whole lot of) lambda. Let’s take it for a spin and see what we can create: booleans and conditionals, integers, arithmetical operators, data structures… you name it. With some determination, and a little squinting, we might even see lambda do the impossible: reconcile object-oriented and functional programming. You heard it right: lambda can do it all! Join me as we explore its astounding computational power, and walk away with a deeper respect and admiration for the almighty little lambda

TIB AV-Portal

type: Service

type: WebContent

type: MediaObject

@language: en

cs: přihlášení není vyžadováno

de: keine Anmeldung erforderlich

uk: вхід без авторизації

en: no login required

nl: geen login vereist

EuroPython

type: Organization

cs: Video

de: Video

fi: Video

uk: Відео

en: Video

fr: Vidéo

da: Video

nl: Video

es: Video


Overcoming Cognitive Bias

uk: Комп'ютерні науки

description: Overcoming Cognitive Bias [EuroPython 2017 - Talk - 2017-07-14 - Anfiteatro 2] [Rimini, Italy] Starting with a brief description of how built-in mechanisms in our brains lead to cognitive bias, the talk will address how a variety of cognitive biases manifest in the Python and tech communities, and how to overcome them

uk: вхід без авторизації


Network visualization and automation

uk: Комп'ютерні науки

description: Network visualization and automation [EuroPython 2017 - Talk - 2017-07-13 - Arengo] [Rimini, Italy] Network automation and orchestration is the latest phase in the evolution of IP and optical networks. Over the last few years, network engineers have created a variety of libraries and softwares to help them with the management, configuration and automation of huge networks made of hundreds of thousands of network devices (e.g. routers, switches, antenna...). In this talk, I will introduce NetDim, a vendor-neutral software for network modeling and automation based on the standard Python library for GUI programming: tkinter. I will start the presentation with an introduction to network visualization, and show how tkinter can be used to implement graph drawing algorithms, as well as a full-on Geographic Information System (GIS), allowing one to place network devices on a world map at their GPS coordinates. I will then discuss the whys and wherefores of network automation, and show how to automatically generate and push scripts to a network device via SSH or Telnet.

uk: вхід без авторизації


Using the right Async tool, present day

uk: Комп'ютерні науки

description: Using the right Async tool, present day [EuroPython 2017 - Talk - 2017-07-11 - Arengo] [Rimini, Italy] Recent releases like AsyncIO and Django Channels gave a new push towards building real-time web-apps fast and easy. However, as similar tools exist in Python since 2000th, how should we balance between modern and time-proven? This talk includes but is not focused just on AsyncIO. It gives an overview of Async libraries in Python, and helps with choosing a right tool for various web tasks. It describes caveats of using Twisted, Tornado and AsyncIO including theory and live code, and concludes with a basic overview of Django Channels. Talk plan Why do we need Async Web (5 min) Existing libraries and frameworks: Twisted, Tornado, AsyncIO (15 min) Sample task, sample code, conclusions (10 min) (optional) what's about Django Channels? Q & A (5 min)

uk: вхід без авторизації


uk: Комп'ютерні науки

description: The joy of PyPy JIT: abstractions for free [EuroPython 2017 - Talk - 2017-07-12 - Anfiteatro 2] [Rimini, Italy] The joy of PyPy JIT: abstractions for free The PyPy JIT is a powerful piece of technology which makes Python program running faster: in this talk, we will see how it helps us to write our programs better without sacrificing performance. One of the key to write complex software systems of good quality is to make a good usage of abstractions, to clearly separate the various layers and components. However, often each layer of abstraction adds some cost in terms of runtime performance, so we need to struggle finding the best trade-off between maintainability and speed. Because of the way it works, the PyPy JIT naturally removes the cost of most abstractions: we will look at real-life examples of how this is possible, showing what the JIT can and can't do. We will also show how this compares to other popular systems of optimizing Python code, such as Cython

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Space weather monitoring for a virtual reality simulation of a Martian settlment EuroPython 2017 - Talk - 2017-07-14 - PyCharm Room Rimini, Italy High-energy particles accelerated by the Sun during Coronal Mass Ejections (CME) are a major concern for a manned mission to Mars. On Earth surface, these particles are shielded by the Earth magnetic field. In space and on the Martian surface, where such shielding is absent or much weaker, CME pose a radiation hazard to the health of astronauts. The development of tools to understand and forecast the interplanetary space weather is a requirement for future manned space missions in order to properly protect the astronauts from the radiation environment. A variety of methods are currently developed by the scientific community and a number of public tools for space weather monitoring and forecast is already available online. We present a Python-based tool which takes advantage of two publicly accessible space weather web portals. Our software combines the forecast of CME and a real-time propagation model of energetic particles throughout the inner Solar System and the Martian atmosphere. It consistently recovers real-time relevant information and provides with days-to-hours forecasts for the radiation dose astronauts on Mars would be exposed to. The system raises an alert signal when the radiation dose exceeds the security levels defined by the main space agencies adopted as a reference. Our tool is meant to be integrated in a virtual reality simulation of a human settlement on the surface of Mars (Mars City Project). Prerequisite: Intermediate knowledge

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Write more decorators (and fewer classes) [EuroPython 2017 - Talk - 2017-07-11 - Anfiteatro 2] [Rimini, Italy] In the wake of famous talk “Stop Writing Classes” by Jack Diederich (https://www.youtube.com/watch?v=o9pEzgHorH0), I’d like to present a pattern that can be used to design clean and pythonic interfaces for programmers based on replacing single-method classes with decorated functions. This pattern is already used by some famous frameworks and libraries, like Pyramid (https://trypyramid.com/), but I believe it isn’t that well-known to many (even experienced) Python developers and is not as widely used as it deserves. I’ll show how this pattern can be employed to improve a programming interface which is used by an internal log processing framework at Yelp. This will demonstrate how a more functional approach, leveraging the power of Python decorators, can lead to simpler, more beautiful and easier to understand code. However, this talk doesn’t suggest giving up classes altogether, but making use of them only when they are truly useful. In fact, the use-case I’m going to analyze will combine classes, functions, and decorators to make the best out of these tools. Given that the presentation is going to be very code-oriented, the talk is intended for an audience of developers who are already familiar with most Python constructs, including decorators, even though the concept will be briefly introduced at the beginning of the talk. But, if you are one of these people, I promise you that the code will speak for itself

uk: вхід без авторизації


PyPy meets Python 3 and Numpy

uk: Комп'ютерні науки

description: PyPy meets Python 3 and Numpy [EuroPython 2017 - Talk - 2017-07-14 - Anfiteatro 2] [Rimini, Italy] PyPy is an alternative Python implementation whose JIT often gives seriously better performance than CPython. Now PyPy supports, in beta version, two major new application domains: Python 3.x, and Numpy and the rest of the scientific stack. These are each an important milestone for a subset of the Python community. Thanks to a grant by Mozilla, "PyPy3" now largely supports Python 3.5 with one or two extensions from Python 3.6. Full support should be very close. (Note that PyPy2 will not disappear, if only because PyPy itself is written in Python 2.7.) Numpy and the major packages of the scientific stack are now starting to work well with PyPy (PyPy2 mostly, but also PyPy3). This is thanks to progress in "cpyext" emulating the CPython C API, as well as fixes to the packages in collaboration with the upstream developers. We will also mention some more "what's new in PyPy" topics from the last couple of years

uk: вхід без авторизації


A Python for Future Generations

uk: Комп'ютерні науки

description: A Python for Future Generations [EuroPython 2017 - Keynote - 2017-07-10 - Anfiteatro 2] [Rimini, Italy] A journey through the current Python interpreter, some of the effects of its leaky abstraction on the language design and how we could evolve the language to future proof it. Covers some practical and not so practical ideas based on experience in the JavaScript and Rust ecosystem

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Physical computing with Raspberry Pi and Python [EuroPython 2017 - Talk - 2017-07-14 - PythonAnywhere Room] [Rimini, Italy] The Raspberry Pi Foundation is working to put the power of digital making in the hands of people all over the world, and is well known for its series of small, cheap single board computers. The Raspberry Pi runs a well supported Linux distro based on Debian, which ships with a variety of programming tools and educational software. Python is the main supported language on the platform, used in many educational resources, and many Python libraries exist for making the most of the Pi platform with other devices. I will cover: Raspberry Pi Foundation mission Raspberry Pi hardware specs Raspbian desktop GPIO pins GPIO Zero (Python library) Picamera Astro Pi (ESA space mission) & Sense HAT More HATs Pi projects Raspberry Pi communit

uk: вхід без авторизації


Bitcoin and Blockchain for Pythoneers

uk: Комп'ютерні науки

description: Bitcoin and Blockchain for Pythoneers [EuroPython 2017 - Talk - 2017-07-10 - Anfiteatro 1] [Rimini, Italy] Why should a Python programmer be interested in Bitcoin and the Blockchain technology? Blockchain technology is one of the fastest moving part in the Fintech area. However, the Blockchain is not only the basis of crypto currencies. First of all it’s a decentralized registry that cannot be modified. This means that using a Blockchain, users can trust in the validity of a dataset without the need to establish a central authority. Thus, the Blockchain can be used to store records e.g. of land ownership or and other property rights in countries with weak or corrupt or otherwise incompetent authorities. Therefore, Python programmers with an understanding of this technology are especially well prepared to contribute in this area, because the agility inherent to Python makes it easy to program in a fast moving environment. The fact that various applications in the Bitcoin and Blockchain area are implemented in Python prove this notion. However, the reverse is also true: An understanding of the distributed ledger technology possibly enables you to solve problems in projects you encounter in the near future. In this talk, I will present the following topics: • The Blockchain architecture: nodes, transactions, headers. • The Bitcoin protocol and its proof of work (POW) • Smart contracts • Bitcoin alternatives: Proof-of-work (PoW) compared to Proof-of-stake (PoS

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Inspiring all children, a journey: diversity and computing education [EuroPython 2017 - Talk - 2017-07-11 - PythonAnywhere Room] [Rimini, Italy] Do you remember when you wrote your first line of code? Do you remember who inspired you to become who you are when you were a child? But also, what the challenges might have been? I remember when I was a little girl with a strong interest in a lot of things, including science, and what and who helped me pursue an education and a career in science and technology. However, my journey in the industry from France to the UK, from software engineer student to team lead, from language processing to robots to online coding games, made me understand there is still a lot of work to be done in terms of diversity. I will talk about my own experiences, what shaped my dreams and inspirations, the reality check, and the project I’m now working on Code For Life. Code For Life is an initiative started at Ocado Technology in 2014, in response to the UK putting computing in the primary school curriculum. It comprises a small full time team and also a large group of dedicated volunteers who focus on creating free, open source games, mostly web games developed with Django, to teach all children how to program. We are all dedicated to inspire all children and give them the tools and opportunities they deserve

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Identity management, single sign-on and certificates with FreeIPA [EuroPython 2017 - Talk - 2017-07-13 - PythonAnywhere Room] [Rimini, Italy] Authentication, authorization and public key infrastructure are complicated and hard to get right, yet crucial for every infrastructure. Manifold user databases in each application as well as ad-hoc self-signed TLS/SSL certificates don't scale and are hard to administrate. Users don't want to remember a password for each service, admins prefer a centralized PKI, and developers struggle with correct handling of password. FreeIPA is an Open Source, Python-based identity management solution. It is much more than a simple user database. FreeIPA combines multiple mature products under an easy-to-use installer, command line and web interface: 389-DS LDAP server, MIT Kerberos, Dogtag PKI certificate system, BIND DNS with DNSSEC, SSSD, certmonger and more. It provides identities for users, services and machines with single sign-on (optionally 2FA) and role or host based ACL. Keycloak and Ipsilon IdP can be integrated to offer OpenIDC or SAML. Mutual trust with Active Directory is possible, too. Installation of a FreeIPA server and integration with a WSGI application is much simpler than you might think. At the end of my talk you will know how to deploy a FreeIPA server with just one command, how to add replicas for redundancy, how to authenticate users and access user data like name, email and group membership without adding a single line of Kerberos or LDAP code to your application, and how to issue TLS certificates with auto-renewal and OCSP

uk: вхід без авторизації


Streaming: Why should I care?

uk: Комп'ютерні науки

description: Streaming: Why should I care? [EuroPython 2017 - Talk - 2017-07-13 - Anfiteatro 2] [Rimini, Italy] You think, all that hype about streaming solutions does not affect you? I thought so also. But when playing around with that topic for some time, I realized that it sheds a different light on many topics I struggled with for some time. In this talk I want to share with you what I discovered when switching from a from a database centric view to stream oriented processing. Splitting your application in smaller services gets easier as you have more natural boundaries You have more options to run different data schema versions in different services (instead of one central db upgrade) More scaling possibilities Operations improvements For sure, streaming does not solve any problem, but much more than I thought before. And in python you have good support with many streaming clients. I will give some examples and comparisons for working with Kafka and Avro Schemas

uk: вхід без авторизації


uk: Комп'ютерні науки

description: How SAP is using Python to test its database SAP HANA [EuroPython 2017 - Talk - 2017-07-11 - PyCharm Room] [Rimini, Italy] SAP operates one of the largest test infrastructure to test its in-memory database SAP HANA. The infrastructure provides different services like continues integration, code coverage and code linting for a huge C++ project with Python test coding. These services are essential for the development teams and quality specialists. Without these services developing and shipping of new SAP HANA version wouldn’t be possible. In 2010, we started with a single Jenkins master with ten nodes. But to keep our testing time acceptable for the growing number of developers we had to scale up and that led to multiple different scaling challenges. The current test infrastructure is powered by more than thousand physical servers. Scaling of the infrastructure was only possible with custom optimizations like improved scheduling, expressive test configuration and robust tooling implemented in our favorite language Python. With the flexibility and power of Python it’s possible for developers to implement complex test scenarios to verify features and mitigate regressions. On infrastructure side, it has been easier to extend, optimize and adapt the infrastructure for new requirements like different CPU architectures and newer Operating systems versions. This talk provides insights and stories how we scaled and improved our test infrastructure and how new technologies like Linux Containers can improve automated testing and software quality assurance

uk: вхід без авторизації


Scripting across hosts with Chopsticks

uk: Комп'ютерні науки

description: Scripting across hosts with Chopsticks [EuroPython 2017 - Talk - 2017-07-13 - PythonAnywhere Room] [Rimini, Italy] Chopsticks lets your import and run Python code on remote Unix hosts over SSH. It works with no code deployment and no preinstalled software other than Python and SSH. It has built-in support for running code on many hosts in parallel. Unlike Fabric or Ansible, Chopsticks not opinionated about the structure of the code you run, allowing it to be used for orchestration, auditing, diagnostics, monitoring probes, and more Also unlike these, Chopsticks is not wedded to SSH, so it can transparently work on Docker containers over pipes, local subprocesses - and in future, sudo? Daniel will demonstrate Chopsticks in action, walk through the API, and explain the three clever tricks that Chopsticks is built on

uk: вхід без авторизації


uk: Комп'ютерні науки

description: The Encounter: Python’s adventures in Africa [EuroPython 2017 - Keynote - 2017-07-14 - Anfiteatro 2] [Rimini, Italy] A genuine encounter changes both parties. In this talk Daniele and Aisha will report on the dialogue opened up by recent PyCons and other Python events in Africa. They’ll discuss Python’s impact in countries including Namibia, Nigeria and Zimbabwe, and what open-source software means for Africa at large - and what the encounter means for Python too

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Fighting the controls: tragedy and madness for programmers and pilots [EuroPython 2017 - Talk - 2017-07-13 - PyCharm Room] [Rimini, Italy] Damn it, this can’t be happening! As programmers, we find ourselves time and again spiralling down into tighter loops of desperate troubleshooting, fighting the controls of our machinery and descending into what feels like a kind of madness. Later, when it’s all over, we realise that the clues we needed to recover the situation were staring us in the face all along, but we somehow couldn’t even see them. There’s a reason for this: the nature of debugging for programmers means that it quickly tips us into these states, and then very effectively keeps us there. In programming we have worked hard to improve some aspects of programmers’ work, creating methodologies, development frameworks, paradigms, practices and thinking deeply about how to solve the problems of producing good code. We have done very little work to improve the way we debug our code, The good news is that although programmers have not developed very adequate strategies or techniques for mitigating the risks that debugging draws us into, other industries, and in particular aviation, have. We can learn from their lessons without paying their price

uk: вхід без авторизації


uk: Комп'ютерні науки

description: I don't like Mondays-what I learned about data engineering after 2 years on call [EuroPython 2017 - Talk - 2017-07-14 - PythonAnywhere Room] [Rimini, Italy] The first weekend of October 2015 my company bought an advert during the first episode of ""Downton Abbey"" on Sunday evening. It was so successful that the website went down for half an hour. We wanted to look at the analytics and the data to estimate the impact. But they were having a very hard weekend too: the replica of the production database we used was unreachable and the only person who knew how to fix it was on a plane. Monday really was a memorable day This session is about sharing some life experience and best practices around Data Engineering. Attendants should have some previous understanding of data and tech in business. Attendants should leave with an understanding of on-call practices and with some quick win actions to take. What does it mean to be on call? How do you make sure that the phone rings as little as possible? Fixing versus Root Cause Analysis. Systems break at junctures. Especially if the juncture is with a third party. Why and when is it worth reacting to errors as soon as they happen? External Services. Increasing Business Trust. Allowing others to build on solid ground. How do you make sure the phone rings when it should? Alerting tools: emails, chat, specialised applications like PagerDuty, OpsGenie and Twilio Monitoring systems Monitoring data (Data Quality) as a continuous early warning system

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Infrastructure design patterns with Python, Buildbot, and Linux Containers [EuroPython 2017 - Talk - 2017-07-12 - PyCharm Room] [Rimini, Italy] In today’s world of fast-paced development, infrastructure can get left behind quickly, leading to a potential increase in technical debt. Buildbot is normally known to be a continuous integration (CI) framework built in Python, but can be refashioned to solve infrastructure design patterns that arise in enterprise or production and deployment situations. Using Python and native Buildbot components paired with Linux Containers, patterns such as license management, resource allocation, load balancing, and enterprise application deployment can be architected quickly with room for expansion as one’s needs grow. Learn how to move past the CI mindset and construct infrastructure needs with Buildbot and popular Linux Containers such as Docker and ClearContainers. Attendees will learn the best known methods of configuring Buildbot in non-CI implementations, and how to utilize the framework components for future needs

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Large-scale data extraction, structuring and matching using Python and Spark [EuroPython 2017 - Talk - 2017-07-14 - Anfiteatro 1] [Rimini, Italy] Motivation - Matching data collections with the aim to augment and integrate the information for any available data point that lies in two or more of these collections, is a problem that nowadays arises often. Notable examples of such data points are scientific publications for which metadata and data are kept in various repositories, and users’ profiles, whose metadata and data exist in several social networks or platforms. In our case, collections were as follows: (1) A large dump of compressed data files on s3 containing archives in the form of zips, tars, bzips and gzips, which were expected to contain published papers in the form of xmls and pdfs, amongst other files, and (2) A large store of xmls in the form of xmls, some of which are to be matched to Collection 1. Problem Statement - The problems, then, are: (1) How to best unzip the compressed archives and extract the relevant files? (2) How to extract meta-information from the xml or pdf files? (3) How to match the meta-information from the two different collections? And all of these must be done in a big-data environment. Presentation – https://drive.google.com/open?id=1hA9J80446Qh7nd8PMYZibtIR1WjMkdLXfDgwUlts7JM The presentation will describe the solution process and the use of python and Spark in the large-scale unzipping and extraction of files from archives, and how metadata was then extracted from the files to perform the matches on

uk: вхід без авторизації


uk: Комп'ютерні науки

description: In this course, we examine the aspects regarding building multimedia database systems and give an insight into the used techniques. The course deals with content-specific retrieval of multimedia data. Basic issue is the efficient storage and subsequent retrieval of multimedia documents. The general structure of the course is: - Basic characteristics of multimedia databases - Evaluation of retrieval effectiveness, Precision-Recall Analysis - Semantic content of image-content search - Image representation, low-level and high-level features - Texture features, random-field models - Audio formats, sampling, metadata - Thematic search within music tracks - Query formulation in music databases - Media representation for video - Frame / Shot Detection, Event Detection - Video segmentation and video summarization - Video Indexing, MPEG-7 - Extraction of low-and high-level features - Integration of features and efficient similarity comparison - Indexing over inverted file index, indexing Gemini, R *- trees

uk: вхід без авторизації

name: Introduction in Audio Retrieval 1 (12.05.2011)

name: Technische Universität Braunschweig, Institut für Informationssysteme

addressCountry: DE

addressLocality: Braunschweig

addressRegion: Lower Saxony


PyCharm tips and tricks

uk: Комп'ютерні науки

description: PyCharm tips and tricks [EuroPython 2017 - Talk - 2017-07-12 - Anfiteatro 2] [Rimini, Italy] PyCharm, a Python IDE with its free and open-source community edition, in last several years has become a tool of choice for more and more Python developers. But not everybody uses its full power. Moreover, most only use a fraction of the functionality it provides. The reality is that an IDE is not just about a set of integrated tools, but an environment that understands the semantics of your project, of what you’re doing. It can leverage this to provide you with functionality that can make repetitive mundane tasks become frictionless, as well as give insight into potential problems. In this session, we will go through the most powerful features the IDE offers and whether you do web development or work with data using Python, you will benefit knowing how the IDE can leverage your programming skills

uk: вхід без авторизації


Async Web Apps with Sanic

uk: Комп'ютерні науки

description: Async Web Apps with Sanic [EuroPython 2017 - Talk - 2017-07-10 - Anfiteatro 1] [Rimini, Italy] This talk will introduce you to Sanic, the Python 3 web framework that supports async request handlers with a simple, Flask-like, API. We will start with a Sanic overview and compare it with other similar options before looking at the API and working through a basic app. Our goal here will be to get a feel for the Sanic API and demonstrate how it fits together. After this we will cover some of the more unique and interesting possibilities with Sanic, such as support for websockets and HTTP2. A web framework is often only as powerful as its ecosystem, so we will take a look at some of the popular Sanic extensions for databases, templating and testing.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Debugging in Python 3.6: Better, Faster, Stronger EuroPython 2017 - Talk - 2017-07-10 - Anfiteatro 1. Rimini, Italy Python 3.6 was released in December of 2016 and it has a lot of new cool features. Some of them are quite easy for using: a developer can read, for example, about f-strings and they can start using them in their programs as soon as possible. But sometimes features are not so evident, and a new frame evaluation API is one of them. The new frame evaluation API was introduced to CPython in PEP 523 and it allows to specify a per-interpreter function pointer to handle the evaluation of frames. It might not be evident how to use this new feature in everyday life, but it’s quite easy to understand how to build a fast debugger based on it. In this talk we are going to explain how standard way of debugging in Python works and how a new frame evaluation API may be useful for creating the fast debugger. Also we will consider why such fast debugging was not possible in the previous versions of Python. If someone hasn’t made a final decision to move to Python 3.6 this talk will provide some new reasons to do it

uk: вхід без авторизації


Python Bee

uk: Комп'ютерні науки

description: Python Bee EuroPython 2017 - Interactive session - 2017-07-14 - PythonAnywhere Room Rimini, Italy Thought up in 2009 by a group of MIT students who entered the Python bee into a competition for “bad ideas”, a Python bee is like a spelling bee for programmers. Instead of spelling words, participants are given functions to write and must spell them out loud - one character at a time, without looking at the code that they're writing! Players must spell valid Python and every character counts, including symbols and whitespace. And the twist for the second round (credit for this one goes to dropboxblogs): You're now allowed to look at the code, but... you must now team up with other programmers, entering alternate characters without being allowed to communicate via any other means. In order for everyone to be able to have a go, we'll split up into small groups to play - for those that want to be competitive, we'll use a scoring system so that we can still declare an overall champion. You're very welcome to come along just to have fun though!

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Writing code? Pfft... Evolve it instead! [EuroPython 2017 - Talk - 2017-07-12 - Anfiteatro 2] [Rimini, Italy] We're heading into a future of delivery drones, driverless cars and 3D-printed ""hoverboards"" ... With machines now able to perform many tasks better than humans, some people are going to be out of a job. But not software developers, right?! Could a computer generate the code you currently write for a living? In this talk, we'll take a look at one of the many biologically inspired approaches to AI - Genetic Algorithms, and how they can be used to generate code given a description of the function that that code should perform. Spoiler - you're probably not out of a job, yet..

uk: вхід без авторизації


uk: Комп'ютерні науки

description: A robotic platform for natural and effective human-robot interaction [EuroPython 2017 - Talk - 2017-07-14 - Anfiteatro 1] [Rimini, Italy] This talk deals with the usage of artificial intelligent techniques in humanoid robotics. The focus is on human–robot interaction with the goal of building a robotic platform which embodiments are able to interact in natural and effective way with humans through speech, gestures, and facial expressions. The system is fully implemented in Python and based on the Robotic Operating System (ROS). The talk will describe the hardware and software configuration of our currently NAO based humanoid platform. The strategy has been to use available high level Python libraries for spoken language processing, sentiment analysis, vision, interfacing with Artificial Intelligence applications in order to provide current edge technologies performances. The overall system architecture is based on finite state machines nodes interacting via the ROS communication layer. The main fields of applications that the platform is targeting are: - Entertainment - Education - Field robotics - Home and companion robotics - Hospitality - Robot Assisted Therapy (RAT) We will present the latest status of the platform together with a NAO based demo

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Feeding data to AWS Redshift with Airflow [EuroPython 2017 - Talk - 2017-07-13 - Anfiteatro 1] [Rimini, Italy] Airflow is a powerful system to schedule workflows and define them as a collection of interdependent scripts. It is the perfect companion to do extract/transform/load pipelines into data warehouses, such as Redshift. This talk will introduce some of the basis of Airflow and some of the concepts that are data pipeline specific, like backfills, retries, etc. Then there will be some examples on how to integrate this, along with some lessons learned there. At the end, there will be a part dedicated to Redshift, how to structure data there, how to do some basic transformation pre-loading, how to manage the schema using SQLAlchemy and Alembic

uk: вхід без авторизації


Rethinking how we build HTTP APIs

uk: Комп'ютерні науки

description: Rethinking how we build HTTP APIs [EuroPython 2017 - Talk - 2017-07-14 - PyCharm Room] [Rimini, Italy] Rethinking how we build HTTP APIs The Python universe is overflowing with web frameworks, from full featured batteries included frameworks like Django to micro frameworks like Bottle or Flask. They each have their own specific features but in the end they are all very similar in their core functionality of processing requests and generating responses. In this talk I will discuss why I felt the need to create yet another framework, a pico framework, that specifically focuses on the task of building HTTP based APIs for the web. Pico, as it is aptly called, doesn't do templating, ORM, custom routing, authentication, validation, caching, or a million other things. Instead it helps you write clean APIs using simple functions and modules with minimal boilerplate. Pico is both opinionated and flexible in equal measures so you can focus on what matters; your API logic. Pico helps you to write code that that is simple to get started, trivial to test, and easy to maintain as your project grows. APIs built with Pico are self describing so client code can automatically/dynamically be created. Pico includes both a Python & Javascript client but it is also very simple to interact with your API with plain old cURL/Requests/jQuery/etc. It is just a HTTP API after all. Having recently released Pico 2.0, this talk will outline the evolution of this framework over the past 7 years and discuss some lessons learnt along the way about building HTTP APIs and frameworks

uk: вхід без авторизації


Declarative Thinking and Programming

uk: Комп'ютерні науки

description: Declarative Thinking and Programming [EuroPython 2017 - Talk - 2017-07-13 - PyCharm Room] [Rimini, Italy] Declarative Programming is a programming paradigm that focuses on describing what should be computed in a problem domain without describing how it should be done. The talk starts by explaining differences between a declarative and imperative approach with the help of examples from everyday life. Having established a clear notion of declarative programming as well as pointed out some advantages, we transfer these concepts to programming in general. For example, the usage of control flow statements like loops over-determine the order of computation which impedes scalable execution as well as it often violates the single level of abstraction principle. Following the theoretical part of the talk, some practical examples are given how declarative programming can be applied easily within Python. This comprises the advantages and disadvantages of using a configuration file, e.g. config.yaml, versus a Python configuration module, e.g. setup.py. Furthermore, the benefits of avoiding statements of control flow with the help of list and dictionary comprehensions as well as sets are demonstrated. The talk is concluded by a short, high-level excursion to a logistic programming language, namely PyDatalog in order to build the bridge between logistic and declarative programming. This is accomplished by showing how a mathematical crossword can be easily solved with the help of declarative and logistic programming

uk: вхід без авторизації


Cloud Native Python in Kubernetes

uk: Комп'ютерні науки

description: Cloud Native Python in Kubernetes [EuroPython 2017 - Talk - 2017-07-13 - PyCharm Room] [Rimini, Italy] Serverside applications are more and more likely to need to run in dynamic cloud environments where they can automatically scale as required. One rightfully popular approach is to run the application as a Docker container inside a Kubernetes cluster, giving you a lot of operational benefits thanks to the Kubernetes folks. For the most part it is rather easy to make your Python application work inside a Docker container. But there are a number of common patterns one can follow to save time by delegating more things to the runtime environment. Furthermore you can start adding a few simple non-intrusive features to your application which will help improve the application live-cycle in the cluster, ensuring smooth hand-over when migrating the container to different nodes or scaling it up or down. This talk will quickly cover the basics of Kubernetes and will then start from a simple program and will discuss the steps to take to make it behave well in this environment. Starting with the basics steps you can rely on the runtime for, covering logging and all the way to supporting the service life-cycle, health checking and monitoring in a Kubernetes environment. You will see that building a cloud-native application is not very hard and something you can gradually introduce

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Facing the challenge of climate change with xarray and Dask EuroPython 2017 - Talk - 2017-07-12 - Anfiteatro 1. Rimini, Italy In the last years climate change has become one of the most important topic. For any period longer than a few days science is not able to provide comparable forecasts, but still a lot of useful information about future climate conditions can be gained on time scale of a few months to even several years. Climate forecast and climate projections data are quite complex to analyse and represent. The Python science ecosystem proves extremely effective as a platform to retrieve, analyse, process and present this type of data. The backbone of the platform is the n-dimensional array library xarray that provides the perfect mix between pandas data structures and dask performance and parallelization. Reliable climate forecasts and climate projections are now available from the Copernicus Climate Change Service, operated by ECMWF, that will become the central hub for European effort in study and mitigate climate change impacts. The service also provides access to an open cloud platform, the CDS Toolbox, that is based on the Python 3 xarray/dask/pandas stack. In this talk I will present how to retrieve, analyse, process and display climate data in a generic use case with xarray and with the Copernicus CDS Toolbox.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: 2 + 2 = 5: Monkey-patching CPython with ctypes to conform to Party doctrine [EuroPython 2017 - Talk - 2017-07-10 - PyCharm Room] [Rimini, Italy] A few weeks into your tenure as a software engineer at the Ministry of Truth you are assigned your first real feature request: write a context manager that can make “2 + 2” equal 5 at runtime. Your solution should be written only in Python (for maximum portability). Absurd? Perhaps, but you know better than to ask questions. You are no thought-criminal. In this talk I walk through the steps I took to modify the value of two plus two in CPython at runtime—using only Python and the ctypes module. What began for me as a silly and frivolous side project became an education in how the python data model works behind the scenes and how CPython compiles, optimizes, and executes python code. The goal of this talk is to provide an introduction to CPython internals while walking through the steps needed to monkeypatch integer addition to make “2 + 2” equal 5. The audience should come away with a better understanding of how python objects and types are represented in memory, how references are counted, and how python scripts are transformed into abstract syntax trees, compiled into code objects, and then executed by the CPython virtual stack machine. And because I’ve limited myself to using ctypes, these topics can be explored without familiarity with C as a prerequisite

uk: вхід без авторизації


uk: Комп'ютерні науки

description: PostgreSQL and Python, a match made in heaven [EuroPython 2017 - Talk - 2017-07-11 - PyCharm Room] [Rimini, Italy] his talk is about a love story. The perfect love between PostgreSQL and Python. PostgreSQL is the default database choice for many Python developers, because it is robust, stable and open source. In 2ndQuadrant, we breathe PostgreSQL and we love python too, using it as much as possible for internal and external open source projects. We want to share our love for python and PostgreSQL and how they work together. So let us tell you a real love story

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Big Data Analytics at the MPCDF: GPU Crystallography with Python [EuroPython 2017 - Talk - 2017-07-12 - Anfiteatro 1] [Rimini, Italy] In close collaboration with scientists from MPG, the Max Planck Computing and Data Facility is engaged in the development and optimization of algorithms and applications for high performance computing, as well as in the design and implementation of solutions for data-intensive projects. Python is now used at MPCDF in the emerging area of “atom probe crystallography” (APT): a Fourier spectral analysis in 3D reciprocal space can be simulated in order to reveal both composition and crystallographic structure at the atomic scale of billions APT experimental data sets. The Python data ecosystem has proved to be well suited to this, as it has grown beyond the confines of single machines to embrace scalability. This talk aims to describe our approach to scaling across multiple GPUs, and the role of our visualization methods too. Our data workflow analysis relies on the GPU-accelerated Python software package called PyNX, an open source Python library which provides fast parallel computation scattering. The code is well suited for GPU computing, using both the pyCUDA and pyOpenCL libraries. Exploratory data analysis and performance tests are initially carried on through Jupyter notebooks and Python packages e.g., pandas, matplotlib, plotly. In production stage, interactive visualization is realized by using standard scientific tool, e.g. Paraview, an open-source 3D visualization program which e.g. requires Python modules to generate visualization components within VTK files

uk: вхід без авторизації


Dockerized pytests

uk: Комп'ютерні науки

description: Dockerized pytests [EuroPython 2017 - Talk - 2017-07-13 - PyCharm Room] [Rimini, Italy] When working with pytest and custom plugins things can get eery when trying to mimic your Jenkins environment for debugging your tests locally, specially across your team and their workspaces. In this talk will go through the challenges faced to containerize a wild pytest environment. Topics: Running Pytest on Jenkins jobs Pytest custom plugins Challenges for locally debugging/replicating a Jenkins job/pytest run Dockerizing pytest and it's dependencie

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Inside Airbnb: Visualizing data that includes geographic locations [EuroPython 2017 - Talk - 2017-07-13 - Anfiteatro 1] [Rimini, Italy] This talk is about creating visualizations for data that includes geographical locations. We will be using data from InsideAirbnb.com to represent the current status of Airbnb listings in Mallorca. We will show practical examples of different visualizations of geographical data: First, we will start with how to use bokeh to overlay data on google maps. We will use examples to show how the GMapPlot interface works. We will briefly explain how to use it, and what are its limitations. Then, we will talk about plotting shapefiles with holoviews. Shapefiles are files that describe the shape of maps. We will explain how to deal with shapefiles. For instance, we will describe how we use shapefiles to group geographical data by regions. We will also briefly explain how holoviews works and how it can be used to display geographical data. Moreover, we will talk about using datashader and geoviews to visualize big data. First, we will briefly introduce datashader, bin based plotting and the datashader Pipeline. After that, we will show how to create plots with geoviews: how is the Interface, a few use cases and some examples. Finally, we will move to plotting big data on interactive maps. Eventually we will finish with dynamic maps for visualizing time series: we will explain how do we do it and show some examples of how to build an interactive dashboard for visualizing geographical data that varies over time

uk: вхід без авторизації


uk: Комп'ютерні науки

description: From an old-school data managing company to data analytics with Python [EuroPython 2017 - Talk - 2017-07-14 - Anfiteatro 2] [Rimini, Italy] Our mission is to manage a huge amount of communication and document data in large scale industry projects by providing web based project management systems. The increasing amount of communication creates the desire for a GPS helping us and our customers to navigate through the communication stream. Our R&D projects are focusing on topics like clustering, event detection, and network analysis (Who knows who, domain experts). Traveling the wild side of NLP, Data Science, and Analytics, we stumbled across amazing Python tools supporting us in our goal to navigate the project communication and therefor supporting our clients in Project & Risk Management avoiding wrong turns. We would like to share some of our approaches to answer our research topics and challenges: One of the challenges, amongst others, is to utilize and adapt up to date clustering algorithms for social stream data and to expose them as reentrant services. Another one is to tailor them for the current application domain, improving clustering precision by parametrization and other means. Furthermore the integration of a Python based analytics system into an existing JAVA based application environment and eco system is required. In addition, we would also like to share some of our ""traffic jams"" experienced during our travel starting as traditional Java/SQL focusing company that integrated Python into its development portfolio

uk: вхід без авторизації


uk: Комп'ютерні науки

description: PostgreSQL - The Database for Industry 4.0 and IOT [EuroPython 2017 - Talk - 2017-07-12 - PyCharm Room] [Rimini, Italy] Industry 4.0 - the current trend to make more use of data technology and analysis in manufactring. IOT - The Internet of Things, where many ""things"" currently just loosing their information will transfer and store them within central systems. There are aspects of those trends most do agree on: There will be orders of magnitude more data to store and analyze. More agents will need to connect and interact with databases. This talk will explore what makes PostgreSQL an excellent candidate to be the database for managing all that data. Strengths in development, culture and community, extensibility and robustnest will be presented. Selected features of current Version 9.6 and the soon-to-be-released PostgreSQL Version 10 will be discussed for their value in those trends. There will be an explanation of their technical realisation, and special pointers how to use those features from PostgreSQL

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Deep Learning your Broadband Network @HOME [EuroPython 2017 - Talk - 2017-07-14 - Anfiteatro 1] [Rimini, Italy] Most of us have broadband internet services at home. Sometimes it does not work well, and we visit speed test page and check internet speed for ourselves or call cable company to report the service failure. As a Python programmer, have you ever tried to automate the internet speed test on a regular basis? Have you ever thought about logging the data and analyzing the time series ? In this talk, we will go through the whole process of data mining and knowledge discovery. Firstly we write a script to run speed test periodically and log the metric. Then we parse the log data and convert them into a time series and visualize the data for a certain period. Next we conduct some data analysis; finding trends, forecasting, and detecting anomalous data. There will be several statistic or deep learning techniques used for the analysis; ARIMA (Autoregressive Integrated Moving Average), LSTM (Long Short Term Memory). The goal is to provide basic idea how to run speed test and collect metrics by automated script in Python. Also, I will provide high level concept of the methodologies for analyzing time series data. Also, I would like to motivate Python people to try this at home. This session is designed to be accessible to everyone, including anyone with no expertise in mathematics, computer science. Understandings of basic concepts of machine learning and some Python tools bringing such concepts into practice might be helpful, but not necessary for the audience

uk: вхід без авторизації


Inspect (Or Gadget)

uk: Комп'ютерні науки

description: Inspect (Or Gadget) [EuroPython 2017 - Talk - 2017-07-13 - Anfiteatro 2] [Rimini, Italy] Introspection is often seen as a bad coding practice and as such a gadget. Nevertheless, the Python Standard Library provides different tools (among them the 'inspect' library) to easily identify a generator, recover the source code of a function or get a function signature. We propose to spend 1/2 hour to dig into what introspection has to offer to developers, to see what tools are available, what you can get out of them and some useful use cases that we met in our practice at Criteo

uk: вхід без авторизації


Solid Snakes

uk: Комп'ютерні науки

description: Solid Snakes [EuroPython 2017 - Talk - 2017-07-11 - Anfiteatro 1] [Rimini, Italy] No matter whether you run a web app, search for gravitational waves, or maintain a backup script: being responsible for a piece of software or infrastructure means that you either get a pager right away, or that you get angry calls from people affected by outages. Being paged at 4am in everyday life is bad enough. Having to fix problems from hotel rooms while your travel buddies go for brunch is even worse. And while incidents can’t be prevented completely, there are ways to make your systems more reliable and minimize the need for (your!) manual intervention. This talk will help you to get calm nights and relaxing vacations by teaching you some of them

uk: вхід без авторизації


uk: Комп'ютерні науки

description: pybind11 - seamless operability between C++11 and Python [EuroPython 2017 - Talk - 2017-07-14 - PythonAnywhere Room] [Rimini, Italy] https://github.com/pybind/pybind11 pybind11 is a lightweight header-only C++11 library that exposes C++ types to Python and vice versa and allows creating Python extension modules with minimum boilerplate by leveraging compile-time introspection and type inference. While this library's goals and some of the syntax may be considered similar to Boost.Python, it has a much smaller footprint, is entirely self-contained, and offers additional features like direct support for NumPy arrays. In this talk, we will look at how to write Python extension modules in C++ from scratch with pybind11, starting from simple bindings and building up to more complex examples that deal with iterators, STL data structures, NumPy types and Python callbacks. We will also touch upon some of the internal machinery of the library like the virtual call mechanism and reference counting

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Python Packaging - current state and overview [EuroPython 2017 - Talk - 2017-07-10 - PythonAnywhere Room] [Rimini, Italy] Historically, Python packaging has been a source of significant pain for even the most devoted Python enthusiasts. I've found myself in the situation, where I did know the basic concepts behind the tools, but despite that only thing I could do was following tutorials. That was the time to change it and that's the reason this presentation was written. In this talk, I'll provide a quick overview of the current state of Python packaging tools. I'll mostly focus on setuptools, pip and wheels, putting an emphasis on their superiority over their precursors. I'll also list down the honorable mentions of tools worth knowing. Then I'll share examples of how you can use the features of the Setuptools library - those well known and those we use when pip-installing packages, but most of us can't name them. The point of this presentation is to explain how to use tools which are all there, just waiting to make developing, testing, and distributing our Python packages easier. Doesn't matter if you're a Python expert or a beginner - the knowledge covered by this presentation will be useful despite your level

uk: вхід без авторизації


How to create inspiring data

uk: Комп'ютерні науки

description: How to create inspiring data [EuroPython 2017 - Keynote - 2017-07-11 - Anfiteatro 2] [Rimini, Italy] Many times data visualizations need to communicate insights clearly and effectively. But sometimes the goals of a visualization go beyond that: they need to inspire and engage people. But how do you draw them in? What is the process behind creating a creative data visualization? During this talk, I will show some of my projects, and explain a little about the process behind it. Peter Hoffmann - Infrastructure as Python Code: Run your Services on Microsoft Azure "Infrastructure as Python Code: Run your Services on Microsoft Azure [EuroPython 2017 - Talk - 2017-07-11 - Anfiteatro 1] [Rimini, Italy] Using Infrastructure-as-Code principles with configuration through machine processable definition files in combination with the adoption of cloud computing provides faster feedback cycles in development/testing and less risk in deployment to production. The Microsoft Azure Cloud (https://azure.microsoft.com/) allows different ways to provision, deploy and run your python service: The Azure Resource Manger Templates (https://azure.microsoft.com/en-us/resources/templates/) allows you to provision your application using a declarative template. With parameters, variables and Azure template functions, the same template can be used to deploy your application in different stages (dev, test, production) and environments for different customers. We open sourced the tropo library (https://pypi.python.org/pypi/tropo/) to create Azure Resource Templates from python. Azure SDK for Python (http://azure-sdk-for-python.readthedocs.io) for a low level access to manage resources in the Azure Cloud. An Azure Ansible Module (https://docs.ansible.com/ansible/guide_azure.html) based on the Azure SDK to automate software provisioning, configuration management, and application deployment in a single environment. Each of the alternatives has different strengths and drawbacks. Presenting our learnings from migrating our infrastructure into the Azrue Cloud will help to avoid common pitfalls and show deployment patterns that will ease the live of devops

uk: вхід без авторизації


Why you might want to go async

uk: Комп'ютерні науки

description: Why you might want to go async [EuroPython 2017 - Talk - 2017-07-11 - Arengo] [Rimini, Italy] Asynchronous programming is becoming a hot topic in the Python community, especially with the rise of popularity of Python 3 and the new asyncio library in its standard library. However, it can still be a confusing and mysterious concept. In this talk, I will explain what async programming is, how it works and how it could benefit you. My goal of this talk is that at the end of it, you have an idea about what we mean when we say asynchronous programming in Python and you know how and when to use it. In the first part of the talk, I will dive into what asynchronous programming is and what it isn't. Explaining the difference between IO bound code and CPU bound code. Then I will explain how this actually works in Python, explaining the idea of an event loop, coroutines and cooperative multitasking. Finally, I will talk about why this may be beneficial, what kind of applications can really benefit from this and provide some examples from my experience

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Call a C API from Python becomes more enjoyable with CFFI [EuroPython 2017 - Talk - 2017-07-12 - Anfiteatro 2] [Rimini, Italy] Python is slow ! Python can’t access bare metal! You often hear theses assumptions? Theses limitations can be surpassed by Python extensions written in C. However, according to my personal experience, doing this by leveraging C may yield to several issues (e.g., memory management). C Foreign Function Interface for Python (a.k.a., CFFI) allows you to easily write Python extensions. One of the main aims of CFFI is to to wrap C libraries. Along the same lines, it may also be used for performance enhancement. By this call, I am firstly presenting CFFI and it’s two modes of utilization: API level and ABI level. Then I will share my own experience about wrapping shaderc library (https://github.com/google/shaderc) in six hours pyshaderc (https://github.com/realitix/pyshaderc). Next we are going to the next level, let’s wrap all the Vulkan API! Vulkan is the new 3D API and is not a piece of cake. To see the real advantage of CFFI, a side by side comparison between two Python modules is going to be presented: CVulkan is a Vulkan wrapper written fully in C, it’s a classic C extension for Python vulkan is its CFFI counterpart without any C written, only Python I have developed two versions of Vulkan wrapper (one in a pure C, and the second by leveraging CFFI) and I can assure you that CFFI is a a way better! Let’s code

uk: вхід без авторизації


uk: Комп'ютерні науки

description: You need more security in your application packaging [EuroPython 2017 - Talk - 2017-07-11 - Anfiteatro 2] [Rimini, Italy] There are as many different ways to package an application as there are programming or scripting languages. No one tool or library is in itself better than another; however when security comes into the picture, there is definitely a pattern between ease of installation and how secure the delivered application is. As more work is put into packaging the application, more measures can be taken in order to ensure its integrity and prevent security issues. This talk will cover: - The roles involved in the lifecycle of an application, from the start of the development process until it reaches the end user and it is actually used. - The inherent problems in this subject, regarding installation and security, as well as how they are related. - The different ways of packaging an application in order to deliver it to an end user, focused on a Python perspective. After the talk, attendees will have a better grasp on which is the best way for them to package and deliver their application according to their environment and target audience. They will also learn about the upgrade path to switch from one delivery method to another, should they need or want to. For this talk, it is desired that attendees have some general systems knowledge. Even though the talk will be focused on Python applications, some knowledge of information security is desired

uk: вхід без авторизації


AI on a Pi

uk: Комп'ютерні науки

description: AI on a Pi [EuroPython 2017 - Talk - 2017-07-13 - Anfiteatro 1] [Rimini, Italy] In recent months, Artificial Intelligence has become the hottest topic in the IT industry. In this session, we’ll first explain how Deep Learning — a subset of AI — differs from traditional Machine Learning and how it can help you solve complex problems such as computer vision or natural language processing. Then, we’ll show you how to start writing Deep Learning applications in Python thanks to MXNet, a popular library for Deep Learning for both CPUs and GPUs. We'll also see how to use pre-trained models and we'll load one on a Raspberry Pi equipped with a camera. Finally, we’ll show random objects to the Pi…and listen to what it thinks the objects are, thanks to the text-to-speech capabilities of Amazon Polly

uk: вхід без авторизації


Meson: compiling the world with Python

uk: Комп'ютерні науки

description: Meson: compiling the world with Python [EuroPython 2017 - Talk - 2017-07-10 - Arengo] [Rimini, Italy] Compiling source code into libraries and executables has always been problematic, especially for cross platform projects. Typical problems in existing build systems include slow build times, undecipherable syntax, lack of support for cross compilation and so on. Some people choose to not use a build system at all but instead just write a one-off Makefile, which will usually work fine on their machine and nowhere else. All this makes software development slower than it needs to be. The Meson build system (http://mesonbuild.com) is a new build system designed from the ground up to provide a solution for these (and other) problems. It is implemented in Python 3 and provides a simple, non-Turing complete DSL for describing the build. The project provides built-in support for common tasks such as documentation generation, building Qt apps and Python extension modules. Meson is currently seeing a lot of uptake in the Free software world with big projects such as GStreamer, parts of GNOME, Wayland and even the X server either transitioning, or very strongly considering the transition to Meson. In this talk we go over the design of Meson, how to use it for new and existing projects and the benefits this brings, including faster compiles, less time wasted debugging the build system environment and easy access to modern software development tools and practices

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Replacing passwords with multiple factors: email, OTP, and hardware keys [EuroPython 2017 - Talk - 2017-07-10 - Anfiteatro 1] [Rimini, Italy] Passwords have formed the cornerstone of I.T. system authentication for decades, but recent high-profile breaches have underscored the risks of password-based authentication systems. The good news is that we can replace passwords with other factors: email-based authentication one-time passwords (OTP) hardware keys (Yubikeys/U2F, etc.) These factors can be used independently or in conjunction with one another to provide vastly greater security than the traditional username-plus-password combination. Attendees of this talk will walk away with a detailed understanding of: why the traditional username-plus-password combination is failing us why email-based authentication provides no less security overview of one-time passwords and TOTP how to store/retrieve OTP codes, including password manager support state of hardware keys in general, and FIDO U2F standard in particular Attendees will learn how to implement these multi-factor authentication methods in their own Python-based web applications, with primary focus on methods for integrating email-based authentication, one-time passwords, and U2F hardware keys into Django-based projects

uk: вхід без авторизації


If Ethics is not None

uk: Комп'ютерні науки

description: If Ethics is not None [EuroPython 2017 - Keynote - 2017-07-12 - Anfiteatro 2] [Rimini, Italy] The history of computing, as it's often covered in textbooks or talks, remains primarily focused on a series of hardware advancements, architectures, operating systems and software. In this talk, we will instead explore the history of ethics in computing, touching on the early days of computers in warfare and science, leading up to ethical issues today such as Artificial Intelligence and privacy regulation

uk: вхід без авторизації


uk: Комп'ютерні науки

description: GPU Acceleration of a Global Atmospheric Model using Python based Multi-platform [EuroPython 2017 - Talk - 2017-07-10 - PyCharm Room] [Rimini, Italy] A global atmospheric model play an important role in short-term weather forecasting and long-term climate prediction. The model requires enormous computing resources because the all atmospheric states must be calculated every time step (usually a tens of seconds to several minutes). However, since the most atmospheric models run only on CPU machines, they are not able to use the modern microprocessors with high performance and low power such as NVIDIA GPU and Intel MIC. It often costs a lot to convert codes from one machine to the other machine. Although it can be accelerated on GPU and MIC using OpenMP and OpenACC directives, it is not easy to achieve peak performance. I developed a new Python module named PyMIP (Python based Machine Independent Platform) to integrate C, Fortran, CUDA and OpenCL codes with a simple user interface. The main code includes configuration, flow control, IO and MPI parallel is written by Python. Only hotspots include huge number crunching code are written by compile language as C, Fortran, CUDA and OpenCL. The hotspot codes are compiled and imported using PyMIP in runtime. PyMIP enables that a user can switch machines with simple flag. I am developing a new global atmospheric model based on PyMIP to make it easy to utilize various modern microprocessors. In this presentation, I will introduce PyMIP and show the computational performance result in NVIDIA GPU of the dynamical core of the model developed based on PyMIP

uk: вхід без авторизації


uk: Комп'ютерні науки

description: How to build up a Python community and empower women [EuroPython 2017 - Talk - 2017-07-12 - PythonAnywhere Room] [Rimini, Italy] In 2012 not a lot of people were interested in Python in the relatively small city of Tirana, the capital of Albania. Even fewer girls were interested in Python. During (Jona Azizaj and me) our talk we will share the story of how we, a small but dedicated group of people, jump started the community in a small country like Albania and what other small cities and countries should avoid during their first steps in developing a Python community in similar conditions. Most important we will share tips and tricks on how to keep the Python spirit alive for a long time after the first enthusiastic steps, with the goal that our shared experience will help other communities to make the first steps or grow even further. Also nowadays we are witnessing that the number of girls involved in technical fields, especially development, is really low and we are going to present what as the influence on low participation of girls and the steps we should take to fix it

uk: вхід без авторизації


Best Practices for Debugging

uk: Комп'ютерні науки

description: Best Practices for Debugging [EuroPython 2017 - Training session - 2017-07-10 - Sala del Tempio 2] [Rimini, Italy] Debugging is a daily activity of any programmer. Frequently, it is assumed that programmers can debug. However, programmers often have to deal with existing code that simply does not work. This tutorial attempts to change that by introducing concepts for debugging and corresponding programming techniques. In this tutorial, participants will learn strategies for systematically debugging Python programs. We will work through a series of examples, each with a different kind of bug and with increasing difficulty. The training will be interactive, combining one-person and group activities, to improve your debugging skills in an entertaining way. Contents: Syntax Error against Runtime exceptions Get file and directory names right Debugging with the scientific method Inspection of variables with print and introspection functions Using an interactive debugger Pros and cons of try.. except Delta debuggin

uk: вхід без авторизації


Serverless Applications with Chalice

uk: Комп'ютерні науки

description: Serverless Applications with Chalice [EuroPython 2017 - Talk - 2017-07-11 - PythonAnywhere Room] [Rimini, Italy] Serverless computing: it is the practice of building and running services and applications without having to worry about provisioning and managing servers. Serverless computing has been a popular topic the past couple years, and with respect to Python, there have been various different frameworks and tools released for developing and managing your Python serverless applications. This talk will focus on developing and managing your serverless applications with chalice (https://github.com/awslabs/chalice), a python serverless microframework for AWS. Discussion points for this talk will include, but not be limited to: • Overview of serverless applications • Best practices in writing a serverless application • Basic usage and core features of chalice • Writing complete, production-level applications using chalice • Managing and maintaining serverless applications using chalice tooling By the end of the talk, audience members should have a better understanding of serverless computing and how to use chalice to develop and maintain serverless applications

uk: вхід без авторизації


uk: Комп'ютерні науки

description: From Fun to Business - How Open Source Changed my Life [EuroPython 2017 - Talk - 2017-07-10 - PythonAnywhere Room] [Rimini, Italy] Coala (https://coala.io/) began as a fun project. We never believed there would be anything useful growing out of it - and yet it did. Contributors all over the world came to us and helped creating the community as it is. But how did all of this happen? What does this mean for the main contributors? How can we make a living of an open source project? This talk tells our story. What we did - good and bad things - so we can learn from it. From my personal open source contributions over founding an open source project to building a freelance agency and founding a startup. Participants will learn how they can grow an open source project, automate newcomer processes and gain insights into how they can start making a living of it, possibly founding a company eventually. There is no single recipe for this but we can - and should - exchange the tips and tricks we’ve gained with our ventures. This talk is for entrepreneurs, wanna-be-freelancers and future or past open source project founders. This talk is completely new and has not been presented at any conference yet although it overlaps with previous talks of mine which have received much positive feedback at previous regional PyCons. It will be tested at a local meetup to ensure proper timing

uk: вхід без авторизації


Bringing Python to Godot game engine

uk: Комп'ютерні науки

description: Bringing Python to Godot game engine [EuroPython 2017 - Talk - 2017-07-10 - PyCharm Room] [Rimini, Italy] https://godotengine.org/ Godot is an advanced, feature-packed, multi-platform 2D and 3D open source game engine. The project has joined the Software Freedom Conservancy project and it growing community makes it hopes to become a real alternative to Unity&GameMaker. This talk cover a year long journey of the port of Python as a scripting language for the engine, starting from a rant against Godot's Python-like proprietary language. We will have a look at Godot's internal architecture as is it itself a real interpreter with it garbage collector, dynamic typing, introspection and even builtin custom scripting language. All of this having to work next to our Python interpreter and communicate back and forth with it. Finally we will see the different approaches that have been tried to bind Python to Godot each with there own pros&cons: Using Micropython interpreter instead of CPython Using PyBind11 to statically bind to Godot C++ API Using CFFI and rely on a 3rd party C API The audience should have some basic knowledge of C level computing (static vs dynamic language, compilation & linking)

uk: вхід без авторизації


Teeing up Python: Code Golf

uk: Комп'ютерні науки

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Abstract Base Classes: a smart use of metaclasses [EuroPython 2017 - Talk - 2017-07-11 - PythonAnywhere Room] [Rimini, Italy] This talk shows what Python Abstract Base Classes (ABCs) are and how they can be used to categorise objects and implement a virtual inheritance tree. The goal of the talk is to introduce programmers to the concept of ABCs, and to show that metaclasses are not a terribly complex topic, but something that can be used by normal programmers. The talk is divided in three different “levels of difficulty”, each of one going deeper in the technical aspects of the subject. Level 1: Polymorphism - Behaviours and delegation - Collections The first level is meant to give a quick overview of the collections package and some useful code snippets. Even beginners can benefit of the information given here. To complete this level you only need to know what a try/except block is. Level 2: Registering - Abstract Base Classes - Categories The second level shows what real and virtual inheritance are, explains what is the meaning of registering and defines Abstract Base Classes. To complete this level you need to know what class inheritance is (i.e. what class MyList(list) means). Level 3: Build your ABCs - Metaclasses - ABSs as interfaces The third level shows how to create your own ABCs, why metaclasses are involved and why they are not a difficult concept. I will then quickly review a possible use of metaclasses as interfaces. To complete this level you need to know how to instantiate a class, and the difference between class and instance

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Lightning Talks [EuroPython 2017 - 2017-07-12 - Anfiteatro 2] Rimini, Italy

uk: вхід без авторизації

name: EuroPython 2017: Lightning Talks - 2017-07-12


uk: Комп'ютерні науки

description: Lightning Talks [EuroPython 2017 - - 2017-07-13 - Anfiteatro 2] [Rimini, Italy]

uk: вхід без авторизації

name: EuroPython 2017: Lightning Talks - 2017-07-13


uk: Комп'ютерні науки

description: Lightning Talks [EuroPython 2017 2017-07-14 - Anfiteatro 2] [Rimini, Italy]

uk: вхід без авторизації

name: EuroPython 2017: Lightning Talks - 2017-07-14


uk: Комп'ютерні науки

description: Tracing, Fast and Slow: Digging into & improving your web service’s performance [EuroPython 2017 - Talk - 2017-07-11 - Anfiteatro 1] [Rimini, Italy] Do you maintain a Rube Goldberg like service? Perhaps it’s highly distributed? Or you recently walked onto a team with an unfamiliar codebase? Have you noticed your service responds slower than molasses? This talk will walk you through how to pinpoint bottlenecks, approaches and tools to make improvements, and make you seem like the hero! All in a day’s work. The talk will describe various types of tracing a web service, including black & white box tracing, tracing distributed systems, as well as various tools and external services available to measure performance. I’ll also present a few different rabbit holes to dive into when trying to improve your service’s performance

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Despicable machines: how computers can be assholes [EuroPython 2017 - Talk - 2017-07-13 - Arengo] [Rimini, Italy] When working on a new ML solution to solve a given problem, do you think that you are simply using objective reality to infer a set of unbiased rules that will allow you to predict the future? Do you think that worrying about the morality of your work is something other people should do? If so, this talk is for you. In this brief time, I will try to convince you that you hold great power over how the future world will look like and that you should incorporate thinking about morality into the set of ML tools you use every day. We will take a short journey through several problems, which surfaced over the last few years, as ML and AI generally, became more widely used. We will look at bias present in training data, at some real-world consequences of not considering it (including one or two hair-raising stories) and cutting-edge research on how to counteract this. The outline of the talk is: - Intro the problem: ML algos can be biased! - Two concrete examples. - What's been done so far (i.e. techniques from recently-published papers). - What to do next: unanswered questions

uk: вхід без авторизації


uk: Комп'ютерні науки

uk: вхід без авторизації

name: Mock it right! A beginner’s guide to world of tests and mocks.


Writing Awesome PyPI packages in Python

uk: Комп'ютерні науки

description: Writing Awesome PyPI packages in Python [EuroPython 2017 - Talk - 2017-07-14 - PyCharm Room] [Rimini, Italy] One of the strengths of the Python programming language is the huge base of Open Source libraries. The PyPI (Python Package Index) repository provides currently 105,917 packages, many of them developed actively by contributors. This talk is a tour through various tools and practices, which help to keep your package in a good state for your users and make it easier for other developers to contribute. One can find these practices in projects of different size, such as Django (24,244 commits, 1,397 contributors) Pandas (15,005 commits, 754 contributors) and Faker (20 commits, 3 contributors). Some things to consider when creating your own package: using a Makefile for automatic testing, coverage analysis and environment setup. structuring your .gitignore file. using pyenv and .python-version for Python version management. using tox to ascertain that code is working in different environments. squashing different configuration files to a single setup.cfg file. using EditorConfig and .editorconfig to automatically set project coding standards in the editor

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Using Python and microservices to fuel WebPush at Mozilla [EuroPython 2017 - Talk - 2017-07-13 - Anfiteatro 2] [Rimini, Italy] This talk will focus on how python and microservices fuel webpush in the storage team of Mozilla . It will also act as a good introduction to webpush technology and how to integrate it into web apps. The talk will cover: How webpush works? The roles played by the various players involved (service workers and push servers and how they interact to bring about the webpush magic). The idea behind the service, WebPush Channels which is at the heart of webpush at Mozilla's storage team. How the service was developed will be covered in detail. How developers can use WebPush Channels to integrate web push in their web apps

uk: вхід без авторизації


A Gentle Introduction to Data Science

uk: Комп'ютерні науки

description: A Gentle Introduction to Data Science [EuroPython 2017 - Talk - 2017-07-12 - Anfiteatro 1] [Rimini, Italy] This introductory talk, will cover the basics of datascience. From the incluence of artificial intelligence, and the quest to replicate a human mind, to a practical demo on how to build a hello world machine learning in Python. The talk will try to answer questions such as: What do we understand by data science? What do we know about the human mind, that can be an inspiration for our programs? Which problems can we solve with data science? What tools are available to do data science in Python

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Automatic Conference Scheduling with PuLP [EuroPython 2017 - Talk - 2017-07-12 - Arengo] [Rimini, Italy] Linear programming is often regarded as very theoretical or even not known at all as a well-developed method of solving real world problems. The talk gives a short introduction to LP problems and presents an interesting use case for the Python linear programming problem solver PuLP: that of creating a conference schedule

uk: вхід без авторизації


EPS General Assembly

uk: Комп'ютерні науки

description: EPS General Assembly [EuroPython 2017 - EuroPython session - 2017-07-13 - PythonAnywhere Room] [Rimini, Italy] This is where the EuroPython Society (EPS) board gives its reports, resolutions are passed and the EPS members can vote in a new EPS board

uk: вхід без авторизації


uk: Комп'ютерні науки

description: EuroPython 2018: Help us build the next edition! [EuroPython 2017 - EuroPython session - 2017-07-13 - PythonAnywhere Room] [Rimini, Italy] We need help with organizing and running EuroPython 2018. In this session, we will explain how the EuroPython workgroup model works and where you could help

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Django, Django Rest Framework and Angular2: RAD on SaaS platforms [EuroPython 2017 - Talk - 2017-07-10 - Anfiteatro 1] [Rimini, Italy] Rapid Application Development has been a major topic for the desktop development world. Yet, desktop development has proven to be at the end of its timeline and the latest major environment is now the web in its many forms (from browser to Electron and similars). Django offers an amazing infrastructure and Django Rest Framework an amazing middleware to solve most of the problems. The RAD development on Angular2 is then enabled by a set of libraries developed at Modal Nodes for both front and backend that ease the development of the front end tools and front end interactions with both unauthenticated and authenticated systems via JWT and Djoser. Specifically, we will see the changes in the metadata that will enable better interactions and the usage of both the backend elements and the front-end ones in order to ease development

uk: вхід без авторизації


Discovering Descriptors

uk: Комп'ютерні науки

description: Discovering Descriptors [EuroPython 2017 - Talk - 2017-07-11 - PythonAnywhere Room] [Rimini, Italy] Python is full of amazing (yet often overlooked) features, that can help us write better, cleaner, and more maintainable code. One of them is the descriptors interface. By means of descriptors, we can run code when accessing or setting properties of another object. This can have a lot of applications, and keeping descriptors in mind might come in handy when facing a hard problem. The goal of the talk is to explore descriptors, and how they can be written, as well as analysing some interesting examples in well-known libraries or projects in order to identify scenarios where descriptors are the Pythonic way to go

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Effortless Logging - Let the loggers work for you [EuroPython 2017 - Talk - 2017-07-10 - PythonAnywhere Room] [Rimini, Italy] Logs are your best friends on those late nights when you try to troubleshoot that problem in production that was written by a friend of you who is on holidays at the moment. Logs are the main way to know what is happening at runtime with an running application but as we don’t realize how important they are until we actually need them it is usually an under appreciated part of our development process. This talks overviews the logging module of the standard library and demonstrates some basic best practices and techniques make the most out of our logging when we need it. After this talk you will be fully familiar not only on how to use the logging library but also how it is actually designed, how it works, how to extended further than the basic usage and some sample recipes and configurations for complex applications

uk: вхід без авторизації


uk: Комп'ютерні науки

description: "Finding bugs for free: The magic of static analysis. [EuroPython 2017 - Talk - 2017-07-14 - Arengo] [Rimini, Italy] Overview Static analysis is a powerful technique for improving the quality of software. It allows you to find bugs in your Python code without any the need for any annotations. At lgtm.com we provide state-of-the-art static analysis for a number of languages including Python. Our Python analysis can find bugs without the annoyance of many false positives. We have already found bugs in the standard library, requests, numpy and many others. In this talk I will briefly describe what static analysis is, how it can be useful to you, and then give an overview of the techniques we use. Intended Audience This talk is aimed at all Python developers, although I expect that those who have used pyflakes, pep8, pylint or mypy in the past will find it the most accessible. I hope that this talk will inspire developers to start using static analysis tools (hopefully ours) and to produce better code as a result. I will assume that the audience knows Python well, but knows little or nothing about static analysis.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Pythonic Refactoring: Protecting Your Users From Change [EuroPython 2017 - Talk - 2017-07-14 - PythonAnywhere Room] [Rimini, Italy] So you've released a library! Now you need to maintain it. You want to add features, restructure the code, fix bugs, and maybe improve the library's usability. Your users just want their code to carry on working. That's okay! This talk will cover techniques in both code and project management to allow you to keep your code moving forwards without breaking your users' code. It is aimed at developers with a little experience of writing libraries in Python, and will cover some intermediate subjects like function decorators and magic methods. Refactoring in Python is a mixed bag - on the one hand you have powerful tools like the @property decorator, __dunder__ methods, and even metaclasses. On the other hand, because Python code has no concept of private or protected like some other languages, it can be difficult to know what your public interface even is. I'll talk about how to identify your public interface, and make that clear to your users. I'll cover how to structure your tests so you know when you've broken your public interface. I'll discuss how to use some of Python's language features to trick your users into thinking your code hasn't changed at all (except for those brilliant new features you've just added!). And finally, I'll cover how you know it's time to break backwards compatibility and how to break it to your users

uk: вхід без авторизації


Rendering complex 3D-Geodata using pyRT

uk: Комп'ютерні науки

description: Rendering complex 3D-Geodata using pyRT [EuroPython 2017 - Talk - 2017-07-12 - Arengo] [Rimini, Italy] PyRT (pronounced "pirate") is a rather new open source project creating a ray tracer in pure Python and some optional CPU/GPU acceleration using bindings. Ray tracing is a technique for generating an image by tracing the path of light. PyRT was created to render large 3D City models. In this talk, the possibilities and experiences of ray tracing in Python using pyRT are shown. pyRT also runs in the Jupyter Notebook. Rendering complex 3D-Geodata, such as 3D-City models with an extremely high polygon count and a vast amount of textures at interactive framerates is still a very challenging task, especially on mobile devices. This talk presents an approach for processing, caching and serving massive geospatial data in a cloud-based environment for large scale, out-of-core, highly scalable 3D scene rendering in a web-based solution. PyRT is used for rendering large amounts of geospatial data. The approach for processing, rendering and caching 3D-City Models is shown.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Making Games with Python: Mission Impossible? EuroPython 2017 - Panel - 2017-07-11 - Arengo. Rimini, Italy A discussion about making full-featured, commercial games in python, both 2D and 3D. Looking at state of the art approaches to using python in gaming, we will compare the alternatives: pygame (2D API), OpenGL (via pygame/pySDL2), Unreal Engine 4 and the Godot Engine (with further comparison to Unity 3D game engine). We will also look at other benefits of using python in the gaming context, such as integration with 3D modelling software, scripting the asset pipeline and GIS data integration. Finally, can (and should) python move beyond being the language of plugins and scripts, and become the main language for creating game development projects

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Executing scripts in a few milliseconds with MicroPython EuroPython 2017 - Talk - 2017-07-14 - Arengo. Rimini, Italy Command execution time can become important in a number of applications. Commands executed in command-line completion need to execute in less then 100ms or users will perceive a delay. In Shell scripting one might want to execute commands repeatedly in a for loop and fast execution times makes this more feasible. Python is a very powerful language but has a much slower startup time compared to other interpreted languages like Perl, Lua and Bash. It can take up to 10 times longer to startup then some of these other languages. MicroPython was written as a lean implementation of Python 3 with a small subset of the standard library mainly intended to run on microcontrollers. But it happily runs on Unix systems with excellent startup performance, making it an ideal candidate for implementing certain time sensitive commands. This talk will: Explain when achieving fast execution times matters and when it doesn’t. Present two different approaches to measuring command execution time, one simple and the other more detailed and accurate. Compare execution times of a simple set of scripts that add two numbers in an number of different interpreted languages (micropython, python3, awk, perl, lua, bash). Present an example use case of MicroPython on Unix. Bash completion for pip install that completes the names of available packages live from a remote pypi mirror. Demonstrate the auto completion script with pip on a local pypi mirror

uk: вхід без авторизації


uk: Комп'ютерні науки

description: How to apply deep learning for 3D object [EuroPython 2017 - Talk - 2017-07-13 - Arengo] [Rimini, Italy] I talk about the ""How to achieve the 3D object recognition accuracy 80%(40 category) for 3month " Deep Learning is the good technique for image recognition and speech recognition. And it apply the other field. Many people try to apply the Deep Learning, but it is difficult to make a result. In my situation, I have enough knowledge about the 3D object and label data. I'll talk about the how to achieve the 80 % (40 category) In My approach 1: Getting the Information 1.1: How to choose the information 1.2: How to choose framework 2: Getting the Data 2.1: Public data 2.2: How to make the own data 3: Try small 3.1: Trying the small data set 3.2: Trying the train and predict 4: Deciding the direction focus 4.1: Choose what you can control 5: Prioritizing with high certainty 5.1: Pre-process 5.2: Improve the train speed 6: Increasing the challenge times 6.1: Using the GPU 6.2: CPU optimization 6.3: multi process 6.4: resource 7: Parameter Tuning 7.1: Improve Model Versatility or Improve Data Versatility 7.2: Model Tuning 7.2.1: RandomDropOut 7.2.2: LeakyRelu 7.3: Data Argumantion 8: Product 8.1: Minimum function 8.2: Using Docker I hope to people who want to apply Deep Learning for the 3D mode

uk: вхід без авторизації


uk: Комп'ютерні науки

description: How to make money with your Python Open-Source Project [EuroPython 2017 - Talk - 2017-07-12 - PythonAnywhere Room] [Rimini, Italy] Developers create new open-source projects every day. As the project becomes popular they have to invest more and more time into it's development and of course at some point a question arises: "How can I make some money with my project ?" In this talk we will try to answer this question. We will talk about different models of making money, their pros and cons. We will concentrate on Python Open-Source projects mostly and try to answer the following questions: What to sell? Where to sell? How to distribute? How to license? After this talk you will have a clear understanding of how you can make money with your project. What your next steps should be and how you can get the actual profit while still continuing making your customers happy

uk: вхід без авторизації


Linespots: Predicting Bugs in your Code

uk: Комп'ютерні науки

description: Linespots: Predicting Bugs in your Code [EuroPython 2017 - Talk - 2017-07-14 - Arengo] [Rimini, Italy] In times of increased awareness of technical debts, reviewing and auditing code becomes more important. The main problem with code review is the amount of time that is being spent searching the needle in the haystack. You just don’t know what you are looking for and where to find it. One possible solution to the problem to the idea of bug prediction. If we could somehow know where bugs are in our code, focusing reviewing efforts on that area should, in theory, increase the effectiveness of our review. More bugs should be uncovered while less time is spent reviewing. This is what Linespots tries to offer. It is an algorithm developed during my thesis that analyses a project’s history and calculates a probability value for each line of code in the project, representing the likeliness of a bug existing in that line. Using the probabilities, reviewers can focus on the areas that are at a higher risk of containing bugs and spend less time on robust code. The research done so far showed, that by analyzing 0.5% lines of code with the highest risk values in a project, an average of 50% of the bugs fixed in the next 150 commits were correctly predicted by Linespots. This is an improvement by factor 10 compared to Bugspots, an algorithm developed at Google, which Linespots is based upon. Outline: Basics and functionality of Linespots Research results Pros and cons of Linespots Results of a case stud

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Developing elegant workflows in Python code with Apache Airflow [EuroPython 2017 - Talk - 2017-07-13 - Anfiteatro 1] [Rimini, Italy] Every time a new batch of data comes in, you start a set of tasks. Some tasks can run in parallel, some must run in a sequence, perhaps on a number of different machines. That's a workflow. Did you ever draw a block diagram of your workflow? Imagine you could bring that diagram to life and actually run it as it looks on the whiteboard. With Airflow you can just about do that. http://airflow.apache.org Apache Airflow is an open-source Python tool for orchestrating data processing pipelines. In each workflow tasks are arranged into a directed acyclic graph (DAG). Shape of this graph decides the overall logic of the workflow. A DAG can have many branches and you can decide which of them to follow and which to skip at execution time. This creates a resilient design because each task can be retried multiple times if an error occurs. Airflow can even be stopped entirely and running workflows will resume by restarting the last unfinished task. Logs for each task are stored separately and are easily accessible through a friendly web UI. In my talk I will go over basic Airflow concepts and through examples demonstrate how easy it is to define your own workflows in Python code. We'll also go over ways to extend Airflow by adding custom task operators, sensors and plugins

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Running Python code in parallel and asynchronously [EuroPython 2017 - Talk - 2017-07-11 - Anfiteatro 2] [Rimini, Italy] My outline will be: 1) What does it mean to run code in parallel in Python? How does it differ from concurrency? Can they be applied at the some time? 2) GIL and why it complicates parallelism in Python (CPython), but only to some extent. 3) Difference between a thread and a process from the OS point of view. 4) When parallelism in Python is useful and when to avoid it. 5) Description of how to achieve parallel execution in CPython and how to do it properly. 6) Possible traps when using parallel programming in Python. 7) What happens if the code runs both in parallel and asynchronously? 8) Is it really beneficial? 9) How such execution can be achieved? As the outline shows I will focus on the parallel part as it is an important topic in our current time of multicore processors and multiprocessor systems. The topic has been discussed a lot of times but mainly from the scientific point of view, where it's been used for speeding up calulcations time. I will not go into these use cases (e.g. using MPI) but rather discuss it from web development point of view (e.g. multi worker applications)

uk: вхід без авторизації