/Salvation-Development-Charter

Notes from the development room. Explains the company culture, must see and read.

Actual Rules

The following are the only core rules and policies, in no particular order.

  • Jamezs "AccessDenied" Gladney is singularly incharge. Everyone else is an equal under him.
    • Violation of this or direct insubortnation will result in being asked and/or potentially strong armed, into leaving the project.
    • Pay attention for "... thats an order." It signifies invoking this clause.
  • If there is a problem with the software, file a bug.
  • Do not take work you can not complete in a timely manner, or show progress of completing.
  • We are making software for users, not developers. Don't make things that are locked to one operating system, lack UI, require many dependencies or require crafted non-default configuration.
    • Setup should be as few steps as possible.
  • Do not leave the development room in an argumentative state, this signifies the same as abandoning your post. You forfeit administrative privileges and staff status by doing this.
  • Use version control, this is not negotiable.

Logic for Rules

If something is a rule it means there is a breakdown of communication, function, or ideology between two or more people chronically in a situation. A rule is an artifical solution for lack of principle.

  • The person experiencing an annoyance likely to inappropriately prioritize it and miscommunicate it via the lens of annoyance, and the person being notified will naturally forget or may not be the appropriate person to solve the problem. People should not be punished for doing things that are natural. So the person that has the ablity to resolve the issue needs a way to become familiar with the issue at a later time, even possibly fail to solve it on the first try and have a mechanism to review it yet again. Bug reports and issue tracking provide a medium for both the staff and the users to equally experience an issue.
  • Communication is the basis of the human condition realizing an idea that affects social change. Harming this is an attack on the group. This behavior will not be supported. Keeping secrets from the group about the group is harming the group.
  • You will make mistakes, accept that. You will forget things, accept that, you will need to communicate, accept that, you will need to communicate with people and computers, accept that. Accept version control.
  • The follow is a quote in regards to AccessDenied :

"You know, that's a great question, [...], and I might have to give it some thought. But what I can tell you I ask myself every single day is, how can I be useful in creating [a place] that is more tolerant, more prosperous, provides greater opportunity, is safer."

"So I might just ask somebody, why do you want to do this? And I suppose they'd give a cliche answer because that's what [people] do, but I will tell you as [a leader], if you are interested just because you like the title or you like the trappings or you like the power or the fame or the celebrity, that side of it wears off pretty quick. At least it has for me."

"And what sustains me, what lasts, what makes me happy, proud, frustrated sometimes, is the recognition that if you want this job then you really need to love this [place] and have a very clear vision and idea of what it is that you want to do to help make this [place] work even better."

"I don't think this [place] works best on fear. I don't think this [place] works best on hate. I don't think this [place] works best on cynicism. I think this [place] works best on community and hope and optimism and dynamism and change. If you are aspiring to this job then you need to ask yourself some very serious questions about why you're doing it because that's what's going to keep you going on those days that things aren't going so well."

Culture

A collection of the top to middle socially adjusted, mildly depressed YGO players world wide. They are dicks, perverted, spastic, nerdy, anxious, awkward, patient, helpful, innovative, and concerned with the mental well-being and happiness of those around them. They possess great problem solving and communication skills. They are passionate about Yu-Gi-Oh! and connecting with others.

  • People are the most important asset.
  • Be honest, with your co-workers and self.
  • For the user experience, make the right thing to do the easiest thing to do.
  • Solve problems by fixing the environment that allowed them to occur.
  • It doesn't matter when or how much you work, only that your peers trust you and feel like you are contributing. Minimum work load is simply doing as asked in a prompt manner.
  • Document everything.
  • Don't hire people, people will hire themselves.
  • If you work in the dark and by yourself, you are working for nothing.
  • Unicorns, unicorns everywhere.
  • Write goals down publically.
  • Orginization and structure is temporary. There will be people that have deeper understandings of how certain systems work you will need to get feedback and leadership from other than AccessDenied. This is at will and ad hoc of the one acting in the submissive role.
  • Mistakes dont hurt people, malicious intent hurts people.
  • Salvation is software development centric, it helps if you start learning the basics of the languages or atleast help in the documentation of our products. We provide education tailored to you as you request them. At minimum dabble in trying to read the code base most closely tied to your job function.
  • Problematic arguments are only caused by injuries of self-esteem. You are responsible for the self-esteem of others.
  • Salvation Development and our products are privately funded by the staff solely, we do not take donations.

Development Practices

  • Use Github, and commit often.
  • Work off a branch, if you are coding something dangerous.
  • File bug reports/issues, and set up a task list for what you are doing.
  • Dont break master.
  • Code in JavaScript or Go. C# and C++ exist in our codebase and we are trying to get away from those!
  • No Ruby, Java, Python, C, no whatever other language you are thinking of!
  • No CoffeeScript, TypeScript, or Dart!
  • Quality is free for those that pay for it. Take the time to fix something, there are no deadlines here. Keep your estimates to yourself and get it done.
  • Before taking on a large task, get rest. Program somewhere peaceful and in comfort.

Things we suck at

  • Not killing each other when AccessDenied is sleep.

Articles

Quotes

"Do not run, do not back down, face every issue and do not rest till you work it out with the people here." "Anarchy works wonderfully in a small group of individuals with a high level of trust, the YGO community is not such a group of people."

-Access

"No one here is worthless and we are going to prove that!"

-Trixie

"...You have a decision to make. 1. Let it go, move on, join the chat and live it up. 2. Confront the people and come to a positive resolution or 3. Simply don't come here. All 3 of those choices are yours. Coming here and being an asshole just because you can and you're still mad about what happened isn't one of them."

-Ryder