Python User Groups
What is Python User Group?
Python User Group, also known as PUG, is an open and informal collaborative space for the programmers to explore the intermediate and advanced sections of Python Programming Language. Developers can share their utilization of the language and new tricks with each other and help to maintain a productive environment. This User Group also acts as an excellent opportunity for Python Beginners and allows them to step in. This Python User Group is a great place to support and socialize with different developers through similar interests. These Python programming language users also schedule meetings generally once every month.
There are around 1,637 Python user groups available globally in approximately 191 cities, 37 countries with more than 860,333 group members. A List of these Python User Groups can be found on the official website of Python: https://wiki.python.org/moin/LocalUserGroups.
One can also locate the nearest Python User Group using a world map of Python Meetups provided on https://www.meetup.com/topics/python/. All we have to enter the country and city in order to list the local group if available.
However, if there is no Python User Group available near us, we can also start our own Users Group if interested.
In addition to the above, there is a number of "In House Users Group" available within few, generally larger companies. However, these groups are usually operational with the workers of the company.
We will be discussing a lot more on Starting a User group and In House Users Group in detail.
Starting Python User Group
In the following section, we will be discussing how to start a new Python User Group in a local area. But we get started, we should ensure that there is not an existing Local User Group already. In the case of the current User Group, it is essential to improve the services instead of creating a new User Group.
These are some primary steps in order to prepare before the first meeting:
- Defining the name of the group: generally, Python <name of the city>
- Designing a website, preferably with our domain name, so that we can include the URL during the group promotion.
- Defining a location for the meeting.
- Defining the meeting style for the group.
- Finding some people to expand the organizers' team. Getting some people to sign up as a core member of the organization helps prevent our burn-out and reduces the 'bus number', for when we are indisposed. (Such as on holiday, hospitalized, and many more).
- Defining several means to promote the group.
Once the Agenda is cleared, let us discuss how to promote the User Group.
Promoting the User Group
- Being an Organizer, we can promote our Python User Group by creating a chapter on http://python.meetup.com/. We can also use some standard ways to communicate meetings.
- We can post an e-mail to mail.python.org e-mail lists "python-announce" and "python-list" for every meeting or other organized event.
- One can also prefer other mailing lists, newsgroups, RSS, Twitter, and many more.
- Adding the Group in the official Local User Groups. This will allow other Local Python Users to join us.
- Identifying other Local User Groups and posting a meeting announcement with their permission.
- Hanging several flyers at local college, organizing some meetings on campus, and getting listed as a campus organization.
- Producing some podcasts and screencasts and getting them listed on video.google.com, Python 411, and many more. Including a publicity blurb related to the group will also let us expand the User Group.
- Setting up Google Advertisements or similar campaigns targeting the local geographic area for search terms like Java, Python, and Scripting. Maintaining the spread local will helps in keeping the cost pretty reasonable.
Finding the appropriate location
- It is considered good to have a location we can depend upon monthly, without failure.
- We can also search for sponsors to invest in the User Group.
- A library is also an option; however, its hours can be limited.
- One can also choose Bars in order to host groups on off-nights.
- Coworking Spaces are also a good option, as they need their members to be able to network.
It is necessary to decide the flavor of the meetings while organizing the Activities. We can also organize different activities in the sessions:
- We can organize a Presentation.
- We can also do the Lightning Talks on some topics related to Python.
- Code review is also a good example.
- We can also display several videos on different topics.
- Organizing the walkthroughs for different Projects will also be considered as the center of attraction.
- We can also discuss the Standard Python Module of the month and practice different projects.
- We can also organize a meeting at a local restaurant once a month or hold a Super-weekend session twice every month.
Now, let's talk about some possible Group Projects.
Possible Group Projects
Here is a list of some Group Projects given below:
- Creating a club website as a group using one of the Web Frameworks of Python.
- Establishing a Wiki, Subversion Repository, and Club Mailing List.
- Consider producing Audio Recordings through Podcasts. This is generally a good option if the Group is geologically disseminated or can't agree on the meeting locations or times.
- We can also organize a "Scripting Conference" in the Area, which allows other proponents of different languages to come under one roof. This will help us expand the user groups as some people will convert either because our Group looks more fun or Python is such an excellent Programming Language.
- Moreover, we can also organize a "Web Technology Conference" in the area, which again helps us expanding the Local User Group.
- Apart from the above, we can organize Social Meetings, Conferences, and even Hack sessions.
Now, let us discuss 'In House User Groups'.
What is an 'In House User Group'?
'In House User Groups' are similar to Local User Groups; however, both groups have few distinct differences that make starting or running slightly different. 'In House User Groups' are generally closed, which means that it is limited to their membership to developers and programmers within the particular organization or company.
These Groups often contain several values above and beyond Local User Groups:
- These groups promote the utilization of Python within the organization or company.
- We are more likely to deliberate particular projects, challenges, and issues within the Organization without worrying about privacy. However, be aware of some confidentiality issues that may arise, unfortunately.
- Organizations or Companies may also provide different internal resources, training, and support that would not be available or relevant to the Outsiders.
- The ability to detect and link probable internal assistance with projects or challenges can be priceless.
- These groups may present some internal projects to a broader inner listener, be it other user groups or the more comprehensive business structure.
- Involvement may well assist with professional development in some organizations or companies.
Let us discuss some General Instructions.
Here are some general instructions we have to keep in mind while being a member of the "In House User Group":
- Sounding Out the interest level in the probability of having an "In House User Group": Making it clear that this group is just a probability at this level.
- Seeking and obtaining the official permission before we start - We can consider the following issues:
- Who do we have to obtain the approval from?
- The level of interest being expressed
- Whether we will be utilizing the company resources like computers, bandwidth, and many more or not.
- Whether the meetings will be organized within the office hours or not.
- What will be the schedule of the meetings?
- Whether the discussions be allowed to involve the current projects and challenges and potentially impact privacy, Internet Protocol, and more or not.
- The number of people that are likely to be involved initially and over a while.
- Whether the User Group probably is representing the organization externally in some context. For example, at some more comprehensive conferences, in presenting papers, and many more.
- Expected Advantages to the Organization or the company - This is a significant fact to plan for the discussion - the approval depends on whether the organization or company is getting a clear benefit or not.
- It is advisable to have multiple organizers to prevent conflicts with holidays, sickness, urgent projects, retirements, and more.
- There should be an organizer in the meeting at the advertised commencement time.
- In case of Cancellations, Rescheduling or Relocations, the process should be carried timely as soon as possible and be as widely notified as possible.
- It is also recommended to be prepared for no-show speakers - The Stand-by Speaker or the Organizer with an available backup discussion. This will reduce the chance of any future disappointments during the meeting or event.
- Setting a Code of Conduct compatible with the organization or company policies; however, the main motto should also reflect the general guidelines of Python programming language, such as:
- Inclusive & Welcoming: that is, Open to all Ability Levels
- Non-Discriminatory: Not allowing ant bias based on problems like sex, religion, race, age, orientation, mental or physical attributes, and many more.
- Deciding a name for the User Group:Generally, it is a combination of the letters PUG along with the initials of the organization or company; however, it is recommended to be aware of the conflicting possibility with other groups, acronyms, possibly offensive names, and a lot more.
- We can also design a logo for the group to utilize any organization or company logos along with the python logo.
- We can also vary the meeting's content and format between sessions - A mix of Formal Presentations, QNA, Short Presentations, Workshops, Favorite Library Discussions, and a lot more. This will be meeting more productive and interesting.