Jesse Jiryu Davis : Python
12h01 01  juin
The Python Language Summit 2020
For the second year in a row, I was invited to report on the Python Language Summit. It’s a private gathering of Python language implementers (both the core developers of CPython and alternative Pythons), plus third-party library authors and other Python community members. This year, the...
22h25 07  décembre
PyGotham 2019 Speaker Coaching Recap
I’m one of the organizers for PyGotham, the yearly Python programming conference in New York City. This year thirteen PyGotham speakers received training from opera singer and speaking coach Melissa Collom, paid for by the conference and free for the speakers. Eight of the speakers were...
21h37 09  novembre
PyGotham 2019's ASL and Live Captioning Playbook
At PyGotham 2019 we provided live captioning and, for the first time, we offered American Sign Language interpretation and did targeted outreach to groups of Deaf programmers. As a result, we had a half-dozen Deaf attendees, and they reported they were able to fully participate in the conference in...
22h02 17  septembre
Free Coaching For PyGotham Speakers
I help organize PyGotham, NYC’s annual conference about the Python programming language. For the third year in a row, we’re giving our speakers free sessions with a professional speaking coach, opera singer Melissa Collom. In the past we’ve limited coaching to first...
15h07 04  juin
The Python Language Summit
Each year the Python core developers and a handful of Python community members have an exclusive one-day summit to discuss the future of the language. The presentations are not recorded and only one reporter is allowed—this year, I was the fortunate reporter invited to cover the summit...
12h07 27  avril
PyCon Canada Video: API Evolution the Right Way
I gave this talk at PyCon Canada in Toronto, in November 2018. You can also read my article on the same topic.
15h50 09  novembre
API Evolution the Right Way
Watch videos of me presenting this material at PyCon Canada or PyCon US.) Imagine you are a creator deity, designing a body for a creature. In your benevolence, you wish for the creature to evolve over time: first, because it must respond to changes in its environment, and second, because your...
11h14 16  octobre
Recap: PyGotham 2018 Speaker Coaching
With your help, we raised money for twelve PyGotham speakers to receive free training from opera singer and speaking coach Melissa Collom. Most of the speakers were new to the conference scene; Melissa helped them focus on their value to the audience, clarify their ideas, and speak with confidence...
15h17 19  juillet
Help Me Offer Professional Coaching to PyGotham Speakers
I want to raise 1500 for public-speaking coaching for first-time speakers at PyGotham, the New York City Python conference. Will you chip in? PyGotham has many first-time speakers this year. I think the conference can welcome a more diverse group of speakers and advance their careers if we offer...
04h11 11  juillet
Motor 2.0
To support multi-document transactions, I had to make breaking changes to Motor’s session API and release a major version bump, Motor 2.0. Since this is a major release I also deleted many helper methods and APIs that had been deprecated over time since Motor 1.0, most notably the old...
13h45 10  février
Further Reading About What To Expect When You're Expiring
At PyTennessee 2018 I gave a talk about writing Python object destructors called What To Expect When You’re Expiring: Rules for del . The rules for a destructor method are: Don’t access modules or globals. Don’t access threadlocals. Don’t take any locks. ...
21h51 03  février
Video: Writing Winning Proposals for Tech Conferences
I was invited by PyLadies Online to give a February 3, 2018 webinar about proposing talks, for the annual Global Diversity CFP Day. Watch the recording for my tips about advancing your conference-speaking career.
13h49 25  janvier
Embed Interns In Your Team, Don't Assign Them Science Fair Projects
It’s only January, but at MongoDB we’re already planning what our summer interns should work on. We have two tracks for interns: Team Track: Interns are integrated in a team for the duration of the summer, contributing to the team’s regular work. They start with...
08h40 02  janvier
Free Online Workshop for Conference Proposals, February 3
When you speak at a conference or meetup, you have a chance to explain your ideas and meet fellow specialists who share your passions. A tech talk opens surprising opportunities: it can lead to more speaking, or writing for prominent publishers, or collaborating with leaders in your field. Your...
15h47 18  décembre
Motor 1.2.0
I’m excited to announce version 1.2.0 of Motor, my async Python driver for MongoDB. Motor works with Python 2.7 and 3.4 , and it supports async MongoDB applications using either Tornado or asyncio. Version 1.2.0 is not substantially changed from the release candidate I announced last week...
15h59 13  décembre
Join Me at PyTennessee 2018
I’m looking forward to PyTennessee this February in Nashville. It’s a friendly Python conference, not too big, with great talks and smart people. Kind of like the city of Nashville itself: friendly and not too big. This year I’m giving two talks. One is about keeping...
07h01
Announcing Motor 1.2 Release Candidate, With MongoDB 3.6 Support
MongoDB 3.6 was released December 5. Today I’ve uploaded a release candidate for version 1.2 of Motor, the async Python driver for MongoDB. This will be a big release so I hope you try the release candidate and tell me if it works for you or if you find bugs. Install the release candidate...
10h12 24  novembre
Video From PloneConf 2017: Why Generosity Turns to Rage
I talked in Barcelona in October about being nice to newcomers who ask basic questions. We go to StackOverflow and mailing lists and forums with the intention to be generous, so why do we nevertheless act cruelly to beginners? Why do we lose our tempers? And what can we do about it? My talk got a...
13h32 22  octobre
Retrospective: Coaching for First-Time PyGotham Speakers
Last month I asked you to chip in enough money to hire a professional coach for every first-time PyGotham speaker. We raised 1340, which was enough not only for all the first-time speakers but for one additional speaker who wanted coaching. These eleven people had sessions with opera singer...
21h25 03  octobre
My conversation with Mark Weiss on the new "Using Reflection" podcast
I had a revealing conversation with my old colleague Mark Weiss on his new podcast, “Using Reflection.” We talked about the software industry’s sorry lack of mentorship, we contrasted the short-term mindset I had when I was a freelancer versus my long-term commitment...
15h25 11  septembre
Help Me Offer Professional Coaching to PyGotham Speakers
I want to raise 1200 for public-speaking coaching for first-time speakers at PyGotham, the New York City Python conference. Will you chip in? Update: As of October 4, we exceeded our original 1200 goal. We raised 1340, and provided coaching sessions for 11 speakers. PyGotham has many first-time...
10h57 24  juillet
Vote For Your Favorite PyGotham Talks
We received 195 proposals for talks at PyGotham this year. Now we have to find the best 50 or so. For the first time, we’re asking the community to vote on their favorite talks. Voting will close August 7th; then I and my comrades on the Program Committee will make a final selection. Your...
18h54 14  juillet
PyGotham's Call For Proposals Ends Tuesday at Noon Eastern
I know you want to speak at PyGotham in NYC this October 6 and 7. It’s an eclectic tech conference about Python, open source, policy, and culture. It’s easy to propose a talk, and I encourage you to propose a few of them. Propose a talk for PyGotham 2017 Illustration from...
22h16 07  juillet
Join Me and PyLadies NYC For a PyGotham Proposal Workshop
This Tuesday at 6:30pm, join me and other PyGotham organizers and the PyLadies Meetup. We’ll discuss what kind of talks the PyGotham conference is looking for, help you write your proposals, answer questions about our talk-selection process, and eat Turkish food. Register for PyGotham...
08h12 22  juin
New Driver Features for MongoDB 3.6
At MongoDB World this week, we announced the big features in our upcoming 3.6 release. I’m a driver developer, so I’ll share the details about the driver improvements that are coming in this version. I’ll cover six new features—the first two are performance...
09h01 21  mai
Video of My PyCon 2017 Talk, "Grok the GIL: Fast and Thread-Safe Python"
13h14 18  mai
Let's Grok the Gil at PyCon, Friday
I’m talking about fast and thread-safe Python tomorrow at 12:10, in the Oregon Ballroom 201-202. Come learn the internals of the Global Interpreter Lock, its effect on your code, and how to make your programs go fast without crashing. It boils down to two principles pithy enough to write...
08h39 04  mai
Join me for NYC Python Meetup's PyCon Warmup Sessions
The NYC Python Meetup is hosting a night of PyCon warmup talks next Thursday, May 11. I’ll present “Grok the GIL” and four of my friends are doing their PyCon talks and posters. Doors open at 6:30 and talks begin at 7. Matt Rocklin, Dask: A Pythonic...
11h52 26  avril
Grok the GIL: Write Fast and Thread-Safe Python
Cross-posted from Red Hat’s OpenSource.com.) When I was six years old I had a music box. I’d wind it up, and a ballerina revolved on top of the box while a mechanism inside plinked out “Twinkle Twinkle Little Star.” The thing must have been godawful tacky,...
09h54 11  avril
Join Me Thursday with ChiPy and Chicago PyLadies
I’m speaking Thursday night at a joint event for Chicago PyLadies and ChiPy. I’ll give you a sneak preview of my new PyCon talk, “Grok the GIL: Write Fast and Thread-Safe Python.” We’ll watch live demos, read ancient CPython source code, and learn a...
15h13 04  février
Monitoring MongoDB Driver Events In Motor
Do you want to know every MongoDB query or command your program sends, and the server’s reply to each? How about getting a notification whenever the driver detects a primary failover, or when a new secondary joins the replica set? Over the last year, MongoDB drivers have implemented these...
18h19 16  janvier
Python Async Coroutines: A Video Walkthrough
If your New Year’s resolution is to become an expert in Python coroutines, I have good news. Back in July, the book “500 Lines or Less: Experienced Programmers Solve Interesting Problems” was published, including the chapter I co-wrote with Guido van Rossum. Our...
21h25 04  janvier
Two Dramatic Performances About getaddrinfo
I just discovered this: a couple weeks ago the BSD Now podcast featured my article about making getaddrinfo concurrent in Python BSD. They were doing a roundup of stories about ancient BSD lore and included my tale about fixing an ancient bug. If you want to watch the two hosts cracking each other...
11h50 05  décembre
Making getaddrinfo Concurrent in Python On Mac OS and BSD
Tell us about the time you made DNS resolution concurrent in Python on Mac and BSD. No, no, you do not want to hear that story, my friends. It is nothing but old lore and #ifdefs. But you made Python more scalable. The saga of Steve Jobs was sung to you by a mysterious wizard with a fanciful...
22h58 29  novembre
Announcing Motor 1.1 For MongoDB 3.4
MongoDB 3.4 was released this morning; tonight I’ve released Motor 1.1 with support for the latest MongoDB features. Motor 1.1 now depends on PyMongo 3.4 or later. (It’s an annoying coincidence that the latest MongoDB and PyMongo versions are the same number.) With MongoDB 3.4...
12h15 17  novembre
The Saga of Concurrent DNS: My Article in the MongoDB Engineering Journal
Earlier this year I updated CPython to allow concurrent DNS resolution on Mac and BSD. My patch was trivial, but it took me weeks of archeological research to prove it was correct. In this article for the MongoDB Engineering Journal, I sing the ballad of my quest: The Saga of Concurrent DNS in...
18h23 02  novembre
Announcing Motor 1.0
More than four years ago, I was sitting through a particularly distracted period of meditation. It was a Saturday morning and I was sitting on a meditation cushion next to my girlfriend in her Brooklyn apartment, staring at the wall. I suddenly thought of a technique for turning PyMongo into an...
07h16 26  octobre
Announcing Motor 0.7
Three weeks after I released the beta, I’m proud to present Motor 0.7. For asynchronous I O Motor now uses a thread pool, which is faster and simpler than the prior implementation with greenlets. It no longer requires the greenlet package, and now requires the futures backport package on...
09h40 06  octobre
Computer Science For All
MongoDB offered a paid fellowship to two teachers this summer. Jeremy Mellema and Tim Chen worked with the MongoDB Education Team in our office, developing a computer science curriculum based on Python, MongoDB, and other technologies. This fall, they're starting to teach the new class in NYC...
08h28 03  octobre
Motor 0.7 Beta With Pymongo 2.9 And A Threaded Core
Please try the beta release of Motor 0.7 and let me know how it works for you: python -m pip install motor 0.7b0 Documentation: Motor beta documentation Motor 0.7 changelog In two ways, Motor 0.7 paves the way for Motor 1.0: first, its PyMongo dependency is upgraded from PyMongo 2.8 to 2.9....
20h50 26  juillet
Talk Python to Me: "Write an Excellent Programming Blog"
Michael Kennedy and I talked about writing about programming. What kind of writing is most valuable, how do you choose a topic, improve your writing, find an audience, and find the time to write? Listen to the podcast on the Talk Python To Me site. I've talked with Michael before: Episode 2 of...
15h32 12  juillet
34;500 Lines or Less" Published Tod
In this new book in the Architecture of Open Source Applications series, experienced programmers solve interesting problems in 500 lines of example code or less. Guido van Rossum and I contributed a chapter titled “A Web Crawler With asyncio Coroutines”; we demonstrate the bones...
22h44 23  juin
72% Of The People I Follow On Twitter Are Men
At least, that's my estimate. Twitter does not ask users their gender, so I have written a program that guesses based on their names. Among those who follow me, the distribution is even worse: 83% are men. None are gender-nonbinary as far as I can tell. The way to fix the first number is not...
08h30 02  juin
34;Write An Excellent Programming Blog" at PyCon 20
Video of my talk at PyCon 2016 in Portland. I talked about writing about programming. Voluminous related information, including a written version of this material, a screencast that I captioned, and links to further reading: The "Write an Excellent Programming Blog" Page
08h34 29  mai
Say Useful Things To An Audience That's Listening: 6 Tips For Delivering A PyCon Talk
Sylvia Pankhurst didn’t waste time on Q & A. Ten minutes before my first PyCon talk ever, I was standing at the podium. I had got up there as soon as the previous speaker stepped off—I had to be sure I was ready in time for my 3:15pm slot The nice session runner gave me...
13h34 26  mai
Captioning Myself And 6 Other Ways I'll Prepare In The 24 Hours Before I Speak At Pycon
At 1:10pm Pacific Time this Wednesday, I'll be in Portland, sitting in a lecture room at PyCon, judging the right moment to walk on stage and start my talk. I have a regimen for the 24 hours before that primes me to give you the best talk I can. This whole series of articles about conference...
22h07 26  avril
Please Vote For Me At Open Source Bridge
I love Open Source Bridge so much that I couldn't restrain myself: I submitted four talks. But I'm not embarrassed. My love for this conference must proclaim itself abundantly. So help me get accepted Please add stars and comments to the four talks I proposed. Update: "Black Pipe...
21h59 14  avril
Code Podcast: Event Loop & Coroutines
It was a treat to talk with Saà l Ibarra Corretgé and Andrey Salomatin for Episode Three of the Code Podcast. We discussed async event loops and coroutines in Python 3 and libuv. Andrey doesn't simply broadcast an interview: he carefully edits his episodes to tell a story about a specific...
16h24 05  avril
My First Two Articles For The PSF
I'm delighted to tell you, I've started writing on the Python Software Foundation's blog. The PSF's communications head Diana Clarke asked me last month if I could blog for them, to share duties with their inveterate writer Mary Ann Sushinsky. So far, I've talked with Damien...
22h28 13  mars
How To Play Foul With getaddrinfo()
I’m the referee for a road rally. You have to drive from New York to San Francisco in 48 hours, but—here’s the catch—I’m going to start my stopwatch before you can look at the map. Worse, there are hundreds of other drivers who need the map, and...