Skip to content

Instantly share code, notes, and snippets.

View joffotron's full-sized avatar
💭
😴

Joseph Miller joffotron

💭
😴
View GitHub Profile

Quick thoughts:

  • Easy to get "stuck" deployments or config changes, that leave the app/stack in an non-abortable, non-recoverable state for long periods of time. Like, an hour

  • Deployments are very slow.

  • The case when config changes (e.g. bumping the stack "version") needs you to build a new stack, failover DNS to that, is slow and pretty terrible

  • The way it uses Cloudformation is weird in that it creates a second, oddly named Cfn stack. It's just.. weird, and confusing for new players

  • .ebextensions must be idempotent - easy trap for beginners (who are the target audience)

    • If you're not careful, you can leave your system in an indeterminate state
  • Failures in those scripts can break your deployment

@joffotron
joffotron / sqs.ex
Last active August 25, 2016 04:31
Elixir is cool
iex(13)> import SweetXml
SweetXml
iex(14)> {:ok, %{body: results}} = ExAws.SQS.list_queues |> ExAws.request
...
iex(15)> results |> xpath(~x"//QueueUrl/text()"l) |> Enum.each( &IO.puts(&1) )
https://sqs.ap-southeast-2.amazonaws.com/038451313208/buildkite-AgentLifecycleQueue-ZVCDD2CSCBZG
https://sqs.ap-southeast-2.amazonaws.com/038451313208/raisemail-dev
https://sqs.ap-southeast-2.amazonaws.com/038451313208/raisemail-dev-dlq
function do_cleanup {
echo "--- Cleaning up all my trash"
rm -rf /tmp/all_the_things
}
trap do_cleanup EXIT
docker pull my-cool-thing:latest
rspec
echo ":party_parrot:"
./do-failing-thing
fizzbuzz = fn
0, 0, _ -> "FizzBuzz"
0, _, _ -> "Fizz"
_, 0, _ -> "Buzz"
_, _, c -> c
end
buzzy = fn n -> fizzbuzz.(rem(n,3), rem(n,5), n) end
Enum.each 10..16, fn i -> IO.puts buzzy.(i) end
@joffotron
joffotron / cool-web-dev-people.md
Created March 8, 2016 11:27
Cool advice for new Web Dev People

Cool advice for new Web Dev People

Bootcamps / General Assembly

There are code bootcamps, like https://generalassemb.ly/

They'll teach you the basics about Javascript/node.js, some Ruby on Rails, some SQL, some MongoDB (yuck!), HTML, CSS/SASS, APIs, AJAX and stuff like that.

It's real pricey, (AUD$12k), and is 3 months full-time

Keybase proof

I hereby claim:

  • I am joffotron on github.
  • I am joffotron (https://keybase.io/joffotron) on keybase.
  • I have a public key whose fingerprint is ECAC D428 AB58 D4E7 1B0D 681B A28E 66E6 198C 913B

To claim this, I am signing this object:

### Keybase proof
I hereby claim:
* I am joffotron on github.
* I am joffotron (https://keybase.io/joffotron) on keybase.
* I have a public key whose fingerprint is 6550 E71A B27E 0664 5A5F 3F2E 0B5C BC2F 7D77 982A
To claim this, I am signing this object: