The Curious Engineer

All blogs / Software / engineering practice

Bertrand Meyer's technology+ blog

bertrandmeyer.com

Software engineering, programming methodology, languages, verification, general technology, publication culture, and more

Software / engineering practiceOther languagesTesting / QA

Posts
359 from 31 Jul 2009 to 21 Jul 2026
Posting
monthly (10 in the last year)
Kind
personal blog
Feed
http://feeds.feedburner.com/BertrandMeyer

2026 7

  1. Questions and answers on AI and verification: a follow-up to my May ACM Tech Talk
  2. Q&A after ACM Webinar on Software Verification in the Age of Artificial Intelligence
  3. Newsletter archive available
  4. Celebrating Tony Hoare’s mark on computer science
  5. Yes, AI is intelligent. Prove me wrong.
  6. Assemblée annuelle de la SDIS
  7. CloudFlare outage: the lesson that will not be drawn

2025 16

  1. Criteria and recipes for good technical definitions
  2. A revolutionary approach to university teaching
  3. Thanks for your help but I write my own texts
  4. Exponentially bad phrasing
  5. More sizzle than steak? Using an LLM to produce verified bug fixes (new preprint)
  6. A paean to programming
  7. New article: obituary of Niklaus Wirth
  8. New preprint: Lessons from Formally Deployed Software Systems
  9. New preprint: Seamless and Traceable Requirements
  10. New preprint: Loop unrolling — formal definition and application to testing
  11. New preprint: a standard framework for research on bugs and automatic program repair
  12. New paper: seeding contradiction
  13. New preprint: Programming Really Is Simple Mathematics
  14. This is much worse than Munich
  15. New preprint: Software engineering as a domain to formalize
  16. “I don’t have time for administration”

2024 13

  1. The path wrongly taken
  2. Europe asleep (a key-not)
  3. The power and terror of imagination
  4. Freely accessible books
  5. And what if everything went well?
  6. The French School of Programming
  7. Descente aux enfers
  8. Upside down
  9. Horribly transparent
  10. Mathematics is not a game of hit and miss
  11. A new scientific index
  12. A remarkable group photo
  13. Niklaus Wirth and the Importance of Being Simple

2023 12

  1. AI will move mountains
  2. A writing exercise
  3. The “NATO expansion” canard
  4. New article: scenarios versus OO requirements
  5. Statement Considered Harmful
  6. Toute la rage du Monde
  7. “Object Success” now available
  8. The mathematics of the seven messengers
  9. The Seven Messengers
  10. Macron and Borne: profiles in courage
  11. Le courage de Macron
  12. The legacy of Barry Boehm

2022 11

  1. Logical beats sequential
  2. New paper: optimization of test cases generated from failed proofs
  3. New book: the Requirements Handbook
  4. Winter will be warm
  5. Introduction to the Theory of Programming Languages: full book now freely available
  6. Introduction to axiomatic semantics
  7. Hilbert spaces
  8. OOSC-2 available online (officially)
  9. Why stop at pronouns?
  10. A problem child?
  11. One way to become a top scientist…

2021 12

  1. Mr. and Mrs. Bei Uns
  2. PhD and postdoc positions in verification in Switzerland
  3. Panel on methodology and agility, this Monday (20 September)
  4. A standard plan for modern requirements
  5. Publication announcement: survey on requirements techniques, formal and non-formal
  6. On beauty and software (online talk on Wednesday, 17 CET / 11 EDT / 8 PDT)
  7. Tomorrow (Thursday) noon EDT: ACM talk on requirements
  8. Some contributions
  9. Le français dans le monde
  10. Time to resurrect PSP?
  11. Between you and me
  12. The extremely bizarre idea of an inauguration

2020 27

  1. The right forms of expression
  2. Questionnaire on deployed, formally verified systems
  3. New video lecture: distances, invariants and recursion
  4. Fan mail
  5. Why we love computers and software
  6. L’appel du 19 juin
  7. Things to do to an algorithm
  8. A novel concept for success in science
  9. New master program at SIT: Webinar tomorrow
  10. PhD and postdoc positions in verification in Switzerland
  11. Which one is better? Please answer this poll
  12. The fool wants nothing
  13. A retort that we could use
  14. How to protect from the coronavirus
  15. Free tutoring for children
  16. Getting a program right, in nine episodes
  17. A little Schubertiade to brighten the gloom
  18. Notations you didn’t even know you could use
  19. Serious newspapers: now is the moment to unlock Coronavirus material, or incur eternal shame
  20. Time to live up to the boasting
  21. In the scary land of irrational discourse
  22. Getting your priorities right
  23. Call for suggestions: beauty
  24. An annoying practice from another age
  25. LASER 2020 in Elba Island: DevOps, Microservices and more, first week of June
  26. Two talks by Gilles Brassard in Zurich and Schaffhausen, this Wednesday
  27. Talk on requirements at UC Santa Barbara tomorrow

2019 19

  1. This Wednesday in Nice: survey talk on the Eiffel method
  2. Defining and classifying requirements (new publication)
  3. What happened to the kilogram? Schaffhausen, 16 December
  4. Are my requirements complete?
  5. Adult entertainment
  6. June LASER school, Elba, on Devops, Microservices…
  7. Those were the days
  8. Entrez sans frapper
  9. Formality in requirements: new publication
  10. Publications on CS/SE/informatics education
  11. A theorem of software engineering
  12. Software Engineering Education: FISEE coming up
  13. Software engineering education: Villebrumier LASER center, November
  14. Sunrise was foggy today
  15. Schedule and last deadline for LASER AI + ML + SE, Elba, June
  16. Soundness and completeness: with precision
  17. Gail Murphy to speak at Devops 19
  18. AI+ML+SE — Reminder about LASER school, coming up in June
  19. Sense and sensibility of systematically soliciting speaker slides

2018 21

  1. La folie française
  2. The Formal Picnic approach to requirements
  3. Ten traits of exceptional innovators
  4. I didn’t make it up…
  5. Just call me “Your Highness”
  6. Empirical answers: keynote and deadline
  7. More French Poetry on Amazon
  8. Why not program right?
  9. New speaker and final announcement for LASER 2018 on blockchains (Elba, June)
  10. Creative writing
  11. New paper: making sense of agile methods
  12. Mainstream enough for me
  13. Blue hair and tenure track
  14. Un po’ tondo
  15. Towards empirical answers to important software engineering questions
  16. Festina retro
  17. The end of software engineering and the last methodologist
  18. Emerald wishes
  19. In pursuit and in flight
  20. Before I start screaming once again…
  21. Blockchains, bitcoin and distributed trust: LASER school lineup complete

2017 12

  1. Small and big pleasures
  2. Devops (the concept, and a workshop announcement)
  3. Split the Root: a little design pattern
  4. New session of online Agile course starts now
  5. Concurrency/verification positions at Politecnico di Milano
  6. LASER summer school on software for robotics: last call for registration
  7. Feature interactions, continued
  8. The perils of feature interaction
  9. Об опыте иностранца, говорящего по-русски
  10. The coming European renaissance
  11. The mythical Brooks law
  12. Software for robotics: LASER summer school, Elba Island, 9-17 September

2016 7

  1. The longest flight
  2. From our “Problems you would like to have” department
  3. Ubu Roi
  4. AutoProof workshop: Verification As a Matter of Course
  5. Agile MOOC starts this week
  6. Robotics and concurrency
  7. Software for Robotics: 2016 LASER summer school, 10-18 September, Elba

2015 11

  1. Danke sehr!
  2. Design by Contract: ACM Webinar this Thursday
  3. In English this time: a Marseillaise for our age
  4. A Marseillaise for our age
  5. How to learn languages
  6. New paper: Theory of Programs
  7. Agile methods: follow-up webinar and discussion
  8. Understanding and assessing Agile: free ACM webinar next Wednesday
  9. Awareness and merge conflicts in distributed development (new paper)
  10. Framing the frame problem (new paper)
  11. Detecting deadlock automatically? (New paper)

2014 28

  1. Infinite loop in Microsoft Word
  2. Lampsort
  3. New MOOC opens Tuesday
  4. Analysis of agile methods: book signing in Paris this Friday at 5 PM
  5. A gold medal
  6. Harlan Mills award 2015: nominations sought
  7. Record enrollment
  8. Non-morganatic specifications
  9. Computing: the Art, the Magic, the Science
  10. When pictures lie
  11. The Eiffel Documentation Drive
  12. Programming language features
  13. Reading Notes: Single-Entry, Single-Exit
  14. Accurately Analyzing Agility
  15. Attached by default?
  16. Code matters
  17. Crossing the Is and doting on the Ts
  18. Would they?
  19. Lamport, Turing
  20. New article: contracts in practice
  21. New article: passive processors
  22. Agile book announced
  23. Learning to program, online
  24. Eiffel as an expression language
  25. LASER 2014 (Elba, September)
  26. PhD positions in concurrency/distribution/verification at ETH
  27. Negative variables: new version
  28. Saint Petersburg Software Engineering Seminar: 14 January 2014 (6 PM)

2013 46

  1. Niklaus Wirth birthday symposium, 20 February, Zurich
  2. New paper: alias calculus and frame inference
  3. The biggest software-induced disaster ever
  4. Informatics education in Europe: Just the facts
  5. Hungarian rotation
  6. The secret of success
  7. Reuse of another kind
  8. The laws of branching (part 2): Tichy and Joy
  9. Another displaced business
  10. The laws of branching (part 1)
  11. Swiss railway prowess
  12. Empirical answers to fundamental software engineering questions
  13. Concurrency video
  14. Smaller, better textbook
  15. Barenboim = Rubinstein?
  16. The invariants of key algorithms (new paper)
  17. Informatics: catch them early
  18. Reading notes: strong specifications are well worth the effort
  19. New course partners sought: a DOSE of software engineering education
  20. Reading notes: misclassified bugs
  21. Reading notes: the design of bug fixes
  22. New series: Reading Notes
  23. Adult entertainment
  24. Apocalypse no! (Part 2)
  25. Specify less to prove more
  26. Presentations at ICSE and VSTTE
  27. What is wrong with CMMI
  28. Ershov lecture
  29. Bringing C code to the modern world
  30. The origin of “software engineering”
  31. LASER summer school: Software for the Cloud and Big Data
  32. The ABC of software engineering
  33. Apocalypse no! (part 1)
  34. Public lecture at ITMO
  35. Doing it right or doing it over?
  36. The waves of publication
  37. Conferences: Publication, Communication, Sanction
  38. Master, please explain: “gun control”
  39. Master, please explain: your opinion of Facebook
  40. Master, please explain: “impotence”
  41. Master, please explain: “arrogance”
  42. Master, please explain: “recursively”
  43. Your IP: does Google care?
  44. How good are strong specifications? (New paper, ICSE 2013)
  45. Interesting functionalities
  46. Multirequirements (new paper)

2012 39

  1. ESEC/FSE 2013: 18-26 August, Saint Petersburg, Russia
  2. A Pretty Good Motto
  3. Negative variables and the essence of object-oriented programming (new paper)
  4. The education minister who wants fewer students
  5. Who gets what
  6. Hitting on America
  7. Loop invariants: the musical
  8. Publication list
  9. Why so many features?
  10. Computer scientist gallery, updated
  11. Memories of a dark time
  12. Technology plus
  13. Habit, happiness, and programming languages
  14. Handshake with a clown
  15. Word of the day
  16. A fundamental duality of software engineering
  17. Precedent
  18. Quiz (2): hint
  19. Quiz (1): What is this function?
  20. Salad requirements, requirements salad
  21. The manhood test
  22. EIS: Putting into Practice the Single Model Principle
  23. SP software engineering seminar (web-streamed): talks by H. Gall and L. Baresi, Thursday, 5 July
  24. Positions open at ETH in concurrency and verification
  25. The most beautiful monument of Europe
  26. Talks in coming months
  27. Domain Theory: precedents
  28. Domain Theory: the forgotten step in program verification
  29. Aliasing and framing: Saint Petersburg seminar next week
  30. Seminar sessions in Saint Petersburg: CafeOBJ and the frame issue
  31. A carefully designed Result
  32. New LASER proceedings
  33. ERC Advanced Investigator Grant: Concurrency Made Easy
  34. R&D positions in software engineering
  35. TOOLS 2012, “The Triumph of Objects”, Prague in May: Call for Workshops
  36. Never design a language
  37. Concurrency seminars
  38. Webinar today: the Varieties of Loop Invariants
  39. Various interviews

2011 30

  1. Webinars Dec. 29: (1) Model-based contracts (2) Assessing agile methods
  2. Guest article: funding great research
  3. How to design software
  4. Ado About The Resource That Was (Not)
  5. The Modes and Uses of Scientific Publication
  6. Averaging
  7. John McCarthy
  8. The story of our field, in a few short words
  9. PhD position: concurrent programming (SCOOP) for robotics
  10. The charming naïveté of an IEEE standard
  11. Fun with Bayes
  12. Nastiness in computer science
  13. All Bugs Great and Small
  14. European Computer Science Summit 2011
  15. A safe and stable solution
  16. Scopus’s view of computer science research
  17. Specification explosion
  18. Towards a Calculus of Object Programs
  19. Testing insights
  20. If I’m not pure, at least my functions are
  21. Agile methods: the good, the bad and the ugly
  22. Concurrent programming is easy
  23. Incremental research again
  24. Assessing concurrency models
  25. The Professor Smith syndrome: Part 2
  26. The Professor Smith syndrome: Part 1 – a quiz
  27. Stendhal on abstraction
  28. In praise of Knuth and Liskov
  29. Publish no loop without its invariant
  30. From duplication to duplicity: a short history of the technology of knowledge transfer

2010 22

  1. About Watts Humphrey
  2. The Future Of Software Engineering
  3. Every bilingual dictionary should be a Galois connection
  4. Email and its perils
  5. The cloud and its risks
  6. Programming limerick of the month, October 2010
  7. Speech synthesis technology
  8. The rise of empirical software engineering (II): what we are still missing
  9. The rise of empirical software engineering (I): the good news
  10. Another DOSE of distributed software development
  11. Analyzing a software failure
  12. From programming to software engineering: ICSE keynote slides available
  13. PGT-PPP (Pretty Good Translation, Pretty Poor Privacy)
  14. The other impediment to software engineering research
  15. Barbie to the rescue
  16. Programming on the cloud?
  17. Verification As a Matter Of Course
  18. Reflexivity, and other pillars of civilization
  19. A couple of loop examples
  20. More expressive loops for Eiffel
  21. The theory and calculus of aliasing
  22. Just another day at the office

2009 26

  1. Touch of Class book page available
  2. Dwelling on the point
  3. The Case of the Handsome Couple: answer
  4. The Case of the Handsome Couple: hints
  5. The Case of the Handsome Couple
  6. Knuth & company
  7. The CPU Clock principle of software releases
  8. Do you know Java?
  9. SEAFOOD 2010
  10. The one sure way to advance software engineering
  11. Programming limerick of the month, September 2009
  12. Programming limerick of the month, August 2009
  13. Specifying user interfaces
  14. The great programming haiku competition
  15. Rejection letter classic
  16. Talking about testing…
  17. What is the purpose of testing?
  18. “Touch of Class” published
  19. One cheer for incremental research
  20. The good and the ugly
  21. Methods need theory
  22. Void safety: Getting rid of the spectre of null-pointer dereferencing
  23. Contracts written by people, contracts written by machines
  24. Long AND clear?
  25. Computer technology: making mozzies out of betties
  26. The understated breakthrough