owned this note
owned this note
Published
Linked with GitHub
# NixCon Event Script Day 1
#### editing notes to others
formatting
@role: action
[Outline for NixCon Talk Structure](/vg-GxknGTWyRrcV7bujLPQ)
#### todo's
* todo: give moderator guidance
* todo: lightning talks will be shorter/difference cues
* encourage in announcements to put clapping emoji's since they can't clap physically
## Before event starts
### 30 minutes before stream start
broadcast live background (on loop) ([media here](https://github.com/nixcon/2020.nixcon.org/tree/master/media))
### 10 minutes before start
coordinate / ensure all staff are present and ready
### 1 minute before start
Create a transition from the background image to showing WORLDofPEACE
#### "voice of god" intro for event and worldofpeace
Have @puck insert the super secret sample into the broadcast.
> Welcome fellow nixers to NixCon 2020 Online Edition. Please welcome your host WORLDofPEACE!
## Opening
### Opening ceremony
#### Broadcast transition to WORLDofPEACE (with static NixCon background?)
**WORLDofPEACE**
##### Greetings & good morning/afternoon/evening
Hello everyone, I'm soo happy to be here
##### introduce self
My name is WORLDofPEACE, and I will be your MC for this conference.
A little about me, if you're not already familiar from interacting with the NixOS community:
* I'm NonBinary and my pronouns are they/them
* I've been with NixOS since 2018
I had a great sense of intuition that this would be a good place for me.
And couldn't have been more correct.
* The things I've achieved in NixOS, aside for being one of the top contributors for a couple of releases,
Have mostly been collective wins.
* I was co-release-manager for NixOS 20.03 and for 20.09, and I'd like to think I changed lots of stuff up for the better
And lastly, just generally within the NixOS community, I try to be a leader and show everyone path ways to kind and compassionate
interaction. And from the response I've gotten I'd like to consider myself a very welcomed, accepted, and appreciated member.
I try my best to return everything I've been given ten fold. Leaving as many sparkles behind as possible.
##### why are we here (at this NixCon event)?
With my introduction out of the way, let's talk about the intentions behind why we're all here today.
NixCon is a conference to share the joy that Nix has given us. Whether its in your personal projects, using it at work, or just being
a part of the community. I've heard so many stories and I've never seen a community having such an impact on people personally.
There's really something special here, and today is our opportunity to also broadcast that as far as possible.
Though, usually we'd be doing this all in person. An event for people to gather and actually see and hear these people as a tangible experience.
Unfortunately, this year it wasn't a feasible option with all the travel rescrictions because of the impact of Covid-19.
But I don't take this as a tragedy at all, and I'll tell you why you shouldn't either.
I see it like, having this conference in an online setting is just another option, and like anything, it will have its upsides and its downsides.
While it may come with not being able to share a physical presense, this gives an opportunity to those
who can't travel internationally the ability to participate. And for those who can travel, you're going to have access to this
event without needing to board a plane, or trying to navigate a country that may not be familiar to you.
This is anytime access without any giant carbon emission. I hope everyone can see this as a great opportunity.
Let's also take this moment, collectively, to release any attachment you have on the outcome of this event.
Me and the organizers have done the maximum amount of planning that we could do, but even then we can't control everything.
And neither can you, whether you're a speaker focusing on the delivery of your talk, a viewer hoping for an experience similar to that of a physical NixCon,
or my dear organizers who so greatly just want things to work out smoothly. These are many variables but they're all free to mutate. And maybe it's cool to be mutant.
So instead, please turn your focus onto the process. This is for us. Let's all be selfish, because it's okay to be selfish, and share this fun together.
We get to create this singularly defined moment together, travelling out into the internet and onto the minds of others. It's always up to you what something means,
and for something to feel special it has mean something special to you.
I really hope you all consider this at heart, and just surrender and undo. And just let it mean something special to you.
##### Share logistics to viewers
Describe features of the conference
* overall schedule and event flow
We have talks with Q&A's that are five minutes long. And the talk duration is about 20 but people might eat into their Q&A time
* talks will have QA
* participate in IRC and Jitsi
* if you experience technical difficulties, contact @nbathum
* breakout rooms
@nbathum, our moderator, is going to be sharing breakout room links for each talk when the end.
##### Thank yous
Viewers
organizers
sponsors
* Thank Equinix Metal
* Thank RelationalAI
* Thank Tweag
* Thank nixbuild.net
* Thank Mutable
##### play Mutable perk
##### some kind of transition statement into the talks
## Talk 1 : Nix modules: Improving Nix's discoverability and usability
### Talk 1 Intro
#### Broadcast transition to @worldofpeace and @speaker
##### Introduce speaker
Speaker Name: Eelco Dolstra
Pronouns: He/Him
Talk Name: Nix modules: Improving Nix's discoverability and usability
Topic of the talk:
Nix's configuration language is quite powerful, but suffers from a
lack of discoverability, usability and consistency. In this talk, Eelco will describe
an experimental Nix module system that provides a consistent,
discoverable mechanism to write configurations such as packages and
NixOS systems, and show how this enables a better user experience for
both new and advanced users.
Speaker Background:
* Senior Software Engineer at Tweag I/O
* PhD in Computer Science from Utrecht University in 2006 and was a
postdoctoral researcher at Utrecht University and Delft University of
Technology
* 2012 to 2018 he was a Software Engineer at LogicBlox
* PhD research project at Utrecht University, he developed Nix, the purely functional package manager.
* Together with Armijn Hemel, he started the NixOS Linux distribution in 2006
* Joined Tweag I/O in 2018
* Serves as President of the NixOS Foundation.
###### Script
### Talk 1 : T+0 talk start
@speaker:
shares their presentation and begins talk.
### Talk 1 : T+15m signal to speaker
@moderator: 5 minutes warning for normal talk time (ending at T+20 minutes, for 5 minutes QA)
### Talk 1 : T+20 time for Q&A / signal to speaker
If speaker is not done have @moderator signal privately
> You're into your Q&A time now
They can continue through Q&A time a bit if they insist.
### Talk 1 : T+20 Q&A
@worldofpeace: thanks speaker and invites questions
@moderator: Gather these questions into a pad for WORLDofPEACE to see
@worldofpeace Read off questions from pad to speaker.
### Talk 1 : T+25 Talk end
If conversation is active it is okay to go over by a minute or three.
#### Thank the speaker
People can put clapping emojis 👏 or *loud clapping noises* into the chat.
#### Direct parties to talk breakout room
Mention the five minute break also.
https://jitsi.nixcon.org/nix-modules
#### Broadcast transition to background
## Talk 2: An Intelligent System to Recommend Configurations
### Talk 2 Intro
#### Broadcast transition to @worldofpeace and @speaker
#### Introduce speaker
Speaker Name: Yisroel Newmark
Pronouns: They/Them (confirm preference?)
Talk Name: An Intellegient System to Recommend Configurations
Topic of the talk:
The idea of recommending configurations automatically, as well as its applications and challenges, as well as how it functions within the larger community.
Speaker Background:
* Linux enthusiast since (what year?)
* Since they found NixOS they became enamored with the declarative control it has
Annecdotal Information (if applicable):
##### Script
Yisroel Newmark is presenting “An intellient System to Recommend Configuration” and it centers on the idea of
recommending NixOS configurations automatically, the applications and challenges of doing this, and how this
could function in the coummunity at large.
And I’m also pleased to say this talk will have a live demonstration.
Also, if you were wondering how Yisroel got into NixOS, (they?), have been a linux enthusiast since (what year?) and
one day became enamored with the declarative control that NixOS has.
### Talk 2 : T+0 Talk start
@speaker:
shares their presentation and begins their talk.
### Talk 2 : T+15 Signal to speaker
@moderator: 5 minutes warning for normal talk time (ending at T+20 minutes, for 5 minutes QA)
### Talk 2 : T+20 Time for Q&A / signal to speaker
If speaker is not done have @moderator signal privately
> You're into your Q&A time now
They can continue through Q&A time a bit if they insist.
### Talk 2 : T+20 Q&A
@worldofpeace thanks speaker and invites questions
@moderator:
Gather these questions into a pad for WORLDofPEACE to see
@worldofpeace Read off questions from pad to speaker.
### Talk 2 : T+25 Talk end
If conversation is active it's up to @worldofpeace to go over a minute or three.
#### Thank the speaker
People can put clapping emojis 👏 or *loud clapping noises* into the chat.
#### Direct parties to talk breakout room
https://jitsi.nixcon.org/intelligent-system
#### Broadcast transition to background
We have a five minute break between talks.
## Talk 3 : Nix at Chatroulette v2
### Talk 3 Intro
#### Broadcast transition to @worldofpeace and @speaker
#### Introduce speaker
Speaker Name: Gabriel Volpe
Pronouns: They/them (confirm preference?)
Talk Name: Nix at Chatroulette v2
Topic of the talk:
This talk is going to interest people who would like to make their job and the
lives of people at their workplace better with Nix.
And would like to convince their employer and colleagues that using Nix is a good idea.
Gabriel will be going through (their?) experience on how (they?) did exactly this working at Chatroulette.
Speaker Background:
* Gabriel has been working at Chatroulette since [] and is software engineer
* highly active contributor to opensource, their github is @gvolpe with a total of 2.4k commits
* author of Practical FP in Scala: a hands on approach https://leanpub.com/pfp-scala
Annecdotal Information (if applicable):
Girl the background is enough.
##### Script
### Talk 3 : T+0 Talk start
@speaker:
shares their presentation and begins their talk.
### Talk 3 : T+15 Signal to speaker
@moderator: 5 minutes warning for normal talk time (ending at T+20 minutes, for 5 minutes QA)
### Talk 3 : T+20 Time for Q&A / signal to speaker
If speaker is not done have @moderator signal privately
> You're into your Q&A time now
They can continue through Q&A time a bit if they insist.
### Talk 3 : T+20 Q&A
@worldofpeace thanks speaker and invites questions
@moderator:
Gather these questions into a pad for WORLDofPEACE to see
@worldofpeace Read off questions from pad to speaker.
### Talk 3 : T+25 Talk end
If conversation is active it's up to @worldofpeace to go over a minute or three.
#### Thank the speaker
People can put clapping emojis 👏 or *loud clapping noises* into the chat.
#### Direct parties to talk breakout room
The room key is chatroulette. And I will be forcing all you speakers in there.
#### Announcements
TO ASK A QUESTION DURING QA, JOIN #nixcon-qa .... then ping nbathum for your question
#### Broadcast transition to background
We have a five minute break between talks.
https://jitsi.nixcon.org/chatroulette
## Talk 4 : Nix Flakes in Production: What, Why, and How
### Talk 3 Intro
#### I forgot to say to clap for Gabriel
And mention u can put hexadecimal if ur nonbinary
#### Broadcast transition to @worldofpeace and @speaker
#### Introduce speaker
Speaker Name: Alexander Bantyev
Pronouns: They/Them
Talk Name: Nix Flakes in Production: What, Why, and How
Topic of the talk:
Alexander’s experience using Nix Flakes in production at Serokell.
they've been using Nix there for over 5 years and they’ve? just started their
internal effort to use Flakes in build infrastructure and projects.
This talk is going to have a refresher on what Flakes are, so if you’ve
been confused by them here’s your chance to learn, have explained why Flakes are soo
promising, and just sharing general experiences and advise on the matter.
##### Script
### Talk 3 : T+0 Talk start
@speaker:
shares their presentation and begins their talk.
### Talk 3 : T+15 Signal to speaker
@moderator: 5 minutes warning for normal talk time (ending at T+20 minutes, for 5 minutes QA)
### Talk 3 : T+20 Time for Q&A / signal to speaker
If speaker is not done have @moderator signal privately
> You're into your Q&A time now
They can continue through Q&A time a bit if they insist.
### Talk 3 : T+20 Q&A
@worldofpeace thanks speaker and invites questions
@moderator:
Gather these questions into a pad for WORLDofPEACE to see
@worldofpeace Read off questions from pad to speaker.
### Talk 3 : T+25 Talk end
If conversation is active it's up to @worldofpeace to go over a minute or three.
#### Thank the speaker
People can put clapping emojis 👏 or *loud clapping noises* into the chat.
#### Direct parties to talk breakout room
#### Broadcast transition to background
We have a five minute break between talks.
#### Direct parties to breakout room
https://jitsi.nixcon.org/flakes-production
#### Broadcast transition to WORLDofPEACE
## End-of-block Announcements
#### Sign off
This is the end of this block. We have a 1.5 hour break.
In the meantime you can get away from the computer a bit
or if you want to stay here and hang out there is always
{list of platforms & places to hang out}
We'll be back at {Block 2 Start}. Bye!
#### Broadcast transition to background
How do we keep broadcasting but with a different background saying we're taking break for x minutes?
@puck How do we do this in a way that's similar to youtube's "Queue" feature?
## Food Break
food break. ~~1.5 hours~~
due to logistical issues,
Our break is extended,
Domen's talk will start at it's currently scheduled time
We'll be back at 14:45 UTC (approximately two hours from now)
---
### 1 minute before session 2 starts
#### Broadcast transition to WORLDofPEACE
### Block 2 greetings
#### Welcome back.
Hello again everyone.
We're back and kicking off the second half of today's conference.
#### Brief logistics recap
In case you've forgotten, here's a quick recap of the logistics of the conference:
We have 5 more talks today. They are 25 minutes, and the last 5 minutes of the talk speakers will have a short Q&A, but it's possible
that speakers could eat into that time.
The main way to particpate in the talk would be directing a question to a speaker during the Q&A.
You can do this by asking your question in #nixcon-qa, and @nbathum (our mod), will feed those to me so I can direct it to the speaker.
The main #nixcon channel is just for general and won't be watched for questions.
There are also breakout rooms for each talk and we'll be **forcing** our speakers to move into these rooms after their talk ends.
Those will be announced at the closing of talks and linked by @nbathum in #nixcon on Freenode. And you can continue to have further discussions
with them there if possible.
And lastly if you experience any technical difficulties please contact @nbathum in a PM and he will try his best to get back to you.
#### Thank yous
Thank you 'adjective' viewers, speakers, and sponsors!
* Thank Equinix Metal
* Thank RelationalAI
* Thank nixbuild.net
* Thank Mutable
* Thank Tweag
Tweag is a global research and development team for hire, applying innovative
computer science techniques to help its clients improve software speed, reliability and reproducibility.
Tweag invests heavily in Nix, employing some of its leading contributors and directly
funding new tools and features. In 2020 alone, this has included work on Flakes, NixOps 2.0,
poetry2nix, software heritage integration, the website redesign, and content-addressed storage.
Follow the Tweag blog and Twitter account to keep up to date with the team’s work, or get in touch with them at tweag.io!
## Block 2
## Talk 5 : How to change Nix ecosystem to become mainstream?
Domen would prefer if he could answer question interactively during the talk.
### Talk 5 Intro
#### Broadcast transition to @worldofpeace and @speaker
#### Introduce speaker
Speaker Name: Domen Kozar
Pronouns: He/Him
Talk Name: How to change nix ecosystem to become mainstream
Topic:
We'll first dive into why this matters for the community. Then we'll take a look at current roadblocks and possible solutions to them.
Annecdotal Information (if applicable):
He decided to be a programmer instead of a gamer. Nix was the better option.
##### Script
### Talk 5 : T+0 Talk start
@speaker:
shares their presentation and begins their talk.
### Talk 5 : T+20 Signal to speaker
@moderator: 5 minutes warning for normal talk time (ending at T+20 minutes, for 5 minutes QA)
### Talk 5 : T+25 Talk end
If conversation is active it's up to @worldofpeace to go over a minute or three.
#### Thank the speaker
People can put clapping emojis 👏 or *loud clapping noises* into the chat.
#### Direct parties to talk breakout room
https://jitsi.nixcon.org/change-ecosystem
#### Broadcast transition to background
We have a five minute break between talks.
## Talk 6 : Remote deployments with NixOS and Nixops at Yakkertech
### Talk 6 Intro
#### Broadcast transition to @worldofpeace and @speaker
#### Introduce speaker
!!! THIS TALK IS PRERECORDED
Speaker Name: Aden Seaman
Pronouns: He/Him
Talk Name:
Topic of the talk:
In this talk Aden will discuss what we do at Yakkertech, some of the software
and computer-related challenges that this brings, the aspects of NixOS that help
us address these challenges and why we chose it, how we use it in practice, and our experience of having used it.
Speaker Background:
* Aden is the CTO of Yakkertech, and is a software developer, engineer, and physicist by training.
* has been using Linux since 1994, and Nix for the past 2 years.
* passionate about math, computers, functional programming, and open source software.
##### Script
### Talk 6 : T+0 Talk start
@speaker:
shares their presentation and begins their talk.
### Talk 6 : T+15 Signal to speaker
@moderator: 5 minutes warning for normal talk time (ending at T+20 minutes, for 5 minutes QA)
### Talk 6 : T+20 Time for Q&A / signal to speaker
If speaker is not done have @moderator signal privately
> You're into your Q&A time now
They can continue through Q&A time a bit if they insist.
### Talk 6 : T+20 Q&A
@worldofpeace thanks speaker and invites questions
@moderator:
Gather these questions into a pad for WORLDofPEACE to see
@worldofpeace Read off questions from pad to speaker.
### Talk 6 : T+25 Talk end
If conversation is active it's up to @worldofpeace to go over a minute or three.
#### Thank the speaker
People can put clapping emojis 👏 or *loud clapping noises* into the chat.
#### Direct parties to talk breakout room
https://jitsi.nixcon.org/remote-deployments
#### Broadcast transition to background
We have a five minute break between talks.
## Talk 7 : Robotnix - Build Android (AOSP) using Nix
### Talk 7 Intro
#### Broadcast transition to @worldofpeace and @speaker
#### Introduce speaker
!!!! THIS TALK IS PRERECORD
Speaker Name: Daniel Fullmer
Pronouns: He/Him
Talk Name: Robotnix - Build Android (AOSP) using Nix
Topic of the talk:
Robotnix enables a user to build Android (AOSP) images using the Nix package manager.
AOSP projects often contain long and complicated build instructions requiring a variety of tools for fetching source code and executing the build.
Speaker Background:
* Started using nixos in 2015/2014 and he really liked the model and got really into it
* Recent grad for Ph.d from yale for electrical engeener and focusing on control theory and distributing compute
* Started as a chief scientist at achilles heel technologies this year 2020
* Interests outside nixos: is a hobbiest at weightlifting and powerlifting
##### Script
### Talk 7 : T+0 Talk start
@speaker:
shares their presentation and begins their talk.
### Talk 7 : T+15 Signal to speaker
@moderator: 5 minutes warning for normal talk time (ending at T+20 minutes, for 5 minutes QA)
### Talk 7 : T+20 Time for Q&A / signal to speaker
If speaker is not done have @moderator signal privately
> You're into your Q&A time now
They can continue through Q&A time a bit if they insist.
### Talk 7 : T+20 Q&A
@worldofpeace thanks speaker and invites questions
@moderator:
Gather these questions into a pad for WORLDofPEACE to see
@worldofpeace Read off questions from pad to speaker.
### Talk 7 : T+25 Talk end
If conversation is active it's up to @worldofpeace to go over a minute or three.
#### Thank the speaker
People can put clapping emojis 👏 or *loud clapping noises* into the chat.
#### Direct parties to talk breakout room
https://jitsi.nixcon.org/robotnix
#### Broadcast transition to background
We have a five minute break between talks.
## Talk 8 : Bringing NixOS to my school
### Talk 8 Intro
#### Broadcast transition to @worldofpeace and @speaker
#### Introduce speaker
Speaker Name: Marc Schmitt
Pronouns: He/Him
Talk Name: Bringing NixOS to my school
Topic of the talk:
The presentation will start with a current state of our learning infrastructure running on Arch Linux, the challenges we face with it, the up- and downsides of migrating to NixOS and what has already been done.
EPITA, a French school of engineers in computer science, is bringing NixOS to its students. Here is a presentation of the challenges of maintaining an infrastructure of more than 800 machines used by students.
Speaker Background:
* Been at EPITA for four years as a student and is finishing next year
* Started using NixOS a year and a half ago when they were in california for a school trip
* wanted a way to manage config with git, tried ansible, then found nixos
* an organizer at Prologin, the French National Computer Science Contest
* Musician and played Viola for 14 years
Annecdotal Information (if applicable):
This is Marc's first time speaking at a conference. Let's all make this a warm experience for him.
##### Script
### Talk 8 : T+0 Talk start
@speaker:
shares their presentation and begins their talk.
### Talk 8 : T+15 Signal to speaker
@moderator: 5 minutes warning for normal talk time (ending at T+20 minutes, for 5 minutes QA)
### Talk 8 : T+20 Time for Q&A / signal to speaker
If speaker is not done have @moderator signal privately
> You're into your Q&A time now
They can continue through Q&A time a bit if they insist.
### Talk 8 : T+20 Q&A
@worldofpeace thanks speaker and invites questions
@moderator:
Gather these questions into a pad for WORLDofPEACE to see
@worldofpeace Read off questions from pad to speaker.
### Talk 8 : T+25 Talk end
If conversation is active it's up to @worldofpeace to go over a minute or three.
#### Thank the speaker
People can put clapping emojis 👏 or *loud clapping noises* into the chat.
#### Direct parties to talk breakout room
https://jitsi.nixcon.org/to-school
#### Broadcast transition to background
We have a five minute break between talks.
## Talk 9 : Nix in the Java ecosystem
### Talk 9 Intro
#### Broadcast transition to @worldofpeace and @speaker
#### Introduce speaker
Speaker Name: Farid Zakira
Pronouns: He/Him
Talk Name: Nix in the Java ecosystem
Topic of the talk:
Java is one of the most popular languages, however there is a fragmented and incomplete solution when it comes to tooling available by NixPkgs.
This talk will go over the current state of affairs (what's available today), what's so difficult about Java compared to other supported languages
in NixPkgs, and a proposed solution aimed at filling the gap.
Speaker Background:
* a software engineer, father and wishful amateur surfer.
* Has over a decade of experience writing software and am currently employed by Google.
* prior experience has largely centered around building public cloud infrastructure for AWS & Oracle.
* deeply passionate about reproducibility, developer tooling and ergonomics.
##### Script
### Talk 9 : T+0 Talk start
@speaker:
shares their presentation and begins their talk.
### Talk 9 : T+15 Signal to speaker
@moderator: 5 minutes warning for normal talk time (ending at T+20 minutes, for 5 minutes QA)
### Talk 9 : T+20 Time for Q&A / signal to speaker
If speaker is not done have @moderator signal privately
> You're into your Q&A time now
They can continue through Q&A time a bit if they insist.
### Talk 9 : T+20 Q&A
@worldofpeace thanks speaker and invites questions
@moderator:
Gather these questions into a pad for WORLDofPEACE to see
@worldofpeace Read off questions from pad to speaker.
### Talk 9 : T+25 Talk end
If conversation is active it's up to @worldofpeace to go over a minute or three.
#### Thank the speaker
People can put clapping emojis 👏 or *loud clapping noises* into the chat.
#### Direct parties to talk breakout room
https://jitsi.nixcon.org/java-ecosystem
#### Broadcast transition to background
We have a five minute break between talks.
## Block 2 closing
### Sign off
encouraging message
#### Last round of giving thanks