Novice to pro
the journey of a self-taught web developer
2005
NOVICE
Willow springs
Yes, I know
how to build a website.
I have no idea
how to build a website.
clip art is better than this.
oh the humanity!
4 Evils
of Web Design
Tables
Inline CSS
Nested Tables
Spacer GIFs
Old School Tools
- Windows XP
- Dreamweaver MX 2004
- Misplaced Hope
95%
yak
shaving
Why the early struggles
Are important
- They make you love self-discovery
- They make you hate repeating yourself
- They make you explore the tools
Always ask “Is there a better way?”
2007
NOVICE
LitList
Whoa, programming!
- Login Forms
- Database Queries
- Pagination
- etc.
Still a lot of procedural code, though.
Experience is key
BUILD you OWN
WEB project
2008
APPRENTICE
New reality
- High volume of work
- Typo3 (unfamiliar CMS)
- Fringe OOP development
- Tons of content!
i coped by building websites with systems I could understand.
I was programming php
10 different ways
10 different methods
10 different projects
HTML/CSS
Basic PHP
Framework PHP
Solid PHP
Learning HTML/CSS
- Codeacademy
- Slice a Photoshop file into markup
- Practice, Practice, Practice
- Give praise for the death of IE6
“[HTML and CSS] are must-have in many 'non-technical' fields these days such as marketing, which is no longer just the realm of ad campaigns and press releases. Today's marketers must A/B test, optimize, analyze, develop landing pages and so much more.”
—Gregg Pollack, Founder of Code School
HTML/CSS
Basic PHP
Framework PHP
Solid PHP
Learning Basic php
- Codeacademy
- Tuts+ (tutsplus.com)
- Build your own site from scratch
- Practice, Practice, Practice
- Find a mentor
HTML/CSS
Basic PHP
Framework PHP
Solid PHP
FRAMEWORK php
- CodeIgniter
- CodeIgniter series on Tuts+
- Laravel
- Laracasts
Will help you learn OOP and
programming patterns like MVC.
$mysqli = new mysqli('localhost', 'root', 'password', 'test');
$query = $mysqli->query("SELECT * FROM users WHERE id = '1'");
while($row = $query->fetch_assoc()) {
print_r($row);
}
$query = $this->db->get('users')->where(id,1);
foreach ($query->result() as $row)
{
echo $row->name;
}
$user = User::find(1);
var_dump($user->name);
HTML/CSS
Basic PHP
Framework PHP
Solid PHP
SOLID PHP
- phptherightway.com
- Writing packages
- Name-spacing
- Using the PSR standards (FIG)
- Testing code (PHPUnit)
Culture of unit tested code
Unit testing is the process of looking for chunks of code that make for convenient “units” to which you can apply automated Unit Tests, small programs designed to verify low-level implementation details and detect coding errors early.
—Mike Bland
PHP in the Future
- Code bases will be groups of packages
- Tested code will be required
- CMSs will migrate to frameworks or PSR
- Development time is shorter
- Systems will be more stable
- Developers will write code the same way
never stop learning
Thank you!
@zvineyard
zacvineyard@gmail.com
Photos by Dima Viunnyk, Nikola Ostrun, Thomas Shahan
Novice to Pro
By zvineyard
Novice to Pro
- 3,060