Loading…
JuliaCon 2017 has ended

Sign up or log in to bookmark your favorites and sync them to your phone or calendar.

Lightning Talk [clear filter]
Wednesday, June 21
 

10:06am

Diversity and Inclusion at JuliaCon and in the Scientific Computing Community
This talk will address efforts to promote diversity and inclusion at JuliaCon this year, with the goals of a) increasing awareness of JuliaCon’s initiatives among conference participants and the Julia community at large and b) starting a public conversation about diversity and inclusion with other open-source conferences. It will place JuliaCon’s initiatives in the context of the broader scientific computing community.


Speakers
EM

Erica Moszkowski

Federal Reserve Bank of New York
Erica is a research analyst in the Macroeconomics function at the Federal Reserve Bank of New York and the Diversity Chair for JuliaCon 2017. She is a 2015 graduate of Williams College and plans to begin her Ph.D. in Economics in the fall.


Wednesday June 21, 2017 10:06am - 10:18am
West Pauley Pauley Ballroom, Berkeley, CA

11:16am

Julia: a Major Scripting Language in Economic Research?
Julia has the potential to become a major programming language in economics. In this presentation I will suggest a new way to calibrate models of economic growth. For that purpose I use a Markov-Chain Monte-Carlo algorithm (the Klara package) and I repeatedly solve for the roots of a big system of nonlinear equations using the JuMP and Ipopt packages. With this approach I am able to estimate the distributions of parameter values which drive long-run economic growth and project confidence intervals of macroeconomic variables into the future. For this purpose Julia is the best programming language that I know of, because it combines a great range of functionalities and at the same time it is very fast. To conclude, I will reflect on some challenges that came up during the project.


Speakers
AC

Anna Ciesielski

ifo Institute
I am a Ph.D. student in the economics department at the Ludwig-Maximilians University in Munich (Germany).


Wednesday June 21, 2017 11:16am - 11:28am
West Pauley Pauley Ballroom, Berkeley, CA

11:16am

Using Julia to Inform Qb@ll Development
Qb@ll is an open source density functional theory package being developed at Lawrence Livermore National Lab. Present work focuses on efficient time integration methods, with the aim of substantially increasing the timescales accessible in simulations of electron dynamics. Qb@ll is several hundred thousand lines of C++, Fortran, and Perl. Exploring new methods directly in the code base is extremely developer-time inefficient. Simultaneously, rigorous exploration of relevant methods is highly computationally intensive, precluding the use of traditional high-productivity languages. Screening new methods in Julia has proven highly effective, even accounting for the time to learn the language and implement a small code to explore electron wave function integration.


Speakers
avatar for Jane Herriman

Jane Herriman

Director of Diversity and Outreach/student, Julia Computing/Caltech
Jane Herriman is Director of Diversity and Outreach at Julia Computing and a PhD student at Caltech. She is a Julia, dance, and strength training enthusiast.


Wednesday June 21, 2017 11:16am - 11:28am
East Pauley Pauley Ballroom, Berkeley, CA

11:28am

Continuous-Time Point-Process Factor Analysis in Julia
Neurons throughout the brain, and particularly in the cerebral cortex, represent many quantities of interest using population codes. Latent variable models of neural population activity may be seen as attempting to identify the value, time-evolution and encoding of such internal variables from neural data alone. They do so by seeking a small set of underlying processes that can account for the coordinated activity of the population.introduce a novel estimation method [1] for latent factor models for point processes that operates on continuous spike times. Our method is based on score matching for point process regressions [2] adapted to population recordings with latent processes formed by mixing basis functions.basis functions are represented as either Fourier modes, or functions living in a Reproducing Kernel Hilbert Space, parametrised using MLKernels. The method requires the kernel matrix as well as the first and second derivatives thereof, which we can compute efficiently via the Calculus package, making use of anonymous functions. Parameter estimation is then closed form and thus lightning fast up to normalisation, but afterwards we need to estimate the total intensity in the observation period. The approximation of the time integral relies on Cubature.jl.to its speed, this method enables neuroscientists to visualise latent processes in real time during experimental recordings and immediate compare them to their expectations, thus quickening the Planning-Design-Analysis loop by a large margin.1. https://github.com/gbohner/PoissonProcessEstimation.jl2. Sahani, M; Bohner, G and Meyer A, 2016 - Score-matching estimators for continuous-time point-process regression models. MLSP2016


Speakers
GB

Gergo Bohner

Gatsby Computational Neuroscience Unit, UCL
Gergo focused on math and physics in high school, but completed an engineering degree in Molecular Bionics as an undergrad in his home city, Budapest. After being the image processing guy in a cancer research lab in London as well as learning about AI in Leuven, Belgium, Gergo settled... Read More →


Wednesday June 21, 2017 11:28am - 11:40am
West Pauley Pauley Ballroom, Berkeley, CA

11:28am

JLD2: High-performance Serialization of Julia Data Structures in an HDF5-compatible Format
At present, two options exist for saving Julia data structures to disk: Julia's built-in serializer and the JLD (Julia data) package. The built-in serializer achieves reasonable performance, but uses a non-standardized format that differs by Julia version and processor architecture. JLD saves data structures in a standardized format (HDF5), but has substantial overhead when saving large numbers of mutable objects. In this talk, I describe the design of JLD2, a re-implementation of JLD. By replacing JLD's dependency on the HDF5 library with a pure Julia implementation of a subset of HDF5, JLD2 achieves performance comparable to Julia's built-in serializer, while writing files readable by standard HDF5 implementations. Additionally, JLD2 resolves numerous issues with the previous JLD format and implementation.


Speakers
SK

Simon Kornblith

Google
I am currently a Ph.D. student in neuroscience at MIT, but my affiliation will probably change before JuliaCon.


Wednesday June 21, 2017 11:28am - 11:40am
East Pauley Pauley Ballroom, Berkeley, CA

11:40am

Teaching Through Code
Standards already exist to improve software readability, but code understandable by a colleague differs from the best code to present to a student. As a scientist, I have often had to jump from mathematics or pseudo-code to a fully fledged implementation, with no chance to gain purchase in an intermediate middle ground. In the last year, I have worked on a Julia blog in computational physics and numerics and have striven to write code comprehensible to someone unfamiliar with the fundamental principles of the algorithm. In this talk, I will display both good and bad examples of documentation and tutorials, as well as guidelines for improvement.

Follow along live at: http://slides.com/christinalee/juliacon/live during the presentation

Speakers
avatar for Christina Lee

Christina Lee

graduate student, Okinawa Institute of Science and Technology
I'm a graduate student in condensed matter physics, specifically quantum spin liquids computationally and analytically. In addition to my normal graduate work, I write a series of Julia jupyter notebooks translated into a static blog covering a series of topics in physics and... Read More →


Wednesday June 21, 2017 11:40am - 11:52am
East Pauley Pauley Ballroom, Berkeley, CA

11:40am

TheoSea: Theory Marching to Light
TheoSea (for THEOry SEArch) is a Julia meta-program that discovers compact theories from data if they exist. It writes candidate theories in Julia and then validates: tossing the bad theories and keeping the good theories. Compactness is measured by a metric, such as the number of space-time derivatives. A theory can consist of more than one well-formed formula over a mathematical language. The underlying algorithm is optimal in terms of compactness, although it may be combinatorially explosive for non-compact theories. TheoSea is now working on re-discovering the source-free Maxwell equations and the wave equation of light. There are many applications.


Speakers
MS

Mark Stalzer

Principal Computational Scientist, California Institute of Technology
https://www.linkedin.com/in/mark-stalzer-97254a/


Wednesday June 21, 2017 11:40am - 11:52am
West Pauley Pauley Ballroom, Berkeley, CA

2:42pm

DataStreams: Roadmap for Data I/O in Julia
The DataStreams package defines a powerful and performant interface for getting data in and out of Julia. Come learn about exciting advances in features and performance as we approach Julia 1.0.

Speakers
avatar for Jacob Quinn

Jacob Quinn

Senior Engineer, Domo
Attended Carnegie Mellon for a master's degree in data science and active Julia contributor for 6 years now.


Wednesday June 21, 2017 2:42pm - 2:54pm
West Pauley Pauley Ballroom, Berkeley, CA

2:42pm

Statically Sized and Typed Data in Julia
I will describe my experience working with and developing highly efficient data structures in Julia which leverage statically known information - such as the type(s) contained in a collection, or the predetermined size of an array. Julia's combination of efficient code generation and metaprogramming capability make it an ideal language to implement data structures which are both convenient to program with and lightning fast in execution.plan to describe the various metaprogramming approaches which are useful for implementing containers of known size or having inhomogeneous elements - by using traits, pure functions, generated functions, macros and recursion. I will touch upon the successes and failures of packages like StaticArrays.jl, Switches.jl and TypedTables.jl, and hope to preview work on a more flexible yet strongly-typed tabular data structure than currently provided by TypedTables.


Speakers
AF

Andy Ferris

Fugro
I currently work at Fugro Roames on the intersection of machine learning, geodesy and big data. Beginning with detailed, large-scale scans of the physical world, we deduce intelligence for our clients that would be expensive to acquire directly. Previously, I worked in academia as... Read More →


Wednesday June 21, 2017 2:42pm - 2:54pm
East Pauley Pauley Ballroom, Berkeley, CA

2:54pm

JuliaBox on Various Cloud Platforms and Current Development Goals
A quick presentation on our experience of running JuliaBox on various cloud platforms viz. Amazon AWS, Google Cloud Platform and Microsoft Azure. Also we present the current development plans to make JuliaBox faster and support a host of new features.


Speakers
avatar for Nishanth H. Kottary

Nishanth H. Kottary

Software Developer, Julia Computing, Inc.
Software Developer at Julia Computing Inc.


Wednesday June 21, 2017 2:54pm - 3:06pm
West Pauley Pauley Ballroom, Berkeley, CA

2:54pm

Using Return Type Annotations Effectively
Function return type annotations were added over a year ago and have seen some usage in Base but little in user-land. This talk will describe how they are implemented and discuss how ResultTypes.jl uses them to great effect.


Speakers
avatar for Eric Davies

Eric Davies

Developer, Invenia Technical Computing
Eric is co-leading Invenia's transition to Julia and designing the building blocks for Invenia's Energy Intelligence System.


Wednesday June 21, 2017 2:54pm - 3:06pm
East Pauley Pauley Ballroom, Berkeley, CA

4:52pm

Junet: Towards Better Network Analysis in Julia
I will present Junet — a new package for network analysis that seeks to be a fast and hackable alternative to mainstream network analysis libraries like NetworkX, igraph, and graph-tool. Unlike other Julia packages, it allows to quickly traverse and modify the graphs as well as to associate the attributes with their nodes and edges. I will discuss the data structures implemented in Junet and showcase how specific Julia's features allow to make them efficient. For example, thanks to parametric types it is possible to shrink the memory consumed by Junet to a fraction of what other libraries require. And conjunction of multiple dispatch with just-in-time compilation allows to optimize some methods based on the specific types they operate on, sometimes eliminating the computation altogether. The talk will also overview things that are experimental and don't work so well like creating zero-cost iterators and parallelizing loops. Finally, I will present the benchmarks comparing Junet with state-of-the-art libraries for network analysis.


Speakers
IZ

Igor Zakhlebin

Northwestern University
Graduate student


Wednesday June 21, 2017 4:52pm - 5:04pm
West Pauley Pauley Ballroom, Berkeley, CA

5:04pm

Julia for Seismic Data Processing and Imaging (Seismic.jl)
Seismic.jl is a Julia package that provides a framework for seismic wave modeling, data processing and imaging. The current version includes support to read/write seismic data, reconstruction and denoising of multi-dimensional (5D) seismic data via parallel and distributed tensor completion, GPU-accelerated finite-difference solvers for seismic wave simulations, and seismic imaging including passive-seismic source location. In this lightning talk, I will briefly describe our area of research and immediately, show how Seismic.jl has been used as main framework for our research in applied seismology.


Speakers
WG

Wenlei Gao

University of Alberta
Wenlei Gao received his B.Sc in 2010 and M.Sc in 2013 in Geophysics from China University of Petroleum, Beijing, China. From 2013 to 2014 he worked for the Research Institute of China National Offshore Oil Company. He is currently enrolled in the Ph.D. program in Geophysics in the... Read More →


Wednesday June 21, 2017 5:04pm - 5:16pm
West Pauley Pauley Ballroom, Berkeley, CA
 
Thursday, June 22
 

10:40am

GR Framework: Present and Future
GR is a plotting package for the creation of two- and three-dimensional graphics in Julia, offering basic MATLAB-like plotting functions to visualize static or dynamic data with minimal overhead. In addition, GR can be used as a backend for Plots, a popular visualization interface and toolset for Julia. Using quick practical examples, this talk is going to present the special features and capabilities provided by the GR framework for high-performance graphics, in particular when being used in interactive notebooks (Jupyter), development environments (Atom), desktop applications (nteract) or terminal programs (iTerm2). The presentation also introduces how to embed GR in interactive GUI applications based on QML.jl, a new plotting interface to Qt5 QML. Moreover, some experimental features and elements will be introduced, i.a. a meta layer providing an interactive interface to new backends based on Qt5 or JavaScript.


Speakers
avatar for Josef Heinen

Josef Heinen

Research Associate, Forschungszentrum Jülich GmbH
Josef Heinen is the head of the group "Scientific IT–Systems" at the Peter Grünberg Institute / Jülich Centre for Neutron Science, both institutes at Forschungszentrum Jülich, a leading research centre in Germany. The design and development of visualization systems have been... Read More →


Thursday June 22, 2017 10:40am - 10:52am
East Pauley Pauley Ballroom, Berkeley, CA

10:40am

Sustainable Machine Learning Workflows at Production Scale with Julia
The recent advances in machine learning and artificial intelligence are amazing, and Julia seems poised to play a significant role in these fields. Yet, in order to have real value within a company, data scientists must be able to get their models off of their laptops and deployed within a company’s distributed data pipelines and production infrastructure. In this talk, we will implement an ML model locally and talk about the trouble we can get into taking this to production. Then, against all odds, we will actually deploy the model in a scalable manner to a production cluster. Now that’s a pretty good 10 minutes!


Speakers
avatar for Daniel Whitenack

Daniel Whitenack

Lead Data Scientist and Advocate, Pachyderm
Daniel Whitenack (@dwhitena) is a Ph.D. trained data scientist working with Pachyderm (@pachydermIO). Daniel develops innovative, distributed data pipelines which include predictive models, data visualizations, statistical analyses, and more. He has spoken at conferences around the... Read More →


Thursday June 22, 2017 10:40am - 10:52am
West Pauley Pauley Ballroom, Berkeley, CA

2:51pm

Interfacing with LLVM Using LLVM.jl
LLVM.jl provides a high-level Julia interface to the LLVM compiler framework. In this talk, I'll explain how to use LLVM.jl for basic code generation and execution, as well as how to integrate it with the rest of the Julia compiler.


Speakers
avatar for Tim Besard

Tim Besard

PhD student, Ghent University
PhD student on compilation techniques for high-level languages, working on the Julia programming language and its CUDAnative.jl GPU back-end.


Thursday June 22, 2017 2:51pm - 3:03pm
East Pauley Pauley Ballroom, Berkeley, CA

3:03pm

Automatically Deriving Test Data for Julia Functions
The use of multiple dispatch in Julia’s standard library and user-written functions presents a challenge for automated techniques of generating test data. In order to exercise all the methods that implement a function, the generation technique must generate test data with diverse data types, but traditional techniques typically focus solely on diverse data values and implicitly assume a constant data type. In this talk, I will demonstrate our solution to this challenge which automatically learns an effective probability distribution over types and methods that create instances of these types. I will explain how we used this approach to fuzz-test some common arithmetic and string functions in the Julia standard library, in the process identifying three faults.


Speakers
SP

Simon Poulding

Blekinge Institute of Technology, Sweden
I am an assistant professor in software engineering. The primary objective of my research is to improve the cost-effectiveness of software testing through the application of machine learning and statistical methods. I have been a user of Julia for three years, and am co-developer... Read More →


Thursday June 22, 2017 3:03pm - 3:15pm
East Pauley Pauley Ballroom, Berkeley, CA

3:03pm

Heavy-duty pricing of Fixed Income financial contracts with Julia
The pricing of bonds or a Credit Portfolio usually has simple mathematics. However, when faced with a big portfolio, careful design is crucial for a fast execution time. I'll show how I designed a solution to price a database of about 2.4 million contracts with 78 million cashflows in up to 3.5 minutes using a 8 core machine. The solution uses plain simple Julia code, some parallel computation and buffering strategies, Julia's native serialization for fast-loading data from the disk, and a handful of packages. BusinessDays.jl and InterestRates.jl packages will be featured.

Speakers
avatar for Felipe Noronha

Felipe Noronha

Bachelor in Computer Engineering, M. Sc. in Economics, Market Risk Manager at BNDES (Brazilian Development Bank).


Thursday June 22, 2017 3:03pm - 3:15pm
West Pauley Pauley Ballroom, Berkeley, CA

3:15pm

Circuitscape: A Tool to Measure Landscape Connectivity
Circuitscape is one of the most popular tools to measure landscape connectivity, using concepts from electrical circuit theory. Ecologists can model landscapes as large resistance maps and then compute current maps and voltage potentials at various parts on the landscape. Computationally, this involves constructing a large graph and using a sparse solver. This tool has originally been written in Python, and this talk will be about porting it to Julia as well as improving the solver in the package. This talk will also focus on performance comparisons between the Julia and Python versions.


Speakers
avatar for Ranjan Anantharaman

Ranjan Anantharaman

Applications Engineer, Julia Computing
Ranjan Anantharaman is a data scientist at Julia Computing. His interests span applied mathematics and numerical computing, and he enjoys working with computation across a variety of fields and domains.


Thursday June 22, 2017 3:15pm - 3:27pm
West Pauley Pauley Ballroom, Berkeley, CA

3:15pm

The Julia VS Code Extension
This talk will give an overview of the Julia extension for VS Code. The extension currently provides syntax highlighting, an integrated REPL, code completion, hover help, an integrated linter, code navigation, integration with the Julia testing infrastructure and integrated support for Weave documents (Julia’s knitr equivalent).30-minute version of this talk would talk about the internals of the extension. We would describe the Julia language server (our implementation of the Microsoft Language Server Protocol) that provides the integration with the VS Code UI. Other topics we would cover are our approach to build a robust and reliable software delivery mechanism that does not depend on the shared Julia package directory, our custom parser that is used in the language server and the developments currently being made to provide actionable parse-time formatting and linting hints, as well as any other features we might add between now and JuliaCon.:(https://github.com/JuliaEditorSupport/LanguageServer.jl) https://github.com/JuliaEditorSupport/julia-vscode https://github.com/ZacLN/Parser.jl


Speakers
avatar for David Anthoff

David Anthoff

Assistant Professor, UC Berkeley
David Anthoff is an environmental economist who studies climate change and environmental policy. He co-develops the integrated assessment model FUND that is used widely in academic research and in policy analysis. His research has appeared in Science, Nature Climate Change, the Journal... Read More →
ZN

Zac Nugent

None
London based Economist


Thursday June 22, 2017 3:15pm - 3:27pm
East Pauley Pauley Ballroom, Berkeley, CA

4:57pm

Cows, Lakes, and a JuMP Extension for Multi-stage Stochastic Optimization
Stochastic Dual Dynamic Programming (SDDP) is an optimization algorithm for solving large, multi-stage stochastic programming problems. It is well known in the electricity community, but has received little attention in other application areas. The algorithm is computationally demanding as it typically involves iteratively solving hundreds of thousands of linear programs. In the past, implementations have been coded in slow, but expressive mathematical optimization languages such as AMPL, or in fast, but low level languages such as C++. In this talk, we detail a JuMP extension we have developed to solve problems using SDDP. We also present benchmarks showing that our Julia implementation has similar run-times to a previous version developed in C++, while being more flexible and expressive. This speed and flexibility has allowed us to revisit assumptions made in previous work, as well as apply the SDDP algorithm to problems as diverse as agriculture, energy, and finance.


Speakers
OD

Oscar Dowson

University of Auckland
Oscar Dowson (@odow) is a P.h.D. Candidate in Engineering Science at the University of Auckland. He works on applying stochastic optimization to the New Zealand dairy industry.


Thursday June 22, 2017 4:57pm - 5:09pm
West Pauley Pauley Ballroom, Berkeley, CA

5:09pm

Applications of Convex.jl in Optimization Involving Complex Numbers
Convex optimization problems require rigorous mathematical understanding to solve them. Convex.jl allows users to solve complex optimization problems easily by providing a simple intuitive user interface to express the objective function and constraints. As it became popular, we saw increased demand to support optimization over complex numbers, from users working in diverse scientific fields including power grid optimization, quantum information theory, wireless communication, and signal processing. Previously, these users relied on various tools such as MATLAB’s cvx and open-source python package PICOS to tackle different problems depending upon their domain of work. Convex’s new support for complex numbers allows users to approach each of these problems in Julia. In this talk, I will show how to the new functionality in Convex.jl provides a single integrated solution for many types of Disciplined Convex Programming Problems and show how to solve complex problems using Convex.jl in very few lines of code, taking examples from scientific domains mentioned above. I will also present benchmarks comparing Convex.jl with competing open-source tools.


Speakers
avatar for Ayush Pandey

Ayush Pandey

Graduate Student, Indian Institute of Technology Kharagpur
Ayush Pandey is a final year graduate student at IIT Kharagpur studying Mathematics & Computing Sciences with micro-specialization in Optimization Theory and Applications. He is also a Google Summer of Code, 2016 fellow under the Julia Language.


Thursday June 22, 2017 5:09pm - 5:21pm
West Pauley Pauley Ballroom, Berkeley, CA

5:21pm

Solving Geophysical Inverse Problems with the jInv.jl Framework: Seeing Underground with Julia
Geophysical inversion is the mathematical and computational process of estimating the spatial distribution of physical properties of the earth's subsurface from remote measurements. It's a key tool in applied geophysics, which is generally concerned with determining the structure and composition of the earth's interior without direct sampling. At JuliaCon 2017 I would like to discuss our group's efforts to develop a modular, scalable, and extensible framework for solving geophysical inverse problems and other partial differential equation (PDE) constrained parameter estimation problems in Julia.solve PDE constrained parameter estimation problems we need advanced algorithms for optimization, for the solution of PDEs, and the ability to efficiently share information between these domains. Our framework, called jInv---short for JuliaInversion---provides modular building block routines for these tasks that allow users to easily write their own software to solve new problems. The framework heavily uses Julia's multiple dispatch to allow for extensibility and generic programming.is also critical that software implementations of these algorithms can scale to large distributed computing systems. jInv allows users to exploit the parallelism in geophysical inverse problems without detailed knowledge of Julia's parallel computing constructs.first main goal of my talk is to discuss our approach to exploiting parallelism in geophysical inverse problems and how it has been implemented in jInv. The second goal is to illustrate, through examples of developing jInv modules for new geophysical problems, how we've moved jInv from a research project for the benefit of our own group to a tool that can be of use to the wider community.


Speakers
avatar for Patrick Belliveau

Patrick Belliveau

Ph.D. Candidate, University of British Columbia
Hi! I'm a Ph.D. student in the department of Earth, Ocean and Atmospheric Sciences at the University of British Columbia in Vancouver Canada. Academically I'm interested in developing new computational methods for solving geophysical imaging problems. Since coming to UBC Julia has... Read More →


Thursday June 22, 2017 5:21pm - 5:33pm
West Pauley Pauley Ballroom, Berkeley, CA
 
Friday, June 23
 

11:16am

Web Scraping with Julia
A large part of data science is in the gathering of data, and in solving the 2 language problem, it should be no surprise that Julia is great for that part of the workflow. In this talk, we will discuss how to combine a set of packages (HTTP.jl, Gumbo.jl, Cascadia.jl) to easily develop and deploy a web scraping strategy. We will see how Julia's high level language features make it easy to interactively develop such projects, and at the same allow deployment into a distributed cluster for scraping at scale.


Speakers
avatar for Avik Sengupta

Avik Sengupta

VP Engineering, Julia Computing


Friday June 23, 2017 11:16am - 11:28am
West Pauley Pauley Ballroom, Berkeley, CA

11:28am

WebIO.jl: a Thin Abstraction Layer for Web Based Widgets
WebIO acts as a small Julian bridge between browser-based UIs to Julia such as IJulia, Atom, Blink and Mux, and packages that wish to output rich, interactive widgets. This means graphics packages don't have to depend on IJulia or Atom or Blink etc to create widgets. Instead they only depend on WebIO and use its abstractions. Widgets written with WebIO once will work on all the above interfaces. Some features are: A DSL for creating HTML elements A Julia-to-JavaScript transpiler transparent and easy communication with observable refs Ability to reliably load arbitrary JS libraries from the web / serve them from disk with correct ordering of code execution. (This has plagued many a package so far) Flexible. Not tied into any javascript framework, no opinions. Allows you to execute arbitrary JS on your widgets. Allows mixing and mashing widgets and concepts from different packages seamlessly, resulting in arbitrarily granular separation of concerns. Enables an ecosystem of UI packages, as opposed to Escher's monolithic codebase.


Speakers
avatar for Shashi Gowda

Shashi Gowda

Julia Computing
I’m a Julia programmer at Julia Computing.


Friday June 23, 2017 11:28am - 11:40am
West Pauley Pauley Ballroom, Berkeley, CA

11:40am

Nulls.jl: Missingness for Data in Julia
Nullability is a complex issue for any programming language or domain; Nulls.jl puts forth the data-friendly approach Julia has wanted and deserves with core language support.

Speakers
avatar for Jacob Quinn

Jacob Quinn

Senior Engineer, Domo
Attended Carnegie Mellon for a master's degree in data science and active Julia contributor for 6 years now.


Friday June 23, 2017 11:40am - 11:52am
West Pauley Pauley Ballroom, Berkeley, CA

1:30pm

Julia Roadmap
TBD


Speakers
SK

Stefan Karpinski

Julia Computing, Inc. / NYU
co-creator of Julia, co-founder of Julia Computing


Friday June 23, 2017 1:30pm - 1:42pm
West Pauley Pauley Ballroom, Berkeley, CA

2:18pm

BioSimulator.jl: Stochastic Simulation in Julia
Complex systems in biology are often difficult to treat analytically using mathematics and expensive to investigate with empirical methods. Moreover, deterministic approaches are misleading in systems that exhibit noise (e.g. rare events akin to mutation and extinction). Stochastic simulation provides investigators with the ability to simulate complex systems by integrating mathematical rigor and biological insight. However, simulations are slow, computationally expensive, and difficult to implement in software. My goal in developing BioSimulator.jl is to provide investigators with a tool that enables (1) quick and intuitive model prototyping, (2) efficient simulation, (3) visualization of simulation output, and (4) implementing new stochastic simulation algorithms. Using the Julia language allowed us to meet all four criteria with relative ease and extend to parallelized simulations. My talk will describe the theory underlying BioSimulator.jl, highlight aspects of our implementation, and present a few numerical examples.


Speakers
AL

Alfonso Landeros

University of California, Los Angeles
I am a first-year student in biomathematics. My studies are focused on stochastic processes, scientific computing, and optimization.


Friday June 23, 2017 2:18pm - 2:30pm
East Pauley Pauley Ballroom, Berkeley, CA

2:30pm

Exploring Evolutionary Dynamics of Communications in Bacteria Using Julia
Many species of bacteria are able to collectively sense and respond to their environment. This communication form known as quorum-sensing (QS) can be achieved through the production of small molecules that are able to freely diffuse across cell membranes. These molecules (autoinducers) can subsequently be detected by other individuals in the population and once a threshold limit is reached, then this may cause a change in gene expression which allows bacteria to coordinate their activities such as biofilm formation, virulence and antibiotic resistance. Despite the widespread interest in QS from molecular mechanisms to social evolution and pathogen control, there is still controversy over the basic evolutionary function of QS. Using Julia as the agent-based modeling platform, we have been able to investigate the rewards and risks of coordination and cooperation in QS. In this talk, I will briefly introduce the research background and share some of our results obtained from in silico evolution using Julia. This work is important as it sheds light on how simple signal-mediated behavioral rules can shape complex collective behaviors in bacteria. Julia greatly helped simplify the modeling precess and speed up simulations.


Speakers
avatar for Yifei Wang

Yifei Wang

Postdoctoral Research Fellow, Georgia Institute of Technology
Yifei Wang is currently a postdoctoral research fellow with the School of Biological Sciences at Georgia Institute of Technology. His research focuses on collective intelligence, evolutionary dynamics and high-performance computing. Dr. Wang received a degree of B.Eng. in computer... Read More →


Friday June 23, 2017 2:30pm - 2:42pm
East Pauley Pauley Ballroom, Berkeley, CA

2:42pm

Improving Biological Network Inference with Julia
In the multi-disciplinary field of systems biology, we welcome the opportunity that Julia brings for writing fast software with simple syntax. Speed is important in an age when biological datasets are increasing in size and analyses are becoming computationally more expensive. One example is the problem of determining how genes within a cell interact with one another. In the inference of gene regulatory networks (GRN) we seek to detect relationships between genes through statistical dependencies in biological data, and as datasets grow, so does computation time. Some algorithms use measures from information theory, which are suitable for detecting nonlinear biological relationships, but incur a high computational cost. We developed InformationMeasures.jl, a package for calculating information theoretic measures. The improvement in performance of our Julia package compared to widely-used packages in other languages enables us to develop new algorithms with higher complexity, examining triples, rather than pairs, of genes. These we can show are more successful than pairwise methods (in simulated data where the underlying GRNs are known), and scale well to the size of the largest currently-available biological datasets.


Speakers
TC

Thalia Chan

PhD student, Imperial College
Thalia is a Ph.D. student in theoretical systems biology at Imperial College, London. Her research focuses on algorithm development for biological network inference, in particular using information theory. Outside of her studies she contributes to various open source software pro... Read More →


Friday June 23, 2017 2:42pm - 2:54pm
East Pauley Pauley Ballroom, Berkeley, CA

2:54pm

JSeqArray: Data Manipulation of Whole-genome Sequencing Variants in Julia
Whole-genome sequencing (WGS) data is being generated at an unprecedented rate. Analysis of WGS data requires a flexible data format to store the different types of DNA variation. A new WGS variant data format “SeqArray” was proposed recently (Zheng X, etc, 2017 Bioinformatics), which outperforms text-based variant call format (VCF) in terms of access efficiency and file size. I introduce a new Julia package “JSeqArray” for data manipulation of genotypes and annotations in an array-oriented manner (https://github.com/CoreArray/JSeqArray.jl). It enables users to write portable and immediately usable code in the wider scientific ecosystem. When used in conjunction with the multiprocessing and job-oriented functions for parallel execution, the JSeqArray package provides users a flexible and high-performance programming environment for analysis of WGS variant data. In the presentation, the examples of calculating allele frequencies and principal component analysis will be given.


Speakers
avatar for Xiuwen Zheng

Xiuwen Zheng

Senior Research Fellow, University of Washington
He received a Ph.D. degree in Biostatistics at the University of Washington. He has been working on NHLBI Trans-Omics for Precision Medicine (TOPMed) whole-genome sequencing (WGS) project since Jun 2015. He developed the SeqArray package for data management of terabyte-sized sequencing... Read More →


Friday June 23, 2017 2:54pm - 3:06pm
East Pauley Pauley Ballroom, Berkeley, CA

2:54pm

L1-penalized Matrix Linear Models for High Throughput Data
Analysis of high-throughput data can be improved by taking advantage of known relationships between observations. Matrix linear models provide a simple framework for encoding such relationships to enhance detection of associations. Estimation of these models is challenging when the datasets are large and when penalized regression is used. This talk will discuss implementing fast estimation algorithms for L1-penalized matrix linear models as a first-time Julia user and fluent R user. We will share our experiences using Julia as our platform for prototyping, numerical linear algebra, parallel computing, and sharing our method.


Speakers
JL

Jane Liang

University of Tennessee Health Science Center
Jane Liang recently obtained a bachelor's degree in statistics from UC Berkeley and plans to enter a doctoral program later this year. Currently, she is a scientific programmer working with Dr. Saunak Sen at the University of Tennessee Health Science Center, Department of Preventive... Read More →


Friday June 23, 2017 2:54pm - 3:06pm
West Pauley Pauley Ballroom, Berkeley, CA

3:40pm

Julia on the Raspberry Pi
A quick update on the state of Julia on the Raspberry Pi. We will see how get Julia and GPIO related packages working on the Pi, and explore some working examples of applications running on the Pi and utilising its power to interact with the physical world.


Speakers
avatar for Avik Sengupta

Avik Sengupta

VP Engineering, Julia Computing


Friday June 23, 2017 3:40pm - 3:52pm
East Pauley Pauley Ballroom, Berkeley, CA

3:40pm

SparseRegression.jl: Statistical Learning in Pure Julia
SparseRegression implements a variety of offline and online algorithms for statistical models that are linear in the parameters (generalized linear models, quantile regression, SVMs, etc.). This talk will discuss my experience using primitives defined in the JuliaML ecosystem (LossFunctions and PenaltyFunctions) to implement a fast and flexible SparseReg type for fitting a wide variety of models.


Speakers
avatar for Josh Day

Josh Day

NC State University
Josh is a statistics Ph.D. student at NC State University, where he researches on-line optimization algorithms for performing statistical analysis on big and streaming data.


Friday June 23, 2017 3:40pm - 3:52pm
West Pauley Pauley Ballroom, Berkeley, CA

5:04pm

JuliaRun: A Simple & Scalable Julia Deployment Platform
JuliaRun is a product of Julia Computing under development and a few early users. It is adaptable to a variety of private and public clouds and makes it easy to deploy Julia applications both batch and online. We will present a brief of the architecture and how it can help deploy scalable end to end applications.


Speakers
TM

Tanmay Mohapatra

Julia Computing, Inc.
Tanmay and Pradeep have contributed to Julia packages in JuliaWeb and JuliaCloud.
PM

Pradeep Mudlapur

Julia Computing
Tanmay and Pradeep have contributed to Julia packages in JuliaWeb and JuliaCloud.


Friday June 23, 2017 5:04pm - 5:16pm
East Pauley Pauley Ballroom, Berkeley, CA

5:04pm

MultipleTesting.jl: Simultaneous Statistical Inference in Julia
The parallel application of multiple statistical hypothesis tests is one of the fundamental patterns of exploratory data analysis for big datasets. This becomes essential in various fields of scientific research, such as in high-throughput biology, medicine and imaging where one is routinely faced with millions of tests. The goal is to protect against spurious discoveries with rigorous statistical error control guarantees, while simultaneously providing enough power to detect needles in a haystack. Here, we present MultipleTesting.jl, a package that provides a unified interface for classical and modern multiple testing methods. We give a quick introduction to the underlying statistical concepts and show how Julia is ideally suited for such an endeavour: First, most multiple testing procedures consist of a standard set of primitives, such as p-values, adjusted p-values and hypothesis weights. Second, elaborate (multiple testing) algorithms often consist of simpler components in a plug-and-play fashion; these include estimators of the proportion of true null hypotheses, parametric as well as non-parametric distribution estimators, and statistical machine learning techniques. All of these ideas can be abstracted away by Julia's type system and multiple dispatch. Third, Julia provides the computational performance which is necessary when analyzing millions of hypotheses. We believe MultipleTesting.jl complements the growing number of high quality statistics packages in Julia's ecosystem.


Speakers
NI

Nikolaos Ignatiadis

Stanford University
Nikos Ignatiadis is a first year Ph.D. student at Stanford’s Statistics department. He is interested in the development of interpretable methods for multiple testing and high dimensional inference.


Friday June 23, 2017 5:04pm - 5:16pm
West Pauley Pauley Ballroom, Berkeley, CA

5:16pm

JuliaDB
JuliaDB.jl is an end-to-end all-Julia data analysis platform incorporating storage, parallelism and compute into a single model. One can load a pile of CSV files into JuliaDB as a distributed table. JuliaDB will index the files and save the index for efficient lookup of subsets of the data later. You can also convert the data from the CSV files into an efficient memory mappable binary format ("ingest").talk will be a breif introduction to the basic primitives of JuliaDB and how to use them.


Speakers
JB

Jeff Bezanson

Julia Computing
Jeff is one of the creators of Julia, co-founding the project at MIT in 2009 and eventually receiving a Ph.D. related to the language in 2015. He continues to work on the compiler and system internals, while also working to expand Julia's commercial reach as a co-founder of Julia... Read More →


Friday June 23, 2017 5:16pm - 5:30pm
West Pauley Pauley Ballroom, Berkeley, CA