         {:ok, list} -> Enum.map(list, fn result -> {:ok, result} end)
         {:error, _} = err -> Enum.map(ccs, fn _ -> err end)
       end
+    end
+  end
+
+  defp do_run(%UpdateColumn{} = cc, w) do
+    data = Map.merge(cc.properties, Map.take(cc, [:fieldName]))
+    with {:ok, json} <- Poison.encode(data) do
+      Http.put("/views/#{cc.fourfour}/columns/#{cc.fieldName}", w, json)
     end
   end
 

    properties: %{} # description, fieldName
  end

  defmodule CreateColumns do
    defstruct columns: []
  end

    %{ w | operations: [operation | w.operations] }
  end

  def update_column(%Write{} = w, fourfour, field_name, properties) do
    operation = %UpdateColumn{fourfour: fourfour, fieldName: field_name, properties: properties}
    %{ w | operations: [operation | w.operations] }
  end

  def drop_column(%Write{} = w, fourfour, field_name, properties) do
    operation = %DropColumn{field_name: field_name, fourfour: fourfour, properties: properties}
    %{ w | operations: [operation | w.operations] }
