There are some things I could say.
But.
You can come to understand it yourself, also.
Go here: https://www.youtube.com/channel/UCxs2IIVXaEHHA4BtTiWZ2mQ
Start with the keynotes. https://www.youtube.com/channel/UCxs2IIVXaEHHA4BtTiWZ2mQ/search?query=keynote
For me, one of the top presentations was this https://www.youtube.com/watch?v=9G2s1TN9QQY
There are several closely related, but I found this very helpful.
Rants on the daily grind of building software. This has been moved to https://slott56.github.io. Fix your bookmarks.
Moved
Moved. See https://slott56.github.io. All new content goes to the new site. This is a legacy, and will likely be dropped five years after the last post in Jan 2023.
Showing posts with label pycon. Show all posts
Showing posts with label pycon. Show all posts
Tuesday, May 14, 2019
Tuesday, January 15, 2019
Super-picky Writing Advice
There are patterns to bad writing. I'll give some examples based on a blog post I was sent. It's also based -- indirectly -- on some of proposals I saw for PyCon and PyDataDC.
For the conference calls for papers, I can ask a few questions of the author, but that's about it.
For the blog post, I suggested a bunch of changes.
They balked.
Why ask for advice and then refuse to do anything? (We can conjecture they wanted a "good job" pat on the head. They didn't want to actually have me give them a list of errors to fix.)
One of the points of contention was "Not everyone has your depth of expertise."
Sigh.
The blog post was on Ubuntu admin: something I know approximately nothing about. Let me step away from being an expert, while sticking closely with being able to write. I work with editors who -- similarly -- can write without being deep technology experts. I'm trying to learn what and how they do it.
In this case, my editing was based on general patterns of weak writing.
Any blog post on Ubuntu admin that starts with "This is not just another blog post..." has started off with a flat-out contradiction. It emphatically is another blog post. You can't rise above the background noise of blog posts by writing a blog post that claims it's not a blog post. Sheesh. Find a better hook.
Any blog post on Ubuntu admin that includes "This blog post assumes the reader is familiar with linux sys administration." As if -- somehow -- a reader interested in Ubuntu admin could be confused by the required skills. It's clearly redundant. Cut it.
(This led to an immense back-and-forth with repeated insistence that *somehow* someone once got confused and *something* bad happened to someone. Once. My response was adamant. "It's redundant. The title says Ubuntu. That covered it. More repetition is an insult to the reader.")
Anything that has "this may nor may not work depending on your filesystem" is flat-out confusing: it covers both bases. Does it work or does it not work? Which is it? Clearly, there's some kind of precondition -- "must be this file system" or "most not be this file system" -- buried under "may or may not work." It's not that I know anything about Ubuntu file systems. But I can spot waffling.
Indeed, when you look at it, this is a "hook" to make the blog post useful and interesting. Some advice doesn't work. This advice always works. Simple statements of fact are better than contradictions and waffling.
Finally, there was a cautionary note that replacing "/swapfile" with "/ swapfile" would brick your OS. Which. Was. Crazy. It's really difficult to arbitrarily introduce spaces into shell commands and still have proper syntax. Sometimes a shell command with rando spaces may have proper syntax and may work. Most commands won't work at all with a rando space added. Try some and see.
What's more important is only one random punctuation error was listed. The special-case nature of this was a tip-off that something was not right with this advice.
What about a random ">" in the command? Or a random "|"? Not covered. A single space was considered worthy of mention. The rest. Meh.
(If you want details, it's was `dd -of=/swapfile ...`. If asked, I'd guess `dd -of=/ swapfile` is a syntax error because `swapfile` isn't a valid operand to `dd`. Not an expert. I didn't check. AFAIK, the author didn't actually check, either.)
None of this editing was based on any vast expertise. It was simple editorial work looking for some common problems with hasty writing.
One of the contentious back-and-forth issues was "I'm not writing a book, it's only a blog post."
Wait. What? Blog posts are often more widely-read than books. Look at Stack Overflow. If one of my books had the kind of readership my Stack Overflow answers have, I'd be living on royalty payments alone.
A blog post requires the same depth of care as a book.
This applies to proposed talks at conferences, also. The proposal needs to be carefully edited to reflect the final presentation's care and quality.
Thank goodness, most of the 100's of proposals I've looked at rarely have the four obvious problems listed above.
The problems I see in conference proposals are minor.
For the conference calls for papers, I can ask a few questions of the author, but that's about it.
For the blog post, I suggested a bunch of changes.
They balked.
Why ask for advice and then refuse to do anything? (We can conjecture they wanted a "good job" pat on the head. They didn't want to actually have me give them a list of errors to fix.)
One of the points of contention was "Not everyone has your depth of expertise."
Sigh.
The blog post was on Ubuntu admin: something I know approximately nothing about. Let me step away from being an expert, while sticking closely with being able to write. I work with editors who -- similarly -- can write without being deep technology experts. I'm trying to learn what and how they do it.
In this case, my editing was based on general patterns of weak writing.
- Contradictions
- Redundancy.
- Waffling.
- Special-Casing.
Any blog post on Ubuntu admin that starts with "This is not just another blog post..." has started off with a flat-out contradiction. It emphatically is another blog post. You can't rise above the background noise of blog posts by writing a blog post that claims it's not a blog post. Sheesh. Find a better hook.
Any blog post on Ubuntu admin that includes "This blog post assumes the reader is familiar with linux sys administration." As if -- somehow -- a reader interested in Ubuntu admin could be confused by the required skills. It's clearly redundant. Cut it.
(This led to an immense back-and-forth with repeated insistence that *somehow* someone once got confused and *something* bad happened to someone. Once. My response was adamant. "It's redundant. The title says Ubuntu. That covered it. More repetition is an insult to the reader.")
Anything that has "this may nor may not work depending on your filesystem" is flat-out confusing: it covers both bases. Does it work or does it not work? Which is it? Clearly, there's some kind of precondition -- "must be this file system" or "most not be this file system" -- buried under "may or may not work." It's not that I know anything about Ubuntu file systems. But I can spot waffling.
Indeed, when you look at it, this is a "hook" to make the blog post useful and interesting. Some advice doesn't work. This advice always works. Simple statements of fact are better than contradictions and waffling.
Finally, there was a cautionary note that replacing "/swapfile" with "/ swapfile" would brick your OS. Which. Was. Crazy. It's really difficult to arbitrarily introduce spaces into shell commands and still have proper syntax. Sometimes a shell command with rando spaces may have proper syntax and may work. Most commands won't work at all with a rando space added. Try some and see.
What's more important is only one random punctuation error was listed. The special-case nature of this was a tip-off that something was not right with this advice.
What about a random ">" in the command? Or a random "|"? Not covered. A single space was considered worthy of mention. The rest. Meh.
(If you want details, it's was `dd -of=/swapfile ...`. If asked, I'd guess `dd -of=/ swapfile` is a syntax error because `swapfile` isn't a valid operand to `dd`. Not an expert. I didn't check. AFAIK, the author didn't actually check, either.)
None of this editing was based on any vast expertise. It was simple editorial work looking for some common problems with hasty writing.
- Avoid clear contractions.
- Avoid redundancy.
- Don't waffle.
- Special cases are instances of a more general pattern. The pattern is more important than the case.
One of the contentious back-and-forth issues was "I'm not writing a book, it's only a blog post."
Wait. What? Blog posts are often more widely-read than books. Look at Stack Overflow. If one of my books had the kind of readership my Stack Overflow answers have, I'd be living on royalty payments alone.
A blog post requires the same depth of care as a book.
This applies to proposed talks at conferences, also. The proposal needs to be carefully edited to reflect the final presentation's care and quality.
Thank goodness, most of the 100's of proposals I've looked at rarely have the four obvious problems listed above.
The problems I see in conference proposals are minor.
- Incompleteness. A 45 minute talk boiled down to 4 bullet points doesn't give us any confidence. It's hard to imagine filling the whole time with useful content when looking at a four-sentence outline. Will it be rambling digressions? Or will we have disgruntled attendees who had hoped for more?
- Weirdly cute style. Things like "This is where I jokingly outline something something and the real fun begins." We assume everyone is witty and charming, you don't need to tell us. We assume all talks will be fun. Can we move on to the Python (or PyData) topics you'll cover?
- Sales Pitches. "[Speaker's name] is a respected industry expert who delivers exciting and transformative keynote addresses and will dynamically cover the state-of-the-art blah blah blah..." Please. What Python topic is this? We like to review the outlines without speaker information; we need to focus on the content. Subverting this by including the speaker's name in the description or outline is irritating.
I'm really pleased we see very few PyCon Code-of-Conduct problems in the calls for proposals. That is a delight.
Editing is hard work. I'm sorry to report that editing means making changes. If you ask for editorial advice, it helps to listen.
Editing is hard work. I'm sorry to report that editing means making changes. If you ask for editorial advice, it helps to listen.
Tuesday, January 1, 2019
PyCon Call for Proposals
PyCon CFP closes in a day or so. See https://us.pycon.org/2019/speaking/ for details.
After looking at 100's of proposals there are several broad categories.
These are -- of course -- refined into separate tracks by the program committee. But as a reader of outlines, there are a few BIG buckets I tend to throw things into.
There are some tangentially Python things.
After looking at 100's of proposals there are several broad categories.
- Some cool stuff I wrote (or helped write, or contributed to)
- Some cool aspect of Python the language
- Some cool thing happening in the community
These are -- of course -- refined into separate tracks by the program committee. But as a reader of outlines, there are a few BIG buckets I tend to throw things into.
There are some tangentially Python things.
- Using k8s (or some other tool or framework) with Python. The focus is often the tool, not Python.
- Doing some machine learning with Python. The focus is often on the ML application domain or the cool model that got produced. Again, Python sometimes feels secondary.
- Optimizing a personal (or enterprise) workflow or CI/CD pipeline. This can be helpful. But it can sometimes skip past Python and focus on IDE or something not solidly Python.
One of the most challenging are the personal journeys. These are often interesting stories. We like to see how others have succeeded. But. (And this is important.) Some of these cool personal journeys are only tangentially Pythonic, which can be disappointing. Some people can make good things happen in spite of big obstacles.
A personal journey can happen with a lot of technologies. When the proposal doesn't seem to show how Python was a unique enabler of the journey, then it's a cool talk for SXSW or OSCON, but might not be ideal for PyCon.
It's an honor to see everyone's ideas streaming through my in-box.
Tuesday, May 15, 2018
PyCon 2018 Highlights
And yes, this is truncated because I left early, and missed some important things. I'm going to have to catch on YouTube https://www.youtube.com/channel/UCsX05-2sVSH7Nx3zuk3NYuQ/videos
Of course, you'll also need to see the keynotes.
- Stacy Morse - Code Reviews Using Art Critique Principles - PyCon 2018
- Jake VanderPlas - Performance Python: Seven Strategies for Optimizing Your Numerical Code
- Jiaqi Liu - Building a Data Pipeline with Testing in Mind - PyCon 2018
- Brian Okken, Paul Everitt - Visual Testing with PyCharm and pytest - PyCon 2018
- Carol Willing - Practical Sphinx - PyCon 2018
- Dmitry Filippov, Ewa Jodlowska - By the Numbers: Python Community Trends in 2017/2018 - PyCon 2018
- David Beazley - Reinventing the Parser Generator - PyCon 2018
- Shannon Turner - You're an expert. Here's how to teach like one. - PyCon 2018
- Matt Davis - Python Performance Investigation by Example - PyCon 2018
- Barry Warsaw - Get your resources faster, with importlib.resources - PyCon 2018
Of course, you'll also need to see the keynotes.
- Jason Huggins - Keynote - PyCon 2018
- Dan Callahan - Keynote - PyCon 2018
- Saturday Morning Lightning Talks + Keynotes - PyCon 2018 *** Q's talk about using Python to teach kids to code is not to be missed. It's part of the Saturday Morning line-up.
- Sunday Morning Lightning Talks + Keynote - PyCon 2018
- PSF Community Service Awards - Catherine Devlin Keynote - Final Remarks - PyCon 2018
And there's a HUGE number of talks I didn't get to.
Tuesday, January 23, 2018
PyCon 2018 Program Committee
I was "volunteered" by a colleague to help the program committee for PyCon 2018. I rarely think of myself as qualified for this kind of thing. Yes. I have six books on Python (with a seventh on the way) but the PSF folks are brilliant and dedicated and hard-working, and I'm just a slob.
Yes, I do get to help the community by reviewing almost 700 individual proposals. Some good. Some really good. Some which we *must* hear.
The collateral benefit?
Side reading.
My browser history is filled with things I hadn't known existed.
Next time, I need to get started *before* the deadline so I can have a little more interaction with the authors. There were a few outlines where we could only discuss the possibility of making a change if the proposal was accepted.
In particular, there seemed to be a *lot* of Machine Learning-Bayesian-Deep Learning-Recommender-Data Science pitches that had abbreviated outlines. They tend to all look alike to someone who's not an expert. Five bullet points: the author's background, the problem domain, ML (or modeling or whatever), a Jupyter notebook showing the results, and a conclusion. Providing some distinct angle to the pitch (other than the problem domain) might help me understand them more fully. It seemed best to defer to the consensus on these.
I've been learning to live with my personal bias against meta-talks about building community. A presentation on community building at a community event seems redundant to me. But that doesn't mean they're not thorough, articulate talks that will be useful to others. Since I have a seat at the table, I'm biased. The Python tie-in feels weak, but our code of conduct (Open, Considerate, Respectful) means PyCon really is the place for more of this. Most importantly, they're objectively solid talks. (And -- as a member of the the over-represented old male nerd class, I do need to listen more.)
It's been enlightening. And the conference will rock.
I've been learning to live with my personal bias against meta-talks about building community. A presentation on community building at a community event seems redundant to me. But that doesn't mean they're not thorough, articulate talks that will be useful to others. Since I have a seat at the table, I'm biased. The Python tie-in feels weak, but our code of conduct (Open, Considerate, Respectful) means PyCon really is the place for more of this. Most importantly, they're objectively solid talks. (And -- as a member of the the over-represented old male nerd class, I do need to listen more.)
It's been enlightening. And the conference will rock.
Tuesday, November 17, 2015
Events: PyCon 2016, OSCon 2016
Many years ago ('07?) I went to my first PyCon. My situation changed and I didn't get to another PyCon until last year.
The story is a kind of major dumbosity. In '07 I could expense the trip as education. In '08, I'd lost that feature of my employment. After that I was actively figuring out how to be self-employed as a writer and technomad, and completely took my eye off the various kinds of tax deductions and sponsorship opportunities that I might have leveraged. It was too complex, arbitrary, and bewildering for me.
PyCon is an energizing event. I can't say enough good things about attending session after session on Python and the Python-related ecosystem. In particular, it's a joy to see people pitching their solutions to complex problems.
Here's a reminder: https://us.pycon.org/2016/
Since I do some work for O'Reilly media -- if a pair of webcasts count as work -- I think I want to see if I can finagle my way into OSCon, also.
Here's the reminder: http://conferences.oreilly.com/oscon/open-source
I think I can leverage some material from Functional Python Programming to create an interesting tutorial. My webcast on the five kinds of Python functions can expand into a bunch of hands-on-keyboard exercises to build examples of each kind of callable thingy.
Proposals are in. Waiting for comments. Fingers crossed.
Tuesday, April 7, 2015
Going to PyCon 2015
In Montreal! How cool is that?
I'll be working for my current employer, also a sponsor, to locate Python talent.
I'll have a few copies of my books that I can give away.
Most importantly, the promotional code PYCON_LOTT gives 50% off my Packt titles and runs from April 7th to April 14th.
I'll be working for my current employer, also a sponsor, to locate Python talent.
I'll have a few copies of my books that I can give away.
Most importantly, the promotional code PYCON_LOTT gives 50% off my Packt titles and runs from April 7th to April 14th.
Subscribe to:
Posts (Atom)