41554 blogs · [ { "id": "01a0877e-8428-700b-931e-7d525d525c79", "title": "Are We Making Progress On Climate Action?", "url": "https://www.grahamlea.com/2025/08/climate-change-action-are-we-making-progress/", "published_at": "2025-08-03T13:38:31+00:00" }, { "id": "01a0877e-8429-7373-a4d4-097b6dc51f5f", "title": "Climate Action: Accelerate. Safely. But, Accelerate.", "url": "https://www.grahamlea.com/2024/11/climate-action-accelerate-safely/", "published_at": "2024-11-29T13:26:35+00:00" }, { "id": "01a0877e-8429-7373-a4d4-097b6eb1d1d7", "title": "Microservices: The Benefits and Costs", "url": "https://www.grahamlea.com/2023/02/microservices-benefits-and-costs/", "published_at": "2023-02-09T07:25:31+00:00" }, { "id": "01a0877e-8429-7373-a4d4-097b6ee88d2a", "title": "Using Microservices to Make Costly Deployments Less Frequent", "url": "https://www.grahamlea.com/2019/07/costly-deployments-microservices-less-frequent/", "published_at": "2019-07-11T03:38:11+00:00" }, { "id": "01a0877e-8429-7373-a4d4-097b6fb71f95", "title": "Using Microservices to Solve Developers Stepping on Each Other’s Toes", "url": "https://www.grahamlea.com/2019/07/microservices-reduce-merge-conflicts/", "published_at": "2019-07-03T04:33:02+00:00" }, { "id": "01a0877e-8429-7373-a4d4-097b7099e8d1", "title": "Using Microservices to Solve Slow Build Times", "url": "https://www.grahamlea.com/2019/06/slow-build-times-microservices/", "published_at": "2019-06-29T12:20:47+00:00" }, { "id": "01a0877e-8429-7373-a4d4-097b711ea2fe", "title": "How to Choose Your First Microservices", "url": "https://www.grahamlea.com/2019/06/first-microservices-how-to-choose/", "published_at": "2019-06-27T01:29:50+00:00" }, { "id": "01a0877e-8429-7373-a4d4-097b7218084c", "title": "Feature Flags and Test-Driven Design: Some Practical Tips", "url": "https://www.grahamlea.com/2019/05/feature-flags-tdd-practical-tips/", "published_at": "2019-05-31T12:40:20+00:00" }, { "id": "01a0877e-8429-7373-a4d4-097b72796d3c", "title": "Time to Evolve Again", "url": "https://www.grahamlea.com/2019/04/time-to-evolve-again/", "published_at": "2019-04-05T07:29:14+00:00" }, { "id": "01a0877e-8429-7373-a4d4-097b732a1e9c", "title": "“This work kinda sucks right now”: Staying motivated in the uninspiring phases of long projects", "url": "https://www.grahamlea.com/2018/09/staying-motivated-long-projects/", "published_at": "2018-09-30T10:43:27+00:00" }, { "id": "01a0c50f-ec23-701d-86a2-5424d3419a49", "title": "9 fascinating things I learned while coding up the rules of a board game", "url": "https://www.grahamlea.com/2018/08/fascinating-things-coding-board-game/", "published_at": "2018-08-15T04:14:17+00:00" }, { "id": "01a0c50f-ec23-701d-86a2-5424d43295ef", "title": "The Amazing Benefits of Exercism", "url": "https://www.grahamlea.com/2018/04/exercism-io-kotlin/", "published_at": "2018-04-28T12:30:31+00:00" }, { "id": "01a0c50f-ec23-701d-86a2-5424d53242bd", "title": "Memories from 10 years at a startup", "url": "https://www.grahamlea.com/2017/04/memories-from-10-years-at-a-startup/", "published_at": "2017-04-23T11:54:43+00:00" }, { "id": "01a0c50f-ec23-701d-86a2-5424d56c3abd", "title": "Marty Cagan on Product Strategy (Summarised)", "url": "https://www.grahamlea.com/2016/10/product-strategy-marty-cagan/", "published_at": "2016-10-26T22:36:30+00:00" }, { "id": "01a0c50f-ec23-701d-86a2-5424d58849f6", "title": "Distributed Transactions: The Icebergs of Microservices", "url": "https://www.grahamlea.com/2016/08/distributed-transactions-microservices-icebergs/", "published_at": "2016-08-30T08:49:04+00:00" }, { "id": "01a0c50f-ec23-701d-86a2-5424d5b51ef7", "title": "Why Your Resume Sucks & How to Fix It", "url": "https://www.grahamlea.com/2016/05/your-resume-sucks-fix-it/", "published_at": "2016-05-18T21:58:49+00:00" }, { "id": "01a0c50f-ec23-701d-86a2-5424d5bd2bd8", "title": "Subtle Is the Lord: The Science and the Life of Albert Einstein (Book Review)", "url": "https://www.grahamlea.com/2016/05/book-review-subtle-lord-science-life-albert-einstein/", "published_at": "2016-05-12T00:37:37+00:00" }, { "id": "01a0c50f-ec23-701d-86a2-5424d67abd1c", "title": "Why “Don’t Use Shared Libraries in Microservices” is Bad Advice", "url": "https://www.grahamlea.com/2016/04/shared-libraries-in-microservices-bad-advice/", "published_at": "2016-04-04T22:32:35+00:00" }, { "id": "01a0c50f-ec23-701d-86a2-5424d6b6662b", "title": "My Key Takeaways from APIdays Australia 2016", "url": "https://www.grahamlea.com/2016/03/api-days-australia-2016/", "published_at": "2016-03-11T10:45:52+00:00" }, { "id": "01a0c50f-ec23-701d-86a2-5424d70fc572", "title": "Are You Being Too Agile?", "url": "https://www.grahamlea.com/2016/01/being-too-agile-pragmatist-futurist/", "published_at": "2016-01-15T06:27:19+00:00" }, { "id": "01a0c51e-0869-71cb-a544-2878423b9bbe", "title": "Tribal Leadership by Dave Logan et al. (Book Review)", "url": "https://www.grahamlea.com/2015/10/tribal-leadership-logan-book-review/", "published_at": "2015-10-21T07:38:41+00:00" }, { "id": "01a0c51e-086a-7105-b0a7-5bd8c5fd4934", "title": "Top 10 Reasons Java Programs Envy Scala (Presentation)", "url": "https://www.grahamlea.com/2015/09/java-vs-scala-top-10-reasons-envy/", "published_at": "2015-09-20T10:53:58+00:00" }, { "id": "01a0c51e-086a-7105-b0a7-5bd8c6ef088b", "title": "Book Recommendations from Sydney Technology Leaders", "url": "https://www.grahamlea.com/2015/09/technology-leaders-book-recommendations/", "published_at": "2015-09-18T23:11:36+00:00" }, { "id": "01a0c51e-086a-7105-b0a7-5bd8c7ec70c0", "title": "Design Kata: Learn software architecture while having fun", "url": "https://www.grahamlea.com/2015/08/design-kata-learn-software-architecture/", "published_at": "2015-08-26T22:39:41+00:00" }, { "id": "01a0c51e-086a-7105-b0a7-5bd8c7fcfceb", "title": "Microservices Security: All The Questions You Should Be Asking", "url": "https://www.grahamlea.com/2015/07/microservices-security-questions/", "published_at": "2015-07-29T10:56:45+00:00" }, { "id": "01a0c51e-086a-7105-b0a7-5bd8c843a7fa", "title": "Alan Turing: The Enigma by Andrew Hodges (Book Review)", "url": "https://www.grahamlea.com/2015/07/alan-turing-enigma-book-review/", "published_at": "2015-07-24T10:17:48+00:00" }, { "id": "01a0c51e-086a-7105-b0a7-5bd8c89b23f7", "title": "Notes from YOW! 2014: Simon Brown on ‘Agility and the Essence of Software Architecture’", "url": "https://www.grahamlea.com/2015/07/agility-software-architecture-simon-brown-yow-2014/", "published_at": "2015-07-16T00:42:35+00:00" }, { "id": "01a0c51e-086a-7105-b0a7-5bd8c92e3677", "title": "Notes from YOW! 2014: From Monoliths to Microservices at REA", "url": "https://www.grahamlea.com/2015/05/microservices-at-rea-yow-2014/", "published_at": "2015-05-31T06:16:45+00:00" }, { "id": "01a0c51e-086a-7105-b0a7-5bd8c93612f2", "title": "How to Avoid Making Huge Mistakes with Life’s Big Decisions", "url": "https://www.grahamlea.com/2015/05/big-decisions-avoiding-huge-mistakes/", "published_at": "2015-05-17T23:19:13+00:00" }, { "id": "01a0c51e-086a-7105-b0a7-5bd8c957ba78", "title": "Notes from YOW! 2014: Troy Hunt on Security: ‘Hack Yourself First’", "url": "https://www.grahamlea.com/2015/05/hack-yourself-first-troy-hunt-security/", "published_at": "2015-05-09T07:03:57+00:00" }, { "id": "01a0c529-24f3-734d-83b8-a76e3c00202b", "title": "Notes from YOW! 2014: Ed Kmett on ’Stop Treading Water: Learning to Learn’", "url": "https://www.grahamlea.com/2015/05/ed-kmett-stop-treading-water-learning-to-learn-yow-2014/", "published_at": "2015-05-07T08:05:56+00:00" }, { "id": "01a0c529-24f3-734d-83b8-a76e3c6b3bc0", "title": "(My notes from) Ken Scambler on ‘Two Years of Real-World FP at REA’", "url": "https://www.grahamlea.com/2015/04/functional-scala-rea-ken-scambler/", "published_at": "2015-04-16T11:05:57+00:00" }, { "id": "01a0c529-24f3-734d-83b8-a76e3cfc5f59", "title": "What would a Microservices PaaS Design Look Like?", "url": "https://www.grahamlea.com/2015/04/what-would-a-microservices-paas-design-look-like/", "published_at": "2015-04-02T10:54:34+00:00" }, { "id": "01a0c529-24f3-734d-83b8-a76e3da08f8f", "title": "Is a Microservices PaaS In Our Future?", "url": "https://www.grahamlea.com/2015/03/is-a-microservices-paas-in-our-future/", "published_at": "2015-03-27T00:39:08+00:00" }, { "id": "01a0c529-24f3-734d-83b8-a76e3dd53587", "title": "Microservices at Tyro: An Evolutionary Tale (Presentation)", "url": "https://www.grahamlea.com/2015/03/microservices-tyro-evolution-presentation/", "published_at": "2015-03-20T03:23:51+00:00" }, { "id": "01a0c529-24f3-734d-83b8-a76e3df0e60c", "title": "Notes from YOW! 2014: Scott Shaw on ‘Avoiding Speedbumps on the Road to Microservices’", "url": "https://www.grahamlea.com/2015/03/notes-from-yow-2014-scott-shaw-on-avoiding-speedbumps-on-the-road-to-microservices/", "published_at": "2015-03-01T21:23:31+00:00" }, { "id": "01a0c529-24f3-734d-83b8-a76e3e21f5db", "title": "Notes from YOW! 2014: Cameron Barrie on ‘Mobile at Warp Speed’", "url": "https://www.grahamlea.com/2015/02/mobile-warp-speed-cameron-barrie/", "published_at": "2015-02-09T08:06:36+00:00" }, { "id": "01a0c529-24f3-734d-83b8-a76e3eb14d77", "title": "Notes from YOW! 2014: Mary Poppendieck on ‘The (Agile) Scaling Dilemma’", "url": "https://www.grahamlea.com/2015/02/agile-scaling-dilemma-mary-poppendieck/", "published_at": "2015-02-06T10:42:42+00:00" }, { "id": "01a0c529-24f3-734d-83b8-a76e3f9f6bc3", "title": "Significant Birthdays for STEM Nerds", "url": "https://www.grahamlea.com/2015/01/significant-birthdays-stem-nerds/", "published_at": "2015-01-30T23:40:07+00:00" }, { "id": "01a0c529-24f3-734d-83b8-a76e409bf606", "title": "Two REST tips for tackling tricky resource examples", "url": "https://www.grahamlea.com/2015/01/two-rest-tips-tackling-tricky-resource-examples/", "published_at": "2015-01-25T03:17:01+00:00" }, { "id": "01a0c534-4c31-73eb-94df-2a12e1730970", "title": "Do you even know the first thing about REST?", "url": "https://www.grahamlea.com/2015/01/rest-do-you-even-know-the-first-thing/", "published_at": "2015-01-23T10:50:09+00:00" }, { "id": "01a0c534-4c31-73eb-94df-2a12e26014b1", "title": "Notes from YOW! 2014: Gojko Adzic on ‘Make Impacts, Not Software’", "url": "https://www.grahamlea.com/2015/01/impact-mapping-gojko-adzic-yow-2014-notes/", "published_at": "2015-01-21T10:41:27+00:00" }, { "id": "01a0c534-4c31-73eb-94df-2a12e2e5d797", "title": "Notes from YOW! 2014: Jeff Patton on ‘User Story Mapping: Discover the Whole Story’", "url": "https://www.grahamlea.com/2014/12/story-mapping-jeff-patton-yow-2014/", "published_at": "2014-12-29T10:47:35+00:00" }, { "id": "01a0c534-4c31-73eb-94df-2a12e2f4ea8f", "title": "Notes from YOW! 2014: Jez Humble on ‘The Lean Enterprise’", "url": "https://www.grahamlea.com/2014/12/notes-yow-2014-jez-humble-lean-enterprise/", "published_at": "2014-12-23T09:56:56+00:00" }, { "id": "01a0c534-4c31-73eb-94df-2a12e3a9c88e", "title": "The Top UX Trends of 2014 (Condensed)", "url": "https://www.grahamlea.com/2014/12/the-top-ux-trends-of-2014-condensed/", "published_at": "2014-12-22T07:41:40+00:00" }, { "id": "01a0c534-4c31-73eb-94df-2a12e3db51ed", "title": "Notes from YOW! 2014: Martin Thompson and Todd L. Montgomery on ‘How Did We End Up Here?’", "url": "https://www.grahamlea.com/2014/12/yow-2014-keynote-how-did-we-end-up-here/", "published_at": "2014-12-18T10:57:53+00:00" }, { "id": "01a0c534-4c31-73eb-94df-2a12e3ebadcb", "title": "Notes from Microservices Talk by Zhamak Dehghani", "url": "https://www.grahamlea.com/2014/10/review-microservices-talk-zhamak-dehghani/", "published_at": "2014-10-10T12:24:48+00:00" }, { "id": "01a0c534-4c31-73eb-94df-2a12e461b134", "title": "Does Java 8’s lambda capability make Scala obsolete?", "url": "https://www.grahamlea.com/2014/08/java-8-lambdas-scala-obsolete/", "published_at": "2014-08-05T11:45:28+00:00" }, { "id": "01a0c534-4c31-73eb-94df-2a12e4a13559", "title": "From the Archive: Why Your Company Should Let You Use Scala at Work", "url": "https://www.grahamlea.com/2014/08/scala-why-use-it-at-work/", "published_at": "2014-08-04T11:47:20+00:00" }, { "id": "01a0c534-4c31-73eb-94df-2a12e4e31daf", "title": "9 Design Patterns Translated Into Java 8’s Lambdas", "url": "https://www.grahamlea.com/2014/07/lambda-design-patterns-java-8/", "published_at": "2014-07-29T11:44:20+00:00" }, { "id": "01a0c53e-9520-72f8-a93d-bcd3b4c75e94", "title": "RxJava Threading Examples", "url": "https://www.grahamlea.com/2014/07/rxjava-threading-examples/", "published_at": "2014-07-03T10:12:10+00:00" }, { "id": "01a0c53e-9521-70d7-b74b-3da6325b773b", "title": "Notes from YOW! 2013: Michael T. Nygard on ‘Five Years of DevOps: Where are we Now?’", "url": "https://www.grahamlea.com/2014/06/five-years-devops-michael-t-nygard/", "published_at": "2014-06-01T12:13:39+00:00" }, { "id": "01a0c53e-9521-70d7-b74b-3da6329f94bf", "title": "Quick Response to “Test-induced Design Damage”", "url": "https://www.grahamlea.com/2014/05/quick-response-test-induced-design-damage/", "published_at": "2014-05-01T12:47:47+00:00" }, { "id": "01a0c53e-9521-70d7-b74b-3da6337b55f0", "title": "Notes from YOW! 2013: Hadi Hariri on ‘Refactoring Legacy Codebases’", "url": "https://www.grahamlea.com/2014/01/refactoring-legacy-codebases-hadi-hariri-yow-2013/", "published_at": "2014-01-18T10:39:19+00:00" }, { "id": "01a0c53e-9521-70d7-b74b-3da634203d10", "title": "Why You’ve Never Heard About Steve Jobs’ Skateboarding Prowess", "url": "https://www.grahamlea.com/2014/01/steve-jobs-skateboarding-prowess-focus/", "published_at": "2014-01-04T00:09:46+00:00" }, { "id": "01a0c53e-9521-70d7-b74b-3da6342842cb", "title": "Notes from YOW! 2013: Jeff Paton on ‘Safety Not Guaranteed: How Successful (Agile) Teams Ignore the Rules to Create Successful Products’", "url": "https://www.grahamlea.com/2013/12/successful-agile-teams-ignore-rules-jeff-paton-yow-2013/", "published_at": "2013-12-21T11:14:06+00:00" }, { "id": "01a0c53e-9521-70d7-b74b-3da634abea62", "title": "Notes from YOW! 2013: Jeff Hawkins on ‘Computing Like the Brain: The Path to Machine Intelligence’", "url": "https://www.grahamlea.com/2013/12/computing-like-brain-machine-intelligence-jeff-hawkins-yow-2013/", "published_at": "2013-12-16T11:23:40+00:00" }, { "id": "01a0c53e-9521-70d7-b74b-3da6358297e7", "title": "Does Scala == Effective Java?", "url": "https://www.grahamlea.com/2013/12/does-scala-equal-effective-java/", "published_at": "2013-12-04T00:35:53+00:00" }, { "id": "01a0c53e-9521-70d7-b74b-3da6361b52f1", "title": "Are Git and Mercurial Anti-Agile?", "url": "https://www.grahamlea.com/2013/11/git-mercurial-anti-agile-continuous-integration/", "published_at": "2013-11-08T01:45:46+00:00" }, { "id": "01a0c53e-9521-70d7-b74b-3da636bb25b6", "title": "Who is Investing in Australian Startups?", "url": "https://www.grahamlea.com/2013/09/who-is-investing-in-australian-startups/", "published_at": "2013-09-25T11:09:59+00:00" }, { "id": "01a0c547-13fd-7290-8ea2-7e46bf5ef5e1", "title": "“Why the Bloody Hell Did You Come Here?” (says Australia, to Asylum Seekers)", "url": "https://www.grahamlea.com/2013/09/australia-to-asylum-seekers-we-dont-want-you-dont-come-here/", "published_at": "2013-09-05T23:52:15+00:00" }, { "id": "01a0c547-13fd-7290-8ea2-7e46c0097456", "title": "Murphy’s Law Should Appear In Every Line Of Your Code", "url": "https://www.grahamlea.com/2013/08/murphys-law-every-line-of-code/", "published_at": "2013-08-27T13:02:50+00:00" }, { "id": "01a0c547-13fd-7290-8ea2-7e46c030da2b", "title": "10 Reasons You Shouldn’t Have Senior Developers, Tech Leads or Architects", "url": "https://www.grahamlea.com/2013/07/10-reasons-you-shouldnt-have-senior-developers-tech-leads-or-architects/", "published_at": "2013-07-24T11:36:17+00:00" }, { "id": "01a0c547-13fd-7290-8ea2-7e46c0d68998", "title": "Why Smart Software Teams Don’t Need Senior Developers, Tech Leads or Architects", "url": "https://www.grahamlea.com/2013/07/why-smart-software-teams-dont-need-senior-developers-tech-leads-or-architects/", "published_at": "2013-07-11T12:07:06+00:00" }, { "id": "01a0c547-13fd-7290-8ea2-7e46c1b1d1e3", "title": "Meetup Digest: Sydney FinTech Startups (April 2013)", "url": "https://www.grahamlea.com/2013/04/sydney-fintech-startups-meetup-digest-april-2013/", "published_at": "2013-04-16T13:32:29+00:00" }, { "id": "01a0c547-13fd-7290-8ea2-7e46c1c9fe00", "title": "Survey Results: Are Developers More Productive In Scala?", "url": "https://www.grahamlea.com/2013/02/survey-results-are-developers-more-productive-in-scala/", "published_at": "2013-02-26T06:59:08+00:00" }, { "id": "01a0c547-13fd-7290-8ea2-7e46c281e0d7", "title": "Are You More Productive In Scala?", "url": "https://www.grahamlea.com/2013/02/are-you-more-productive-in-scala/", "published_at": "2013-02-12T11:27:24+00:00" }, { "id": "01a0c547-13fd-7290-8ea2-7e46c2cca3c6", "title": "A New Java Library for Amazing Productivity", "url": "https://www.grahamlea.com/2013/02/a-new-java-library-for-amazing-productivity/", "published_at": "2013-02-11T11:02:06+00:00" }, { "id": "01a0c547-13fd-7290-8ea2-7e46c2ec917a", "title": "What is DevOps? … in bullet points, quotes and tweets", "url": "https://www.grahamlea.com/2013/02/what-is-devops-bullet-points-quotes-tweets/", "published_at": "2013-02-04T11:27:25+00:00" }, { "id": "01a0c547-13fd-7290-8ea2-7e46c2fee4e7", "title": "Is it really a DSL, or just an expressive interface?", "url": "https://www.grahamlea.com/2013/01/is-it-really-a-dsl-or-just-an-expressive-interface/", "published_at": "2013-01-04T00:45:21+00:00" }, { "id": "01a0c54f-d689-7187-aeac-aad4d869aa70", "title": "Graham’s Guide to Learning Scala", "url": "https://www.grahamlea.com/2012/11/learning-scala-grahams-guide/", "published_at": "2012-11-23T03:28:01+00:00" }, { "id": "01a0c54f-d689-7187-aeac-aad4d929fa97", "title": "ScalaSyd Wrap-Up: November 2012", "url": "https://www.grahamlea.com/2012/11/scalasyd-wrap-up-november-2012-episode-9/", "published_at": "2012-11-17T11:39:14+00:00" }, { "id": "01a0c54f-d689-7187-aeac-aad4da005dab", "title": "When the Production Queue Stopped", "url": "https://www.grahamlea.com/2012/11/when-the-production-queue-stopped/", "published_at": "2012-11-08T10:16:47+00:00" }, { "id": "01a0c54f-d689-7187-aeac-aad4daa35a5b", "title": "My Debugging Secrets Revealed", "url": "https://www.grahamlea.com/2012/11/my-debugging-secrets-revealed/", "published_at": "2012-11-07T02:09:58+00:00" }, { "id": "01a0c54f-d689-7187-aeac-aad4db743589", "title": "Meetup Digest: Migrate to DVCS Sydney (October 2012)", "url": "https://www.grahamlea.com/2012/10/migrate-to-dvcs-meetup-wrap-up/", "published_at": "2012-10-24T12:43:00+00:00" }, { "id": "01a0c54f-d689-7187-aeac-aad4dbbd2e96", "title": "A Blog About Me", "url": "https://www.grahamlea.com/2012/10/a-blog-about-me/", "published_at": "2012-10-20T12:24:48+00:00" } ] posts Claim your blog
Back to grahamlea.com
Blog · corpus.blog/blogs/grahamlea.com/posts

grahamlea.com

grahamlea.com

2025

2024

2023

2019

2018

2017

2016

2015

2014

2013

2012