!SLIDE bullets #Jekyll
!SLIDE
#Sample Jekyll project
@@@
.
|– _config.yml
|– _layouts
| |– default.html
| -- post.html
|-- _posts
| |-- 2007-10-29-post-one.markdown
|
– 2009-04-26-post-two.markdown
|– _site
`– index.html
!SLIDE #YAML Front Matter @@@ Ruby — layout: post title: Blogging Like a Hacker permalink: hacker-blogging categories: - rants - tools —
!SLIDE #Templates @@@
<li>
<span>
31 Oct 2020
</span>
<a href="/blog/2020/10/31/every-article-about-software-is-wrong.html">
All software advice is wrong
</a>
</li>
<li>
<span>
07 Jan 2019
</span>
<a href="/blog/2019/01/07/twenty-five-days-of-design.html">
Twenty-five days of design
</a>
</li>
<li>
<span>
26 Nov 2018
</span>
<a href="/blog/2018/11/26/creative-selection.html">
Creative Selection: How Apple builds products with demos, taste, and leverage
</a>
</li>
<li>
<span>
22 Oct 2018
</span>
<a href="/blog/2018/10/22/trouble-with-timestamps.html">
The trouble with timestamps
</a>
</li>
<li>
<span>
19 Sep 2018
</span>
<a href="/blog/2018/09/19/committee-pointless-time-suck.html">
This committee is a pointless time suck
</a>
</li>
<li>
<span>
06 Jul 2018
</span>
<a href="/blog/2018/07/06/fuzzy-emoji-finding.html">
:hammer: Building a :bug: Fuzzy :smile: Emoji :mag: Finder :100:
</a>
</li>
<li>
<span>
16 May 2018
</span>
<a href="/blog/2018/05/16/evaluating-project-opportunities.html">
Evaluating project opportunities
</a>
</li>
<li>
<span>
29 Mar 2017
</span>
<a href="/blog/2017/03/29/how-to-start-a-peer-group.html">
How to start a peer group
</a>
</li>
<li>
<span>
14 Feb 2017
</span>
<a href="/blog/2017/02/14/why-machine-learning-is-interesting.html">
Software ate the world
</a>
</li>
<li>
<span>
13 Feb 2017
</span>
<a href="/blog/2017/02/13/how-much-does-crunch-time-hurt-team-morale.html">
How much does 'crunch time' hurt team morale?
</a>
</li>
<li>
<span>
13 Feb 2017
</span>
<a href="/blog/2017/02/13/a-data-driven-approach-to-finding-toxic-meetings.html">
A data-driven approach to finding toxic meetings
</a>
</li>
<li>
<span>
03 Nov 2016
</span>
<a href="/blog/2016/11/03/closing-down-a-product.html">
Closing Down a Product, Gracefully
</a>
</li>
<li>
<span>
26 Sep 2016
</span>
<a href="/blog/2016/09/26/adventures-in-content-marketing.html">
Adventures in Content Marketing
</a>
</li>
<li>
<span>
12 Sep 2016
</span>
<a href="/blog/2016/09/12/podcast-roundup-iv.html">
Podcast Roundup IV
</a>
</li>
<li>
<span>
05 Aug 2016
</span>
<a href="/blog/2016/08/05/a-live-chat-experiment.html">
A Live Chat Experiment
</a>
</li>
<li>
<span>
03 Aug 2016
</span>
<a href="/blog/2016/08/03/dunning-krugerd-marketing.html">
How I Dunning-Kruger'd Marketing
</a>
</li>
<li>
<span>
02 Jun 2016
</span>
<a href="/blog/2016/06/02/small-wins.html">
Small wins: printers and rubies and sales calls
</a>
</li>
<li>
<span>
31 May 2016
</span>
<a href="/blog/2016/05/31/hacking-indy-500-pool.html">
Hacking my office Indy 500 pool: exploiting arbitrage in an inefficient market
</a>
</li>
<li>
<span>
03 May 2016
</span>
<a href="/blog/2016/05/03/writing-a-postmortem.html">
Writing a Postmortem
</a>
</li>
<li>
<span>
22 Apr 2016
</span>
<a href="/blog/2016/04/22/compounding-technical-debt.html">
Compounding technical debt
</a>
</li>
<li>
<span>
21 Apr 2016
</span>
<a href="/blog/2016/04/21/tracking-down-bugs-without-qa.html">
Tracking down bugs without QA
</a>
</li>
<li>
<span>
19 Apr 2016
</span>
<a href="/blog/2016/04/19/getting-reacquainted-with-customers.html">
Getting reacquainted with our customers
</a>
</li>
<li>
<span>
14 Mar 2016
</span>
<a href="/blog/2016/03/14/the-first-winter.html">
The First Winter
</a>
</li>
<li>
<span>
25 Jan 2016
</span>
<a href="/blog/2016/01/25/sell-or-kill.html">
Internal tools should be sold or killed
</a>
</li>
<li>
<span>
26 Oct 2015
</span>
<a href="/blog/2015/10/26/code-neutral.html">
Code Neutral
</a>
</li>
<li>
<span>
05 Oct 2015
</span>
<a href="/blog/2015/10/05/testing-behavior-vs-implementation.html">
Testing Behavior vs Implementation
</a>
</li>
<li>
<span>
30 Sep 2015
</span>
<a href="/blog/2015/09/30/juking-the-stats.html">
Juking the Stats
</a>
</li>
<li>
<span>
17 Mar 2015
</span>
<a href="/blog/2015/03/17/what-is-the-point-of-optionals.html">
What is the point of Optionals?
</a>
</li>
<li>
<span>
03 Oct 2014
</span>
<a href="/blog/2014/10/03/how-i-curate-the-indyhackers-newsletter.html">
How I Curate the IndyHackers' Newsletter
</a>
</li>
<li>
<span>
29 Jun 2014
</span>
<a href="/blog/2014/06/29/meditations-on-software.html">
Personal Meditations on Software
</a>
</li>
<li>
<span>
02 Jun 2014
</span>
<a href="/blog/2014/06/02/android-form-models.html">
Extracting Form Models in Android
</a>
</li>
<li>
<span>
30 May 2014
</span>
<a href="/blog/2014/05/30/more-than-code.html">
There is more to it than code
</a>
</li>
<li>
<span>
14 May 2014
</span>
<a href="/blog/2014/05/14/open-source-tale.html">
Two Lines of Code: An Open Source Tale
</a>
</li>
<li>
<span>
07 Apr 2014
</span>
<a href="/blog/2014/04/07/durable-android-rest-clients.html">
Durable Android REST Clients
</a>
</li>
<li>
<span>
31 Mar 2014
</span>
<a href="/blog/2014/03/31/one-day-further.html">
One Day Further
</a>
</li>
<li>
<span>
15 Mar 2014
</span>
<a href="/blog/2014/03/15/tech-lead.html">
Observations and Practices of a Tech Lead
</a>
</li>
<li>
<span>
24 Feb 2014
</span>
<a href="/blog/2014/02/24/integration-testing-rest-apis-for-android.html">
Integration Testing against REST APIs in Android
</a>
</li>
<li>
<span>
10 Feb 2014
</span>
<a href="/blog/2014/02/10/my-year-in-review-2013.html">
My Year in Review: 2013
</a>
</li>
<li>
<span>
16 Dec 2013
</span>
<a href="/blog/2013/12/16/reliable-android-http-testing-with-retrofit-and-mockito.html">
Reliable API testing for Android with Retrofit and Mockito
</a>
</li>
<li>
<span>
11 Dec 2013
</span>
<a href="/blog/2013/12/11/responsive-layouts-in-android.html">
Responsive Layouts in Android without Copy/Paste
</a>
</li>
<li>
<span>
13 Nov 2013
</span>
<a href="/blog/2013/11/13/some-tools-i-like.html">
Some tools I like
</a>
</li>
<li>
<span>
11 Nov 2013
</span>
<a href="/blog/2013/11/11/how-buildings-learn-and-why-software-is-no-different.html">
How Buildings Learn (and why software is no different)
</a>
</li>
<li>
<span>
03 Nov 2013
</span>
<a href="/blog/2013/11/03/when-in-doubt-do-a-spike.html">
When in doubt, do a Spike
</a>
</li>
<li>
<span>
14 Oct 2013
</span>
<a href="/blog/2013/10/14/how-not-to-validate-email-addresses.html">
How not to validate email addresses
</a>
</li>
<li>
<span>
30 Sep 2013
</span>
<a href="/blog/2013/09/30/crappy-emails-make-me-sad.html">
Crappy emails make me sad
</a>
</li>
<li>
<span>
27 Aug 2013
</span>
<a href="/blog/2013/08/27/have-it-your-way-software.html">
"Have It Your Way" Software
</a>
</li>
<li>
<span>
19 Aug 2013
</span>
<a href="/blog/2013/08/19/how-to-practice-code-reviews.html">
How to Practice Code Reviews
</a>
</li>
<li>
<span>
11 Aug 2013
</span>
<a href="/blog/2013/08/11/write-things-tell-people.html">
Do things, write about it
</a>
</li>
<li>
<span>
10 Aug 2013
</span>
<a href="/blog/2013/08/10/engineering-a-first-run-experience.html">
Engineering a First Run Experience
</a>
</li>
<li>
<span>
07 Aug 2013
</span>
<a href="/blog/2013/08/07/interview-to-implementation-horizon-report.html">
Interview to Implementation: Horizon Report
</a>
</li>
<li>
<span>
03 Aug 2013
</span>
<a href="/blog/2013/08/03/how-to-make-testing-less-painful.html">
How to make writing tests less painful
</a>
</li>
<li>
<span>
02 Aug 2013
</span>
<a href="/blog/2013/08/02/dont-email-me-at-2am.html">
Don't Email Me at 2am
</a>
</li>
<li>
<span>
30 Jul 2013
</span>
<a href="/blog/2013/07/30/on-t-shaped-people.html">
On Becoming T-Shaped
</a>
</li>
<li>
<span>
24 Jul 2013
</span>
<a href="/blog/2013/07/24/step-by-step-ux-improvement-screenshot-upload.html">
Step-by-Step UX Improvement: Screenshot Upload
</a>
</li>
<li>
<span>
22 Jul 2013
</span>
<a href="/blog/2013/07/22/more-tales-in-bad-restaurant-ux.html">
More Tales in Bad Restaurant UX
</a>
</li>
<li>
<span>
21 Jul 2013
</span>
<a href="/blog/2013/07/21/half-baked-thoughts-on-ruby-web-architecture.html">
Half-Baked Thoughts on Ruby Web Architecture
</a>
</li>
<li>
<span>
21 Jul 2013
</span>
<a href="/blog/2013/07/21/email-as-the-interface.html">
Email as the Interface
</a>
</li>
<li>
<span>
19 Jul 2013
</span>
<a href="/blog/2013/07/19/getting-traction-for-your-open-source-project.html">
Getting Traction for your Open Source Project
</a>
</li>
<li>
<span>
18 Jul 2013
</span>
<a href="/blog/2013/07/18/step-by-step-ux-improvement.html">
Step-by-Step UX Improvement: Project Screenshots
</a>
</li>
<li>
<span>
17 Jul 2013
</span>
<a href="/blog/2013/07/17/myers-briggs-for-programming-styles.html">
Myers-Briggs for Programming Styles
</a>
</li>
<li>
<span>
04 Jul 2013
</span>
<a href="/blog/2013/07/04/delightful-ux-mediums-time-to-read.html">
Delightful UX: Medium's Time to Read
</a>
</li>
<li>
<span>
03 Jun 2013
</span>
<a href="/blog/2013/06/03/jekyll-201.html">
Jekyll 201: Beyond Hello World
</a>
</li>
<li>
<span>
31 May 2013
</span>
<a href="/blog/2013/05/31/summer-reading-list.html">
The Intern & New Hire Summer Reading List
</a>
</li>
<li>
<span>
29 May 2013
</span>
<a href="/blog/2013/05/29/the-30-second-standup.html">
The 30 Second Standup
</a>
</li>
<li>
<span>
08 May 2013
</span>
<a href="/blog/2013/05/08/delightful-software.html">
You (yes you!) can make delightful products
</a>
</li>
<li>
<span>
02 May 2013
</span>
<a href="/blog/2013/05/02/expanding-contracting.html">
Expanding and Contracting
</a>
</li>
<li>
<span>
17 Apr 2013
</span>
<a href="/blog/2013/04/17/how-to-not-quit.html">
How to Not Quit
</a>
</li>
<li>
<span>
10 Apr 2013
</span>
<a href="/blog/2013/04/10/changing-plans.html">
Changing Plans
</a>
</li>
<li>
<span>
02 Apr 2013
</span>
<a href="/blog/2013/04/02/more-complicated-than-it-needs-to-be.html">
More Complicated Than It Needs To Be
</a>
</li>
<li>
<span>
26 Mar 2013
</span>
<a href="/blog/2013/03/26/too-much-information.html">
Too Much Information
</a>
</li>
<li>
<span>
19 Mar 2013
</span>
<a href="/blog/2013/03/19/cross-pollination.html">
Cross-Pollinate
</a>
</li>
<li>
<span>
28 Jan 2013
</span>
<a href="/blog/2013/01/28/evaluating-technical-arguments.html">
Evaluating Technical Arguments
</a>
</li>
<li>
<span>
20 Jan 2013
</span>
<a href="/blog/2013/01/20/worst-bug-ever.html">
Worst. Bug. Ever.
</a>
</li>
<li>
<span>
01 Jan 2013
</span>
<a href="/blog/2013/01/01/year-in-review-2012.html">
My Year in Review: 2012
</a>
</li>
<li>
<span>
17 Dec 2012
</span>
<a href="/blog/2012/12/17/habit-ramp-up.html">
Habit Ramp Up
</a>
</li>
<li>
<span>
10 Dec 2012
</span>
<a href="/blog/2012/12/10/personal-time-capsule.html">
Personal Time Capsule
</a>
</li>
<li>
<span>
18 Nov 2012
</span>
<a href="/blog/2012/11/18/motion-is-not-progress.html">
Motion is not Progress
</a>
</li>
<li>
<span>
06 Nov 2012
</span>
<a href="/blog/2012/11/06/the-optimistic-programmer.html">
The Optimistic Programmer
</a>
</li>
<li>
<span>
04 Nov 2012
</span>
<a href="/blog/2012/11/04/code-reviews-good-idea-bad-idea.html">
Code Reviews: Good idea, bad idea?
</a>
</li>
<li>
<span>
28 Oct 2012
</span>
<a href="/blog/2012/10/28/i-dont-have-time.html">
I Don't Have Time
</a>
</li>
<li>
<span>
25 Sep 2012
</span>
<a href="/blog/2012/09/25/new-coke-ux.html">
New Coke User Experience
</a>
</li>
<li>
<span>
27 Aug 2012
</span>
<a href="/blog/2012/08/27/move-your-feet.html">
Move your feet
</a>
</li>
<li>
<span>
31 May 2012
</span>
<a href="/blog/2012/05/31/primitive-obsession.html">
A Dangerous Obsession with Primitives
</a>
</li>
<li>
<span>
22 Mar 2012
</span>
<a href="/blog/2012/03/22/test-first-as-system-2-thinking.html">
Test First as System 2 Thinking
</a>
</li>
<li>
<span>
01 Mar 2012
</span>
<a href="/blog/2012/03/01/my-side-project-queue.html">
What's in my Side Project Queue?
</a>
</li>
<li>
<span>
30 Jan 2012
</span>
<a href="/blog/2012/01/30/repeating-background-textures-in-android.html">
Repeating Background Textures in Android
</a>
</li>
<li>
<span>
27 Jan 2012
</span>
<a href="/blog/2012/01/27/fun-with-ruby-metaprogramming.html">
Let's build a Ruby mocking framework! Sorta...kinda?
</a>
</li>
<li>
<span>
26 Dec 2011
</span>
<a href="/blog/2011/12/26/one-developer-year-in-review-2011.html">
My Year in Review: 2011
</a>
</li>
<li>
<span>
05 Dec 2011
</span>
<a href="/blog/2011/12/05/global-day-of-code-retreat-recap.html">
Global Day of Code Retreat Recap
</a>
</li>
<li>
<span>
04 Dec 2011
</span>
<a href="/blog/2011/12/04/whats-on-your-learning-list.html">
What's on your Learning List?
</a>
</li>
<li>
<span>
27 Nov 2011
</span>
<a href="/blog/2011/11/27/overcoming-momentum.html">
Overcoming Momentum
</a>
</li>
<li>
<span>
12 Nov 2011
</span>
<a href="/blog/2011/11/12/weapon-of-choice.html">
Weapon of Choice
</a>
</li>
<li>
<span>
02 Nov 2011
</span>
<a href="/blog/2011/11/02/engineering-over-under.html">
Over/Under: I'm a Serial Over Committer
</a>
</li>
<li>
<span>
24 Oct 2011
</span>
<a href="/blog/2011/10/24/get-better.html">
Get Better
</a>
</li>
<li>
<span>
17 Oct 2011
</span>
<a href="/blog/2011/10/17/webdev-katas.html">
Web Development Kata - Tweet Viewer
</a>
</li>
<li>
<span>
16 Oct 2011
</span>
<a href="/blog/2011/10/16/the-applebees-of-software-development.html">
The Applebee's of Software Development
</a>
</li>
<li>
<span>
13 Oct 2011
</span>
<a href="/blog/2011/10/13/sep-blog-off.html">
SEP Blog Off
</a>
</li>
<li>
<span>
13 Oct 2011
</span>
<a href="/blog/2011/10/13/intrapreneurship-applying-the-lean-startup-to-internal-tools.html">
Intrapreneurship: Applying the Lean Startup to building internal tools
</a>
</li>
<li>
<span>
01 Oct 2011
</span>
<a href="/blog/2011/10/01/podcast-roundup-iii.html">
Podcast Roundup III
</a>
</li>
<li>
<span>
22 Sep 2011
</span>
<a href="/blog/2011/09/22/my-take-on-interviewing-and-the-hiring-process.html">
My take on interviewing and the hiring process
</a>
</li>
<li>
<span>
29 Aug 2011
</span>
<a href="/blog/2011/08/29/sdc-chicago-talk-takeaways.html">
SDC Chicago Talk Takeaways
</a>
</li>
<li>
<span>
21 Aug 2011
</span>
<a href="/blog/2011/08/21/update-on-lanyon-crossdomain-ajax-posts.html">
Update on Lanyon + Cross-domain AJAX POSTs with CORS
</a>
</li>
<li>
<span>
23 Jul 2011
</span>
<a href="/blog/2011/07/23/digging-around-the-github-api-take-2.html">
Making a commit with the Github API
</a>
</li>
<li>
<span>
18 Jul 2011
</span>
<a href="/blog/2011/07/18/start-up-weekend-lessons-learned.html">
Lessons Learned from SEP's Internal Startup Weekend
</a>
</li>
<li>
<span>
09 Jul 2011
</span>
<a href="/blog/2011/07/09/digging-around-the-github-v3-api.html">
Digging around the Github v3 API
</a>
</li>
<li>
<span>
18 Jun 2011
</span>
<a href="/blog/2011/06/18/startup-weekend-tip-tricks.html">
Startup Weekend Tip & Tricks
</a>
</li>
<li>
<span>
16 May 2011
</span>
<a href="/blog/2011/05/16/podcast-roundup-ii.html">
Podcast Roundup II
</a>
</li>
<li>
<span>
01 Mar 2011
</span>
<a href="/blog/2011/03/01/python-git-setup.html">
Managing Python libraries across git projects
</a>
</li>
<li>
<span>
22 Feb 2011
</span>
<a href="/blog/2011/02/22/how-hackernews-ruined-my-morning.html">
How HackerNews ruined my morning
</a>
</li>
<li>
<span>
22 Nov 2010
</span>
<a href="/blog/2010/11/22/weekly-noise-4-project-complete.html">
Weekly Noise 4 Recap - Glorified Screensaver - Post Mortem
</a>
</li>
<li>
<span>
14 Nov 2010
</span>
<a href="/blog/2010/11/14/weekly-noise-3-recap.html">
Weekly Noise 3 Recap/Weekly Noise 4 - Hitting a roadblock
</a>
</li>
<li>
<span>
08 Nov 2010
</span>
<a href="/blog/2010/11/08/weekly-noise-3-so-its-like-a-screensaver-part2.html">
Weekly Noise 3 - "So it's like a screensaver..." (Part II)
</a>
</li>
<li>
<span>
07 Nov 2010
</span>
<a href="/blog/2010/11/07/weekly-noise-2-recap.html">
Weekly Noise 2 Recap - alert("It's working!");
</a>
</li>
<li>
<span>
03 Nov 2010
</span>
<a href="/blog/2010/11/03/sipping-the-nodejs-koolaid.html">
Building a Javascript web app, or sipping the node.js koolaid
</a>
</li>
<li>
<span>
31 Oct 2010
</span>
<a href="/blog/2010/10/31/weekly-noise-2-so-its-like-a-screensaver.html">
Weekly Noise 2 - "So it's like a screensaver..."
</a>
</li>
<li>
<span>
31 Oct 2010
</span>
<a href="/blog/2010/10/31/weekly-noise-1-recap.html">
Weekly Noise - Week 1 Recap
</a>
</li>
<li>
<span>
28 Oct 2010
</span>
<a href="/blog/2010/10/28/podcast-roundup.html">
Podcast Roundup
</a>
</li>
<li>
<span>
24 Oct 2010
</span>
<a href="/blog/2010/10/24/weekly-noise.html">
Weekly Noise - Week 1
</a>
</li>
<li>
<span>
17 Oct 2010
</span>
<a href="/blog/2010/10/17/first-post.html">
Hello world
</a>
</li>