+ Up to 30 days before the start of the conference, you can get a full refund for your ticket. Send an email to mail@emberfest.eu and we will process your refund.
+
+
Within 30 days of the start of the conference
+
+ We are unable to offer refunds within 30 days of the conference, however your ticket can be reassigned at any time to a different attendee. To reassign your ticket, please follow the link on your original confirmation email.
+
+
“Force majeure” events
+
Should the conference be cancelled for any reason (including due to restrictions because of the Coronavirus pandemic), purchased tickets will be valid for the next year.
+
+
diff --git a/2017/code-of-conduct/index.html b/2017/code-of-conduct/index.html
new file mode 100644
index 00000000..e2643c5c
--- /dev/null
+++ b/2017/code-of-conduct/index.html
@@ -0,0 +1,44 @@
+---
+layout: 2017/default
+title: EmberFest
+---
+{% include 2017/main_header.html %}
+
+
+
+
Conference Code of Conduct
+
+ All attendees, speakers, sponsors and volunteers at our conference are required to agree with the following code of conduct. Organisers will enforce this code throughout the event. We expect cooperation from all participants to help ensure a safe environment for everybody.
+
+
Need Help?
+
+ You have our contact details in the emails we've sent.
+
+
The Quick Version
+
+ Our conference is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion (or lack thereof), or technology choices. We do not tolerate harassment of conference participants in any form. Sexual language and imagery is not appropriate for any conference venue, including talks, workshops, parties, Twitter and other online media. Conference participants violating these rules may be sanctioned or expelled from the conference without a refund at the discretion of the conference organisers.
+
+
The Less Quick Version
+
+ Harassment includes offensive verbal comments related to gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion, technology choices, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention.
+
+
+ Participants asked to stop any harassing behavior are expected to comply immediately.
+
+
+ Sponsors are also subject to the anti-harassment policy. In particular, sponsors should not use sexualised images, activities, or other material. Booth staff (including volunteers) should not use sexualised clothing/uniforms/costumes, or otherwise create a sexualised environment.
+
+
+ If a participant engages in harassing behavior, the conference organisers may take any action they deem appropriate, including warning the offender or expulsion from the conference with no refund.
+
+
+ If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact a member of conference staff immediately. Conference staff can be identified as they'll be wearing branded clothing and/or badges.
+
+
+ Conference staff will be happy to help participants contact hotel/venue security or local law enforcement, provide escorts, or otherwise assist those experiencing harassment to feel safe for the duration of the conference. We value your attendance.
+
+
+ We expect participants to follow these rules at conference and workshop venues and conference-related social events.
+
+
+
\ No newline at end of file
diff --git a/2017/images/201-created.png b/2017/images/201-created.png
new file mode 100644
index 00000000..cfb4ab6d
Binary files /dev/null and b/2017/images/201-created.png differ
diff --git a/2017/images/adrian-zalewski.jpeg b/2017/images/adrian-zalewski.jpeg
new file mode 100644
index 00000000..df570849
Binary files /dev/null and b/2017/images/adrian-zalewski.jpeg differ
diff --git a/2017/images/alex-blom.png b/2017/images/alex-blom.png
new file mode 100644
index 00000000..748f60ce
Binary files /dev/null and b/2017/images/alex-blom.png differ
diff --git a/2017/images/alex-navasardyan.jpg b/2017/images/alex-navasardyan.jpg
new file mode 100644
index 00000000..17440341
Binary files /dev/null and b/2017/images/alex-navasardyan.jpg differ
diff --git a/2017/images/bear_grey.svg b/2017/images/bear_grey.svg
new file mode 100644
index 00000000..8a6b38e0
--- /dev/null
+++ b/2017/images/bear_grey.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2017/images/berlin.jpg b/2017/images/berlin.jpg
new file mode 100644
index 00000000..3c28ca2c
Binary files /dev/null and b/2017/images/berlin.jpg differ
diff --git a/2017/images/blog/dinner-on-boat.jpg b/2017/images/blog/dinner-on-boat.jpg
new file mode 100644
index 00000000..a90e5177
Binary files /dev/null and b/2017/images/blog/dinner-on-boat.jpg differ
diff --git a/2017/images/blog/friends-on-tram.jpg b/2017/images/blog/friends-on-tram.jpg
new file mode 100644
index 00000000..7ae081ad
Binary files /dev/null and b/2017/images/blog/friends-on-tram.jpg differ
diff --git a/2017/images/blog/isaac-presenting-at-meetup.jpg b/2017/images/blog/isaac-presenting-at-meetup.jpg
new file mode 100644
index 00000000..ddb7ba17
Binary files /dev/null and b/2017/images/blog/isaac-presenting-at-meetup.jpg differ
diff --git a/2017/images/cardstack.png b/2017/images/cardstack.png
new file mode 100644
index 00000000..080ed8a6
Binary files /dev/null and b/2017/images/cardstack.png differ
diff --git a/2017/images/daniel-sudol.jpeg b/2017/images/daniel-sudol.jpeg
new file mode 100644
index 00000000..c46f4b1a
Binary files /dev/null and b/2017/images/daniel-sudol.jpeg differ
diff --git a/2017/images/edward-faulkner.jpeg b/2017/images/edward-faulkner.jpeg
new file mode 100644
index 00000000..686aa4f9
Binary files /dev/null and b/2017/images/edward-faulkner.jpeg differ
diff --git a/2017/images/emma-delescolle.jpeg b/2017/images/emma-delescolle.jpeg
new file mode 100644
index 00000000..ec1e2912
Binary files /dev/null and b/2017/images/emma-delescolle.jpeg differ
diff --git a/2017/images/erik-bryn.jpg b/2017/images/erik-bryn.jpg
new file mode 100644
index 00000000..e7c8bd2d
Binary files /dev/null and b/2017/images/erik-bryn.jpg differ
diff --git a/2017/images/harvest.png b/2017/images/harvest.png
new file mode 100644
index 00000000..05658991
Binary files /dev/null and b/2017/images/harvest.png differ
diff --git a/2017/images/ivan-vanderbyl.jpeg b/2017/images/ivan-vanderbyl.jpeg
new file mode 100644
index 00000000..0efdf804
Binary files /dev/null and b/2017/images/ivan-vanderbyl.jpeg differ
diff --git a/2017/images/jakub-niechcial.jpeg b/2017/images/jakub-niechcial.jpeg
new file mode 100644
index 00000000..499891c4
Binary files /dev/null and b/2017/images/jakub-niechcial.jpeg differ
diff --git a/2017/images/jessica-jordan.jpg b/2017/images/jessica-jordan.jpg
new file mode 100644
index 00000000..510dea99
Binary files /dev/null and b/2017/images/jessica-jordan.jpg differ
diff --git a/2017/images/jorge-lainfiesta.jpeg b/2017/images/jorge-lainfiesta.jpeg
new file mode 100644
index 00000000..67668795
Binary files /dev/null and b/2017/images/jorge-lainfiesta.jpeg differ
diff --git a/2017/images/kloeckner.png b/2017/images/kloeckner.png
new file mode 100644
index 00000000..4b5cb09e
Binary files /dev/null and b/2017/images/kloeckner.png differ
diff --git a/2017/images/lauren-tan.jpg b/2017/images/lauren-tan.jpg
new file mode 100644
index 00000000..e5dc8e2f
Binary files /dev/null and b/2017/images/lauren-tan.jpg differ
diff --git a/2017/images/logo.png b/2017/images/logo.png
new file mode 100644
index 00000000..d7517743
Binary files /dev/null and b/2017/images/logo.png differ
diff --git a/2017/images/marie-chatfield.jpeg b/2017/images/marie-chatfield.jpeg
new file mode 100644
index 00000000..6c8560a1
Binary files /dev/null and b/2017/images/marie-chatfield.jpeg differ
diff --git a/2017/images/michael-fritz.jpeg b/2017/images/michael-fritz.jpeg
new file mode 100644
index 00000000..f901d910
Binary files /dev/null and b/2017/images/michael-fritz.jpeg differ
diff --git a/2017/images/miguel-camba.png b/2017/images/miguel-camba.png
new file mode 100644
index 00000000..0628b82a
Binary files /dev/null and b/2017/images/miguel-camba.png differ
diff --git a/2017/images/offir-golan.jpg b/2017/images/offir-golan.jpg
new file mode 100644
index 00000000..b0fceb8b
Binary files /dev/null and b/2017/images/offir-golan.jpg differ
diff --git a/2017/images/people-doc.png b/2017/images/people-doc.png
new file mode 100644
index 00000000..df1ae3ec
Binary files /dev/null and b/2017/images/people-doc.png differ
diff --git a/2017/images/prototypal.png b/2017/images/prototypal.png
new file mode 100644
index 00000000..a1ac5fa3
Binary files /dev/null and b/2017/images/prototypal.png differ
diff --git a/2017/images/ricardo-mendes.jpg b/2017/images/ricardo-mendes.jpg
new file mode 100644
index 00000000..d64cd6a9
Binary files /dev/null and b/2017/images/ricardo-mendes.jpg differ
diff --git a/2017/images/sarup-banskota.jpg b/2017/images/sarup-banskota.jpg
new file mode 100644
index 00000000..a6b888af
Binary files /dev/null and b/2017/images/sarup-banskota.jpg differ
diff --git a/2017/images/selleo.png b/2017/images/selleo.png
new file mode 100644
index 00000000..928dcd55
Binary files /dev/null and b/2017/images/selleo.png differ
diff --git a/2017/images/simplabs.png b/2017/images/simplabs.png
new file mode 100644
index 00000000..4fba1f9f
Binary files /dev/null and b/2017/images/simplabs.png differ
diff --git a/2017/images/sivakumar-kailasam.jpeg b/2017/images/sivakumar-kailasam.jpeg
new file mode 100644
index 00000000..152f39a9
Binary files /dev/null and b/2017/images/sivakumar-kailasam.jpeg differ
diff --git a/2017/images/skyline.svg b/2017/images/skyline.svg
new file mode 100644
index 00000000..8d3773ac
--- /dev/null
+++ b/2017/images/skyline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2017/images/thiago-massa.jpg b/2017/images/thiago-massa.jpg
new file mode 100644
index 00000000..c41437e5
Binary files /dev/null and b/2017/images/thiago-massa.jpg differ
diff --git a/2017/images/tilde.png b/2017/images/tilde.png
new file mode 100644
index 00000000..38c2a59f
Binary files /dev/null and b/2017/images/tilde.png differ
diff --git a/2017/images/villa-elisabeth.jpg b/2017/images/villa-elisabeth.jpg
new file mode 100644
index 00000000..b540ebea
Binary files /dev/null and b/2017/images/villa-elisabeth.jpg differ
diff --git a/2017/images/wyeworks.png b/2017/images/wyeworks.png
new file mode 100644
index 00000000..d01182ac
Binary files /dev/null and b/2017/images/wyeworks.png differ
diff --git a/2017/imprint/index.html b/2017/imprint/index.html
new file mode 100644
index 00000000..d9a315c8
--- /dev/null
+++ b/2017/imprint/index.html
@@ -0,0 +1,27 @@
+---
+layout: 2017/default
+title: EmberFest
+---
+{% include 2017/main_header.html %}
+
+
+
+
Imprint
+
+ Publisher information according to §6 Teledienstgesetz (TDG)
+ Responsible according to §6 MDStV:
+
+
+ EmberFest UG
+ +49 89 452 139 03
+ Marco Otte-Witte
+ Hans-Sachs-Str. 12
+ 80469 München
+ Germany
+
+
Exclusion of Liability
+
+ We check and update the information on this website regularly. Despite our best efforts, information on the site may not always be correct. Liability concerning timeliness, correctness and completeness of the available information can not be assumed. This applies also for all other websites which are referred via hyperlink. EmberFest UG is not responsible for the content of these third party websites.
+
+
+
\ No newline at end of file
diff --git a/2017/index.html b/2017/index.html
new file mode 100644
index 00000000..395c6879
--- /dev/null
+++ b/2017/index.html
@@ -0,0 +1,215 @@
+---
+layout: 2017/default
+title: EmberFest
+---
+
+ EmberFest is the European Community Ember Conference.
+ If you're looking for updates on the latest and greatest in Ember and Glimmer this is the place to be.
+ EmberFest is also a great opportunity to get in touch with the European Ember Community (and friends from
+ abroad) and hiring Ember talent.
+
Emberfest uses Google Analytics to collect user statistics.
+
Google Analytics is a service that collects data about website visitors.
+
What Google Analytics records
+
+
The referrer that let a user to this website
+
The duration of the visit
+
Information about the client used to access the website
+
other information
+
+
How we use that data
+
+ The information recorded by Google Analytics allows us to better understand the audience of this website, what
+ content they’re accessing and how they get here. This allows us to make better decisions about design, writing
+ and marketing.
+
No personally identifying data is ever included in the reports that we run.
+ Ember has been around for a while. It has survived several JavaScript framework eras by delivering innovation without leaving users behind. In this presentation I will be looking into the recent work that will unlock the next stage of Ember, and share my personal vision of what that next stage might look like.
+
+ Ricardo is a member of the Core and Learning Ember teams. When he's not fretting about how to improve Ember, Ricardo also enjoys other regular human activities like learning saxophone, podcasting and running a local meetup.
+
+
+
+
+
+
+
+
+
+
Designing Immutable data flows in Ember
+
+
+
Jorge Lainfiesta
+
+
+
+ Behind an app using immutability there's a happier team that doesn't have to deal with observers, side-effects, identity checks and instead enjoys easier object construction and testing. Adopt immutability in your ember apps today!
+
+ Jorge is a JavaScript mentor from Latin America with speciality in Ember and React. With This Dot he helps engineering teams in America and India to embrace modern web tooling. Jorge currently studies a master in digital communication in Austria.
+
+
+
+
+
+
+
+
+
+
Treeshaking in Ember CLI
+
+
+
Alex Navasardyan
+
+
+
+ Treeshaking is a popular topic nowadays. Popular bundlers, like Webpack and Rollup, both support for it. But how does it work and what does it actually mean “to shake trees”? We are going to learn about compilers, optimizations and experiments with treeshaking in Ember CLI.
+
+ Starting with Acceptance Testing in Ember can be a rocky start but once mastered yields many great opportunities, such as letting you write a feature before the backend is ready and giving you regression tests which runs blazing fast. If Mirage ever made you pull your hair out or did you ever spent more than 15 minutes trying to find the correct way to match a certain element on the page, this talk is for you!
+
+
+ We'll go through the pains of working with QUnit and Mirage up to figuring out how use them at their full potential.
+
+ Thiago is usually found wrestling with new programming languages and frameworks, contributor to Open Source whenever his motivation builds up and with a constant need of being struggling with at least something, such as learning German or Haskell. He works and has plenty of fun being the jack of all trades(aka Full-stack Dev) at kloeckner-i.
+
+
+
+
+
+
+
+
+
+
Ember @ Netflix
+
+
+
+
Lauren Tan and Offir Golan
+
+
+
+ For a few years now, Netflix has been leveraging Ember to build ambitious applications that help us manage and produce billions of dollars in content. In this talk, we'll share our lessons learned, talk about some of the common problems we've faced, and how we've solved them.
+
Lauren Tan is a Senior Software Engineer at Netflix. She gave her first ever conference talk at EmberConf 2015, and loved it so much she decided to go all in and do more. Lauren frequently writes about Ember.js at her blog on medium, maintains many popular addons, enjoys bubble tea, and has a little puppy named Zelda.
+
Offir Golan is a Senior Software Engineer at Netflix and Ember.js enthusiast. Passionate about finding solutions to core needs of the open source community, the best burrito in town, and being a full time cat dad.
+
+
+
+
+
+
+
+
+
Building the Progressive Web App for HackerNews.io in Ember
+
+
+
Ivan Vanderbyl
+
+
+
If you're an avid reader of HackerNews you may have seen the HNPWA, an attempt to implement a HackerNews client in every major JavaScript framework. There's only one problem: they forgot Ember. So I set out to change this.
+
As it turns out, Ember requires a lot of optimisation to reach speed even close to React on mobile, and in this talk, I'll show you how we did it.
Ivan is the co-founder and head of engineering at Flood, a distributed performance engineering company which builds the industry leading Load Testing platform of the same name. Ivan has over a decade of experience building web applications and has spent many years contributing to the Ember ecosystem.
+
+
+
+
+
+
+
+
+
Promoting Ember's best practices by linting code
+
+
+
Adrian Zalewski
+
+
+
Code linting is one of the least talked about, but most useful tools in a front-end developer’s toolbox. It's the easiest thing we can do to significantly improve our code quality.
+
Default Ember.js application blueprints already include basic JavaScript linter setup. But it’s often forgotten how easy and quick it is to go much farther, and ensure extensive, Ember-flavoured static code analysis in your project. Let’s talk about state-of-art solutions that can be used today in any Ember.js project and greatly enhance your development workflow.
Senior Front-end Developer at Netguru, who had luck to meet and fall in love with Ember.js and immense productivity that it brings. Book lover and avid traveler.
+
+
+
+
+
+
+
+
+
Deep Dive on Ember Events
+
+
+
Marie Chatfield
+
+
+
Handling events like clicks and keypresses as users interact with your app is essential for any Ember application. What are the different ways of listening for events in Ember? How do they interact? What are the performance implications of each approach? What kind of bugs can you introduce if you don't understand them?
+
Learn the fundamentals of how events work in Ember, starting with the basics of DOM events and working up to the lifecycle of Ember events. You'll be able to implement event listeners with confidence and debug with clarity once you have a complete mental model of Ember events!
Marie Chatfield writes code and poetry, sometimes at the same time. Originally from Houston, she now lives and works in San Francisco. She is passionate about creating inclusive spaces, building empathetic and elegant software, and understanding Ember at a deeper level. If you see her in the hallway, start a conversation by sharing your favorite poem or piece of art!
+
+
+
+
+
+
+
+
+
Compile-time optimizations for you and me
+
+
+
Miguel Camba
+
+
+
More and more, frameworks are becoming smarter and optimizing our apps for us
+like compilers do. How does it work? Where are the limits of that? Can we haz
+nice thingz today?
+
Ember's logicless templates make it the framework in best suited to perform static analysis and optimizations, and we are going to learn how to take advantage of it today and have a glance of what the future holds to automate this on the framework.
Ember (along with a whole family of related open source tools) is
+ steadily reducing the cost of shipping sophisticated applications. By
+ making it easier to compose applications out of high-level, shared
+ pieces, and deploy them on demand to commodity hosting, we've been
+ sowing the seeds for a revolution in how software gets built and paid
+ for. This is a talk about both the technical "how" -- including the
+ latest work in the Cardstack project -- and the "why": our opportunity
+ to grow an open, decentralized software ecosystem that can sustainably
+ pay for open source while respecting user freedom.
+ Edward Faulkner is a member of the
+ Ember Core Team and the creator of Ember's
+ official animation library.
+ His open source code is running on mainstream gaming consoles, major social media sites,
+ and hordes of enterprise applications. His consultancy, Polynomial LLC,
+ leads ambitious software projects for a diverse group of businesses and
+ nonprofits. He was a research associate of the MIT Media Lab's Social Computing group, and was a
+ lead engineer at Akamai Technologies, where
+ he built critical, internet-scale security infrastructure.
+
+
+
+
+
+
+
+
+
+
Adopting better Ember patterns
+
+
+
Sarup Banskota
+
+
+
A quick walk through various Ember codebase scenarios, and suggestions on improving them - including better use of closure actions, Ember data methods, avoiding observers and what I like to call "chatty templates".
+
You'll leave the talk with 6 different techniques to make your code cleaner and more predictable.
Sarup leads frontend engineering for Mesitis in Singapore and contributes to Babel.
+
+
+
+
+
+
+
+
+
Improving the UX is the developers job
+
+
+
Jakub Niechciał
+
+
+
UX and designs seems completely separate from development for a lot of engineers. However, frontend developers are often the last team that has impact on final product and that is why I believe that improving the UX is their job. Despite the fact how missing the designs or backend are, frontend should address all these issues and provide best possible quality. I will explain what are key UX topics to address by frontend (being fast, feeling native, indicate current state and handle errors) and how Ember and its ecosystem can help achieve these.
Kuba is senior technology leader at Netguru, IT consulting agency that provides the web, mobile and design solutions for start-ups. He has over 3-year experience in Ember.js and Ruby on Rails and took part in multiple commercial projects. For last year more focused on leadership and growing his team of frontend experts at Netguru, but still trying to give back his lessons learned.
+
+
+
+
+
+
+
+
+
Writing tests like a speed demon with data builder patterns
+
+
+
Daniel Sudol
+
+
+
"Testing like speed demon" will show you techniques that allow you to write tests without the awful headache and panic that usually precedes this process. Using scenarios, data builders, ascii art and the good old "for loop", I will lay the groundwork for making you a maestro of the testing universe.
Been walking the silicon valley trails and riding the startup rapids for quite a few years, learning many different frameworks and languages along the way. Grabbed the ember bug when I saw it crawling out of the bushes, and never looked back.
+
+
+
+
+
+
+
+
+
SDK... Ambitious... What about a RAD tool for the web?
+
+
+
Emmanuelle Delescolle
+
+
+
+ Having a strong data layer, Ember is well suited for the task of
+ data entry, it allows for easily building data encoding tools, complex
+ forms with foreign key drop-downs, several levels of nested records,
+ translations and more. But building such a tool still requires lots of
+ boilerplate work mainly synchronizing information like API definition
+ and "possible actions" between backend and frontend. But it doesn't
+ have to be that way!
+
+ Fullstack developer from Belgium, I've been interested in and
+ contributing to open-source in various ways for about 15 years. My
+ interest in Ember started about 4 years ago and I have been advocating
+ it in other communities ever since. As it turns out, I realize most of
+ my career has been spent trying to make it easy to build list, forms
+ and data visualizations.
+
+
+
+
+
+
+
+
+
+
Hybrid Apps with Ember/Glimmer
+
+
+
Alex Blom
+
+
+
For many, the first hybrid experience is one of poor performance and frustrating code management. Common techniques such as 'keep a shallow dom' and 'watch reflow' feel reasonable but hard to achieve, and even harder to contextualize in Ember.
+
We will first cover the basics of hybrid apps before building a basic hybrid Ember app with ember-cordova, and will then focus on issues such as application structure, graceful mobile web fallbacks, animation optimization & handling native integrations such as push.
Alex is the maintainer of corber/ember-cordova and Managing Partner at Isle of Code.
+
+
+
+
+
+
+
+
+
Testing against Time - Meaningful testing in Ember apps when timing matters
+
+
+
Jessica Jordan
+
+
+
Ember offers a rich API and a wide set of helpers and blueprints to make testing in your apps fast and straight-forward. But as the applications we write tests against grow more complex, we might find ourselves stumbling into test timeouts, eventually succeeding tests and other hard-to-reason about test errors brought on by asynchronous and time-dependent behaviour.
+
This talk will give an insight into how to create meaningful test cases for async or other, time-related operations in our applications. We will see how we can leverage Ember's test helpers, newest JavaScript features and Ember community addons to reduce non-determinism in our test suites and make those tests turn green even as time passes by.
Jessica is a Berlin-based software engineer working at simplabs and is co-organizing the Ember.js Berlin meetup. She is creating newsletters for the Ember.js Times and is a big fan of CSS, art and comics.
diff --git a/2017/sponsorship.pdf b/2017/sponsorship.pdf
new file mode 100644
index 00000000..028648f5
Binary files /dev/null and b/2017/sponsorship.pdf differ
diff --git a/2018/cancellation/index.html b/2018/cancellation/index.html
new file mode 100644
index 00000000..6a0abf89
--- /dev/null
+++ b/2018/cancellation/index.html
@@ -0,0 +1,21 @@
+---
+layout: 2018/default
+title: EmberFest
+---
+{% include 2018/main_header.html %}
+
+
+
+
Cancellation Policy
+
Up to 30 days before the start of the conference
+
+ Up to 30 days before the start of the conference, you can get a full refund for your ticket. Send an email to mail@emberfest.eu and we will process your refund.
+
+
Within 30 days of the start of the conference
+
+ We are unable to offer refunds within 30 days of the conference, however your ticket can be reassigned at any time to a different attendee. To reassign your ticket, please follow the link on your original confirmation email.
+
+
“Force majeure” events
+
Should the conference be cancelled for any reason (including due to restrictions because of the Coronavirus pandemic), purchased tickets will be valid for the next year.
+
+
diff --git a/2018/code-of-conduct/index.html b/2018/code-of-conduct/index.html
new file mode 100644
index 00000000..8e8128cd
--- /dev/null
+++ b/2018/code-of-conduct/index.html
@@ -0,0 +1,44 @@
+---
+layout: 2018/default
+title: EmberFest
+---
+{% include 2018/main_header.html %}
+
+
+
+
Conference Code of Conduct
+
+ All attendees, speakers, sponsors and volunteers at our conference are required to agree with the following code of conduct. Organisers will enforce this code throughout the event. We expect cooperation from all participants to help ensure a safe environment for everybody.
+
+
Need Help?
+
+ You have our contact details in the emails we've sent.
+
+
The Quick Version
+
+ Our conference is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion (or lack thereof), or technology choices. We do not tolerate harassment of conference participants in any form. Sexual language and imagery is not appropriate for any conference venue, including talks, workshops, parties, Twitter and other online media. Conference participants violating these rules may be sanctioned or expelled from the conference without a refund at the discretion of the conference organisers.
+
+
The Less Quick Version
+
+ Harassment includes offensive verbal comments related to gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion, technology choices, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention.
+
+
+ Participants asked to stop any harassing behavior are expected to comply immediately.
+
+
+ Sponsors are also subject to the anti-harassment policy. In particular, sponsors should not use sexualised images, activities, or other material. Booth staff (including volunteers) should not use sexualised clothing/uniforms/costumes, or otherwise create a sexualised environment.
+
+
+ If a participant engages in harassing behavior, the conference organisers may take any action they deem appropriate, including warning the offender or expulsion from the conference with no refund.
+
+
+ If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact a member of conference staff immediately. Conference staff can be identified as they'll be wearing branded clothing and/or badges.
+
+
+ Conference staff will be happy to help participants contact hotel/venue security or local law enforcement, provide escorts, or otherwise assist those experiencing harassment to feel safe for the duration of the conference. We value your attendance.
+
+
+ We expect participants to follow these rules at conference and workshop venues and conference-related social events.
+
+
+
\ No newline at end of file
diff --git a/2018/images/201-created.svg b/2018/images/201-created.svg
new file mode 100755
index 00000000..3488b8d0
--- /dev/null
+++ b/2018/images/201-created.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2018/images/TRIPTYK.svg b/2018/images/TRIPTYK.svg
new file mode 100755
index 00000000..f1e3a987
--- /dev/null
+++ b/2018/images/TRIPTYK.svg
@@ -0,0 +1,35 @@
+
+
+
diff --git a/2018/images/berlin.jpg b/2018/images/berlin.jpg
new file mode 100755
index 00000000..3c28ca2c
Binary files /dev/null and b/2018/images/berlin.jpg differ
diff --git a/2018/images/blog/dinner-on-boat.jpg b/2018/images/blog/dinner-on-boat.jpg
new file mode 100755
index 00000000..a90e5177
Binary files /dev/null and b/2018/images/blog/dinner-on-boat.jpg differ
diff --git a/2018/images/blog/friends-on-tram.jpg b/2018/images/blog/friends-on-tram.jpg
new file mode 100755
index 00000000..7ae081ad
Binary files /dev/null and b/2018/images/blog/friends-on-tram.jpg differ
diff --git a/2018/images/blog/isaac-presenting-at-meetup.jpg b/2018/images/blog/isaac-presenting-at-meetup.jpg
new file mode 100755
index 00000000..ddb7ba17
Binary files /dev/null and b/2018/images/blog/isaac-presenting-at-meetup.jpg differ
diff --git a/2018/images/cardstack.png b/2018/images/cardstack.png
new file mode 100755
index 00000000..080ed8a6
Binary files /dev/null and b/2018/images/cardstack.png differ
diff --git a/2018/images/chad-carbert.png b/2018/images/chad-carbert.png
new file mode 100755
index 00000000..2d2a4e89
Binary files /dev/null and b/2018/images/chad-carbert.png differ
diff --git a/2018/images/chad-hietala.jpg b/2018/images/chad-hietala.jpg
new file mode 100755
index 00000000..2d1cb715
Binary files /dev/null and b/2018/images/chad-hietala.jpg differ
diff --git a/2018/images/danielle-adams.jpeg b/2018/images/danielle-adams.jpeg
new file mode 100755
index 00000000..947e106d
Binary files /dev/null and b/2018/images/danielle-adams.jpeg differ
diff --git a/2018/images/emberfest_logo.svg b/2018/images/emberfest_logo.svg
new file mode 100755
index 00000000..a46d03c0
--- /dev/null
+++ b/2018/images/emberfest_logo.svg
@@ -0,0 +1,215 @@
+
+
\ No newline at end of file
diff --git a/2018/images/francesco-novy.jpg b/2018/images/francesco-novy.jpg
new file mode 100755
index 00000000..7b2b8f4d
Binary files /dev/null and b/2018/images/francesco-novy.jpg differ
diff --git a/2018/images/harvest.png b/2018/images/harvest.png
new file mode 100755
index 00000000..05658991
Binary files /dev/null and b/2018/images/harvest.png differ
diff --git a/2018/images/jessica-jordan.jpg b/2018/images/jessica-jordan.jpg
new file mode 100755
index 00000000..1c16822a
Binary files /dev/null and b/2018/images/jessica-jordan.jpg differ
diff --git a/2018/images/jonathan-jackson.jpg b/2018/images/jonathan-jackson.jpg
new file mode 100755
index 00000000..c56d90a8
Binary files /dev/null and b/2018/images/jonathan-jackson.jpg differ
diff --git a/2018/images/kenneth-larsen.png b/2018/images/kenneth-larsen.png
new file mode 100755
index 00000000..bf267f98
Binary files /dev/null and b/2018/images/kenneth-larsen.png differ
diff --git a/2018/images/kevin-pfefferle.jpg b/2018/images/kevin-pfefferle.jpg
new file mode 100755
index 00000000..b74773d3
Binary files /dev/null and b/2018/images/kevin-pfefferle.jpg differ
diff --git a/2018/images/kloeckner-i.svg b/2018/images/kloeckner-i.svg
new file mode 100755
index 00000000..5c7dd964
--- /dev/null
+++ b/2018/images/kloeckner-i.svg
@@ -0,0 +1,36 @@
+
+
+
diff --git a/2018/images/linkedin.png b/2018/images/linkedin.png
new file mode 100755
index 00000000..8d656ee7
Binary files /dev/null and b/2018/images/linkedin.png differ
diff --git a/2018/images/linkfire.svg b/2018/images/linkfire.svg
new file mode 100755
index 00000000..eaca4b98
--- /dev/null
+++ b/2018/images/linkfire.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2018/images/logo.png b/2018/images/logo.png
new file mode 100755
index 00000000..d7517743
Binary files /dev/null and b/2018/images/logo.png differ
diff --git a/2018/images/marco-otte-witte.jpg b/2018/images/marco-otte-witte.jpg
new file mode 100755
index 00000000..61c52e29
Binary files /dev/null and b/2018/images/marco-otte-witte.jpg differ
diff --git a/2018/images/melanie-sumner.jpeg b/2018/images/melanie-sumner.jpeg
new file mode 100755
index 00000000..f210415a
Binary files /dev/null and b/2018/images/melanie-sumner.jpeg differ
diff --git a/2018/images/michael-lange.jpg b/2018/images/michael-lange.jpg
new file mode 100755
index 00000000..22f927c4
Binary files /dev/null and b/2018/images/michael-lange.jpg differ
diff --git a/2018/images/mill_blue.svg b/2018/images/mill_blue.svg
new file mode 100755
index 00000000..115f326e
--- /dev/null
+++ b/2018/images/mill_blue.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2018/images/peopledoc.svg b/2018/images/peopledoc.svg
new file mode 100755
index 00000000..10a184f0
--- /dev/null
+++ b/2018/images/peopledoc.svg
@@ -0,0 +1,61 @@
+
+
+
diff --git a/2018/images/prototypal.png b/2018/images/prototypal.png
new file mode 100755
index 00000000..a1ac5fa3
Binary files /dev/null and b/2018/images/prototypal.png differ
diff --git a/2018/images/rocky-neurock.jpg b/2018/images/rocky-neurock.jpg
new file mode 100755
index 00000000..686f10f8
Binary files /dev/null and b/2018/images/rocky-neurock.jpg differ
diff --git a/2018/images/selleo.png b/2018/images/selleo.png
new file mode 100755
index 00000000..928dcd55
Binary files /dev/null and b/2018/images/selleo.png differ
diff --git a/2018/images/simon-ihmig.jpeg b/2018/images/simon-ihmig.jpeg
new file mode 100755
index 00000000..1d8ae1c0
Binary files /dev/null and b/2018/images/simon-ihmig.jpeg differ
diff --git a/2018/images/simplabs.svg b/2018/images/simplabs.svg
new file mode 100755
index 00000000..022e84f1
--- /dev/null
+++ b/2018/images/simplabs.svg
@@ -0,0 +1,8 @@
+
+
+
diff --git a/2018/images/skyline-small.svg b/2018/images/skyline-small.svg
new file mode 100755
index 00000000..e7d9bb24
--- /dev/null
+++ b/2018/images/skyline-small.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2018/images/skyline.svg b/2018/images/skyline.svg
new file mode 100755
index 00000000..602de936
--- /dev/null
+++ b/2018/images/skyline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2018/images/tilde.png b/2018/images/tilde.png
new file mode 100755
index 00000000..38c2a59f
Binary files /dev/null and b/2018/images/tilde.png differ
diff --git a/2018/images/tobias-bieniek.jpg b/2018/images/tobias-bieniek.jpg
new file mode 100755
index 00000000..afcfda6b
Binary files /dev/null and b/2018/images/tobias-bieniek.jpg differ
diff --git a/2018/images/tom-dale.jpeg b/2018/images/tom-dale.jpeg
new file mode 100755
index 00000000..926b9eb3
Binary files /dev/null and b/2018/images/tom-dale.jpeg differ
diff --git a/2018/images/venue.jpg b/2018/images/venue.jpg
new file mode 100755
index 00000000..dd0d2a2b
Binary files /dev/null and b/2018/images/venue.jpg differ
diff --git a/2018/images/wyeworks.png b/2018/images/wyeworks.png
new file mode 100755
index 00000000..d01182ac
Binary files /dev/null and b/2018/images/wyeworks.png differ
diff --git a/2018/imprint/index.html b/2018/imprint/index.html
new file mode 100644
index 00000000..6eec68a1
--- /dev/null
+++ b/2018/imprint/index.html
@@ -0,0 +1,27 @@
+---
+layout: 2018/default
+title: EmberFest
+---
+{% include 2018/main_header.html %}
+
+
+
+
Imprint
+
+ Publisher information according to §6 Teledienstgesetz (TDG)
+ Responsible according to §6 MDStV:
+
+
+ EmberFest UG
+ +49 89 452 139 03
+ Marco Otte-Witte
+ Hans-Sachs-Str. 12
+ 80469 München
+ Germany
+
+
Exclusion of Liability
+
+ We check and update the information on this website regularly. Despite our best efforts, information on the site may not always be correct. Liability concerning timeliness, correctness and completeness of the available information can not be assumed. This applies also for all other websites which are referred via hyperlink. EmberFest UG is not responsible for the content of these third party websites.
+
+
+
\ No newline at end of file
diff --git a/2018/index.html b/2018/index.html
new file mode 100755
index 00000000..cdc34e6f
--- /dev/null
+++ b/2018/index.html
@@ -0,0 +1,192 @@
+---
+layout: 2018/default
+title: EmberFest
+---
+
+
+
+
+
+
+
+
+ EmberFest is the European Community Ember Conference.
+ If you're looking for updates on the latest and greatest in Ember and Glimmer this is the place to be.
+ EmberFest is also a great opportunity to get in touch with the European Ember Community (and friends from
+ abroad) and hiring Ember talent.
+
Emberfest uses Google Analytics to collect user statistics.
+
Google Analytics is a service that collects data about website visitors.
+
What Google Analytics records
+
+
The referrer that let a user to this website
+
The duration of the visit
+
Information about the client used to access the website
+
other information
+
+
How we use that data
+
+ The information recorded by Google Analytics allows us to better understand the audience of this website, what
+ content they’re accessing and how they get here. This allows us to make better decisions about design, writing
+ and marketing.
+
No personally identifying data is ever included in the reports that we run.
+ Ember does not have the best reputation for being suited for mobile apps, mostly for being "too large". But
+ why does size matter, and how can we keep it small? Future techniques like tree-shaking and code-splitting
+ will support this task. But there are quite a few things you can do today to reduce your bundle size.
+
+ Based on the experience of optimizing my own app, this talk will guide you through the iterative process of
+ measuring, analyzing and optimizing your app's size. For each of these phases I will introduce you to some
+ essential tools and helpful practical tips.
+
+
+
+ Simon is a co-founder of kaliber5, a consultancy in Hamburg, Germany, where he builds ambitious web
+ applications during the day, and Ember addons at night.
+
+ vim or emacs, text editor or IDE, no matter what you use to write your Ember applications you will likely use
+ some form of editor integration. Some only provide code highlighting, others provide integrated linting and
+ sophisticated code navigation. In this talk we will take a look at the Ember Language Server powering the
+ Visual Studio Code plugin. We will talk about the features it provides and how they are implemented, and
+ discuss what else is planned for the future.
+
+
+
+ Tobias Bieniek is a member of the Ember CLI team and active member of the Ember community working on a number
+ of popular addons. He recently joined the team at simplabs where he now does full-time Ember.js consulting
+ and development.
+
+ Ember takes pride in having great documentation. So much that we even have a Learning Team dedicated to
+ keeping the official documentation great.
+
+
+ But what is the actual state of community documentation?
+
+
+ After scraping and analysing just about 5000 readme files from Ember addons created by the community, I’ll
+ present common pitfalls and ways to improve our community documentation.
+
+
+
+ I’m a code janitor at Linkfire and an Ember.js contributor with a special love for documentation and
+ accessibility.
+
+ It used to be that only the most impressive websites would update data live as you sat on the page. Now, as
+ the lines between native apps and websites blur, this is becoming expected behavior. What was once
+ cutting-edge tech is now standard-issue for a good user experience.
+
+
+ See how HashiCorp made the UI for the cluster scheduler software Nomad realtime with Ember Concurrency, Ember
+ Data, and the rendering layer we know and love.
+
+
+
+ A UI engineer at HashiCorp with 4+ years of experience in Ember.
+
+
+
+
+
+
+
+
+
+
Bringing coffee tasting to rural areas with Ember & Cordova
+
+
+
+
+
+
Francesco Novy
+
+
+
+ This talk will show learnings and traps to avoid when creating apps for mobile devices which are built with
+ web technologies (e.g. with Cordova) and should also work without an internet connection.
+ Common problems will be shown with concrete solutions, like for example: How & when to sync data, how to
+ improve the perceived performance, and how to deploy an app to multiple platforms & app stores.
+
+
+ Francesco has been developing web apps for six years. While JavaScript is his main responsibility, he is also
+ deeply involved in all HTML and CSS development.
+ He is currently working for Cropster, a company based in Austria and Sacramento which develops services &
+ solutions for all things coffee, where he is the lead frontend developer. One of Cropster’s main products is
+ a coffee profiling software.
+
+ > *“Building forms in @emberjs is terrifying because I'm stuck with decisions I always later regret.”*
+
+
+ > - me in another lifetime
+
+
+ HTML forms can represent a time before JavaScript was an integral part of application development. Creating
+ forms isn’t always the most exciting part of development and, at times, it may seem daunting. Fear not! I’d
+ like to talk through some pain points of building an important piece of user interface: we will discuss what
+ to do, what not to do, which Ember addons have come to the rescue, and how to make forms accessible.
+
+
+
+ Danielle is a New York City-based software engineer at Heroku. Her expertise stretches between front-end
+ heavy applications built with Ember and a wide range of back-end work. In her free time, she enjoys live
+ music, teaching others to code, collecting cactus plants, and hanging out with her cat.
+
+
+
+
+
+
+
+
+
+
From the Browser to the Home Screen: PWAing Your Ember App
+
+
+
+
+
+
Kevin Pfefferle
+
+
+
+ For EmberConf, we built a cutting-edge Ember mobile web app to serve as a convenient up-to-the-minute
+ reference for the conference's schedule. Now updated for EmberFest, I'll highlight how we made this
+ conference schedule app a fully compliant Progressive Web App. We'll walk through the steps needed to take
+ your mobile Ember app out of the mobile browser and onto your users' home screens. With new native platform
+ support available just this year and the backing of the always-amazing Ember addon ecosystem, making your
+ Ember app fully PWA capable has never been easier or more worthwhile.
+
+
+
+ Currently a full-time Ember consultant with 201 Created, Kevin has been building products for the web for
+ well over a decade. With diverse experience ranging from nonprofit digital marketing to VC-funded startup
+ CTO, Kevin enjoys taking complex topics and presenting them in a way that's readily applicable to any
+ project.
+
+ Are you a fan of comics or have you ever dreamed of becoming a comic artist yourself? Then this talk is just
+ for you.
+
+
+ We will see how both recent and matured Web APIs can be leveraged to tell our own, rich and interactive
+ stories on the web. We’ll take a look on how we can use Ember.js to help us create an online comic book that
+ makes any comic art fan’s heart leap for joy.
+
+
+
+ Jessica Jordan is a member of the Ember Learning Core team and a software engineer at simplabs. She is an
+ editor at The Ember Times and organizes the Ember Berlin meetup. She is a big fan of CSS, art and comics.
+
+ The core of this talk revolves around a allegorical story. We follow a "hero" (an emoji) who discovers a
+ "badFunction" and realizes the implications in her codebase. Though easily able to fix the problem in the one
+ instance she discovered it she quickly realizes that the problem is much much bigger than she originaly
+ thought.
+
+
+ After attempting to resolve the problem with regexes she attends a Meetup that discusses JSCodeshift and she
+ tries to fix the problem through the codebase with a Codemod.
+
+
+
+ Jonathan (@rondale_sc) is a seasoned Ruby and Rails aficionado turned Ember expert. He hosts the Ember
+ Weekend podcast, a preeminent Ember and programming news source. Jonathan works at 201-created as a JS/Ember
+ consultant.
+
+ As Ember developers, a large percentage of us work on data-intensive applications. Ember Data and JSON:API
+ give us really powerful tools for interacting with our data. Sometimes these tools still aren’t flexible
+ enough and we end up implementing our own data model witchery/wizardry. In this talk we’ll explore why, and
+ how, we transitioned to GraphQL with Ember, along with some tips and techniques you may want to try out in
+ your own projects.
+
+
+
Rocky and Chad are Senior Frontend Developers at kloeckner.i in Berlin. They are both ex-Portlanders who
+ spent years being involved in the Portland Ember community, attending EmberConf and participating in Ember
+ meet ups. Now they enjoy being involved in all things Ember in Europe.
+
+
+
+
+
+
+
+
+
Principles from leaders across the Ember community
+
+
+
+
+
+
Scott Newcomer
+
+
+
+ Principles can help guide a software project towards successful completion by helping guide your team through
+ difficult situations, create team cohesiveness, and set expectations of standards. Ultimately principles can
+ help ship better products.
+
+
+ In this talk, I gathered leader's principles across many different organizations overseeing software projects
+ using Ember.js to help us learn from each other. I also sought to understood how Ember.js's principles helps
+ their organization and what recommendations they have for our community to help them keep bringing value to
+ their clients and customers.
+
+
+
+ I live my life by principles.
+ They help guide decisions at every step of my life. Moreover, I do a lot of my work out in the open and find
+ that discussing and testing out ideas and strategies with other people brings about a better outcome than if
+ I kept it to myself. In the end, I love learning from other people.
+
+ The templating layer in Ember has evolved architecturally numerous times in the history of the project. At
+ each stage of this evolution we have been able to increase performance and ergonomics without introducing a
+ lot of instability. But what's next for templating in Ember? In this talk I will explore the advantages of
+ the VM architecture and why I think Ember is leading the way for a re-examination of how the larger JS
+ community thinks about rendering.
+
+
+
+ I'm a Senior Staff Engineer at LinkedIn working on open source JavaScript infrastructure that powers
+ LinkedIn's web properties.
+
+ We now have the tools to build apps that run fast (and that's only getting better as Glimmer advances) but
+ they can only do so after having been delivered to our users. This talk explores what tools and mechanisms
+ are available to get our apps to our users' devices faster, reducing the time until first and repeat
+ launches.
+
+
+ We will look into mechanisms like HTTP/2, resource hints and lazy loading. We will also look at tooling that
+ gives us better insight into the performance consequences each merged PR. Finally, we'll explore mechanisms
+ in the Ember ecosystem to further optimize app delivery.
+
+
+
+ Marco is the founder of simplabs, a consultancy based in Munich, Germany specializing in Ember.js and
+ Elixir/Phoenix. He has been working in Web Engineering since the late 90s and used many different languages
+ and frameworks in project of all scale for enterprise clients and startups. Marco is passionate about
+ conventions-based tools that liberate through imposing constraints.
+
+
+
+
+
diff --git a/2019/cancellation/index.html b/2019/cancellation/index.html
new file mode 100644
index 00000000..1651b976
--- /dev/null
+++ b/2019/cancellation/index.html
@@ -0,0 +1,21 @@
+---
+layout: 2019/default
+title: EmberFest
+---
+{% include 2019/main_header.html %}
+
+
+
+
Cancellation Policy
+
Up to 30 days before the start of the conference
+
+ Up to 30 days before the start of the conference, you can get a full refund for your ticket. Send an email to mail@emberfest.eu and we will process your refund.
+
+
Within 30 days of the start of the conference
+
+ We are unable to offer refunds within 30 days of the conference, however your ticket can be reassigned at any time to a different attendee. To reassign your ticket, please follow the link on your original confirmation email.
+
+
“Force majeure” events
+
Should the conference be cancelled for any reason (including due to restrictions because of the Coronavirus pandemic), purchased tickets will be valid for the next year.
+
+
diff --git a/2019/code-of-conduct/index.html b/2019/code-of-conduct/index.html
new file mode 100644
index 00000000..02b860d6
--- /dev/null
+++ b/2019/code-of-conduct/index.html
@@ -0,0 +1,44 @@
+---
+layout: 2019/default
+title: EmberFest
+---
+{% include 2019/main_header.html %}
+
+
+
+
Conference Code of Conduct
+
+ All attendees, speakers, sponsors and volunteers at our conference are required to agree with the following code of conduct. Organisers will enforce this code throughout the event. We expect cooperation from all participants to help ensure a safe environment for everybody.
+
+
Need Help?
+
+ You have our contact details in the emails we've sent.
+
+
The Quick Version
+
+ Our conference is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion (or lack thereof), or technology choices. We do not tolerate harassment of conference participants in any form. Sexual language and imagery is not appropriate for any conference venue, including talks, workshops, parties, Twitter and other online media. Conference participants violating these rules may be sanctioned or expelled from the conference without a refund at the discretion of the conference organisers.
+
+
The Less Quick Version
+
+ Harassment includes offensive verbal comments related to gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion, technology choices, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention.
+
+
+ Participants asked to stop any harassing behavior are expected to comply immediately.
+
+
+ Sponsors are also subject to the anti-harassment policy. In particular, sponsors should not use sexualised images, activities, or other material. Booth staff (including volunteers) should not use sexualised clothing/uniforms/costumes, or otherwise create a sexualised environment.
+
+
+ If a participant engages in harassing behavior, the conference organisers may take any action they deem appropriate, including warning the offender or expulsion from the conference with no refund.
+
+
+ If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact a member of conference staff immediately. Conference staff can be identified as they'll be wearing branded clothing and/or badges.
+
+
+ Conference staff will be happy to help participants contact hotel/venue security or local law enforcement, provide escorts, or otherwise assist those experiencing harassment to feel safe for the duration of the conference. We value your attendance.
+
+
+ We expect participants to follow these rules at conference and workshop venues and conference-related social events.
+
+
+
\ No newline at end of file
diff --git a/2019/images/201-created.svg b/2019/images/201-created.svg
new file mode 100644
index 00000000..3488b8d0
--- /dev/null
+++ b/2019/images/201-created.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2019/images/TRIPTYK.svg b/2019/images/TRIPTYK.svg
new file mode 100644
index 00000000..f1e3a987
--- /dev/null
+++ b/2019/images/TRIPTYK.svg
@@ -0,0 +1,35 @@
+
+
+
diff --git a/2019/images/Vestauranten.jpg b/2019/images/Vestauranten.jpg
new file mode 100644
index 00000000..b8ad86ff
Binary files /dev/null and b/2019/images/Vestauranten.jpg differ
diff --git a/2019/images/addepar.svg b/2019/images/addepar.svg
new file mode 100755
index 00000000..e92fa5eb
--- /dev/null
+++ b/2019/images/addepar.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2019/images/adrian.jpg b/2019/images/adrian.jpg
new file mode 100644
index 00000000..dfd2d2bb
Binary files /dev/null and b/2019/images/adrian.jpg differ
diff --git a/2019/images/berlin.jpg b/2019/images/berlin.jpg
new file mode 100644
index 00000000..3c28ca2c
Binary files /dev/null and b/2019/images/berlin.jpg differ
diff --git a/2019/images/blog/dinner-on-boat.jpg b/2019/images/blog/dinner-on-boat.jpg
new file mode 100644
index 00000000..a90e5177
Binary files /dev/null and b/2019/images/blog/dinner-on-boat.jpg differ
diff --git a/2019/images/blog/friends-on-tram.jpg b/2019/images/blog/friends-on-tram.jpg
new file mode 100644
index 00000000..7ae081ad
Binary files /dev/null and b/2019/images/blog/friends-on-tram.jpg differ
diff --git a/2019/images/blog/isaac-presenting-at-meetup.jpg b/2019/images/blog/isaac-presenting-at-meetup.jpg
new file mode 100644
index 00000000..ddb7ba17
Binary files /dev/null and b/2019/images/blog/isaac-presenting-at-meetup.jpg differ
diff --git a/2019/images/cardstack.png b/2019/images/cardstack.png
new file mode 100644
index 00000000..080ed8a6
Binary files /dev/null and b/2019/images/cardstack.png differ
diff --git a/2019/images/chad-carbert.jpg b/2019/images/chad-carbert.jpg
new file mode 100644
index 00000000..899d347e
Binary files /dev/null and b/2019/images/chad-carbert.jpg differ
diff --git a/2019/images/chad-carbert.png b/2019/images/chad-carbert.png
new file mode 100644
index 00000000..2d2a4e89
Binary files /dev/null and b/2019/images/chad-carbert.png differ
diff --git a/2019/images/chad-hietala.jpg b/2019/images/chad-hietala.jpg
new file mode 100644
index 00000000..2d1cb715
Binary files /dev/null and b/2019/images/chad-hietala.jpg differ
diff --git a/2019/images/chantal-broeren.jpg b/2019/images/chantal-broeren.jpg
new file mode 100644
index 00000000..a4624f88
Binary files /dev/null and b/2019/images/chantal-broeren.jpg differ
diff --git a/2019/images/chris-manson.jpg b/2019/images/chris-manson.jpg
new file mode 100644
index 00000000..25e6cf05
Binary files /dev/null and b/2019/images/chris-manson.jpg differ
diff --git a/2019/images/chris-manson.png b/2019/images/chris-manson.png
new file mode 100644
index 00000000..6b14ad0e
Binary files /dev/null and b/2019/images/chris-manson.png differ
diff --git a/2019/images/chris-ng.jpg b/2019/images/chris-ng.jpg
new file mode 100644
index 00000000..a1241487
Binary files /dev/null and b/2019/images/chris-ng.jpg differ
diff --git a/2019/images/chris-thoburn.jpeg b/2019/images/chris-thoburn.jpeg
new file mode 100644
index 00000000..b26ed06e
Binary files /dev/null and b/2019/images/chris-thoburn.jpeg differ
diff --git a/2019/images/clark.svg b/2019/images/clark.svg
new file mode 100644
index 00000000..d06e9e4d
--- /dev/null
+++ b/2019/images/clark.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2019/images/claudia-hinkle.jpg b/2019/images/claudia-hinkle.jpg
new file mode 100644
index 00000000..287b7722
Binary files /dev/null and b/2019/images/claudia-hinkle.jpg differ
diff --git a/2019/images/crowdstrike.svg b/2019/images/crowdstrike.svg
new file mode 100644
index 00000000..2feaa63c
--- /dev/null
+++ b/2019/images/crowdstrike.svg
@@ -0,0 +1,11 @@
+
diff --git a/2019/images/danielle-adams.jpeg b/2019/images/danielle-adams.jpeg
new file mode 100644
index 00000000..947e106d
Binary files /dev/null and b/2019/images/danielle-adams.jpeg differ
diff --git a/2019/images/edward-faulkner.jpeg b/2019/images/edward-faulkner.jpeg
new file mode 100644
index 00000000..686aa4f9
Binary files /dev/null and b/2019/images/edward-faulkner.jpeg differ
diff --git a/2019/images/ember-checkup.svg b/2019/images/ember-checkup.svg
new file mode 100644
index 00000000..8c6c9147
--- /dev/null
+++ b/2019/images/ember-checkup.svg
@@ -0,0 +1,13 @@
+
\ No newline at end of file
diff --git a/2019/images/ember-map.svg b/2019/images/ember-map.svg
new file mode 100644
index 00000000..2132bc1a
--- /dev/null
+++ b/2019/images/ember-map.svg
@@ -0,0 +1,32 @@
+
+
+
diff --git a/2019/images/emberfest_logo.svg b/2019/images/emberfest_logo.svg
new file mode 100644
index 00000000..a46d03c0
--- /dev/null
+++ b/2019/images/emberfest_logo.svg
@@ -0,0 +1,215 @@
+
+
\ No newline at end of file
diff --git a/2019/images/europe-map.png b/2019/images/europe-map.png
new file mode 100644
index 00000000..84c23c73
Binary files /dev/null and b/2019/images/europe-map.png differ
diff --git a/2019/images/francesco-novy.jpg b/2019/images/francesco-novy.jpg
new file mode 100644
index 00000000..7b2b8f4d
Binary files /dev/null and b/2019/images/francesco-novy.jpg differ
diff --git a/2019/images/godfrey-chan.jpg b/2019/images/godfrey-chan.jpg
new file mode 100644
index 00000000..46a42494
Binary files /dev/null and b/2019/images/godfrey-chan.jpg differ
diff --git a/2019/images/harvest.png b/2019/images/harvest.png
new file mode 100644
index 00000000..05658991
Binary files /dev/null and b/2019/images/harvest.png differ
diff --git a/2019/images/honeypot.svg b/2019/images/honeypot.svg
new file mode 100644
index 00000000..f30f50ef
--- /dev/null
+++ b/2019/images/honeypot.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/2019/images/isaac-lee.jpg b/2019/images/isaac-lee.jpg
new file mode 100644
index 00000000..c5623d3d
Binary files /dev/null and b/2019/images/isaac-lee.jpg differ
diff --git a/2019/images/jessica-jordan.jpg b/2019/images/jessica-jordan.jpg
new file mode 100644
index 00000000..143eca51
Binary files /dev/null and b/2019/images/jessica-jordan.jpg differ
diff --git a/2019/images/jon-kilroy.jpg b/2019/images/jon-kilroy.jpg
new file mode 100644
index 00000000..1680e914
Binary files /dev/null and b/2019/images/jon-kilroy.jpg differ
diff --git a/2019/images/jonathan-jackson.jpg b/2019/images/jonathan-jackson.jpg
new file mode 100644
index 00000000..c56d90a8
Binary files /dev/null and b/2019/images/jonathan-jackson.jpg differ
diff --git a/2019/images/kenigbolo-meya-stephen.jpg b/2019/images/kenigbolo-meya-stephen.jpg
new file mode 100644
index 00000000..231cc772
Binary files /dev/null and b/2019/images/kenigbolo-meya-stephen.jpg differ
diff --git a/2019/images/kenneth-larsen.png b/2019/images/kenneth-larsen.png
new file mode 100644
index 00000000..bf267f98
Binary files /dev/null and b/2019/images/kenneth-larsen.png differ
diff --git a/2019/images/kevin-pfefferle.jpg b/2019/images/kevin-pfefferle.jpg
new file mode 100644
index 00000000..b74773d3
Binary files /dev/null and b/2019/images/kevin-pfefferle.jpg differ
diff --git a/2019/images/kloeckner-i.svg b/2019/images/kloeckner-i.svg
new file mode 100644
index 00000000..5c7dd964
--- /dev/null
+++ b/2019/images/kloeckner-i.svg
@@ -0,0 +1,36 @@
+
+
+
diff --git a/2019/images/lauren-tan.jpg b/2019/images/lauren-tan.jpg
new file mode 100644
index 00000000..e5dc8e2f
Binary files /dev/null and b/2019/images/lauren-tan.jpg differ
diff --git a/2019/images/linkedin.png b/2019/images/linkedin.png
new file mode 100644
index 00000000..8d656ee7
Binary files /dev/null and b/2019/images/linkedin.png differ
diff --git a/2019/images/linkfire.svg b/2019/images/linkfire.svg
new file mode 100644
index 00000000..eaca4b98
--- /dev/null
+++ b/2019/images/linkfire.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2019/images/logo.png b/2019/images/logo.png
new file mode 100644
index 00000000..d7517743
Binary files /dev/null and b/2019/images/logo.png differ
diff --git a/2019/images/marco-otte-witte.jpg b/2019/images/marco-otte-witte.jpg
new file mode 100644
index 00000000..61c52e29
Binary files /dev/null and b/2019/images/marco-otte-witte.jpg differ
diff --git a/2019/images/mascot.png b/2019/images/mascot.png
new file mode 100644
index 00000000..42b61ba0
Binary files /dev/null and b/2019/images/mascot.png differ
diff --git a/2019/images/melanie-sumner.jpg b/2019/images/melanie-sumner.jpg
new file mode 100644
index 00000000..60bc5c34
Binary files /dev/null and b/2019/images/melanie-sumner.jpg differ
diff --git a/2019/images/melanie-sumner.png b/2019/images/melanie-sumner.png
new file mode 100644
index 00000000..30e9f0dd
Binary files /dev/null and b/2019/images/melanie-sumner.png differ
diff --git a/2019/images/michael-lange.jpg b/2019/images/michael-lange.jpg
new file mode 100644
index 00000000..22f927c4
Binary files /dev/null and b/2019/images/michael-lange.jpg differ
diff --git a/2019/images/miguel-camba.jpg b/2019/images/miguel-camba.jpg
new file mode 100644
index 00000000..34fa9ef5
Binary files /dev/null and b/2019/images/miguel-camba.jpg differ
diff --git a/2019/images/peopledoc.svg b/2019/images/peopledoc.svg
new file mode 100644
index 00000000..10a184f0
--- /dev/null
+++ b/2019/images/peopledoc.svg
@@ -0,0 +1,61 @@
+
+
+
diff --git a/2019/images/person-female.jpg b/2019/images/person-female.jpg
new file mode 100644
index 00000000..e7703849
Binary files /dev/null and b/2019/images/person-female.jpg differ
diff --git a/2019/images/person-male.jpg b/2019/images/person-male.jpg
new file mode 100644
index 00000000..1eeb397b
Binary files /dev/null and b/2019/images/person-male.jpg differ
diff --git a/2019/images/phorest.svg b/2019/images/phorest.svg
new file mode 100644
index 00000000..bf97b612
--- /dev/null
+++ b/2019/images/phorest.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2019/images/precnut.svg b/2019/images/precnut.svg
new file mode 100644
index 00000000..067b1157
--- /dev/null
+++ b/2019/images/precnut.svg
@@ -0,0 +1,63 @@
+
+
+
diff --git a/2019/images/prototypal.png b/2019/images/prototypal.png
new file mode 100644
index 00000000..a1ac5fa3
Binary files /dev/null and b/2019/images/prototypal.png differ
diff --git a/2019/images/redpencil.svg b/2019/images/redpencil.svg
new file mode 100644
index 00000000..d124a215
--- /dev/null
+++ b/2019/images/redpencil.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2019/images/ricardo-mendes.jpg b/2019/images/ricardo-mendes.jpg
new file mode 100644
index 00000000..d64cd6a9
Binary files /dev/null and b/2019/images/ricardo-mendes.jpg differ
diff --git a/2019/images/rocky-neurock.jpg b/2019/images/rocky-neurock.jpg
new file mode 100644
index 00000000..686f10f8
Binary files /dev/null and b/2019/images/rocky-neurock.jpg differ
diff --git a/2019/images/sama-rao.jpg b/2019/images/sama-rao.jpg
new file mode 100644
index 00000000..1f754a19
Binary files /dev/null and b/2019/images/sama-rao.jpg differ
diff --git a/2019/images/selleo.png b/2019/images/selleo.png
new file mode 100644
index 00000000..928dcd55
Binary files /dev/null and b/2019/images/selleo.png differ
diff --git a/2019/images/sergio-arbeo.jpg b/2019/images/sergio-arbeo.jpg
new file mode 100644
index 00000000..bd17377e
Binary files /dev/null and b/2019/images/sergio-arbeo.jpg differ
diff --git a/2019/images/simon-ihmig.jpeg b/2019/images/simon-ihmig.jpeg
new file mode 100644
index 00000000..1d8ae1c0
Binary files /dev/null and b/2019/images/simon-ihmig.jpeg differ
diff --git a/2019/images/simplabs.svg b/2019/images/simplabs.svg
new file mode 100644
index 00000000..022e84f1
--- /dev/null
+++ b/2019/images/simplabs.svg
@@ -0,0 +1,8 @@
+
+
+
diff --git a/2019/images/skyline-cph.svg b/2019/images/skyline-cph.svg
new file mode 100644
index 00000000..8f13c7ca
--- /dev/null
+++ b/2019/images/skyline-cph.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2019/images/skyline-small.svg b/2019/images/skyline-small.svg
new file mode 100644
index 00000000..e7d9bb24
--- /dev/null
+++ b/2019/images/skyline-small.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2019/images/sticker-mule.svg b/2019/images/sticker-mule.svg
new file mode 100644
index 00000000..b7dd95ae
--- /dev/null
+++ b/2019/images/sticker-mule.svg
@@ -0,0 +1,62 @@
+
+
+
diff --git a/2019/images/tilde.png b/2019/images/tilde.png
new file mode 100644
index 00000000..38c2a59f
Binary files /dev/null and b/2019/images/tilde.png differ
diff --git a/2019/images/tobias-bieniek.jpg b/2019/images/tobias-bieniek.jpg
new file mode 100644
index 00000000..afcfda6b
Binary files /dev/null and b/2019/images/tobias-bieniek.jpg differ
diff --git a/2019/images/tom-dale.jpeg b/2019/images/tom-dale.jpeg
new file mode 100644
index 00000000..926b9eb3
Binary files /dev/null and b/2019/images/tom-dale.jpeg differ
diff --git a/2019/images/venue.jpg b/2019/images/venue.jpg
new file mode 100644
index 00000000..6e2d036b
Binary files /dev/null and b/2019/images/venue.jpg differ
diff --git a/2019/images/website-header.png b/2019/images/website-header.png
new file mode 100644
index 00000000..64af652b
Binary files /dev/null and b/2019/images/website-header.png differ
diff --git a/2019/images/wyeworks.png b/2019/images/wyeworks.png
new file mode 100644
index 00000000..d01182ac
Binary files /dev/null and b/2019/images/wyeworks.png differ
diff --git a/2019/imprint/index.html b/2019/imprint/index.html
new file mode 100644
index 00000000..36d36575
--- /dev/null
+++ b/2019/imprint/index.html
@@ -0,0 +1,27 @@
+---
+layout: 2019/default
+title: EmberFest
+---
+{% include 2019/main_header.html %}
+
+
+
+
Imprint
+
+ Publisher information according to §6 Teledienstgesetz (TDG)
+ Responsible according to §6 MDStV:
+
+
+ EmberFest UG
+ +49 89 452 139 03
+ Marco Otte-Witte
+ Hans-Sachs-Str. 12
+ 80469 München
+ Germany
+
+
Exclusion of Liability
+
+ We check and update the information on this website regularly. Despite our best efforts, information on the site may not always be correct. Liability concerning timeliness, correctness and completeness of the available information can not be assumed. This applies also for all other websites which are referred via hyperlink. EmberFest UG is not responsible for the content of these third party websites.
+
+
+
\ No newline at end of file
diff --git a/2019/index.html b/2019/index.html
new file mode 100644
index 00000000..3d63c4c2
--- /dev/null
+++ b/2019/index.html
@@ -0,0 +1,274 @@
+---
+layout: 2019/default
+title: EmberFest
+---
+
+
+
+
+
+
+
+
+ EmberFest is the European Community Ember Conference.
+ If you're looking for updates on the latest and greatest in Ember and Glimmer this is the place to be.
+ EmberFest is also a great opportunity to get in touch with the European Ember Community (and friends from
+ abroad) and hiring Ember talent.
+
Emberfest uses Google Analytics to collect user statistics.
+
Google Analytics is a service that collects data about website visitors.
+
What Google Analytics records
+
+
The referrer that let a user to this website
+
The duration of the visit
+
Information about the client used to access the website
+
other information
+
+
How we use that data
+
+ The information recorded by Google Analytics allows us to better understand the audience of this website, what
+ content they’re accessing and how they get here. This allows us to make better decisions about design, writing
+ and marketing.
+
No personally identifying data is ever included in the reports that we run.
+ For some time now we’ve designed our apps to be responsive based on media queries. Our applications have evolved and used abstractions around the global media context with tools like ember-responsive which have gotten us pretty far. But in a world of components the context isn’t global, it’s local. Let me show you how we can build components that are responsive to their immediate environment and work anywhere.
+
+
+
+ Hello, I am a Canadian web developer currently working at Heroku 💜. I've previously lived in Portland, Berlin and now I’m happy to call Brooklyn home. I love learning from all the front-end communities and seeing great ideas foster and shared. What I do learn I enjoy sharing, whether through teaching javascript, giving talks, or contributing to open source.
+
+ How do polyglots learn natural languages so quickly and easily? Do we follow a similar process when learning programming languages? We will dive into the key differences and similarities of learning natural versus programming languages and consider how we can apply the most effective methods of learning natural languages to improving the processes by which we learn to code.
+
+
+ Sama is a front-end engineer at Heroku. As a junior engineer, she has spent this last year mastering Ember alongside reading about psychological theories of learning and development. When she's not writing code, you can find her out and about in San Francisco.
+
+ JAM Stack has become a popular phrase in our industry over the last few years with projects like Gatsby and Vuepress gaining popularity at fantastic speeds. This talk will explain JAM Stack and explain how Ember developers have been developing JAM apps for many years. This talk will also explain how Empress is innovating on JAM Stack concepts and making it a lot more accessible to more developers.
+
+
+ Chris has been an Ember developer and enthusiast for almost 8 years. A developer at simplabs and a member of the Ember Core Learning Team, Chris is the creator of Empress and has also championed a number of initiatives to Emberify the Ember website.
+
+ Ever wondered where your component state went or where it came from? In this talk you will learn how arguments, decorators and tracked properties make state management of your component built in Ember Octane easier than ever before. In comparison with patterns known from traditional Ember apps, you will learn how to transform your modern components to predictable and future-proof building blocks of your application.
+
+
+
+ Jessica Jordan is a member of the Ember Learning Core team and a software engineer at simplabs. She is an editor at The Ember Times and organizes the Ember Berlin meetup. She is a big fan of CSS, art and comics.
+
+
+
+
+
+
+
+
+
+
Introducing TypeScript into production Ember.js app
+
+
+
+
+
+
Adrian Zalewski
+
+
+
+ Many key Ember.js components are written in TypeScript, and for good reason. Strongly typed code is a winner: type safety makes it often run correctly on first try, and harder to introduce bugs when modifying it. This matters especially in large, complex codebases.
+
+
+ Should you start writing your Ember.js apps in TypeScript, too? How to do it? Is it practical and actually "worth it"? This talk attempts to answer these questions, based on real-life experience of introducing TypeScript into existing production application.
+
+
+
+ Front-end Engineer at Customer.io, who had luck to meet and fall in love with Ember.js and immense productivity that it brings. Book lover and avid traveler.
+
+ We’re all human, and even a software developer will make mistakes, introduce bugs or leave code we (or others) regret later. How can we make the most of our Ember app and how can we face the issues we are creating? While Ember is growing and developers are using it for even more advanced software, handling errors and debugging will become more advanced too. With this talk we work through pain points, analysing, debugging, what to do and what not to do on solving problems and reducing them.
+
+
+
+ Chantal is a software engineer from the Netherlands, currently working at DockYard. Her main focus has been on building web apps from both sides as a UI and back-end developer. She has 4+ years of experience in Ember and was involved in helping others to work with Ember for the first time and teach them best practices. Also maintainer of a few ember addons.
+
+
+
+
+
+
+
+
+
+
Ember in orbit. Building apps for outer space connectivity.
+
+
+
+
+
+
Miguel Camba
+
+
+
+
+ You have to develop a new app, but this time is different. This time it will run on the first inhabited space station that will orbit the moon! But how does the internet work in space? How long does a request take to reach earth? What about when you are orbiting the dark side of the moon? How does one handle delay? How does one handle failures? Let's explore how to build network-optimistic fail resistant apps for the space age!
+
+
+
I've been an Ember developer for over 5 years and a web developer for around 10.
+For the last year I've been working on an offline-first app that must replace a desktop app that has been the default industry standard whose users are accustomed to some level of snappiness and reliability that can't be attained without optimistic UIs a carefully designed offline-first design (both UI and engineering).
+ Compilers have a reputation for being esoteric and intimidating. But they don't need to be! A compiler is just a program that writes programs. This talk will be a practical tour through the Embroider build system that also teaches compiler concepts along the way.
+
+
+ With the power of multi-pass compilation, Embroider can take a long-lived, conventional Ember app and give it lazy loading, code splitting, and tree shaking. All without modifying the app's own code.
+
+
+
+ Edward Faulkner is a member of the Ember Core Team. His open source code is running on mainstream gaming consoles, major social media sites, and hordes of enterprise applications. His consultancy, Polynomial LLC, leads ambitious software projects for a diverse group of businesses and nonprofits, and he's a lead developer for the Cardstack Project.
+
+
+
+
+
+
+
+
+
+
FastFlood: a story of a massive memory leak in FastBoot land
+
+
+
+
+
+
Sergio Arbeo
+
+
+
+ What would you do if you found a memory leak so big, that most of the data of your requests are leaking? What if everyone on your team was distributed? What if no one on the team shared a timezone?
+
+
+ This talk presents the typical techniques to find a memory leak and a few unusual ones when dealing with a significant leak.
+
+
+ We will also discuss how to organize a distributed team to find the leak faster.
+
+
+
+ Frontend engineer. Doing magic with and without code.
+
+ We often talk about the well-lit path, but what about the danger that lurks in the shadows? What happens when you make one poor choice? What happens when you make 10 poor choices? 100? Sometimes, we just make a mistake. Other times, we believe that the “shortcut” is the answer. Our apps don’t become a mess in a day- and it will take longer than a day to clean them up. There is no silver bullet that will fix everything. We’ll discuss some of those choices, their consequences, and practical steps we can take to allow our apps (and ourselves) the room to become better versions of themselves.
+
+
+
+ Melanie is a decorated, disabled military veteran who works as a Senior Software Engineer at LinkedIn with a focus on accessibility in Ember.js. She is an active member of the Ember.js core team (steering committee, framework, and learning team), co-chair of EmberCamp Chicago, and co-organizer of the Ember Chicago Meetup.
+
+ The Millennium Falcon Lego set has 7,541 pieces and takes 35 hours to build. Imagine how much time could be saved if a fraction of those pieces were replaced with Duplos. In this talk I will share how my team has successfully extracted large sections of our apps into reusable “Duplos”. These Ember Duplos are used to rapidly start apps not just at the 10th floor but the 50th. We will explore how Ember enables us to build, compose, and customize these large logical addons. In addition, I will propose how our community might benefit from a Duplo ecosystem as it has with addons.
+
+
+
+ Jon Kilroy is a software architect at Verizon Media, where he builds and designs data centric applications. He is passionate about delivering great experiences to both end users and developers.
+
+ Ember gives new developers the power to write tests and be productive from day one. You can be confident that your app will be correct today and years from now. Learn 5 simple rules of writing tests from an ex-mathematician.
+
+
+
+ Learning and teaching are two of my passions. Come chat with me about indie music, coffee, and bouldering too!
+
+
+
+
+
+
+
+
+
+
Replaying Real Time Live Video Events with Ember
+
+
+
+
+
+
+
Claudia Hinkle and Chris Ng
+
+
+
+ Live video provides our members an interactive engaging format since other members are actively commenting and reacting on the video in real time. However, when viewing a live video afterwards as a replay, we still want to preserve this user experience since most comments and reactions make more sense with the point in time context of the video. We will go through the entire lifecycle of a member action and what role Ember plays within it – from being created while watching a live video – to being requested and displayed during live and much later on when the live video gets replayed.
+
+
+
+ This is a two person talk.
+
+
+ Claudia is a Software Engineer at LinkedIn, working on video in the New York City Office. She graduated from The Ohio State University in 2018, and spent a semester studying at the University of Copenhagen.
+
+
+ Chris is a Staff Software Engineer at LinkedIn, based in New York City working on video. He is an editor and contributor for both The Ember Times and the LinkedIn Engineering Blog.
+
+ Octane! Tracked Properties! Native Classes! Angle Bracket Syntax! Element Modifiers! So much has changed in Ember over the past 12 months, but what about EmberData?
+
+
+ It might not seem it just yet, but the EmberData you are using today is a vastly more powerful and more flexible library than the EmberData the community has grown up with.
+
+
+ While we were busy shedding weight and preparing for tree-shaking, we were also busy designing an improved core experience that builds upon the strongest aspects of the library.
+
+
+ The Future of Data is now.
+
+
+
+ Chris ("real name" @runspired) is an engineer at LinkedIn and a member of the Ember Data Core Team. When he isn't working on your data-layer or answering questions in discord, he can usually be found running ultra-long distances (just look for the fellow dashing up and down the biggest hill in view). He recently got married to a wife gracious enough to understand both these passions.
+
+
+
+
+
diff --git a/2019/sponsorship.pdf b/2019/sponsorship.pdf
new file mode 100644
index 00000000..2d76a38c
Binary files /dev/null and b/2019/sponsorship.pdf differ
diff --git a/2020/cancellation/index.html b/2020/cancellation/index.html
new file mode 100644
index 00000000..bc4777ec
--- /dev/null
+++ b/2020/cancellation/index.html
@@ -0,0 +1,21 @@
+---
+layout: 2020/default
+title: EmberFest
+---
+{% include 2020/main_header.html %}
+
+
+
+
Cancellation Policy
+
Up to 30 days before the start of the conference
+
+ Up to 30 days before the start of the conference, you can get a full refund for your ticket. Send an email to mail@emberfest.eu and we will process your refund.
+
+
Within 30 days of the start of the conference
+
+ We are unable to offer refunds within 30 days of the conference, however your ticket can be reassigned at any time to a different attendee. To reassign your ticket, please follow the link on your original confirmation email.
+
+
“Force majeure” events
+
Should the conference be cancelled for any reason (including due to restrictions because of the Coronavirus pandemic), purchased tickets will be valid for the next year.
+
+
diff --git a/2020/code-of-conduct/index.html b/2020/code-of-conduct/index.html
new file mode 100644
index 00000000..4b460f81
--- /dev/null
+++ b/2020/code-of-conduct/index.html
@@ -0,0 +1,44 @@
+---
+layout: 2020/default
+title: EmberFest
+---
+{% include 2020/main_header.html %}
+
+
+
+
Conference Code of Conduct
+
+ All attendees, speakers, sponsors and volunteers at our conference are required to agree with the following code of conduct. Organisers will enforce this code throughout the event. We expect cooperation from all participants to help ensure a safe environment for everybody.
+
+
Need Help?
+
+ You have our contact details in the emails we've sent.
+
+
The Quick Version
+
+ Our conference is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion (or lack thereof), or technology choices. We do not tolerate harassment of conference participants in any form. Sexual language and imagery is not appropriate for any conference venue, including talks, workshops, parties, Twitter and other online media. Conference participants violating these rules may be sanctioned or expelled from the conference without a refund at the discretion of the conference organisers.
+
+
The Less Quick Version
+
+ Harassment includes offensive verbal comments related to gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion, technology choices, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention.
+
+
+ Participants asked to stop any harassing behavior are expected to comply immediately.
+
+
+ Sponsors are also subject to the anti-harassment policy. In particular, sponsors should not use sexualised images, activities, or other material. Booth staff (including volunteers) should not use sexualised clothing/uniforms/costumes, or otherwise create a sexualised environment.
+
+
+ If a participant engages in harassing behavior, the conference organisers may take any action they deem appropriate, including warning the offender or expulsion from the conference with no refund.
+
+
+ If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact a member of conference staff immediately. Conference staff can be identified as they'll be wearing branded clothing and/or badges.
+
+
+ Conference staff will be happy to help participants contact hotel/venue security or local law enforcement, provide escorts, or otherwise assist those experiencing harassment to feel safe for the duration of the conference. We value your attendance.
+
+
+ We expect participants to follow these rules at conference and workshop venues and conference-related social events.
+
+
+
\ No newline at end of file
diff --git a/2020/images/background-mobile.svg b/2020/images/background-mobile.svg
new file mode 100644
index 00000000..b832010b
--- /dev/null
+++ b/2020/images/background-mobile.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2020/images/background-tablet.svg b/2020/images/background-tablet.svg
new file mode 100644
index 00000000..9091cf7d
--- /dev/null
+++ b/2020/images/background-tablet.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2020/images/chameleon-mobile.svg b/2020/images/chameleon-mobile.svg
new file mode 100644
index 00000000..d55422ff
--- /dev/null
+++ b/2020/images/chameleon-mobile.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2020/images/chameleon-tablet.svg b/2020/images/chameleon-tablet.svg
new file mode 100644
index 00000000..f536bbf3
--- /dev/null
+++ b/2020/images/chameleon-tablet.svg
@@ -0,0 +1,86 @@
+
+
\ No newline at end of file
diff --git a/2020/images/chameleon.svg b/2020/images/chameleon.svg
new file mode 100644
index 00000000..27bc4d18
--- /dev/null
+++ b/2020/images/chameleon.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2020/images/chris.png b/2020/images/chris.png
new file mode 100644
index 00000000..54eba087
Binary files /dev/null and b/2020/images/chris.png differ
diff --git a/2020/images/github.svg b/2020/images/github.svg
new file mode 100644
index 00000000..77ed8b72
--- /dev/null
+++ b/2020/images/github.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2020/images/glasses.svg b/2020/images/glasses.svg
new file mode 100644
index 00000000..445b62df
--- /dev/null
+++ b/2020/images/glasses.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2020/images/hero-background-1.svg b/2020/images/hero-background-1.svg
new file mode 100644
index 00000000..89392824
--- /dev/null
+++ b/2020/images/hero-background-1.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2020/images/mailing-list-background.svg b/2020/images/mailing-list-background.svg
new file mode 100644
index 00000000..d208fddf
--- /dev/null
+++ b/2020/images/mailing-list-background.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2020/images/ricardo.png b/2020/images/ricardo.png
new file mode 100644
index 00000000..aff6932d
Binary files /dev/null and b/2020/images/ricardo.png differ
diff --git a/2020/images/sponsors/TRIPTYK.png b/2020/images/sponsors/TRIPTYK.png
new file mode 100644
index 00000000..a836f44a
Binary files /dev/null and b/2020/images/sponsors/TRIPTYK.png differ
diff --git a/2020/images/sponsors/addepar.png b/2020/images/sponsors/addepar.png
new file mode 100644
index 00000000..0831a4a1
Binary files /dev/null and b/2020/images/sponsors/addepar.png differ
diff --git a/2020/images/sponsors/cardstack.png b/2020/images/sponsors/cardstack.png
new file mode 100644
index 00000000..ca531317
Binary files /dev/null and b/2020/images/sponsors/cardstack.png differ
diff --git a/2020/images/sponsors/clark.png b/2020/images/sponsors/clark.png
new file mode 100644
index 00000000..462af85f
Binary files /dev/null and b/2020/images/sponsors/clark.png differ
diff --git a/2020/images/sponsors/crowdstrike.png b/2020/images/sponsors/crowdstrike.png
new file mode 100644
index 00000000..39cb082d
Binary files /dev/null and b/2020/images/sponsors/crowdstrike.png differ
diff --git a/2020/images/sponsors/ember-checkup.png b/2020/images/sponsors/ember-checkup.png
new file mode 100644
index 00000000..bb092a78
Binary files /dev/null and b/2020/images/sponsors/ember-checkup.png differ
diff --git a/2020/images/sponsors/ember-map.png b/2020/images/sponsors/ember-map.png
new file mode 100644
index 00000000..99bea784
Binary files /dev/null and b/2020/images/sponsors/ember-map.png differ
diff --git a/2020/images/sponsors/harvest.png b/2020/images/sponsors/harvest.png
new file mode 100644
index 00000000..3691bf8d
Binary files /dev/null and b/2020/images/sponsors/harvest.png differ
diff --git a/2020/images/sponsors/honeypot.png b/2020/images/sponsors/honeypot.png
new file mode 100644
index 00000000..907017e0
Binary files /dev/null and b/2020/images/sponsors/honeypot.png differ
diff --git a/2020/images/sponsors/kloeckner-i.png b/2020/images/sponsors/kloeckner-i.png
new file mode 100644
index 00000000..daaa6536
Binary files /dev/null and b/2020/images/sponsors/kloeckner-i.png differ
diff --git a/2020/images/sponsors/linkedin.png b/2020/images/sponsors/linkedin.png
new file mode 100644
index 00000000..00ad0aac
Binary files /dev/null and b/2020/images/sponsors/linkedin.png differ
diff --git a/2020/images/sponsors/linkfire.png b/2020/images/sponsors/linkfire.png
new file mode 100644
index 00000000..8684f68a
Binary files /dev/null and b/2020/images/sponsors/linkfire.png differ
diff --git a/2020/images/sponsors/peopledoc.png b/2020/images/sponsors/peopledoc.png
new file mode 100644
index 00000000..fcb06599
Binary files /dev/null and b/2020/images/sponsors/peopledoc.png differ
diff --git a/2020/images/sponsors/phorest.png b/2020/images/sponsors/phorest.png
new file mode 100644
index 00000000..db47f33e
Binary files /dev/null and b/2020/images/sponsors/phorest.png differ
diff --git a/2020/images/sponsors/precnut.png b/2020/images/sponsors/precnut.png
new file mode 100644
index 00000000..890efc2e
Binary files /dev/null and b/2020/images/sponsors/precnut.png differ
diff --git a/2020/images/sponsors/prototypal.png b/2020/images/sponsors/prototypal.png
new file mode 100644
index 00000000..a15464e8
Binary files /dev/null and b/2020/images/sponsors/prototypal.png differ
diff --git a/2020/images/sponsors/redpencil.png b/2020/images/sponsors/redpencil.png
new file mode 100644
index 00000000..30ad9f26
Binary files /dev/null and b/2020/images/sponsors/redpencil.png differ
diff --git a/2020/images/sponsors/selleo.png b/2020/images/sponsors/selleo.png
new file mode 100644
index 00000000..994af832
Binary files /dev/null and b/2020/images/sponsors/selleo.png differ
diff --git a/2020/images/sponsors/simplabs.png b/2020/images/sponsors/simplabs.png
new file mode 100644
index 00000000..79b8c0ee
Binary files /dev/null and b/2020/images/sponsors/simplabs.png differ
diff --git a/2020/images/sponsors/sticker-mule.png b/2020/images/sponsors/sticker-mule.png
new file mode 100644
index 00000000..d180b86b
Binary files /dev/null and b/2020/images/sponsors/sticker-mule.png differ
diff --git a/2020/images/sponsors/tilde.png b/2020/images/sponsors/tilde.png
new file mode 100644
index 00000000..c4093936
Binary files /dev/null and b/2020/images/sponsors/tilde.png differ
diff --git a/2020/images/sponsors/wyeworks.png b/2020/images/sponsors/wyeworks.png
new file mode 100644
index 00000000..be080d51
Binary files /dev/null and b/2020/images/sponsors/wyeworks.png differ
diff --git a/2020/images/test.svg b/2020/images/test.svg
new file mode 100644
index 00000000..9091cf7d
--- /dev/null
+++ b/2020/images/test.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2020/images/twitter.svg b/2020/images/twitter.svg
new file mode 100644
index 00000000..f4e09512
--- /dev/null
+++ b/2020/images/twitter.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2020/images/video-2019-background-desktop.svg b/2020/images/video-2019-background-desktop.svg
new file mode 100644
index 00000000..3a6497d2
--- /dev/null
+++ b/2020/images/video-2019-background-desktop.svg
@@ -0,0 +1,1465 @@
+
+
\ No newline at end of file
diff --git a/2020/images/video-2019-background-tablet.svg b/2020/images/video-2019-background-tablet.svg
new file mode 100644
index 00000000..a78ec026
--- /dev/null
+++ b/2020/images/video-2019-background-tablet.svg
@@ -0,0 +1,1465 @@
+
+
\ No newline at end of file
diff --git a/2020/images/video-2019-background.svg b/2020/images/video-2019-background.svg
new file mode 100644
index 00000000..4ca09f72
--- /dev/null
+++ b/2020/images/video-2019-background.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2020/images/website-header.png b/2020/images/website-header.png
new file mode 100644
index 00000000..64af652b
Binary files /dev/null and b/2020/images/website-header.png differ
diff --git a/2020/images/workshop-image@1x.png b/2020/images/workshop-image@1x.png
new file mode 100644
index 00000000..bba561cb
Binary files /dev/null and b/2020/images/workshop-image@1x.png differ
diff --git a/2020/images/workshop-image@2x.jpg b/2020/images/workshop-image@2x.jpg
new file mode 100644
index 00000000..c89211f5
Binary files /dev/null and b/2020/images/workshop-image@2x.jpg differ
diff --git a/2020/imprint/index.html b/2020/imprint/index.html
new file mode 100644
index 00000000..98920ce9
--- /dev/null
+++ b/2020/imprint/index.html
@@ -0,0 +1,27 @@
+---
+layout: 2020/default
+title: EmberFest
+---
+{% include 2020/main_header.html %}
+
+
+
+
Imprint
+
+ Publisher information according to §6 Teledienstgesetz (TDG)
+ Responsible according to §6 MDStV:
+
+
+ EmberFest UG
+ +49 89 452 139 03
+ Marco Otte-Witte
+ Hans-Sachs-Str. 12
+ 80469 München
+ Germany
+
+
Exclusion of Liability
+
+ We check and update the information on this website regularly. Despite our best efforts, information on the site may not always be correct. Liability concerning timeliness, correctness and completeness of the available information can not be assumed. This applies also for all other websites which are referred via hyperlink. EmberFest UG is not responsible for the content of these third party websites.
+
+
+
\ No newline at end of file
diff --git a/2020/index.html b/2020/index.html
new file mode 100644
index 00000000..a3b77bfc
--- /dev/null
+++ b/2020/index.html
@@ -0,0 +1,155 @@
+---
+layout: 2020/default
+title: EmberFest
+---
+
+ EmberFest is the European Community Ember Conference. If you're looking for updates on the latest and greatest in Ember and Glimmer this is the place to be. EmberFest is also a great opportunity to get in touch with the European Ember Community (and friends from abroad) and hiring Ember talent.
+
\ No newline at end of file
diff --git a/2020/privacy/index.html b/2020/privacy/index.html
new file mode 100644
index 00000000..13ef3d67
--- /dev/null
+++ b/2020/privacy/index.html
@@ -0,0 +1,33 @@
+---
+layout: 2020/default
+title: Privacy
+---
+{% include 2020/main_header.html %}
+
+
+
+
Privacy
+
Emberfest uses Google Analytics to collect user statistics.
+
Google Analytics is a service that collects data about website visitors.
+
What Google Analytics records
+
+
The referrer that let a user to this website
+
The duration of the visit
+
Information about the client used to access the website
+
other information
+
+
How we use that data
+
+ The information recorded by Google Analytics allows us to better understand the audience of this website, what
+ content they’re accessing and how they get here. This allows us to make better decisions about design, writing
+ and marketing.
+
No personally identifying data is ever included in the reports that we run.
Google offers a
+ browser plugin
+ to opt out of the
+ Google Analytics tracking service.
+
+
\ No newline at end of file
diff --git a/2021/cancellation/index.html b/2021/cancellation/index.html
new file mode 100644
index 00000000..b046eb85
--- /dev/null
+++ b/2021/cancellation/index.html
@@ -0,0 +1,21 @@
+---
+layout: 2021/default
+title: EmberFest
+---
+{% include 2021/main_header.html %}
+
+
+
+
Cancellation Policy
+
Up to 30 days before the start of the conference
+
+ Up to 30 days before the start of the conference, you can get a full refund for your ticket. Send an email to mail@emberfest.eu and we will process your refund.
+
+
Within 30 days of the start of the conference
+
+ We are unable to offer refunds within 30 days of the conference, however your ticket can be reassigned at any time to a different attendee. To reassign your ticket, please follow the link on your original confirmation email.
+
+
“Force majeure” events
+
Should the conference be cancelled for any reason (including due to restrictions because of the Coronavirus pandemic), purchased tickets will be valid for the next year.
+
+
diff --git a/2021/code-of-conduct/index.html b/2021/code-of-conduct/index.html
new file mode 100644
index 00000000..314fec4b
--- /dev/null
+++ b/2021/code-of-conduct/index.html
@@ -0,0 +1,44 @@
+---
+layout: 2021/default
+title: EmberFest
+---
+{% include 2021/main_header.html %}
+
+
+
+
Conference Code of Conduct
+
+ All attendees, speakers, sponsors and volunteers at our conference are required to agree with the following code of conduct. Organisers will enforce this code throughout the event. We expect cooperation from all participants to help ensure a safe environment for everybody.
+
+
Need Help?
+
+ You have our contact details in the emails we've sent.
+
+
The Quick Version
+
+ Our conference is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion (or lack thereof), or technology choices. We do not tolerate harassment of conference participants in any form. Sexual language and imagery is not appropriate for any conference venue, including talks, workshops, parties, Twitter and other online media. Conference participants violating these rules may be sanctioned or expelled from the conference without a refund at the discretion of the conference organisers.
+
+
The Less Quick Version
+
+ Harassment includes offensive verbal comments related to gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion, technology choices, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention.
+
+
+ Participants asked to stop any harassing behavior are expected to comply immediately.
+
+
+ Sponsors are also subject to the anti-harassment policy. In particular, sponsors should not use sexualised images, activities, or other material. Booth staff (including volunteers) should not use sexualised clothing/uniforms/costumes, or otherwise create a sexualised environment.
+
+
+ If a participant engages in harassing behavior, the conference organisers may take any action they deem appropriate, including warning the offender or expulsion from the conference with no refund.
+
+
+ If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact a member of conference staff immediately. Conference staff can be identified as they'll be wearing branded clothing and/or badges.
+
+
+ Conference staff will be happy to help participants contact hotel/venue security or local law enforcement, provide escorts, or otherwise assist those experiencing harassment to feel safe for the duration of the conference. We value your attendance.
+
+
+ We expect participants to follow these rules at conference and workshop venues and conference-related social events.
+
+
+
\ No newline at end of file
diff --git a/2021/corona-safety/index.html b/2021/corona-safety/index.html
new file mode 100644
index 00000000..c576584a
--- /dev/null
+++ b/2021/corona-safety/index.html
@@ -0,0 +1,32 @@
+---
+layout: 2021/default
+title: Coronavirus & Safety
+---
+{% include 2021/main_header.html %}
+
+
+
+
The Coronavirus & people’s safety at the conference
+
+ Obviously this year’s event is going to be special with the pandemic still not being over. In order to comply with italian laws as well as to ensure every on-site attendee’s safety, there are some rules and safety measures to be aware of:
+
+
+
Attendees will need to be either fully vaccinated, recovered, or tested (PCR test, no older than 72h or Antigen test, no older than 48h) and be able to prove that via the EU’s Digital COVID Certificate. We will take photos of all attendees’ certificate barcodes when entering the venue on both days.
+
Seating will be set up in compliance with current social distancing regulations.
+
Attendees will need to wear masks while moving around indoors, but are not required to do so while seated or outdoors on the premises.
+
+
+ The venue does have a large outdoor area as well in which we all will be able to gather during the breaks, before and after the talks.
+
+
Further information
+
+ In order to find out what rules apply when entering Italy from your country of origin, use the wizard on this website.
+
+
+ Before entering Italy, you will need to register on this website.
+
+
+ Locations of COVID testing centers in Rome can be found on this website.
+
+
+
diff --git a/2021/images/2021 _ motif _ decorative element_desktop.svg b/2021/images/2021 _ motif _ decorative element_desktop.svg
new file mode 100644
index 00000000..0fa88eb0
--- /dev/null
+++ b/2021/images/2021 _ motif _ decorative element_desktop.svg
@@ -0,0 +1,41 @@
+
+
\ No newline at end of file
diff --git a/2021/images/2021 _ motif _ laurel left.svg b/2021/images/2021 _ motif _ laurel left.svg
new file mode 100644
index 00000000..f2d9e9cf
--- /dev/null
+++ b/2021/images/2021 _ motif _ laurel left.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/2021/images/2021 _ motif _ laurel right.svg b/2021/images/2021 _ motif _ laurel right.svg
new file mode 100644
index 00000000..aabe41ab
--- /dev/null
+++ b/2021/images/2021 _ motif _ laurel right.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/2021/images/2021_Geometric_Background.svg b/2021/images/2021_Geometric_Background.svg
new file mode 100644
index 00000000..b4671735
--- /dev/null
+++ b/2021/images/2021_Geometric_Background.svg
@@ -0,0 +1,734 @@
+
+
\ No newline at end of file
diff --git a/2021/images/Palazzo_Brancaccio.jpg b/2021/images/Palazzo_Brancaccio.jpg
new file mode 100644
index 00000000..9e54a4bf
Binary files /dev/null and b/2021/images/Palazzo_Brancaccio.jpg differ
diff --git a/2021/images/arrow-right.svg b/2021/images/arrow-right.svg
new file mode 100644
index 00000000..6c3777f4
--- /dev/null
+++ b/2021/images/arrow-right.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/2021/images/baja-roma.jpg b/2021/images/baja-roma.jpg
new file mode 100644
index 00000000..dc92c161
Binary files /dev/null and b/2021/images/baja-roma.jpg differ
diff --git a/2021/images/chris.png b/2021/images/chris.png
new file mode 100644
index 00000000..54eba087
Binary files /dev/null and b/2021/images/chris.png differ
diff --git a/2021/images/decorative-element-motif.svg b/2021/images/decorative-element-motif.svg
new file mode 100644
index 00000000..0fa88eb0
--- /dev/null
+++ b/2021/images/decorative-element-motif.svg
@@ -0,0 +1,41 @@
+
+
\ No newline at end of file
diff --git a/2021/images/decorative-element.svg b/2021/images/decorative-element.svg
new file mode 100644
index 00000000..b38ef08b
--- /dev/null
+++ b/2021/images/decorative-element.svg
@@ -0,0 +1,43 @@
+
+
\ No newline at end of file
diff --git a/2021/images/edward-faulkner.jpeg b/2021/images/edward-faulkner.jpeg
new file mode 100644
index 00000000..686aa4f9
Binary files /dev/null and b/2021/images/edward-faulkner.jpeg differ
diff --git a/2021/images/glasses.svg b/2021/images/glasses.svg
new file mode 100644
index 00000000..445b62df
--- /dev/null
+++ b/2021/images/glasses.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2021/images/hero - place announced.png b/2021/images/hero - place announced.png
new file mode 100644
index 00000000..a0d710b9
Binary files /dev/null and b/2021/images/hero - place announced.png differ
diff --git a/2021/images/hero-background-desktop.svg b/2021/images/hero-background-desktop.svg
new file mode 100644
index 00000000..c8811d80
--- /dev/null
+++ b/2021/images/hero-background-desktop.svg
@@ -0,0 +1,743 @@
+
+
\ No newline at end of file
diff --git a/2021/images/hero-background-mobile.svg b/2021/images/hero-background-mobile.svg
new file mode 100644
index 00000000..b4671735
--- /dev/null
+++ b/2021/images/hero-background-mobile.svg
@@ -0,0 +1,734 @@
+
+
\ No newline at end of file
diff --git a/2021/images/hero-background.svg b/2021/images/hero-background.svg
new file mode 100644
index 00000000..c8811d80
--- /dev/null
+++ b/2021/images/hero-background.svg
@@ -0,0 +1,743 @@
+
+
\ No newline at end of file
diff --git a/2021/images/hero_mobile - place announced.png b/2021/images/hero_mobile - place announced.png
new file mode 100644
index 00000000..559ed34c
Binary files /dev/null and b/2021/images/hero_mobile - place announced.png differ
diff --git a/2021/images/laurel-left.svg b/2021/images/laurel-left.svg
new file mode 100644
index 00000000..0d5ca0e5
--- /dev/null
+++ b/2021/images/laurel-left.svg
@@ -0,0 +1,13 @@
+
+
\ No newline at end of file
diff --git a/2021/images/laurel-right.svg b/2021/images/laurel-right.svg
new file mode 100644
index 00000000..8fb9e728
--- /dev/null
+++ b/2021/images/laurel-right.svg
@@ -0,0 +1,13 @@
+
+
\ No newline at end of file
diff --git a/2021/images/link.svg b/2021/images/link.svg
new file mode 100644
index 00000000..87977f51
--- /dev/null
+++ b/2021/images/link.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/2021/images/location_buildings.svg b/2021/images/location_buildings.svg
new file mode 100644
index 00000000..e619c5f1
--- /dev/null
+++ b/2021/images/location_buildings.svg
@@ -0,0 +1,100 @@
+
+
diff --git a/2021/images/mailing.svg b/2021/images/mailing.svg
new file mode 100644
index 00000000..98ac90bc
--- /dev/null
+++ b/2021/images/mailing.svg
@@ -0,0 +1,26 @@
+
+
\ No newline at end of file
diff --git a/2021/images/newsletter-background-desktop.svg b/2021/images/newsletter-background-desktop.svg
new file mode 100644
index 00000000..7856a55d
--- /dev/null
+++ b/2021/images/newsletter-background-desktop.svg
@@ -0,0 +1,745 @@
+
+
\ No newline at end of file
diff --git a/2021/images/newsletter_background.svg b/2021/images/newsletter_background.svg
new file mode 100644
index 00000000..7856a55d
--- /dev/null
+++ b/2021/images/newsletter_background.svg
@@ -0,0 +1,745 @@
+
+
\ No newline at end of file
diff --git a/2021/images/ricardo.png b/2021/images/ricardo.png
new file mode 100644
index 00000000..aff6932d
Binary files /dev/null and b/2021/images/ricardo.png differ
diff --git a/2021/images/rome.svg b/2021/images/rome.svg
new file mode 100644
index 00000000..2497f4a2
--- /dev/null
+++ b/2021/images/rome.svg
@@ -0,0 +1,115 @@
+
+
\ No newline at end of file
diff --git a/2021/images/speakers/bartlomiej-dudzik.jpg b/2021/images/speakers/bartlomiej-dudzik.jpg
new file mode 100644
index 00000000..3013d135
Binary files /dev/null and b/2021/images/speakers/bartlomiej-dudzik.jpg differ
diff --git a/2021/images/speakers/chris-manson.jpg b/2021/images/speakers/chris-manson.jpg
new file mode 100644
index 00000000..fc4be961
Binary files /dev/null and b/2021/images/speakers/chris-manson.jpg differ
diff --git a/2021/images/speakers/clemens-mueller.jpg b/2021/images/speakers/clemens-mueller.jpg
new file mode 100644
index 00000000..49944ddf
Binary files /dev/null and b/2021/images/speakers/clemens-mueller.jpg differ
diff --git a/2021/images/speakers/djamel-bendaoud.jpg b/2021/images/speakers/djamel-bendaoud.jpg
new file mode 100644
index 00000000..c997925b
Binary files /dev/null and b/2021/images/speakers/djamel-bendaoud.jpg differ
diff --git a/2021/images/speakers/edward-faulkner.jpeg b/2021/images/speakers/edward-faulkner.jpeg
new file mode 100644
index 00000000..686aa4f9
Binary files /dev/null and b/2021/images/speakers/edward-faulkner.jpeg differ
diff --git a/2021/images/speakers/goncalo-morais.jpg b/2021/images/speakers/goncalo-morais.jpg
new file mode 100644
index 00000000..c418a5e3
Binary files /dev/null and b/2021/images/speakers/goncalo-morais.jpg differ
diff --git a/2021/images/speakers/jai-bhagat.jpg b/2021/images/speakers/jai-bhagat.jpg
new file mode 100644
index 00000000..3518ce27
Binary files /dev/null and b/2021/images/speakers/jai-bhagat.jpg differ
diff --git a/2021/images/speakers/jenny-judova.jpg b/2021/images/speakers/jenny-judova.jpg
new file mode 100644
index 00000000..ed54601a
Binary files /dev/null and b/2021/images/speakers/jenny-judova.jpg differ
diff --git a/2021/images/speakers/joao-da-silva-marly.jpg b/2021/images/speakers/joao-da-silva-marly.jpg
new file mode 100644
index 00000000..ce3c9803
Binary files /dev/null and b/2021/images/speakers/joao-da-silva-marly.jpg differ
diff --git a/2021/images/speakers/l-preston-sego-iii.png b/2021/images/speakers/l-preston-sego-iii.png
new file mode 100644
index 00000000..5b4acc9b
Binary files /dev/null and b/2021/images/speakers/l-preston-sego-iii.png differ
diff --git a/2021/images/speakers/melanie-sumner.jpg b/2021/images/speakers/melanie-sumner.jpg
new file mode 100644
index 00000000..af5092cc
Binary files /dev/null and b/2021/images/speakers/melanie-sumner.jpg differ
diff --git a/2021/images/speakers/michael-klein.jpg b/2021/images/speakers/michael-klein.jpg
new file mode 100644
index 00000000..bc94fb0c
Binary files /dev/null and b/2021/images/speakers/michael-klein.jpg differ
diff --git a/2021/images/speakers/nick-schot.jpg b/2021/images/speakers/nick-schot.jpg
new file mode 100644
index 00000000..a6ddc145
Binary files /dev/null and b/2021/images/speakers/nick-schot.jpg differ
diff --git a/2021/images/speakers/shodipo-ayomide.jpg b/2021/images/speakers/shodipo-ayomide.jpg
new file mode 100644
index 00000000..2c980aa9
Binary files /dev/null and b/2021/images/speakers/shodipo-ayomide.jpg differ
diff --git a/2021/images/speakers/zoe-bijl.jpg b/2021/images/speakers/zoe-bijl.jpg
new file mode 100644
index 00000000..accc2f16
Binary files /dev/null and b/2021/images/speakers/zoe-bijl.jpg differ
diff --git a/2021/images/sponsors.jpg b/2021/images/sponsors.jpg
new file mode 100644
index 00000000..ac9bdd06
Binary files /dev/null and b/2021/images/sponsors.jpg differ
diff --git a/2021/images/sponsors.svg b/2021/images/sponsors.svg
new file mode 100644
index 00000000..462ca82b
--- /dev/null
+++ b/2021/images/sponsors.svg
@@ -0,0 +1,262 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/Crowdstrike.svg b/2021/images/sponsors/Crowdstrike.svg
new file mode 100644
index 00000000..78726679
--- /dev/null
+++ b/2021/images/sponsors/Crowdstrike.svg
@@ -0,0 +1,10 @@
+
+
+
diff --git a/2021/images/sponsors/EmberCheckup.svg b/2021/images/sponsors/EmberCheckup.svg
new file mode 100644
index 00000000..4eaa778d
--- /dev/null
+++ b/2021/images/sponsors/EmberCheckup.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/EmberMap.svg b/2021/images/sponsors/EmberMap.svg
new file mode 100644
index 00000000..23e0766a
--- /dev/null
+++ b/2021/images/sponsors/EmberMap.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/Harvest.svg b/2021/images/sponsors/Harvest.svg
new file mode 100644
index 00000000..693811a1
--- /dev/null
+++ b/2021/images/sponsors/Harvest.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/Honeypot.svg b/2021/images/sponsors/Honeypot.svg
new file mode 100644
index 00000000..cafde5d9
--- /dev/null
+++ b/2021/images/sponsors/Honeypot.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/Kloeckner-i.svg b/2021/images/sponsors/Kloeckner-i.svg
new file mode 100644
index 00000000..39deb6cb
--- /dev/null
+++ b/2021/images/sponsors/Kloeckner-i.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/LinkedIn.svg b/2021/images/sponsors/LinkedIn.svg
new file mode 100644
index 00000000..089749fb
--- /dev/null
+++ b/2021/images/sponsors/LinkedIn.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/Linkfire.svg b/2021/images/sponsors/Linkfire.svg
new file mode 100644
index 00000000..e1963500
--- /dev/null
+++ b/2021/images/sponsors/Linkfire.svg
@@ -0,0 +1,21 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/Phorest.svg b/2021/images/sponsors/Phorest.svg
new file mode 100644
index 00000000..af41485f
--- /dev/null
+++ b/2021/images/sponsors/Phorest.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2021/images/sponsors/PrecisionNutrition.svg b/2021/images/sponsors/PrecisionNutrition.svg
new file mode 100644
index 00000000..9534b694
--- /dev/null
+++ b/2021/images/sponsors/PrecisionNutrition.svg
@@ -0,0 +1,71 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/Selleo.svg b/2021/images/sponsors/Selleo.svg
new file mode 100644
index 00000000..54f357af
--- /dev/null
+++ b/2021/images/sponsors/Selleo.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/Simplabs.svg b/2021/images/sponsors/Simplabs.svg
new file mode 100644
index 00000000..022e84f1
--- /dev/null
+++ b/2021/images/sponsors/Simplabs.svg
@@ -0,0 +1,8 @@
+
+
+
diff --git a/2021/images/sponsors/TRIPTYK.png b/2021/images/sponsors/TRIPTYK.png
new file mode 100644
index 00000000..a836f44a
Binary files /dev/null and b/2021/images/sponsors/TRIPTYK.png differ
diff --git a/2021/images/sponsors/Triptyk.svg b/2021/images/sponsors/Triptyk.svg
new file mode 100644
index 00000000..f9b7e7b4
--- /dev/null
+++ b/2021/images/sponsors/Triptyk.svg
@@ -0,0 +1,22 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/Wyeworks.svg b/2021/images/sponsors/Wyeworks.svg
new file mode 100644
index 00000000..3bc6ed43
--- /dev/null
+++ b/2021/images/sponsors/Wyeworks.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/addepar.png b/2021/images/sponsors/addepar.png
new file mode 100644
index 00000000..0831a4a1
Binary files /dev/null and b/2021/images/sponsors/addepar.png differ
diff --git a/2021/images/sponsors/addepar.svg b/2021/images/sponsors/addepar.svg
new file mode 100644
index 00000000..c070280e
--- /dev/null
+++ b/2021/images/sponsors/addepar.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/cardstack.png b/2021/images/sponsors/cardstack.png
new file mode 100644
index 00000000..ca531317
Binary files /dev/null and b/2021/images/sponsors/cardstack.png differ
diff --git a/2021/images/sponsors/cardstack.svg b/2021/images/sponsors/cardstack.svg
new file mode 100644
index 00000000..6607939a
--- /dev/null
+++ b/2021/images/sponsors/cardstack.svg
@@ -0,0 +1,36 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/clark.png b/2021/images/sponsors/clark.png
new file mode 100644
index 00000000..462af85f
Binary files /dev/null and b/2021/images/sponsors/clark.png differ
diff --git a/2021/images/sponsors/clark.svg b/2021/images/sponsors/clark.svg
new file mode 100644
index 00000000..6704fdcb
--- /dev/null
+++ b/2021/images/sponsors/clark.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2021/images/sponsors/ember-checkup.png b/2021/images/sponsors/ember-checkup.png
new file mode 100644
index 00000000..bb092a78
Binary files /dev/null and b/2021/images/sponsors/ember-checkup.png differ
diff --git a/2021/images/sponsors/ember-map.png b/2021/images/sponsors/ember-map.png
new file mode 100644
index 00000000..99bea784
Binary files /dev/null and b/2021/images/sponsors/ember-map.png differ
diff --git a/2021/images/sponsors/harvest.png b/2021/images/sponsors/harvest.png
new file mode 100644
index 00000000..78124c39
Binary files /dev/null and b/2021/images/sponsors/harvest.png differ
diff --git a/2021/images/sponsors/hashicorp.svg b/2021/images/sponsors/hashicorp.svg
new file mode 100644
index 00000000..2e661b10
--- /dev/null
+++ b/2021/images/sponsors/hashicorp.svg
@@ -0,0 +1,66 @@
+
+
+
diff --git a/2021/images/sponsors/honeypot.png b/2021/images/sponsors/honeypot.png
new file mode 100644
index 00000000..907017e0
Binary files /dev/null and b/2021/images/sponsors/honeypot.png differ
diff --git a/2021/images/sponsors/intercom.svg b/2021/images/sponsors/intercom.svg
new file mode 100644
index 00000000..b1982724
--- /dev/null
+++ b/2021/images/sponsors/intercom.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2021/images/sponsors/kloeckner-i.png b/2021/images/sponsors/kloeckner-i.png
new file mode 100644
index 00000000..daaa6536
Binary files /dev/null and b/2021/images/sponsors/kloeckner-i.png differ
diff --git a/2021/images/sponsors/linkedin.png b/2021/images/sponsors/linkedin.png
new file mode 100644
index 00000000..00ad0aac
Binary files /dev/null and b/2021/images/sponsors/linkedin.png differ
diff --git a/2021/images/sponsors/linkfire.png b/2021/images/sponsors/linkfire.png
new file mode 100644
index 00000000..8684f68a
Binary files /dev/null and b/2021/images/sponsors/linkfire.png differ
diff --git a/2021/images/sponsors/peopledoc.png b/2021/images/sponsors/peopledoc.png
new file mode 100644
index 00000000..fcb06599
Binary files /dev/null and b/2021/images/sponsors/peopledoc.png differ
diff --git a/2021/images/sponsors/peopledoc.svg b/2021/images/sponsors/peopledoc.svg
new file mode 100644
index 00000000..535f349a
--- /dev/null
+++ b/2021/images/sponsors/peopledoc.svg
@@ -0,0 +1,39 @@
+
diff --git a/2021/images/sponsors/phorest.png b/2021/images/sponsors/phorest.png
new file mode 100644
index 00000000..db47f33e
Binary files /dev/null and b/2021/images/sponsors/phorest.png differ
diff --git a/2021/images/sponsors/precnut.png b/2021/images/sponsors/precnut.png
new file mode 100644
index 00000000..890efc2e
Binary files /dev/null and b/2021/images/sponsors/precnut.png differ
diff --git a/2021/images/sponsors/prototypal.png b/2021/images/sponsors/prototypal.png
new file mode 100644
index 00000000..a15464e8
Binary files /dev/null and b/2021/images/sponsors/prototypal.png differ
diff --git a/2021/images/sponsors/prototypal.svg b/2021/images/sponsors/prototypal.svg
new file mode 100644
index 00000000..becb444f
--- /dev/null
+++ b/2021/images/sponsors/prototypal.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/qonto.svg b/2021/images/sponsors/qonto.svg
new file mode 100644
index 00000000..b7cfe9ce
--- /dev/null
+++ b/2021/images/sponsors/qonto.svg
@@ -0,0 +1,10 @@
+
diff --git a/2021/images/sponsors/redpencil.png b/2021/images/sponsors/redpencil.png
new file mode 100644
index 00000000..30ad9f26
Binary files /dev/null and b/2021/images/sponsors/redpencil.png differ
diff --git a/2021/images/sponsors/redpencil.svg b/2021/images/sponsors/redpencil.svg
new file mode 100644
index 00000000..d124a215
--- /dev/null
+++ b/2021/images/sponsors/redpencil.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2021/images/sponsors/redpencil_io.svg b/2021/images/sponsors/redpencil_io.svg
new file mode 100644
index 00000000..4e7738ff
--- /dev/null
+++ b/2021/images/sponsors/redpencil_io.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/selleo.png b/2021/images/sponsors/selleo.png
new file mode 100644
index 00000000..994af832
Binary files /dev/null and b/2021/images/sponsors/selleo.png differ
diff --git a/2021/images/sponsors/shipshape.svg b/2021/images/sponsors/shipshape.svg
new file mode 100644
index 00000000..8ab2968e
--- /dev/null
+++ b/2021/images/sponsors/shipshape.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2021/images/sponsors/sticker-mule.png b/2021/images/sponsors/sticker-mule.png
new file mode 100644
index 00000000..d180b86b
Binary files /dev/null and b/2021/images/sponsors/sticker-mule.png differ
diff --git a/2021/images/sponsors/sticker-mule.svg b/2021/images/sponsors/sticker-mule.svg
new file mode 100644
index 00000000..b7dd95ae
--- /dev/null
+++ b/2021/images/sponsors/sticker-mule.svg
@@ -0,0 +1,62 @@
+
+
+
diff --git a/2021/images/sponsors/stickermule.svg b/2021/images/sponsors/stickermule.svg
new file mode 100644
index 00000000..b7dd95ae
--- /dev/null
+++ b/2021/images/sponsors/stickermule.svg
@@ -0,0 +1,62 @@
+
+
+
diff --git a/2021/images/sponsors/tilde.png b/2021/images/sponsors/tilde.png
new file mode 100644
index 00000000..c4093936
Binary files /dev/null and b/2021/images/sponsors/tilde.png differ
diff --git a/2021/images/sponsors/tilde.svg b/2021/images/sponsors/tilde.svg
new file mode 100644
index 00000000..dcceff0a
--- /dev/null
+++ b/2021/images/sponsors/tilde.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/2021/images/sponsors/wyeworks.png b/2021/images/sponsors/wyeworks.png
new file mode 100644
index 00000000..be080d51
Binary files /dev/null and b/2021/images/sponsors/wyeworks.png differ
diff --git a/2021/images/sponsors/zapnito.svg b/2021/images/sponsors/zapnito.svg
new file mode 100644
index 00000000..27803406
--- /dev/null
+++ b/2021/images/sponsors/zapnito.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2021/images/twitter.svg b/2021/images/twitter.svg
new file mode 100644
index 00000000..3330781c
--- /dev/null
+++ b/2021/images/twitter.svg
@@ -0,0 +1,26 @@
+
+
\ No newline at end of file
diff --git a/2021/images/twitterSmall.svg b/2021/images/twitterSmall.svg
new file mode 100644
index 00000000..ad9c39cc
--- /dev/null
+++ b/2021/images/twitterSmall.svg
@@ -0,0 +1,22 @@
+
+
\ No newline at end of file
diff --git a/2021/images/yt.png b/2021/images/yt.png
new file mode 100644
index 00000000..37d599ef
Binary files /dev/null and b/2021/images/yt.png differ
diff --git a/2021/imprint/index.html b/2021/imprint/index.html
new file mode 100644
index 00000000..838a2b5b
--- /dev/null
+++ b/2021/imprint/index.html
@@ -0,0 +1,27 @@
+---
+layout: 2021/default
+title: EmberFest
+---
+{% include 2021/main_header.html %}
+
+
+
+
Imprint
+
+ Publisher information according to §6 Teledienstgesetz (TDG)
+ Responsible according to §6 MDStV:
+
+
+ EmberFest UG
+ +49 89 452 139 03
+ Marco Otte-Witte
+ Hans-Sachs-Str. 12
+ 80469 München
+ Germany
+
+
Exclusion of Liability
+
+ We check and update the information on this website regularly. Despite our best efforts, information on the site may not always be correct. Liability concerning timeliness, correctness and completeness of the available information can not be assumed. This applies also for all other websites which are referred via hyperlink. EmberFest UG is not responsible for the content of these third party websites.
+
+
+
\ No newline at end of file
diff --git a/2021/index.html b/2021/index.html
new file mode 100644
index 00000000..ea581710
--- /dev/null
+++ b/2021/index.html
@@ -0,0 +1,277 @@
+---
+layout: 2021/default
+title: EmberFest
+---
+{% include 2021/main_header.html %}
+
+
+
+
+
+
+
+
+
About EmberFest
+
+
+
+
EmberFest is the European Community Ember Conference. If you’re looking for updates on the latest and greatest in Ember and Glimmer this is the place to be. EmberFest is also a great opportunity to get in touch with the European Ember Community (and friends from abroad) and hiring Ember talent.
This year’s EmberFest will take place in the beautiful Palazzo Brancaccio right in the heart of Rome. Talks will be held in the spacious Gala Hall and all breaks are hosted outside in the main garden and adjacent lodge.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Closing Dinner
+
This year’s Closing Dinner will be held at Baja Roma Friday night. After it has become an EmberFest tradition in the past years, we’re doing it on a boat again! The location is semi-outdoors with opening walls to ensure good airflow—all other COVID-related safety measures apply as well.
diff --git a/2021/privacy/index.html b/2021/privacy/index.html
new file mode 100644
index 00000000..600e993f
--- /dev/null
+++ b/2021/privacy/index.html
@@ -0,0 +1,30 @@
+---
+layout: 2021/default
+title: Privacy
+---
+{% include 2021/main_header.html %}
+
+
+
+
Privacy
+
Emberfest uses Google Analytics to collect user statistics.
+
Google Analytics is a service that collects data about website visitors.
+
What Google Analytics records
+
+
The referrer that let a user to this website
+
The duration of the visit
+
Information about the client used to access the website
+
other information
+
+
How we use that data
+
+ The information recorded by Google Analytics allows us to better understand the audience of this website, what
+ content they’re accessing and how they get here. This allows us to make better decisions about design, writing
+ and marketing.
+
No personally identifying data is ever included in the reports that we run.
+ For years ember community has been leaning on one of the two validation libraries ember-cp-validations and ember-changeset they were playing out extremely well in pre-octane because they made it easy to validate data and hook them up to the ember’s reactivity system all that was left for us developers was to simply define the validations and call them in templates. But with tracked system it’s easier than ever to integrate a validation library of your choice without the need to rely on just these options
+
+
Bartlomiej Dudzik
+
+
+ Coder, interested in almost everything that there is about our field - frontend through backend to DevOps. Most of the time I code in Ember.js and Phoenix but also IAAC with Terraform, actually like testing stuff too, though sometimes it's a love-hate relationship. Currently happily trying to improve Ember Simple Auth while giving something back to the community.
+
+ Thanks to the release of Ember Octane we have truly cemented ourselves as the only HTML-First framework out there. While this is great news for people writing Ember apps and for people learning Ember that might already be skilled in HTML and CSS., this talk explores some of the wider possibilities of being a HTML-first framework. I explore the possibility of building a design system with Ember that can be consumed by an app that doesn't even use JS. HTML and CSS are the common languages of the web and I will try to demonstrate how to make that a reality in the world of modern web development
+
+
Chris Manson
+
+
+ Developer at @simplabs, creator of Empress and member of the Ember Core Learning Team
+
+ Frontend development can feel hard at times even if you are using the most comprehensive framework. Although we had a lot of experience developing applications with Ember.js we sometimes struggled with application architecture. Based on the academic literature we embraced explicit modeling of the reactive systems we are building and feel we found a revolutionary way of thinking about your applications that makes it much simpler to develop and maintain them. We want to share our new mental model with you and show by example how it can improve the way you are thinking about your applications today.
+
+
Clemens Müller and Michael Klein
+
+
+
+ Michael and Clemens have been working with Ember.js since 2012. They have worked on Ember.js applications big and small and together run EffectiveEmber - a consultancy specialized in helping you deliver ambitious applications with Ember.js and to level up your team in the process.
+
+ In the Ember world, we have many ways to document our UI / design system. None of them reached a consensus, and yet a new player came in town! 😁 But what if we could use a tool, that would be common to all JavaScript frameworks, and with a huge community that is driving the development? This is where I introduce you to Storybook! Storybook is an elegant way to document your UI components. You will learn how to build document isolation with a sandbox, stream line your UI developement, and mock use cases that are tricky to reproduce in an app.
+
+
Djamel Bendaoud
+
+
+ Hello! I'm a French front-end developer working at Qonto. I love seing design coming to life through our efforts into front-end development. Computer lover ever since I was little, it's a real pleasure to have been able to turn this passion into my job!
+
+ Testing is usually the Achilles Heel of most teams, where knowledge is lacking and practice doesn’t necessarily translate in good standard guidelines. Throw mock into the mix, and the picture gets ever fuzzier. What to mock? What not to mock? Wait, what’s the difference between a mock and a stub??
+ This talk will give the audience a practical mental framework of when to use each class of fake objects and methods we have at our disposal, with the specific flavour of Sinon.js.
+
+
Gonçalo Morais
+
+
+ Gonçalo is a Portuguese computer engineer turned front-end developer, currently living in London. Recurse Center alumnus, digital nomad wannabe, jack of all trades because there are too many interesting things. Relatively new to Ember, he’s happy to have joined such a friendly community! He grows a beard most of the time.
+
+ In this panel, we’ll be talking about working with large scale Ember applications. Engineers from five well-known companies using Ember will share their experiences and challenges they run into. We’ll be discussing strategies to apply when working with large scale Ember apps as well as how Ember supports those use cases (and where it might fall short)
+
+ We hear a lot more about accessibility nowadays. But do companies also care more? Let’s find out by comparing two version of Space Jam’s icon website. The original one from 1996 has been lauded for its accessibility and ease of use. Can the 2021 website hold up? Learn about the basics of accessibility and how they impact people.
+
+
Zoë Bijl
+
+
+ Editor of W3C ARIA Authoring Practices. Accessibility Person at CrowdStrike. Pronouns: they/them.
+
+
Jenny Judova
+
+
+ UX Engineer at Crowdstrike, with an interest for accessibility and the carbon footprint of the web. Can talk for hours about late 90's and early naughties web design. Pronouns: she/her/they/them
+
A full slot dedicated to ask an Ember Core Team member everything you want to know about the framework, ember-animated/liquid-fire, and his most recent work on Embroider.
+
Ed Faulkner
+
+
+ Edward Faulkner is a member of the Ember Core Team and the creator of Ember’s official animation library. His open source code is running on mainstream gaming consoles, major social media sites, and hordes of enterprise applications. His consultancy, Polynomial LLC, leads ambitious software projects for a diverse group of businesses and nonprofits. He was a research associate of the MIT Media Lab’s Social Computing group, and was a lead engineer at Akamai Technologies, where he built critical, internet-scale security infrastructure. He earned an MEng and BS in Electrical Engineering and Computer Science at MIT.
+
+
+ Ed resides in Somerville, Massachusetts with his wife and two sons.
+
Melanie is a decorated, disabled military veteran who decided to turn her hobby (writing code) into her second career after her enlistment ended. She now works as a Senior Engineer in Design Systems at HashiCorp.
+ She is an active member of the Ember.js core team, a member of the WAI-ARIA working group, and a judge for the CSS Design Awards. She is also a member of the Open Source Foundation and the Long Now Foundation.
+ What form does your styleguide take? Is it a plain document detailing best practices? Is it a preset of lint rules?
+
+
+ Thanks to a problem-solving approach and powerful Ember addons, you will learn how to go further with your styleguide, step-by-step.
+
+
+ How to leverage custom lint rules? How to estimate and organise the update of your codebase? How to perform it incrementally?
+
+
+ As an answer, the "styleguide-flow" concept illustrate the coexistence of 4 styleguide types and the cycle iterations between them. It results as a scalable and evolutive modern styleguide.
+
+
Joao Da Silva Marly
+
+
+ Hello world! I'm smiley, sporty and always eager to learn new paradigms about software development. I take pleasure in the teamwork and mastery we demonstrate when building a product focused on the users' needs. I am currently working at Qonto as a frontend engineer.
+
+ Mira is a robot created by Pixar artist Alonso Martinez. While Mira seems simple, a surprising amount of emotion and interaction is displayed. We'll be bringing Mira to the web and along the way learn about the various animation techniques on the web while Mira sets out to explore Rome.
+
+
Nick Schot
+
+
+ Long time Ember.js developer from The Netherlands. Working at simplabs. Always interested in anything involving a lot of tinkering including but not limited to: animations, model railways, micro controllers & coffee.
+
+ Design patterns are like blueprints for making software. When you're coming into a new codebase you're an inspector and your goal is to understand the architect's intent. In this talk, we'll walk through the design patterns that make up Ember. By the end, you should be able to understand the intent of Ember's architects and give you a common language to communicate with non-Ember and new-to-Ember developers.
+
+
Jai Bhagat
+
+
+ Jai is a Frontend Engineer @ HashiCorp working on Nomad (a simple and flexible workload orchestrator). He has spoken at meetups like NYC TypeScript, QueensJS and BrooklynJS (2 boroughs away from speaking in all of NYC!) and he hosts biweekly classes for coding bootcamp grads to break into the industry that has served 300+ junior engineers. Outside of work, Jai is an aspiring amateur boxer and writer.
+
+ Ever wanted to make a playground for your design system? Or maybe an interactive way to document your components for whichever library?
+ With just a couple of "easy" steps, you can have some in-browser-editing fun, too!
+
+
+ This talk will go in to how to make a REPL/Playground, as well as things to consider when the playground content is not vaild.
+
+
L. Preston Sego III
+
+
+ Preston is an open source advocate and Ember enthusiast who likes to hang out in the ember discord, occasionally work on documentation, fix ember bugs, and submit RFCs. He also loves StarCraft, Swing Dancing, and Quadcopter / Drone flying. (I also don't like writing bios about myself........ :) )
+
+ To end the conference, we’ll be holding a panel to discuss the future of Ember. We’ll be talking about the most important current initiatives that will shape Ember’s future as well as a longer term outlook. We’ll discuss where web development is going in general and where Ember fits into that.
+
+ Up to 30 days before the start of the conference, you can get a full
+ refund for your ticket. Send an email to mail@emberfest.eu and we will
+ process your refund.
+
+
Within 30 days of the start of the conference
+
+ We are unable to offer refunds within 30 days of the conference, however
+ your ticket can be reassigned at any time to a different attendee. To
+ reassign your ticket, please follow the link on your original
+ confirmation email.
+
+
“Force majeure” events
+
+ Should the conference be cancelled for any reason (including due to
+ restrictions because of the Coronavirus pandemic), purchased tickets
+ will be valid for the next year.
+
+ All attendees, speakers, sponsors and volunteers at our conference are
+ required to agree with the following code of conduct. Organisers will
+ enforce this code throughout the event. We expect cooperation from all
+ participants to help ensure a safe environment for everybody.
+
+
Need Help?
+
You have our contact details in the emails we've sent.
+
The Quick Version
+
+ Our conference is dedicated to providing a harassment-free conference
+ experience for everyone, regardless of gender, gender identity and
+ expression, age, sexual orientation, disability, physical appearance,
+ body size, race, ethnicity, religion (or lack thereof), or technology
+ choices. We do not tolerate harassment of conference participants in any
+ form. Sexual language and imagery is not appropriate for any conference
+ venue, including talks, workshops, parties, Twitter and other online
+ media. Conference participants violating these rules may be sanctioned
+ or expelled from the conference without a refund at the discretion of
+ the conference organisers.
+
+
The Less Quick Version
+
+ Harassment includes offensive verbal comments related to gender, gender
+ identity and expression, age, sexual orientation, disability, physical
+ appearance, body size, race, ethnicity, religion, technology choices,
+ sexual images in public spaces, deliberate intimidation, stalking,
+ following, harassing photography or recording, sustained disruption of
+ talks or other events, inappropriate physical contact, and unwelcome
+ sexual attention.
+
+
+ Participants asked to stop any harassing behavior are expected to comply
+ immediately.
+
+
+ Sponsors are also subject to the anti-harassment policy. In particular,
+ sponsors should not use sexualised images, activities, or other
+ material. Booth staff (including volunteers) should not use sexualised
+ clothing/uniforms/costumes, or otherwise create a sexualised
+ environment.
+
+
+ If a participant engages in harassing behavior, the conference
+ organisers may take any action they deem appropriate, including warning
+ the offender or expulsion from the conference with no refund.
+
+
+ If you are being harassed, notice that someone else is being harassed,
+ or have any other concerns, please contact a member of conference staff
+ immediately. Conference staff can be identified as they'll be wearing
+ branded clothing and/or badges.
+
+
+ Conference staff will be happy to help participants contact hotel/venue
+ security or local law enforcement, provide escorts, or otherwise assist
+ those experiencing harassment to feel safe for the duration of the
+ conference. We value your attendance.
+
+
+ We expect participants to follow these rules at conference and workshop
+ venues and conference-related social events.
+
+
+
+
diff --git a/2022/images/Jardins_Du_Pont_Neuf.png b/2022/images/Jardins_Du_Pont_Neuf.png
new file mode 100644
index 00000000..f6880adb
Binary files /dev/null and b/2022/images/Jardins_Du_Pont_Neuf.png differ
diff --git a/2022/images/Pavillon_Rive_Gauche.jpg b/2022/images/Pavillon_Rive_Gauche.jpg
new file mode 100644
index 00000000..e5d70742
Binary files /dev/null and b/2022/images/Pavillon_Rive_Gauche.jpg differ
diff --git a/2022/images/background.svg b/2022/images/background.svg
new file mode 100644
index 00000000..94d2f7ee
--- /dev/null
+++ b/2022/images/background.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2022/images/divider.svg b/2022/images/divider.svg
new file mode 100644
index 00000000..21ded57c
--- /dev/null
+++ b/2022/images/divider.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2022/images/get-involved.svg b/2022/images/get-involved.svg
new file mode 100644
index 00000000..c3edccbe
--- /dev/null
+++ b/2022/images/get-involved.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2022/images/icons/arrow-right.svg b/2022/images/icons/arrow-right.svg
new file mode 100644
index 00000000..9c672355
--- /dev/null
+++ b/2022/images/icons/arrow-right.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/2022/images/icons/glasses.svg b/2022/images/icons/glasses.svg
new file mode 100644
index 00000000..73da2bf8
--- /dev/null
+++ b/2022/images/icons/glasses.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/2022/images/icons/link-blue.svg b/2022/images/icons/link-blue.svg
new file mode 100644
index 00000000..07bbd194
--- /dev/null
+++ b/2022/images/icons/link-blue.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/2022/images/icons/mailing-list.svg b/2022/images/icons/mailing-list.svg
new file mode 100644
index 00000000..3ce4fbcc
--- /dev/null
+++ b/2022/images/icons/mailing-list.svg
@@ -0,0 +1,26 @@
+
+
\ No newline at end of file
diff --git a/2022/images/icons/twitter-blue.svg b/2022/images/icons/twitter-blue.svg
new file mode 100644
index 00000000..353f16a8
--- /dev/null
+++ b/2022/images/icons/twitter-blue.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/2022/images/icons/twitter.svg b/2022/images/icons/twitter.svg
new file mode 100644
index 00000000..6d078fd2
--- /dev/null
+++ b/2022/images/icons/twitter.svg
@@ -0,0 +1,26 @@
+
+
\ No newline at end of file
diff --git a/2022/images/newsletter-background.svg b/2022/images/newsletter-background.svg
new file mode 100644
index 00000000..14584415
--- /dev/null
+++ b/2022/images/newsletter-background.svg
@@ -0,0 +1,47 @@
+
+
\ No newline at end of file
diff --git a/2022/images/organizers/balint-erdi.jpeg b/2022/images/organizers/balint-erdi.jpeg
new file mode 100644
index 00000000..671b3d77
Binary files /dev/null and b/2022/images/organizers/balint-erdi.jpeg differ
diff --git a/2022/images/organizers/joschka-kintscher.jpeg b/2022/images/organizers/joschka-kintscher.jpeg
new file mode 100644
index 00000000..a9fc95cb
Binary files /dev/null and b/2022/images/organizers/joschka-kintscher.jpeg differ
diff --git a/2022/images/organizers/mainmatter.svg b/2022/images/organizers/mainmatter.svg
new file mode 100644
index 00000000..f35dcba6
--- /dev/null
+++ b/2022/images/organizers/mainmatter.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2022/images/speakers/aaron-chambers.jpeg b/2022/images/speakers/aaron-chambers.jpeg
new file mode 100644
index 00000000..010236cb
Binary files /dev/null and b/2022/images/speakers/aaron-chambers.jpeg differ
diff --git a/2022/images/speakers/alexis-falaise.png b/2022/images/speakers/alexis-falaise.png
new file mode 100644
index 00000000..fbf8e0a6
Binary files /dev/null and b/2022/images/speakers/alexis-falaise.png differ
diff --git a/2022/images/speakers/aymeric-augustin.jpg b/2022/images/speakers/aymeric-augustin.jpg
new file mode 100644
index 00000000..931e3cb2
Binary files /dev/null and b/2022/images/speakers/aymeric-augustin.jpg differ
diff --git a/2022/images/speakers/chris-manson.jpg b/2022/images/speakers/chris-manson.jpg
new file mode 100644
index 00000000..05f9fe96
Binary files /dev/null and b/2022/images/speakers/chris-manson.jpg differ
diff --git a/2022/images/speakers/dries-de-lange.png b/2022/images/speakers/dries-de-lange.png
new file mode 100644
index 00000000..67a131f5
Binary files /dev/null and b/2022/images/speakers/dries-de-lange.png differ
diff --git a/2022/images/speakers/edward-faulkner.jpeg b/2022/images/speakers/edward-faulkner.jpeg
new file mode 100644
index 00000000..686aa4f9
Binary files /dev/null and b/2022/images/speakers/edward-faulkner.jpeg differ
diff --git a/2022/images/speakers/floris-list.jpeg b/2022/images/speakers/floris-list.jpeg
new file mode 100644
index 00000000..711a4eab
Binary files /dev/null and b/2022/images/speakers/floris-list.jpeg differ
diff --git a/2022/images/speakers/goncalo-morais.jpeg b/2022/images/speakers/goncalo-morais.jpeg
new file mode 100644
index 00000000..c418a5e3
Binary files /dev/null and b/2022/images/speakers/goncalo-morais.jpeg differ
diff --git a/2022/images/speakers/ignace-maes.jpeg b/2022/images/speakers/ignace-maes.jpeg
new file mode 100644
index 00000000..454e3a52
Binary files /dev/null and b/2022/images/speakers/ignace-maes.jpeg differ
diff --git a/2022/images/speakers/l-preston-sego-iii.png b/2022/images/speakers/l-preston-sego-iii.png
new file mode 100644
index 00000000..5b4acc9b
Binary files /dev/null and b/2022/images/speakers/l-preston-sego-iii.png differ
diff --git a/2022/images/speakers/melanie-sumner.jpg b/2022/images/speakers/melanie-sumner.jpg
new file mode 100644
index 00000000..af5092cc
Binary files /dev/null and b/2022/images/speakers/melanie-sumner.jpg differ
diff --git a/2022/images/speakers/mo-fiebiger.jpeg b/2022/images/speakers/mo-fiebiger.jpeg
new file mode 100644
index 00000000..2df93c56
Binary files /dev/null and b/2022/images/speakers/mo-fiebiger.jpeg differ
diff --git a/2022/images/speakers/tomek-niezurawski.jpeg b/2022/images/speakers/tomek-niezurawski.jpeg
new file mode 100644
index 00000000..1bb111bf
Binary files /dev/null and b/2022/images/speakers/tomek-niezurawski.jpeg differ
diff --git a/2022/images/speakers/yehuda-katz.jpeg b/2022/images/speakers/yehuda-katz.jpeg
new file mode 100644
index 00000000..8282bd82
Binary files /dev/null and b/2022/images/speakers/yehuda-katz.jpeg differ
diff --git a/2022/images/speakers/zoe-bijl.jpg b/2022/images/speakers/zoe-bijl.jpg
new file mode 100644
index 00000000..accc2f16
Binary files /dev/null and b/2022/images/speakers/zoe-bijl.jpg differ
diff --git a/2022/images/sponsors/addepar.svg b/2022/images/sponsors/addepar.svg
new file mode 100644
index 00000000..c7149b6e
--- /dev/null
+++ b/2022/images/sponsors/addepar.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/cardstack.svg b/2022/images/sponsors/cardstack.svg
new file mode 100644
index 00000000..6f5cf19b
--- /dev/null
+++ b/2022/images/sponsors/cardstack.svg
@@ -0,0 +1,36 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/clark.svg b/2022/images/sponsors/clark.svg
new file mode 100644
index 00000000..5987df79
--- /dev/null
+++ b/2022/images/sponsors/clark.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/crowdstrike.svg b/2022/images/sponsors/crowdstrike.svg
new file mode 100644
index 00000000..bdb5caf0
--- /dev/null
+++ b/2022/images/sponsors/crowdstrike.svg
@@ -0,0 +1,27 @@
+
+
+
diff --git a/2022/images/sponsors/ember-checkup.svg b/2022/images/sponsors/ember-checkup.svg
new file mode 100644
index 00000000..9a47ac6b
--- /dev/null
+++ b/2022/images/sponsors/ember-checkup.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/embermap.svg b/2022/images/sponsors/embermap.svg
new file mode 100644
index 00000000..b77db196
--- /dev/null
+++ b/2022/images/sponsors/embermap.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/harvest.svg b/2022/images/sponsors/harvest.svg
new file mode 100644
index 00000000..3f5e5d21
--- /dev/null
+++ b/2022/images/sponsors/harvest.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/hashicorp.svg b/2022/images/sponsors/hashicorp.svg
new file mode 100644
index 00000000..e6317e1e
--- /dev/null
+++ b/2022/images/sponsors/hashicorp.svg
@@ -0,0 +1,66 @@
+
+
+
diff --git a/2022/images/sponsors/honeypot.svg b/2022/images/sponsors/honeypot.svg
new file mode 100644
index 00000000..f49d9626
--- /dev/null
+++ b/2022/images/sponsors/honeypot.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/intercom.svg b/2022/images/sponsors/intercom.svg
new file mode 100644
index 00000000..58c9465f
--- /dev/null
+++ b/2022/images/sponsors/intercom.svg
@@ -0,0 +1,8 @@
+
+
+
diff --git a/2022/images/sponsors/kloeckner-i.svg b/2022/images/sponsors/kloeckner-i.svg
new file mode 100644
index 00000000..2ca1f424
--- /dev/null
+++ b/2022/images/sponsors/kloeckner-i.svg
@@ -0,0 +1,16 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/linkedin.png b/2022/images/sponsors/linkedin.png
new file mode 100644
index 00000000..0406c624
Binary files /dev/null and b/2022/images/sponsors/linkedin.png differ
diff --git a/2022/images/sponsors/linkfire.svg b/2022/images/sponsors/linkfire.svg
new file mode 100644
index 00000000..61cedb30
--- /dev/null
+++ b/2022/images/sponsors/linkfire.svg
@@ -0,0 +1,21 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/mainmatter-black.svg b/2022/images/sponsors/mainmatter-black.svg
new file mode 100644
index 00000000..382557fd
--- /dev/null
+++ b/2022/images/sponsors/mainmatter-black.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/2022/images/sponsors/peopledoc.svg b/2022/images/sponsors/peopledoc.svg
new file mode 100644
index 00000000..d8ea85f9
--- /dev/null
+++ b/2022/images/sponsors/peopledoc.svg
@@ -0,0 +1,29 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/phorest.svg b/2022/images/sponsors/phorest.svg
new file mode 100644
index 00000000..e0c28781
--- /dev/null
+++ b/2022/images/sponsors/phorest.svg
@@ -0,0 +1,452 @@
+
+
+
diff --git a/2022/images/sponsors/precision-nutrition.svg b/2022/images/sponsors/precision-nutrition.svg
new file mode 100644
index 00000000..98897310
--- /dev/null
+++ b/2022/images/sponsors/precision-nutrition.svg
@@ -0,0 +1,32 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/prototypal.svg b/2022/images/sponsors/prototypal.svg
new file mode 100644
index 00000000..3c12ae9a
--- /dev/null
+++ b/2022/images/sponsors/prototypal.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/qonto.svg b/2022/images/sponsors/qonto.svg
new file mode 100644
index 00000000..bbe3107e
--- /dev/null
+++ b/2022/images/sponsors/qonto.svg
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/2022/images/sponsors/redpencil-io.svg b/2022/images/sponsors/redpencil-io.svg
new file mode 100644
index 00000000..23eb5d92
--- /dev/null
+++ b/2022/images/sponsors/redpencil-io.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/selleo.svg b/2022/images/sponsors/selleo.svg
new file mode 100644
index 00000000..ed5a571a
--- /dev/null
+++ b/2022/images/sponsors/selleo.svg
@@ -0,0 +1,24 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/shipshape.svg b/2022/images/sponsors/shipshape.svg
new file mode 100644
index 00000000..8ab2968e
--- /dev/null
+++ b/2022/images/sponsors/shipshape.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2022/images/sponsors/stickermule.svg b/2022/images/sponsors/stickermule.svg
new file mode 100644
index 00000000..efa4e922
--- /dev/null
+++ b/2022/images/sponsors/stickermule.svg
@@ -0,0 +1,26 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/tilde.svg b/2022/images/sponsors/tilde.svg
new file mode 100644
index 00000000..51001457
--- /dev/null
+++ b/2022/images/sponsors/tilde.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/triptyk.svg b/2022/images/sponsors/triptyk.svg
new file mode 100644
index 00000000..4fa4dfc5
--- /dev/null
+++ b/2022/images/sponsors/triptyk.svg
@@ -0,0 +1,22 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/wyeworks.svg b/2022/images/sponsors/wyeworks.svg
new file mode 100644
index 00000000..3b4f4b10
--- /dev/null
+++ b/2022/images/sponsors/wyeworks.svg
@@ -0,0 +1,23 @@
+
+
\ No newline at end of file
diff --git a/2022/images/sponsors/zapnito.svg b/2022/images/sponsors/zapnito.svg
new file mode 100644
index 00000000..e15daef2
--- /dev/null
+++ b/2022/images/sponsors/zapnito.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2022/images/sponsorship-prospectus-2022.pdf b/2022/images/sponsorship-prospectus-2022.pdf
new file mode 100644
index 00000000..c4f92440
Binary files /dev/null and b/2022/images/sponsorship-prospectus-2022.pdf differ
diff --git a/2022/imprint/index.html b/2022/imprint/index.html
new file mode 100644
index 00000000..9ed95a1c
--- /dev/null
+++ b/2022/imprint/index.html
@@ -0,0 +1,35 @@
+---
+layout: 2022/default
+title: EmberFest
+---
+
+{% include 2022/main_header.html %}
+
+
+
+
+
Imprint
+
+ Publisher information according to §6 Teledienstgesetz (TDG)
+ Responsible according to §6 MDStV:
+
+
+ EmberFest UG
+ +49 89 452 139 03
+ Marco Otte-Witte
+ Hans-Sachs-Str. 12
+ 80469 München
+ Germany
+
+
Exclusion of Liability
+
+ We check and update the information on this website regularly. Despite
+ our best efforts, information on the site may not always be correct.
+ Liability concerning timeliness, correctness and completeness of the
+ available information can not be assumed. This applies also for all
+ other websites which are referred via hyperlink. EmberFest UG is not
+ responsible for the content of these third party websites.
+
EmberFest is the European Community Ember Conference.
+
+ If you’re looking for updates on the latest and greatest in Ember and
+ Glimmer this is the place to be. EmberFest is also a great opportunity
+ to get in touch with the European Ember Community (and friends from
+ abroad) and hiring Ember talent.
+
+
+
+ {% if page.enable_schedule %}
+ {% include 2022/schedule.html %}
+ {% endif %}
+
+
+
+
+
Conference venue
+
+ This year’s EmberFest will take place in the Pavillon Rive Gauche,
+ next to the famous Notre-Dame de Paris Cathedral. The venue is located
+ at 8-10 Rue Frederic Sauton. It has two spacious floors, a mezzanine,
+ and a terrace on the street.
+
+
+
+
+
+
+
+
+
+
+
+
Closing Dinner
+
+ To keep up with the tradition, we're going for, yes, you guessed it, a
+ boat! Our host will be Les Jardins du Pont Neuf, located on the
+ beautiful la Seine. The event starts at 8 pm on Friday and goes till
+ midnight. You will be able to enjoy the food served till 10 pm and get
+ a drink at the bar that will be open the whole evening.
+
+
+
+
+
+
+
+
+
+
+
+
+ {% if page.enable_sponsors %}
+ {% include 2022/sponsors.html %}
+ {% else %}
+ {%
+ include past_sponsors.html %}
+ {% endif %}
+
+
+
+
\ No newline at end of file
diff --git a/2023/cancellation/index.html b/2023/cancellation/index.html
new file mode 100644
index 00000000..9aa0706c
--- /dev/null
+++ b/2023/cancellation/index.html
@@ -0,0 +1,36 @@
+---
+layout: 2023/default
+css: sidepages
+title: EmberFest
+---
+
+{% include 2023/sidepages_header.html %}
+
+
+
+
Cancellation Policy
+
+
Up to 30 days before the start of the conference
+
+ Up to 30 days before the start of the conference, you can get a full
+ refund for your ticket. Send an email to mail@emberfest.eu and we will
+ process your refund.
+
+
Within 30 days of the start of the conference
+
+ We are unable to offer refunds within 30 days of the conference, however
+ your ticket can be reassigned at any time to a different attendee. To
+ reassign your ticket, please follow the link on your original
+ confirmation email.
+
+
“Force majeure” events
+
+ Should the conference be cancelled for any reason (including due to
+ restrictions because of the Coronavirus pandemic), purchased tickets
+ will be valid for the next year.
+
+ All attendees, speakers, sponsors and volunteers at our conference are
+ required to agree with the following code of conduct. Organisers will
+ enforce this code throughout the event.
+ We expect cooperation from all participants to help ensure a safe environment for everybody.
+
Need Help?
+
You have our contact details in the emails we've sent.
+
The Quick Version
+
+ Our conference is dedicated to providing a harassment-free conference
+ experience for everyone, regardless of gender, gender identity and
+ expression, age, sexual orientation, disability, physical appearance,
+ body size, race, ethnicity, religion (or lack thereof), or technology
+ choices. We do not tolerate harassment of conference participants in any
+ form.
+
+
Sexual language and imagery is not appropriate for any conference
+ venue, including talks, workshops, parties, Twitter and other online
+ media. Conference participants violating these rules may be sanctioned
+ or expelled from the conference without a refund at the discretion of
+ the conference organisers.
+
+
The Less Quick Version
+
+ Harassment includes offensive verbal comments related to gender, gender
+ identity and expression, age, sexual orientation, disability, physical
+ appearance, body size, race, ethnicity, religion, technology choices,
+ sexual images in public spaces, deliberate intimidation, stalking,
+ following, harassing photography or recording, sustained disruption of
+ talks or other events, inappropriate physical contact, and unwelcome
+ sexual attention.
+
+
+ Participants asked to stop any harassing behavior are expected to comply
+ immediately.
+
+
+ Sponsors are also subject to the anti-harassment policy. In particular,
+ sponsors should not use sexualised images, activities, or other
+ material. Booth staff (including volunteers) should not use sexualised
+ clothing/uniforms/costumes, or otherwise create a sexualised
+ environment.
+
+
+ If a participant engages in harassing behavior, the conference
+ organisers may take any action they deem appropriate, including warning
+ the offender or expulsion from the conference with no refund.
+
+
+ If you are being harassed, notice that someone else is being harassed,
+ or have any other concerns, please contact a member of conference staff
+ immediately. Conference staff can be identified as they'll be wearing
+ branded clothing and/or badges.
+
+
+ Conference staff will be happy to help participants contact hotel/venue
+ security or local law enforcement, provide escorts, or otherwise assist
+ those experiencing harassment to feel safe for the duration of the
+ conference. We value your attendance.
+
+
+ We expect participants to follow these rules at conference and workshop
+ venues and conference-related social events.
+
+
+
+
+
+{% include 2023/footer.html %}
\ No newline at end of file
diff --git a/2023/images/arrow-body.svg b/2023/images/arrow-body.svg
new file mode 100644
index 00000000..556f1808
--- /dev/null
+++ b/2023/images/arrow-body.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/2023/images/arrow-head.svg b/2023/images/arrow-head.svg
new file mode 100644
index 00000000..f0176b90
--- /dev/null
+++ b/2023/images/arrow-head.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/2023/images/backgrounds/background_1-grey.svg b/2023/images/backgrounds/background_1-grey.svg
new file mode 100644
index 00000000..19ed926f
--- /dev/null
+++ b/2023/images/backgrounds/background_1-grey.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/2023/images/backgrounds/background_2.svg b/2023/images/backgrounds/background_2.svg
new file mode 100644
index 00000000..7d5b919b
--- /dev/null
+++ b/2023/images/backgrounds/background_2.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/2023/images/backgrounds/background_4.svg b/2023/images/backgrounds/background_4.svg
new file mode 100644
index 00000000..7d5b919b
--- /dev/null
+++ b/2023/images/backgrounds/background_4.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/2023/images/backgrounds/background_yellow_dots.svg b/2023/images/backgrounds/background_yellow_dots.svg
new file mode 100644
index 00000000..996fc209
--- /dev/null
+++ b/2023/images/backgrounds/background_yellow_dots.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/2023/images/backgrounds/curly-brace.svg b/2023/images/backgrounds/curly-brace.svg
new file mode 100644
index 00000000..89517330
--- /dev/null
+++ b/2023/images/backgrounds/curly-brace.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/2023/images/backgrounds/pattern_1.svg b/2023/images/backgrounds/pattern_1.svg
new file mode 100644
index 00000000..6001d2eb
--- /dev/null
+++ b/2023/images/backgrounds/pattern_1.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/2023/images/backgrounds/pattern_2.svg b/2023/images/backgrounds/pattern_2.svg
new file mode 100644
index 00000000..4f4bc1ca
--- /dev/null
+++ b/2023/images/backgrounds/pattern_2.svg
@@ -0,0 +1,7 @@
+
+
\ No newline at end of file
diff --git a/2023/images/bull.svg b/2023/images/bull.svg
new file mode 100644
index 00000000..c6118241
--- /dev/null
+++ b/2023/images/bull.svg
@@ -0,0 +1,9 @@
+
+
\ No newline at end of file
diff --git a/2023/images/button-blue-twitter.svg b/2023/images/button-blue-twitter.svg
new file mode 100644
index 00000000..e1035f66
--- /dev/null
+++ b/2023/images/button-blue-twitter.svg
@@ -0,0 +1,12 @@
+
+
\ No newline at end of file
diff --git a/2023/images/button-yellow-twitter.svg b/2023/images/button-yellow-twitter.svg
new file mode 100644
index 00000000..e30aba93
--- /dev/null
+++ b/2023/images/button-yellow-twitter.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/2023/images/button-yellow-weblink.svg b/2023/images/button-yellow-weblink.svg
new file mode 100644
index 00000000..9c5745ee
--- /dev/null
+++ b/2023/images/button-yellow-weblink.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/2023/images/glasses-big.webp b/2023/images/glasses-big.webp
new file mode 100644
index 00000000..573786bd
Binary files /dev/null and b/2023/images/glasses-big.webp differ
diff --git a/2023/images/glasses-small.webp b/2023/images/glasses-small.webp
new file mode 100644
index 00000000..b4ae9c78
Binary files /dev/null and b/2023/images/glasses-small.webp differ
diff --git a/2023/images/icons/link.svg b/2023/images/icons/link.svg
new file mode 100644
index 00000000..466bfe4f
--- /dev/null
+++ b/2023/images/icons/link.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/2023/images/icons/mastodon.svg b/2023/images/icons/mastodon.svg
new file mode 100644
index 00000000..3ba34785
--- /dev/null
+++ b/2023/images/icons/mastodon.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/2023/images/icons/twitter-blue.svg b/2023/images/icons/twitter-blue.svg
new file mode 100644
index 00000000..271ee2c7
--- /dev/null
+++ b/2023/images/icons/twitter-blue.svg
@@ -0,0 +1,14 @@
+
+
\ No newline at end of file
diff --git a/2023/images/icons/twitter-yellow-logo.svg b/2023/images/icons/twitter-yellow-logo.svg
new file mode 100644
index 00000000..a94b48c5
--- /dev/null
+++ b/2023/images/icons/twitter-yellow-logo.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/2023/images/icons/twitter.svg b/2023/images/icons/twitter.svg
new file mode 100644
index 00000000..9c632c16
--- /dev/null
+++ b/2023/images/icons/twitter.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/2023/images/icons/url.svg b/2023/images/icons/url.svg
new file mode 100644
index 00000000..54c0759c
--- /dev/null
+++ b/2023/images/icons/url.svg
@@ -0,0 +1,19 @@
+
+
\ No newline at end of file
diff --git a/2023/images/line.svg b/2023/images/line.svg
new file mode 100644
index 00000000..3064945e
--- /dev/null
+++ b/2023/images/line.svg
@@ -0,0 +1,11 @@
+
+
\ No newline at end of file
diff --git a/2023/images/logo_horizontal.svg b/2023/images/logo_horizontal.svg
new file mode 100644
index 00000000..0018c298
--- /dev/null
+++ b/2023/images/logo_horizontal.svg
@@ -0,0 +1,25 @@
+
+
\ No newline at end of file
diff --git a/2023/images/logo_vertical.svg b/2023/images/logo_vertical.svg
new file mode 100644
index 00000000..f923ee2e
--- /dev/null
+++ b/2023/images/logo_vertical.svg
@@ -0,0 +1,25 @@
+
+
\ No newline at end of file
diff --git a/2023/images/organizers/balint-erdi.png b/2023/images/organizers/balint-erdi.png
new file mode 100644
index 00000000..d7ce8325
Binary files /dev/null and b/2023/images/organizers/balint-erdi.png differ
diff --git a/2023/images/organizers/joschka-kintscher.png b/2023/images/organizers/joschka-kintscher.png
new file mode 100644
index 00000000..35129023
Binary files /dev/null and b/2023/images/organizers/joschka-kintscher.png differ
diff --git a/2023/images/organizers/mainmatter.svg b/2023/images/organizers/mainmatter.svg
new file mode 100644
index 00000000..f35dcba6
--- /dev/null
+++ b/2023/images/organizers/mainmatter.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/2023/images/past-speakers/alexey.jpg b/2023/images/past-speakers/alexey.jpg
new file mode 100644
index 00000000..1b1f0b86
Binary files /dev/null and b/2023/images/past-speakers/alexey.jpg differ
diff --git a/2023/images/past-speakers/chris.jpg b/2023/images/past-speakers/chris.jpg
new file mode 100644
index 00000000..5c24e13c
Binary files /dev/null and b/2023/images/past-speakers/chris.jpg differ
diff --git a/2023/images/past-speakers/chris.png b/2023/images/past-speakers/chris.png
new file mode 100644
index 00000000..a63e628f
Binary files /dev/null and b/2023/images/past-speakers/chris.png differ
diff --git a/2023/images/past-speakers/drew.jpg b/2023/images/past-speakers/drew.jpg
new file mode 100644
index 00000000..9231ea22
Binary files /dev/null and b/2023/images/past-speakers/drew.jpg differ
diff --git a/2023/images/past-speakers/ed-faulkner copy.png b/2023/images/past-speakers/ed-faulkner copy.png
new file mode 100644
index 00000000..96c3e97d
Binary files /dev/null and b/2023/images/past-speakers/ed-faulkner copy.png differ
diff --git a/2023/images/past-speakers/ed-faulkner.png b/2023/images/past-speakers/ed-faulkner.png
new file mode 100644
index 00000000..2841a0a0
Binary files /dev/null and b/2023/images/past-speakers/ed-faulkner.png differ
diff --git a/2023/images/past-speakers/jamie.jpg b/2023/images/past-speakers/jamie.jpg
new file mode 100644
index 00000000..c8d149a3
Binary files /dev/null and b/2023/images/past-speakers/jamie.jpg differ
diff --git a/2023/images/past-speakers/jesse.jpg b/2023/images/past-speakers/jesse.jpg
new file mode 100644
index 00000000..5d851a67
Binary files /dev/null and b/2023/images/past-speakers/jesse.jpg differ
diff --git a/2023/images/past-speakers/kirill.jpg b/2023/images/past-speakers/kirill.jpg
new file mode 100644
index 00000000..b57cf9d9
Binary files /dev/null and b/2023/images/past-speakers/kirill.jpg differ
diff --git a/2023/images/past-speakers/locks.jpeg b/2023/images/past-speakers/locks.jpeg
new file mode 100644
index 00000000..163ad032
Binary files /dev/null and b/2023/images/past-speakers/locks.jpeg differ
diff --git a/2023/images/past-speakers/marcoow.jpg b/2023/images/past-speakers/marcoow.jpg
new file mode 100644
index 00000000..8460369a
Binary files /dev/null and b/2023/images/past-speakers/marcoow.jpg differ
diff --git a/2023/images/past-speakers/marine.jpg b/2023/images/past-speakers/marine.jpg
new file mode 100644
index 00000000..f371bd49
Binary files /dev/null and b/2023/images/past-speakers/marine.jpg differ
diff --git a/2023/images/past-speakers/melanie-sumner copy.png b/2023/images/past-speakers/melanie-sumner copy.png
new file mode 100644
index 00000000..7fe9a559
Binary files /dev/null and b/2023/images/past-speakers/melanie-sumner copy.png differ
diff --git a/2023/images/past-speakers/melanie-sumner.png b/2023/images/past-speakers/melanie-sumner.png
new file mode 100644
index 00000000..d4a528d0
Binary files /dev/null and b/2023/images/past-speakers/melanie-sumner.png differ
diff --git a/2023/images/past-speakers/pat.jpeg b/2023/images/past-speakers/pat.jpeg
new file mode 100644
index 00000000..584a8eb7
Binary files /dev/null and b/2023/images/past-speakers/pat.jpeg differ
diff --git a/2023/images/past-speakers/preston.png b/2023/images/past-speakers/preston.png
new file mode 100644
index 00000000..b041054b
Binary files /dev/null and b/2023/images/past-speakers/preston.png differ
diff --git a/2023/images/past-speakers/sean.jpg b/2023/images/past-speakers/sean.jpg
new file mode 100644
index 00000000..040d4265
Binary files /dev/null and b/2023/images/past-speakers/sean.jpg differ
diff --git a/2023/images/past-speakers/shirin.jpg b/2023/images/past-speakers/shirin.jpg
new file mode 100644
index 00000000..5665cb79
Binary files /dev/null and b/2023/images/past-speakers/shirin.jpg differ
diff --git a/2023/images/past-speakers/simon.jpg b/2023/images/past-speakers/simon.jpg
new file mode 100644
index 00000000..e6c1b216
Binary files /dev/null and b/2023/images/past-speakers/simon.jpg differ
diff --git a/2023/images/past-speakers/tomek.jpg b/2023/images/past-speakers/tomek.jpg
new file mode 100644
index 00000000..23e6716e
Binary files /dev/null and b/2023/images/past-speakers/tomek.jpg differ
diff --git a/2023/images/past-speakers/yehuda-katz.png b/2023/images/past-speakers/yehuda-katz.png
new file mode 100644
index 00000000..de2c4f32
Binary files /dev/null and b/2023/images/past-speakers/yehuda-katz.png differ
diff --git a/2023/images/past-sponsors/addepar.svg b/2023/images/past-sponsors/addepar.svg
new file mode 100644
index 00000000..f1632eb8
--- /dev/null
+++ b/2023/images/past-sponsors/addepar.svg
@@ -0,0 +1,10 @@
+
diff --git a/2023/images/past-sponsors/bevolta.svg b/2023/images/past-sponsors/bevolta.svg
new file mode 100644
index 00000000..151a7a7d
--- /dev/null
+++ b/2023/images/past-sponsors/bevolta.svg
@@ -0,0 +1,16 @@
+
diff --git a/2023/images/past-sponsors/cardstack.svg b/2023/images/past-sponsors/cardstack.svg
new file mode 100644
index 00000000..bea1c4e6
--- /dev/null
+++ b/2023/images/past-sponsors/cardstack.svg
@@ -0,0 +1,18 @@
+
diff --git a/2023/images/past-sponsors/clark.svg b/2023/images/past-sponsors/clark.svg
new file mode 100644
index 00000000..d3c40d12
--- /dev/null
+++ b/2023/images/past-sponsors/clark.svg
@@ -0,0 +1,10 @@
+
diff --git a/2023/images/past-sponsors/crowdstrike.svg b/2023/images/past-sponsors/crowdstrike.svg
new file mode 100644
index 00000000..81a671eb
--- /dev/null
+++ b/2023/images/past-sponsors/crowdstrike.svg
@@ -0,0 +1,22 @@
+
diff --git a/2023/images/past-sponsors/ember-checkup.svg b/2023/images/past-sponsors/ember-checkup.svg
new file mode 100644
index 00000000..21557f43
--- /dev/null
+++ b/2023/images/past-sponsors/ember-checkup.svg
@@ -0,0 +1,13 @@
+
diff --git a/2023/images/past-sponsors/embermap.svg b/2023/images/past-sponsors/embermap.svg
new file mode 100644
index 00000000..a6bdcc6d
--- /dev/null
+++ b/2023/images/past-sponsors/embermap.svg
@@ -0,0 +1,4 @@
+
diff --git a/2023/images/past-sponsors/harvest.svg b/2023/images/past-sponsors/harvest.svg
new file mode 100644
index 00000000..b842469c
--- /dev/null
+++ b/2023/images/past-sponsors/harvest.svg
@@ -0,0 +1,10 @@
+
diff --git a/2023/images/past-sponsors/hashicorp.svg b/2023/images/past-sponsors/hashicorp.svg
new file mode 100644
index 00000000..62af54db
--- /dev/null
+++ b/2023/images/past-sponsors/hashicorp.svg
@@ -0,0 +1,21 @@
+
diff --git a/2023/images/past-sponsors/honeypot.svg b/2023/images/past-sponsors/honeypot.svg
new file mode 100644
index 00000000..e165def4
--- /dev/null
+++ b/2023/images/past-sponsors/honeypot.svg
@@ -0,0 +1,15 @@
+
diff --git a/2023/images/past-sponsors/intercom.svg b/2023/images/past-sponsors/intercom.svg
new file mode 100644
index 00000000..6227b3fd
--- /dev/null
+++ b/2023/images/past-sponsors/intercom.svg
@@ -0,0 +1,11 @@
+
diff --git a/2023/images/past-sponsors/kloeckner-i.svg b/2023/images/past-sponsors/kloeckner-i.svg
new file mode 100644
index 00000000..fee46acc
--- /dev/null
+++ b/2023/images/past-sponsors/kloeckner-i.svg
@@ -0,0 +1,11 @@
+
diff --git a/2023/images/past-sponsors/linkedin.svg b/2023/images/past-sponsors/linkedin.svg
new file mode 100644
index 00000000..3827470c
--- /dev/null
+++ b/2023/images/past-sponsors/linkedin.svg
@@ -0,0 +1,9 @@
+
diff --git a/2023/images/past-sponsors/linkfire.svg b/2023/images/past-sponsors/linkfire.svg
new file mode 100644
index 00000000..cf4b6a98
--- /dev/null
+++ b/2023/images/past-sponsors/linkfire.svg
@@ -0,0 +1,12 @@
+
diff --git a/2023/images/past-sponsors/mainmatter-black.svg b/2023/images/past-sponsors/mainmatter-black.svg
new file mode 100644
index 00000000..8fbc8143
--- /dev/null
+++ b/2023/images/past-sponsors/mainmatter-black.svg
@@ -0,0 +1,10 @@
+
diff --git a/2023/images/past-sponsors/peopledoc.svg b/2023/images/past-sponsors/peopledoc.svg
new file mode 100644
index 00000000..b526630f
--- /dev/null
+++ b/2023/images/past-sponsors/peopledoc.svg
@@ -0,0 +1,20 @@
+
diff --git a/2023/images/past-sponsors/phorest.svg b/2023/images/past-sponsors/phorest.svg
new file mode 100644
index 00000000..7cecdbc1
--- /dev/null
+++ b/2023/images/past-sponsors/phorest.svg
@@ -0,0 +1,48 @@
+
diff --git a/2023/images/past-sponsors/precision-nutrition.svg b/2023/images/past-sponsors/precision-nutrition.svg
new file mode 100644
index 00000000..ddf0ed59
--- /dev/null
+++ b/2023/images/past-sponsors/precision-nutrition.svg
@@ -0,0 +1,29 @@
+
diff --git a/2023/images/past-sponsors/prototypal.svg b/2023/images/past-sponsors/prototypal.svg
new file mode 100644
index 00000000..1c5002ca
--- /dev/null
+++ b/2023/images/past-sponsors/prototypal.svg
@@ -0,0 +1,13 @@
+
diff --git a/2023/images/past-sponsors/qonto.svg b/2023/images/past-sponsors/qonto.svg
new file mode 100644
index 00000000..68ffea42
--- /dev/null
+++ b/2023/images/past-sponsors/qonto.svg
@@ -0,0 +1,15 @@
+
diff --git a/2023/images/past-sponsors/redpencil-io.svg b/2023/images/past-sponsors/redpencil-io.svg
new file mode 100644
index 00000000..1b3eab52
--- /dev/null
+++ b/2023/images/past-sponsors/redpencil-io.svg
@@ -0,0 +1,12 @@
+
diff --git a/2023/images/past-sponsors/retailnext.svg b/2023/images/past-sponsors/retailnext.svg
new file mode 100644
index 00000000..52c4d734
--- /dev/null
+++ b/2023/images/past-sponsors/retailnext.svg
@@ -0,0 +1,21 @@
+
diff --git a/2023/images/past-sponsors/selleo.svg b/2023/images/past-sponsors/selleo.svg
new file mode 100644
index 00000000..752207d1
--- /dev/null
+++ b/2023/images/past-sponsors/selleo.svg
@@ -0,0 +1,17 @@
+
diff --git a/2023/images/past-sponsors/shipshape.svg b/2023/images/past-sponsors/shipshape.svg
new file mode 100644
index 00000000..11dc19dd
--- /dev/null
+++ b/2023/images/past-sponsors/shipshape.svg
@@ -0,0 +1,13 @@
+
diff --git a/2023/images/past-sponsors/stickermule.svg b/2023/images/past-sponsors/stickermule.svg
new file mode 100644
index 00000000..aa9433e9
--- /dev/null
+++ b/2023/images/past-sponsors/stickermule.svg
@@ -0,0 +1,21 @@
+
diff --git a/2023/images/past-sponsors/tilde.svg b/2023/images/past-sponsors/tilde.svg
new file mode 100644
index 00000000..557f3450
--- /dev/null
+++ b/2023/images/past-sponsors/tilde.svg
@@ -0,0 +1,3 @@
+
diff --git a/2023/images/past-sponsors/triptyk.svg b/2023/images/past-sponsors/triptyk.svg
new file mode 100644
index 00000000..845f8ede
--- /dev/null
+++ b/2023/images/past-sponsors/triptyk.svg
@@ -0,0 +1,13 @@
+
diff --git a/2023/images/past-sponsors/wyeworks.svg b/2023/images/past-sponsors/wyeworks.svg
new file mode 100644
index 00000000..470fb656
--- /dev/null
+++ b/2023/images/past-sponsors/wyeworks.svg
@@ -0,0 +1,18 @@
+
diff --git a/2023/images/past-sponsors/zapnito.svg b/2023/images/past-sponsors/zapnito.svg
new file mode 100644
index 00000000..dbe5aeca
--- /dev/null
+++ b/2023/images/past-sponsors/zapnito.svg
@@ -0,0 +1,20 @@
+
diff --git a/2023/images/speakers/alexey.jpg b/2023/images/speakers/alexey.jpg
new file mode 100644
index 00000000..1b1f0b86
Binary files /dev/null and b/2023/images/speakers/alexey.jpg differ
diff --git a/2023/images/speakers/chris.jpg b/2023/images/speakers/chris.jpg
new file mode 100644
index 00000000..5c24e13c
Binary files /dev/null and b/2023/images/speakers/chris.jpg differ
diff --git a/2023/images/speakers/chris.png b/2023/images/speakers/chris.png
new file mode 100644
index 00000000..a63e628f
Binary files /dev/null and b/2023/images/speakers/chris.png differ
diff --git a/2023/images/speakers/drew.jpg b/2023/images/speakers/drew.jpg
new file mode 100644
index 00000000..9231ea22
Binary files /dev/null and b/2023/images/speakers/drew.jpg differ
diff --git a/2023/images/speakers/ed-faulkner.png b/2023/images/speakers/ed-faulkner.png
new file mode 100644
index 00000000..96c3e97d
Binary files /dev/null and b/2023/images/speakers/ed-faulkner.png differ
diff --git a/2023/images/speakers/jamie.jpg b/2023/images/speakers/jamie.jpg
new file mode 100644
index 00000000..c8d149a3
Binary files /dev/null and b/2023/images/speakers/jamie.jpg differ
diff --git a/2023/images/speakers/jesse.jpg b/2023/images/speakers/jesse.jpg
new file mode 100644
index 00000000..5d851a67
Binary files /dev/null and b/2023/images/speakers/jesse.jpg differ
diff --git a/2023/images/speakers/kirill.jpg b/2023/images/speakers/kirill.jpg
new file mode 100644
index 00000000..b57cf9d9
Binary files /dev/null and b/2023/images/speakers/kirill.jpg differ
diff --git a/2023/images/speakers/locks.jpeg b/2023/images/speakers/locks.jpeg
new file mode 100644
index 00000000..163ad032
Binary files /dev/null and b/2023/images/speakers/locks.jpeg differ
diff --git a/2023/images/speakers/marcoow.jpg b/2023/images/speakers/marcoow.jpg
new file mode 100644
index 00000000..8460369a
Binary files /dev/null and b/2023/images/speakers/marcoow.jpg differ
diff --git a/2023/images/speakers/marine.jpg b/2023/images/speakers/marine.jpg
new file mode 100644
index 00000000..f371bd49
Binary files /dev/null and b/2023/images/speakers/marine.jpg differ
diff --git a/2023/images/speakers/melanie-sumner.png b/2023/images/speakers/melanie-sumner.png
new file mode 100644
index 00000000..7fe9a559
Binary files /dev/null and b/2023/images/speakers/melanie-sumner.png differ
diff --git a/2023/images/speakers/pat.jpeg b/2023/images/speakers/pat.jpeg
new file mode 100644
index 00000000..584a8eb7
Binary files /dev/null and b/2023/images/speakers/pat.jpeg differ
diff --git a/2023/images/speakers/preston.png b/2023/images/speakers/preston.png
new file mode 100644
index 00000000..b041054b
Binary files /dev/null and b/2023/images/speakers/preston.png differ
diff --git a/2023/images/speakers/sean.jpg b/2023/images/speakers/sean.jpg
new file mode 100644
index 00000000..040d4265
Binary files /dev/null and b/2023/images/speakers/sean.jpg differ
diff --git a/2023/images/speakers/shirin.jpg b/2023/images/speakers/shirin.jpg
new file mode 100644
index 00000000..5665cb79
Binary files /dev/null and b/2023/images/speakers/shirin.jpg differ
diff --git a/2023/images/speakers/simon.jpg b/2023/images/speakers/simon.jpg
new file mode 100644
index 00000000..e6c1b216
Binary files /dev/null and b/2023/images/speakers/simon.jpg differ
diff --git a/2023/images/speakers/tomek.jpg b/2023/images/speakers/tomek.jpg
new file mode 100644
index 00000000..23e6716e
Binary files /dev/null and b/2023/images/speakers/tomek.jpg differ
diff --git a/2023/images/sponsors/bevolta.svg b/2023/images/sponsors/bevolta.svg
new file mode 100644
index 00000000..f519a2b3
--- /dev/null
+++ b/2023/images/sponsors/bevolta.svg
@@ -0,0 +1,18 @@
+
+
\ No newline at end of file
diff --git a/2023/images/sponsors/mainmatter-black.svg b/2023/images/sponsors/mainmatter-black.svg
new file mode 100644
index 00000000..382557fd
--- /dev/null
+++ b/2023/images/sponsors/mainmatter-black.svg
@@ -0,0 +1,9 @@
+
+
diff --git a/2023/images/sponsors/qonto.svg b/2023/images/sponsors/qonto.svg
new file mode 100644
index 00000000..bbe3107e
--- /dev/null
+++ b/2023/images/sponsors/qonto.svg
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/2023/images/sponsors/redpencil-io.svg b/2023/images/sponsors/redpencil-io.svg
new file mode 100644
index 00000000..23eb5d92
--- /dev/null
+++ b/2023/images/sponsors/redpencil-io.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/2023/images/sponsors/retailnext.svg b/2023/images/sponsors/retailnext.svg
new file mode 100644
index 00000000..96c65ba5
--- /dev/null
+++ b/2023/images/sponsors/retailnext.svg
@@ -0,0 +1,42 @@
+
+
+
diff --git a/2023/images/title-with-bull.svg b/2023/images/title-with-bull.svg
new file mode 100644
index 00000000..14efef8f
--- /dev/null
+++ b/2023/images/title-with-bull.svg
@@ -0,0 +1,30 @@
+
+
\ No newline at end of file
diff --git a/2023/images/venue.jpg b/2023/images/venue.jpg
new file mode 100644
index 00000000..9fe460df
Binary files /dev/null and b/2023/images/venue.jpg differ
diff --git a/2023/imprint/index.html b/2023/imprint/index.html
new file mode 100644
index 00000000..abb275da
--- /dev/null
+++ b/2023/imprint/index.html
@@ -0,0 +1,42 @@
+---
+layout: 2023/default
+css: sidepages
+title: EmberFest
+---
+
+{% include 2023/sidepages_header.html %}
+
+
+
+
Imprint
+
+
+
+ Publisher information according to §6 Teledienstgesetz (TDG)
+ Responsible according to §6 MDStV:
+
+
+ EmberFest UG
+ +49 89 452 139 03
+ Marco Otte-Witte
+ Hans-Sachs-Str. 12
+ 80469 München
+ Germany
+
+
+
+
+
Exclusion of Liability
+
+ We check and update the information on this website regularly. Despite
+ our best efforts, information on the site may not always be correct.
+ Liability concerning timeliness, correctness and completeness of the
+ available information can not be assumed. This applies also for all
+ other websites which are referred via hyperlink. EmberFest UG is not
+ responsible for the content of these third party websites.
+
+
+
+
+
+{% include 2023/footer.html %}
diff --git a/2023/index.html b/2023/index.html
new file mode 100644
index 00000000..03e1d2fd
--- /dev/null
+++ b/2023/index.html
@@ -0,0 +1,17 @@
+---
+layout: 2023/default
+title: EmberFest
+---
+
+
+ {% include 2023/hero.html %}
+ {% include 2023/about.html %}
+ {% include 2023/speakers.html %}
+ {% include 2023/schedule.html %}
+ {% include 2023/venue.html %}
+ {% include 2023/sponsors.html %}
+
+
diff --git a/2023/schedule/day/1/index.html b/2023/schedule/day/1/index.html
new file mode 100644
index 00000000..2c7fd1ec
--- /dev/null
+++ b/2023/schedule/day/1/index.html
@@ -0,0 +1,72 @@
+---
+layout: 2023/default
+css: sidepages
+title: EmberFest – Schedule day 1
+---
+
+{% include 2023/sidepages_header.html %}
+
+{% assign day = site.data.schedule[0] %}
+
+
+
+
After a brief introduction to what v2 addons are, how they are different from v1 addons, and how to create one, this talk will focus on the more advanced use cases. Especially those that require unlearning what v1 addons do, and which require a totally different approach instead:
+
How to ship components with their own CSS
How to provide static assets to the consuming app, either by the classic way of „pushing“ into /public, or by „pulling“ through an import
Ways to make your addon configurable
How to provide built-time integrations without broccoli, but by providing your own webpack loaders. And how to make those configurable also
How to make the build-time integrations work universally with either webpack or Vite
Simon is a long time Ember user and active community member, created many Ember apps and addons at kaliber5, the company he co-founded, and is now applying his experience at Crowdstrike. Based near Hamburg, Germany, he enjoys spending time with his family, building Lego with his son, or tinkering with smart home stuff.
+ - time: "11:30 - 12:00"
+ label: "Create a modern Ember form manager addon"
+ description: >
+
Together we will look at what it takes to create a modern Ember v2 addon using ember-modifiers, tracked-built-ins, glint single-file components, and TypeScript.
As everyone is familiar with forms on the web and has built interactions for them, we’ll be creating a real world Ember form manager! In the process, we will walk through the challenges I have encountered while designing, building, and ultimately publishing an addon of my own.
In the end of the talk, you will be equipped to build your own addons and know the various pitfalls to watch for.
I got into the front-end bath 3 years or so ago and have been developing with Ember for 2.5 years! I am curious about and love to experiment with new technologies, learn new things, and have a good time while doing it, which happens a lot with the Ember community 😃
+ - time: "12:00 - 13:30"
+ label: "Lunch"
+ - time: "13:30 - 14:00"
+ label: "From El Jardín to Ember: The Aittendee Experience"
+ description: >
+
Ember meets art and AI in ‘From El Jardín to Ember: The Aittendee Experience’.
Our presentation starts with a deep-dive into the renowned “El Jardín de las Delicias” from the Prado Museum in Madrid. This intricate masterpiece serves as our live test subject, aiding in showcasing ‘Aittendee’, an Ember app that’s listening right along with you.
But ‘Aittendee’ is more than just a passive listener. Its AI-powered functionalities include real-time transcription, summarizing, extracting key definitions, and generating compelling pull quotes. The app interprets and visually illustrates central concepts of the presentation. It keeps the talk on track by providing feedback on pace and sentiment, and it even creates tailored questions from virtual audience members.
But this isn’t magic—it’s Ember. The second segment of our talk will pull back the curtain on ‘Aittendee’s’ inner workings. We delve into Ember’s role, the app’s features and architecture, and the AI APIs that allow such real-time, high-level processing. From detailed code snippets to architectural strategies, we’ll walk through the technical elements that enable this seamless, immersive experience.
Join us on this journey of revelation and innovation, an intersection of art and technology. Whether you’re drawn to the allure of “El Jardín de las Delicias” or just want the technical how-to, you’ll leave with an appreciation for both.
Open source projects need funding and companies need to invest in the technology they build on – not because of morals but because of business interests to secure investments made by building on the technology. In this talk, I'll cover why you'll want to invest, the risks if failing to invest, and the ways that companies can invest.
Marco has been working in web engineering for about 15 years and has used all kinds of technologies in projects of all kinds of sizes. His company Mainmatter offers custom development, team augmentation, and mentoring. He has worked with Ember for many years and is the original author of ember-simple-auth.
Tests should pass or fail. Not both! A flaky test is one that mostly passes, but sometimes fails. This can cause havoc with continuous integration (CI), blocking your team from shipping. We’ll identify what makes a test flaky and learn to spot the signs before shipping a ticking time-bomb to CI.
When given the same set of inputs, we expect our code to produce the same outputs each time. To use the technical term: we expect our code to be deterministic. When our test suite starts to show signs of flakiness, it usually means that a source of non-determinism has creeped into our code. Perhaps our code is influenced by some global state, which we hadn’t previously considered as ‘an input’. Or perhaps there’s a timing issue which introduces a source of randomness to the outcome of a test.
We’ll study examples that demonstrate how a test can pass in some circumstances and fail in others. The examples will be very much within the Ember ecosystem, using Qunit and testem, so it will be easily relatable for the EmberFest audience. Having learned to spot the problems that can cause a flaky test, we’ll develop some strategies to defend against allowing these issues to make their way into production.
+ speakers:
+ - name: "Drew Neil"
+ image: "/images/speakers/drew.jpg"
+ twitter: "nelstrom"
+ - time: "15:30 - 16:00"
+ label: "Snack break"
+ - time: "16:00 - 16:30"
+ label: "Perfecting CI pipeline for Ember projects. Faster and with more insights."
+ description: >
+
I plan to organize my talk around an existing, big Ember project and show gradually how we can improve the CI pipeline. I will start with an unoptimized pipeline and step by step get to a pretty cool setup. I think the listeners will be able to find their situation on one of the slides. I guess that some people will start learning new things from the beginning whereas some (more advanced folks) will find useful information in the next slides. I’m sure everyone will find something exciting that they can start doing in their companies when they are back from the conference.
Most of the talk will be organized around speed - how to make things faster - build faster, test faster, and deliver faster. But I also plan to show how to get more insights from their pipeline. Mostly from tests. CI runs frequently and it’s a missed opportunity to not learn something from these runs.
I connect humans and machines. I write about interfaces, digital products, UX and… indie hacking 💥 Staff Engineer at Phorest. A bit nerdy 🤓 More: https://tomekdev.com/about-me
In this talk I will go over the new component authoring format, template tag or .gjs and .gts. The talk is intended for a more intermediate audience as we will be focusing on more complex component patterns, in conjunction with usage of tracked built-ins and resources. We will cover topics such as: - Introduction to template tag components, including syntax and strict mode. - Examples of template-only components, and components with local variables and fuctions (class-less components) - Examples of importing framework-provided and addon-provided template helpers and modifiers - Component composition patterns - Local components - Dynamic components - Using tracked built-in classes in components - Patterns for Array and Map - Using Resources - Examples with cell, use - Working with data fetching - What and how you can use today in your applications and addons
locks is a founding member of the Ember Learning core team and a frequent open source contributor. Their latest interests are playing Netrunner and Padel.
+ - time: "10:45 - 11:15"
+ label: "The Ember Guides in French 🇫🇷"
+ description: >
+
Translating the Ember Guides to French? English is accepted as the common language developers use to share their work, so what’s the point? Is a translation really worth it? I’ll tell you a bit about this in this talk. To sum it up: there’s a huge difference between being able to set a few variable names in English in a codebase and understanding advanced topics covered by the documentation. I consider language as part of the accessibility, and I strongly believe the Ember Guides deserve to be as accessible as possible because they’re not only about learning Ember, they’re about getting what you’re doing to become a better developer.
In the main part of the talk, we will learn how the Ember Guides are built and what are the challenges to customize a fork to create this kind of translated website. We will explore three technical aspects: a bit of Ember magic to customize the UI, a series of amazing spell-checking tools maintained by unifiedjs collective, and a bunch of git commands to follow the official Ember Guides updates. Along the way, I’ll mention an addon with the barbaric name of “guidemaker-ember-locale-template”, which aims at being flexible enough to help with any translation project for the Ember Guides. So who knows, maybe this talk could be inspiring?
My name is Marine Dunstetter. Here are 3 things about me that might explain the existence of this talk: I am a frontend engineer working mainly with Ember, I am French, and I love writing. I write Fantasy novels, which has nothing to do with dev ; but I am also interested in writing good docs and I am not scared about translation work, which has a lot to do with dev.
+ - time: "11:30 - 12:00"
+ label: "EmberData 5.x: The New Era of Backend Integration"
+ description: >
+
Join us on a thrilling dive into the world of EmberData like you’ve never seen it before. We’re peeling back the layers on the latest, game-changing updates and the super-powered APIs that are making developers’ lives easier. Ever been puzzled by how to integrate your backend with EmberData? We’re here to light the way, using the PocketBase as backend to show you exactly how it’s done. Through a live demo and real, hands-on code, we’ll walk you through the steps to supercharge your own projects. This talk is perfect for developers at any level who are ready to level up their EmberData game. Grab this opportunity to stay ahead of the curve and master the new release of EmberData. See you there!
Consultant at Galar Systems, S.L. I am doing professional web development since 2013: first doing Rails and later (2015) Ember. Started with few apps at Ember 1.8. In my free time I am working on app to help new parents track kids activities. Huge mechanical keyboards enthusiast
Having individuals consistently work on Frontend Infrastructure can supercharge your organization by creating a separation of concerns between infra and product, making your product engineers more productive and helping your organization keep up to date with modern advancements in technology.
When codebases are small it’s easier for product engineers to make updates improving frontend infrastructure alongside their regular product work. Unfortunately, when codebases and teams scale, this becomes harder to do well. Large codebases become harder to maintain over time, resulting in longer timeframes to make sweeping improvements or adopt new standards. This makes it untenable to rely solely on product engineers to make sporadic improvements due to conflicting priorities with their team.
But how should this team operate? How should it decide what to work on? How should it measure success? I’ll be discussing our journey to adopt such a team. We’ll cover how we think about our roadmap, how we prioritise work and how we measure and define success.
Pat is a Staff Engineer on Intercom’s Frontend Technology team. His team’s mission is to supercharge product teams at Intercom by providing world-class tools, education, and guidance, enabling them to deliver value and accelerating them through the UI lifecycle.
+ - time: "15:00 - 15:30"
+ label: "Q&A with Ed Faulkner"
+ description: >
+
Ed Faulkner, member of Ember.js Steering Committee will answer attendees' questions in a Q&A session.
As the Ember.js framework continues to evolve and thrive, it presents developers and tech leaders with exciting opportunities to create monumental changes in their projects. However, driving these changes while gaining crucial buy-in from teams and stakeholders can be a daunting challenge. This conference talk aims to equip attendees with the knowledge and strategies needed to navigate this path successfully.
In this engaging session, we will delve into the world of Ember.js and explore the power of the Embroider build system. Through real-world case studies and practical insights, attendees will discover how to elevate their Ember.js projects and foster a collaborative environment that embraces transformative change. We will explore effective communication techniques to convey the vision and benefits of these changes, leading to greater support from all stakeholders.
Whether you are an experienced Ember.js developer or just beginning your journey, this talk offers valuable takeaways for all skill levels. Attendees will gain a deeper understanding of Ember.js Embroider, unlocking its potential to revolutionize their development process and drive lasting impact.
Join us for this enlightening session as we unravel the secrets of Ember.js Embroider and learn how to weave innovation and buy-in into every aspect of our Ember.js projects. Let’s embark on this adventure together, empowering attendees to lead their teams toward a brighter and more successful future with Ember.js!
With over 15 years of experience as a frontend developer proficient in various frameworks, I am deeply passionate about tackling complex problems that span frontend, backend, and DevOps, all with the ultimate goal of enhancing the developer experience. Continual growth and staying up-to-date with the latest technology are at the core of my approach. I believe in fostering collaboration within the development community and sharing insights to empower others.
+ - time: "17:30 - 18:00"
+ label: "Panel: Ember – Why and Where?"
+ description: >
+
We'll be talking with a group of panelists about why their teams chose Ember and why they continue to build on it today. We'll also talk about what use cases and non-use cases for Ember are. We'll be openly talking about the concerns the ecosystem currently has about Ember's future and hear about the factors that companies with significant investments in Ember consider when making decisions about their future investment in the framework.
Jamie is an engineer at HashiCorp and a long-time Ember aficionado. He ran Ember meetups and conferences in London for about four years, has spoken twice at EmberConf, and was a relatively early contributor to Ember CLI. These days he’s based near Barcelona and spends his time with his family, learning Catalan, and learning to play the clarinet.
Pat is a Staff Engineer on Intercom’s Frontend Technology team. His team’s mission is to supercharge product teams at Intercom by providing world-class tools, education, and guidance, enabling them to deliver value and accelerating them through the UI lifecycle.
Jesse is the Engineering Manager for Heroku’s Front-End Engineering Teams. Heroku has been using Ember since 2014 and is actively expanding its Ember codebase. Jesse is based in southern Colorado where he enjoys the outdoors, especially skiing, and spends way too much time making a single cup of coffee.
After a brief introduction to what v2 addons are, how they are different from v1 addons, and how to create one, this talk will focus on the more advanced use cases. Especially those that require unlearning what v1 addons do, and which require a totally different approach instead:
+
How to ship components with their own CSS
How to provide static assets to the consuming app, either by the classic way of „pushing“ into /public, or by „pulling“ through an import
Ways to make your addon configurable
How to provide built-time integrations without broccoli, but by providing your own webpack loaders. And how to make those configurable also
How to make the build-time integrations work universally with either webpack or Vite
Simon is a long time Ember user and active community member, created many Ember apps and addons at kaliber5, the company he co-founded, and is now applying his experience at Crowdstrike. Based near Hamburg, Germany, he enjoys spending time with his family, building Lego with his son, or tinkering with smart home stuff.
+ - time: "11:30 - 12:00"
+ label: "Create a modern Ember form manager addon"
+ description: >
+
Together we will look at what it takes to create a modern Ember v2 addon using ember-modifiers, tracked-built-ins, glint single-file components, and TypeScript.
As everyone is familiar with forms on the web and has built interactions for them, we’ll be creating a real world Ember form manager! In the process, we will walk through the challenges I have encountered while designing, building, and ultimately publishing an addon of my own.
In the end of the talk, you will be equipped to build your own addons and know the various pitfalls to watch for.
I got into the front-end bath 3 years or so ago and have been developing with Ember for 2.5 years! I am curious about and love to experiment with new technologies, learn new things, and have a good time while doing it, which happens a lot with the Ember community 😃
+ - time: "12:00 - 13:30"
+ label: "Lunch"
+ - time: "13:30 - 14:00"
+ label: "From El Jardín to Ember: The Aittendee Experience"
+ description: >
+
Ember meets art and AI in ‘From El Jardín to Ember: The Aittendee Experience’.
Our presentation starts with a deep-dive into the renowned “El Jardín de las Delicias” from the Prado Museum in Madrid. This intricate masterpiece serves as our live test subject, aiding in showcasing ‘Aittendee’, an Ember app that’s listening right along with you.
But ‘Aittendee’ is more than just a passive listener. Its AI-powered functionalities include real-time transcription, summarizing, extracting key definitions, and generating compelling pull quotes. The app interprets and visually illustrates central concepts of the presentation. It keeps the talk on track by providing feedback on pace and sentiment, and it even creates tailored questions from virtual audience members.
But this isn’t magic—it’s Ember. The second segment of our talk will pull back the curtain on ‘Aittendee’s’ inner workings. We delve into Ember’s role, the app’s features and architecture, and the AI APIs that allow such real-time, high-level processing. From detailed code snippets to architectural strategies, we’ll walk through the technical elements that enable this seamless, immersive experience.
Join us on this journey of revelation and innovation, an intersection of art and technology. Whether you’re drawn to the allure of “El Jardín de las Delicias” or just want the technical how-to, you’ll leave with an appreciation for both.
Open source projects need funding and companies need to invest in the technology they build on – not because of morals but because of business interests to secure investments made by building on the technology. In this talk, I'll cover why you'll want to invest, the risks if failing to invest, and the ways that companies can invest.
Marco has been working in web engineering for about 15 years and has used all kinds of technologies in projects of all kinds of sizes. His company Mainmatter offers custom development, team augmentation, and mentoring. He has worked with Ember for many years and is the original author of ember-simple-auth.
Tests should pass or fail. Not both! A flaky test is one that mostly passes, but sometimes fails. This can cause havoc with continuous integration (CI), blocking your team from shipping. We’ll identify what makes a test flaky and learn to spot the signs before shipping a ticking time-bomb to CI.
When given the same set of inputs, we expect our code to produce the same outputs each time. To use the technical term: we expect our code to be deterministic. When our test suite starts to show signs of flakiness, it usually means that a source of non-determinism has creeped into our code. Perhaps our code is influenced by some global state, which we hadn’t previously considered as ‘an input’. Or perhaps there’s a timing issue which introduces a source of randomness to the outcome of a test.
We’ll study examples that demonstrate how a test can pass in some circumstances and fail in others. The examples will be very much within the Ember ecosystem, using Qunit and testem, so it will be easily relatable for the EmberFest audience. Having learned to spot the problems that can cause a flaky test, we’ll develop some strategies to defend against allowing these issues to make their way into production.
+ speakers:
+ - name: "Drew Neil"
+ image: "/images/speakers/drew.jpg"
+ twitter: "nelstrom"
+ - time: "15:30 - 16:00"
+ label: "Snack break"
+ - time: "16:00 - 16:30"
+ label: "Perfecting CI pipeline for Ember projects. Faster and with more insights."
+ description: >
+
I plan to organize my talk around an existing, big Ember project and show gradually how we can improve the CI pipeline. I will start with an unoptimized pipeline and step by step get to a pretty cool setup. I think the listeners will be able to find their situation on one of the slides. I guess that some people will start learning new things from the beginning whereas some (more advanced folks) will find useful information in the next slides. I’m sure everyone will find something exciting that they can start doing in their companies when they are back from the conference.
Most of the talk will be organized around speed - how to make things faster - build faster, test faster, and deliver faster. But I also plan to show how to get more insights from their pipeline. Mostly from tests. CI runs frequently and it’s a missed opportunity to not learn something from these runs.
I connect humans and machines. I write about interfaces, digital products, UX and… indie hacking 💥 Staff Engineer at Phorest. A bit nerdy 🤓 More: https://tomekdev.com/about-me
In this talk I will go over the new component authoring format, template tag or .gjs and .gts. The talk is intended for a more intermediate audience as we will be focusing on more complex component patterns, in conjunction with usage of tracked built-ins and resources. We will cover topics such as: - Introduction to template tag components, including syntax and strict mode. - Examples of template-only components, and components with local variables and fuctions (class-less components) - Examples of importing framework-provided and addon-provided template helpers and modifiers - Component composition patterns - Local components - Dynamic components - Using tracked built-in classes in components - Patterns for Array and Map - Using Resources - Examples with cell, use - Working with data fetching - What and how you can use today in your applications and addons
locks is a founding member of the Ember Learning core team and a frequent open source contributor. Their latest interests are playing Netrunner and Padel.
+ - time: "10:45 - 11:15"
+ label: "The Ember Guides in French 🇫🇷"
+ description: >
+
Translating the Ember Guides to French? English is accepted as the common language developers use to share their work, so what’s the point? Is a translation really worth it? I’ll tell you a bit about this in this talk. To sum it up: there’s a huge difference between being able to set a few variable names in English in a codebase and understanding advanced topics covered by the documentation. I consider language as part of the accessibility, and I strongly believe the Ember Guides deserve to be as accessible as possible because they’re not only about learning Ember, they’re about getting what you’re doing to become a better developer.
In the main part of the talk, we will learn how the Ember Guides are built and what are the challenges to customize a fork to create this kind of translated website. We will explore three technical aspects: a bit of Ember magic to customize the UI, a series of amazing spell-checking tools maintained by unifiedjs collective, and a bunch of git commands to follow the official Ember Guides updates. Along the way, I’ll mention an addon with the barbaric name of “guidemaker-ember-locale-template”, which aims at being flexible enough to help with any translation project for the Ember Guides. So who knows, maybe this talk could be inspiring?
My name is Marine Dunstetter. Here are 3 things about me that might explain the existence of this talk: I am a frontend engineer working mainly with Ember, I am French, and I love writing. I write Fantasy novels, which has nothing to do with dev ; but I am also interested in writing good docs and I am not scared about translation work, which has a lot to do with dev.
+ - time: "11:30 - 12:00"
+ label: "EmberData 5.x: The New Era of Backend Integration"
+ description: >
+
Join us on a thrilling dive into the world of EmberData like you’ve never seen it before. We’re peeling back the layers on the latest, game-changing updates and the super-powered APIs that are making developers’ lives easier. Ever been puzzled by how to integrate your backend with EmberData? We’re here to light the way, using the PocketBase as backend to show you exactly how it’s done. Through a live demo and real, hands-on code, we’ll walk you through the steps to supercharge your own projects. This talk is perfect for developers at any level who are ready to level up their EmberData game. Grab this opportunity to stay ahead of the curve and master the new release of EmberData. See you there!
Consultant at Galar Systems, S.L. I am doing professional web development since 2013: first doing Rails and later (2015) Ember. Started with few apps at Ember 1.8. In my free time I am working on app to help new parents track kids activities. Huge mechanical keyboards enthusiast
Having individuals consistently work on Frontend Infrastructure can supercharge your organization by creating a separation of concerns between infra and product, making your product engineers more productive and helping your organization keep up to date with modern advancements in technology.
When codebases are small it’s easier for product engineers to make updates improving frontend infrastructure alongside their regular product work. Unfortunately, when codebases and teams scale, this becomes harder to do well. Large codebases become harder to maintain over time, resulting in longer timeframes to make sweeping improvements or adopt new standards. This makes it untenable to rely solely on product engineers to make sporadic improvements due to conflicting priorities with their team.
But how should this team operate? How should it decide what to work on? How should it measure success? I’ll be discussing our journey to adopt such a team. We’ll cover how we think about our roadmap, how we prioritise work and how we measure and define success.
Pat is a Staff Engineer on Intercom’s Frontend Technology team. His team’s mission is to supercharge product teams at Intercom by providing world-class tools, education, and guidance, enabling them to deliver value and accelerating them through the UI lifecycle.
+ - time: "15:00 - 15:30"
+ label: "Q&A with Ed Faulkner"
+ description: >
+
Ed Faulkner, member of Ember.js Steering Committee will answer attendees' questions in a Q&A session.
As the Ember.js framework continues to evolve and thrive, it presents developers and tech leaders with exciting opportunities to create monumental changes in their projects. However, driving these changes while gaining crucial buy-in from teams and stakeholders can be a daunting challenge. This conference talk aims to equip attendees with the knowledge and strategies needed to navigate this path successfully.
In this engaging session, we will delve into the world of Ember.js and explore the power of the Embroider build system. Through real-world case studies and practical insights, attendees will discover how to elevate their Ember.js projects and foster a collaborative environment that embraces transformative change. We will explore effective communication techniques to convey the vision and benefits of these changes, leading to greater support from all stakeholders.
Whether you are an experienced Ember.js developer or just beginning your journey, this talk offers valuable takeaways for all skill levels. Attendees will gain a deeper understanding of Ember.js Embroider, unlocking its potential to revolutionize their development process and drive lasting impact.
Join us for this enlightening session as we unravel the secrets of Ember.js Embroider and learn how to weave innovation and buy-in into every aspect of our Ember.js projects. Let’s embark on this adventure together, empowering attendees to lead their teams toward a brighter and more successful future with Ember.js!
With over 15 years of experience as a frontend developer proficient in various frameworks, I am deeply passionate about tackling complex problems that span frontend, backend, and DevOps, all with the ultimate goal of enhancing the developer experience. Continual growth and staying up-to-date with the latest technology are at the core of my approach. I believe in fostering collaboration within the development community and sharing insights to empower others.
+ - time: "17:30 - 18:00"
+ label: "Panel: Ember – Why and Where?"
+ description: >
+
We'll be talking with a group of panelists about why their teams chose Ember and why they continue to build on it today. We'll also talk about what use cases and non-use cases for Ember are. We'll be openly talking about the concerns the ecosystem currently has about Ember's future and hear about the factors that companies with significant investments in Ember consider when making decisions about their future investment in the framework.
Jamie is an engineer at HashiCorp and a long-time Ember aficionado. He ran Ember meetups and conferences in London for about four years, has spoken twice at EmberConf, and was a relatively early contributor to Ember CLI. These days he’s based near Barcelona and spends his time with his family, learning Catalan, and learning to play the clarinet.
Pat is a Staff Engineer on Intercom’s Frontend Technology team. His team’s mission is to supercharge product teams at Intercom by providing world-class tools, education, and guidance, enabling them to deliver value and accelerating them through the UI lifecycle.
Jesse is the Engineering Manager for Heroku’s Front-End Engineering Teams. Heroku has been using Ember since 2014 and is actively expanding its Ember codebase. Jesse is based in southern Colorado where he enjoys the outdoors, especially skiing, and spends way too much time making a single cup of coffee.
+ - time: "18:00 - 22:00"
+ label: "Closing Party"
diff --git a/_data/speakers.yml b/_data/speakers.yml
new file mode 100644
index 00000000..a5f1ac57
--- /dev/null
+++ b/_data/speakers.yml
@@ -0,0 +1,19 @@
+- name: "Ed Faulkner"
+ avatar: "edward-faulkner.jpeg"
+ twitter: "https://twitter.com/eaf4"
+ web: "https://www.linkedin.com/in/edwardfaulkner"
+
+- name: "Melanie Sumner"
+ avatar: "melanie-sumner.jpg"
+ twitter: "https://twitter.com/a11ymel"
+ web: "https://www.linkedin.com/in/melaniesumner"
+
+- name: "Preston Sego"
+ avatar: "l-preston-sego-iii.png"
+ twitter: "https://twitter.com/nullvoxpopuli"
+ web: "https://www.linkedin.com/in/lprestonsegoiii/"
+
+- name: "Chris Thoburn"
+ avatar: "chris.jpg"
+ twitter: "https://twitter.com/not_runspired"
+ web: "https://www.linkedin.com/in/runspired/"
diff --git a/_data/sponsors/dinner.yml b/_data/sponsors/dinner.yml
new file mode 100644
index 00000000..8db1fd45
--- /dev/null
+++ b/_data/sponsors/dinner.yml
@@ -0,0 +1,2 @@
+- link: http://mainmatter.com/ember-consulting/
+ logo: mainmatter-black
diff --git a/_data/sponsors/partners.yml b/_data/sponsors/partners.yml
new file mode 100644
index 00000000..29fe6f9a
--- /dev/null
+++ b/_data/sponsors/partners.yml
@@ -0,0 +1,2 @@
+- link: https://phorest.com
+ logo: phorest.png
\ No newline at end of file
diff --git a/app/application/-slider/template.hbs b/_data/sponsors/premier_partners.yml
similarity index 100%
rename from app/application/-slider/template.hbs
rename to _data/sponsors/premier_partners.yml
diff --git a/_data/sponsors/supporters.yml b/_data/sponsors/supporters.yml
new file mode 100644
index 00000000..46a372e9
--- /dev/null
+++ b/_data/sponsors/supporters.yml
@@ -0,0 +1,2 @@
+- link: https://www.hashicorp.com
+ logo: hashicorp.svg
\ No newline at end of file
diff --git a/_data/year2022/schedule/day1.yml b/_data/year2022/schedule/day1.yml
new file mode 100644
index 00000000..7d4d8b0b
--- /dev/null
+++ b/_data/year2022/schedule/day1.yml
@@ -0,0 +1,150 @@
+- time: 09:00 - 10:00
+ isBreakTime: true
+ text: Doors open & Breakfast
+
+- time: 10:00 - 10:30
+ speaker: Melanie Sumner
+ talk: "Universal Design: A new process for better apps"
+ id: melanie-sumner
+ image_extension: jpg
+ description: "
In this talk, you will learn about Universal Design: what it is and what it isn't; the principles behind Universal Design; how it's already being used in other industries; and how you can apply some of these principles while building your apps for improved outcomes for all users.
"
+ bio:
+
Melanie is a decorated, disabled military veteran who decided to turn her hobby (writing code) into
+ her second career after her enlistment ended. She now works as a Senior Engineer in Design Systems
+ at
+ HashiCorp.
+ She is an active member of the Ember.js core team, a member of the WAI-ARIA working group, and a judge for the
+ CSS Design Awards. She is
+ also a member of the Open
+ Source Foundation and the Long Now Foundation.
+
+ The ember-render-modifiers README states that the modifiers are “very useful for quickly bridging the
+ gap between classic components and Glimmer components, but they are still generally an anti-pattern.”
+ It also says that you should “rethink your functionality rather than use these modifiers as a
+ crutch.”.
+
+
+ However, the README doesn’t give any real guidance on what we should do instead.
+
+
+ In this talk I’m explain why these modifiers are problematic and explore the two main use cases I’ve
+ seen ember-render-modifiers used for and how we can go about replacing them with modern Ember patterns
+ that will set us up for success in the future. And finally, after this talk, we’ll have a resource to
+ which we can point future engineers when they scratch their heads about how to avoid these modifiers.
+
"
+ bio: "
+ Senior Product Engineer, helping enable engineers and increasing developer productivity @ Intercom.
+ I help organize Ember Europe and I co-authored that deployment thing a while back.
+
"
+
+- time: 11:30 - 12:00
+ speaker: Dries de Lange
+ talk: Building a phygital platform with Ember.js
+ id: dries-de-lange
+ image_extension: png
+ description:
Have you ever been to a museum where you used an app or touchscreen to deep dive into a subject? At Ocular, we build phygital applications for museums and showrooms, all with Ember.js. This talk will cover how we started with Ember.js, and how we went from physical installations to virtual showrooms.
+ bio:
Front-end engineer, working with Ember.js for five years. At Ocular, I develop web-based applications for museums, exhibitions and company showrooms for various audiences. My goal is to build apps that are innovative, creative and helpful to people.
+
+- time: 12:00 - 13:00
+ isBreakTime: true
+ text: Lunch
+
+- time: 13:00 - 13:30
+ speaker: Mo Fiebiger
+ talk: Two Ember Apps Become One
+ id: mo-fiebiger
+ image_extension: "jpeg"
+ description: "
+ Have you ever imagined how you would be challenged to embed one Ember app inside another? Well, if you
+ have, then you’re in luck and if you haven’t, buckle up, because it’s gonna be a weird 30 minutes!
+
+
+ Just like every developer, here at Phorest, we are all dealing with the impact of legacy code. In turn
+ this can lead to difficult decisions, but even more creative solutions. While migrating our entire
+ system to a browser only product, we found a solution to embed our older Ember application into our
+ current Ember application via… you guessed it… an iframe.
+
+
+ With the tale of two apps becoming one, we can deliver a browser product to our users faster than
+ ever. Alongside this, we will discuss the technical decisions made from rooting between the two
+ applications all the way to standardising styles. What seemed impossible in the beginning now is a
+ seamless experience of one magical Ember application inside another.
+
"
+ bio: "
+ Mo is a Software Engineer at Phorest Salon Software and her background is in visual arts and
+ psychology. Before she started her masters in computer science, she had never written a single line
+ of code. This was a challenge, but looking back, Mo feels taking the leap of faith was the best
+ thing she has ever done. Now, Mo’s passion is being an advocate for diversity in tech and teaching
+ others to grow their technical skills as a Co-host on Fizz Buzz Podcast.
+
"
+
+- time: 13:45 - 14:15
+ speaker: Alexis Falaise
+ talk: Bootstrap your dashboard the right way
+ id: alexis-falaise
+ image_extension: "png"
+ description: "
+ Drawing on the web has never been straightforward, and multiple standards have been emerging to adress
+ that complexity. Whether you decide to opt for the versatility of HTML canvas, or keep closer to the
+ scalability and resilience of SVGs, choosing the right library to fulfill all product requirements can
+ be dreadful.
+
+
+ What are the critical questions to address when building a dashboard? How to keep accessibility in
+ mind? And first of all, which library should you go for when working with Ember?
+
"
+ bio: "
+ Hi ! I'm Alexis. I've been passionated with crafting intuitive interfaces for quite some time, and
+ I'm now taking that passion to another level working at Qonto. I spend most of my time listening to
+ (or making) music when not working on lines of code - when I can't do both 😄.
+
+ Ember gives developers the power to write tests and be confident about deployments. But have you ever
+ made a change that broke your application layout while still passing all tests?
+
+
+ In this talk we’ll explore the world of visual testing to keep your app pixel perfect and have that
+ peace of mind when deploying. By the end, you should be able to understand how visual testing works
+ and how to set it up in a reliable way, even for applications with complex data structures and time
+ dependent logic.
+
"
+ bio: "
+ I’m a software engineer from Belgium. As a passionate developer I love all things tech and did
+ projects ranging from back-end and mobile app development, to front-end development as well. I’m
+ currently working at OTA Insight where I’ve had the pleasure to build ambitious web applications
+ with Ember for 4 years and counting.
+
+ talk: "Panel: Data in Ember"
+ id: panel-data-in-ember
+ image_extension:
+ description:
+
+- time: 16:15 - 16:45
+ speaker: Yehuda Katz
+ talk: Starbeam, and what it means for Ember
+ id: yehuda-katz
+ image_extension: "jpeg"
+ description:
+ bio:
Yehuda Katz is passionate about all things Open Source. He is one of the creators of Ember.js, a member of the Rust Core Team, and a retired member of the Ruby on Rails and jQuery Core Teams. He is a member of ECMAScript's TC39 standards committee, and a former member of the W3C's TAG (Technical Architecture Group). His 9-to-5 home is at the startup he founded, Tilde Inc.. There he works on Skylight, the smart profiler for Rails, and does Ember.js consulting.
+ Edward Faulkner is a member of the Ember Core Team and the creator of Ember’s official animation
+ library.
+ His open source code is running on mainstream gaming consoles, major social media sites, and hordes
+ of
+ enterprise applications. His consultancy, Polynomial LLC, leads ambitious software projects for a
+ diverse
+ group of businesses and nonprofits. He was a research associate of the MIT Media Lab’s Social
+ Computing
+ group, and was a lead engineer at Akamai Technologies, where he built critical, internet-scale
+ security
+ infrastructure. He earned an MEng and BS in Electrical Engineering and Computer Science at MIT.
+
Ed resides in Somerville, Massachusetts with his wife and two sons.
+
+ Performance culture is a unique culture that is not often seen among companies. Only the ones that
+ care
+ enough
+ and invest time in it can see the benefits. Up until Embroider was released, the Ember community, even
+ if
+ wanted to embrace performance culture, wasn't able to actually iterate on the results.
+
+
+ In my talk, I'll go through the goals we've set and how we accomplished some great results by using
+ Embroider
+ and Webpack. Our journey is not finished but I already have a bunch of tricks and prescriptions for
+ you.
+ I'll
+ show what are the tools we use to make sure we keep the quality high.
+
+ bio:
+ Tomek Nieżurawski, front-end dev by day, full-stack by night. Staff Engineer at Phorest. I love the
+ Web
+ and
+ creating user-centric interfaces. In my spare time, I work on an app for dog owners.
+
+
+- time: 11:30 - 12:00
+ speaker: Floris List
+ talk: "Test as if you're in someone else's shoes"
+ id: floris-list
+ image_extension: jpeg
+ description:
+ Having Ember historically so closely modelled to Ruby on Rails, it is easy to also apply the same approach
+ in
+ writing tests for both. What has been shown in the last 10 or so years is that backends are fundamentally
+ different from frontends. This fundamental difference also requires a fundamentally different approach to
+ thinking about and writing tests. This shift in thinking can be difficult or underestimated by developers
+ who
+ come from a Rails/backend background, which is the case for plenty of Ember developers. The result is a vast
+ and
+ diverse pool of tests written using different patterns.
+
+
+ At Intercom we have done testing with and without thinking about the user first. Inevitably a code base
+ being
+ worked on by many engineers brings many different patterns together. This results in a highly diverse test
+ suite
+ that a lot can be learned from. Taking stock of whatever is present and seeing how we can improve upon what
+ exists following a set of guiding principles makes Intercom an org with ever improving code quality. This
+ talk
+ will bring some real world examples of patterns (good and bad) that live within the Intercom codebase today.
+ We
+ will (potentially) go over some refactoring of these real world examples to solidify the learnings and
+ principles outlined in the talk. With anecdotal evidence it becomes easier to see the power and value of
+ user
+ centric testing.
+
+ bio:
+ Currently a Product Engineer at Intercom, naturally very curious with a drive to understand how
+ great
+ products
+ are made from the ground up. On a continuous journey to thoroughly grasp the full stack of product
+ development, from frontend to DevOps to shipping at scale to a hint of design. Beyond technical
+ stuff he
+ loves
+ traveling across the globe and learning the different cuisines of countries he travels to (oh and
+ coffee
+ is
+ great).
+
+ Feature flags are a common way to deploy ongoing work into production and keep it under radar until it is ready to be put in front of our users. The thing is: there is more thought that should be put into this practice, it’s not just about flipping a switch to turn a feature on. Developer experience can be greatly affected if a team doesn’t come up with processes around how to manage feature flags in an agile process.
+
+
+
+ Cleaning up feature flags gets forgotten and complexity accumulates. And how about tests, how do you make sure all paths get properly covered? I will cover the good, the bad, and the ugly aspect of feature flags, how we can put them into place effectively and, as a bonus, the extra benefits we get from this.
+
"
+ bio: "
+ Gonçalo is a Portuguese computer engineer turned front-end developer, currently living in Lyon (France) and working at CrowdStrike. Recurse Center alumnus, codebar London co-organiser, amateur ultrarunner & climber, jack of all trades. Grows a beard most of the time.
+
+ When we started building Qonto, we knew that the default path of piling up features would lead to a
+ codebase
+ where it's hard to implement changes and easy to create bugs. That's why we adopted Ember.js. The
+ framework
+ provided us with stable foundations and consistent practices, making it technically easy for our team
+ of 50
+ engineers to build new features or make improvements in any domain of our apps.
+
+
+ Similarly, we know that the default path of growing a company by specializing teams leads to Big
+ Company
+ Disease. Attempts to create economies of scale cut the connection with customers. Focus shifts to
+ defining
+ scopes, setting up procedures, and standardizing work. Agile withers to solidified processes and
+ tools, with
+ little care given to individuals and interactions. Team mood suffers.
+
+
+ What if we had a framework?
+
+ bio:
+ I'm CTO at Qonto, the leading European business finance solution. I was a Django core developer for
+ a
+ decade,
+ contributing to most components of the framework and also to the governance of the project. These
+ days I'm
+ focusing my open-source efforts on the websockets Python package. I spend most of my life keeping
+ things
+ as
+ simple as they can be and making it easy for engineers to build good code.
+
+
+- time: 14:30 - 15:00
+ speaker: Chris Manson
+ talk: Bottled Ember - Batteries Included Web Framework, tiny tiny living space
+ id: chris-manson
+ image_extension: jpg
+ description:
All Ember addons come with the concept of a “dummy app”. This has been super useful to test our addons and has even been part of the reason why we have been able to support so many different versions of Ember from a single addon using ember-try scenarios. This talk gives a bit of detail on how things work with “classic” V1 addons and dummy apps and talks a little bit about why this can’t work for new Embroider V2 addons.
I will then go into a detail on a particular setup that could bring the simplicity and magic of dummy apps to the standards focused Embroider world. This should make it super easy for developers to tests their apps in all the versions of Ember that they want to.
+ bio:
Developer at @Mainmatter, creator of Empress and member of the Ember Core Learning Team.
\ No newline at end of file
diff --git a/_includes/2020/footer.html b/_includes/2020/footer.html
new file mode 100644
index 00000000..6b6be413
--- /dev/null
+++ b/_includes/2020/footer.html
@@ -0,0 +1,21 @@
+
\ No newline at end of file
diff --git a/_includes/2020/logo_row.html b/_includes/2020/logo_row.html
new file mode 100644
index 00000000..94d96e43
--- /dev/null
+++ b/_includes/2020/logo_row.html
@@ -0,0 +1,7 @@
+
\ No newline at end of file
diff --git a/_includes/2021/footer.html b/_includes/2021/footer.html
new file mode 100644
index 00000000..965d8101
--- /dev/null
+++ b/_includes/2021/footer.html
@@ -0,0 +1,18 @@
+