Skip to content

Latest commit

 

History

History
115 lines (72 loc) · 9.75 KB

introduction.md

File metadata and controls

115 lines (72 loc) · 9.75 KB

🎉 Welcome to the community! 🎉

We are glad that you have decided to join us. There a few things that we have documented here to help you along from the beginning because we are grand believers in the Don't Repeat Yourself (DRY) principle, and it just seems so professional!

Dont forget to Introduce Yourself in the #introductions channel. Please provide your interests, hobbies, organization, or whatever. You can divulge as much as you want. This is a good way to summon others of like interests. 😉

Example:

Hello, everyone! My name is Ocat and I'm a full stack engineer @TacoBot My personal tech passions are working with APIs and giving out 🌮s. I like to give back to the open source community when I can. PS. I love asyncio.

Channels

If you are new to Slack then you should be aware of the concept of channels. Channels are a good way to keep conversations under the ☔ of a specific topic or context. Channels appear on the upper left side bar of the Slack UI.

Channel topics can be specific to the Python packages you ❤️ like #django, #flask, #sqlalchemy, etc. We also have a channel called #help for general Python questions, if no dedicated channel exists for your question; and lastly, we have channels for talking about things other than Python, such as #random for general conversation, as well as channels such as #etc_music, #etc_movies_and_tv and others. Please explore and join as many channels as interest you -- and if you have a suggestion for a new channel, feel free to start a discussion about it in our #community channel.

Asking Questions

Remember these are just guidelines, not rules. Use your best judgement.

If the question relates to a channel topic then it is best to ask the question in that channel. When you have found the channel that best fits the topic of your question ask your question and wait for someone to respond. You do not need to say, Hello or Is anyone in here that can help me? Simply, ask your question and wait. Additionally, to receive the best help possible it is a good idea to have some code samples handy to post in the chat. The code samples section below will explain more about how to post them.

Asking good questions can be hard, generally it's best to say what you are trying to accomplish along with what you think you may need to do. For a good overview on how to ask good questions take a look at How do I ask a good question?.

Cross posting

Please try to refrain from cross-posting in multiple channels. If you have asked your question in a channel and have waited a while you can move to a more #random channel. In order to cross-post, find your chat message and share the message in the other channel.

Code samples

Due to the nature of our wonderful and glorious community you may want to share code with us. Slack is really good for this. If your code sample is only a few lines you can use three backticks (above the TAB key on many keyboard layouts) at the beginning of the code sample and after the sample. You may need to hit SHIFT + ENTER to create a new line.

If your code sample contains many lines, or is complicated code that can benefit from syntax highlighting, then it is best to create a Snippet. You can do so from the chat box by clicking the ➕. Snippets become files and can be commented on by other users.

Self promotion and shameless plugs

To help prevent spam, and a wall of text in #random and other very active channels, we have #show_and_tell to talk about your product, showcase it, ask for advice, or to ask people to try it out. These posts should only be in this channel and hence are not desired in other channels. We want to keep this a friendly place and we thought a channel dedicated to showcasing your work would work best.

Taco Bot 🌮

When people in our community do good things we like to reward them with a 🌮! We are hoping that as B.F. Skinner used bird food with pigeons we can do the same with humans and tacos. This is positive reinforcement at its best (coders playing with psychology, what can go wrong?).

If someone has done something worthy of a taco all you have to do is mention them and follow it with the taco emoji.

Community Driven Projects

These projects are maintained by members of our community and are intended to provide value to our slack team and help members grow in their technical abilities. Community driven projects are hosted on GitHub. Each project has people who are leads and other members that act at a mentorship level. It's kinda like Xavier's school of gifted children except without a SR-71 Blackbird.

Feel free to join the #community_projects channel and see where you can contribute, all contributions are welcomed from any skill level. Low hanging fruit with getting started includes testing, documentation, code, feature ideas, bug reports, and front end design. You do not need to be a grandmaster Python jedi in order to contribute to one of the projects. If you are we welcome that too 😉.

Supporting the community

We are all here to build a community and serve each other. Here are some helpful ways you can support us!

  • Invite others
  • Be kind and respectful, even in disagreement
  • Ask and answer questions. We like people popping in when they need us, but we love people sticking around to chat and engage with other Pythonistas
  • Consider using our Digital Ocean referral code if you need a server. This will help cover costs for our #community_projects. Any "profits" received from this will be invested back into the community.

Spam

We welcome people sharing what they are working on and asking for feedback, however - we have an expectation that you contribute to the community before asking for anything in return. Since we are an open community with a lot of members, we get spam from time-to-time. Usually this is clear by someone fresh to the community posting a self-promoting link that either requires payment or is survey immediately in #random.

Moderators will delete these types of posts and gently ask you to spend some time introducing yourself and contributing to the community :)

Slash commands

Slash commands start with a "/" character, and can be used to perform a variety of useful tasks while using Slack in general, and Pyslackers in particular.

To display a list of available slash commands, start a message in a channel with the "/" character (note: the list of displayed commands may differ between desktop and mobile versions of Slack).

Some useful slash commands:

  • /admin :: see the "Need an admin?" section below
  • /report :: send a report to the admin team about a specific user (please include the user's name)
  • /justask :: posts a message explaining that members don't need to ask if they can ask a question
  • /howtoask :: posts some helpful content on how to ask good quality question
  • /shrug :: a fun command that posts your message, followed by an ascii representation of a person shrugging (¯_(ツ)_/¯)

Need an admin?

We have a channel named #community in which you can make requests to admins such as new channels, notifying of spammers or abusive users, or anything else you might need an admin for. You are also welcome to ask for a private PM from an admin if you would like to discuss something privately. Admins cover a variety of time zones, don't hesitate to message us. If you would rather not message in that channel and would prefer to simply DM an admin, use the sirbot command: /admin <message> and whoever is available will follow up with you privately.

Zen of Python

The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than right now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
Lest you forget, import this

Did we miss anything?

If there is something that you wish you knew when you first started in this community you can add it. That's a good way to get a taco! Post in #introductions if you've added something, ok? cool. 👍

Again, welcome to the community, and may your 🌮s be plentiful!