Reuse your government's code

Reuse your government's code

Presentation I gave at the London Ruby User Group about reusing things from GOV.UK's codebase.

Fca8cbc21334fe574db2d0343facf873?s=128

Tijmen Brommet

August 12, 2019
Tweet

Transcript

  1. Tijmen Brommet Lead Developer, GOV.UK
 Government Digital Service
 @tijmenbr

  2. Steal software from government!

  3. GDS

  4. GDS What if it worked for backend code too?

  5. GDS

  6. GDS

  7. GDS

  8. GDS

  9. GDS

  10. GDS

  11. GDS

  12. GDS

  13. GDS Slides will be online at www.tijmen.cc/lrug

  14. GDS 3 real world apps 3 cool patterns 3 things

    to help big projects 3 clever team tools
  15. GDS 3 real world apps 3 cool patterns 3 things

    to help big projects 3 clever team tools
  16. A really big app

  17. GDS This is a text slide

  18. GDS 8 years of code Rails 3 to Rails 5

    lots of domain modelling running single app in 2 modes
  19. A data warehouse

  20. GDS

  21. GDS collects data from our system & analytics uses a

    star schema database
  22. A new app

  23. GDS

  24. GDS

  25. GDS

  26. GDS 3 real world apps 3 cool patterns 3 things

    to help big projects 3 clever team tools
  27. Readable feature specs

  28. GDS {screenie FutureLearn blopo}

  29. GDS This is a text slide

  30. GDS This is a text slide

  31. GDS

  32. Spam honeypot

  33. GDS

  34. GDS

  35. GDS

  36. GDS

  37. Archiving big tables

  38. GDS 100

  39. GDS

  40. GDS

  41. GDS

  42. GDS

  43. GDS

  44. GDS

  45. GDS 3 real world apps 3 cool patterns 3 things

    to help big projects 3 clever team tools
  46. Configure lots of GitHub repos

  47. GDS

  48. GDS ✅ only allow merge commits ✅ protect master branch

    ✅ enforce CI checks ✅ add webhooks
  49. GDS

  50. GDS

  51. Share frontend code

  52. GDS

  53. GDS app/views/components/_back_link.html.erb app/assets/stylesheets/components/_back-link.scss app/assets/javascripts/components/_back-link.js app/views/components/docs/back_link.yml

  54. GDS

  55. GDS example

  56. GDS

  57. GDS

  58. Visual regression testing

  59. GDS

  60. GDS

  61. GDS 3 real world apps 3 cool patterns 3 things

    to help big projects 3 clever team tools
  62. Seal of approval

  63. GDS

  64. GDS

  65. GDS

  66. GitHub Trello Poster

  67. GDS

  68. GDS

  69. Browser extension

  70. GDS https://www.gov.uk/learn-to-drive-a-car https://www.staging.publishing.service.gov.uk/learn-to-drive-a-car https://www.integration.publishing.service.gov.uk/learn-to-drive-a-car http://www.dev.gov.uk/learn-to-drive-a-car https://www.gov.uk/api/content/learn-to-drive-a-car https://www.gov.uk/api/search.json?filter_link=/learn-to-drive-a-car https://webarchive.nationalarchives.gov.uk/*/https://www.gov.uk/learn-to-drive-a-car etc etc

  71. GDS

  72. GDS

  73. Want more?

  74. GDS

  75. GDS Want to code in the open too? We're hiring!

    https://jobs.jobvite.com/gds
  76. GDS Slides & links at www.tijmen.cc/lrug Thank you @tijmenbr