A memoir of a senior White House staffer, Speechwriter & Presidential adviser. Lots of interesting accounts with and behind the scenes information. 4/5
A Star Trek parody from the POV of five ensigns who realise something is very strange on their ship. Plot moves steadily and the humour and action mostly work. 3/5
The book covers less than a year as the Ingalls family build a cabin in Indian territory on the Kansas Prairie. Dangerous incidents and adventures throughout. 3/5
A book about the post-Challenger Shuttle missions. An overview of most of the missions and the astronauts on them. Lots of quotes mainly from the astronauts. Good for Spaceflight fans. 3/5
Ways that people, organisations and governments can start looking ahead at the long term rather than just the short and why they don’t already. Some good stuff 4/5
Some interesting insights although everything being about New York and very left-wing politics of the author muddle the message. Worth a read if you are into the topic. 3/5
The story of the 1949 Mann Gulch fire that killed 13 smoke jumpers. Misses a point due to lots of talking to maps/photographs but still a gripping story. 3/5
The secret British operation to bug German POWs to obtain military intelligence. Only declassified in the late 1990s so very few personal recollections, but an interesting story. 3/5
A year in a life of a 9 year old boy on a farm in 1860s New Year State. Lots of hard work and chores. His family is richer than Laura’s from the previous book. 3/5 Astrophysics for People in a Hurry by Neil DeGrasse Tyson
A quick (4h) overview and introduction of our current understanding of the universe. A nice little introduction to the big stuff. 3/5
The Story of five of the first settlers of Marietta, Ohio from 1788 and the early history of the town. Not a big book or wide scope but works okay within it’s limits. 4/5
Distribution was not all free software (had bin blobs)
Sun port relied on SunView kernel API
Digital provided binary rendering code
IBM PC/RT Support completed in source form
Why X11 ?
X10 had warts
rendering model was pretty terrible
External Windows manager without borders
Other vendors wanted to get involved
Jim Gettys and Smokey Wallace
Write X11, release under liberal terms
Working against Sun
Displace Sunview
“Reset the market”
Digital management agreed
X11 Development 1986-87
Protocol designed as croos-org team
Sample implementation done mostly at DEC WRL, collaboration with people at MIT
Internet not functional enough to property collaborate, done via mail
Thus most of it happened at MIT
MIT X Consortium
Hired dev team at MIT
Funded by consortium
Members also voted on standards
Members stopped their on develoment
Stopped collaboration with non-members
We knew Richard too well – The GPL’s worst sponsor
Corp sponsors dedicated to non-free software
X Consortium Standards
XIE – X Imaging Extensions
PIX – Phigs Extension for X
LBX – Low Bandwidth X
Xinput (version 1)
The workstation vendors were trying to differentiate. They wanted a minimal base to built their stuff on. Standard was frozen for around 15 years. That is why X fell behind other envs as hardware changed.
X11 , NeWs and Postscript
NeWS – Very slow but cool
Adobe adapted PostScript interpreter for windows systems – Closed Source
Merged X11/NeWS server – Closed Source
The Free Unix Desktop
All the toolkits were closed source
Sunview -> XView
OpenView – Xt based toolkit
X Stagnates – ~1992
Core protocol not allowed to change
non-members pushed out
market fragments
Collapse of Unix
The Decade of Windows
Opening a treasure trove: The Historical Aerial Photography project by Paul Haesler
Geoscience Australia has inherated an extensive archive of hisorical photography
1.2 million images from 1920 – 1990s
Full coverage of Aus and more (some places more than others)
Historical Archive Projects
Canonical source of truth is pieces of paper
Multiple attempts at scanning/transscription. Duplication and compounding of errors
Some errors in original data
“Historian” role to sift through and collate into a machine-readable form – usually spreadsheets
Data Model typically evolves over time – implementation must be flexible and open-minded
What we get
Flight Line Diagrams (metadata)
Imagery (data)
Lots scanned in early 1990s, but low resolution and missing data, some missed
Digitization Pipeline
Flight line diagram pipeline
High resolution scans
Georeferences
Film pipeline
Filmstock
High Resolution scans
Georeference images
Georectified images
Stitched mosaics + Elevation models
Only about 20% of film scanned. Lacking funding and film deteriorating
Other states have similar smaller archives (and other countries)
Many significantly more mature but may be locked in propitiatory platforms
Wanted to go to a tools like dockers, kubernetes that were not well supported by microsoft tools
Gen 3 – Docker Services
Linux
Java / Go
Lots of ways to do stuff
3 different ways of doing everything
Confusing and big tax on developers
Losing knowledge about how the older Reckless stuff worked
A Crazy Idea
Run all the Reckless services in docker
Get rid of one whole generation
What does it take?
Move from .NET Framework to .NET Core
Framework very Windows specific – runtime installed at OS level
Core more open and cross-platform – self contained executable apps
But what about Mono? (Open Source .NET Framework) .
Probably not worth the effort since Framework is the way forward
But a lot of .NET Framework APIs not ported over to .NET Core. Some replaced by new APIs
.Net Standard libraries support on both though, which is lots of them
What Doesn’t port to Core?
Libraries moved/renamed
Some libs dropped
IIS, ASP.NET replaced with ASP.NET Core + MVC
WCF Server communication
Old unmaintained libraries
Luckily Reckless not using ASP.NET so shouldn’t to too hard to do. Maybe not sure a crazy idea.
But most companies don’t let people spend lots of time on Tech Debt.
Asked for something small – 2 weeks of 3 people.
1 week: Hacky proof of concept (getting 1 service to run in .NET Core)
2nd week: Document and investigate what full project would require and have to do
Last Day: Time estimates
Found that Windows ec2 instance were 45%
Cost saving alone of moving from Windows to Linux justied the project
Pitching:
Demo
Detailed time estimates
Proposal with multiple options
Concrete benifits, cost savings, problems with rusty old infra
Microsoft Portability Analyzer
Just run across app and gives very detailed output
icanhasdot.net
Good for external dependencies
Web Hosting differences
OWIN Hosting vs Kestrel
ASP.NET Core DI
Libraries that Do support .NET Standard
Had to upgrade all our code to support the new versions
Major changes in places
OS Differences
case-sensitive filenames
Windows services, event logging
Libararies that did not support .net Standard
Magnum – unmaintained
Topshelf
.NET Framework Libraries can be run under .NET Core using compatibility shim. Sometimes works but not really a good idea. Use with extreme caution
Overall Result
Took 6-8 months of 2-3 people
Everything migrated over.
Around 100 services
78 actually running
43 really needed to be migrated
31 actually needed in the end
Estimated old hosting cost $145k/year
Estimated new hosting costing $70k/year
Actual hosting cost $15k/year
Got rid of almost all the extra infrastructure that was used to support reckless. another $25k/year saved
Advice for cleanup projects
Ask for something small
Test the idea
Demonstrate the business case
Build detailed time estimates
Collecting information with care by Opel Symes
The Problem
People build systems for people without checking our assumptions about people are valid
Be aware of my assumptions, this doesn’t cover all areas
Names
Form “First Name” and “Last Name” -> “Dear John Smith”
Fields Required – should be optional
Should not do character checks ( blocking accents etc )
Check production support emoji.. everywhere
MySQL Character Encodings. Only since 5.5 , default in MySQL 8
Every Database, table and text cloumn and defaults need to be changed to the new character set. Set connection options so things don’t get lost in transfer.
Keynote: Who cares about Democracy? by Vanessa Teague
The techniques for varifying electronic elections are probably to difficult for real voters to use.
The ones that have been deployed have lots of problems
Complex maths for end-to-end varifiable elections – people can query their votes to varify it was recorded – votes are safely mixed so others can’t check.
Swisspost/Scytl System – 2 bugs. One in the shuffling, one in decryption proof
End-to-end verifiable elections: limitations and criticism
Users need to do a lot of careful work to verify
If you don’t do it properly you can be tricked
You can ( usually ) prove how you voted
Though not always, and usually not in a polling-place system
Verification requires expertise
Subtle bugs can undermine security properties
What does all this have to do with NSW iVote?
Used Closed source software
Some software available under NDA afterwards
Admitted it was affected by the first Swiss bug. This was when early voting was occuring
Also so said 2nd Swiss bug wasn’t relevant.
After code was available they found it was relevant, a patch had been applied but it didn’t fix the problem
NSW law for election software is all about penalties for releasing information on problems.
Victoria has passed a bill that allows elections to be conducted via any method which is aimed at introducing electronic voting in future elections
Electronic Counting of Paper Records
Keynote: Who cares about Democracy? by Vanessa TeagueVarious areas have auditing software that runs against votes
This only works on FPTP elections, not Instant-runoff elelctions
Created some auditing software what should work, this was testing using some votes in San Francisco elections
A sample of ballots is taken and the physical ballot should match what the electronic one said it is.
Australian Senate vote
Auditing not done, since not mandated in law
What can we do
Swiss has laws around transparency, privacy and varivication
NSW Internet voting laws is orientated around protecting the vendors by keeping the code secret
California has laws about Auditing
Australian Senate scrutineering rules say nothing about computerised scanning and auting
Aus Should
Must be a meaningful statistical audit of the paper ballots
with meaningful observation by scrutineers
In Summary
Varifiable e-voting at polling place is feasible
over the Internet is an unsolved problem
The Senate count at present provides no evidence of accuracy
but would if a rigorous statistical audit is mandated
How else to use verifiable voting technology?
Crowsourcing amendments to legislation with a chance to vote up or down
Open input into parliamentary quesions
A version for teenagers to practice debating what they choose