Notes to Self

Alex Sokolsky's Notes on Computers and Programming

Design Best Practices

Other best practices

Design Patterns

Learn these, study these, love these.

Mind Your Complexity

Programming complexity can be reduced if you follow these rules of thumbs:


foo --calls--> bar --calls--> baz


foo --calls--> bar
foo --calls--> baz

Payload Format

Comparison of data serialization formats.

On the wire use any one of:

Do not use XML.

Configuration Storage

The way we store configuration is subject to fashion and is heavily influenced by the operating environment and/or cloud provider. Here are some reasonable candidates:

JSON is barely suitable - use YAML instead.

Secrets - Storage and Passing

Secrets should not be hitting the disk or passed on the command line. You CAN pass secrets via environment variables. Better yet stdin or a cloud provider’s API.

Store these in the cloud. Candidates: