SlideShare ist ein Scribd-Unternehmen logo
1 von 53
Downloaden Sie, um offline zu lesen
Become a Productive
Front-End Developer…

           &    Continue to be one



                        Trevor Davis
Hi, I’m Trevor Davis.

I’m a Front-End Developer at Matrix Group in Alexandria, VA
Today’s agenda

1. My path through web development
2. How to become a successful Front-End Developer
3. Questions throughout
How did I get here?

By learning “everything”
High school

‣ Went to Georgetown Prep in Rockville
‣ C++ classes
‣ Summers & winters at Montgomery County Government
   ‣ User support
   ‣ Web intern
College

‣ Went to Dickinson College in Pennsylvania
‣ Knew I wanted to do something with computers
‣ Majored in Computer Science
‣ Worked breaks from school at Montgomery County Government
‣ Thought I wanted to go to grad school
‣ First real HTML/CSS exposure: Senior internship & project
Internship - Harrisburg Horizon
Senior Project - The College Forecast

‣ Social networking site for
  College Musicians

‣ PHP/MySQL
Ok, now what?

How do I get a job?
Build a Portfolio

‣ College cheerleading site for girlfriend
‣ Portfolio for mom’s friend who is a makeup artist
‣ Scoured Craigslist for small projects and full time jobs
‣ Ended up at Matrix Group
My role at Matrix Group

‣ Slicing sites
‣ Regular updates
‣ Implementations
‣ Mild programming
‣ The “glue” that holds everything together
Our process

Information
               Design
Architecture

               Slicing   Implementation


                          Programming


                                   Completed Website
Questions so far?
It all starts with the structure

Would you build a house without a foundation?
Don’t touch that CSS!

‣ Always start with the HTML
‣ CSS with bad HTML is worthless
‣ “CSS doesn’t care which element is doing what, an element is an
  element” - Eric Meyer
‣ Once you have a solid foundation, then you should add the style
  and the behavioral level
   ‣ jQuery is amazing
How do you define “good” HTML

‣ It’s a craft
‣ Semantic (in naming too)
‣ Clear & Concise
‣ Avoid classitis and divitis
    ‣ Use descendant selectors
    ‣ Simple Example
Let the web be the web

Otherwise, you’re wasting your time
Let the web be the web

‣ The web is constantly evolving
‣ Don’t waste time trying to get everything to look exactly the same
  in all browsers
‣ Do you think end users are going to open your site in 2 browsers
  to compare?
Stay organized

Your time is money
Find a system that works

‣ Folder structure
    ‣ files, images, includes, scripts, stylesheets
‣ Start with a “framework”
‣ Comments in CSS
‣ Alphabetize CSS properties
‣ Single line vs. multi-line CSS
‣ Find what works for you
NETTUTS article

‣ Reset
‣ Alphabetize
‣ Organization
‣ Consistency
‣ Start in the right place
‣ http://net.tutsplus.com/tutorials/5-tips-to-writing-better-css/
Utilize available tools

There is so much awesome free stuff
Content Management Systems

‣ ExpressionEngine Core
‣ WordPress
‣ Joomla
‣ Drupal
‣ Textpattern
Frameworks

‣ Django
‣ Ruby on Rails
‣ CakePHP
‣ CodeIgniter
‣ Blueprint CSS
‣ 960 Grid System
‣ JavaScript frameworks (jQuery, Prototype, MooTools, etc)
Avoid Hacks

Maintaining them will make your life hell
Code for the best, first

‣ Firefox, Safari & others first
‣ Then, use conditional comments for IE
‣ Code with the knowledge of what will break in IE
    ‣ Double margin bug
    ‣ Duplicate characters bug
Progressive enhancement

Create the best, for the best, but make it work everywhere
Most browsers move faster

‣ Take advantage of advanced selectors
‣ Just make sure that it’s non-essential to reading the content
‣ CSS itself is progressive enhancement
‣ Drop Cap Example
The content needs to work for all

‣ IE
‣ Screen readers
‣ People without JavaScript
‣ Resizable text (page zoom)
‣ Examine the site’s audience
‣ Drop Down Menu Example
Know how things work

Some things are simpler than you think
Learn how to create your own

‣ Ability to use someone else’s code is good
‣ Being able to create your own version to suit your needs is better
‣ Some plugins are ridiculously bloated
    ‣ Accordion, Tabs, Resets, Scrollers, etc
‣ Lightbox Example
‣ Accordion Example (UI)
Collaborate

It can only make you better
Collaboration is key

‣ Each discipline speaks different “languages”, and you can learn
  something new from everyone
‣ I learned so much from my fellow FEDs; I never would have
  gotten to where I am today
   ‣ Collaborate all the time during the day
‣ Network with others at events or online
Know how to do everything

Make yourself more valuable
Be a master of all trades

‣ Learn programming languages
    ‣ There is no reason for programmers to code simple things
      like email forms
‣ Take design classes
    ‣ Designers aren’t going to design every element for a site
‣ While it’s great to be able to collaborate, it’s also awesome to
  “own” an entire site
Validation isn’t everything

Don’t live and die by it
Validation isn’t everything

‣ Validation is just a tool to help in building
‣ CSS is an immature language
‣ You should always strive to do everything as semantically as
  possible, but sometimes you can’t
    ‣ Image Replacement Example
‣ Sometimes you just need to get it done
Jeff Croft

‣ As such, “standards” will never appear on my priority list. When
  I’m working on a project, my priorities look something like this:
1. Create solutions that solve the client’s stated problems.
2. Find ways to achieve the client’s stated goals.
3. Find ways to solve problems the client doesn’t even know they
   have.
4. Use tools that are elegant and efficient, and help me produce
   quality work within the client’s budget and timeframe.
Jeff Croft

‣ Really, that’s about it. Notably missing from the list is: Use Web
  Standards (including established best practices).
‣ http://jeffcroft.com/blog/2007/aug/29/standards-web-
  standards-and-standardistas/
Experiment

How else would you learn?
Experiment

‣ If you think of an idea, try it
‣ Talk with others about it
‣ Post it on your site and get feedback
‣ Play, play, play
Investigate

Learn from how others have done it
Investigate

‣ I rarely go to a webpage and don’t look at the markup, CSS,
  JavaScript, etc.
   ‣ Firebug
   ‣ Web Developer Toolbar
   ‣ HTML Validator
‣ Think about how you would do things differently
Keep learning

Don’t fall behind
Keep learning

‣ Read Books
‣ RSS Feeds (96 feeds)
‣ Attend conferences
‣ Visit forums
‣ If you stop learning, it will pass you by; technology moves too fast
Enjoy the jobs you take

You’ll do better work when you are happy
Enjoy the jobs you take

‣ Do projects that you want to do
‣ Do something that will challenge yourself or expand your skillset
‣ You most likely won’t be a millionaire, so make sure you enjoy
  what you are doing
‣ Example of bad projects
   ‣ WordPress migration
   ‣ Online store customization
Be Passionate

‣ At my job: FEDs vs. Programmers
‣ Push the bar
‣ New technology
   ‣ ExpressionEngine project
Give back

Use your skills to make a difference
Give back

‣ Participate in forums
‣ Share knowledge through blog articles
‣ Create a website for a good cause
   ‣ Pro-bono
Questions?
Get in Touch with Me

‣ Online: http://trevordavis.net/
‣ Twitter: http://twitter.com/davist11
Thank You.

Weitere ähnliche Inhalte

Andere mochten auch

Processor organization & register organization
Processor organization & register organizationProcessor organization & register organization
Processor organization & register organizationGhanshyam Patel
 
PowerLogistics Asia 2013- " Contracts for Heavy Lift Shipping and Maritime Op...
PowerLogistics Asia 2013- " Contracts for Heavy Lift Shipping and Maritime Op...PowerLogistics Asia 2013- " Contracts for Heavy Lift Shipping and Maritime Op...
PowerLogistics Asia 2013- " Contracts for Heavy Lift Shipping and Maritime Op...PowerLift Events
 
Oct Dec 2010 Financial Services Industry Law updates
Oct Dec 2010 Financial Services Industry Law updatesOct Dec 2010 Financial Services Industry Law updates
Oct Dec 2010 Financial Services Industry Law updatesAndrei Burz-Pinzaru
 
PowerLogistics Asia 2014 - Navigating rough Seas: Challenges of Logistics in ...
PowerLogistics Asia 2014 - Navigating rough Seas: Challenges of Logistics in ...PowerLogistics Asia 2014 - Navigating rough Seas: Challenges of Logistics in ...
PowerLogistics Asia 2014 - Navigating rough Seas: Challenges of Logistics in ...PowerLift Events
 
Zarpar
ZarparZarpar
Zarparzarpar
 
IPAS: An ArcGIS Server-based framework for oil and gas E and P decision support
IPAS: An ArcGIS Server-based framework for oil and gas E and P decision supportIPAS: An ArcGIS Server-based framework for oil and gas E and P decision support
IPAS: An ArcGIS Server-based framework for oil and gas E and P decision supportChad Cooper
 
BIMCO Heavy Lift Contracts Workshop 2014
BIMCO Heavy Lift Contracts Workshop 2014BIMCO Heavy Lift Contracts Workshop 2014
BIMCO Heavy Lift Contracts Workshop 2014PowerLift Events
 
CENTRIFUGAL PUMP'S IMPELLER
CENTRIFUGAL PUMP'S IMPELLERCENTRIFUGAL PUMP'S IMPELLER
CENTRIFUGAL PUMP'S IMPELLERMorteza Davarnia
 
Marcel Zeestraten - Concept Engineer
Marcel Zeestraten - Concept EngineerMarcel Zeestraten - Concept Engineer
Marcel Zeestraten - Concept EngineerMarcel Zeestraten
 
Maximizing profits through facilities
Maximizing profits through facilities Maximizing profits through facilities
Maximizing profits through facilities Sarah Tamilarasan
 
hess UBS Global Oil and Gas Conference Presentation
hess UBS Global Oil and Gas Conference Presentationhess UBS Global Oil and Gas Conference Presentation
hess UBS Global Oil and Gas Conference Presentationfinance8
 
Freight and public transport planning initiatives conference 24 november 2011
Freight and public transport planning initiatives conference 24 november 2011Freight and public transport planning initiatives conference 24 november 2011
Freight and public transport planning initiatives conference 24 november 2011Engineers Australia
 
Library introduction for MBA Shipping & Logistics and Oil& Gas
Library introduction for MBA Shipping & Logistics and Oil& GasLibrary introduction for MBA Shipping & Logistics and Oil& Gas
Library introduction for MBA Shipping & Logistics and Oil& GasSandra_Celada
 
Connecting to the future: how transport will shape the City of Fremantle
Connecting to the future: how transport will shape the City of FremantleConnecting to the future: how transport will shape the City of Fremantle
Connecting to the future: how transport will shape the City of FremantleEngineers Australia
 
Trends in Energy Regulatory Law
Trends in Energy Regulatory LawTrends in Energy Regulatory Law
Trends in Energy Regulatory LawNow Dentons
 

Andere mochten auch (19)

Overpopulation in india
Overpopulation in indiaOverpopulation in india
Overpopulation in india
 
Processor organization & register organization
Processor organization & register organizationProcessor organization & register organization
Processor organization & register organization
 
PowerLogistics Asia 2013- " Contracts for Heavy Lift Shipping and Maritime Op...
PowerLogistics Asia 2013- " Contracts for Heavy Lift Shipping and Maritime Op...PowerLogistics Asia 2013- " Contracts for Heavy Lift Shipping and Maritime Op...
PowerLogistics Asia 2013- " Contracts for Heavy Lift Shipping and Maritime Op...
 
Oct Dec 2010 Financial Services Industry Law updates
Oct Dec 2010 Financial Services Industry Law updatesOct Dec 2010 Financial Services Industry Law updates
Oct Dec 2010 Financial Services Industry Law updates
 
PowerLogistics Asia 2014 - Navigating rough Seas: Challenges of Logistics in ...
PowerLogistics Asia 2014 - Navigating rough Seas: Challenges of Logistics in ...PowerLogistics Asia 2014 - Navigating rough Seas: Challenges of Logistics in ...
PowerLogistics Asia 2014 - Navigating rough Seas: Challenges of Logistics in ...
 
Zarpar
ZarparZarpar
Zarpar
 
IPAS: An ArcGIS Server-based framework for oil and gas E and P decision support
IPAS: An ArcGIS Server-based framework for oil and gas E and P decision supportIPAS: An ArcGIS Server-based framework for oil and gas E and P decision support
IPAS: An ArcGIS Server-based framework for oil and gas E and P decision support
 
BIMCO Heavy Lift Contracts Workshop 2014
BIMCO Heavy Lift Contracts Workshop 2014BIMCO Heavy Lift Contracts Workshop 2014
BIMCO Heavy Lift Contracts Workshop 2014
 
CENTRIFUGAL PUMP'S IMPELLER
CENTRIFUGAL PUMP'S IMPELLERCENTRIFUGAL PUMP'S IMPELLER
CENTRIFUGAL PUMP'S IMPELLER
 
Marcel Zeestraten - Concept Engineer
Marcel Zeestraten - Concept EngineerMarcel Zeestraten - Concept Engineer
Marcel Zeestraten - Concept Engineer
 
Maximizing profits through facilities
Maximizing profits through facilities Maximizing profits through facilities
Maximizing profits through facilities
 
H. S. Engineers, Noida, Acoustic Enclosure
H. S. Engineers, Noida, Acoustic EnclosureH. S. Engineers, Noida, Acoustic Enclosure
H. S. Engineers, Noida, Acoustic Enclosure
 
BA FS session 1
BA FS session 1BA FS session 1
BA FS session 1
 
hess UBS Global Oil and Gas Conference Presentation
hess UBS Global Oil and Gas Conference Presentationhess UBS Global Oil and Gas Conference Presentation
hess UBS Global Oil and Gas Conference Presentation
 
Freight and public transport planning initiatives conference 24 november 2011
Freight and public transport planning initiatives conference 24 november 2011Freight and public transport planning initiatives conference 24 november 2011
Freight and public transport planning initiatives conference 24 november 2011
 
Library introduction for MBA Shipping & Logistics and Oil& Gas
Library introduction for MBA Shipping & Logistics and Oil& GasLibrary introduction for MBA Shipping & Logistics and Oil& Gas
Library introduction for MBA Shipping & Logistics and Oil& Gas
 
Connecting to the future: how transport will shape the City of Fremantle
Connecting to the future: how transport will shape the City of FremantleConnecting to the future: how transport will shape the City of Fremantle
Connecting to the future: how transport will shape the City of Fremantle
 
Trends in Energy Regulatory Law
Trends in Energy Regulatory LawTrends in Energy Regulatory Law
Trends in Energy Regulatory Law
 
Feat flexible pipe
Feat flexible pipeFeat flexible pipe
Feat flexible pipe
 

Kürzlich hochgeladen

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 

Kürzlich hochgeladen (20)

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 

Become a Productive Front-End Developer & Continue to be one

  • 1. Become a Productive Front-End Developer… & Continue to be one Trevor Davis
  • 2. Hi, I’m Trevor Davis. I’m a Front-End Developer at Matrix Group in Alexandria, VA
  • 3. Today’s agenda 1. My path through web development 2. How to become a successful Front-End Developer 3. Questions throughout
  • 4. How did I get here? By learning “everything”
  • 5. High school ‣ Went to Georgetown Prep in Rockville ‣ C++ classes ‣ Summers & winters at Montgomery County Government ‣ User support ‣ Web intern
  • 6. College ‣ Went to Dickinson College in Pennsylvania ‣ Knew I wanted to do something with computers ‣ Majored in Computer Science ‣ Worked breaks from school at Montgomery County Government ‣ Thought I wanted to go to grad school ‣ First real HTML/CSS exposure: Senior internship & project
  • 8. Senior Project - The College Forecast ‣ Social networking site for College Musicians ‣ PHP/MySQL
  • 9. Ok, now what? How do I get a job?
  • 10. Build a Portfolio ‣ College cheerleading site for girlfriend ‣ Portfolio for mom’s friend who is a makeup artist ‣ Scoured Craigslist for small projects and full time jobs ‣ Ended up at Matrix Group
  • 11. My role at Matrix Group ‣ Slicing sites ‣ Regular updates ‣ Implementations ‣ Mild programming ‣ The “glue” that holds everything together
  • 12. Our process Information Design Architecture Slicing Implementation Programming Completed Website
  • 14. It all starts with the structure Would you build a house without a foundation?
  • 15. Don’t touch that CSS! ‣ Always start with the HTML ‣ CSS with bad HTML is worthless ‣ “CSS doesn’t care which element is doing what, an element is an element” - Eric Meyer ‣ Once you have a solid foundation, then you should add the style and the behavioral level ‣ jQuery is amazing
  • 16. How do you define “good” HTML ‣ It’s a craft ‣ Semantic (in naming too) ‣ Clear & Concise ‣ Avoid classitis and divitis ‣ Use descendant selectors ‣ Simple Example
  • 17. Let the web be the web Otherwise, you’re wasting your time
  • 18. Let the web be the web ‣ The web is constantly evolving ‣ Don’t waste time trying to get everything to look exactly the same in all browsers ‣ Do you think end users are going to open your site in 2 browsers to compare?
  • 20. Find a system that works ‣ Folder structure ‣ files, images, includes, scripts, stylesheets ‣ Start with a “framework” ‣ Comments in CSS ‣ Alphabetize CSS properties ‣ Single line vs. multi-line CSS ‣ Find what works for you
  • 21. NETTUTS article ‣ Reset ‣ Alphabetize ‣ Organization ‣ Consistency ‣ Start in the right place ‣ http://net.tutsplus.com/tutorials/5-tips-to-writing-better-css/
  • 22. Utilize available tools There is so much awesome free stuff
  • 23. Content Management Systems ‣ ExpressionEngine Core ‣ WordPress ‣ Joomla ‣ Drupal ‣ Textpattern
  • 24. Frameworks ‣ Django ‣ Ruby on Rails ‣ CakePHP ‣ CodeIgniter ‣ Blueprint CSS ‣ 960 Grid System ‣ JavaScript frameworks (jQuery, Prototype, MooTools, etc)
  • 25. Avoid Hacks Maintaining them will make your life hell
  • 26. Code for the best, first ‣ Firefox, Safari & others first ‣ Then, use conditional comments for IE ‣ Code with the knowledge of what will break in IE ‣ Double margin bug ‣ Duplicate characters bug
  • 27. Progressive enhancement Create the best, for the best, but make it work everywhere
  • 28. Most browsers move faster ‣ Take advantage of advanced selectors ‣ Just make sure that it’s non-essential to reading the content ‣ CSS itself is progressive enhancement ‣ Drop Cap Example
  • 29. The content needs to work for all ‣ IE ‣ Screen readers ‣ People without JavaScript ‣ Resizable text (page zoom) ‣ Examine the site’s audience ‣ Drop Down Menu Example
  • 30. Know how things work Some things are simpler than you think
  • 31. Learn how to create your own ‣ Ability to use someone else’s code is good ‣ Being able to create your own version to suit your needs is better ‣ Some plugins are ridiculously bloated ‣ Accordion, Tabs, Resets, Scrollers, etc ‣ Lightbox Example ‣ Accordion Example (UI)
  • 32. Collaborate It can only make you better
  • 33. Collaboration is key ‣ Each discipline speaks different “languages”, and you can learn something new from everyone ‣ I learned so much from my fellow FEDs; I never would have gotten to where I am today ‣ Collaborate all the time during the day ‣ Network with others at events or online
  • 34. Know how to do everything Make yourself more valuable
  • 35. Be a master of all trades ‣ Learn programming languages ‣ There is no reason for programmers to code simple things like email forms ‣ Take design classes ‣ Designers aren’t going to design every element for a site ‣ While it’s great to be able to collaborate, it’s also awesome to “own” an entire site
  • 37. Validation isn’t everything ‣ Validation is just a tool to help in building ‣ CSS is an immature language ‣ You should always strive to do everything as semantically as possible, but sometimes you can’t ‣ Image Replacement Example ‣ Sometimes you just need to get it done
  • 38. Jeff Croft ‣ As such, “standards” will never appear on my priority list. When I’m working on a project, my priorities look something like this: 1. Create solutions that solve the client’s stated problems. 2. Find ways to achieve the client’s stated goals. 3. Find ways to solve problems the client doesn’t even know they have. 4. Use tools that are elegant and efficient, and help me produce quality work within the client’s budget and timeframe.
  • 39. Jeff Croft ‣ Really, that’s about it. Notably missing from the list is: Use Web Standards (including established best practices). ‣ http://jeffcroft.com/blog/2007/aug/29/standards-web- standards-and-standardistas/
  • 41. Experiment ‣ If you think of an idea, try it ‣ Talk with others about it ‣ Post it on your site and get feedback ‣ Play, play, play
  • 42. Investigate Learn from how others have done it
  • 43. Investigate ‣ I rarely go to a webpage and don’t look at the markup, CSS, JavaScript, etc. ‣ Firebug ‣ Web Developer Toolbar ‣ HTML Validator ‣ Think about how you would do things differently
  • 45. Keep learning ‣ Read Books ‣ RSS Feeds (96 feeds) ‣ Attend conferences ‣ Visit forums ‣ If you stop learning, it will pass you by; technology moves too fast
  • 46. Enjoy the jobs you take You’ll do better work when you are happy
  • 47. Enjoy the jobs you take ‣ Do projects that you want to do ‣ Do something that will challenge yourself or expand your skillset ‣ You most likely won’t be a millionaire, so make sure you enjoy what you are doing ‣ Example of bad projects ‣ WordPress migration ‣ Online store customization
  • 48. Be Passionate ‣ At my job: FEDs vs. Programmers ‣ Push the bar ‣ New technology ‣ ExpressionEngine project
  • 49. Give back Use your skills to make a difference
  • 50. Give back ‣ Participate in forums ‣ Share knowledge through blog articles ‣ Create a website for a good cause ‣ Pro-bono
  • 52. Get in Touch with Me ‣ Online: http://trevordavis.net/ ‣ Twitter: http://twitter.com/davist11