-
Notifications
You must be signed in to change notification settings - Fork 1
/
lukasz-korecki.html
194 lines (151 loc) · 8.14 KB
/
lukasz-korecki.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-56703143-3"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'UA-56703143-3');
</script>
<meta charset="utf-8">
<title>Clojure/north 2020 | Duckula: Type Safe Backend Services with Clojure, HTTP &amp; Avro by Łukasz Korecki</title>
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<meta content="Clojure conference in Toronto, Canada" name="description">
<!-- Favicons -->
<link href="img/favicon.png" rel="icon">
<link href="img/apple-touch-icon.png" rel="apple-touch-icon">
<!-- Google Fonts -->
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,700,700i|Raleway:300,400,500,700,800" rel="stylesheet">
<!-- Bootstrap CSS File -->
<link href="lib/bootstrap/css/bootstrap.min.css" rel="stylesheet">
<!-- Libraries CSS Files -->
<link href="lib/font-awesome/css/font-awesome.min.css" rel="stylesheet">
<link href="lib/animate/animate.min.css" rel="stylesheet">
<link href="lib/venobox/venobox.css" rel="stylesheet">
<link href="lib/owlcarousel/assets/owl.carousel.min.css" rel="stylesheet">
<!-- Main Stylesheet File -->
<link href="css/style.css" rel="stylesheet">
<!-- Meta Tags -->
<meta property="og:type" content="website" />
<meta property="og:title" content="Clojure/north 2020 | Łukasz Korecki" />
<meta property="og:description" content="Clojure conference in Toronto, Canada" />
<meta property="og:image" content="https://clojurenorth.com/img/logo-2x.png" />
<meta property="og:url" content="http://clojurenorth.com/" />
<meta property="og:site_name" content="Clojure/north" />
<meta property="twitter:card" content="summary_large_image" />
<meta property="twitter:site" content="@clojurenorth" />
<!-- Tickets -->
<script src='https://js.tito.io/v1' async></script>
<!-- =======================================================
Theme Name: TheEvent
Theme URL: https://bootstrapmade.com/theevent-conference-event-bootstrap-template/
Author: BootstrapMade.com
License: https://bootstrapmade.com/license/
======================================================= -->
</head>
<body>
<!--==========================
Header
============================-->
<header id="header" class="header-fixed">
<div class="container">
<div id="logo" class="pull-left">
<!-- Uncomment below if you prefer to use a text logo -->
<!-- <h1><a href="#main">C<span>o</span>nf</a></h1>-->
<a href="index.html#intro" class="scrollto"><img src="img/logo-icon.png" alt="" title="Clojure/north"><h1>Clojure/north 2020</h1></a>
</div>
<nav id="nav-menu-container">
<ul class="nav-menu">
<li><a href="index.html#schedule">Schedule</a></li>
<li><a href="index.html#workshops">Workshops</a></li>
<li><a href="index.html#speakers">Speakers</a></li>
<li><a href="index.html#contact">Contact</a></li>
<li><a href="index.html#conduct">Code of Conduct</a></li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown"
aria-haspopup="true" aria-expanded="false">
Past Events
</a>
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="2019">Clojure/north 2019</a>
</div>
</li>
<li class="buy-tickets"><a href="https://ti.to/clojure-north/clojure-north-2020" target="_blank">Registration</a></li>
</ul>
</nav><!-- #nav-menu-container -->
</div>
</header><!-- #header -->
<main id="main" class="main-page">
<!--==========================
Speaker Details Section
============================-->
<section id="speakers-details">
<div class="container">
<div class="row">
<div class="col-md-6">
<img src="img/speakers/lukasz-korecki.jpg" alt="Łukasz Korecki" class="img-fluid" onerror="this.onerror=null;this.src='img/speakers/placeholder.jpg';">
</div>
<div class="col-md-6">
<div class="details">
<h2>Łukasz Korecki</h2>
<div class="social">
<a href="" target="_blank"><i class="fa "></i></a>
</div>
<h3>Duckula: Type Safe Backend Services with Clojure, HTTP & Avro</h3>
<p>Duckula is a micro-framework for building backend services in Clojure. It provides metrics, logging and input/output validation to ensure correctness of operations by leveraging Avro & HTTP</p>
<p>In this talk, Łukasz would like to walk you through how he and his team have evolved building services, how we started with Plumatic/Prismatic Schema, how that didn't quite work and why we chose to use Avro+JSON and abandon REST-ish approach to building our APIs. </p>
<p>Duckula solves a lot of problems of building a complicated system with a small team: removing boilerplate, automatic documentation generation, observability and integration with other languages.</p>
<p>Łukasz will explain basics of Ring, some of our early approaches to standardize our codebases, how our frontend application communicates with our backend and how we arrived at the design of <a href="https://github.com/nomnom-insights/nomnom.duckula">Duckula</a>. Also, where did the name come from.</p>
<hr>
<h3>About Łukasz</h3>
<p>Łukasz is an experienced Clojure, Ruby, and Bash developer. In his professional career he has worked on client side projects (starting with old school tools like Prototype through Backbone to React), back-end applications (written in Clojure, Ruby and Go). </p>
<p>Most recently Łukasz co-founded EnjoyHQ and works as a CTO, meaning he does everything from coding, managing the team to filling out 300-question-long spreadsheets for security reviews.</p>
</div>
</div>
</div>
</div>
</section>
</main>
<!--==========================
Footer
============================-->
<footer id="footer">
<div class="container">
<div class="copyright">
<strong>Clojure/north</strong> is organized with the lovely help of
<a href="http://nikperic.com/">Nikola Peric</a>,
<a href="https://yogthos.net">Dmitri Sotnikov</a>,
<a href="https://carmen.la">Carmen La</a>,
<a href="https://www.lubovsoltan.com/">Lubov Soltan</a>,
<a href="https://www.linkedin.com/in/maximilian-gerlach-1556b622">Max Gerlach</a>,
<a href="https://www.linkedin.com/in/sasha-lysenko-5a4165a4/">Sasha Lysenko</a>
and others from the <a href="https://www.meetup.com/Clojure-Toronto/">Clojure TO community</a>.
</div>
<div class="credits">
<!--
All the links in the footer should remain intact.
You can delete the links only if you purchased the pro version.
Licensing information: https://bootstrapmade.com/license/
Purchase the pro version with working PHP/AJAX contact form: https://bootstrapmade.com/buy/?theme=TheEvent
-->
Designed by <a href="https://bootstrapmade.com/">BootstrapMade</a>
</div>
</div>
</footer><!-- #footer -->
<a href="#" class="back-to-top"><i class="fa fa-angle-up"></i></a>
<!-- JavaScript Libraries -->
<script src="lib/jquery/jquery.min.js"></script>
<script src="lib/jquery/jquery-migrate.min.js"></script>
<script src="lib/bootstrap/js/bootstrap.bundle.min.js"></script>
<script src="lib/easing/easing.min.js"></script>
<script src="lib/superfish/hoverIntent.js"></script>
<script src="lib/superfish/superfish.min.js"></script>
<script src="lib/wow/wow.min.js"></script>
<script src="lib/venobox/venobox.min.js"></script>
<script src="lib/owlcarousel/owl.carousel.min.js"></script>
<!-- Template Main Javascript File -->
<script src="js/main.js"></script>
</body>
</html>