├── .gitignore ├── _config.yml ├── .gitattributes ├── javascripts └── scale.fix.js ├── index.html └── stylesheets ├── pygment_trac.css └── styles.css /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-minimal -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | -------------------------------------------------------------------------------- /javascripts/scale.fix.js: -------------------------------------------------------------------------------- 1 | var metas = document.getElementsByTagName('meta'); 2 | var i; 3 | if (navigator.userAgent.match(/iPhone/i)) { 4 | for (i=0; iAndrew S

Andrew S

I write Python,JavaScript and Go.
And I love C++.

Consulting and jobs

I'm available for a range of consulting jobs.

2 |

Things I can help you with:
Product management, startup planning and launching, monetization, UX and full stack development.

3 |

Use contacts below to reach out, and be sure to include the stack you're currently using.

Portfolio

Some repos I've pushedto my GitHub.
Need a fresh copy of my resume?Please use contacts below.

Contacts

Send me an email at astepin(at)pm.me.
Contact meon Twitter.

Subscribe tomy YouTube channel.

4 | -------------------------------------------------------------------------------- /stylesheets/pygment_trac.css: -------------------------------------------------------------------------------- 1 | .highlight { background: #ffffff; } 2 | .highlight .c { color: #999988; font-style: italic } /* Comment */ 3 | .highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ 4 | .highlight .k { font-weight: bold } /* Keyword */ 5 | .highlight .o { font-weight: bold } /* Operator */ 6 | .highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */ 7 | .highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */ 8 | .highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */ 9 | .highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */ 10 | .highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ 11 | .highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */ 12 | .highlight .ge { font-style: italic } /* Generic.Emph */ 13 | .highlight .gr { color: #aa0000 } /* Generic.Error */ 14 | .highlight .gh { color: #999999 } /* Generic.Heading */ 15 | .highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ 16 | .highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */ 17 | .highlight .go { color: #888888 } /* Generic.Output */ 18 | .highlight .gp { color: #555555 } /* Generic.Prompt */ 19 | .highlight .gs { font-weight: bold } /* Generic.Strong */ 20 | .highlight .gu { color: #800080; font-weight: bold; } /* Generic.Subheading */ 21 | .highlight .gt { color: #aa0000 } /* Generic.Traceback */ 22 | .highlight .kc { font-weight: bold } /* Keyword.Constant */ 23 | .highlight .kd { font-weight: bold } /* Keyword.Declaration */ 24 | .highlight .kn { font-weight: bold } /* Keyword.Namespace */ 25 | .highlight .kp { font-weight: bold } /* Keyword.Pseudo */ 26 | .highlight .kr { font-weight: bold } /* Keyword.Reserved */ 27 | .highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */ 28 | .highlight .m { color: #009999 } /* Literal.Number */ 29 | .highlight .s { color: #d14 } /* Literal.String */ 30 | .highlight .na { color: #008080 } /* Name.Attribute */ 31 | .highlight .nb { color: #0086B3 } /* Name.Builtin */ 32 | .highlight .nc { color: #445588; font-weight: bold } /* Name.Class */ 33 | .highlight .no { color: #008080 } /* Name.Constant */ 34 | .highlight .ni { color: #800080 } /* Name.Entity */ 35 | .highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */ 36 | .highlight .nf { color: #990000; font-weight: bold } /* Name.Function */ 37 | .highlight .nn { color: #555555 } /* Name.Namespace */ 38 | .highlight .nt { color: #000080 } /* Name.Tag */ 39 | .highlight .nv { color: #008080 } /* Name.Variable */ 40 | .highlight .ow { font-weight: bold } /* Operator.Word */ 41 | .highlight .w { color: #bbbbbb } /* Text.Whitespace */ 42 | .highlight .mf { color: #009999 } /* Literal.Number.Float */ 43 | .highlight .mh { color: #009999 } /* Literal.Number.Hex */ 44 | .highlight .mi { color: #009999 } /* Literal.Number.Integer */ 45 | .highlight .mo { color: #009999 } /* Literal.Number.Oct */ 46 | .highlight .sb { color: #d14 } /* Literal.String.Backtick */ 47 | .highlight .sc { color: #d14 } /* Literal.String.Char */ 48 | .highlight .sd { color: #d14 } /* Literal.String.Doc */ 49 | .highlight .s2 { color: #d14 } /* Literal.String.Double */ 50 | .highlight .se { color: #d14 } /* Literal.String.Escape */ 51 | .highlight .sh { color: #d14 } /* Literal.String.Heredoc */ 52 | .highlight .si { color: #d14 } /* Literal.String.Interpol */ 53 | .highlight .sx { color: #d14 } /* Literal.String.Other */ 54 | .highlight .sr { color: #009926 } /* Literal.String.Regex */ 55 | .highlight .s1 { color: #d14 } /* Literal.String.Single */ 56 | .highlight .ss { color: #990073 } /* Literal.String.Symbol */ 57 | .highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */ 58 | .highlight .vc { color: #008080 } /* Name.Variable.Class */ 59 | .highlight .vg { color: #008080 } /* Name.Variable.Global */ 60 | .highlight .vi { color: #008080 } /* Name.Variable.Instance */ 61 | .highlight .il { color: #009999 } /* Literal.Number.Integer.Long */ 62 | 63 | .type-csharp .highlight .k { color: #0000FF } 64 | .type-csharp .highlight .kt { color: #0000FF } 65 | .type-csharp .highlight .nf { color: #000000; font-weight: normal } 66 | .type-csharp .highlight .nc { color: #2B91AF } 67 | .type-csharp .highlight .nn { color: #000000 } 68 | .type-csharp .highlight .s { color: #A31515 } 69 | .type-csharp .highlight .sc { color: #A31515 } 70 | -------------------------------------------------------------------------------- /stylesheets/styles.css: -------------------------------------------------------------------------------- 1 | body { 2 | background-color: #fff; 3 | padding:50px; 4 | font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; 5 | color:#595959; 6 | font-weight:400; 7 | } 8 | 9 | h1, h2, h3, h4, h5, h6 { 10 | color:#222; 11 | margin:0 0 20px; 12 | } 13 | 14 | p, ul, ol, table, pre, dl { 15 | margin:0 0 20px; 16 | } 17 | 18 | h1, h2, h3 { 19 | line-height:1.1; 20 | } 21 | 22 | h1 { 23 | font-size:28px; 24 | font-weight: 500; 25 | } 26 | 27 | h2 { 28 | color:#393939; 29 | font-weight: 500; 30 | } 31 | 32 | h3, h4, h5, h6 { 33 | color:#494949; 34 | font-weight: 500; 35 | } 36 | 37 | a { 38 | color:#39c; 39 | text-decoration:none; 40 | } 41 | 42 | a:hover { 43 | color:#069; 44 | } 45 | 46 | a small { 47 | font-size:11px; 48 | color:#777; 49 | margin-top:-0.3em; 50 | display:block; 51 | } 52 | 53 | a:hover small { 54 | color:#777; 55 | } 56 | 57 | .wrapper { 58 | width:860px; 59 | margin:0 auto; 60 | } 61 | 62 | blockquote { 63 | border-left:1px solid #e5e5e5; 64 | margin:0; 65 | padding:0 0 0 20px; 66 | font-style:italic; 67 | } 68 | 69 | code, pre { 70 | font-family:Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal, Consolas, Liberation Mono, DejaVu Sans Mono, Courier New, monospace; 71 | color:#333; 72 | } 73 | 74 | pre { 75 | padding:8px 15px; 76 | background: #f8f8f8; 77 | border-radius:5px; 78 | border:1px solid #e5e5e5; 79 | overflow-x: auto; 80 | } 81 | 82 | table { 83 | width:100%; 84 | border-collapse:collapse; 85 | } 86 | 87 | th, td { 88 | text-align:left; 89 | padding:5px 10px; 90 | border-bottom:1px solid #e5e5e5; 91 | } 92 | 93 | dt { 94 | color:#444; 95 | font-weight:500; 96 | } 97 | 98 | th { 99 | color:#444; 100 | } 101 | 102 | img { 103 | max-width:100%; 104 | } 105 | 106 | header { 107 | width:270px; 108 | float:left; 109 | position:fixed; 110 | -webkit-font-smoothing:subpixel-antialiased; 111 | } 112 | 113 | header ul { 114 | list-style:none; 115 | height:40px; 116 | padding:0; 117 | background: #f4f4f4; 118 | border-radius:5px; 119 | border:1px solid #e0e0e0; 120 | width:270px; 121 | } 122 | 123 | header li { 124 | width:89px; 125 | float:left; 126 | border-right:1px solid #e0e0e0; 127 | height:40px; 128 | } 129 | 130 | header li:first-child a { 131 | border-radius:5px 0 0 5px; 132 | } 133 | 134 | header li:last-child a { 135 | border-radius:0 5px 5px 0; 136 | } 137 | 138 | header ul a { 139 | line-height:1; 140 | font-size:11px; 141 | color:#999; 142 | display:block; 143 | text-align:center; 144 | padding-top:6px; 145 | height:34px; 146 | } 147 | 148 | header ul a:hover { 149 | color:#999; 150 | } 151 | 152 | header ul a:active { 153 | background-color:#f0f0f0; 154 | } 155 | 156 | strong { 157 | color:#222; 158 | font-weight:500; 159 | } 160 | 161 | header ul li + li + li { 162 | border-right:none; 163 | width:89px; 164 | } 165 | 166 | header ul a strong { 167 | font-size:14px; 168 | display:block; 169 | color:#222; 170 | } 171 | 172 | section { 173 | width:500px; 174 | float:right; 175 | padding-bottom:50px; 176 | } 177 | 178 | small { 179 | font-size:11px; 180 | } 181 | 182 | hr { 183 | border:0; 184 | background:#e5e5e5; 185 | height:1px; 186 | margin:0 0 20px; 187 | } 188 | 189 | footer { 190 | width:270px; 191 | float:left; 192 | position:fixed; 193 | bottom:50px; 194 | -webkit-font-smoothing:subpixel-antialiased; 195 | } 196 | 197 | @media print, screen and (max-width: 960px) { 198 | 199 | div.wrapper { 200 | width:auto; 201 | margin:0; 202 | } 203 | 204 | header, section, footer { 205 | float:none; 206 | position:static; 207 | width:auto; 208 | } 209 | 210 | header { 211 | padding-right:320px; 212 | } 213 | 214 | section { 215 | border:1px solid #e5e5e5; 216 | border-width:1px 0; 217 | padding:20px 0; 218 | margin:0 0 20px; 219 | } 220 | 221 | header a small { 222 | display:inline; 223 | } 224 | 225 | header ul { 226 | position:absolute; 227 | right:50px; 228 | top:52px; 229 | } 230 | } 231 | 232 | @media print, screen and (max-width: 720px) { 233 | body { 234 | word-wrap:break-word; 235 | } 236 | 237 | header { 238 | padding:0; 239 | } 240 | 241 | header ul, header p.view { 242 | position:static; 243 | } 244 | 245 | pre, code { 246 | word-wrap:normal; 247 | } 248 | } 249 | 250 | @media print, screen and (max-width: 480px) { 251 | body { 252 | padding:15px; 253 | } 254 | 255 | header ul { 256 | width:99%; 257 | } 258 | 259 | header li, header ul li + li + li { 260 | width:33%; 261 | } 262 | } 263 | 264 | @media print { 265 | body { 266 | padding:0.4in; 267 | font-size:12pt; 268 | color:#444; 269 | } 270 | } 271 | --------------------------------------------------------------------------------