A presentation by Justin Mayer
@jmayer • justinmayer.com • github.com/justinmayer
Justin Mayer • @jmayer • justinmayer.com
Pelican • @getpelican • getpelican.com
Monitorial • @monitorial • monitorial.net
Upriise • @upriise • upriise.com
Content mixed with tags
Not very DRY
Only for technical folks
Content stored in database
Web-based editor
HTML dynamically generated by server
Web server
Application server
Database server
Upgrading application and database servers
Content versioning is hard
Migration is a pain
High-profile site links to you
Congratulations!
Association for Computing Machinery
http://queue.acm.org/detail.cfm?id=2721993
CMS treats content as instructions
Attack via crafted blog post or comment
DDoS
No longer “just files”
Content as files
Templates and content blocks: DRY
Generate locally; sync to server
Markdown
reStructured Text
Asciidoc
Textile
Not waiting on CPU to generate the page
No reverse proxying
Web servers are optimized for static assets
No app or DB server
Less moving parts
Source content is on your machine
Easier backups, versioning, migration
rsync
GitHub Pages
S3/CloudFront/Rackspace/Heroku
Written in Python
Nearly 250 contributors
Thriving ecosystem
http://www.gniibe.org/memo/software/web/pelican/intro-ja.html
http://blog.sotm.jp/2014/01/03/moving-blog-wordpress-to-pelican/
http://osanai.org/74/
http://memo.laughk.org/2014/08/10/tinker2pelican-repo.html
http://blog.tai2.net/pelican-impression.html
https://www.ainoniwa.net/pelican/
http://blog.tekito.org/2013/12/16/setting-up-a-blog-with-pelican/
http://ulthar.com/category/pelican.html
https://staticsitegenerators.net/
393 of them listed (as of today)
Example: contact forms
Potentially an issue for huge sites
Not nearly as approachable
or user-friendly
Caching
Web-based editing
Live page reloading
Self-hosted comments
Site search
Contact forms
Should be much more user-friendly
Want to hear about your experiences
Stay tuned
https://github.com/getpelican/pelican
Simple, reliable, fast
Pairs well with microservices
Better control over your software and your data
Justin Mayer • @jmayer • justinmayer.com
Pelican • @getpelican • getpelican.com
Monitorial • @monitorial • monitorial.net
Upriise • @upriise • upriise.com