POLA http://en.wikipedia.org/wiki/Principle_of_least_astonishment Examples ``` # user.rb class User < ActiveRecord::Base attr_accessible :name, :username validates :username, uniqueness: true end user1 = User.create(name: 'Name 1', username: 'username1') user2 = User.create(name: 'Name 2', username: 'username2') user1.username = 'username2' user1.save # => false user1.update_attribute(name: 'New Name') user1.reload user1.username # => 'username2' # update_attribute is expected to update the specified attribute, not other ones. Thus it is violating POLA ``` -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Core" group. To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-core+unsubscribe@googlegroups.com. To post to this group, send email to rubyonrails-core@googlegroups.com. Visit this group at http://groups.google.com/group/rubyonrails-core. For more options, visit https://groups.google.com/d/optout.