SlideShare a Scribd company logo
Operations: a
developer’s guide
Anna Shipman
@annashipman
@annashipman
Technical architect at the
Government Digital Service
@annashipman
My background
@annashipman
Previous career in
publishing
@annashipman
Self taught programmer:
HTML, CSS, terrible JS
@annashipman
First employed gig, 2005:
backend, Java
@annashipman
First job at GDS, 2012:
redirecting URLs
@annashipman
@annashipman
Wrote perl to generate
nginx config
@annashipman
Didn’t understand the
emails from the
infrastructure team
@annashipman
So joined the
infrastructure team
@annashipman
Which led to where I
am now…
@annashipman
Technical architect on a
large infrastructure project
@annashipman
What I learned has made
me a better developer
@annashipman
Knowing these things might
help you
@annashipman
Wrangling servers
Virtualisation
Containerisation
Some tools to make you a better developer
@annashipman
Each section will have a
take-home
@annashipman
1. Wrangling servers
@annashipman
How the internet works
Wrangling servers
@annashipman
“It’s a series of tubes”
—Sen. Ted Stevens
Wrangling servers
@annashipman
Servers
Wrangling servers
@annashipman
Where are your servers?
Wrangling servers
@annashipman
Where are your servers?
You own them (e.g. in the office)
Wrangling servers
@annashipman
Where are your servers?
You own them (e.g. in the office)
Shared hosting (e.g. Dreamhost)
Wrangling servers
@annashipman
Where are your servers?
You own them (e.g. in the office)
Shared hosting (e.g. Dreamhost)
The cloud (e.g. AWS)
Wrangling servers
@annashipman
Where are your servers?
You own them (e.g. in the office)
Shared hosting (e.g. Dreamhost)
The cloud (e.g. AWS)
PaaS/application hosting (e.g. Heroku)
Wrangling servers
@annashipman
Where are your servers?
You own them (e.g. in the office)
Shared hosting (e.g. Dreamhost)
The cloud (e.g. AWS)
PaaS/application hosting (e.g. Heroku)
Something else/don’t know
Wrangling servers
@annashipman
You need to make sure the
server has the software
you need
Wrangling servers
@annashipman
Handcrafting servers
Wrangling servers
@annashipman
But what happens if your
server dies?
Wrangling servers
@annashipman
It’s also easy to make a
mistake
Wrangling servers
@annashipman
Configuration management
Wrangling servers
@annashipman
Tools that use configuration
you’ve written to build
servers
Wrangling servers
https://www.getfilecloud.com/blog/2014/08/top-8-configuration-management-tools-for-sys-admins/
@annashipman
GOV.UK uses Puppet, my
current project uses Ansible
Wrangling servers
@annashipman
Config management tools
automate building your
servers
Wrangling servers
@annashipman
So it is reliable and
repeatable
Wrangling servers
@annashipman
Some getting started
guides at the end
Wrangling servers
@annashipman
If nothing else, just write a
script
Wrangling servers
@annashipman
“Cattle not pets”
Wrangling servers
@annashipman
You should not be afraid to
lose your servers
Wrangling servers
@annashipman
2. Virtualisation
@annashipman
Creating logical computing
resources from available
physical resources
Virtualisation
@annashipman
Virtual machines
Virtualisation
@annashipman
What’s a hypervisor?
Virtualisation
@annashipman
Hypervisor is the software
that runs the VMs
Virtualisation
@annashipman
@annashipman
Slight digression into
cloud computing
Virtualisation
@annashipman
“Someone else’s
computers”
Virtualisation
@annashipman
Your servers are in a data
centre
Virtualisation
@annashipman
A layer of abstraction that
pools the resources
Virtualisation
@annashipman
@annashipman
Some advantages of cloud computing
Virtualisation
@annashipman
Some advantages of cloud computing
Increased uptime & disaster recovery
Virtualisation
@annashipman
Some advantages of cloud computing
Increased uptime & disaster recovery
Can get a VM straight away
Virtualisation
@annashipman
Some advantages of cloud computing
Increased uptime & disaster recovery
Can get a VM straight away
Charged for what you use
Virtualisation
@annashipman
That’s the cloud – now
your computer
Virtualisation
@annashipman
How is virtualisation useful
to you?
Virtualisation
@annashipman
Used to be software = slow,
resource-intensive
Virtualisation
@annashipman
From 2005 Intel & AMD
started doing hardware-
accelerated virtualisation
Virtualisation
@annashipman
So can run lots of VMs on
your computer
Virtualisation
@annashipman
Vagrant is a lightweight way
to create VMs
Virtualisation
@annashipman
Vagrant.configure(2) do |config|
config.vm.box = "puppetlabs/centos-7.0-64-puppet"
config.vm.provider :virtualbox |vb|
vb.customize ["modifyvm", :id, "--memory", "2048"]
end
end
Virtualisation
@annashipman
Vagrant.configure(2) do |config|
config.vm.box = "ubuntu/trusty64"
end
Virtualisation
@annashipman
$ vagrant up
Virtualisation
@annashipman
$ vagrant ssh
Virtualisation
@annashipman
$ cd /vagrant
Virtualisation
@annashipman
Links to documentation and
simple examples at the end
Virtualisation
@annashipman
You can develop locally
using the same software as
is deployed remotely
Virtualisation
@annashipman
You can use configuration
management to build
your VM
Virtualisation
@annashipman
It makes it easy
to collaborate
Virtualisation
@annashipman
Vagrant makes it easy to
get started/pick up where
you left off
Virtualisation
@annashipman
Currently Otto uses Vagrant
Virtualisation
@annashipman
Vagrant can improve your
project tomorrow
Virtualisation
@annashipman
3. Containerisation
@annashipman
(Docker is not the only
containerisation tech)
Containerisation
@annashipman
Docker is based on
Linux Containers	 1.	 Put netting on garlic and put back outside

Containerisation
@annashipman
2008: LXC
2004: Solaris zones
2000: BSD jails
1982: chroot (tech based on)
Containerisation
@annashipman
You can run
multiple containers
Containerisation
@annashipman
Containers are isolated from
each other
Containerisation
@annashipman
Why would you use
containers?
Containerisation
@annashipman
Configuring a VM can be
slow
Containerisation
@annashipman
You might instead decide to
take a snapshot
Containerisation
@annashipman
And that is what you deploy
to production
Containerisation
@annashipman
Containers are immutable
Containerisation
@annashipman
So you can be sure what
you’ve tested is what is
running in production
Containerisation
@annashipman
With all the
same dependencies	 1.	 Put netting on garlic and put back outside

Containerisation
@annashipman
However…
Containerisation
@annashipman
The immutability can make
developing locally difficult
Containerisation
@annashipman
You can’t run
them everywhere
Containerisation
@annashipman
Possibly a harder
concept to grasp
Containerisation
@annashipman
Right now, it’s not essential
that you understand Docker
unless you are interested
Containerisation
@annashipman
2 + 3: Virtualisation +
Containerisation
Turtles
@annashipman
Locally, it’s Vagrant
or Docker
Turtles
@annashipman
But if you deploy to
the cloud…
Turtles
@annashipman
@annashipman
How do you know where the
problem is?
Turtles
@annashipman
It’s turtles all the way down
Turtles
@annashipman
BREAK
@annashipman
Wrangling servers
“Cattle not pets”
@annashipman
Virtualisation
Use Vagrant
@annashipman
Containerisation
You don’t need to learn
Docker right now
@annashipman
4. Some tools to make
you a better developer
@annashipman
“Should all my tools be written in
JavaScript (warning: if the
answer is ‘no’, there might be
a revolution!!!)”
—Remy
Tools
@annashipman
Build systems –
Grunt, Gulp…
Tools
@annashipman
Don’t just work
out of the box
Tools
@annashipman
Dependencies and plug-ins
Tools
@annashipman
You could use NPM
Tools
@annashipman
Make
Tools
@annashipman
Can create tasks to do
anything: clean,
compile, build…
Tools
@annashipman
Advantages of Make
Tools
@annashipman
Advantages of Make
Dependency tracking and resolution
Tools
@annashipman
Advantages of Make
Dependency tracking and resolution
Only does what it needs to
Tools
@annashipman
all: styles.css print.css
styles.css: styles.scss
sass styles.scss:styles.css
print.css: print.scss
sass print.scss:print.css
Tools
@annashipman
all: styles.css print.css
styles.css: styles.scss
sass styles.scss:styles.css
print.css: print.scss
sass print.scss:print.css
Compiles your SCSS to CSS
Tools
@annashipman
all: styles.css print.css
styles.css: styles.scss
sass styles.scss:styles.css
print.css: print.scss
sass print.scss:print.css
This is what Grunt, Gulp etc are doing
Tools
@annashipman
all: styles.css print.css
styles.css: styles.scss
sass styles.scss:styles.css
print.css: print.scss
sass print.scss:print.css
$ make styles.css
Tools
@annashipman
all: styles.css print.css
styles.css: styles.scss
sass styles.scss:styles.css
print.css: print.scss
sass print.scss:print.css
Only runs if SCSS is newer than CSS
Tools
@annashipman
all: styles.css print.css
styles.css: styles.scss
sass styles.scss:styles.css
print.css: print.scss
sass print.scss:print.css
$ make print.css
Tools
@annashipman
all: styles.css print.css
styles.css: styles.scss
sass styles.scss:styles.css
print.css: print.scss
sass print.scss:print.css
$ make all
Tools
@annashipman
all: styles.css print.css
styles.css: styles.scss
sass styles.scss:styles.css
print.css: print.scss
sass print.scss:print.css
$ make all
Tools
@annashipman
all: styles.css print.css
styles.css: styles.scss
sass styles.scss:styles.css
print.css: print.scss
sass print.scss:print.css
$ make
Tools
@annashipman
all: styles.css print.css
styles.css: styles.scss
sass styles.scss:styles.css
print.css: print.scss
sass print.scss:print.css
If print.css doesn’t need updating, only
runs styles.css
Tools
@annashipman
Advantages of Make
Dependency tracking and resolution
Only does what it needs to
Tools
@annashipman
Advantages of Make
Dependency tracking and resolution
Only does what it needs to
Included in your OS*
*Linux, Unix, MacOS
Tools
@annashipman
Has everything you need
Tools
@annashipman
It just isn’t written in JS
Tools
@annashipman
Unix tools
Tools
@annashipman
grep
Tools
@annashipman
grep
Search given input files for patterns
Tools
@annashipman
cat
Tools
@annashipman
cat
Concatenate and print files
Tools
@annashipman
awk
Tools
@annashipman
awk
Scan input files for patterns; perform action
Tools
@annashipman
And the most useful:
man
Tools
@annashipman
man
format and display manual pages
Tools
@annashipman
$ man grep
Tools
@annashipman
$ man man
Tools
@annashipman
Being unixy
Tools
@annashipman
Each tool does one thing
very well
Tools
@annashipman
Composable
Tools
@annashipman
|
Tools
@annashipman
| (Pipe)
Tools
@annashipman
Read a file of text, determine the n most
frequently used words, and print out a
sorted list of those words along with their
frequencies.
Tools
@annashipman
1 tr -cs A-Za-z 'n' |
2 tr A-Z a-z |
3 sort |
4 uniq -c |
5 sort -rn |
6 sed ${1}q
Tools
@annashipman
1 tr -cs A-Za-z 'n' |
2 tr A-Z a-z |
3 sort |
4 uniq -c |
5 sort -rn |
6 sed ${1}q
Tools
@annashipman
1 tr -cs A-Za-z 'n' |
2 tr A-Z a-z |
3 sort |
4 uniq -c |
5 sort -rn |
6 sed ${1}q
Tools
@annashipman
1 tr -cs A-Za-z 'n' |
2 tr A-Z a-z |
3 sort |
4 uniq -c |
5 sort -rn |
6 sed ${1}q
Tools
@annashipman
1 tr -cs A-Za-z 'n' |
2 tr A-Z a-z |
3 sort |
4 uniq -c |
5 sort -rn |
6 sed ${1}q
Tools
@annashipman
1 tr -cs A-Za-z 'n' |
2 tr A-Z a-z |
3 sort |
4 uniq -c |
5 sort -rn |
6 sed ${1}q
Tools
@annashipman
1 tr -cs A-Za-z 'n' |
2 tr A-Z a-z |
3 sort |
4 uniq -c |
5 sort -rn |
6 sed ${1}q
Tools
@annashipman
1 tr -cs A-Za-z 'n' |
2 tr A-Z a-z |
3 sort |
4 uniq -c |
5 sort -rn |
6 sed ${1}q
Tools
@annashipman
1 tr -cs A-Za-z 'n' |
2 tr A-Z a-z |
3 sort |
4 uniq -c |
5 sort -rn |
6 sed ${1}q
Tools
@annashipman
1 tr -cs A-Za-z 'n' |
2 tr A-Z a-z |
3 sort |
4 uniq -c |
5 sort -rn |
6 sed ${1}q
Tools
@annashipman
1 tr -cs A-Za-z 'n' |
2 tr A-Z a-z |
3 sort |
4 uniq -c |
5 sort -rn |
6 sed ${1}q
Tools
@annashipman
Read a file of text, determine the n most
frequently used words, and print out a
sorted list of those words along with their
frequencies.
Tools
@annashipman
You might not want to write
all your programs in Unix
Tools
@annashipman
It can be really useful for
doing complex tasks
Tools
@annashipman
It’s worth getting familiar
with Unix tools locally
Tools
@annashipman
So that the first time isn’t
when you’re debugging on
the server
Tools
@annashipman
$ rake -T | grep "some detail"
Tools
@annashipman
Read the output
Tools
@annashipman
Git instructions
Tools
@annashipman
$ git add accidental_new_file.txt
$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: accidental_new_file.txt
Tools
@annashipman
$ git add accidental_new_file.txt
$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: accidental_new_file.txt
Tools
@annashipman
Unix error messages
Tools
@annashipman
$ grep -r anna
Tools
@annashipman
$ grep -r anna
grep: warning: recursive search of stdin
Tools
@annashipman
$ grep -r anna .
Tools
@annashipman
Unix tools can help you
Tools
@annashipman
The main three things you
should take home:
@annashipman
Use Vagrant
@annashipman
Unix tools are your friends
@annashipman
Read the output
Thank you!
Anna Shipman
@annashipman
Configuration management
https://www.scriptrock.com/articles/the-7-configuration-management-tools-you-need-to-know
http://gettingstartedwithchef.com/first-steps-with-chef.html
https://docs.vagrantup.com/v2/getting-started/provisioning.html
Virtualisation
http://searchvirtualdatacentre.techtarget.co.uk/definition/Virtualisation
http://searchservervirtualization.techtarget.com/definition/server-virtualization
http://www.infoworld.com/article/2621446/server-virtualization/server-virtualization-top-10-benefits-of-server-
virtualization.html
Using Vagrant
https://www.vagrantup.com/
http://blog.bennycornelissen.nl/otto-a-modern-developers-new-best-friend/
https://github.com/patrickdlee/vagrant-examples (Useful getting started examples)
Docker
http://patg.net/containers,virtualization,docker/2014/06/05/docker-intro/
https://zeltser.com/security-risks-and-benefits-of-docker-application/
Containerisation vs Virtualisation
http://www.slideshare.net/bcantrill/docker-and-the-future-of-containers-in-production
https://www.scriptrock.com/articles/docker-vs-vagrant
Make instead of Grunt/Gulp
http://blog.keithcirkel.co.uk/why-we-should-stop-using-grunt/
https://www.youtube.com/watch?v=0RYETb9YVrk (Talk on using NPM as a build tool)
https://blog.jcoglan.com/2014/02/05/building-javascript-projects-with-make/
Tools for better dev
http://www.leancrew.com/all-this/2011/12/more-shell-less-egg/ (More detail on the 6-line Unix program)

More Related Content

Similar to Operations: a developer's guide

Austin Cassandra Meetup re: Atomic Counters
Austin Cassandra Meetup re: Atomic CountersAustin Cassandra Meetup re: Atomic Counters
Austin Cassandra Meetup re: Atomic Counters
Trevor Francis
 
Ansible Case Studies
Ansible Case StudiesAnsible Case Studies
Ansible Case Studies
Greg DeKoenigsberg
 
Understand immutable infrastructure, what? Why? how? - devops d day Marseill...
 Understand immutable infrastructure, what? Why? how? - devops d day Marseill... Understand immutable infrastructure, what? Why? how? - devops d day Marseill...
Understand immutable infrastructure, what? Why? how? - devops d day Marseill...
Quentin Adam
 
Case Study: Ansible and NASA
Case Study: Ansible and NASACase Study: Ansible and NASA
Case Study: Ansible and NASA
All Things Open
 
[Container world 2017] The Questions You're Afraid to Ask about Containers
[Container world 2017] The Questions You're Afraid to Ask about Containers[Container world 2017] The Questions You're Afraid to Ask about Containers
[Container world 2017] The Questions You're Afraid to Ask about Containers
Dustin Kirkland
 
It's a trap!
It's a trap!It's a trap!
It's a trap!
Sam Newman
 
Fairfield, California Has Used Virtualization to Efficiently Deliver Crucial ...
Fairfield, California Has Used Virtualization to Efficiently Deliver Crucial ...Fairfield, California Has Used Virtualization to Efficiently Deliver Crucial ...
Fairfield, California Has Used Virtualization to Efficiently Deliver Crucial ...
Dana Gardner
 
Amy Arambulo Negrette - Serverless Frenemies: Serverless Containers in Lambd...
 Amy Arambulo Negrette - Serverless Frenemies: Serverless Containers in Lambd... Amy Arambulo Negrette - Serverless Frenemies: Serverless Containers in Lambd...
Amy Arambulo Negrette - Serverless Frenemies: Serverless Containers in Lambd...
AWS Chicago
 
Scaling on DigitalOcean
Scaling on DigitalOceanScaling on DigitalOcean
Scaling on DigitalOcean
david_e_worth
 
Practical Cloud & Workflow Orchestration
Practical Cloud & Workflow OrchestrationPractical Cloud & Workflow Orchestration
Practical Cloud & Workflow Orchestration
Chris Dagdigian
 
Containers Aren't Just for the Cloud
Containers Aren't Just for the CloudContainers Aren't Just for the Cloud
Containers Aren't Just for the Cloud
Alec Reynolds
 
Web Hooks
Web HooksWeb Hooks
Web Hooks
Jeff Lindsay
 
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Ana Medina
 
Dev Ops without the Ops
Dev Ops without the OpsDev Ops without the Ops
Dev Ops without the Ops
Konstantin Gredeskoul
 
Spinnaker workshop
Spinnaker workshopSpinnaker workshop
Spinnaker workshop
Lee Xie
 
DevOpsDaysRiga 2018: Serhat Can - The Rocky Path to Migrating Production Appl...
DevOpsDaysRiga 2018: Serhat Can - The Rocky Path to Migrating Production Appl...DevOpsDaysRiga 2018: Serhat Can - The Rocky Path to Migrating Production Appl...
DevOpsDaysRiga 2018: Serhat Can - The Rocky Path to Migrating Production Appl...
DevOpsDays Riga
 
An introduction to Serverless
An introduction to ServerlessAn introduction to Serverless
An introduction to Serverless
Adrien Blind
 
Building your own personal cloud with Eucalyptus
Building your own personal cloud with EucalyptusBuilding your own personal cloud with Eucalyptus
Building your own personal cloud with Eucalyptus
Orlando_Ruby_Users_Group
 
Win Spinnaker with Winnaker - Open Source North Conf 2017
Win Spinnaker with Winnaker - Open Source North Conf 2017Win Spinnaker with Winnaker - Open Source North Conf 2017
Win Spinnaker with Winnaker - Open Source North Conf 2017
Medya Ghazizadeh
 
Serverless in production, an experience report (IWOMM)
Serverless in production, an experience report (IWOMM)Serverless in production, an experience report (IWOMM)
Serverless in production, an experience report (IWOMM)
Yan Cui
 

Similar to Operations: a developer's guide (20)

Austin Cassandra Meetup re: Atomic Counters
Austin Cassandra Meetup re: Atomic CountersAustin Cassandra Meetup re: Atomic Counters
Austin Cassandra Meetup re: Atomic Counters
 
Ansible Case Studies
Ansible Case StudiesAnsible Case Studies
Ansible Case Studies
 
Understand immutable infrastructure, what? Why? how? - devops d day Marseill...
 Understand immutable infrastructure, what? Why? how? - devops d day Marseill... Understand immutable infrastructure, what? Why? how? - devops d day Marseill...
Understand immutable infrastructure, what? Why? how? - devops d day Marseill...
 
Case Study: Ansible and NASA
Case Study: Ansible and NASACase Study: Ansible and NASA
Case Study: Ansible and NASA
 
[Container world 2017] The Questions You're Afraid to Ask about Containers
[Container world 2017] The Questions You're Afraid to Ask about Containers[Container world 2017] The Questions You're Afraid to Ask about Containers
[Container world 2017] The Questions You're Afraid to Ask about Containers
 
It's a trap!
It's a trap!It's a trap!
It's a trap!
 
Fairfield, California Has Used Virtualization to Efficiently Deliver Crucial ...
Fairfield, California Has Used Virtualization to Efficiently Deliver Crucial ...Fairfield, California Has Used Virtualization to Efficiently Deliver Crucial ...
Fairfield, California Has Used Virtualization to Efficiently Deliver Crucial ...
 
Amy Arambulo Negrette - Serverless Frenemies: Serverless Containers in Lambd...
 Amy Arambulo Negrette - Serverless Frenemies: Serverless Containers in Lambd... Amy Arambulo Negrette - Serverless Frenemies: Serverless Containers in Lambd...
Amy Arambulo Negrette - Serverless Frenemies: Serverless Containers in Lambd...
 
Scaling on DigitalOcean
Scaling on DigitalOceanScaling on DigitalOcean
Scaling on DigitalOcean
 
Practical Cloud & Workflow Orchestration
Practical Cloud & Workflow OrchestrationPractical Cloud & Workflow Orchestration
Practical Cloud & Workflow Orchestration
 
Containers Aren't Just for the Cloud
Containers Aren't Just for the CloudContainers Aren't Just for the Cloud
Containers Aren't Just for the Cloud
 
Web Hooks
Web HooksWeb Hooks
Web Hooks
 
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
 
Dev Ops without the Ops
Dev Ops without the OpsDev Ops without the Ops
Dev Ops without the Ops
 
Spinnaker workshop
Spinnaker workshopSpinnaker workshop
Spinnaker workshop
 
DevOpsDaysRiga 2018: Serhat Can - The Rocky Path to Migrating Production Appl...
DevOpsDaysRiga 2018: Serhat Can - The Rocky Path to Migrating Production Appl...DevOpsDaysRiga 2018: Serhat Can - The Rocky Path to Migrating Production Appl...
DevOpsDaysRiga 2018: Serhat Can - The Rocky Path to Migrating Production Appl...
 
An introduction to Serverless
An introduction to ServerlessAn introduction to Serverless
An introduction to Serverless
 
Building your own personal cloud with Eucalyptus
Building your own personal cloud with EucalyptusBuilding your own personal cloud with Eucalyptus
Building your own personal cloud with Eucalyptus
 
Win Spinnaker with Winnaker - Open Source North Conf 2017
Win Spinnaker with Winnaker - Open Source North Conf 2017Win Spinnaker with Winnaker - Open Source North Conf 2017
Win Spinnaker with Winnaker - Open Source North Conf 2017
 
Serverless in production, an experience report (IWOMM)
Serverless in production, an experience report (IWOMM)Serverless in production, an experience report (IWOMM)
Serverless in production, an experience report (IWOMM)
 

More from annashipman

Analysing, Deciding, Doing: How to develop and execute an effective strategy
Analysing, Deciding, Doing: How to develop and execute an effective strategyAnalysing, Deciding, Doing: How to develop and execute an effective strategy
Analysing, Deciding, Doing: How to develop and execute an effective strategy
annashipman
 
The difficult teenage years: setting your tech strategy after the launch
The difficult teenage years: setting your tech strategy after the launchThe difficult teenage years: setting your tech strategy after the launch
The difficult teenage years: setting your tech strategy after the launch
annashipman
 
Feedback: the greatest gift
Feedback: the greatest giftFeedback: the greatest gift
Feedback: the greatest gift
annashipman
 
Coding in the open in government
Coding in the open in governmentCoding in the open in government
Coding in the open in government
annashipman
 
Open sourcing government
Open sourcing governmentOpen sourcing government
Open sourcing government
annashipman
 
A PaaS for government
A PaaS for governmentA PaaS for government
A PaaS for government
annashipman
 
Delivering GOV.UK: Devops for the nation
Delivering GOV.UK: Devops for the nationDelivering GOV.UK: Devops for the nation
Delivering GOV.UK: Devops for the nation
annashipman
 
Infrastructure as Code in Government
Infrastructure as Code in GovernmentInfrastructure as Code in Government
Infrastructure as Code in Government
annashipman
 
Automating Government
Automating GovernmentAutomating Government
Automating Government
annashipman
 
Craftsman Softwareship
Craftsman SoftwareshipCraftsman Softwareship
Craftsman Softwareship
annashipman
 
My roof
My roofMy roof
My roof
annashipman
 
X pday
X pdayX pday
X pday
annashipman
 
Data Visualisations In IavaScript
Data Visualisations In IavaScriptData Visualisations In IavaScript
Data Visualisations In IavaScript
annashipman
 

More from annashipman (13)

Analysing, Deciding, Doing: How to develop and execute an effective strategy
Analysing, Deciding, Doing: How to develop and execute an effective strategyAnalysing, Deciding, Doing: How to develop and execute an effective strategy
Analysing, Deciding, Doing: How to develop and execute an effective strategy
 
The difficult teenage years: setting your tech strategy after the launch
The difficult teenage years: setting your tech strategy after the launchThe difficult teenage years: setting your tech strategy after the launch
The difficult teenage years: setting your tech strategy after the launch
 
Feedback: the greatest gift
Feedback: the greatest giftFeedback: the greatest gift
Feedback: the greatest gift
 
Coding in the open in government
Coding in the open in governmentCoding in the open in government
Coding in the open in government
 
Open sourcing government
Open sourcing governmentOpen sourcing government
Open sourcing government
 
A PaaS for government
A PaaS for governmentA PaaS for government
A PaaS for government
 
Delivering GOV.UK: Devops for the nation
Delivering GOV.UK: Devops for the nationDelivering GOV.UK: Devops for the nation
Delivering GOV.UK: Devops for the nation
 
Infrastructure as Code in Government
Infrastructure as Code in GovernmentInfrastructure as Code in Government
Infrastructure as Code in Government
 
Automating Government
Automating GovernmentAutomating Government
Automating Government
 
Craftsman Softwareship
Craftsman SoftwareshipCraftsman Softwareship
Craftsman Softwareship
 
My roof
My roofMy roof
My roof
 
X pday
X pdayX pday
X pday
 
Data Visualisations In IavaScript
Data Visualisations In IavaScriptData Visualisations In IavaScript
Data Visualisations In IavaScript
 

Recently uploaded

HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
saastr
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
Edge AI and Vision Alliance
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
Fwdays
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Pitangent Analytics & Technology Solutions Pvt. Ltd
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
DianaGray10
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
Neo4j
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
Javier Junquera
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 

Recently uploaded (20)

HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
 
Artificial Intelligence and Electronic Warfare
Artificial Intelligence and Electronic WarfareArtificial Intelligence and Electronic Warfare
Artificial Intelligence and Electronic Warfare
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 

Operations: a developer's guide