code is art
DESCRIPTION
Kroc Camen of Camen design describes the principles he uses when developing softwareTRANSCRIPT
![Page 1: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/1.jpg)
Kroc Camen
![Page 2: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/2.jpg)
code is art
![Page 3: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/3.jpg)
Camen Design
![Page 4: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/4.jpg)
Three Principles
![Page 5: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/5.jpg)
I. Code is Art
(art is personality)
![Page 6: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/6.jpg)
HTML5 since 2008; No <div>s. No <span>s.No classes. No IDs(presentational)
![Page 7: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/7.jpg)
II. Solve Only My Problem
“The Internet is full of generic code that solves generic problems, generically.”
![Page 8: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/8.jpg)
Be personal.
“Blog for yourself, not for others.”
![Page 9: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/9.jpg)
Don’t do what others say.
No imaginary customer / boss / market-share to hold you back
![Page 10: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/10.jpg)
III. Let Everybody Else Do Their Job
“Don’t lower your standards,simplify your methods.”
![Page 11: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/11.jpg)
![Page 12: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/12.jpg)
No comments.
email or blog
![Page 13: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/13.jpg)
“The more JavaScript you add to a comment system,
the worse it gets.”
![Page 14: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/14.jpg)
![Page 15: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/15.jpg)
No social junk.
copy + paste, bookmarks
![Page 16: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/16.jpg)
Some Things I Made
![Page 17: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/17.jpg)
Video for Everybody:
![Page 18: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/18.jpg)
HTML was designed to last.JavaScript wasn’t.
HTML5 Video first, Flash second
![Page 19: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/19.jpg)
VfE is a pattern, not a product!
Use "Media Element JS" instead!
![Page 20: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/20.jpg)
ReMarkable:
![Page 21: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/21.jpg)
Converts Plain Text Syntax to HTMLTitle 1=======Title 2-------The quick brown fox _jumps over the lazy dog.
<Click Me! (//google.com)>
<h1>Title 1</h1><h2>Title 2</h2><p>The quick brown fox<br /> jumps over the lazy dog.</p> <a href="http://google.com">Click me!</a>
![Page 22: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/22.jpg)
Markdown: ~1’400 loc
Perl!
![Page 23: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/23.jpg)
PHPMarkdownExtra: ~ 3’000 loc,
2 classes, 85 functions (It does a lot more though!)
![Page 24: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/24.jpg)
ReMarkable: 630 loc,1 function
![Page 25: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/25.jpg)
^:: (?:\(#([0-9a-z_-]+)\) )?(.*)\n{0,2}((?:\t+.*\n)+|(?:\t+.*(?:\n|(\n)\n)?)+)?\n(?=\
n::|<\/dl>)
![Page 26: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/26.jpg)
NoNonsense Forum:
![Page 27: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/27.jpg)
A Brief History of Discussion on the Internet:
1971 Email1978 BBS1980 Usenet1988 Internet Relay Chat1994 Web Forums1997 Blogging2004 Facebook 2006 Twitter
![Page 28: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/28.jpg)
A Brief History of Discussion on the Internet:
1971 Email - Can't get rid of it1978 BBS - Dead, replaced by Web1980 Usenet - Dying, BitTorrent1988 Internet Relay Chat - Alive + well1994 Web Forums - Still going strong1997 Blogging - Popular as ever2004 Facebook 2006 Twitter
![Page 29: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/29.jpg)
A Brief History of Discussion on the Internet:
These are brands, not protocolsTheir future is not guaranteed.
Anybody remember MySpace? Bebo?
2004 Facebook 2006 Twitter
![Page 30: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/30.jpg)
The forum is not dead,it just lost its way
![Page 31: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/31.jpg)
•Signatures•Avatars bigger than your face•Ranks (I have more posts than you!!!)•Over-engineered: groups, bookmarks,
profiles, messaging•Noise, clutter, hostility
![Page 32: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/32.jpg)
Discussion has beendrowned-out by ego.
![Page 33: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/33.jpg)
NoNonsense Forum
![Page 34: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/34.jpg)
No database
Just RSS
![Page 35: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/35.jpg)
No hurdles
Register + post at the same time.No CAPTCHA
![Page 36: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/36.jpg)
![Page 37: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/37.jpg)
No distraction, just discussion
No avatars, no post ranks, no signatures, no profiles
![Page 38: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/38.jpg)
Works everywhere...
• Internet Explorer 6 / 7 / 8 / 9 / 10 / 11...• Mozilla Firefox 3+• Google Chrome • Safari 3+ • Opera 9+• Text browsers!• ...
![Page 39: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/39.jpg)
iOS, Android, Kindle (including e-ink) & more
![Page 40: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/40.jpg)
![Page 41: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/41.jpg)
Easy to theme
Templates are HTML and HTML only; no `{{template tags}}` or
mixed server / client code.
![Page 42: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/42.jpg)
![Page 43: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/43.jpg)
NNF is not trying to be the only forum in town (e.g.
phpBB)
![Page 44: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/44.jpg)
It’s good for team / office discussion
![Page 45: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/45.jpg)
There’s a lot still to improve
• Easier installation, updating
Why isn't installing a web-app on a web-server as easy as buying an app on an iPhone? Industry-wide problem :(
• Easier administration
I plan to develop an admin web-interface so you don’t have to FTP-in and edit text files by hand
• Translation
Working on translation-support at the moment!
![Page 46: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/46.jpg)
You can help!
• Study the code, make changes—it’s open source!• File issues• Make suggestions on the Camen Design forum• Spread the word!
![Page 47: Code is art](https://reader035.vdocuments.mx/reader035/viewer/2022062703/55564d2dd8b42aa41e8b4b63/html5/thumbnails/47.jpg)
Thank You.
Questions?