Pragmatic Drupal Development John Fiala Developer.

Slides:



Advertisements
Similar presentations
(nothing to see here). First thing you need to learn is that sysadmin is about people, not technology If youre a sysadmin so you dont have to deal with.
Advertisements

Let’s Weeble…. Weebly: Features user-friendly drag and drop features Is versatile: you can blog, do slideshows and upload docs Is free Allows you to have.
Ways to Deal with Annoying People. Introduction Unfortunately, we can’t get along with everyone. And it’s a fact that throughout our life, we’ll be in.
1 Design and Integration: Part 1. 2 What’s a metaphor? Ward Cunningham cites George Lakoff’s book, Metaphors We Live By: Lakoff argues that the assumptions.
The easy way to a nice looking website design By a total non-designer (Me!)
Time Management.
10 June 2010 State Stats: Refreshing Reference With Drupal AJ Million, MoDOT Transportation Library.
1/30/11 Hacking your way through the Drupal API, a themers intro Baris Wanschers (BarisW)
Using Metadata Skills for a Course Inventory Lee Richardson Health Sciences Library University of North Carolina at Chapel Hill ALA Annual Conference June.
Nonprofit? There's an App for That! Drupal Modules for Activism, Donations and other Nonprofit #NYCCamp Benjamin J. Kallos iMediaEDGE
Web page management system Jonathan Millis Educational Design Resources NTID at RIT.
Semester Pathfinder-Maths-Student Feedback and Evaluation.
DrupalCon 2011: Feedback ENTICE meeting 8 April 2011 Silvia Tomanin DG-CO.
SAMPLE BUSINESS PLAN ICT, THAT IS SPECIALIZE WEB DEVELOPING.
New versions of Moodle Break existing plugins Sometimes a little Sometimes a lot How can you fix those plugins.
Drupal Basics May 30, 2012 By Sean Fitzpatrick. Sean Fitzpatrick | Welcome We're going to talk about Drupal We're going to keep it pretty.
Maximal D-segments Maximal-scoring No subsegment has higher score No segment properly containing the segment satisfies the above No supersegment has higher.
How To Get Involved In Open Source Nick Burch Senior Developer, Alfresco Software VP ConCom, ASF Member.
Views: From the Beginning John Fiala Twitter: jcfiala Vintage Digital.
Pros and Cons of Static or Dynamic Websites. As a website user, you may not bother if a site you visit is static or dynamic as it is a sheer backend functionality.
Prototype 3 Prototype 2 Prototype What is prototyping? Types of prototyping: – Evolutionary – Throw-away Good and Bad points to prototyping.
5 TH APRIL 2016 HANNAH SMITH Project Management tips and tricks for Wordpress projects.
PSD to Drupal Theme Conversion 1. Transforming your Ideas beyond Imagination Born in 2015, Pixel Perfect HTML creates and delivers interactive and responsive.
Which development environment/ language?
Company Meeting Title Presenter.
Maths – revision tips 1. Before you start revising, get all your notes sorted, and draw up a list of all the topics you need to cover. This serves two.
Solving Problems with the BPCH
Using this PowerPoint – remove this slide
UNIT 2 – CHAPTER 1 – LESSON 1 DIGITAL INFORMATION.
Using the Migrate Module for Fewer Headaches when Relaunching a Site
Time Management Welcome and introductions Housekeeping.
1. Welcome to Software Construction
POWERED BY parabolt.net.
Profiling for Performance in C++
Drupal Web page management system Jonathan Millis
AP CSP: Bytes, File Sizes, and Text Compression
Better Living through Extensions
Aliexpress Clone Script to Empower Your eCommerce Business
Taking an Iteration Down to Code
مهارات الاتصال الفعال2 اعداد د.حسين محمد أحمد عبد الباسط
to the Fort Worth Chamber’s Member Information Center
how to write good, fast, python
Install WordPress Premium Theme & Customization. Every developer knows that WordPress is a free content management system, such as a easy blogging tool.
Which slows more? Java or C++?
Optimizing Malloc and Free
Provide Real-Time Appointment Status & Improve Patient Satisfaction
Finding work experience can be a tricky business
FUTURE JOBS READERS Level 1-⑤ Asset Managers.
Geo 318 – Introduction to GIS Programming
The new online system for Calls for Proposals
Continuing Education Module
Welcome to <INSERT school name>’s
Listing Builder.
Importance of logs in custom development
DEBUGGING CS2110.
MAYBE GOD WANTS….
Preparing for an interview
A shift in the market is taking place.
Debugging Taken from notes by Dr. Neil Moore
The $100,000 a Year Local Online Business Blueprint
What are the popular tips to Build a Scalable Technology Stack.
“I am definitely going to take a course on time management…just as soon as I can work it into my schedule.” -Louis E. Boone.
Technology Use Expectations
PLANNING.
Welcome to Mountain View Elementary School!
The new, better way to crowdsource
Totara House Leaders Study Tips!.
How to set up PMO for any business project
The Impact of Peer Learning on Assessment Literacy and Feedback Orientation
Presentation transcript:

Pragmatic Drupal Development John Fiala Developer

Pragmatic? prag·mat·ic –adjective Also, prag·mat·i·cal ( for defs. 1, 2, 5 ). 1. of or pertaining to a practical point of view or practical considerations.

What makes a Pragmatic Programmer? ● Early adopter / Fast Adapter ● Inquisitive ● Critical Thinker ● Realistic ● Jack of all trades – Even developers need to know css, and themers need a little PHP

Care About Your Craft ● Don’t just DO Drupal. Live it. ● Contribute – Write Code – Write Documentation – Support / Help users in confusion – Present at Meetings – Help Run Meetings, Camps, Cons – Say Thank You

Think! About Your Work ● What are you doing? ● Why are you doing it that way? ● Why isn’t it working? ● Why is it working?

Don’t Write a New Module ● There are over 5,700 modules for Drupal 6, and over 1,700 for Drupal 7 ● If you need to do it, someone else already had to do it too. ● ● Look for drupal_alter(), module_implements(), module_invoke ● hook_form_alter

Use Views ● A big part of every site is lists of content on that site ● Views lets your client customize pages and blocks easily ● Views lets you set up the site quickly and makes you look good ● Worry about performance later unless obviously horrid

Avoid Premature Optimization ● Until you’ve got the site full of data and start using it, it’s very hard to figure out where it will be slow. ● So don’t – Do ‘good enough’ now, and fix the slow parts when they’re obviously slow. ● Don’t assume – use logging to see where the slow parts actually are.

Donald Knuth ● “Programmers waste enormous amounts of time thinking about, or worrying about, the speed of noncritical parts of their programs, and these attempts at efficiency actually have a strong negative impact when debugging and maintenance or considered. We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%”

Build your Drupal Knowledge Portfolio ● “An investment in knowledge always pays the best interest” – Benjamin Franklin ● New versions of Drupal are being developed ● New versions of modules and themes as well ● New modules that do things or simplify what you do ● Drush / Context / Features / Less

Let me be the 13,547 th person to recommend drush to you ● Just using ‘drush cc all’ during development of a site will save hours over the life of the project ● The more you use drush and get used to its features, the faster you work and the less time you’re delayed by waiting for the LAMP stack to respond ● And when the site is somehow borked, drush lets you fix it

Use Source Code Control ● Any project can go wrong. Code is deleted, you made a radical change to a routine and it didn't work, or you and Bob changed the same code at the same time. ● Or, god forbid, your laptop falls in Cherry Creek ● Use git, mercurial, svn, or even cvs ● Most can be used for free or no cost, and Drupal uses git so you might as well get used to it

Don't Code Alone ● If you're stuck on something for over 30 minutes, start looking for help.

Ask this friendly-looking Fellow

If He can't help - ask others ● Co-workers ● irc: freenode.net #drupal-colorado, #drupal- support, etc ● ● Webchat: ● Drupal.org Forums ● Google Search is your friend ● Twitter!

Automated Testing is Cool ● Simpletest ● Nailing down bits that work so they don't change by mistake

Learn Other Things ● Open Source works by Sharing - Help it Share! ● Wordpress ● Joomla ● Zend ● Other languages - Python/Django, Java/Spring

Questions/Objections? ?

Feedback / Contact John Fiala jcfiala on twitter jcfiala basically everywhere