Tech has a lot of buzzwords and acronyms that make it an exclusive club. Improvements relay on people from other parts of the business that aren’t in that club
These people have to care about it and understand it.
Had to use terms that everybody in the business understood and related to.
Case for change – What top orgs do:
208 times more frequent deployments
2604 times faster to recover from incidents
7 times lower change failure rate
What you need
High Priority -> Access to people to do the work
Needed tangible goal (weekly releases) to get people to focus (and pay)
Making change a reality
Risk Management
You can just stop doing the reports
You need to gain their trust in order to get influence
Have to take them along the way with the changes
Empathy
Influence
History at ANZ
First pipeline replace just one document
Explained to change managment team how the pipeline could replace the traditional plan
Rethink of Change Plan and Outcome Reports
Other teams needed these for confidence in the change
Found out what people actually cared about, found better ways to provide that information (confidence) it an automated way
Security Assessment
Traditionally required a big document filled in and signed off
Found that this was only required for “Significant” changes
Got a definition of what significant means so didn’t need to do this.
High Risk Change Records
Lots of paperwork for High Risk changes
Decided that these are not high risk changes so lots less work
Templated them so a lot easier to do
Charles Korn – Dockerised local build and testing environments made easy
Go Script – Single script that a consistence place in all you repos that does the basic function. install, help, run, deploy
batect – tool he wrote
dockerized dev environment plus a Go Script
Dev environment
Build env: code to an artifact
Testing Environments. Fake stuff, lots of different levels
Build Environment
Container with the build tools. Mount our code directory into this
Isolation brings consistency and repeatability. No more “works on my machine”
Clean container every single time we run a build
CI agents just need docker since teams will provide the container
Ease of Onboarding. Just get git and docker installed
Ease of change. Environment and tasks defined in yaml and versioned like everything else. New version downloaded. Kept in sync with actual code
Test Environments
You can run local tests
Consistently runs test on CI
Have to launch multiple containers for more complex tests, using built in docker definitions and health checks and networking
Path to Production
If deploying docker then can use same image
But works with stuff that isn’t deployed as docker too
What about docker compose?
Better performance
Model – tasks are a first class citizen – Doesn’t feel like you are fighting the too.
Better UI and developer experience. Updates managed automatically
Cleans up better after each run
It just works. Works with proxies better. Works with file permissions better.
How to get started?
start small, work incrementally
Start with the build enviroment
With the Test env work though one piece at a time.
Reuse components
Take advantage for other people’s images. Lots of mocks for cloud services.
Preventing the IoT Dystopia with Copyleft- Bradley M. Kuhn
Bradley M. Kuhn
The S in IoT stands for Security
Many stories of people hacking into baby monitors and home cameras
IoT Devices often phone home to manufactorers website in order that you can access then remotely. “I suppose there are Chinese hackers watching my Dogs all day, I hope they will call me if they need water etc”
Open source people have historically worked to get around problems like this.
1992 – If you wanted Linux, you downloaded the software onto floppies and installed it yourself. And Often had to work hard to make it work.
Today only a small percentage of laptops sold have Linux on it.
But Linux is commonly installed on IoT devices – 90% odd
But
No [easy] way to reinstall it yourself
Much worse than laptops
GPL includes “The scripts used to control the compilation and install of the executable”
“Freedom to Study” is not enough
Linksys Wifi router
OpenWRT Project
Release forced from Linksys and Cisco
“Source as received from Linksys from GPL enforcement”
Is OpenWRT a Unicorn
Few projects with serious alternative firmware project
Still sold new after 20 years
BusyBox Lawsuits
Before IoT was even a term
At least one model of Samsung TV -> samygo.tv
“Baffles me as to why do the manufactorers want us to buy more hardware”
Linux focuses to much on big corp users and ignores hobbyist users
Kernel peopel only care about the .c files. Don’t care about the install scripts etc.
People at top of Linux now got their start hacking on the devices in front of them.
The next generation of developers will be those hackers not from IBM and other big companies
You didn’t need anything but a computer and an internet connection to become and upstream developer in those days. This is becoming less true.
If the only thing you can install Linux on is a rackmount server, a cloud server or maybe a laptop and none of the IoT devices around you then things don’t look good….
Linux was successful because users could install it on their own devices
Linux won’t remain the most important GPL program if users can’t install their modifications. Tinkering is what makes Free software great.
Upstream matters of course, but downstream matters more.
There may be 1000s of Linux developers
Put 2 billion people have Linux on their phone – Which is locked down and they can’t reinstall
We don’t need a revolution to liberate IoT devices
because the words are already there in the GPL
We just have to take up our rights
What you can do.
Request Linux sources on every device you own – Companies have figured out people almost never ask
Try to build and install them. If you can’t ask a friend or ask Conservancy for help
If it doesn’t build/install it is a GPL violation, report it Conservancy
Step up as a leader of a project devices that matter to you.
Why this will work
The problem seems insurmountable now, only because we have been led astray
First and absolutely necessary step towards privacy and scurity on those devices
When the user controls the OS again, the balance of power can be restored
Questions
Best way to ask for source code? Try email, the manual should say.
How to get the new code on the device? Needs some push onto industry
What if writing requires expensive equipment? Fairly rare, many devices allow over-the-air upgrades, we should be able to go the same way.
Is there a list of compliant devices? – Proposed in past. Want to go softly at first in many cases
Am I exposed to liability if I modify and distribute code I receive? – Almost certainly note, contact Conservatory if you are threatened.
Web Security 2019 – James Bromberger
James Bromberger
History of browser
No images
Images
Netscape with crappy ‘International Security”
https takeup is growing
Chrome is hitting 60-70%
82% of browser are “modern”, crossover of chrome users to new version is about 3 months.
PCI
Remove early TLS in mid 2018
TLS 1.1 and higher allowed
The legacy browser has gone in the real world
Some envs still behind, but moving ahead
What can we do with as little changes as possible?
0. Don’t use http, use https
Use letsencrypt
Stds reducing max length of certs from 5 years
1. TLS protocols
7 versions out there (old ones SSL).
Most over 10+ years old
Only 6 in the wild
3 not-known to be comprimised ( 1.1 1.2 1.3 )
Very few clients only support 1.1 and not 1.2 (small gap in 2006-2008 ). IE supports 1.2. So maybe disable 1.1
Log the protocol being used so you have data on your users
OTOH not much supports 1.3 yet
Use 1.2 and 1.3
Turn off on the Browsers to
Looks at which libraries you are using in code that makes https connections
2. Cypher Suite Optimisation
New EC certs for key exchange
New certs getting changed to ECDSA
AES is standard for bulk encryption. GCM mode is best although windows 9 can’t do (Upgrade to 10!)
Hung around a bunch of top guys in Linux talked about added SMP to Linux
Talk on porting Linux to Sparc by David Miller & Miguel de Icaza. Going into improvements and showing how Linux port to sparc bet Solaris in the Lmbench benchmarks on same hardware.
Relaized lived in a world where students could create and port OS that bet the original OS from the vendor
1997 – 1998
Wrote (with another guy) and got ipchains added to Linux
“I woke up one morning and I was kernel firewall maintainer”
Got job people paid to work on Linux firewall code
1998
Decided needed an Australian Linux conference
Oct-Nov visited a bunch of LUGS to invite people and find person to collect money.
People not sure what they wanted to go to a Linux conference ( $380 bucks)
Invited John Maddog Hall
Created and ran a slashdot ad
Created card got into $14k negative
Last session of the 3rd day, reran the 3 best talks
Three stories from 1998
Tutorial Books for each of the tutorials- Couldn’t get photocopies from commercial facility, so had to make 400 copies of books via 4 coin operated photocopiers
Tridge bought up a triple-CD burner. People ran it in relays
Somebody said. “I can’t believe you don’t have conference tshirts”. He bought white tshirts, got them screen printed and sold them.
End of conference Tridge organised a gift from the Speakers to Rusty. Pewter Beer mug
Linux.conf.au after 1999
2001 scheduled 3 talks from Rusty. At the same time
Met Tridge at LCA – Moved to Canberra they did AusLabs
How Great Projects
Smart and Capable enough to complete them
They are Dumb enough to try
When somebody tells you about a project?
That sounds Great, Tell me more
What can I do to help
Enable people’s enthusiasms
Collaboration is a super Power
Get along with people is a skill
“Constructive absenteeism”
Headwinds to collaboration
Signs are welcoming to some people
Other people get signs that they are not so welcoming
Good are seeing them when they are aimed at them, not so good are even seeing they exist when they are not aimed at them.