juliacon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

54
JuliaCon 1줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기 우아한형제들 운영개발실 노우경 2014718금요일 피터팬다락방

Upload: wookyoung-noh

Post on 14-Jun-2015

451 views

Category:

Software


5 download

DESCRIPTION

JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

TRANSCRIPT

Page 1: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

JuliaCon제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

우아한형제들 운영개발실 노우경2014년 7월 18일 금요일

피터팬다락방

Page 2: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

The Julia Languagehttp://julialang.org

Julia

Page 3: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

Julia (programming language)http://en.wikipedia.org/wiki/Julia_(programming_language)

Multi-paradigm: multiple dispatch ("object-oriented"), procedural, functional, meta!Designed by Jeff Bezanson, Stefan Karpinski, Viral B. Shah, Alan EdelmanAppeared in 2012Stable release : 0.2.1 / 11 February 2014!Typing discipline : Dynamic with optional type annotations, and type inference!Influenced by MATLAB, Scheme, Lisp, C, Fortran, Wolfram Language, Python, Perl, R, Ruby!OS : Linux, OS X, FreeBSD, WindowsMIT LicenseFilename extension(s) : .jlWebsite : julialang.org

Page 4: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

Julia (programming language)http://en.wikipedia.org/wiki/Julia_(programming_language)

Julia is a high-level dynamic programming language designed to address the requirements of high-performance numerical and scientific computing while also being effective for general purpose programming. Unusual aspects of Julia's design include having a type system with parametric types in a fully dynamic programming language and adopting multiple dispatch as its core programming paradigm. It allows for parallel and distributed computing; and direct calling of C and Fortran libraries without glue code. Julia includes efficient libraries for floating point, linear algebra, random number generation, fast Fourier transforms, and regular expression matching.

Page 5: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

Julia (programming language)http://en.wikipedia.org/wiki/Julia_(programming_language)

Julia's core is implemented in C and C++, its parser in Scheme, and the LLVM compiler framework is used for just-in-time generation of machine code for x86(-64) with work being done to get it working on ARM. The standard library is implemented in Julia itself, using Node.js's libuv library for efficient, cross-platform I/O. The most notable aspect of Julia's implementation is its speed, which is often within a factor of two relative to fully optimized C code. Development of Julia began in 2009 and an open-source version was publicized in February 2012.

Page 6: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

제1회 줄리아 컨퍼런스2014년 6월 26일, 27일시카고 대학 글리쳐 센터(University of Chicago: Gleacher Center)에서 열림 !http://juliacon.org

JuliaCon

Page 7: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

후원

Page 8: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

컨퍼런스 자료

Releasing Video - 8월 중 업로드https://github.com/JuliaCon/presentations/issues/3!Presentations for JuliaConhttps://github.com/JuliaCon/presentations!The Julia Language: A fresh approach to technical computing.https://github.com/JuliaLang/julia

Page 9: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

2014년 6월 23일 월요일 인천 공항 -> 샌프란시스코 -> 시카고2014년 6월 24일 화요일2014년 6월 25일 수요일2014년 6월 26일 목요일 컨퍼런스 첫째날2014년 6월 27일 금요일 컨퍼런스 둘째날2014년 6월 28일 토요일 Hack Day2014년 6월 29일 일요일2014년 6월 30일 월요일 새벽 시카고 -> 샌프란시스코 -> 인천공항

일정

Page 10: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

숙소

HI-Chicago hostel http://www.hiusa.org/illinois/chicago/chicago

Page 11: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

8:00 AM space opens, coffee and light breakfast8:15 AM opening remarks!Scientific Applications Session8:30 AM Tim Holy — Image Representation and Analysis9:10 AM Pontus Stenetorp — Natural Language Processing with Julia9:50 AM break10:20 AM breakout session — speed vs. correctness (led by Arch Robison)!Optimization Session11:10 AM Iain Dunning / Joey Huchette — JuliaOpt - Optimization Packages for Julia11:50 AM Madeleine Udell — Convex Optimization in Julia!12:30 PM lunch!Statistics Session2:00 PM Douglas Bates — Fitting Statistical Models with Julia2:40 PM John Myles White — Representing Data in Julia3:20 PM break3:35 PM Simon Byrne — Distributions.jl4:15 PM Dan Wlasiuk — A Brief History of TimeSeries4:25 PM break!Julia Deployment Session4:40 PM Reid Atcheson — Rapidly Iterating from Prototype to Near-C Performance in Julia: A Finite Element Method Case Study5:20 PM Avik Sengupta — Moving Julia into Production

Thursday, June 26th

Page 12: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

오픈, 명찰!Scientific Applications Session!Optimization Session!점심!Statistics Session!Julia Deployment Session!보트 관광

Thursday, June 26th 첫째날

Page 13: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기
Page 14: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기
Page 15: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

Scientific Applications Session8:30 AM Tim Holy — Image Representation and Analysis9:10 AM Pontus Stenetorp — Natural Language Processing with Julia9:50 AM break10:20 AM breakout session — speed vs. correctness (led by Arch Robison)!Optimization Session11:10 AM Iain Dunning / Joey Huchette — JuliaOpt - Optimization Packages for Julia11:50 AM Madeleine Udell — Convex Optimization in Julia

Thursday, June 26th 오전

Page 16: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

12:30 PM lunch!Statistics Session2:00 PM Douglas Bates — Fitting Statistical Models with Julia2:40 PM John Myles White — Representing Data in Julia3:20 PM break3:35 PM Simon Byrne — Distributions.jl4:15 PM Dan Wlasiuk — A Brief History of TimeSeries4:25 PM break!Julia Deployment Session4:40 PM Reid Atcheson — Rapidly Iterating from Prototype to Near-C Performance in Julia: A Finite Element Method Case Study5:20 PM Avik Sengupta — Moving Julia into Production

Thursday, June 26th 오후

Page 17: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

보트 관광

Page 18: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

* John Myles White에게 DataFrames SubDataArray 물어봄

보트 타러 가기 전

Page 19: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

~$ julia _ _ _ _(_)_ | A fresh approach to technical computing (_) | (_) (_) | Documentation: http://docs.julialang.org _ _ _| |_ __ _ | Type "help()" to list help topics | | | | | | |/ _` | | | | |_| | | | (_| | | Version 0.3.0-prerelease+3896 (2014-06-26 00:40 UTC) _/ |\__'_|_|_|\__'_| | Commit e1260bc (0 days old master)|__/ | x86_64-apple-darwin13.2.0!julia> using DataFrames!julia> df = DataFrame(A=1:9)9x1 DataFrame|-------|---|| Row # | A || 1 | 1 || 2 | 2 || 3 | 3 || 4 | 4 || 5 | 5 || 6 | 6 || 7 | 7 || 8 | 8 || 9 | 9 |

Page 20: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

julia> df4x2 DataFrame|-------|---|---|| Row # | A | B || 1 | 1 | 3 || 2 | 1 | 4 || 3 | 2 | 3 || 4 | 2 | 4 |!julia> countmapcountmap (generic function with 4 methods)!julia> using RDatasetsERROR: RDatasets not found in require at loading.jl:47!julia> Pkg.add("RDatasets")INFO: Cloning cache of RDatasets from git://github.com/johnmyleswhite/RDatasets.jl.gitINFO: Installing RDatasets v0.1.1INFO: Package database updatedINFO: METADATA is out-of-date — you may not have the latest version of RDatasetsINFO: Use `Pkg.update()` to get the latest versions of your packages!julia> using RDatasets

Page 21: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

julia> df4x2 DataFrame|-------|---|---|| Row # | A | B || 1 | 1 | 3 || 2 | 1 | 4 || 3 | 2 | 3 || 4 | 2 | 4 |!julia> by(df, :B, df -> countmap(df[:A]))2x2 DataFrame|-------|---|-------------|| Row # | B | x1 || 1 | 3 | [2=>1,1=>1] || 2 | 4 | [2=>1,1=>1] |

Page 22: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

Keno Fischer는 코딩 중

보트 관광

Page 23: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

숙소로 귀환

Page 24: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

8:00 AM space opens, coffee and light breakfast!Core Julia Session8:30 AM Arch Robison — Practical Vectorization in Julia9:10 AM Jeff Bezanson — Introduction to Julia Internals!9:50 AM Julia Core Team panel10:20 AM break!10:40 AM Leah Hanson — TypeCheck: Static Analysis in Julia11:20 AM Keno Fischer — The design and implementation of the Julia Debugger12:00 PM breakout session — package ecosystem (led by Iain Dunning)!12:30 AM lunch!Graphics and Multimedia Session2:00 PM Yuri Vishnevsky — Generative Art with Julia2:10 PM Michael Bean — Publishing Online Interactive Julia Models2:50 PM Daniel C. Jones — Gadfly: native Julia plotting and visualization3:30 PM break3:50 PM Spencer Russell — Realtime Audio in Julia with AudioIO.jl4:30 PM breakout session — graphics and visualization (led by Daniel C. Jones)

Friday, June 27th

Page 25: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

Core Julia Session!코어 팀 패널!Core Julia Session!점심!Graphics and Multimedia Session

Friday, June 27th 둘째날

Page 26: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

8:00 AM space opens, coffee and light breakfast!Core Julia Session8:30 AM Arch Robison — Practical Vectorization in Julia9:10 AM Jeff Bezanson — Introduction to Julia Internals!9:50 AM Julia Core Team panel10:20 AM break!10:40 AM Leah Hanson — TypeCheck: Static Analysis in Julia11:20 AM Keno Fischer — The design and implementation of the Julia Debugger12:00 PM breakout session — package ecosystem (led by Iain Dunning)

Friday, June 27th 오전

Page 27: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

julia-parser.scm : 파서, LISP로 구현julia-syntax.scm!ast.c : interface to front-end, obtains and translates syntax treestoplevel.c : evaluating top-level expressions, loading source filesinterpreter.c!gf.c : Generic Functions . method table and lookup . GF constructor, add_method . dispatch . static parameter inference . method specialization, invoking type inference - widens (union…)!Code gen…

Jeff BezansonIntroduction to Julia Internals

Page 28: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

줄리아 코어 팀 패널 토론

Julia Core Team panel

Page 29: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

둘째날

Page 30: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

Stefan Karpinski <[email protected]>Jameson Nash <[email protected]>Keno Fischer <[email protected]>Viral B. Shah <[email protected]>Jeff Bezanson <[email protected]>Alan Edelman!얘기 나눈 주제들GPU Kernel for Julia, Higher Level Abstract, FundingImprove Anonymous Function,Inline functions, GC improvement in 0.4Graphics (GTK, Cairo), Binary packagesFlow control comprehension - Multi-dimension Cases, General Matrix

Julia Core Team panel - 줄리아 코어 팀 패널 토론

Page 31: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

* 화요일부터 3일만에 LLVM 백단 줄리아 @cpp 매크로로 도는 디버거 짬* 당일 새벽 2시에 완성했다고!# Agenda* Design* The Debugger* Calling C++ from Julia!LLVM 디버거코드 그래프

Keno FischerThe design and implementation of the Julia Debugger

Page 32: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

인도 음식점

점심

Page 33: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

12:30 AM lunch!Graphics and Multimedia Session2:00 PM Yuri Vishnevsky — Generative Art with Julia2:10 PM Michael Bean — Publishing Online Interactive Julia Models2:50 PM Daniel C. Jones — Gadfly: native Julia plotting and visualization3:30 PM break3:50 PM Spencer Russell — Realtime Audio in Julia with AudioIO.jl4:30 PM breakout session — graphics and visualization (led by Daniel C. Jones)

Friday, June 27th 오후

Page 34: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

펍 가서 일차 이차

Friday, June 27th 저녁

Page 35: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

Hack Dayhttp://www.meetup.com/JuliaChicago/events/181343542/!June 28 11:00 AMIda Noyes Hall at University of Chicago

Saturday, June 28th 셋째날

Page 36: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기
Page 37: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기
Page 38: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

다녀온 소감

* 70명 규모의 소규모 컨퍼런스* 직접 만나고 왔다* 재미있다

Page 39: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

질문 답변

Page 40: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

그리고

Page 41: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

공유 모임을 준비하며

* 까먹기 전에 공유하자

Page 42: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

공유 모임을 준비하며 (2)

구글 닥스 공유

Page 43: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

공유 모임을 준비하며 (3)

2014.7.4 금요일 삼백집 점심 미팅2014.7.13 일요일 2시 건대입구 : 강현구님, 김정훈님2014.7.10 목요일 7시 후크해적선 : 김정훈님, 김윤재님, 양원석님2014.7.11 금요일 점심 미팅2014.7.15 화요일 7시 후크해적선 : 강현구님, 김정훈님, 김윤재님2014.7.17 목요일 8시 후크해적선 : 강현구님, 김정훈님

Page 44: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

공유 모임을 준비하며 (4)

2014.7.13 일요일 2시 건대입구 : 강현구님, 김정훈님!시작 : 7,8,8종료 : 8,7,8

Page 45: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

공유 모임을 준비하며

2014.7.13 일요일 2시 건대입구 : 강현구님, 김정훈님

Page 46: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

공유 모임을 준비하며 (5)

2014.7.10 목요일 7시 후크해적선 : 김정훈님, 김윤재님, 양원석님!시작 : 4, 7, 5, 7종료 : 6, 6, 7, 8

Page 47: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기
Page 48: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

공유 모임을 준비하며 (6)

2014.7.15 화요일 7시 후크해적선 : 강현구님, 김정훈님, 김윤재님!시작 : 4, 6, 5, 6종료 : 4, 5, 4, 6

Page 49: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기
Page 50: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

공유 모임을 준비하며 (7)

2014.7.17 목요일 8시 후크해적선 : 강현구님, 김정훈님!시작 : 7끝 : 5, 7, 7

Page 51: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기
Page 52: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

• 듣느라 수고하셨습니다• 강현구님, 김정훈님, 김윤재님, 양원석님 도와주셔서 감사합니다

쌩유

Page 53: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기

후원 이미지https://github.com/JuliaCon/juliacon.github.io/tree/master/images/sponsors!Hack Day 사진http://www.meetup.com/JuliaChicago/photos/22904862/!컨퍼런스 사진 - Twitter #juliaconhttps://twitter.com/hashtag/juliacon!John Myles White 사진http://www.battery.com/powered/the-whole-stack/2014/03/18/schmoozing-at-strata/!Keno Fischer 사진 - Networking in Juliahttp://www.youtube.com/watch?v=qYjHYTn7r2w

사진 출처

Page 54: JuliaCon - 제1회 줄리아 컨퍼런스 참가 후기 & 준비 모임 이야기