Merken

Keynote: Python now and in the future

Zitierlink des Filmsegments
Embed Code

Automatisierte Medienanalyse

Beta
Erkannte Entitäten
Sprachtranskript
that we can start OK so the keynote speaker speaker for this
morning I don't think it needs an introduction I think everybody knows reader so we are really honored to have you here again this year so welcome we thank you thank you
few
who everybody I'm so glad to be back at you from like a complete and give me 5 years and the last 1 and and yeah and Bilbo it's really a beautiful place to be of really enjoyed it so far you of inside and outside the conference center in so as I wrote
in the program I don't know if you that you read that I will have some prepared to we prepared remarks on the state of the Python community and Python future directions the 1st 4 allows this will be an
interactive Q & a session and so on I warned you but they're still
updates it's all going to be q in however don't get unduly worried to warm you up I have prepared a few questions and uh you can answer them no just getting how study find a recursive function that computes the factorial I really do have a few questions and I have some answers so my 1st question is what do you think of Django girls because of think if all our all our here and I don't hear a landowner all their resting they've been partying well I thought it was a was much cupcake really great talk I love the story telling I'm terrible at storytelling there's absolutely no story in my presentation today it's just branch to branch hopping also as you can tell I cannot make trees slides or beautiful drawings was absolutely stunned
when I heard that that all of or overlap a true that her own squirrels and badges and they were really good drawings was like I was I was really very impressed at there is another thing that they really liked in there talk they said at the end somewhere when we started we had no idea what we were doing or maybe they said we would we still don't know what we're doing that is very much in sort of resonates with how I look back when I started creating Python 25 years ago Python celebrates its 25th year here I had no idea what I was doing I had no idea that a programming language needed at community uh with lots of different roles in the community from core developer to supported to organize and that's a really important thing to recognize that you don't always know what you're doing but you still doing important work at 1 final remark about gender girls I don't know if all in all I reckon realize this themselves yet but they have created a strong brand in 1 year and of if you look at their list of how do you create a Django
girls invent they know how to keep the brand strong and sort of protected in a sense you have to register with the jangle roles Foundation that is that is amazing skill all by itself which which many beats actually don't have it all and terrible what that kind of stuff myself so I I predict that all lined up and genuine girls will go very far just based on the on the 1st year and that's really all I have to say about gender girls so now the question that you wanted to ask me for example why should I switched to buy them you can't show can't you already sort of give up that whole Python 3 stuff it's never gonna work look everybody around me is still using Python 2 . 5 well actually hopefully they have they have no excuse for
not being on 2 . 7 so and so well this is a complicated question why why should you switch and and and ultimately I'm not saying that you should switch I would like you to switch but I also recognize that it's difficult to switch it feels like a lot of hard to work that you could also stand instead on say improving the design of the website or adding features to your application or a library and instead you would have to spend it on only the sort of thing grunge work of 14 to by the end it is grunt work if you have a large body of code 10 thousand 100 thousand lines of code millions it will take a lot of effort to support that so why would why would you even bother why not just happily stay on Python 2 7 because by the 2 7 isn't dead yet it's it's going to be supported at at some level of support at least with security patches and maybe security features as needed for the next 5 years well I think the really is a better language and
for example it is a much better language to teach and so 1 thing I cornered that all 1 of them all as actually both us yesterday and they told me and they were very happy they said we do all our teaching in Python 3
and I realized while they wouldn't have been able to do any teaching using Python 3 if the Django core developers several years ago probably close to 5 years ago by now had actually started doing the grunt work of making Django support Python 3 and in their case without dropping support for Python 2 uh so that grunge were actually paid off because Django girls is teaching using Python 3 which really is a better language for teaching and Python to and let lots of so little awards have been removed from the language that make it more pleasant as a 1st experiences so yeah that's a by the just is a better language and it is getting better over time if you look at the list of new things in Python 3 of 5 which is going to be come out of the this fall that's an amazing list of new features lots of cool stuff python 2 on the other hand is a fine language and they will remain exactly what this yeah I will will fix the occasional but but it's sort of it's a asymptotically approaching 2 point 7 perfect it is never going going anywhere beyond so that's why you should switch to Python 3 because you will be all the way to benefit from all the good work that core developers and other contributors due to Python is by switching
so a related questions and maybe a little dated by now is 1 what should you would 2 . 8 to release well it would really solve any problems either 2 . 8 is has no new features compared to 2 . 7 and then we might as well call at 2 . 7 . 10 or something like that which actually is coming out eventually
at or you open the floodgates of backported features from Python 3 and then 14 to Python 2 . 8 would be almost as difficult as by porting to buy from 3 would be and the really big difference between 2 and 3 that can never be displayed is not sort something that you can gradually evolved into is unique code of change most other things you can you can write almost Python 3 codes 5 to 7 actually from future import print statement and you tri-accept syntax and go on but you to just cannot switch so enough is enough no new features
I want to focus the energy of the Python core development group which is already busy enough I want to focus its energy on making Python 3 that so what is my bike favorite Python 3 to 5 inches but I went over the list of what is new in Python field 5 and I realized that that list is way too long there are way too many cool new things so in some sense maybe everything together is my favorite new features and this this goes from
a vastly optimize function for scanning large directories the Scandura which will be used to make a list of walked faster and service it's about all by itself most people will never know and know it's there but it's an incredibly cool project there is a small community of people who will be very happy to hear that there is now a matrix multiply operator in the language there are no built-in types that this defined that operator it's an at sign by the way but it has its own mapping to would function and number like can start using it so eventually numerical Python uses and scientific Python users will be able to you right matrix multiplied in a much more natural fashion that a calling a function uh maybe my favorite feature all to be tied means because that's the only well that's actually 1 of 2 2 but the only major peppered I offer myself well it's been a huge struggle to get the have accepted uh which is kind of bizarre because I'm the beauty of L so I can just accept my own that if I want to but I think I thought in this particular case that that wouldn't really be fair I wanted to have a real discussion about the benefits and I wanted to have them independent as independent as possible plotting to sort of validates the design and uh March Shannon author of hot pi another by some interpreter that is faster than the by phone
gracefully agreed to be that media felt delegates for type means and uh we worked out a process and eventually using the process we work out a compromise and I'm very happy with the outcome and that sort of the outcome really is better because of all the effort of market in there so
think you mark and yet I think if you so if you got me unawares and you ask me what is your favorite featuring Python field 5 I would have to say it's that 4 9 2 which is literally the last step that was accepted the before beta 1 it's anything deaths plus in the weight expression underweight keywords and also acing for and in sync with and it's a new more natural way of spelling routines uh there is a direct follow-up home that a single male work that they did a few years ago and I don't think you're is here he is canadian novel that would preclude him from attending then but in absence show thank you URI great that great feature and I think that's a few years from now we'll look back at on that as 1 of the big new things are added to buy from the the fire so because that's mine favorite the yield 5 feature I don't know if that counts as a killer feature so another
question much more humbling a woman named I think laying out then yeah from Ukraine's you know who is who she is currently yesterday during lunch and asked me this and if it I really complicated reasons I mean yes it is true there are many many open bugs in the Python tracker and if you if you were to take the open blood at random from the track chances are very high that you'll you'll catch
about that is years old has several patches attached to it has several core developers discussing the patch to get several renowned for developers stating that this is a good patch that needs to go in or perhaps not but a long discussion as proposed code and yet the bug is open the patch has not been applied why is that I we I we just sort of is a core development group Elaine bunch of developers do they not accept patches is there some kind of old boys network where only patches written by were developed existing core developers ever get accepted or but what do you have to do well that it's it's unfortunately just effects of life in any large project I I haven't looked but I better if you look at the bug tracker for limits if they even have a bug tracker that it would be even worse I remember that I worked at Google on at engine project which had lots of external developers and the project was especially in its initial stage is very popular with very vocal developers we had a huge number of issues in the tracker many of which had sort of good discussion and it was very hard for the team to admit that we just couldn't address them all and so when someone reports a genuine but when you you don't have a reason to close it simply as like that's not the bond that's a feature you miss red documentation uh there lots of lots of those 2 the does get closed right away so the ones that stay open our are real blood but they may be hard to reproduce there are a lot of bugs in the tracker that only occur in 1 obscure platform maybe only 2 1 user who has a particular combination of things they do that makes the garbage collector a crack up were any number of reasons and there's probably some subtle bugs somewhere in the Python and nobody has been able to find so those of us don't have patches than there are books for feature proposals where someone actually made it a patch but usually if you read the whole discussion carefully you'll find out that there is hesitant to accept the new feature because either it is not consistent with all the features of the same module or there is
no doubt that it's a useful feature maybe it's of the line function and that people could easily come up with for themselves I maybe there is a change to something existing that is a backwards a so backwards incompatibility that the author of the patch and maybe several reviewers even don't see the sort of it's just really difficult to to start of but SAP patches and not break stuff all the time and and I know my personal experience of course going for 25 years back
25 years back I started accepting patches from others like 1st there were the people who worked with me in the same office after a year I started accepting patches from people all over the world and some patches are obviously improvements but they're also backwards incompatible in those early days I didn't mind if if everybody's Python code broke well that was maybe a hundred people and uh they would they would all have their coat fixed in a few minutes and cheap to fix was obvious nowadays if you if you introduce a new patch that accidentally breaks someone else's existing code that other person may not even be a Python programmer they may not even realize that they're using Python it may just be some installer script that comes with their Linux distribution uh dead breaks when they try to do a certain thing because some the new reserved word was introduced in the language by by the and optimistic that perhaps there are just so many different things you have to worry about does doesn't work across all platforms is that consistent is it easy to understand how would you write the documentation and provide tests so the also that sort of core developers have a limited amount of time and with open source development in general nobody actually gets paid to refu and applying for Python patches were all doing it in their spare time and that also means that if none of the core developers really cares about a particular feature and they don't care or know the person who submits the patch you can't really blame them collectively for not applying the patch if you if you have a professional software development and then you have presumably a commitment to releases and features that includes if you want to continue to be employed at this company you have to do a certain amount of grunge work and you do that in a rotation or sort of maybe through seniority however you resolve its when when people are paid to do software development they know that sort of doing unpleasant work that is not still necessary is part of the job with open source you have to volunteer to do the unpleasant stuff and some core developers have been doing unpleasant stuff for such a long time that did you want to take a break and sometimes that just means that there aren't enough people who know of a certain area a certain module for a certain part of the interpreter welling up uh to be able to accept the patch even if there are other people who say this looks great to me because how much do those people have you mean eventually there there has to be a chain of trust so anyway these these are many reasons why you have many walls old bugs in the tracker there is an additional reason which is a simple statistical effect that you often overlook which is that if if you survive if you randomly were to pick about from the tracker that was either open or closed you would probably find that close by most bugs are closed quickly because they're simple things perhaps some boards are close because they weren't actually bugs other blogs are close quickly because there's a very simple fix it's a typo but it's very obvious a problem that the everybody can agree only that's clearly there is little bug here Fig 6 6 . so this sort of the bugs that are easy to fix get fixed and closed easily and quickly and so what remains is served the bugs with a longer lifetime contribute much more strongly towards the collection of open dogs so this sort of I think the average age of above probably increases linearly at least with the age of the project so in a project like Python which is 25 years old even if abrupt but tracker isn't quite that old even if everything was was spinning perfectly and we had tons of core developers closing but you would still find a large number of mysteriously old and open and close bugs In the tracker and that's why there are so many open bugs in the track expressed as I can tell so another question that people always ask uh especially journalists who have sort of hope to get something at sort of headline worthy out out of me what will the future brain what's what's going to be the next big thing in Python what's whether you excited about in the next release I'm always sort of I'm always caught unawares when the questions so I had to sort of think really hard before I realized that that that's should also be 1 of my prepared questions today I I really
don't know what the future brings is very much dependent on what the community cares about and and sort of what certain individuals in the community suddenly decide to spend an insane amount of time on just like 25 years ago I spent an insane amount of time on Python in addition to my day job search it took over my day job for a while and and I have had to work out an agreement with management be able to continue doing that and so is if there's something
you really really desperately wants to contribute that could become the next big thing in Python I'm hoping to work more on type and uh I'm currently on a very long summer vacation when it come back to work in August I'm coming back to type hints and I'm going to work with other people interested in Taipei and and sort of really do stuff with that features so that better typing says something that people can actually use in practice it's not just a pep that as 1 little foothold in the standard library but there are many other things maybe in a few years I'll get bored with type hands and all suddenly devote my time to multi-core supports uh getting rid of the Guild mean it's not the topic that will go away people are working on it uh maybe by the time I will take over there still have a bright future ahead of them maybe by from will will get a boost on mobile platforms there is now a mobile sake uh where people are discussing issues like cross compiling 5 for Android and IOS and that's me may sort of evolved into a real capability of doing Python development for mobile platforms which would be great because you could write your application once in Python and running both on Windows phone Android and IOS wouldn't it be wonderful and there are also people and I considered the sort of the crazy lot but yet who knows Python in the browser there was a completely insane demo from someone who had done yet another Python in the browser implementation was someone from was alignment think that it involved rest somehow or maybe a mixing of 2 different talks there there there is some great experimental work going on in that area and I think they have an interactive prompted can import to or 3 important standard library models but nevertheless there may be something there but so
it's up to you and and I also hope that the rest of this this we have half an hour left and I hope that you are going to come up with questions for me now and uh I don't see people running up to the front with their questions that we have I think we have someone with a microphone if you could bring the microphone to the front of the room and I was actually hoping to alternate questions from men and women is there lot
so 1 of the female persuasion yes would you mind coming to France but can have evacuate to union the Brave One the thank you so my question is could you give us more insight into the Gill problem and how this issue is being addressed last very good the guilt problem so well how much time have you got long ago python was single-threaded and everything was happy and there was computers had only a single core at some point we added of that in facility but computers were still single core so what offended with multiple threads did was they would basically just share that single CPU between different threads of execution python the Python and Gill is a C Python problem primarily is implemented in C and if multiple threads were to access the same object from C code and they would run into race conditions a race condition is where 2 of try to update some shared piece of data and sort of they get confused like you add 1 to a reference count and is a real example suppose you have to use that's that they're both using the same object because the python uses reference counting as the primary garbage collection mechanism they both wanted increments the reference count so the way that is done is they read the reference count into a register add 1 to it and right back so it can In multi-threaded code if you didn't have the gills 2 threads at the sea level could do the same thing they could both be dereferenced suppose it starts out of 42 they both moved that into a different register of updated 243 and then right back 40 3 and so now the reference count which logically would have to be incremented by 2 is actually only incremented by 1 but if there are no more race conditions eventually the object will have a reference count of 0 well it's actually ought to have a reference count of 1 at which point it will be prematurely free and then the remaining that that still has a reference to an object will continue to use an object that it's actually being freedom of memory has been reallocated to some other objects and all hell breaks loose so In order to prevent this 1 solution could be every object has its own locked in in order to increment the reference count to 1st grab the walk for that object then you can safely Incremental Reference current then you release the block of maybe you hold onto that block as long as you're accessing other parts of the objects that would require a lot of locks and lot of blocking operations and people have experimented with that approach and the problem is that the if your program does not need multiple threads just locking deserted the locking without other that's contented contention for the same for locks because there's so many reference count operations and so many other situations where you need to keep the data locked the object locks before you can do anything with it even read it because someone else might be right you might be writing it up it was slow you down like a factor of 2 so Python would be twice as slow just in order to be able to support melted core and so you would start seeing benefits only when you use feel more words in Paris and also this would have been a very difficult architectural change to see Python and it would break all C extensions in so rather than introducing per object locks we introduce a single walk that blocks the and and essentially looks all objects together both the reference counts and their contents uh and that is the global interpreter walk which if you look in the code I'm not even sure that it's called global interpreter log although by now there might be a comment saying this is the global interpret a lot because that the term was invented long after the concept was introduced in coordinates so the problem is that fast forward 10 15 years from the introduction of the Bill now multiple courses are commonly present on even on laptops and people actually would like to be able to write multi-threaded code without having to resort to multiple processing currently using the multiprocessing module you can use multiple chorus but there are certain costs involved like you may have to really really import all code in every process uh you have to serialize to pickling you objects so very large objects are very large to ease of objects are inefficient to pass around back and forth and so multiprocessing is not a complete solution so people would like to see multiple multiple threads supported in a way that doesn't require guild or maybe maybe will have to break down and do something like that the per-object locks the week if if you start if you could design a language from scratch that didn't need a guild you would probably design of language without mutable objects or you start out limited mutability too much more sort of to a small number of specific object types rather than making pretty much everything mutable from models to classes to instance us to dictionaries 2 lists of you're taking the words right out of my mouth so we have to find a compromise like like almost everything in life in my experience at least involves compromises at and we have some exceedingly clever people who have been thinking about this for a long time and exploring different uh different ideas like common Rego is working on software transactional memory probably has been
working on it for 5 or 10 years and there's also a trend Nelson um currently works for continuing analytics who apparently also has a brain the size of a planet because he managed to at least on Windows only on Windows introduced changes to the reference counting macros in Python and changes to the interpreter that make them feel free execution possible in limited situations so hopefully something will will eventually happen there and there are other people who were threatening to certain their head against this particular wall until it breaks that high I expected the eventually will have something breaking through that wall but instead the well if you have ideas about this without chain without redesigning the language so it would not be Python uh I'm all ears anomaly years for the next question it can start during inference I in yourself using by by underlying digits to understand and maybe in the future you see the part by being the default and the brother and so rule how do I see the future of pipeline that the dragon if you yourself by using by and the whole like this that the future subject that the features of my biology than STM and then if you see by by playing it could become the default interpret the that again I am not myself using pipeline it it just doesn't naturally come up I have occasionally downloaded it and played with it for a few seconds and I'm happy with what I see but I said if I have 2 basic modes in which I used by for myself and 1 is I write like very short scripts to solve a very simple a problem almost more like a demo and I have no reason not to use just the pi from that have already built from sea by from sources that I always have 4 versions in my home directory the other mode in which I used by from is as Dropbox engineer and we deploy code to the drop box production clusters which runs a specially modified version of Python 2 . 7 the I said it it's not a secret but there are actually a drop box I believe there is 1 small surface that does use by by because it is faster all the rest of drop box is not use Python has not used by pi because it is not sufficiently compatible or perhaps because we we would be worried that there would be a hidden incompatibilities somewhere that would break our production in a very subtle way and we have enough of that without having to blame the language nevertheless would do I think of pi pi and the features it provides I think the pipeline of very good tools in in the fight against complacency bye bye shows that you can execute its Python code faster than by and by by shows that sort of by provides a test for our interesting ideas like STM if you if you look at where pi pi is actually used as sort of at a large scale you would you would actually have to ask the by developers have leave there talking they're giving a talk sometime at this conference my hunch is that this sort of conservative stance is to not use by unless you have a proven need for the extra speed unfortunately that sort of that that is a self-defeating principle because by the time you know that you I would have benefited from the extra speed you've probably already deployed to enough different servers it would be a major engineering task to worse which and again just like people don't like to have to spend engineering time take it away from feature development or application fixing and put it into work reporting to Python 3 they also don't like to take put that effort into testing with and there are real limitations to pipeline In a typical deployment like and Dropbox we have hundreds of third-party dependencies some of which are very old I think 1 or 2 of which uh we only have a binary for or at least we we have lost the art of exactly how to produce that binary from the sources that we also have at then in this these are just the mean if you ask anybody who has a million or more lines of Python code the stories are the same that means that that I'm just giving a few years ago I would have been able to to sort of tell you similar stories about Python usage and Google I no longer work they're selling I'm not telling you that that and still know what the situation there was like a few years ago maybe pi needs of better marketing teams uh maybe they need to hire all allowed the brand specialists to improved their their certain that the perceived quality of the brand this really cool project that there are all these sort of check boxes that are hard to check off make it easy to say well we'll go with with the tried and trusted by from C Python to build 7
I instead of asking 1 1 question I'd like to ask by short questions that is the 1 where it ends the case so the 1st 1 was the and what is your favorite web framework what is my favorite web server
0 my sorry my favorite web framework well I only ever right and 1 web app in any framework and then I don't have an opportunity to rights where stuff for a long time and then when I have to do some more web stuff uh there is a new framework anything the like the latest 1 i've tried was flasks and I don't it is my favorite but it's cool at the end what is your favorite testing library my favorite testing library is uh mostly just the standard library unit test and mark the advice and the those are all my specially marked is very good in Python 3 in the standard library and what is your favorite text editor my favorite text editor is the max in that if you'll allow me there's a funny story here which is that they also occasionally used the eye on him a an word for historical reasons because I live I used the in 30 years ago before I was introduced to the next and switched when I use them for 5 minutes it takes me 15 minutes to get used back to the next after I switch back to what is your favorite languages besides 0 I used to say see but that's kind of boring so I have it from from people I trust very much that the modern C + + it's actually a really good language with like that type inferencing and land us and smart pointers I've doubled little bit in that and I found it certainly much more pleasant than old C + + like I remembered um I quite like go although I have never never actually written anything significant in and uh again mostly from looking at it and talking to the designers so little bits and really likes with I think swift is a is a well-designed language using sort of the uh steel still features from other languages that you like which is really uh flattering and so they still quite a bit from Python but they also managed to make that's with the language quite coherent use it's easy to sort of come up with a language that steals the wrong features from all different languages and you end up with this this horrible Frankenstein monster of a language but Swift is the opposite thing they combined all the only still stuff that that fit well with the core design principles is swift open source that I've heard that it has recently been open-sourced I don't know how many achieved that announcement really has it could be that there is a real compiler that is not open source that is Apple optimized or in all sorts of reasons why open sourcing is not always the same as open source in yeah I think I am the last question is what is your favorite exceptions this what is my favorite exception at at KeyboardInterrupt interrupt we have
10 minutes but I would like to to hear your comments on the vitality of the Python community compared to all other language communities how are we doing when it comes to the uh general acceptance hardwood doing when it comes to innovation in the language so monitor I'm
like the worst person to ask to compare the Python community to order language communities because I'm like totally at this is the center of the Python community where everything seems hunky dory and firing on all 5 cylinders and sort of new stuff is always come along and and I see lots of women in the audience much more than 5 years ago I believe well so I I see our community as incredibly phytol and and growing and successful and I see the language has been very successful course you someone who happens to be the job and that and who has been doing Java worked for 25 years might perceive the Java Community as exactly that and sort of at the periphery see this little Python thing that never will amount to anything so I I don't know how to compare I sort of I can do easily name to language communities that when I started with Python were much more vibrant and have now sort of dwindled dramatically swirl antiquity K both uh in in 95 I went to uh scripting language conference and met Larry Wall and you almost a house and few other people who have done scripting which need scripting languages things up and I was really looking up because Perl was like everywhere super successful O'Reilly was Running Pearl conferences that had thousands of attendees were the that's what it felt like a article tk was clearly number 2 in that space and pi from was just the sort of up-and-coming little guys who still had to prove themselves and had this big disadvantage of the crazy white spaceship and uh focusing more only sort of allegations than on being able to really quickly without the most crazy script in 1 line as somehow so tickle tk pretty much got destroyed 1 Ousterhout decided that he no longer wanted to leave that community it's my feeling and uh Pearl I think was severely damaged by April 5 Perl 6 rift and that sort of even when I started with Python 3 I could see that's happening in the Perl 6 world and I wanted the to be much closer to 5 2 now you could argue that looking back still don't know what I was doing but they still think that as a community were strong and so could but maybe comparing us to Pearl and tickle is easy uh Ruby it's a very very sort of happy community I believe much smaller than life on but I don't really know any numbers but uh yeah there's sort of big languages with lots of followers DEHP JavaScript data I'm sure pretty happy what's I I mean at every Python Conference there are always plenty of talks that explained in much detail something cool about JavaScript for example because you can't get very far apart from without doing JavaScript and I'm sure this might be a bit
like the profile and 6 things about are there any circumstances where you would accept the breaking the CAP idea of Python modules that you would actually consider it worthwhile through have people do the migration work to something new breaking the SE
API well there there's sort of 2 different ways of breaking it there is an API which is a limited set of C API is where we strive for binary compatibility so a binary extension module compiled for Python for we should work with field 5 and and actually there's quite a wide range but you have to sort of limit yourself to I need sizable but but still limited subset of the C API on the other side of the spectrum you could argue that we're not really breaking down C API when we just change what the macros to and people who experiments with an say guilt-free free coding often redefined the reference counting macros to do something else either sort of implicitly wire lock or they turn them into no-ops because everything is garbage collected anyway or that invoke special platform-dependent uh atomic increment and decrement instructions which means that you have would have to recompile C extensions in order for them to work but that's still arguably it's within the bounds of the CAP although not within the bounds of their that API compatibility beyond that at well we we have occupationally I believe changed API is where we found that this signature was just wrong we've but we've we've almost always we introduced a new function with the correct signature and mapped the old function to something that was backward compatible so we we do take this pretty seriously and so that the thing is that for so many people Python is just blue language that is used to glue various extension models together that if you break the ability to of using of using extension modules albeit maybe requiring recompilation of everything python reason for existence would would disappear which which is unfortunately also part of the story of the difficulty for pi pi acceptance despite find typically has a very different sort of natural API to talk to its objects from C code R C + + code the best questions hi I covered
1st question what things you create about Python the what things do I hate
about Python anything having to do with package distribution uh version sort of versions q version dependencies that that is just such an endless I the read it when ever someone at the company where I work says can I ask you a simple by from question because almost invariable well let's say 50 per cent of the the cases it's not the Python question at all but they've got some kind of messed with the the import pass that is just there is just no easy answers so those that that's sort of the general area of Python that I hate version of some sort the a average time knowing but i'm from other questions so but do we really want or the and we have a very important thing now we 1 of the things we look for going on OK notice so form and the annotation 1 so will the functional along the can we want to give him a Britain's abraded account presented with full adjusted to give to their own last little data out here of the they this is not for restoration of the country so all of we to be there but the that the theory include so I think you guys perhaps but don't know there have been coffee break does another reminder so bring food to the role
Roboter
Metropolitan area network
Elektronischer Programmführer
Red Hat
Oval
Baum <Mathematik>
Computeranimation
Beobachtungsstudie
Netzwerktopologie
Rechenschieber
Lineares Funktional
Thetafunktion
Verzweigendes Programm
Aggregatzustand
Kombinatorische Gruppentheorie
Optimierung
Computeranimation
Aggregatzustand
Richtung
Programmiersprache
Subtraktion
Schwebung
Geschlecht <Mathematik>
Mailing-Liste
Speicherabzug
Softwareentwickler
Quick-Sort
Computeranimation
Patch <Software>
Web Site
Computersicherheit
Formale Sprache
Programmbibliothek
Kartesische Koordinaten
Gerade
Code
Quick-Sort
Computeranimation
Übergang
Punkt
Güte der Anpassung
Formale Sprache
Ablöseblase
Speicherabzug
Mailing-Liste
Softwareentwickler
Quick-Sort
Computeranimation
Subtraktion
Befehl <Informatik>
Eindeutigkeit
Mathematisierung
Hochdruck
Gruppenkeim
Mailing-Liste
Code
Computeranimation
Energiedichte
Datenfeld
Lesezeichen <Internet>
Codierung
Speicherabzug
Softwareentwickler
Autorisierung
Matrizenrechnung
Interpretierer
Lineares Funktional
Nichtlinearer Operator
Prozess <Physik>
Formale Sprache
Validität
Zahlenbereich
Mailing-Liste
Kardinalzahl
Störungstheorie
Quick-Sort
Computeranimation
Arithmetisches Mittel
Mapping <Computergraphik>
Multiplikation
Dienst <Informatik>
Vorzeichen <Mathematik>
Hypermedia
Datentyp
Vorlesung/Konferenz
Projektive Ebene
Verzeichnisdienst
Offene Menge
Gewicht <Mathematik>
Einfache Genauigkeit
Computeranimation
Data Mining
Programmfehler
Metropolitan area network
Arithmetischer Ausdruck
Weg <Topologie>
Datenfeld
Lesezeichen <Internet>
Koroutine
Randomisierung
Offene Menge
Adressraum
Schaltnetz
Mathematisierung
Gruppenkeim
Zahlenbereich
Systemplattform
Code
Computeranimation
Eins
Metropolitan area network
Inverser Limes
Softwareentwickler
Gerade
Autorisierung
Soundverarbeitung
Videospiel
Lineares Funktional
Datennetz
Güte der Anpassung
Modul
Quick-Sort
Programmfehler
Patch <Software>
Ablöseblase
Speicherabzug
Projektive Ebene
Speicherbereinigung
Baum <Mathematik>
Sichtbarkeitsverfahren
Distributionstheorie
Programmiergerät
Web log
Abgeschlossene Menge
Zahlenbereich
Drehung
Systemplattform
Hinterlegungsverfahren <Kryptologie>
Service provider
Code
Whiteboard
Computeranimation
Weg <Topologie>
Datenmanagement
Prozess <Informatik>
Skript <Programm>
Kontrollstruktur
Inverser Limes
Softwareentwickler
Soundverarbeitung
Softwaretest
Addition
Interpretierer
Open Source
Modul
Quick-Sort
Office-Paket
Programmfehler
Patch <Software>
Verkettung <Informatik>
Flächeninhalt
Offene Menge
Mereologie
Speicherabzug
Wort <Informatik>
Projektive Ebene
Demo <Programm>
Browser
Mobiles Internet
Implementierung
Kartesische Koordinaten
Humanoider Roboter
Ein-Ausgabe
Systemplattform
Quick-Sort
Computeranimation
Arithmetisches Mittel
Informationsmodellierung
Flächeninhalt
Bildschirmfenster
Datentyp
Programmbibliothek
Mixed Reality
Äußere Algebra eines Moduls
Softwareentwickler
Standardabweichung
Demo <Programm>
Punkt
Prozess <Physik>
Inferenz <Künstliche Intelligenz>
Freeware
Formale Sprache
Versionsverwaltung
Familie <Mathematik>
Kartesische Koordinaten
Computerunterstütztes Verfahren
Zählen
Computeranimation
Dämpfung
Bildschirmfenster
Skript <Programm>
Kontrollstruktur
Tropfen
Default
Gerade
Softwaretest
Umwandlungsenthalpie
Zentrische Streckung
ATM
Kraftfahrzeugmechatroniker
Interpretierer
Nichtlinearer Operator
Vervollständigung <Mathematik>
Ähnlichkeitsgeometrie
p-Block
Quellcode
Biprodukt
Teilbarkeit
Transaktionsverwaltung
Verkettung <Informatik>
Twitter <Softwareplattform>
Digitalisierer
Konditionszahl
Festspeicher
Server
Projektive Ebene
Ordnung <Mathematik>
Verzeichnisdienst
Makrobefehl
Instantiierung
Subtraktion
Quader
Mathematisierung
Klasse <Mathematik>
Zahlenbereich
Analytische Menge
Zentraleinheit
Term
Code
Task
Informationsmodellierung
Multiplikation
Flächentheorie
Software
Notebook-Computer
Datentyp
Inverser Limes
Thread
Inhalt <Mathematik>
Cluster <Rechnernetz>
Softwareentwickler
Rastertunnelmikroskop
Maßerweiterung
Optimierung
Schreib-Lese-Kopf
Videospiel
Zwei
Einfache Genauigkeit
Modul
Quick-Sort
Data Dictionary
Objekt <Kategorie>
Mereologie
Wort <Informatik>
Speicherabzug
Energieerhaltung
Speicherbereinigung
Bit
Komponententest
Extrempunkt
Compiler
Web-Applikation
Formale Sprache
Interrupt <Informatik>
Framework <Informatik>
Computeranimation
Monster-Gruppe
Benutzerbeteiligung
Lesezeichen <Internet>
Datentyp
Programmbibliothek
Zeiger <Informatik>
Softwaretest
Open Source
Ausnahmebehandlung
Quick-Sort
Texteditor
Schlussfolgern
Rechter Winkel
Server
Speicherabzug
Wort <Informatik>
Fitnessfunktion
Standardabweichung
Bit
Formale Sprache
Applet
Zahlenbereich
Quick-Sort
Raum-Zeit
Computeranimation
Teilmenge
Prozess <Informatik>
Skript <Programm>
Ordnung <Mathematik>
Gerade
Kreiszylinder
Subtraktion
Natürliche Zahl
Compiler
Formale Sprache
Ordinalzahl
Punktspektrum
Binärcode
Code
Limesmenge
Computeranimation
Gebundener Zustand
Spannweite <Stochastik>
Informationsmodellierung
Existenzsatz
Migration <Informatik>
Binärdaten
Inverser Limes
Maßerweiterung
Lineares Funktional
Profil <Aerodynamik>
Elektronische Unterschrift
Modul
Quick-Sort
Kugelkappe
Objekt <Kategorie>
Teilmenge
Datenfeld
Mereologie
Codierung
Ordnung <Mathematik>
Makrobefehl
Distributionstheorie
Versionsverwaltung
Quick-Sort
Physikalische Theorie
Menge
Computeranimation
Bildschirmmaske
Mailing-Liste
Flächeninhalt
Kontrollstruktur
Message-Passing
Lesen <Datenverarbeitung>
Normalvektor
Roboter
Metropolitan area network
Red Hat
Computeranimation

Metadaten

Formale Metadaten

Titel Keynote: Python now and in the future
Serientitel EuroPython 2015
Teil 01
Anzahl der Teile 173
Autor Rossum, Guido van
Lizenz CC-Namensnennung - keine kommerzielle Nutzung - Weitergabe unter gleichen Bedingungen 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen und nicht-kommerziellen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen und das Werk bzw. diesen Inhalt auch in veränderter Form nur unter den Bedingungen dieser Lizenz weitergeben
DOI 10.5446/20120
Herausgeber EuroPython
Erscheinungsjahr 2015
Sprache Englisch
Produktionsort Bilbao, Euskadi, Spain

Inhaltliche Metadaten

Fachgebiet Informatik
Abstract Guido van Rossum - Keynote: Python now and in the future This is *your* keynote! I will have some prepared remarks on the state of the Python community and Python's future directions, but first and foremost this will be an interactive Q&A session.
Schlagwörter EuroPython Conference
EP 2015
EuroPython 2015

Ähnliche Filme

Loading...