Skip to content

Instantly share code, notes, and snippets.

View adam-e-trepanier's full-sized avatar

Adam Trepanier adam-e-trepanier

View GitHub Profile
original post @ https://www.linkedin.com/feed/update/urn:li:activity:6881954451964461056?commentUrn=urn%3Ali%3Acomment%3A%28activity%3A6881954451964461056%2C6882013851898933249%29&replyUrn=urn%3Ali%3Acomment%3A%28activity%3A6881954451964461056%2C6882320295986917376%29
I think there is a lot to unpack here, and it is probably a very long blog post with very descriptive meaning to terms
around system/software design. For more in-depth information, see CQRS Documents by Gregg Young. Also, look
at Event Modeling from Adam Dymitruk. Both are exceptional.
However, I will try to be concise. CQRS means separating your writes from your reads. In other words, when some
actor (user, external system, what have you) issues a command (write side) to the system, it is only changing its state.
The system's internal state is critical here, and the system shouldn't leak the internal structure out (encapsulation and
information hiding). The Command side does not mean the system doesn't return a typical representation of t
Public Sub DeleteRowTest()
Dim i As Long
Dim LastRow As Long
Dim Cols As Variant
Dim LookFor As String
Dim rng As Range
With Application
.ScreenUpdating = False
-module(math_functions).
-export([test/0, even/1, odd/1, filter/2, split/1, split2/1]).
test() ->
true = even(10),
false = even(11),
true = odd(11),
false = odd(10),
tests_passed.
@adam-e-trepanier
adam-e-trepanier / feature-scenario
Created September 27, 2013 03:44
rspec feature
require 'spec_helper'
feature "Credential idempotency" do
# He shouldn't be describing it anyway, but you
# could write the nice little stuff here
scenario "Editing authorization information of a credential increments the version" do
prev_version = obj.credential_version
obj.modify_encrypted_data # A real Domain model or moved to a page object
@adam-e-trepanier
adam-e-trepanier / spec_helper.rb
Created December 15, 2011 20:30
json helper in spec_helper
def set_json_headers
request.env['HTTP_ACCEPT'] = 'application/json, text/javascript, *'
request.env['CONTENT_TYPE'] = 'application/json'
end
# controller code for /foo/1
before_filter do |controller|
controller.some_verification(params[:id])
end
# controller code for /foo/1/bar/1
before_filter do |controller|
controller.some_verification(params[:foo_id])
@adam-e-trepanier
adam-e-trepanier / singleton_class.rb
Created July 15, 2011 03:18
Singleton (eigen) class
module Kernel
# Returns the object's singleton class.
def singleton_class
class << self
self
end
end unless respond_to?(:singleton_class) # exists in 1.9.2
# class_eval on an object acts like singleton_class.class_eval.
def class_eval(*args, &block)
@adam-e-trepanier
adam-e-trepanier / spec_helper.rb
Created July 14, 2011 19:00
Spork reload factories
Spork.each_run do
# This code will be run each time you run your specs.
AppName::Application.reload_routes!
Factory.factories.clear
Dir.glob("#{::Rails.root}/spec/factories/*.rb").each { |file| load "#{file}" }
end
@adam-e-trepanier
adam-e-trepanier / gist:1075840
Created July 11, 2011 13:30
JSON strings (for now)
{\"beverage\":
{
\"approved\":null,
\"created_at\":\"2011-07-11T13:24:08Z\",
\"description\":\"The king of beers\",
\"id\":1,
\"name\":\"Bud Light\",
\"producer\":\"Anheuser-Busch\",
\"updated_at\":\"2011-07-11T13:24:08Z\"
}
@adam-e-trepanier
adam-e-trepanier / gist:1070149
Created July 7, 2011 18:16
add warden failure app
We couldn’t find that file to show.