RetroRuby 2016

RSpec

Leveling Up from Advanced Newbie

Everything APIs

War with your client developers is bad, m’kay.

Freelancing

Productivity Tools Hacks

Making a Safe Space

  •    Admitting lack of knowledge is difficult in tech

    •    Not forcing people into roles based on years of experience

    •    Not needing to be a manager to be a mentor

    •    Being able to admit mistakes

    •    Recognizing early when the space becomes unsafe (as a manager) and intervene

    •    One person with a toxic behavior can detract from safety

    •    As a marginalized person, harassment incidents can cause alienation and distrust. Useful for team members to reach out and identify that the behavior was unacceptable

    •    Teams and "cultural debt". Culture will grow whether by intent or not. Changing culture is harder to change with time."

    •    The sense of lack of safety isn’t from the one toxic person but from all of the silent bystanders

    •    "Fear" is the antithesis of "psychological safety"

    •    Mindfulness of fear

    •    Holding up a mirror for the existing culture as a new person to a company/team

    •    It puts the onus on the individual to protect themselves when they’re not in a position of authority

    •    No one behaves at their best when they feel fear

    •    Clearly defined roles could help to reduce fear and perhaps help to build confidence

    •    It can go the other way too

    •    Being brave enough to sacrifice oneself for a teammate

    •    Strategy and thoughtfulness is important

    

Functional (And More!) Web Stacks

Functional programming is distinct from procedural programming: you never ever change the state of things. Requires organizing the code around the idea that things are a series of functional operations and not a bunch of steps changing state.

Self contained functions, dependencies passed in, no side effects.

Manages expectations of code which facilitates easy caching, parallelization ...

Issues/Solutions within Rails:

Some other functional tech:

Infrastructure as Code

So many tools, hard to learn, often assumes that learners already know things.

Why?

Humans change code. Code changes computers.

Making Development, Staging, and Production environments as similar as possible.

Investigate 12 Factor Apps philosophy and recommendations (http://12factor.net)

Tools:

Services:

https://www.hashicorp.com/blog/tao-of-hashicorp.html

Definitions: http://martinfowler.com/bliki/InfrastructureAsCode.html

Lightning Talks