Version 21, Code States, 2016-07-06
Laurie Voss
CTO,
@seldo
I may also include sarcastic remarks down here.
A: some people on Twitter, America's most trusted source for real facts.
More on Wikipedia: sel.do/dunningkruger
Dunning & Kruger won the Ig Nobel prize for psychology in 2000, but this is really useful stuff.
Are you even old enough to remember this movie?
aka git
All hail Sir Tim, the great and powerful.
The entire web is just the <A> tag.
http://www.filamentgroup.com/lab/weight-wait.html
http://sel.do/fallbackfont
because sometimes JavaScript never loads
http://www.nngroup.com/articles/designing-effective-carousels/
Nobody uses carousels:
Nobody scrolls horizontally:
http://www.nngroup.com/articles/horizontal-scrolling/
Links go places, buttons do things
Spatial memory is a thing
Use PushState to allow deep linking within rich web apps.
http://twitter.com/#!/ded/status/18308450276
is the same as
http://twitter.com/
Performance is invisible UX.
http://sel.do/mobile
is not optional
3.4% of web users have limited vision:
http://www.practicalecommerce.com/articles/2114-Screen-Readers-Eight-Frequently-Asked-Questions
Guide to accessibility:
http://www.nngroup.com/reports/usability-guidelines-accessible-web-design/
Pick two.
Best database ever.
Memory across machines
Memory++
Ehhhhhh
Replication is awesome
(or these days, MariaDB)
Get somebody else to install it.
More money, less problems.
Any CAP combination.
Do not use it as a primary store.
Surprisingly capable.
Replication is not a backup strategy.
Because people are terrible sometimes.
Salt and hash passwords
Performance issues
Lock them down
HttpOnly = true
i.e. HTTP, not JavaScript
Secure = true
i.e. smart, not dumb
Always use HTTPS.
Certs are free! letsencrypt.org
Cross Site Scripting
(because CSS, RSS and OSS were taken)
Hi, my name is <script>alert('evil')</script>
http://who.is/dns/jamiehankins.co.uk
SELECT id FROM users
WHERE name = 'anyuser'
AND password = 'anything' or 'x' = 'x'
username: anyuser
password: anything' OR 'x'='x
+
=
SELECT id FROM users
WHERE name = '$username'
AND password = '$password'
vs
Efficiency
vs
Throughput
vs
Latency
is
https://blog.kissmetrics.com/loading-time/
http://searchengineland.com/google-now-counts-site-speed-as-ranking-factor-39708
https://aerotwist.com/blog/the-cost-of-frameworks/
if you're huge
if you're dumb
is another type of speed
Trade storage for speed. Always.
Globals
function foo(x) {
return whereDidThisComeFrom + x
}
function foo(x, god) {
return god.universe.random.thing + x
}
function foo(a,b,doSpecialCase,leapYear,isPrime,isTuesday) {
...
}
function foo(a,b,options) {
...
}
instead
And so does documentation.
Make the intern do it
Having any pattern is better than not having a pattern
DRY = Don't Repeat Yourself
Build a tool, not a contraption
is a bullshit term.
These are the hardest skills.
Building software is easy, finishing software on time is hard.
"people will forget what you said,
people will forget what you did,
but people will never forget
how you made them feel."
Maya Angelou
http://blog.ycombinator.com/yc-stats
http://sel.do/sleep
"Hey, you guys need any Cold Fusion done?"
How to find and get a job (by @jewelia)
http://sel.do/findjobs
How to interview other people:
http://sel.do/interviewing
by ganging up
Holy crap it seemed like he would never shut up
Now would be good time to follow me on Twitter!
@seldo