Well, this is awkward

Posted by (twitter: @mikekasprzak)
June 8th, 2016 8:44 am

My sincere apologies for being quiet as of late. This post is a bit rushed, but I hope it addresses the concerns.

First off, I took some time off after Ludum Dare 35. I’d been stressing myself out trying to find the right way to say what I need to say. I’ve been chatting with a number of people behind the scenes, getting lots of feedback, and it’s been really good. I was originally going to make this post several times, most recently on June 1st, but when you’re saying something important you always seem to learn something equally as important at the last minute. 😉

It’s getting more and more difficult to figure out how to make everyone happy while doing what I think needs to be done. To continue to grow and improve Ludum Dare for everyone today, and for tomorrow.

I gather I haven’t done the best job communicating the significance of Ludum Dare. If you looked at the website we run, your first impression would not be that we’re big, successful, or even good at what we do. But you might be surprised to hear how things actually are:

  • Ludum Dare is a big deal. At its size and scale, it’s no longer a fun little spare time side project. It hasn’t been that way for years. It was getting difficult before we broke 2000 entries in April 2013 (3 years ago), and it has been a struggle ever since.
  • We are known across the industry. Our participation bacon number to most gaming and tech companies would be 1. Everybody seems to knows who we are. It’s rare for me to have to explain what Ludum Dare or game jams are when I meet developers.
  • Educational institutions care about Ludum Dare. I get approached by schools for a variety of reasons, some want to make Ludum Dare (and participating in game jams) part of their curriculum.
  • The gaming press and media care about Ludum Dare. I’ve chatted with popular YouTubers for a variety of reasons. I’ve chatted with documentarians. I’ve chatted with television producers.
  • I’ve been approached by many people that want us (i.e. the experts in their eyes) to run and host game jams for them. Both online events, and real-world jams at some respectable events.
  • I’ve been approached by many big companies that want us to work closely with them. To add deeper integrations for their services and whatnot.

I don’t talk publicly about these conversations, because you don’t. It’s a courtesy. Regrettably I’ve had to turn-down many interesting things over the years, because we just couldn’t handle it (unsupported features, bad scheduling, not enough time, etc). I’m really sad about that.

We do a lot of good, and I want us to do more. So much more. We’re barely scratching the surface of what we can do for game jams and the game development community.

Big picture, we have built an amazing reputation. Both in the game development community, and within the gaming and tech industries as a whole. I care a lot about that reputation, probably too much. I’m worried that some of the problems we’re having today could damage it:

  • It’s obvious how our system can be abused to get extra eyes on your game (i.e. vote for a lot of games, whether you play them or not).
  • I received a record number of concerned messages regarding people “fast voting” hundreds of games in a very short period of time. I don’t doubt that some people can play a lot of games quickly, and with 2 or more people sharing an account that’s even more. So at the very least, proper team support is necessary to gauge this.
  • Sadly, I was also presented with evidence that games had more votes than downloads. I can’t really ignore that.
  • We found a user that created multiple accounts just to give their game 5 star ratings. I knew this would happen some day, and maybe it already has. I could have gone in to the database and fixed it, but given how many accounts they created, I decided to save myself the trouble and disqualify a game. This is first time I’ve done that. We have removed fake games before, but this was a real game.
  • I had a number of people reach out to me frustrated that some games didn’t opt-out of graphics and audio, even though they used 3rd party assets.
  • Alternatively, some were sad they couldn’t score in these categories because they used a single royalty free sound.
  • Some security issues I probably shouldn’t mention.

I don’t want people to feel like they’re being cheated when they participate in Ludum Dare. I’ve been talking about solutions to some of these problem for years, but I can’t seem to make the time.

The thing about Ludum Dare today is it’s actually a 2 month long event (or season). 5 weeks before, we begin the theme selection process. Then for the 3 weeks that follow, we judge games. The event may last 3 days, but there’s a lot more time than that. I’ll admit it’s not a constant stream of work running Ludum Dare, but nothing about Ludum Dare is truly automated. This is why I haven’t been able to participate myself for a few years.

And when we kick off a season, that’s when people start reaching out to me. People looking for help, interviews, sponsors and companies that want to partner with us. And between that, I’m often doing things, like this past event I moved us to a new (lower cost) server. I was working on some new features as well, but I wasn’t able to finish in time.

I do get a bit of a break after Ludum Dare, but I am on call. Anytime things go wrong, I’m on the case. When people start reporting problems, I need to look in to them. Sometimes I continue on what I’ve been working on, but I do relax a bit. ‘cmon, I shouldn’t have to crunch anymore either. 😉

But probably the most important thing I do after a Ludum Dare is start planning the next event.

So for the past 8 years, I would get 2 months of downtime, before 2 months uptime running Ludum Dares. It’s true that 8 years ago we weren’t as busy as we are today. But back then, we hadn’t even broke 100 games in an event yet.

It’s tough to make progress when you work alone, and with only 2 months of downtime between events (now 1). I need help with it, but that’s a whole other post.

So two things.

  • I would like to retire this website from running judged Ludum Dare events. I’ll be keeping it around for historical reasons (to make sure many tens of thousands of internet links don’t break), and if people want to continue to run MiniLD’s. Again, I strongly discourage trying to run a judged event on this website for the reasons outlined above (none of which really affect MiniLD’s).
  • I am going to take a break. I wont be running an August Ludum Dare event. I’ll be spending the next 5-6 months working the new website, and something else I’ll talk about in a moment. The plan is to continue where I left off in December.

If the community wants to pick up and run an August event, that’s fine by me. According to my notes, August 26th-29th is a good weekend to do it. It avoids GamesCom, PAX Prime, and the demoscene event Evoke.

My plan is to run Ludum Dare 36 on December 2nd-5th weekend. My hope is that it’s the first of many events that are run from the new website.

The hard part

As it is today, Ludum Dare is unsustainable.

I’m super grateful for all the Patreon and Paypal supporters, but what I’m getting at is more that that.

Somehow for the 14 years we’ve been running Ludum Dare, I was the constant. Picking up more and more responsibility, until Phil and I started running the event 8 years ago. Then eventually, it became my responsibility. If something was to happen to me, we’d be in a bad place. The original team and I do keep in touch, and I council them when I need opinions and to sanity check what I’m doing, but we don’t have a fallback plan.

Remember, Ludum Dare was hobby. Under my watch, it grew in to something bigger. We didn’t plan anything, because we didn’t expect it to succeed. It used to be just for fun.

But at some point it started mattering.

It also sits on a mountain of opportunity. Many businesses have reached out to me, and want to work with us. I also can’t describe how much I want it to become something bigger, more than it is today. I want it to reach its full potential, but to get there, it needs a budget.

Now, this is why I hadn’t posted this before now: I haven’t figured out the solution yet. I have ideas, suggestions, recommendations and goals the original team and I have discussed, but doing it is not easy.

Generally speaking, Ludum Dare should be a charity.

I’ve been putting off figuring out how to do it because I didn’t have the time, and I knew it was going to be extra complicated. We didn’t even know “charity” was the right term until recently (we assumed it was non-profit). It turns out I was right about it being complicated. A charity tends to sustain itself through charitable donations, and in return provides tax receipts. A charity can also only be an entity that does “public good”, which I think we do, so best I can tell we’re a candidate. The tricky part is that I’m based in Canada, and most of the larger companies interested in contributing are based in the US (and elsewhere). There is a NAFTA provision to allow US entities to contribute to Canadian charities, but only on income earned from Canada. That’s not good enough.

Anyway, this is the other thing I’m spending my time trying to figure out. I didn’t have the time to look in to this before given LD’s tight scheduling, but since I’m skipping the August event, I’ve been making time. I roughly know where I would begin if I was starting a Canadian charity, but the US/International part I need to figure out before do anything. Unfortunately, it’s looking a lot like “speak with a lawyer” territory. 😉

Bottom line, I want to turn what we have here in to something that is sustainable. In the near term something that can support me, in time others, but eventually in to something I can step away from. Something that can actually out-live me. It shouldn’t be catastrophe if I go away.

I could just assume the community will pick things up, but that would be irresponsible of me. It should run itself. Both technically speaking, and as a sustainable self sufficient entity.

Ludum Dare should not have to rely on any one individual to run.

* * *

Anyway, I hope that’s satisfactory. I kinda haven’t slept 😉 . I can’t describe how difficult it’s been trying to approach and phrase this. I hope we don’t get caught up on the nuances of how I worded something, or some point I fail to get across. Anyone that I’ve been chatting with privately, feel free to speak up.

Ludum Dare has been a part of my life for the past 14 years. While we may not agree on the methods, I don’t want to ruin it. I’m sorry that I’m breaking the 8-year streak of 3-events-per-year that Phil and I started, but the website we run today is broken in ways that both frustrate and scare me. I can’t fix it with the time I have.


64 Responses to “Well, this is awkward”

  1. Jezzamon says:

    Go Mike! Thanks for all your hard work over the past years!

    Looking forward to what the future of Ludum Dare holds! It’d be awesome if somehow we can set up something where everyone can contribute, like you’ve been talking about for a bit.

    Anyway, take a break, you deserve it!

  2. Liam :D says:

    Thank you for writing this!

    For the new site, why not commit your current version of the new ludum dare website to a public repository and let us help develop it? I’m aware of https://github.com/ludumdare/ludumdare but never got any confirmation that it’s the actual site or that the repository is up to date. Set up https://ldjam.com/ again so we can test it, find bugs, exploits and missing features. Most importantly though, help us help you. Let’s set up a developer IRC, slack, skype group or some other form of group instant messaging so we can communicate. Yes, at the start everyone who wants to help will be stumbling around, not sure how anything works and where it is, and you’ll likely be spending more time coaching helpers than developing the site yourself, but soon we’ll know how it works and will be able to speed up development.

    Yes, I know that this post lists things which take time, are boring to do and don’t have a guaranteed benefit. Plus you may not enjoy the whole ‘teaching’, ‘managing’ and (ugh) ‘code reviewing’ aspect that comes along with being the senior team member on an open source project. But please, give us the tools, guidance and access needed to help you.

    And when I say “us” I mean at minimum “me”, I don’t know if others have been pestering you as well, but hey, at least let ~me~ help. 😀

    • Brice says:

      I agree with Liam 100%. Transitioning LD to a team project with collaborative engineering platforms is a great way to allow the community to help. There’s plenty of talented people ready to do so.

      You might want to consider talking to djpretzel / of OverClocked Remix. That was another online game community that grew unsustainable (huge bandwidth, too much burden on one person) but has been able to transition well.

      Thanks so much for all your hard work over the years, PoV. It’s a rough transition time but I know LD (and you) will come out on the other end better than ever!

    • KerelOlivier says:

      I agree with Liam 😀 aswell.
      I would be glad to help in any sort of way. I am familiar with HTML 5 and CSS.

    • Wan says:

      The current WordPress-based site is available at: https://github.com/povrazor/ludumdare-2008

      If you want to explore the sources and learn how they work, I’ve written quite some documentation at: https://github.com/mkalam-alami/ludumdare-2008/wiki

      Thing is, writing this documentation was me testing the waters about whether PoV was welcoming contributions, but right now it seems not to be the case. Here’s my lonely, unnoticed, 6 month old PR for merging the docs: https://github.com/povrazor/ludumdare-2008/issues/60

      The new website suffers from the same problem: PoV mostly uses Github issues as a notebook for himself ; while there’s some documentation to set up a dev environment (see https://github.com/ludumdare/dairybox), from what I’ve seen there’s no invitation to contribute, no specs, and AFAIK nothing where potential contributors can follow & discuss the development :(

      PoV has explained in the past how all his attempts at managing LD as an Open Source project were unsuccessful. I’m not sure how to make him change his mind?

      • Liam :D says:

        The Vote analyser, LD scraper and Rescue chicken were that for me – a sort of “Heey, I’m here, I can do things and I’m obviously interested in doing stuff for LD, plz notice me. ;_;”.

        In terms of documentation though, I don’t think we need it – there won’t be enough contributors to warrant the massive effort needed to write proper and sufficient documentation, especially for an in-development project whose documentation would need constant updating. Writing good documentation is a long, drawn out, boring and tedious process – Yes, it would be great if we had it done already, but since we don’t, I think it would probably require way more effort than just answering questions as they come up. What we need is a slack group with PoV regularly in it. The reason I say Slack is because I think it should be fairly restricted to just those contributing to development. Unfortunately it’s way too easy for public channels to go off-topic or get heated over minor details, and for deferred questions to be left unanswered, drowned in the sea of off topic conversation.

        PoV, if we set up a Slack for those of us who are interested in helping, would you be willing to be in it and help get us started? It would likely be a bit of a time investment at the start, however it would soon no longer require much attention.

        Second question, if we set up a Hangouts call and arranged a time, would you be willing to do a short “Introduction to the new website” webinar for developers? A simple “How to set up the toolchain and website”, “How the project is organized”, “Where are the most important and common helpers/functions” and anything else you think we’d need to get going. No specifics needed, just to bridge that first big hurdle of becoming familiar with the project, shouldn’t take more than an hour or so.

        • Wan says:

          > “Heey, I’m here, I can do things and I’m obviously interested in doing stuff for LD, plz notice me. ;_;”.

          I can relate to that 😛

          Regarding documentation, what I wrote is I think enough to fix that “big hurdle” you’re mentioning when diving into a new project, in that case the old LD code! Having a little bit of documentation is I think a good first step to get people actually start digging into your code. For the new website he’s done that to some extent (with his Dairybox), which is a good thing.

          But indeed it’s just a first step – I 100% agree that what LD needs is a team with tools like Slack to communicate, plus some meetings. Ideally PoV would kickstart this by recruiting a couple trustworthy persons, and giving them some rights on the LD website/repo/servers. Honestly for the August contest recruiting a couple motivated people would probably be enough, I don’t get what’s so complicated that running LD requires PoV and no one else.

          • Wan says:

            > I don’t get what’s so complicated that running LD requires PoV and no one else.

            Erratum: After re-reading the post, PoV seems open to let the community be in charge of the next LD event. It will be a great occasion to set up that core team we need – hopefully sorceress can take the helm?

        • PoV says:

          Heey, I’m here, I can do things and I’m obviously interested in doing stuff for LD, plz notice me. ;_;

          Thanks for that by the way. One of the reasons I’ve wanted to make it easier for people to contribute lately has been your enthusiasm Liam. I just haven’t been able to show it yet. I’ll do better. 😀

          Embarrassingly, the website actually has a “minimum votes” view, and has for many years. Like the search, the problem is that people can’t find it, and don’t click the link unless someone isn’t making a big deal of it. That’s why I’ve been cool with the idea of the Rescue Rangers/Chicken, because what’s lacking is the push, the “hey hey, community, go do this”. That’s what’s missing. That’s what makes all the difference.

          PoV, if we set up a Slack for those of us who are interested in helping, would you be willing to be in it and help get us started? It would likely be a bit of a time investment at the start, however it would soon no longer require much attention.

          Yeah, that’s the plan. I don’t know about Slack per se (it’s not free enough), but definitely the idea of a collaboration group.

          Second question, if we set up a Hangouts call and arranged a time, would you be willing to do a short “Introduction to the new website” webinar for developers? A simple “How to set up the toolchain and website”, “How the project is organized”, “Where are the most important and common helpers/functions” and anything else you think we’d need to get going. No specifics needed, just to bridge that first big hurdle of becoming familiar with the project, shouldn’t take more than an hour or so.

          I actually made some videos for exactly this, but I haven’t published them yet. I forget exactly what happened, but part of it was little problems I was going out of my way to explain, when they could have just fixed them. I do think everything is right with the toolchain now, but then Ludum Dare happened, and I didn’t get a chance to go back, update, and upload the videos.

          The first video is getting started with the toolchain (walking through what the dairybox page describes). And the 2nd (and 3rd?), explaining the workflow. Where files go, how they update, limitations of the toolchain versus the actual website, etc. Admittedly I haven’t touched them since before Ludum Dare. I had some other videos too, but I can’t remember what those were.

          • Liam :D says:

            PoV noticed me!! 😀

            The free version of Slack should suffice forever. The thing which I think is most important with the communication tool is targeted notifications, targeted pinging and mutable omnipresence. So if someone has a question, they can ping you, and you will have a [1] in the channel even if the conversation has moved on. In IRC you wouldn’t know anyone even spoke with you, in Skype you’d have [A BILLION] because it pings you for every message. At the moment I think free Slack would be the best option, I’m not aware of a better option in the free or cheap tier. (I mean we use slack free at work and it’s totally sufficient.)

            For the videos, I think spending more than an hour on them is too much time. These are meant for maybe 5 viewers, so I think a free form “let’s just talk and not edit anything” format would work great. Plus you could just turn on OBS and your microphone and an hour or so later have a video ready to upload.

            • PoV says:

              My main beef with free Slack is the lack of history. Ultimately it may still be the best solution, I might just have to throw-down for the monthly subscription, but ideally there should be a full history for others to reference. In the old days it was mailing lists that filled this purpose, but like you said, that’s not ideal for the little things. I’ll have to look more closely at this, but ultimately the more public and more available the conversations are, the better.

              My video process is fairly quick. They’re not super edited, just me with a bunch of tabs open and talking.

              Here’s an example:

              https://www.youtube.com/watch?v=1HMffehw4Y4

              I’ve also done a few casual videos talking about how we do things with the wordpress website.

              https://www.youtube.com/watch?v=f1i2Gg8ZE0A
              https://www.youtube.com/watch?v=TdpvSk6zygA
              https://www.youtube.com/watch?v=t6jOGOObc2Q

              I totally don’t have the time for a Button Masher Bros effort, but some things are better shown and said rather than worded.

              • dollarone says:

                We can use an open source solution instead: matrix.org, which is an open standard with many clients and integrations to slack and irc and many more.

                Vector.im is one client (with web, iOS and android versions), and it supports viewing-as-guests, so you can literally check out this #LudumDare:matrix.org room I just set up by going to: https://vector.im/beta/#/room/#LudumDare:matrix.org

                Matrix.org is a non-profit and Vector is open source and free :)

              • Liam :D says:

                The history thing is much less of a concern in practice than you’d think. It sounds like it would be a huge negative, but in nearly every case I’ve experienced, the reason people wanted to reference posts from months ago wasn’t to find information, it was to settle petty “he said, she said” arguments. Most conputer-savvy people like logs in principle, but their value on Slack is really low in practice, and their lack really easily mitigated. But honestly anything of importance can be copied to the github wiki or written in an issue, and any question, the answer to which no longer exists in the log, can either be asked again, or its answer is likely obsolete.

                I think the benefit of streamlined, efficient and non-naggy communication heavily outweighs the handful of cases where access to the log will have saved someone a few hours or minutes of in-code research.

                In my opinion, setting up an instant communication channel is the first step – before videos, tutorials, github commits, plans, etc. We can probably formulate a plan much easier through IM or voice than through this already unmanageable reply tree here. 😀 Would you like me to set up a slack channel for us?

      • PoV says:

        Thing is, writing this documentation was me testing the waters about whether PoV was welcoming contributions, but right now it seems not to be the case.

        Thanks for that by the way. I did see it way back, but I believe something else was going on at the time, and I never got back to checking it. Updating the wordpress site has been pretty low on my priority list. Things with it are very broken, and unless they hindered what we’re doing, I wasn’t necessarily going to fix them. To contrast, I have tried to keeping up with contributions to the new site the couple times they happened.

        https://github.com/ludumdare/ludumdare/issues?q=is%3Aissue+is%3Aclosed

        To be fair they weren’t as extensive as your changes, but that is where my priorities are.

        • Wan says:

          Ok thanks for the feedback, I’ll check the new site again then!

          BTW it would be nice to make your roadmap/task-list public, either through Github issues/milestones, or Trello, etc. Right now I mostly stumble on ‘notes to self’ and other low-priority stuff – the fact that you barely close your own issues is telling.

          I guess it’s still too early for you to split the work into bite-sized tasks for new contributors, but having an open place where we can chime in to help with a useful feature would be great.

          • PoV says:

            BTW it would be nice to make your roadmap/task-list public

            Yes, that something I really need to do. That kind-of got delayed when I started doing the getting started videos, but definitely, this is something that needs to happen.

            I guess it’s still too early for you to split the work into bite-sized tasks for new contributors

            Yes. This is something I’ve had a hard time explaining. What needs to be done is some serious engineering. Everything depends on what comes before it, so I can’t exactly delegate a task to someone that isn’t working on it as aggressively as I am. At least not until the core, the foundation is there and working.

            There are a few lower priority things I will soon be able to delegate to whomever has time. But like I’ve said, I haven’t had the time to find people that can help in the capacity I need, and to bring them up to speed.

            Despite all the volunteers, I can’t be sure who is actually committed and has the time to help (volunteering is not a guarantee). That’s why I’ve been reluctant to just do 1-on-1 mentoring, because I can’t guarantee yet that the effort is not wasted. In the past I have talked about the idea of hiring someone, because what I really need is someone that can commit the time to help me. Unless you’re being paid though, you can’t really guarantee that. It’s a chicken and egg problem though (no budget). I don’t really have the luxury of faith on the engineering side. I’m responsible no matter what. If I delegate and it doesn’t get done, that’s on me. I can’t blame people for things that don’t get done. It’s ultimately on me.

            That’s why I’ve been leaning towards the more difficult “getting started video” approach. If someone drops, then others can more easily get up to speed. Not everything can and should be a video, but some of the fundamentals work better if they are.

            I’ve had too many people offer to help. And with no budget and no time, I really can’t really vet people. So what has to happen is I need to let people contribute. I need to show them how, tell them what I’m thinking, and let people do it. I need to facilitate, and naturally let those that are committed to stand out, so I know who I can rely on. And that’s going to take time and effort. Time I don’t have if I’m running an August event.

            • Liam :D says:

              Well no, you don’t need to vet people at the door. If 10 people want to do a single commit each, why not let them. You will end up spending time teaching people who will not stay for long, that’s a given. But you will also teach people who will stay – people who can then teach others. You really don’t need to vet anyone, let the flood gates in with a good way to mass-communicate and private-communicate. As I said, at the start there will be a lot of teaching, but as some people stay, they will be able to do an increasing portion of that work for you, as well as develop the project.

              There will be portions you’ll still need to do yourself because it’s fairly unlikely someone will come in who is able to dedicate huge portions of time to this (Except maybe a student?) But being able to let the rest of us backfill any feature you’ve missed and fix bugs should still help. I don’t think you should be concerning yourself with the details of how to delegate or if delegation is even needed or if people will find things to fix by themselves (which is fairly likely). Give us the tools, tell us how to use them and get a developer community started in slack/skype/something and we’ll do a lot without you needing to do “team leading” or “management” past a comment here and there on slack.

              • PoV says:

                Well no, you don’t need to vet people at the door. If 10 people want to do a single commit each, why not let them.

                That’s not the issue. I don’t have people committing. I have people offering to help. We haven’t got that far. I would love to have people committing, but I need to better explain myself before anyone will. 😉

              • LastResortGames says:

                I whole-heartedly agree with this. (I can’t reply directly to PoV since his reply is too deep in >.>) I emailed him a few months ago as well. I never got an answer but at the time I couldn’t commit to anything because the main repo was virtually empty. I can’t commit to anything if the current list of issues is “everything.” It’s a chicken (commitment) and egg (offering to help) problem but you when you’re cracking all of the eggs you’re not going to get any chickens. I want to help but with no direction what am I supposed to do?

            • Wan says:

              Leaving the August event to others is definitely a good move.

              Regarding your efforts for the new repo, IMO the videos are not that needed: after all, the Dairybox Readme is already fine to get a dev environment started (it might be hard to set up for rookies, but that makes for a good filter at this point of the project). Setting up videos on top of that just feels redundant and less maintainable than some text. Unless you just have fun making them, which of course can be understandable 😛

              Where I was stuck at (and probably a couple others) was to find an accessible task to work on, but it felt understandably early for that. I’m looking forward for more info about your task-list/roadmap! While I’m thinking, the Theme website is probably functional enough for you to delegate some work on it already.

              • PoV says:

                Yeah, one of the videos is basically a repeat of what the DairyBox page says. And if I recall it might actually be done (or nearly done), I just haven’t looked at them in a while, ’cause I already know what the next question is (workflow).

                But definitely, I need to communicate what needs to be done better. Like I said, when Ludum Dare rolls around, I get busy, and haven’t been able to make the time to do it.

                Once I can get past explaining that I need time to actually do it, we’ll get on it.

    • PoV says:

      For reference, github.com/ludumdare/ludumdare is the live code. The live code used to be the code in my repository (github.com/povrazor/ludumdare), but I recently gave my repository to the ludumdare group account and reconfigured the server to pull from that instead. Since then I’ve forked it with my account. When I have updates, I push them to github.com/ludumdare/ludumdare account, and check them out on the live server. You should be able to see this here, all those merge pull requests I make.

      https://github.com/ludumdare/ludumdare/commits/master

      Most of the code is there, but it’s not well organized. Over the past month I have been re-organizing, but I’m not done so I haven’t pushed them to the live repository. I’ve removed several legacy directories, but I’m not finished. Structurally I’m changing the layout. The non-profit/charity thing has thrown a bit of a wrench in things, as I’ve tried to figure out if I can do what I want with it, and what should be called what. Its important that the non-profit/charity is its own thing. Ludum Dare is an event run by it, but the entity that runs Ludum Dare isn’t Ludum Dare. Plus there’s things the entity can do that Ludum Dare can’t and shouldn’t. Ludum Dare is just a jam. The entity can be a thing for the greater game jam community, so it needs its own identity.

      Part of the code (i.e. all the new live streaming and calender stuff) is in a private repository. Eventually they will become part of the public code, but they’re a spin-off of another project I’ve been working on, and it’s not quite isolated properly.

      • djfariel says:

        So what we need to get started is as follows:
        An updated (current) code repository
        A list of your goals

        If you can manage to pull any of your private code (even if it means pulling features for the community to replace) then we can delegate these features to contributors and get things done.

        We really, really want to get this done, but we need a bit of direction to get started.

    • Test User says:

      Hey guys,

      I’ve set up a couple of ruby and python websites in the past and with things like Rails, I’d say that’s a lot easier to work with than php. I think the thing I’d be most excited to see change from the WordPress site is the blog style that WordPress is about. It currently seems really cluttered to me. This is far from a perfect thing, just scratched it up in like an hour, but I set up a rough draft of what I think would be good for a homepage. The emphasis is on the competition details big and clear so people can get into those. The bottom buttons kind of consolidate some of the functions and would be easy to add or remove for things like links to live streaming being added and such. Here’s a link to where I hosted the example homepage I had in mind on my github:

      http://admiral-hackbar.github.io/

      I think it would be great to set up the website to be a more robust webserver than a WordPress site as well taking this as an opportunity for a visual overhaul, and would love to lend a hand in making this new site.

  3. rnlf says:

    I’m glad you agree that LD should be turned into some kind of official legal entity like a charity. Many people have expressed the exact concern you mentioned: Anything happening to you would mean the end of LD. I think most people will agree on that part.

    That being said, we should still have a full August event, with voting and all that. Problems like the ones you describe seem to be hard to handle when you’re alone. But they seem to be easily divide-and-conquerable. Meaning if we get a bunch of volunteers to do the investigating and fixing database stuff, it shouldn’t be too much hassle. The problem was you trying to do it on your own. It’s clearly a team job, so let a team do it.

    I don’t know where people approached you when they had problems, but it might be easy to forward that to a mailing list of mods and admins to take care of.

    I’ve talked to many people who don’t really understand why the current site was “still just good enough” for April, but is beyond usable for August. I agree that LD matters and that it should be fair and all that. But what changed between April and August that makes the August event so much more “threatened” than the last one?

    It’s good that you plan take the next months working on the new site, let others run the August event, I bet some of the old mod team are still around and would be willing to recruit new mods for at least this one event, maybe for longer.

    Concerning the charity, maybe we can find a way to start subsidiaries in other countries that all contribute to the same governing body of LD charity in Canada or the US or whatever. If you need people to help with that, please just announce it on the LD site and people (including myself!) will offer as much help as we can. People care _a_lot_ about LD and would be willing to help make it better.

  4. Jezzamon says:

    One point I’d like to bring up is that a think a community run Ludum Dare, with voting and such would work ok! As far as I imagine it, it would involve passing the baton on to a few trusted people in the community.

    For August, you bring up that there’s are lots of issues with the current site. I think most people would agree that having a broken, corrupt Ludum Dare with voting would be better than one with no voting at all. If people do bad stuff and cheat, then it’s like, yeah, that sucks, but it’s only affecting this one LD that we’ve already said not to worry too much about. I think the community might be able to recognise some issues too (e.g. through the stats page and the data scraping stuff that’s been done in the past).

    That’s where my vote is. Find some people who care about Ludum Dare, who you can trust and who are happy to help. Obviously, there’s the issue that many things would require explaining, so it’s not completely straight forward, but I think people care enough to do the brunt of the work and figure out how to use a broken system.

    • rnlf says:

      “I think most people would agree that having a broken, corrupt Ludum Dare with voting would be better than one with no voting at all.”

      This.

  5. mantis says:

    Bunch of us wrote this when we first saw your post all those weeks ago, Mike. The most important part about it still holds. Since you’ve cleared up some things, I’ve removed the signatori. If they still want their names on this post, they’re more than welcome to write so

    ————————————————————————-

    TL;DR: Instead of cancelling August LD, we suggest having the event in August
    run by a team of moderators to allow PoV to finish the new site for December’s
    LD and have some break. If the current site is really unusable, we could temporarily
    move over to a different site for this one event.

    ————————————————————————-

    We fully understand that PoV needs a break. It’s well deserved. He has been
    running LD solo for a while now and it’s taking its toll. It’s totally fine for
    him to skip an event so he can gather his strength and energy for Ludum Dare’s
    15th anniversary next year. We wish PoV nothing but the best and are very
    grateful for the effort he has put in to keep this awesome event going all this time.

    We feel however that skipping the August LD altogether is not the best move for our ever growing community. One of the best aspects of Ludum Dare has been the consistency at which the event has been held. For eight years it has run like clockwork and we think one of the main reasons Ludum Dare gained in popularity so much over this period has been that it was so reliably organised.

    Cancelling the event in August would mean breaking that streak and we believe this could have repercussions for the community and the event itself. We think it would be much better to try and organise the event in August by a group of hand-picked people PoV trusts, while he can take his well deserved break. We don’t want to steal his baby from PoV, we would simply like for Ludum Dare to continue as planned.

    We propose the following plan:

    1. Assemble a team of moderators to organise the August LD. There has been a
    team of moderators for Ludum Dare in the past and many of them are still active
    on IRC. Recruiting them (+ perhaps a few new people if need be) would bring the manpower
    required to make sure there is enough capacity to make up for PoV’s absence.

    2. A: Hold LD36 in August as planned, on the current website with all its
    flaws. It worked for the past events, so we can do it again.

    2. B: Alternatively, if using the current website really isn’t an option, we
    can also have Ludum Dare on another website for this one event. We’ve spoken
    with Leaf Corcoran of itch.io about the possibility of using the game jam system
    he already has in place and his response was very positive about this. He also is more than
    willing to write custom code for Ludum Dare so his website has all the features
    we currently enjoy as well, such as a blogging system and voting across the compo & jam.

    There is enough time until LD36 to implement this plan and would solve many of
    the current problems. PoV would be able to get the rest he needs and LD would
    keep on going as always. This allows the thousands of participants to keep
    joining their favourite game jam and set us up great for our 15th anniversary
    next year!

    • Wan says:

      +1. Is there a HQ for “bunch of us”? I’d be happy to join.

    • Pickens Inc. says:

      I’d like to help moderate, but I’d like to participate more!
      If there’s some way I can do both, be it help set up beforehand, or try my hand at balancing both, I have actively moderated active forums before, so if you need more manpower, I’ll have nothing but time in August, hopefully!

    • euske says:

      Just curious, why do you think the constant schedule is so important? Is it more important than a fair judgment or the longevity of the whole community (I’m talking about ~50yrs or more) in a long run? LD wasn’t originally meant to have a constant schedule. I’m not totally objecting to you, but I’d like to hear more reasoning behind this belief. To me, the 3-times-a-year schedule looks a more of consequence rather than a principle.

      • rnlf says:

        euske, there are people who are trying to not miss a single LD over a long time. If LD then fails these people, it would be sad. People are planning their vactions and work appointments according to LD schedules. I think it’s just fair that LD tries to not betray those people. Also, if we skip one, who says we’re not going to skip the next one either? Or randomly skip LDs? LD is a constant for many people and it’s relatively fixed schedule makes it predictable. Without this predictability, I don’t think it would have become as popular as it is now. The other thing is the judging. Just compare MiniLD participation to LD participation. In many cases, the only significant difference is voting. Voting means your games gets some eyes, without voting, people just post their games and a minority of people actually play any of them. Voting forces people to play. That’s what makes LD so interesting. Don’t skip LD, don’t remove the voting. Everything else turns LD into some random jam.

        But LD is and should be special.

  6. g12345 says:

    Hi. It’s really, really fine to take a break if you feel like this hobby is getting out of hand. And I can speak from experience. :) You’ve managed to create something that everyone in the gamedev community talks about, and it’s a great feat! Well done.

    Take a break. Rest well, and come back when you feel like it. Even if it takes longer than December, it’s still worth it. But we’ll need you for some time in August, but it can be as long as _you_ like.

    Setting up an organisation is a way to go forward. I’d say you need to talk to a lawyer as well as an accountant to set it up properly, so that you can set up an organisation that is best suited to the vision. You don’t need to set it up overnight, in fact I’d prefer you do it after you’ve have a good break, with renewed energy.

    As for scaling issues, well, a good way to scale things up is to distribute work that can be distributed. There will always remain some work that has to be done by one specific role (for example, deciding on which day LD is going to be held, or some PR tasks), as long as they can be replaced when something happens. Throwing more people at some tasks is not always the solution (even if some people still believe in the Mythical Man-Month).

    Something else I’d like to note is that I was surprised how much LD consist of manual work done by you. I’m pretty new to LD, so I had problems setting up with an LD account not very long ago. And I was surprised by how quick you’ve solved that problem yourself. (Thank you for that.) If even ten percent of people had problems during LD, then for an event with 4k+ people you’d have to handle 400 problems yourself, most of it during the LD weekend too. That alone would be a stellar achievement!

    Well done, and you deserve a break! :)

  7. pta2002 says:

    I aggree with the others. We could surelly run the august LD, maybe an LD 35.5. As others, I would be glad to help with the new site, if you set up a repo we can contribute to. Like LiamLime suggested, reopen ldjam.com for the test site.

    The august LD could be run by mods, or by other people who would like to help (I would love to). If it isn’t possible to run it on this site, itch.io has the best jam hosting infrastructure, IMO. I am, however, pretty sure there wouldn’t be as many people in this one, so scale wouldn’t be as big an issue as it was last LD.

    I’m looking forward to this, however, you do deserve a break :)

  8. ashdnazg says:

    Re: “Sadly, I was also presented with evidence that games had more votes than downloads. I can’t really ignore that.”

    We had an issue in a web service that some servers between the client and our server cached files so the download request didn’t even reach its destination (in our case it led to files not being updated which was annoying). So false positives may exist here.

    • AgentParsec says:

      If someone tries to download a file but fails to do so, they still shouldn’t be voting. Unless you mean that people are trying repeatedly to download the same file multiple times, in which case perhaps a better download server would be a good idea to prevent confusion like that in the future.

      • AgentParsec says:

        Actually, ignore what I just posted. I suddenly realized I got it backwards, as that would have caused more downloads than votes anyway.

      • Stuntddude says:

        I think ashdnazg is saying that the files got cached on an intermediate server so the primary server didn’t get hit with the download requests. Not that they had a lot of failed downloads.

  9. oxysoft says:

    First, thank you for making this post and keeping everyone on the same page. I see now how it could probably be stressful for you with everything that is involved outside the competition itself. If I were in your position honestly, I would probably ignore everything that you have mentioned. I mean, do you really have to be professional?

    If an educational institution contacted me for making Ludum Dare part of the curriculum or whatever, I’d just reply a 2 line email that basically said do w.e you want but don’t expect to stay in contact with me and support you or anything because this whole thing is ran just for fun. I obviously don’t have the same patience as you but I think it’s necessary to flush a few things into the garbage.

    Anyway, I personally don’t mind if there isn’t any Ludum Dare next august if that’s what it takes but I doubt you’ll get away with it next december if there still isn’t a brand new shiny website ready. I can’t wait to see it when it’s a reality though!

    * “We found a user that created multiple accounts just to give their game 5 star ratings”

    I assume this must not occur all that often actually because in order to cheat, you would need to submit games on all of your accounts. Who is going to spend time to do that when they can just work on their game instead and focus on making it better? Someone who does this by the way obviously hates programming/game development altogether and is just trying to inflate their e-penis. I mean how often do people like that participate to game jams? I obviously don’t have any data or source on that but I would assume that most people who participate in game jams have a passion for game dev and obviously participate to have fun, not to cheat and get a bigger score, they are rarely crooks.

    On that note also, I had the idea that your ratings maybe shouldn’t always weight the same as everyone else. Some people will disagree with this idea which is why it’s only an idea but I think it could be beneficial. For example, when a person who has voted 30+ games and most of them are 1-2 stars rates a game very high, their ratings could be worth slightly less since this user might be very harsh. Similarly, a user rating everything very highly could be worth slightly less because this user is obviously hesitant to give lower (albeit sometimes more honest) ratings.

    I’m not entirely sure myself on this whole idea but I think some sort of weighting system could be beneficial, regardless.

    * “Sadly, I was also presented with evidence that games had more votes than downloads. I can’t really ignore that”

    I may have come up with the most esoteric solution to this. This might sound extremely out there and there are numerous issues and problems with this, but I bet you could have a feature to let people define a “password” to their entry. To rate the game and have it count, you must enter the password. It could come as a question to test whether the person has really played the game. For example, at the end of the game, reveal the password to the user so that they can vote.

    The most obvious problem with this is obviously that a game that is very difficult will have far less ratings based on the fact that most people won’t be able to beat the game and get the password at the end. The simple solution is to not enable the password feature for this entry.

    Ultimately, I think we can avoid such solutions altogether if the “coolness” system is completely eliminated and the entire equation is redefined. If the amount of games you rate gives you no advantage over others, there wouldn’t be any point to it and I believe that is the proper way to go moving forward.

  10. LTyrosine says:

    1) We should find a way to run August LD in a way or another. Of course we can ask no more from PoV than what he already did all these years, and a break is more than deserved.

    2) Also, there are many nice and practical ideas to address vote imbalances. For example, request a simple token field (text) in voting screen, obtained from inside game somewhere (decision by each developer), ensuring that the judge at last played the game before rating it. Also, games could be presented in fixed order (random for each person) forcing to rate this game or marking as unplayable. Of course they are behind some work on current site, but I’m sure that are plenty of able and willing LDers ready to perform it – me included if I can help with .net/c# knowledge.

    These discussions and ideas (all) should be presented to community in pools and let them decide about everything.

  11. rnlf says:

    I thought about some of the possible solutions. We might be able to write a data mining program that finds suspicious entries automatically. Like find entries that cast very uniformly negative ratings or things like that. We have a few mathematicians and professional software developers in the community. This should be doable!

    Another solution would be to ignore all votes cast by entries that don’t make it over the 20 (or whatever it is) ratings threshold. If we can then find clusters of entries that vote on each others without creating or receiving many votes from outside the cluster, we might be able to reduce this kind of cheating. This could be done on the existing database (which could even be anonymized before running through the data mining program). Then the mod team could discuss the findings of the program and act accordingly.

    The problem with using “illegal” assets could be solved by a simple “report entry” button, where people can put their evidence and then have the mod team investigate. If that happens in the Jam, the entry would be forced out of that category. In the Compo, disqualifications would have to be done more often That would also scare people from trying it in the first place, especially if there is a warning about that before the compo. Also making numbers about disqualified entries public after the compo will show people that we’re serious about it.

  12. laaph says:

    Thank you PoV for running LD as long as you have and as long as you will and all the other things done!

    I’d be happy to run the LD or help run the LD in August. Having said that, I hesitate to say I’m qualified, since I have little to no understanding of how to run LD behind the scenes. I’ve only ever partaken, and while I know a bit of trivia about the infrastructure of Ludum Dare and the website, I don’t really know how all the pieces work.

    Personally, PoV, I’d suggest to take this opportunity to train people on running Ludum Dare. It may be more or less work than running LD, and you might have to be on “putting out fires” mode, (and it might be better to wait until December if you need the time off,) but having other people who can do things could relieve a lot of stress, even if you were still in charge and needed to be available for when things go wrong. (And don’t forget backups! :p )

  13. pragmascript says:

    Thank you PoV for running the show :)

    I think it doesn’t matter if the voting is not secure.
    It was never about the voting anyway.
    If someone wants to cheat the voting system, by registering additional accounts I dont think anyone really cares. Having some kind of feedback to your game is nice and the voting system ensured that people will play your game. Which is more important than the votes themselves.

    My two cents.

  14. PowerSpark says:

    Thank you for all you’ve done to keep LD alive… that’s important to most of us (I hope). I agree with the points you made as well!
    Feel free to take a break of course… I don’t have much to say as I am a newer member. Good luck on setting it all up for December!

  15. CoderJoe says:

    Just wanted to say thanks for running LD! 35 was my first LD and it was really fun. I have no worries that the community will figure something out.

  16. Orangy Tang says:

    Hey PoV!

    I’ve been participating in Ludum Dare off-and-on for many years now, and watching it grow from the small events into what it is now has been awesome, and LD is something I always recommend to people who ask me how to get into the games industry.

    Mostly I just wanted to say thanks for so much hard work that’s probably not been appreciated enough over the years. You’re probably going to have a bunch of people telling you what you ‘should’ do, so instead I’m going to say trust yourself and do whatever’s best for you.

    Peace out.

  17. eric777 says:

    I support you 100% PoV. As long as you are doing LD events, I will participate and be grateful.

    I do not support the decision to drop August. I think that’s a mistake. The fact that it bums me out personally is irrelevant. I believe it damages the faith that the community places in LD, far more than any cheating/exploits could. Keep the consistency in lieu of accelerating the improvements. I feel pretty strongly about that.

  18. yo_milo says:

    Thanks for your great effort. Ludum dare CHANGED me as a developer, and I only have you to thank. If you wanna relax, I know I nice beach in Mexico you may like, in a small 100 population town.

  19. FyberOptic says:

    There will always be people who try to cheat because they fail to understand the point of the event. People will game the numbers, people will write code weeks ahead of time and try to force it to fit the theme, and other people are very likely manipulating the theme results based on what they want (or need) the theme to be.

    Other than theme manipulation, the rest just doesn’t really matter. I don’t care whose game shows up ahead of mine. The prize is the experience and the positive comments people give for the effort you put forth. Some people even get the biggest prize of all, which is a game that they might develop further into a commercial product. So the position you get is fairly irrelevant compared to those things. People who cheat Ludum Dare are only cheating themselves, because they proved they couldn’t do it on their own merit.

    You’ve allowed quite a lot of people to participate in an event that could range from unforgettable to life-changing to them. You’ve got a lot of peoples’ support and respect. If taking time off and skipping an event is what you need to do to keep this experience alive and growing (both for it and your sake), then more power to you.

  20. First, thanks for running this consistently as long as you have. I feel I’ve benefited tremendously from this community.

    Second, I happen to be a friend of a prominent charity lawyer in Canada (based in Ottawa). I of course can’t promise anything at all, but DM me if you want an introduction (mikecullinghamoutlookcom).

  21. Blobo says:

    Thanks a ton for running this jam. It is what got me into making games, and I hope to never see it end.

    You’ve had LD 8.5, LD 10.5, so this August could be unofficial LD 35.5

    You deserve this break. See you in December 😀

  22. euske says:

    Okay, maybe this is an unpopular opinion, but I’m totally fine with skipping the August LD or doing an unjudged (is this even a word?) event. Is keeping the schedule that much important? I don’t think so. If people are put off with just missing one event, I would say they weren’t committed in the first place. I appreciate people who’re trying to make the August LD happen, but I would be understanding if it didn’t. Personally, I would like LD to flourish *despite of* these breaks.

    • voxel says:

      Not everyone can participate in every LD. I often have to miss the December competition, so the August one is ‘important’ to me. Still, I agree that it is worth skipping an LD if it means LD doesnt get permanently cancelled, but I think the ‘problem’ many people have is that they believe there’s no reason to skip the LD at all since we can make other arrangements to host and run it, despite the issues with the current configuration

  23. DerTraveler says:

    Hello Mike,

    thank you so much for running LD in the past years… I only participated once until now but I have followed it for years and was amazed at the kind of creativity it sparked in innumerable people around the world :)

    I was wondering whether there is a complete Database schema (all included tables, relations etc.) of everything that is connected to Ludum Dare somewhere?

    Because my programmer souls has an itch to write a Ruby on Rails port of the new homepage (and maybe people would even help – if experienced Rails Developers are among the users :) )

    It is definitely easier to maintain than an old-style homepage written in PHP and the likes…

    Also as some people stated before… A kind of design Document of the project would be indispensable, practically things like:
    – Expected Features of the new Page, and a detailed list of issues the current page has and that you want to fix
    – Layout Structure of the page
    – Data Structures and How they are connected

    I can understand that you feel very passionate about the page and the project as a whole, but if you want to keep it running in the long term – without having to rely on you as a person – it’s very important that it is maintainable state…

  24. Interface says:

    Mike,

    Obviously a lot of people feel passionate and plenty of people want to help out with the website. That being said, I doubt the issue is technical in nature. There are plenty of people here willing and able to help. However, the way I see it you need help organizing and managing. That frees up your time to start looking into delegating more of the technical side as well.

    There are three major parts I see that we need to assist you on (ignoring the August question for a second):
    1. assistance in managing the day-to-day site stuff. As I understand it, you used to have a crew and still sorta kinda do, so that needs to be started up again and you need to empower them. To me, this seems like the easy part especially since you already have people you know and trust that can (for the most part) “just” do it.
    2. organizing any legal structure or setup. I think this is the most difficult one to delegate. However, it would be good to get a think-tank of known old-timers in the LD community to voice their ideas/concerns and confide in them some of your ideas and plans. This can be done privately.
    3. Planning and documenting the technical side and future plans. There’s plenty of people willing to help technically. However, the hurdle is your typical coder angst about “clean code” and “documentation”. Why not get a few people you know and trust to actually privately help with that as opposed to helping with writing new stuff. Once you’re past a certain point with that you can start opening that up more and more to the community to contribute to both the code and the documentation.

    You probably feel guilty for getting money from Patreon and then getting outside help. The point is that everyone knows about Patreon etc., and people are still offering free help. You’re not lying or hiding anything, you spent an enormous amount of time and also spend money on this site. Once you’re past a lot of the trouble you can re-evaluate. Even while you’re setting up a legal entity I see no reason why you can’t keep the Patreon personal for now. Again, it’s out in the open and nobody cares – so neither should you.

    I’ve learned over my years in the tech sector, going from coder to manager is extremely hard. Learning to manage and most importantly learning to delegate is an extremely hard process. I appreciate the pressure you feel. Confide in the team you already have, start there. Delegate even the smallest stuff. The rest will follow and fall in place over time.

    • highlyinteractive says:

      I really strongly agree with this.

      Looking through Mike’s replies, it looks like he’s constantly coming up with solutions, then getting distracted by something else & not publicising what he’s done.

      I was a manager once, but hated it & probably wasn’t very good at it. I’m much happier being a coder.

      I hope Mike can find the courage to delegate some responsibilities & get some of the workload off his shoulders.

  25. t4u says:

    I feel so damn sorry for you. Why don’t you use LudumDare’s success for good of both yours and LudumDare. Let industry in. Even if it meant some ads do you really think community will leave the event if you allow some ads from outside. Keep LD free but don’t be so charity focused.

    I want you to see as a manager not someone who constantly is forced to repair whenever a problem occurs.

    It’s possible that by doing everything on your own you are missing a business chances for great income that would cover the costs of repairs/ upgrades and leave something extra.

    Use LudumDare to earn money and use money to make LudumDare even greater.

  26. terryg says:

    I want to thank you, Mike for running this event year after year. A year ago my kids (twins ages 9 and my 16 year old, my 19 year old, and my 21 year old) begged me to participate in this event because “they want to learn how to make a game”. So even though I have never made a game, ever since I was a kid (and wanted to work for Atari) I gave in. We didn’t do too bad for our first game. It was playable. Then we participated in the next one. It was a LOT of fun and we all learned so much. Then I got my exchange student from Finland involved. Then his sister in Finland joined us. Then..I had two people in Maryland want to join my team because they wanted to learn how to make a game. The last Ludum dare I had a team of 14 people. I had most of them train for this last Ludum dare so we could learn how to work together. We had so much fun (even scored sub-100 in two categories). We are excited about the upcoming contest even though it won’t be judged.

    I just want to thank you for running this. This means a lot to me. I have learned so much.

    -Terry

  27. Flannel007 says:

    This may sound a bit silly, but if you need funding for the new site, to hire someone for some odd amount of months, throw down a kick starter and I am certain that people will donate. I know that I would, and you can do it during the LD compo in August so that it gets as much free media as possible. And I feel that it is easier to get people to donate once rather than monthly with patreon. I just wanted to throw this idea out there to the people in charge.

  28. Johnman says:

    You are sitting on a mountain of opportunities and you are squandering them all because you lack the ambition or the courage. Somebody will come along and pick it up to do what you couldn’t, but that someone will not have your passion for the project. It’s like seeing someone develop the blueprints for a interstellar ship and then use them for toilet paper because he’s afraid of success. Not cool in my opinion, but ultimatelly it is your choice. So good luck with it.

Leave a Reply

You must be logged in to post a comment.

[cache: storing page]