Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Maintenance and moving GetTogether forward #323

Open
felicianotech opened this issue Nov 6, 2023 · 11 comments
Open

Maintenance and moving GetTogether forward #323

felicianotech opened this issue Nov 6, 2023 · 11 comments

Comments

@felicianotech
Copy link

Hey everyone, I would like to step in and maintain this project. All of it, including running/paying for the domain, hosting the main instance at GetTogether.Community, empowering others to run their own instances, etc. Most importantly, help move this project forward in terms of stability, security, and features.

I use to run a couple of Write the Docs meetups in New York & Philly, created a comic book meetup, and ran an Ubuntu release party in San Francisco. I've also attended MANY meetups in my time, though admittedly not many since the pandemic. I constantly ran into UI, UX, and pricing model issues with Meetup. I was going to create my own tool until GetTogether launched. 👍🏼

Since though, development has slowed and then ceased. This is common in many open source projects and I get it. It's hard. There's several good points/items brought up in the 116 open Issues on this repo. Simple low hanging fruit ones like links being broken I can't help with without the access to get things merged.

I reached out to @mhall119 back in February (I think) to discuss this but we hadn't gotten to a decision. It was a busy time. I've reached out again recently in hopes of starting the discussion back up. If this request is ignored or passed on, I might end up forking the repository but that would disconnect it from all the open issues and PRs that this project has. Working directly with those issues/PRs makes project management much easier to catch up on the backlog.

I know there can also be security concerns when handing over the keys to a project so I'm more than willing to chat with someone on a call, Zoom, etc. You can also look me up on my personal website and LinkedIn.

@felicianotech
Copy link
Author

Hey folks. Just wanted to provide an update. I haven't heard from anyone from the project yet unfortunately. I did have someone who saw this issue reach out and put me on to a competing project called Mobilizon.

There is some clear advantages to that project, namely that it is currently actively maintained. The software ecosystem used isn't my favorite but nonetheless something for me to consider moving forward.

@murphnj
Copy link

murphnj commented Nov 14, 2023 via email

@mhall119
Copy link
Collaborator

Hi @felicianotech,

First of all, let me apologize for the extraordinary delay in getting back to you on this. It has always been my intention to do some major upgrades and refactoring of GetTogether to make it better, more useful, and to combat the spam problem.

However, I think I'm finally ready to admit that if I haven't had the time to do that in the past year, it's unlikely that I'm going to be able to do it anytime soon. As sad as it makes me to let go of this project, it's what's best for it and the community that is using it. So let's figure out how to do this smoothly, and safely.

Here's some details about the current hosting:

  • GT runs on a single AWS t2.micro instance, and with the exception of a few memory-hungry views it runs fine.
  • The database is less than 1GB in size, running Postgresql 9.5.
  • The media storage (uploaded photos) is about 3GB, it's currently stored on an attached block storage, but ideally it would be stored in S3 in the future.
  • Which brings us to Django, GT is running an older version and will need to be upgraded to use S3 for media storage.

Because GetTogether has always supported password login and private teams/events, and because users placed their trust in me to keep those private, I wouldn't feel comfortable handing that over to somebody they didn't agree to. So, here's what I'd like to propose:

  1. I add you to the GetTogetherComm org in Github so you have access to manage the repos
  2. You create a new branch for "GetTogether 2.0" or whatever you want to call it
  3. You setup new hosting for it, and let me create a temporary subdomain (like next.gettogether.community) to point to it
  4. I will make a small change to the existing site, turning off new team creation, and directing everybody to start using your instance
  5. We setup a 2-way event sync between the old and new instance using GT's existing syndication API
  6. We encourage everybody to move their team and events over to the new site, doing more prompting and turning off more things (like new user signups, or new event creation) as your instance slowly takes over
  7. When enough people have migrated, I transfer the domain to you, we move the old site to archive.getttogether.community, and make it read-only for some amount of time before turning it off.

Let me know if this plan sounds doable for you, or if you have suggestions for other ways to do it. My biggest concerns are the privacy of existing users and a smooth, clean handover of control.

@felicianotech
Copy link
Author

Hey @mhall119,

The hosting side of things sounds good. I recently moved the majority of my web software to Kubernetes. I'll have no issue scaling it to support GT at this time. I also spent the past 2 weeks porting my main webapp to PostgreSQL so perfect timing there.

Planning

I'm thinking of putting tasks into three main buckets at the moment:

  1. security and bugfix - For existing users, security and bugfix needs. If there are any (? below).
  2. next-gen - For GT v1, v2, or whatever it'll be, what that will mean? Include, etc.
  3. small wins - in order to get the project moving forward and feeling alive again, any low hanging fruit tasks or features that can be done.
  4. I'm considering what other domain I might be able to get in addition to the one the project has. Here I think of Discourse or WordPress and how they have the .com and .org, or Mastodon which has mastodon.social and joinmastodon.com. So there's a home for one or more hosting instances of the project, and then a home for the project itself. The latter serving as docs, dev notes, etc.

Handoff

Your plan sounds fine with me. I would prefer to not force users to have to migrate over if we can avoid it (though I understand the intention) but if that's the best option, it's fine. The biggest benefit I see to the migration would be avoiding the smap teams/events that are already on the site. I doubt they will make the effort to migrate over.

Questions

  1. I live in Florida right now. The events around me either haven't have an event in awhile or are spam. I even checked NYC (where I'm from) and it seemed to be spam teams. Do you know (or can pull) the number of teams that are actively using the current website?
  2. Any accounts I should be aware of and we should work on handing off (at some point)? I'm thinking here of Mastodon and Twitter, which are accounts I know of, and anything else that might exist such as analytics, mailing list, etc.
  3. Do you happen to be aware of anyone running their own GetTogether instance? I would love to reach out to them. Getting feedback on needs, problems, etc will be important, but I'm also thinking of the upgrading the software experience. If we follow your plan on me not having access to the existence instance/server, I don't have the existing DB to test migrations on. Not much of an issue if others aren't running their own instances but worth checking.

@chayev
Copy link

chayev commented Dec 22, 2023

Hey @mhall119 - Any update on this transition?

I'm currently trying to use the site but getting a 500 error (see below)

image

@felicianotech
Copy link
Author

Not sure the problem but it's not throwing an error for me.

@mhall119
Copy link
Collaborator

mhall119 commented Jan 26, 2024

@felicianotech

  • I live in Florida right now. The events around me either haven't have an event in awhile or are spam. I even checked NYC (where I'm from) and it seemed to be spam teams. Do you know (or can pull) the number of teams that are actively using the current website?

It would be hard to distinguish legitimately active from spam without looking a them each individually, but I would guess a couple thousand legitimate teams, probably several hundred who use it on a regular basis.

  • Any accounts I should be aware of and we should work on handing off (at some point)? I'm thinking here of Mastodon and Twitter, which are accounts I know of, and anything else that might exist such as analytics, mailing list, etc.

Off the top of my head:

  • This Github org
  • Twitter/X
  • Mastodon
  • IPStack (used for geoip lookup)
  • Google App (for maps and auth)
  • Facebook App (for auth)
  • Do you happen to be aware of anyone running their own GetTogether instance? I would love to reach out to them. Getting feedback on needs, problems, etc will be important, but I'm also thinking of the upgrading the software experience. If we follow your plan on me not having access to the existence instance/server, I don't have the existing DB to test migrations on. Not much of an issue if others aren't running their own instances but worth checking.

Nobody currently that I know of. There was one group who started their own instance, but as far as I know they never used the syndication feature to link it to the main instance.

@murphnj
Copy link

murphnj commented Jan 26, 2024 via email

@murphnj
Copy link

murphnj commented Jan 26, 2024 via email

@felicianotech
Copy link
Author

@mhall119 Okay cool. Next steps?

@felicianotech
Copy link
Author

Hey everyone. I wanted to provide a final update here.

For whatever reason, I wasn't able to work out taking over this project. Instead, I have forked it to a new project called EventHunt. You can find the original codebase here and the GitHub org here. For those interested, I have some asks:

For those who have open Issues and PRs on this repository

If you feel your open issue or PR is still relevant, please open it on the EventHunt repository: https://github.com/eventhunt-org/monolith

I'm going to manually go through all open items anyway and triage what's important, but opening an issue/PR on the new repo will help me out a lot and keep the item connected to you so that you can get updates when the issue or feature is completed.

For those wanting to manage their events on a website

I don't have a website up yet and I don't have any control over GetTogether.Community. My ask is to stay in touch (via GitHub or the mailing list), and I'll let you know when the new website is up. Once it's up, you can go ahead and create your teams/groups and events.

I'm looking forward to getting more people connected around the world. 👍🏼

Respectfully,
Ricardo N Feliciano

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants