https://pantsbuild.org/ logo
#general
Title
# general
r

refined-addition-53644

01/14/2022, 3:27 PM
I have a general question around how do you onboard your colleagues at work when you introduce a new tool e.g. pants in my case. I wrote a wiki and had a meeting/tutorial, but I still feel like that people will be bit lost when they start using it. I work in a data science team and I feel like not everyone is so inclined to handle the engineering complexity that comes with introducing such tools.
โ˜๏ธ 1
b

bitter-ability-32190

01/14/2022, 3:29 PM
You're describing my situation as well.
h

happy-kitchen-89482

01/14/2022, 3:30 PM
This is a great question. We want to create more documentation around this on pantsbuild.org. But even that is probably more than regular users want. The documentation is really more for the people driving adoption, such as yourselves.
๐Ÿ™ 1
But this would be a good thread for brainstorming ideas.
b

bitter-ability-32190

01/14/2022, 3:31 PM
I think a meeting/tutorial/workshop covering 80% of what they "need" to know is likely the best option. After that, linking to the docs or Slack and then providing some initial support as well (before the users land here) is probably just something that'll need to exist. (Not because of Pants, but just because of the scope and nature of the change)
๐Ÿ‘ 1
h

happy-kitchen-89482

01/14/2022, 3:31 PM
How about a simple list of recipes: " To run a test:
Copy code
./pants test path/to/test.py
To run all tests:
Copy code
./pants test ::
To run linters
Copy code
./pants lint ::
"
๐Ÿ’ฏ 2
Etc etc
give a list of examples specific to your repo structure
How to 1) Run tests 2) Run linters 3) Run formatters 4) Run binaries 5) Build artifacts 6) Create BUILD files in new directories
๐Ÿ™Œ 2
r

refined-addition-53644

01/14/2022, 3:33 PM
yeah @happy-kitchen-89482 the wiki I worte tries to introduce them with such simpler concepts and that's how I sold the usage of pants to begin with in my team :)
h

happy-kitchen-89482

01/14/2022, 3:33 PM
Things that people can just copy-paste into a terminal without thinking too hard
๐Ÿ‘ 1
b

bitter-ability-32190

01/14/2022, 3:33 PM
To tack on to @happy-kitchen-89482โ€™s I think you could provide "when you used to do X, you now do Y"
h

happy-kitchen-89482

01/14/2022, 3:33 PM
I remember trying to learn git, even Pants is simpler than that...
Of course now everyone understands git
๐Ÿคจ 1
b

bitter-ability-32190

01/14/2022, 3:34 PM
E.g.
bazel run //foo/bar
is now
./pants run foo/bar
, etc...
h

happy-kitchen-89482

01/14/2022, 3:34 PM
but in 2010 it was so confusing, coming from Perforce
b

bitter-ability-32190

01/14/2022, 3:34 PM
Of course now everyone "understands" git
Fixed that for you
๐Ÿ’ฏ 1
r

refined-addition-53644

01/14/2022, 3:34 PM
I think those who have had experience with any build tool like say makefile, can grab the concepts around pants bit easily. But I doubt lot of data scientist ever used any build tool before.
b

bitter-ability-32190

01/14/2022, 3:35 PM
@refined-addition-53644 we're coming from Bazel, so it's a really easy mapping/sell. I guess you're starting from nothing?
r

refined-addition-53644

01/14/2022, 3:35 PM
yeah we went from poetry (which was already new for some data scientists) to pants
b

bitter-ability-32190

01/14/2022, 3:38 PM
Ahh, so still relevant then: โ€ข If you were running
poetry run pytest ...
now use
./pants test ...
โ€ข ...
r

refined-addition-53644

01/14/2022, 3:39 PM
I suppose I actively need to make some team members to try to add a new dependency and then run all pants commands like
tests
,
fmt
etc. Then when things fails they can either figure it out themselves or I can give a hand.
b

bitter-ability-32190

01/14/2022, 3:45 PM
That's why I think a Pants workshop is a good idea as well. E.g. "everyone follow along with me"
โž• 2
h

happy-kitchen-89482

01/15/2022, 10:35 AM
BTW we (Toolchain) can be available to give talks, workshops and trainings
๐Ÿ™Œ 1
4 Views