@treyhunner@mastodon.social
@treyhunner@mastodon.social avatar

treyhunner

@treyhunner@mastodon.social

#Python & #Django educator & team trainer

I help folks sharpen their Python skills with https://PythonMorsels.com๐Ÿ๐Ÿช

#pythonoddity

Also a #humanist #YIMBY who is attempting more ethical eating (#vegetarian, not yet #vegan) and thinks #economics is highly underrated, but I don't post about those topics very often.

he/him

This profile is from a federated server and may be incomplete. Browse more on the original instance.

treyhunner, to python
@treyhunner@mastodon.social avatar

On the other hand, adding or removing items from the beginning of a list is very slow (it requires shifting all items after the change).

Read more ๐Ÿ‘‰ https://trey.io/d8D57O

treyhunner, to vegan
@treyhunner@mastodon.social avatar

I decided to be for the week of 2024. I put little effort into this endeavor but I did think about it during each meal.

I'd like to share how it went, but first I'll note why I did this.

Since early 2020, I've been attempting to gradually reducing the animal suffering I cause (as much as I'm individually able to).

I focused one-by-one on small habit changes that had large impacts (e.g. I completely cut out chicken first). After ~2 years of this, I was .

treyhunner,
@treyhunner@mastodon.social avatar

More on why...

In 2020 I realized I was living with some cognitive dissonance that I'd never seriously considered.

Namely, I believe that:

  1. The outcomes of my actions are more important than my intent
  2. Most animals likely experience pain & pleasure within ~2 orders of magnitude of mine
  3. Most farmed animals greatly suffer for most of their lives
  4. Through my habits, I implicitly accept this suffering AND signal my acceptance to the economy

And yet I eat any and all meat that I can. ๐Ÿค”

treyhunner,
@treyhunner@mastodon.social avatar

My reasoning aside (always happy to chat about this though)...

How did this experiment go?

In short: it was painful (given the food that was around me) and I kept accidentally eating dairy!

First, the hotel breakfast... ๐Ÿจ

I ate the free breakfast in my hotel on tutorial and sprint days. They had heated containers of eggs, sausage, potatoes, biscuits, and gravy. I assumed the biscuits and gravy both had milk and butter in them, so only the potatoes were likely to be vegan. ๐Ÿฅ”

treyhunner,
@treyhunner@mastodon.social avatar

The hotel had some breakfast cereals that were likely vegan, but the only milk disperser was cow's milk. They also had a little fridge, but it had yogurts rather than non-dairy milks.

The vegan breakfast I settled on was an English muffins with peanut butter and jelly, oatmeal with raisins, and potatoes covered in hot sauce.

That wasn't bad, but I ate this same breakfast for 4 days, which got boring. If they'd had plant-based milk I would have loved to eat some bowls of various cold cereals.

treyhunner,
@treyhunner@mastodon.social avatar

What about at PyCon?

Well, during the tutorial days the lunch was chicken salad minus the chicken. ๐Ÿฅ— I ate 2 lunches one day. ๐Ÿ˜ข

I would have LOVED beans, peas, tofu, or quinoa in the salad. Our bodies don't need a ton of protein, but they do need SOME!

Fortunately, lunch during the 3 talk days was much better. The 2 dietary needs tables at the end of the lunch lines had a mix of gluten free and vegan options and the vegan options often involved quinoa, black beans, bread, and other proteins.

treyhunner,
@treyhunner@mastodon.social avatar

Eating out took research, but the 4 restaurants I went to were fairly popular and had decent vegan options. ๐Ÿ’—

The sprint days were a bit like the tutorial days for me. Free boring vegan hotel breakfast and unfilling vegan lunches.

Finding vegan food in spaces (like the hotel) that didn't label their ingredients and was very challenging and I found myself accidentally eating non-vegan foods. I ate cookies and other treats without thinking about the fact that they likely had dairy in them.

treyhunner,
@treyhunner@mastodon.social avatar

One of the most disappointing meals was in the airport. I ordered a Beyond Burger, which was the one filling vegan option I saw on the menu. ๐Ÿ”

A few minutes later, I was informed that they had run out of Beyond Burgers. ๐Ÿ˜ญ

I ended up ordering a pretzel, a salad minus the meat and cheese, fries, and broccoli. The pretzel may have involved butter and the salad ended up having cheese on it, but I gave up at that point. There wasn't really even a vegetarian option on that menu besides the burger.

treyhunner,
@treyhunner@mastodon.social avatar

We live in a world of carnism & the 4 N's (eating meat is thought to be normal, necessary, natural, and nice).

I love the taste of nearly all meats and I've gone through my life eating animal products without thinking twice.

I'll definitely re-do this experiment at PyCon next year.

In the meantime, I'll continue my journey of modifying my eating habits by starting at home. It's easier to gradually remove dairy and egg products at home before I do so in environments I have little control over.

treyhunner,
@treyhunner@mastodon.social avatar

@mariatta I did not know about this! I'll definitely consider this next year during tutorial and sprint days. Thanks!

treyhunner, to random
@treyhunner@mastodon.social avatar

What's the wisest thing to do 10 minutes before teaching? Compiling and installing a new version of Python 3.13. ๐Ÿคท

treyhunner,
@treyhunner@mastodon.social avatar

@rprimus glad you enjoyed it!

phildini, to python
@phildini@wandering.shop avatar

Hi folks! Former chair of @ThePSF Conduct Working Group with a message that might be timely!

If you see a member of the community behaving against the spirit or the letter of the CoC, especially if the comments are in public about an official event, especially if using a hashtag, please report to conduct-wg@python.org as you are comfortable.

The WG might not be able to take action due to the CoCโ€™s scope, but its useful background for the inevitable next incident.

Thanks! โœจ

treyhunner,
@treyhunner@mastodon.social avatar

@phildini not in the WG anymore but still able to put that "well I need to take action here" hat on. Thank you Philip! ๐Ÿ’–

treyhunner, to random
@treyhunner@mastodon.social avatar

Years ago, a meetup I helped organize explicitly added a CoC and we decided to note its importance during every meeting. I remember discussing with some members that having a CoC made them feel anxious that they might inadvertently violate the CoC. They were also concerned that some folks might even stop coming because we added a CoC.

My response at the time was "good".

Sometimes we take on discomfort to bring greater comfort to others.

Sometimes we exclude some in order to include others.

treyhunner,
@treyhunner@mastodon.social avatar

For any policy, you should wonder who you're excluding and who you're including (both explicitly and implicitly for each). Measuring the net effect is great if you can, but at least take educated guesses.

Every policy is a trade-off just as every action (including the action of inaction) is a trade-off. Few are a clear cut trade off.

And outcomes matter a lot more than intent. I know some disagree, but I genuinely think the belief that intent matters more than outcomes is magical thinking.

vossisboss, to random
@vossisboss@fosstodon.org avatar

@treyhunner: You will be pleased to know the Cabo virus has now infected my board gaming group. ๐Ÿ˜‚

treyhunner,
@treyhunner@mastodon.social avatar

@vossisboss very pleased to know this!

nedbat, to random
@nedbat@hachyderm.io avatar

@andreasjung It seems like you started this poll in bad faith. You have a clear opinion on the subject. You were not looking for opinions from people, you were trying to start arguments.

treyhunner,
@treyhunner@mastodon.social avatar

@nedbat @andreasjung โ˜๏ธ this

I was considering suggesting more poll options to drill into the likely policy opinions and reasoning a bit more in 4 poll options rather than a simple yes/no, but after reading Andreas' replies realized this poll lacks nuance on purpose. โ˜น๏ธ

treyhunner, to python
@treyhunner@mastodon.social avatar

With Python's slicing syntax, the first item is the start index, and the second item is the stop index.

Read more ๐Ÿ‘‰ https://trey.io/ZEuawA

treyhunner,
@treyhunner@mastodon.social avatar

@_KevinTrainor I agree with the sentiment, but I do think calling these by their names is helpful.

  1. Python uses the terms start, stop, and step for slices & ranges
  2. Names are handy for remembering, even when the names may feel a bit off. The alliteration helps a bit in this case too.

Calling out the exclusivity is definitely necessary though and calling it "weird" might me helpful too! I certainly critique some of Python's decisions ("I wish they were called generator comprehensions").

pycon, to random
@pycon@fosstodon.org avatar

We've still got a few Lost and Found items in the staff room 306/307! If an item belongs to you, please come collect it by 3pm today or 2:30pm tomorrow.

After that, we will turn the items over to the convention center who will hold them for 30 days before donating them to charity.

A Defcon 26 sweatshirt, a PRISMS Princeton International School of Mathmatics and Science sweatshirt, a black umbrella
An external keyboard, a cable labeled "Found in 319", another cable

treyhunner,
@treyhunner@mastodon.social avatar

@pycon those are all very PyCon items. Hope they find a home!

treyhunner, to python
@treyhunner@mastodon.social avatar

You can use Python's "next" function to get the next line from a file

Read more ๐Ÿ‘‰ https://trey.io/UFI8MG

ehmatthes, to random
@ehmatthes@fosstodon.org avatar

I will admit to spending the first half hour of today's sprints figuring out why my tests weren't running, only to realize I had pytest installed system-wide on my laptop. ๐Ÿคฆโ€โ™‚๏ธ

#PyConUS

treyhunner,
@treyhunner@mastodon.social avatar

@ghickman @pythonbynight @ehmatthes I used to do this to but I now do 0 global installs.

I believe I'm using an option to tell neovim about the virtual env where it can find the packages it needs. For all my CLI apps I use pipx. For one of my commonly used packages I use a "temporary" (though sometimes semi-permanent) venv.

treyhunner,
@treyhunner@mastodon.social avatar

@ghickman @pythonbynight @ehmatthes I also disabled global installs because I kept accidentally globally installing. If "global environment 0" isn't possible for you, temporarily re-enabling global install for just certain packages sounds like a clever compromise.

treyhunner, to random
@treyhunner@mastodon.social avatar

@juliansequeira @bbelderbos I missed giving you all a proper goodbye hug! ๐Ÿค—

Hope to see you next year! And online until the next conference we meet at. ๐Ÿ˜Š๐Ÿ’—

treyhunner,
@treyhunner@mastodon.social avatar

@bbelderbos @juliansequeira indeed! Glad we ran into you both. That was a great way to make it through the airport. ๐Ÿ˜Š

treyhunner, to random
@treyhunner@mastodon.social avatar

Guess which Norwegian, needleworking, library-indexing, BeeWare contributing folks are now on Mastodon in preparation for a future Python conference. ๐Ÿ‡ณ๐Ÿ‡ด๐Ÿงต๐Ÿ“š๐Ÿ

@yngvem & @marieroald!

#PyConUS

treyhunner,
@treyhunner@mastodon.social avatar

@yngvem @hugovk @marieroald I just realized that neither @melaniearbor or I got one of these.

If someone who's still at the sprints who is also attending @pyohio could grab a couple extras (assuming there's any left) I'd appreciate it! I'll definitely be at PyOhio this year!

Alternatively if @willingc or @davidism are still around and could grab them, we could find an excuse to actually see our fellow San Diego Pythonistas before next PyCon. ๐Ÿ˜†

Otherwise, we'll need to get a couple next year!

  • All
  • Subscribed
  • Moderated
  • Favorites
  • โ€ข
  • JUstTest
  • GTA5RPClips
  • DreamBathrooms
  • InstantRegret
  • magazineikmin
  • khanakhh
  • Youngstown
  • ngwrru68w68
  • slotface
  • everett
  • rosin
  • thenastyranch
  • kavyap
  • tacticalgear
  • megavids
  • cisconetworking
  • normalnudes
  • osvaldo12
  • ethstaker
  • mdbf
  • modclub
  • Durango
  • tester
  • provamag3
  • cubers
  • Leos
  • anitta
  • lostlight
  • All magazines