EuroPython 2015: Various speakers - Lightning Talks IV
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Part Number | 85 | |
Number of Parts | 173 | |
Author | ||
Contributors | ||
License | CC Attribution - NonCommercial - ShareAlike 3.0 Unported: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this | |
Identifiers | 10.5446/21067 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
EuroPython 201585 / 173
5
6
7
9
21
27
30
32
36
37
41
43
44
45
47
51
52
54
55
58
63
66
67
68
69
72
74
75
77
79
82
89
92
93
96
97
98
99
101
104
108
111
112
119
121
122
123
131
134
137
138
139
150
160
165
167
173
00:00
RobotMoving averageLink (knot theory)Video gameComputer programmingOnline helpBitProcess (computing)InformationData conversionExpert systemXMLLecture/Conference
01:25
BuildingEndliche ModelltheorieVapor barrierArithmetic meanOperating systemSystem callMetreProcess (computing)Medical imagingCodeLevel (video gaming)CodomainGame theoryIterationDirection (geometry)Rule of inferenceOnline helpSet (mathematics)Point (geometry)CodeComputer virusSoftwareOrder (biology)Object (grammar)TelecommunicationBitGodWhiteboardFluid staticsStapeldateiSystem administratorLecture/ConferenceMeeting/Interview
04:26
WordBitWave packetOptical disc driveGame theoryDependent and independent variablesModal logicOnline helpLecture/Conference
05:29
Group actionPairwise comparisonDatabaseView (database)Division (mathematics)Operator (mathematics)Moment (mathematics)Group actionLatent heatQuery languageProjective planeDirection (geometry)Bus (computing)Profil (magazine)Information retrievalSubject indexingFormal languageDemo (music)Ocean currentLecture/Conference
07:01
Discrete element methodNetwork topologyLinear regressionOperator (mathematics)Group actionInformationTwitterInheritance (object-oriented programming)Revision controlMoment (mathematics)Ocean currentComputer animationLecture/Conference
08:37
RobotProjective planeSoftware testingOnline helpProduct (business)Process (computing)ResultantBenchmarkRight angleDivisorMetropolitan area networkMultilaterationXMLLecture/Conference
10:06
Centralizer and normalizerSelf-organizationBitPoint (geometry)Menu (computing)System callRule of inferenceNeuroinformatikCountingComputer animation
11:40
Event horizonStack (abstract data type)Continuous trackAreaNatural numberForestEvent horizonSystem callDifferent (Kate Ryan album)Local ringTrail9K33 OsaComputer animation
13:26
Test-driven developmentSystem callCuboidSoftware developerHypermediaComplex (psychology)Open setLevel (video gaming)View (database)Complex analysisNumberXMLComputer animation
14:25
Heat transferBus (computing)Computer programCoding theoryPlastikkarteWhiteboardGame theoryHeat transferBus (computing)Game theoryComputer programmingWhiteboardPlastikkarteCodeView (database)Image resolutionComputer animationLecture/Conference
15:24
WebsiteVideo gameFood energySoftware developerMetropolitan area networkCombinational logicToken ringWebsiteNeuroinformatikGame theoryDifferent (Kate Ryan album)Group actionComputer animationLecture/ConferenceSource code
16:27
RobotGoodness of fitUniform boundedness principleStructural loadVideo gameMereologyPower (physics)Water vaporRight angleMassObject (grammar)XMLLecture/Conference
18:03
Benchmark3 (number)Game theoryProgramming languageFormal languageWebsiteDifferent (Kate Ryan album)Point (geometry)Interpreter (computing)BenchmarkProjective planeOpen sourceJSONXMLUMLLecture/ConferenceComputer animation
19:00
3 (number)Computer clusterRobotEmulationConsistencyInterpreter (computing)Moment <Mathematik>Compilation albumCoefficient of determinationIndependence (probability theory)BenchmarkPairwise comparisonSource codeLink (knot theory)Fitness functionMereologyMultiplication signUniform boundedness principlePhysical systemSoftwareComputer programmingStress (mechanics)TheoryQuicksortFiber bundleWater vaporBitWindowHand fanComputer animationSource codeLecture/ConferenceXML
22:28
Multiplication signCoefficient of determinationPerformance appraisalSurface of revolutionCartesian coordinate systemFacebookSoftware developerGroup actionProduct (business)Basis <Mathematik>SpacetimeAnalytic continuationRight angleConfidence intervalTwitterLecture/ConferenceJSONComputer animation
23:34
RobotBus (computing)Electric generatorArithmetic meanWordComputer programmingMobile appDoubling the cubeMultiplication signGoodness of fitRight angleLecture/ConferenceXMLComputer animation
25:42
Point (geometry)MassProgramming languageMultiplication signScaling (geometry)Online helpGoodness of fitWebsiteCausalityDataflowWave packetBus (computing)DivisorQuicksortLecture/Conference
28:20
RobotMoving averageExecution unitAddress spaceWebsiteGroup actionEmailCausalityGoodness of fitPoint (geometry)Software testingSystem callRight angleGenderProcess (computing)Social classMultiplication signHuman migrationAuthorizationWordProjective planeMoving averageMetropolitan area networkBitRow (database)Core dumpComputer animationXMLLecture/Conference
30:08
Software testingExecution unitDirection (geometry)File viewerSoftware testingBeat (acoustics)Proof theoryLink (knot theory)Integrated development environmentNumberWeb pageBitUnit testingSoftware developerLine (geometry)Functional (mathematics)XML
31:08
Software testingExecution unitExplosionoutputScripting languageFamilyZoom lensNeuroinformatikNumberSoftware testingComputer programmingTraffic reportingShared memoryRight angleCausalityForcing (mathematics)Lecture/Conference
32:09
Grand Unified TheoryMobile appWeightLink (knot theory)outputWeb pageBridging (networking)Software testingFamilyOpen setForcing (mathematics)CodeComputer animationLecture/Conference
33:29
RobotMenu (computing)CodeFormal languageSpherical capContext awarenessPresentation of a groupWebsiteWeightSoftware testingProjective planePoint (geometry)Metropolitan area networkCore dumpHuman migrationGoodness of fitSoftware frameworkQuicksortEvent horizonMoment <Mathematik>MereologyMultiplication signTendonRight angleProcess (computing)Source codeLecture/ConferenceXMLComputer animation
35:45
Reading (process)James Waddell Alexander IINumberProjective planeTerm (mathematics)BitGame theoryComputer programmingVisualization (computer graphics)Message passingGame controllerDampingDrag (physics)Lecture/Conference
36:48
Physical lawMaß <Mathematik>Dedekind cutExecution unitConvex hullInterior (topology)Host Identity ProtocolElectronic mailing listGame theoryMultiplication signMedical imagingInteractive televisionVideo gameTranslation (relic)Computer programmingDecimalRight angleWritingStudent's t-testDemo (music)Text editorBitTouchscreenGoodness of fitXMLLecture/Conference
38:25
ArmGame theoryCodeComputer clusterAirfoilScripting languageComputer programmingLevel (video gaming)TouchscreenGame theoryCASE <Informatik>Game controllerType theoryText editorArrow of timeKey (cryptography)Set (mathematics)Group actionSoftware developerComputer configurationArmFreewarePoint (geometry)Dependent and independent variablesRight angleComputer animationProgram flowchart
40:39
RobotWritingLevel (video gaming)TwitterText editorWindowPiMultiplication signQuicksortPoint (geometry)MereologyBit rateRight angleSocial classLecture/ConferenceComputer animation
42:18
Interpreter (computing)State of matterOperations researchIdempotentInstallable File SystemTelecommunicationComputer networkSound effectRead-only memoryWritingFile systemState of matterSemiconductor memoryInterpreter (computing)Algebraic closureProjective planeFunctional (mathematics)Programmer (hardware)Multiplication sign2 (number)Real numberWritingMereologySound effectComputer fileMathematicsOperator (mathematics)Data structure1 (number)GoogolBitComputer programmingHacker (term)Arithmetic meanInterior (topology)BuildingSystem callComputer virusVariable (mathematics)Universe (mathematics)Medical imagingWeb browserLecture/Conference
44:32
State of matterStrategy gameProcess (computing)Hacker (term)State of matterProcess (computing)Interactive televisionForm (programming)Operating systemLine (geometry)Strategy gameMereologyMultiplication signLevel (video gaming)Interpreter (computing)Computer programmingLibrary (computing)System callDynamical systemIntercept theoremType theoryRight angleRadical (chemistry)BitEngineering drawingDiagramProgram flowchartLecture/Conference
45:30
Computer-generated imageryComa BerenicesArray data structureProcess (computing)Programming languageBitRadical (chemistry)Network topologyLine (geometry)Reading (process)Right angle
46:30
RobotComputer-generated imageryComa BerenicesArray data structureRight angleDialectSoftware testingHydraulic jumpFreewareSoftwareMereologyInformationOpen sourceNP-hardQuicksortMultiplication signXMLComputer animationLecture/ConferenceJSON
48:20
Resource allocationSpacetimeData structureNumberElement (mathematics)Constraint (mathematics)Uniform boundedness principleCuboidSpacetimeBitNumberMatrix (mathematics)CuboidCASE <Informatik>Block (periodic table)Data structureMultiplicationElement (mathematics)Constraint (mathematics)Resource allocationSquare numberRow (database)Kernel (computing)System callPOKEMultiplication signSocial classComputer animation
51:16
RobotRed HatSpacetimeLattice (order)Right angleSocial classLecture/ConferenceComputer animationXML
52:52
WordTwitterExterior algebraOpen setTable (information)BitData managementMereologyMultiplication signProcess (computing)Point (geometry)Integrated development environmentRight angleMetropolitan area networkRandomizationImplementationScripting languageTrianglePhysical systemManifoldString (computer science)Variable (mathematics)System callInstallation art
54:33
Computer configurationThread (computing)Tracing (software)Point (geometry)Moment (mathematics)Domain nameLine (geometry)Boom (sailing)Interpreter (computing)Network socketFlagComputer-assisted translationMereologyReading (process)Server (computing)Process (computing)Integrated development environmentFlow separationView (database)Category of beingInstallation artWeightConnected spaceWeb 2.0CoprocessorWeb serviceHecke operatorSource codeJSONXML
55:42
ManifoldGroup actionMultiplication signUniform resource locatorLie groupClosed setGame controllerMoment (mathematics)Lecture/ConferenceComputer animation
56:40
RobotConnectivity (graph theory)Variety (linguistics)Computer programmingRight angleVulnerability (computing)Text editorTowerComputer fileMusical ensembleCasting (performing arts)Multiplication signQuicksortDirectory serviceRadical (chemistry)LengthBitProjective planeUniverse (mathematics)Descriptive statisticsBinary multiplierLine (geometry)Protein folding1 (number)Message passingSource codeGodDemo (music)Gastropod shellType theoryLecture/ConferenceXMLComputer animation
01:01:09
RobotHidden Markov modelPoint (geometry)MereologyMultiplication signMetropolitan area networkForm (programming)Stack (abstract data type)MappingShape (magazine)Demo (music)GodBitDisk read-and-write headStructural loadBookmark (World Wide Web)Computer programmingBit rateComputer animationLecture/Conference
01:03:25
Software bugPresentation of a groupPlanningCategory of beingVideo gameOcean currentMusical ensembleCASE <Informatik>Context awarenessKey (cryptography)LogicMereologyExterior algebraComputer animation
01:05:09
Binary fileExecution unitDemo (music)MereologyFamilyComputer animationXML
01:06:14
MereologyDemo (music)Bit rateVolume (thermodynamics)Process (computing)Disk read-and-write headStress (mechanics)Video gameLattice (order)Category of beingPresentation of a groupComputer animation
01:08:46
RobotMoving averageRed HatFluxTerm (mathematics)Mathematical analysisGoodness of fitPoint (geometry)Presentation of a groupSelf-organizationWordQuicksortFamilyFlip-flop (electronics)Metropolitan area networkLecture/ConferenceXML
01:10:50
Programmer (hardware)Exception handlingComponent-based software engineeringComputer programDataflowPresentation of a groupConnectivity (graph theory)FehlererkennungControl flowPoint (geometry)Error messageComputer programmingInstallable File SystemQuantum stateLecture/Conference
01:12:19
Exception handlingSystem callRule of inferenceSign (mathematics)InfinityMaxima and minimaUniform resource nameInclusion mapDedekind cutMIDIRight angleCellular automatonQuicksortFault-tolerant systemReverse engineeringException handlingResultantError messageState of matterData compressionDependent and independent variablesBus (computing)CASE <Informatik>Computer animationLecture/Conference
01:14:11
Core dumpRobotExecution unitDampingMUDRoundness (object)Exception handlingComputer animationLecture/ConferenceXML
Transcript: English(auto-generated)
00:05
All right, welcome back welcome back for this third day of life. Hooray I'd be better than the second day and better than the first day Even though the first day was amazing and the second day was double amazing. This will be triple amazing. So What was I gonna say a couple of little announcements if you see anyone walking around with a badge like this a green
00:25
Badge these badges are beginner mentors badge So let's say the person wearing this badge is Happy to answer any questions you have if you're a beginner and that doesn't mean a beginner at programming in any topic So you have a question?
00:40
And that person will automatically be an expert in that subject and reply magically to you No I mean that person is there to help with any any questions you have questions about the conference questions about what talks to try Out next question about who to talk to or where to find out more information about something whatever it is People wearing these badges are specifically very happy for any questions interrupt them halfway through a conversation whatever it is
01:02
It's our job as beginner Montills to yep. What's the question? I'm here to help Sorry Okay, this so there's some bathrooms if you come out immediately on the left and also a little bit further back on the right You're welcome All right, so that's the badge the other thing I wanted to introduce is
01:30
God I'm gonna say Fabian here who is talking about the mouse icebreaker. So you may as well remember the story about Having an icebreaker game that's going to encourage people to just talk to each other and say hi to strangers
01:43
so Fabian has come up with some cool rules and a cool game the Explanation is outside by the door, but a quick explanation in person. I think will help to really make it concrete I've already started on the game. It's going great Okay
02:04
So so after the lightning talk yesterday evening there there were quite a lot of people that were interested to help and do something And and we we figured out some well, let's call it the first iteration of a game It's just that our PR department completely failed So there is a board somewhere here directly if actually if you're coming out of the room
02:23
Then you'll see a board and and there there are the game rules But I think hardly anybody realized that maybe with a show of hand who realized that the game is already going on Okay, but well no no everybody of you knows it directly, there are the rules and we'll continue tomorrow and the the thing is that
02:43
unfortunately, the three viruses have spread through all participants and In order to where the objective of the game is to to disable those Viruses on your own software on your own operating system and you need for each one a code One code is very easy to obtain because it's a static code
03:03
It's just one certain code and as soon as most people know it It's very easy You just ask do you have the code and at some point everybody knows it The other two codes are a bit more difficult because they are personal codes they change and we have a really really electronic gadget why it's actually a piece of paper, but
03:23
But we we call them what do we call them? Emitters emitters, they are code emitters those pieces of paper and there are some emitters that are moving around So as soon as you you go around and ask hey do you have an emitter and if that person has an emitter then you will have that from then on and
03:43
So you have to just go around and ask and the third one also is with an emitter but he stays the emitter stays with the person and Those are the persons that have oh, I don't have my badge on and they have a little mouse Hand-drawn mouse on the on the batch. Those are the game admins. They also know all the rules and they have another
04:05
Emitter and if you have all three of them, I will ask tomorrow in the lightning talks who has the most coats. So Play the game All right. So our first speaker is Julian Tebalt and for setting up by getting ready before that. I'd like Philip
04:27
Chebyshek, okay, Philip Philip, where are you? Fantastic, all right
04:43
So, is there anything that's on your mind everyone What what how do we get a badge oh, yes, if you'd like to be a beginner mentor we have an oath that you have to take So there's a little bit of training, you know You have to swear to do certain things and promise I based it on the oath of the Night's Watch from Game of Thrones
05:06
So if you just come and see me afterwards, I'll explain the oath and if you're prepared to take it on it's a big responsibility It means that you have to be prepared to like stop trying to impress your friends with your incredibly geeky knowledge of technology And that you've learned this year and instead just go up. Sorry. Okay, fine
05:21
I'm answering your question about beginner issues from now on and for the next hour if necessary So it's a big responsibility, but we do need help So come and see me afterwards and I will definitely give you a badge if you swear the oath On that note. Are you ready sir? Yeah Julian take it away. Okay at first Sorry for my accent and my mistake and French
05:42
So I will try to do my best in English My talk is about MongoDB as a tostada I Want to compare MongoDB database with the tostada tostada is a huge huge cake Last night. It was a nightmare to finish it even more after eight after it's so many tapas
06:06
MongoDB is also a nightmare when using our missing indexes. I Know that people say MongoDB is slow. It's not acid As a queer language sucks
06:21
But I love it Okay The tostada as you can see is very very fat To prevent MongoDB from becoming a tostada. You must monitor the slow operation
06:44
So how to locate and trigger an action on long-running operation? You can use the profiler or the common current topic But it's impossible to trigger specific action
07:01
Let's go so we have a simple live demo I Will try to simulate a slow operation Sorry As you can see, I'm try to find a bottleneck Which is a tostada. I take we can we can retrieve some information about
07:32
the Current So current operation with current open, but you need to wait
07:41
The end of the operation as you can see is very very very long so For I wrote simple tools is among group You can send a different trigger You have a killer trigger
08:01
It tried to terminate long operation and you have the MongoDB trigger It's a simple insert on other another database, okay, I Run mongoop Okay, and I try to stimulate the same operation you can see
08:26
the first the first First action is trigger and the other is trigger and now the operation is was interrupted So is on github
08:41
The project is not mature not enough to be a Production I need more tests more triggers like century. Yes, see in a CA for your monitoring tools maybe Python 3 but Confused with that and I need your fight back and your help
09:02
To finish if you want to try to eat Is a tostada I know the restaurant
09:21
Philip come on up and then after Philip we've got Daniel mild on pi benchmarks Yeah All right, anything else on your mind everyone? Yeah, yeah, what's that the what I? Kind of forgot what the beginning of the story was. I don't know if I can actually Yeah, I don't know if I can remember the whole thing unless I start at the beginning
09:41
So maybe we'll do that. Like what was it was about a man who really likes tractors. Isn't that right? So Where were we at the end of it? Do you anyone where where where where were we in the story who remembers? So he was everything was on fire. He was burning all the old tractors and the old tractor posters But I guess maybe now that you've reminded me we can have the rest of the story a little bit later. So
10:04
Take it away Philip Hi, I'm Philip. I'm the main organizer of Python PL. I'll go and clap him Yeah, come on, and I would like to talk about Python PL So I kind of made a bit of research and to see how our pikons in Central Eastern Europe doing
10:29
I've noticed that Python PL is the oldest one but New pikons are appearing I would like to encourage you to try to attend
10:41
Proposed talks for those pikons This year there were many new pikons in the Central Eastern Europe for example Python Belarus and Python Lithuania and There will be pikon check in November 2015 and the next year there will be a first pikon Slovakia, but I will talk about the pikon PL
11:03
so Our pikon is a bit different that all the national pikons in the sense that we are not picking big cities You know Probably the name of the of the cities or town or villages that we are organizing the conference are totally unknown to you
11:23
So that was kind of our idea So we are kind of booking one hotel and All attendees are staying in that hotel almost because people that are living nearby probably want to stay at homes
11:41
and That way our pikons take place in completely different areas Usually close to the nature so mountains forests And I think that's that's kind of pretty cool. And what are the advantages for attendees? So You don't have to worry about
12:03
reaching back to your hotel at social event because you are Everything happens in the same place. You don't have to worry about the weather about unexpected rains So everything is closed hotel room conference room bar
12:22
If you forget something you can easily come back to your room and take it If you are kind of tired and need to rest from everyone you can go hiking and This kind of approach also gives us
12:41
opportunity to superb socializing and Now about the current edition it will happen in the mid-october in the village called Osa We'll have six tracks There will be two English tracks two Polish tracks and two workshop tracks mixed some of them will be in English and Polish We are expecting six to seven hundred attendees last year. We had half a thousand attendees
13:06
So we are kind of growing every year a full ticket includes hotel room It's a four-star hotel and news during the conference So regarding the speakers as you see we have speakers from different countries
13:22
On PyCon PL and I think that's that's very good We'll also have a PyLadies workshop from test-driven development I must admit that The kind of diversity problems are also applying to us in Poland and
13:43
We need more women speakers on this edition. We'll have five women speaking but Even though the coastal proposal is closed You can still Submit a proposal. We'll try to find a place in the agenda
14:01
So where exactly is PyCon PL 2015? So it's in a village as you see It's one hour from Warsaw So this is important This is the view from the open street map actually a month ago There was nothing on open street map there, but thanks to the the open street map community. We have the hotel
14:24
complex mapped That's how the place looks like You Know because it's in the middle of nowhere then kind of bus transfers are important and there will be special buses organized by us That will go to the hotel
14:43
There will be many activities during the conference for the white Python coding challenge Every night there will be board and card games. There will be a grill and barbecue party on Saturday Mmm every night there's a party going on the dance floor and
15:01
If you are you want to come with your kids, there's a special program for them So you can enjoy the conference where your kids are under good care That's the view of the auditorium there is a free swimming pool jacuzzi and sauna for all the attendees
15:21
So This is these are the prices and I think these are actually really cheap if you compare with other conferences So for it, you can buy for 190 euros and it includes accommodation in the hotel with meals
15:42
That's how the hotel rooms look like if you think that's too much you can apply for a financial aid at our website Mmm, these are the comments and I think that comments of our attendees say a lot about the conference is worth to attend So have a look the last comment is, you know still waiting for my ears to stop ringing after three nights of disco at
16:06
Picon PL We have different games during the evenings Different groups are meeting Yeah
16:34
So after Daniel, can we have Rob Collins are you near the front There you go. That's good enough. And after Rob, it'll be Philip Fritzi. Are you here somewhere Philip?
16:43
Fritzi Yep, close enough to the front to be able to run in. Okay All right, fantastic so our our A Guy who's just gone crazy with his tractor It's gone too far. He's decided to just quit He's piled up all his tractor memorabilia or his pictures of tractors or his old tractors
17:03
He's put them in a massive bonfire in his garden and he's gonna set fire to it And he's just watching it all burn away and he's like that's the end of my old life No more tractors. I'm finished with it and he's sort of sad but he's also like this is a big milestone for him and He feels like ready to move on, you know ready to put it behind him
17:21
Are you ready? Okay, so he's ready to put it behind him And you know, he like after this is done off. It's all gone. He just goes. Ah That's better. I feel better. I think I'm gonna go for a drink So he goes down to the pub he walks across to his village pub and he walks in and the pub is kind of empty And there's not many people around I think the reason he like he smells this weird smell
17:44
And he goes I think the reason this pub is empty is because there's a really bad smell in here And he goes up to the barman and he goes hey like what's going on? With the what's going on with the smell and the barman goes, oh, I don't know. There's been like that for days Still worth it. So waiting. Oh, that's loading. Is it? Okay
18:09
Okay, so hi everyone how many of you know the computer language being smart game Okay, so as you may know it's a great website where you can compare the performance of different programming languages
18:25
But there is only one Python interpreter available so and we want more because we have many interpreters so
18:40
Fortunately, the project is open source. So I fork It's called by benchmarks.org You can see it here It looks the same as the original Project so now you can compare for example
19:00
Jitom, but wait, no, you don't want that so once again, you can compare for example pi pi 3 to Seitan or You can have a look how the new Python 3.5 is doing Or compare another
19:21
Nice compilers and interpreters so I benchmark the torque The benchmarks are not perfect yet. Of course So if you want to participate there is a link to source code. It's on github. So please feel free to Send the pull request
19:42
That's all. Thank you. All right, Rob you're up next and Philip is after that Okay, so he's got at the pub and there's a weird smell and he's like what that's weird smell and the barman goes
20:04
I don't know. It's just been it's been like that for days and The guy goes, you know what? I think I can help you with this and He walks to a one in the pub for a little bit and he's trying to smell the place where the smell is Strongest and he eventually stops it and he goes all right
20:20
I think it's here and he goes like this He walks out to the door of the pub and he goes out the door of the pub and he goes Outside and he walks back in and he goes And he walks back outside
20:42
Are you waiting to talk? I'm waiting for windows. Sorry guys We've got about 15 minutes Have a good time He goes back into the middle Walks back outside and slowly the smell is disappearing and the barman's like this is crazy and you go
21:04
Walks out a few more times Like that and then until he does this several more times over the course of sort of a few minutes until the smell is
21:20
completely completely gone And the barman goes that's amazing. I've never seen anything like that. What what happened? Like what? How did you do that? And the guy goes well you see I'm an X tractor fan. There you go
21:58
Now we're waiting for my Zilla
22:04
Okay, not bad, huh, I know several more stories in that sort of vein there's There's one about a paint program in the 90s and a Chinese conspiracy theory But that like very much relies on people having a
22:21
Decent knowledge of like early 90s desktop software who if you have a good knowledge of early 90s like paint software And I'll put your hands up. Okay, so that's like 35% so should I waste like everyone's time for a joke that's only gonna hit 35% I think so. No
22:40
So, thank you, my name is Philip and I am dogs and the paramedic in my world There is a new revolution containers and there is at most everywhere There is a few application to run new containers like run C Docker Rocket wag Alexi and so more but there is no one application in Python, right?
23:00
But there is a Python conference. So I creates a package by spaces It's try to implement some containers Linux containers fuchsia like nine spaces cgroups and so other There is a lots of work should be done before it's ready for production but I hope you enjoy this package and And help me to
23:21
To create great great application for containers for development and deployment By the way, I am a member of the blushing Python meetup and you can find our community at Facebook and Twitter so enjoy us and Sorry and
23:41
We should take a part and create together new big challenge new big new world Thank you
24:03
Yeah, so we're probably not gonna do the the early 90s paid program I have another joke if you like that's like really highly dependent on people knowing the meanings of two words So like would you have put your hands up if you know the meaning of the word app was it a double p o s ite Yep, and the word pachyderm p-a-c-h-y-d-e-r-m. All right now if you knew both of those
24:26
Both of those together. All right you guys What do you call an opposite pachyderm a relevant Okay, because app is it means relevant and a pachyderm is elephants and rhinoceroses. Yeah. Yeah. Yeah, pretty good
24:44
I was pleased with it. Yeah. Yeah, what do you think like the jokes I make up versus the jokes that are real jokes How do they compare? Yeah, what do you think like extractor fan versus Tina Turner? Which did you prefer out of this like hands up for extractor fan? All right hands up for Tina Turner
25:00
Yeah, guess which one I made up What? Say what that's pretty much what I'm doing How'd you make up a joke the well the Tina Turner one right you can pretty much tell I made that up in the shower Because obviously I was singing and then I thought Secondhand emotion secondhand in motion. That's it. And you just work backwards from there. Just figure out a long story
25:26
Where like somehow there's gonna be a reason for someone to say that and you're there. You've got a joke. It's amazing How you getting on over there Rob? Yep, all right take some time. All right. How about a how about a joke? That's like oh, you're good. Yes
25:43
my pictures not skating, but I think that that's the the point so first of all, I'd like to say Thank you for those who participated in the sponsored massage. So hands up who's had a massage so far Well, it was it good
26:01
Well It's not it's not too late We have one more session tomorrow at lunch time for you to get a massage and to give money to the Python Software Foundation, so we had 16 people doing the training on Tuesday and they made a good team and spreading out
26:22
Talking to lots of people and giving massages. We've raised over a thousand euros for the Python Software Foundation so far Now There is a problem great team, but we haven't covered everyone at this conference and there's a bus factor of one that it
26:45
Depends on me being here and doesn't scale even in this conference that alone other conferences So I thought what about we try and write things down Help other conferences be able to do the same thing other Python conferences could raise money for the Python Software Foundation
27:03
Could scale to other programming Languages and other good causes so I need to delegate because it isn't that difficult to do but it's not trivial so there are some things and we were thinking we're supposing we had a
27:20
website to help groups be able to organize a sponsored massage So that other people could do it now show of hands. Do you think that would be a good idea to do that? and anyone Not asking for help just sort of your opinion of whether you think it might be or not right
27:47
yes, well No, no, I'm not asking for more donations. I'm asking for some help So I'd like you to think about how you could help not just for massaging but for organizing
28:01
designing writing things so This isn't going to scale properly here but if I can Get this there so The Python massage foundation.org go to the website. The only thing it does is to allow you to
28:24
subscribe put your email address in there and We can build something that would be actually Useful for other groups to be able to do the same thing with more teams of people and raise more money for good causes Please go there and or talk to me afterwards. Thank you
28:48
All right, Patrick Goodry on a pi test in selenium and after that we've got alof Bradbury Yeah alof is a good name too though, right? Yeah. Yeah. Okay, that's someone I actually know everyone
29:02
Yeah, Alex Bradbury. Yes fine. Okay. Are you close enough to be able to run up and give the talk? Would you like to move to the front row maybe disrupt now rather than later? Jolly good Yeah, so come on let's rather than having another really tedious joke, you know, we all talk about community a lot in in in Python and
29:22
That's not a word that meant a lot to me for my first few years in in the Python community And I was like, well, I don't know, you know, I'm British and I like to talk about my feelings or express them Or really admit that they of any use so Communities sounded a bit wishy-washy to me
29:41
And I think the first time I really got it. I was in in a Django con and the setup was That they were going to announce Django migrations, which was made by a man called Andrew Godwin. Are you here Andrew? What Andrew someone called Andrew put their hand up so And he was going to announce that the Django migrations is merged into Django core from being a separate project called South
30:04
And I'll finish the rest of the story after this talk So Patrick take it away. Hi everyone As previously stated. My name is Patrick today and I work for a number Lee We had a lot of nice talks about tests and test driven development
30:25
Mainly for common line tools, I'm a bit Latheer than that and I had to test pages HTML pages with links and whatnot. So Here is to just text take tests in that direction just a bit so you don't have to manually click on everything
30:47
so first First I use by test for my tests because it allows me to build either unit testing or functional tests He does it supports what it calls fixtures, which are a nice way to prepare your environment
31:07
Well, depending on what you run it can be either fast or not. Well if you sleep then it would be Slower than expected and it has nice reports as you can see right here That's a kind of report you get with the number of tests but failed number of tests past and you know
31:26
Which one failed and what it failed For zoom that might not know what Selenium is it's Kind of like enabling ghost possession of your computer
31:41
You program your Python script and it just goes opening stuff and manipulating your brother while your brothers actually have it supports more than one and What we are going to do is trying to use them both together That way all the tests you had to do
32:01
Are going to be done automatically and you can go sword fighting on shares Okay, so I have a very lightweight flask app that runs mostly nothing It has one people input that puts the text in the page and one link
32:24
That will just redirect to another page with another link So running Selenium is just going to Open the navigate the brother and do stuff that as you can see, I have no idea what I've been going
32:41
What has been going on? So running pytest I can see that he has four tests four tests to run run the first one correctly the second one failed Third one passed first one passed and now I can see that actually yes the second one failed and I know why
33:03
The actual code for the pytest Tests is Really lightweight the only thing is to define your fixture You just instantiate your brother yield it so you can use it and quit it just when your test is done and
33:28
And That's it. You got here the pytest pytest website Selenium website Be aware that Selenium is not
33:42
Strictly Python. It is also available in other languages that URL is to access the presentation as it's Available and that's the whole code for this lightning talk including the very lightweight flat cap Thank you
34:10
We've got Tom Bollinger Are you around Tom? Okay, so South the migrations framework for Django who's used that and who's used Django migrations?
34:24
all right, so There was a guy called Justin who you might come across if you go to a lot of Python conferences Who's a who's a lovely guy and he's going to be hey Harry and like it took someone American really to kind of explain This community thing to me because the Americans unlike the British aren't afraid of talking about their feelings just in particular
34:41
And so he said to me, hey Harry, man Are you gonna Andrews talk I went ah, no, can't be bothered South is already really good I know that Django migrations just slightly improves it, but it's more or less the same The only thing I want to hear from that talk is like hey Andrew, is it more or less the same? Yes, did you do a good job? Yes. Will it all be obvious? Yes. Thanks very much. Goodbye So that's not a talk I want to go to and Justin says to me man
35:02
That's not the point the point is this is Andrews big day man Like he made this tool South that we all use all the time and like it makes our lives so much easier man And and like and like we love it so much and like he's finally come into the Django core man Like his project is recognized. It's a part of it. We've just got to be there man
35:20
We got to be there for his big day man to just be there and be present and like say thank you man Like we are grateful. We are grateful to you and we are here for you man and um, I didn't actually end up going to the talk but but I was almost ready for that lesson, but not quite but but you know, that's the sort of thing So so so I hopefully that yeah, that's the sort of thing
35:43
Alex take it away. Thanks. Hi Hi, so I'm Alex I'm a researcher at University of Cambridge and for a number of years I've been working with interns over summer working on rash we PI related projects
36:02
And so this project PI land is something that's a bunch worked on last year and that continued this year And I thought I'd tell you a little bit about it and how you can help us out in our aims So also I so PI land aims to be a game which helps to teach children to learn to program using Python So just take a little step back and kind of motivate motivate this little and some of you may have seen this before
36:25
This is called MIT scratch. So this is how a lot of children may start out learning programming It's really nice. It's visual. It's easy. You drag and drop you can draw your little your little fish and you can easily add behavior to them and Then that's great. And so teach it and so children kind of big end of primary school maybe
36:43
Seven years old eight years old might start playing with this, but then I want to move on something new So you move on to Python and then to get to where you were with Python takes raw Get to where you were here where you could have all this, you know interactivity moving images You know making your own games actually takes a lot of time which could often be rather off-putting
37:02
I mean, this is a kind of translation of what was probably the first kind of programming program that I wrote So on my Amiga 500 I had a well, I had a trouble that I only had a BBC basic book So I was very frustrated I keep having I but not everything quite worked properly in Amiga basic But I was very excited when I had a knock-knock joke thing
37:21
I went to show my mom and I thought this was fantastic But one thing I've learned in life is that not everybody's like me In fact, quite a lot of people aren't like me and for many people, you know Just something simple and textual which prints something out on a screen in a world where you have You know your mobile phone could do amazing things you go home you play your PlayStation or Xbox. That's not all that compelling
37:43
Although for many people it does give a good sense of achievement And so what we're trying to do with pi land is producing Something which is graphical it's It's intuitive. It's attractive to children so that you can write Python and get something which is
38:01
But in but you're kind of motivated to write it so, you know move on to solve puzzles in this game and here is obviously well, this is a kind of the Edit integrated editor isn't quite finished. So it's a little bit of a mock-up But this is all showing the graphics that we had made for us last year And obviously this student here is about to be told off very badly for not obeying pepates, but
38:24
I'll now I'm I'm now going to be slightly risky and give you a demo of what it looks like currently There we go, yeah, so this little guy Ben he's our main character Level screen I can move to a level here say where we've got our crocodiles moseying about
38:43
So each character has a python script associated with it, which you can use to Control their behavior. And of course, I'm just using my arrow keys here. Unlike some programming games We don't try and you know We don't want type that we don't want to force people to program and kick program in cases where it's not actually helpful That's only gonna
39:01
Put them off. Where do you have to open a text editor just to move left or right? So this is a simple level where we have another character Milo who's our little monkey friend who is going to help us out Milo is definitely my favorite character. I just love the way that the animations come out there
39:21
So that's kind of So we've been working on this last year. We've got a bunch of For the team of free interns working with me this year to try and To try and get it towards something that's really releasable that we can share more widely So the aim as I said is children kind of ages 10 plus It's we're kind of practicing as I said intern driven development where it's very much limited by
39:46
limited by manpower there So the game engine itself is written in C++ And is increasingly Python scriptable I should point out that you know One of the key requirements is it has to run on the original Raspberry Pi so the 700 megahertz rather weedy arm
40:03
Which limits your options somewhat? So that's very difficult because it quite a lot of schools already have these and of course, it's all fully open-sourced And so our aims the things we're working on this summer. So we've had a few weeks with the amazing set of interns who've already they come up with this kind of story about having Q on this island and there's a group
40:25
Of people who can both write and run programs There's another group of people who can only run programs and you have to help with people who can only run them Which it sounds like it could be very very political in but That's not totally the aim And so our key aims this summer have been working on more content making it
40:43
So it's easy extensible so you can write levels in Python so that you might have a teacher who modifies or customizes them or indeed children might be able to write their own levels and share them with their friends and Working on this integrated text editor Whereas currently you have to kind of switch to a separate window And so if you want to get involved or look at what's currently there go to pylon org follow us on Twitter talk to me afterwards and
41:07
Also, thanks to Ashby pie foundation and the Broadcom foundation for funding this and a big Thanks to all my interns this year and last year who have done all the actual work
41:27
Tom you're up next Okay, guys, so like it's six o'clock. So Tom should be the last talk Would anyone like to stay around for longer like by applause stay for longer?
41:42
Versus by applause go home go to bed go and have food go to sleep like and just generally racks So that has it. So I'm gonna propose that we stay for another 20 minutes or so Anybody that like is actually knackered at this point This is a good time to leave while I'm talking because you know, that's just a waste of time
42:02
Whereas while Tom's talking that's gonna be interesting entertaining intelligent fascinating warm loving Community based and all sorts of things like that. Are you ready Tom? Yeah, yeah, are you sure All right, I want to tell you about something that it's almost generous to call a hack
42:26
It's somewhere between a hack and a joke, but this is RL undo It's undo in any interactive interpreter with an asterix there. I will explain later So I work on a project called beat Python, which is pretty fun It's got undo as you can see here We hit a button and then we undo the state and then a isn't even defined anymore. So we've we've undone the state here
42:44
we're taking the entire state of the program kind of rewriting what we want it to be and Just from this little brief thing of what you've seen so far imagine for a few seconds How might you implement something like this the the undo part here is what I mean where we can Go back and then that variable isn't defined anymore. We've got we've undone that thing
43:02
So think about it for a second or two. Oh, it's a pretty dumb way what we're doing What we are doing is Well, I have to explain it first what we're doing is just replaying the state So we just remember all the commands that you ran and when you undo We just redo all of them except the most recent one. And then when you undo again, it does again So this works pretty well when you're trying out the syntax of something
43:22
But if you're trying to do real work and do something it takes 10 seconds It's gonna take 10 seconds to do rewind your most recent thing. So so useful neat but limited So where does this fail? It takes time to rebuild that state while you're rebuilding that state. You might use non-deterministic operations we don't reseed random or anything like that and Maybe you're doing nine evidence stuff. You're appending bytes to a file. So that happens each time you undo
43:45
File system changes. We're not gonna have a whole VM and then rewind those file changes And we're certainly not gonna like simulate the universe and like recall those bytes from Google that fired the missiles or whatever. So so That's kind of out of scope, but we could move down a little bit
44:00
We could accomplish some of these some of these first ones and the way we could do that is by saving snapshots of states instead What if instead of rebuilding that for your prior state each time instead we save these snapshots and just return to them Obviously this would have higher memory requirements. It seems like but we get around the rebuilding time we get around Running things twice we can their side effects happening twice
44:23
Right those higher memory requirements probably a problem Let's try to do this copy on write thing functional programmers talk about this a lot They're like ooh in in closure We have these these data structures that are immutable and we can do this clever kind of wouldn't make a copy It actually refers to these things, but you have to kind of and we could do some immutable stuff in Python But I think it's not real general enough. What we're gonna do instead is fork
44:44
So on Unix we have this way of copying our process and making another one that looks just like it and it's doing this Copy on write stuff at the operating system level. So that's pretty cool. We could use that to save these states Let's try to do that every time something interesting happens. We'll just fork
45:01
Okay So this is a hack in three parts first off We're gonna use read line read line is a program a lot of interactive interpreters use it's inside the program, right? So that's the same process and we could fork it to save these When we can intercept what these are types and if they type undo we can just die and the previous one will take over Because it's just sitting there waiting and we have to get read line into these things somehow
45:24
So we're gonna intercept the dynamic library call and then we have to rewrite the terminal a little bit So let's take a look at this here's it is with Python you can say Looks like B is there but if we do this B's not there anymore So this is with saving snapshots, but this is with forking and lots of things use read lines
45:45
So say that we have for some reason we have to use this other programming language called Ruby here and or racket or lua Or a lot of other things that also use read line here's a But then we do this and it's not there anymore And we can see if we were to
46:02
We can see the process tree here three four nine eight We can watch this get bigger So maybe not ideal but it's copy on right it's probably great And we can undo undo undo. It looks like we've got off a little bit
46:20
The rewriting the terminal isn't quite working correctly. So this is a fun thing. That's it Don't go away. I was just clapping the It's I'll have updates so that it's a joke, right? Is it good? No, it's not a good idea
46:42
Redo to that would be cool. We could save them. You could jump around So we don't have any of that stuff But we do I am like I have tests for this where we're starting to It could almost maybe kind of work. So if you want to contribute to it, it's at github.com Thomas Ballinger I'll undo and that's it
47:07
I want one that just guesses what I was about to do next and skips into the future. That would be even better Yeah, fine So what was I talking about with the Andrew story there really is that you know? Like the value of going to a talk is not necessarily like the information that you can get out of it
47:22
And what you can sort of selfishly get out of the conference some of it is also about Recognizing people. Yes. So it's um, it's me next that's the important part about this whole thing So next we've got licless oliveson and after that we've got jerky polainen
47:41
Sorry jerky Nicholas, are you nearby? Hooray Yeah, yeah. Yeah, so sometimes you just go to talks because you got to support someone, you know, and that's nice, too And and it's all important this community stuff because we like donate our time, isn't it? Like open source software free software. It's all based on the work of volunteers
48:01
And so, you know You need to get some sort of payback for that and that payback is gonna be Nice things like your friends showing up to your talk or people recognizing the hard work You've put in by just being there and clapping for you. Even if they've got no good reason selfishly to be there Are you ready Nicholas? Yes Take it away
48:27
So my name is Nick's us and this is basically my first talk ever. So please bear with me I'm gonna talk about efficient allocation of space and the challenge of this is basically to
48:41
You have a number of elements and you want to store them in some data structure With some constraints. So for example, if we have this square who wants to manage Manage his acorns in some way We can use a box with
49:02
You can store like one acorn in each of the slots. So this is basically an array but you can always fill these boxes from the sides and The tricky thing is that the acorns block each other. So if you add like two acorns like this
49:23
you can't You can't really add any more acorns. So in this case we we are Only storing two acorns, but we have a seven slots. So we get really crappy performance or efficiency in that case
49:40
We can also have like a matrix with multiple boxes but it's same like Restrictions you can only fill them from the sides So, how do we fill these efficiently well, we could like add one acorn and then we can add a little bit of space and
50:05
Just because you know, there are there is quite much space and can just Yeah, and little acorns here there and then we begin to run out of space So we start to pack them a little bit more efficient, but you know
50:23
Even this has really poor performance Another approach will be to like stock in in in the middle And then don't add a space and see in the first row then we can begin on filling the second row and
50:42
Fill the rest of the Boxes basically. So now we get like hundred percent efficiency, which is really good So now how many of you wouldn't consider using the first approach Well, yeah one of these so I'm basically think
51:37
So to conclude there to sit next to other people hope that they don't bite you
51:43
And perhaps even talk to them and meet new friends and everything will be a lot more fun and a lot more space efficient Thank you All right, Alex, you're here tab complete me later
52:07
Okay fine This next story folks is set in the undersea Kingdom So it's underwater and in the undersea Kingdom Not everybody knows this but the the lobsters are like the royalty because they're the most expensive
52:24
and So there's a lobster King and loves the Queen and loves the princess and they all live in this amazing aquatic castle But then in the in the stratified underwater society the most like low-class people are crabs Because you see crabs walk sideways. So everyone thinks they're shifty and you can't trust them
52:44
But it just so happens that the lobster princess falls in love with a crab. That's the setup of the story Are you ready? Jackie? Yep. Take it away, Jackie All right. Hello, everyone. My name is your people and I'm gonna talk about
53:02
Think of manhole and this is my Twitter handle and you 30 people who don't speak English or who don't know this Stuff behind the word manhole. It's this it's not nothing dirty This is actually a manhole cover if you're more Concrete the manhole is like that's just copy based on Wikipedia. It's a alternative you through the whole
53:22
Cable chamber manager blah blah blah top of is the top opening to an underground you do the world You probably also heard about like this In like stupid interview questions, or if you ever been a stupid interview You've been like where someone else to go away the manhole covers around and you probably know the answer that they don't fall in
53:43
But you can actually next time when you end up in a stupid interview You can say to them and pardon my French because I suck in the process and the roller Triangle can also be a manhole cover that's in drop-in. So you can use that one next time you're gonna be into interviews Anyway, this all was completely useless. That's just the nice facts I'm gonna talk to you about Python manhole, which actually is a manhole into a Python process
54:05
So those who have used twisted twisted used to have an old manhole and they have a newer implementation But this is for like every like a layman Python will not the crazy call that callback Python but layman Python manhole You installed by saying pip install manhole then you import manhole and say manhole dot install or
54:23
If you just run a random Python process you Give byte the manhole environment variable. That's just an empty string And you run your script with that Then what like what's the point of this? Well, the manhole opens your Unix domain
54:45
So it runs in a thread there are like options that you don't need to spawn threads But actually runs in a separate thread you can connect it at Unix domain socket with the netcat or I recommend so cat with read line and Boom it prints you out what your actual Python process is doing like what the threats are doing at the moment
55:02
It actually gives you a trace back for each thread. You can see that there's the manhole thread On the top of the end of the manual thread like a Trace back and then this other stuff. This is just running the simple HTTP server The command line and with the Python manhole Environment flag and the best part is that at the very end it gives you a Python interpreter
55:23
So you get the Python interpreter inside the process you're running and then you're gonna go nuts and do all the heck all kind of havoc and Why would you use this is you run? Let's say you run a web service or something So you can actually put like a long-range web service or some other long-range process you enter manhole there if it
55:40
Goes derp at some point and you don't know why like it's running But you don't know what it's what is it doing because it's not doesn't seem to be doing anything You can just enter the manhole and check like extra trace backs of the stuff that is doing there The manhole has a yeah decent documentation But like actually the usage is as a as easy as it go how much do I have time?
56:03
I would say two minutes to oh, yes Because there was a pike in Poland I had to come back to that one There's also a pike on Finland, it's the 19th of October in Helsinki Unfortunately, the corporate proposal has already closed but because they closed it in the middle of July
56:24
They're probably gonna reopen it because no one does anything in Finland in July. So it's on a location It's an amazing conference. We used to have a tagline saying that it has more sound us than the other conferences combined But the pike in Poland also seems to have sauna so I don't know as at least you know at least
56:42
Yeah, same among those other countries combined if you don't know this is Helsinki, unfortunately in October it can look like this 19th of October in Helsinki. Thank you All right after Alex. We've got
57:08
Wukash maybe for dream about flying Does anyone know who that refers to you and did I get the name more or less right? Well check that's yeah. Yeah
57:20
So The lobster princess falls in love with a lowly young crab and they have this sort of banned relationship But one day her father finds out she's like, oh, I'm not having my beautiful lobster daughter Hanging around with one of those shifty sideways walking crabs. I won't have it She's like but we're in love and she's like no, I'm not having it And so he like locks her up in the highest tower of the undersea castle, which I guess makes it the least deep underwater
57:45
and They're like young crab is devastated. He can't see his girlfriend. He really loved her He's like going around all the undersea bars like drinking away his sorrows going. Oh, I used to have this beautiful lobster girlfriend and The weeks pass in the month pass and the crab is sad and drinking away and the lobster daughter is in her tower
58:03
just crying and the the king feels bad and he thinks maybe I can cheer my daughter up and maybe She'll feel better if we have like a big party and maybe she'll also meet some new and eligible suitors I've been obviously no crabs so I'm gonna have a big ball in the undersea palace and I'm gonna invite all the respectable undersea creatures all the
58:22
tortoises and dolphins and porpoises and octopi and and sea cucumbers and So they're all invited obviously no crabs and they have this big ball and there's the king and the queen and there the lobster princess Is sort of sitting next to the throne there and she's just looking kind of sad and she's not really talking to anyone Meanwhile, the young crab is like more and more desperate than ever like he's all like oh no
58:43
She's gonna be married off to some awful sea cucumber and the hours pass And then at midnight, there's this sort of banging on the doors of the undersea hall bang bang bang They fly open and it's the young crab and he looks all the way across the hall up at the king
59:01
He's like right up on his throne the other end and he walks really slowly Right down the length of the hall one foot at a time Perfectly straight one foot exactly in front of the other Perfectly straight until he gets up to the king and he looks him in the eye and he says I am really drunk
59:20
Are you ready Alex? The live demo gods are not smiling on me So this will be an audio only demo. Hey
59:41
Okay, so this will only work on Linux and what I'm doing now is I'm typing LS in a Directory In a directory full of Python files and because this project uses talks. It's also full of dot pi C dot pi
01:00:00
and a pycache folder, and it's quite noisy. So when I type my favorite editor and I press Tab, I get all those files. I don't want to see them. So what I'm going to do is, yes, I know that's why I'm giving an audio description.
01:00:23
So what I'm doing now is I'm editing my .bashrc, and you can do the same thing in Z shell. How do you pronounce that? Anyway, what this line says is, in caps, fignore equals and then quotes .pyc colon .pyo .pyd
01:00:41
and underscore pycache. I do that, I source the file, and now when I press Tab, I just get my .py files and not all that .pyc rubbish. Brilliant, I can't hear any of the other ones. So sorry for the lack of visuals, but try fignore. It makes the bash terminal quite just a bit nicer place to be.
01:01:06
Thank you. Yeah, those dunder pycache files are absolutely deafening.
01:01:24
OK, Wojciech, you're up next. Really, Wojciech? OK, OK, I'm learning new things. All right, fine, that'll be our second last talk, everyone. And then the final talk is by Adam H. on exceptional programming. Adam, are you around? Yep, come towards the front so you can get here nice and quickly.
01:01:42
So where are we? We had the undersea kingdom. Let's rate all the jokes now. Undersea kingdom, is that your favorite? Clap if it's your favorite, the undersea kingdom. All right, clap if the extractor fan was your favorite.
01:02:00
And clap if the Tina Turner, what's love got to do with it was your favorite. That's my favorite. OK, but all right, so you guys preferred the longest one with the really bad pun at the end. So I'm just using that to like mentally, you know, what should we call it, calibrate what
01:02:21
I should do for you next time. All right, yep, yep. I think we can manage this. I know one about a man with an orange for a head that's quite special. There you go. I need one more second, please, because. How did everyone enjoy the social evening yesterday?
01:02:47
Like clapping slightly muted there by the people who are still hung over going, well, I enjoyed it, but I regret it. I got there at about midnight, and there was no food. So all I had to eat for the first few snacks
01:03:02
was nothing but like chocolate eclairs and cream cakes. And I had about six of them. And then suddenly they did bring loads more actual food out, and I felt that was a bit of a waste to have my starter be entirely cake. Oh my god, is there going to be audio in this demo as well? There will be a live demo, I hope.
01:03:22
So I would like to talk about my dream when I was young. My name is Wojciech Konjerski, and I always wanted to fly. I always wanted to be a pilot. I'm not sure if this dream will be fulfilled, but I found another alternative to the ways of flying.
01:03:41
So lately there is this huge topic, like drones, self-flying unmanned vehicles. So the plan of this talk is presented here. Basically I think that each lightning talk should have three main threads, like getting attention, inspire, and spread awareness.
01:04:02
In my case, I would like to get an attention by having a live demo. And yes, I will fly a quadcopter. I would like to, however, also present the fun part of flying a drone, obviously.
01:04:22
I'm going to skip the technical lesson because we have just five minutes, obviously. And what's more important is the awareness about this technology. It's currently banned in Spain. You cannot fly outside because it's a danger for other people than flying vehicles. I don't think this drone will go outside,
01:04:43
and I don't think it's a risk for property or other people by getting hurt. That's why I was reading this legislation, but it's difficult for me to read in Spanish, so I assume it's legal.
01:05:01
However, I consider myself to dream a lot and think about what might go wrong, and that's what I would like to present. So I'm going to fly this drone, which is not what you expect.
01:05:23
Let's hope it will fly. It can actually flip.
01:05:41
So here is one part of the live demo. The real reason is that lately, I've been also producing my own drone. And from my friend, I received the question when I was showing off, you know, by the way, I have created my own. I built my DIY drone. And the first question was, does it fly?
01:06:05
So here it is, the drone I have produced on my own. So this is for my friend, dedication.
01:06:21
I'm not sure the camera will register that. So that was the second part of my interactive demo.
01:06:42
So yes, Amaury, it flies. What might go wrong if you, why did I do this demo outside? So it turns out that you can really hurt somebody. If you didn't fly the drone on your own, you're not aware, because obviously, most of us play video games.
01:07:00
You might think it's very easy, and it is, if you already have the experience. So I'm not going to let you fly this drone, and I highly not recommend flying it, but we can talk about this small one after this talk, and that was the purpose of this meeting. So it's really important to think about the fact that you can hurt somebody,
01:07:21
and damage a property that you wouldn't expect you can damage, like a flying vehicle, or even a car driving the road. The drone can fall from the sky when the battery falls unexpectedly. So why wouldn't I fall over your heads here if I already know I can fly this drone?
01:07:41
So I estimated the risk is not bearable, and somebody can get hurt, because if it falls, and the quadcopter might get broken, but this is just a few dollars. And this is another thing I would like to stress. This technology is getting extremely cheap, and you wouldn't believe that this small drone I was flying at the beginning of this presentation
01:08:01
is around 20 bucks, and you can get it, and I'm not going to advertise where and what is the brand. I will just skip it. But it's definitely affordable, and most of the people can afford it. I highly recommend. It's a great exercise for your brain. And how does it relate to Python in this conference?
01:08:22
So I think that I fly with Python. I work at Applause. And the reason I'm talking about Applause is that we are hiring great engineers that are not only focused on one technology, and they are not focused only on Python, but they can actually do stuff around the world.
01:08:41
So I would like to thank you for the presentation. I'm really happy that nothing got broken, or nobody got hurt. So thank you. All right, our last talk is from Adam.
01:09:04
An apposite pachyderm, everyone. A relevant. Now you've learned three things from that joke. The word apposite, which means in the correct place, or appropriate. The word pachyderm, which means thick skinned in Greek. So that includes elephants and rhinoceroses, as is I.
01:09:23
And then you've got a joke out of it as well. What do you call an apposite pachyderm? A relevant. I liked it. Yeah, really long stories.
01:09:40
Man with an orange forehead. What else do we have? So it's coming up. This is the last talk, it's 6.30. Are there any announcements from the organizers? Have we got any organizers here? Anything we should know about tomorrow? Or anything we've got to get done? All right, I'm still wearing my beginner mentor badge, anyone. So any questions at this point?
01:10:04
What's with the stars? Well, the stars were from like this. This is the kind of thing you pick up if you hang around the Django Girls booth for more than about five minutes. So they gave me a present. It was really nice. It was a goat. So I thought I'd wear the stars, just to represent that.
01:10:23
There you go. Stars and mouses. Yeah, good question. Thank you. I was happy to answer it. Any others? They're flip-flops. You can't really wander around freely in flip-flops. This keeps me more grounded.
01:10:42
Definitely recommend it for talks. Because if you're with flip-flops and you need to go somewhere, you've got this sort of like, maybe I'll trip over them slightly and I feel like it's not quite right. Whereas if you've got no shoes, you know everything. You're in contact with the ground. You're safe. Like from the ground up, everything's all right. So hopefully the presentation is going to go well as well.
01:11:03
Like little details there. Who here read my tips for like, who here is a speaker? Who knows X-RANDA? Yeah, who here is like an X-RANDA contributor that would like to come and help?
01:11:26
Oh, screw it. Let's just do like this. This works. This works. That looks pretty good. You ready? Yeah, I'm ready. Go away.
01:11:42
Yeah, so in Python, we have all these very, very, very contrived things like program flow components like ifs and returns and rays. But in C, those guys only ever use return for returning an error code.
01:12:01
So we think this is a very contrived way of doing things. So me and my colleagues sat in the sauna the other day and discussed this problem and came up with a very good solution, which we call exceptional programming. So the solution is this.
01:12:21
We do like to see guys, but in reverse, and replace everything with exceptions. So this is obviously a very good method, because we don't return here. We don't do any sort of weirdness. We just, just graces. And we can show this off right here.
01:12:43
This obviously prints a one, exactly like you would expect or not. Can also show a very, this is obviously a very bad method where you use weirdness like returns. So let's show off what this results in.
01:13:14
So we have not only implemented this on methods,
01:13:23
but on compressive things as well. So obviously, you don't want to use ifs if you can choose to use exceptions instead. So this is a fist buss written purely in exceptional state flow.
01:13:41
Whoa. And since we, everyone who knows what fist buss is knows that this means that in the no exception error is basically equivalent to none in this case. Because if you don't raise anything, this is what will get raised.
01:14:04
So the fist buss is obviously working as intended. And this is all uploaded on GitHub. You can use it if you want to. I don't recommend it.
01:14:27
All right. Thanks very much. So that takes us to the end of the lightning talks. Thanks very much to each and every one of you for being absolutely wonderful. I must have spoken to about 100 people at this conference. Every single one of them have been amazing, lovely, wonderful people, completely different from each other in odd and weird ways.
01:14:43
And so thank you all for being exceptional. Thank you for being here. One more day at the conference. Give yourselves a big round of applause for yourselves, all the speakers, all the organizers, everyone. Have a lovely evening. Good night.
01:15:04
Good night.