├── README.md ├── single-column ├── script.js ├── style.css └── index.html └── LICENSE /README.md: -------------------------------------------------------------------------------- 1 | # Portfolio Starter 2 | 3 | These starting point for a portfolio site! If you want to learn more about creating an awesome portfolio, [here's](https://welearncode.com/building-a-kickass-portfolio/) a blog post I wrote! Add in your projects and make this your own! Add some fun animations or colors to customize it. 4 | 5 | -------------------------------------------------------------------------------- /single-column/script.js: -------------------------------------------------------------------------------- 1 | const articlesSection = document.querySelector('.writing') 2 | 3 | axios.get('https://dev.to/api/articles?username=aspittel').then((articles) => { 4 | articles.data 5 | .sort((a, b) => a.positive_reactions_count - b.positive_reactions_count) 6 | .slice(20, 30) 7 | .reverse() 8 | .forEach((article) => { 9 | const link = document.createElement('a') 10 | link.setAttribute('href', article.url) 11 | link.textContent = article.title 12 | articlesSection.appendChild(link) 13 | }) 14 | const link = document.createElement('a') 15 | link.setAttribute('href', 'https://dev.to/aspittel') 16 | link.textContent = 'View All' 17 | link.classList.add('more-link') 18 | articlesSection.appendChild(link) 19 | }) 20 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Ali Spittel 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /single-column/style.css: -------------------------------------------------------------------------------- 1 | @import url("https://fonts.googleapis.com/css2?family=Lato:wght@400;800&family=Playfair+Display:wght@600&display=swap"); 2 | 3 | body { 4 | font-weight: 400; 5 | color: #222; 6 | font-family: Lato, sans-serif; 7 | } 8 | 9 | h1 { 10 | font-family: "Playfair Display", serif; 11 | font-size: 50px; 12 | } 13 | 14 | header h2 { 15 | font-size: 1.2em; 16 | font-weight: normal; 17 | line-height: 0.7; 18 | } 19 | 20 | p { 21 | line-height: 1.5; 22 | } 23 | 24 | header { 25 | text-align: center; 26 | } 27 | 28 | hr { 29 | margin-top: 30px; 30 | border-width: 0; 31 | border-top: 2px solid #222; 32 | width: 80px; 33 | } 34 | 35 | section { 36 | margin: 30px; 37 | } 38 | 39 | canvas { 40 | position: fixed; 41 | top: 0; 42 | z-index: -1; 43 | width: 100%; 44 | height: 100vh; 45 | margin-left: 0em; 46 | } 47 | 48 | main { 49 | max-width: 800px; 50 | margin: 60px auto; 51 | } 52 | 53 | a { 54 | color: #222; 55 | } 56 | 57 | .speaking-columns { 58 | display: grid; 59 | grid-template-columns: 1fr 1fr 1fr; 60 | } 61 | 62 | .speaking a { 63 | color: #444; 64 | display: block; 65 | line-height: 1.5; 66 | } 67 | 68 | .speaking p { 69 | line-height: 1; 70 | font-size: 0.9em; 71 | } 72 | 73 | .writing a { 74 | display: block; 75 | text-decoration: underline; 76 | margin-top: 6px; 77 | } 78 | 79 | .social-links a { 80 | font-size: 25px; 81 | padding: 0px 8px; 82 | text-decoration: none; 83 | color: #444; 84 | } 85 | 86 | .social-footer { 87 | text-align: center; 88 | margin-bottom: 60px; 89 | } 90 | 91 | ::selection { 92 | background: lavender; 93 | } 94 | 95 | .more-link { 96 | color: #ab47bc; 97 | } 98 | 99 | @media only screen and (max-width: 450px) { 100 | section { 101 | margin: 10px; 102 | } 103 | .speaking-columns { 104 | display: block; 105 | } 106 | } 107 | 108 | @media only screen and (max-width: 600px) { 109 | .speaking-columns { 110 | display: block; 111 | } 112 | } 113 | -------------------------------------------------------------------------------- /single-column/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Ali Spittel 9 | 10 | 16 | 22 | 28 | 29 | 30 |
31 |

Ali Spittel

32 |

I really like writing code.

33 |

Especially in Python and JavaScript.

34 | 51 |
52 |
53 |
54 |

About

55 |

56 | I love teaching people to code. I have been employed in the tech 57 | industry since 2014, holding multiple software engineering positions 58 | at startups, and a distinguished faculty role at General Assembly's 59 | Software Engineering Immersive. 60 |

61 |

62 | I blog a lot about code and my 63 | life as a developer. My blog posts have had over well over a million 64 | reads and have been featured on DEV's top 7, the top spot on 65 | HackerNews, FreeCodeCamp, and in JSWeekly. You can hear about new 66 | posts on my newsletter. 67 |

68 |

69 | I also have a podcast with two other incredible women: 70 | Ladybug Podcast. We talk about the 71 | tech industry, our backgrounds, and go in depth on code-topics. 72 |

73 |

74 | When I'm not coding you can find me watching my favorite New England 75 | sports teams, taking runs around Capitol Hill with my dog 76 | Blair, or rock 77 | climbing. 78 |

79 |
80 |
81 |

Portfolio Projects

82 |
83 |

Learn Code from Us

84 |

85 | A site that features people from underrepresented groups in tech who 86 | create awesome programming resources 87 |

88 |
89 |
90 |

91 | Political Discussion 94 |

95 |

96 | Part of my senior thesis in college: visualizes how people are 97 | discussing Senators on Twitter. 98 |

99 |
100 | More on GitHub 103 |
104 | 105 |
106 |

Writing

107 |

A few recent posts...

108 |
109 | 110 |
111 |

Speaking

112 |
113 |
114 |

Upcoming

115 |
116 | Mozilla ViewSource 117 |

Augmented Reality in JavaScript

118 |
119 |
120 | 121 | All Things Open 122 | 123 |

Those Who Can Do Should Also Teach && Blogging Workshop

124 |
125 |
126 |
127 |

Selected Previous Talks

128 |
129 | 130 | Reactadelphia 131 | 132 |

Yes, You Should Write that Blog Post

133 |
134 |
135 | Abstractions 136 |

137 | Those Who Can Do Should Also Teach 138 |

139 |
140 |
141 | NH.js 144 |

Augmented Reality in JavaScript

145 |
146 |
147 | Portsmouth AWS 150 |

Yes, You Should Write that Blog Post!

151 |
152 |
153 | OSCON 154 |

155 | Writing to grow your open source project 156 |

157 |
158 |
159 | Codeland 162 |

Yes, You Should Write That Blog Post

163 |
164 |
165 | 168 | Women Who Code Boston 169 | 170 |

Yes, you should write that blog post

171 |
172 |
173 | Revolution Conference 174 |

Yes, You Should Write that Blog Post!

175 |
176 |
177 | Women in Tech Summit 178 |

Yes, You Should Write that Blog Post

179 |
180 |
181 | ForeFront 182 |

Navigating the Spooky World of JavaScript

183 |
184 |
185 | IndyCode() 186 |

Learning CSS Through Creating Art

187 |
188 |
189 | IndyCode() 190 |

Augmented Reality in JavaScript

191 |
192 |
193 | Mid-Atlantic Developer Conference 196 |

Augmented Reality in JavaScript

197 |
198 |
199 | DEV Workshop 203 |

Learning CSS Through Creating Art

204 |
205 |
206 | NOVA Code Camp 207 |

Augmented Reality in JavaScript

208 |
209 |
210 | Code(Her) 211 |

What are Web Frameworks?

212 |
213 |
214 |
215 |

Interviews

216 |
217 | 220 | Chats with Kent 221 | 222 |

223 | Growing Your Skills And Career Through Teaching 224 |

225 |
226 |
227 | Developer Tea 230 |

Interview w/ Ali Spittel

231 |
232 |
233 | Free Code Camp Podcast 237 |

Ali Spittel, creator of Zen of Programming

238 |
239 | 240 |
241 | Hanselminutes 244 | 245 |

Your biggest questions when learning how to code

246 |
247 |
248 | Devpath.fm 251 | 252 |

Teacher and Developer Advocate Ali Spittel

253 |
254 |
255 | Egghead Podcast 259 |

Developing Yourself While Teaching Others

260 |
261 |
262 | I.T. Career Energizer 264 | 265 |

266 | Tap Into the Power of Teaching Others to Become a Better 267 | Developer 268 |

269 |
270 |
271 | Cosmic JS 275 |

Developer Spotlight

276 |
277 |
278 | Real Python 281 |

Community Interview

282 |
283 |
284 | Mouse vs. Python 288 |

PyDev of the Week

289 |
290 |
291 | Dev.to Review 294 |

Conversation with an Author

295 |
296 |
297 |
298 | Undefined 302 |

Developer Avocado Toast

303 |
304 |
305 | 306 | Developurrs 307 | 308 |

Blair + Ali

309 |
310 |
311 | Developing Up 314 |

Building Trust

315 |
316 |
317 | DevJourney 321 |

The Crossroads of Development, Teaching and Communities

322 |
323 |
324 |
325 |
326 |
327 | 344 | 345 | 346 | 347 | 348 | --------------------------------------------------------------------------------