Skip to content

Instantly share code, notes, and snippets.

View joejag's full-sized avatar

Joe Wright joejag

View GitHub Profile
@joejag
joejag / joe_gets_it.md
Last active December 15, 2015 04:28
ScotRUG talk: Joe finally gets it

Abstract

Joe likes to think about how and why he does things, he doesn't always understand what he's doing, but he's good at looking competent. Come to ScotRUG to hear about what Joe learned over the last 6 months about SOLID, Git, regex and tooling choice while moving from looking competent to finally getting it.

Topics

  • Choosing a tool
  • SOLID
  • Git
  • Quick Tips
  • Regex
@joejag
joejag / impact_mapping.md
Last active December 15, 2015 08:49
Impact Mapping Notes

What is an impact map?

An impact map is a visulation of scope and underlying assumptions, created collaboratively by senior technical and business people. Ot is a mind map grown during a discussion facillitated by answering the following four questions: Why? Who? How? What?

Why? - Goal

What are we trying to achieve? Usually defined in vague terms. Knowing why allows you to make good decisions around cost, scope & timelines, both at the start and when things change.

People (example in military) need to know the objective of any activity to react correctly to unforseen problems (which are a fact of life).

@joejag
joejag / metz-solid.md
Last active December 15, 2015 17:20
Sandi Metz Solid Talk
@joejag
joejag / werich_solid.md
Last active December 15, 2015 17:29
SOLID Ruby - Jim Weirich

http://confreaks.com/videos/185-rubyconf2009-solid-ruby

How do you recognise a good design? Use telephone interview question. (picture of a tap near a plug socket) Buring of London - recreation was agile. Through out designs by Wren and built incrementally.

SOLID. Bob wanted priciples for design. So we can objectively judge code. All about dependencies. To build maintainable code you have to manage dependencies. Engine doesn't know about a Car. Car depends on Vehicle though inheritance.

@joejag
joejag / connie.txt
Created April 3, 2013 17:14
Connie Talk on Talking
Not "Have to present" -> "Get to present"
No reporting, no informating
resonating influencing
"How do people respond to your presentations?" (walk out, ask too many follow up questions, what actions do they take)
"there is nothing normal about presenting"
Prioritize the content
Judge the audience by: "where do they spend their time, energy and money"
When mixed audience:
@joejag
joejag / gist:5326565
Created April 6, 2013 15:51
Designing For Rapid Release - Sam Newman
http://vimeo.com/53154358
Google Protobuffs for exchanging data
Design SOA around biz capabilites, not technical
Postel's Law: Be conservative in what you send, and liberal in what to expect
-- Don't use JAXB, use XPATH.
Consumer Driven Contracts: Write a test to give to services that say what you use
DO NOT USE SESSION STATE. USe cookies or persist. Or use another service
Database: Use separate schema. Can still be in the same database instance.
Services should own their own data. Free to store it how they want.
@joejag
joejag / whisky.txt
Last active December 16, 2015 04:58
whisky I currently own
Ardbeg: 10 (WA: 93, MM: 91, MJ: 85, CO: 83)
N: Sweet, soft peat, carbolic soap, arbroath smokies. Smoke & tar, lemon.
P: Burning peat, dried fruit, sweet malt, liquorice. Coating, honeyed fire peat, balanced.
F: Long, smoky, balanced cereal sweet and dry peat.
Caol Ila: 12 (WA: 89, MM: 91, MJ: 77, CO: 85)
N: Iodine, fish, bacon, floral. bbq fish, seaweed.
P: Smoke, malt, lemon & peat, oily. Bacon fat, lemon, sweet smoke.
F: Peppery peat, dry. Seaside bbq finish.
Kilchoman: Machir Bay (WA: 92, CO: 84)
N: Sweet smoke, buttery fish, toasted oats, berries. Peat & sweet toffee
@joejag
joejag / sudoku.rb
Created July 2, 2013 12:52
Sudoku starting point in ruby
grid = [
[nil,3,8, nil,nil,nil, 7,9,1 ],
[2,nil,nil, nil,nil,nil, 4,nil,6 ],
[nil,nil,nil, nil,6 ,9 , nil,8,nil ],
[nil,nil,nil, 9,1,nil, nil,5,nil ],
[9,nil,nil, nil,nil,nil, nil,nil,7 ],
[nil,5,nil, nil,8,4, nil,nil,nil],
[nil,6,nil, 8,9,nil, nil,nil,nil],
@joejag
joejag / proposal.txt
Created August 15, 2013 18:17
My first time coaching: Scrums, Systems Thinking & Strikes
Topics:
Stike action
Metrics
Physcial vs Electronic boards (moved 7 feet)
Digital by Default (systems thinking)
Shifting bottlnecks (Dev, Design, Test, BA)
Feature planning
DevOps
What's a Goal
Matrix Organisations
@joejag
joejag / calculator.rb
Last active December 21, 2015 15:08 — forked from mowat27/calculator.rb
class Calculator
def calculate(expresion)
return 0 if expresion.split.size != 3
parts = expresion.split
parts[0].to_i.send(parts[1], parts[2].to_i)
end
end
describe Calculator do
let(:calculator) { Calculator.new}