SlideShare une entreprise Scribd logo
1  sur  35
Stuff you need Preamble:Ruby or go home For Ruby Sinatra http://www.sinatrarb.com/ Ruby on Rails http://www.rubyonrails.org For PHP Junior http://github.com/madpilot/junior The World’s smallest PHP Framework† + Apache (with mod_rewrite) † Probably...
The Setup Junior:World’s smallest PHP framework You will need: A web server that supports URL rewrites PHP 4 (5 is better)
The Setup Junior:The guts You will need: A web server that supports URL rewrites PHP 4 (5 is better)
Friendly URLS Lesson 1: Make your URLs nicer You will need: A web server that supports URL rewrites
Friendly URLS Lesson 1: Make your URLs nicer You will need: A web server that supports URL rewrites
Tags and Abstracts Lesson 2: Dynamic Redirects Moving stuff around? Most would use .htaccess – not happiness Store from URLS and to URS Redirect with 301 Permanent Bask in Google love
Tags and Abstracts Lesson 2: Dynamic Redirects
Tags and Abstracts Lesson 2: Dynamic Redirects
Tags and Abstracts Lesson 3: Auto generate tags and descriptions Google might not care about meta tags anymore, but some sites do. Also useful for internal search...
Tags and Abstracts Lesson 3: Auto generate tags In five easy steps Strip out all the HTML and non-alpha characters Split the all the text into tokens (single words) Strip out common words (stop words) Count the frequency of the remaining words Return the top 10 (or whatever)
Tags and Abstracts Lesson 3: Auto generate tags You will need: A list of stop words
Tags and Abstracts Lesson 3: Auto generate tags You will need: A list of stop words
Tags and Abstracts Lesson 4: Auto generate abstract Most users will just use the first paragraph for descriptions – let’s do it for them Find as many paragraphs as you can, without going over the word count. OR Find as many sentences in the first paragraph as you can, without going over the word count OR Find as many works in the first sentence as you can without going over the word count (and add a ellipses) OR Truncate the world’s longest word (and add a ellipses)
Tags and Abstracts Lesson 4: Auto generate abstract You will need: PHP + Tidy Plugin or Ruby + Nokogiri
Tags and Abstracts Lesson 4: Auto generate abstract You will need: PHP + Tidy Plugin or Ruby + Nokogiri
Search Lesson 5: Adding Search You will need: MySQL with MyISAM or acts_as_indexplugin
Search Lesson 5: Adding Search MySQL has full text search: CREATE TABLE `searches` (   `id` int(11) unsigned NOT NULL auto_increment,   `title` varchar(255) default NULL,   `abstract` varchar(255) default NULL,   `copy` text,   `keywords` varchar(255) default NULL,   `permalink` varchar(255) default NULL,   `entry_id` int(11) default NULL,   `entry_type` varchar(255) default NULL,   `created` datetime default NULL,   `modified` datetime default NULL,   PRIMARY KEY  (`id`), FULLTEXT KEY `title` (`title`,`copy`,`keywords`) ) ENGINE=MyISAM You will need: MySQL with MyISAM or acts_as_indexplugin
Search Lesson 5: Adding Search You will need: MySQL with MyISAM or acts_as_indexplugin
Search Lesson 5: Adding Search acts_as_indexed :fields => [ :title, :body, :generate_keywords ] You will need: MySQL with MyISAM or acts_as_indexplugin
Did you mean? Lesson 6: Did you mean? Correct misspelled search terms Split the term into tokens (on spaces) Spell check each token If it is wrong, show the correction Make the corrected string a link You will need: PHP + Pspell or Ruby + raspell
Did you mean? Lesson 6: Did you mean? You will need: PHP + Pspell or Ruby + raspell
Did you mean? Lesson 6: Did you mean? You will need: PHP + Pspell or Ruby + raspell
Clean up Lesson 7: Cleaning up user HTML First thing clients do: Write their copy in Word, then paste it in You tell the client not to cut-and-paste word documents The second thing the client does: Write their copy in Word, then paste it in... Also, RTE’s produce bad code, and each produces different bad code. You will need: PHP + Tidy/HTMLPurify or Ruby + sanitize
Clean up Lesson 7: Cleaning up user HTML You will need: PHP + Tidy/HTMLPurify or Ruby + sanitize
Clean up Lesson 7: Cleaning up user HTML You will need: PHP + Tidy/HTMLPurify or Ruby + sanitize
Shpelling Lesson 8: TinyMCE Spell check This is a TinyMCEplugin. Just need to define two JSON endpoints, and use the same library from the “Did you mean” section You will need: TinyMCE + Pspell or raspell
Shpelling Lesson 8: TinyMCE Spell check You will need: TinyMCE + Pspell or raspell
Shpelling Lesson 8: TinyMCE Spell check You will need: TinyMCE + Pspell or raspell
Uploader Lesson 8: File Uploader Why are they so HARD!? It’s 2009 for god’s sake... There is an apache module. Not so good for shared servers, but it works. You can use a jqueryplugin, to turn normal uploaders into better uploaders Oh, if any Adobe people are here: SORT FLASH UPLOADERS OUT. Also. If there is any W3C people here: LET ME UPLOAD USING AJAX. You will need: mod_upload_progress Some jquerymagic AND NOT PHP
Uploader Caveat: PHP has not happiness You CAN use the APC. It’s pretty flaky. The shared memory fills up, and it breaks. #balls You will need: APC PECL module A lot of patience
Uploader Lesson 8: File Uploader You will need: mod_upload_progress Some jquery magic
Uploader Lesson 8: File Uploader You will need: mod_upload_progress Some jquery magic
Uploader Lesson 8: File Uploader You will need: mod_upload_progress Some jquery magic
Links Sinatra:http://www.sinatrarb.com Junior:http://www.github.com/madpilot/junior Apache Uploader: http://github.com/drogus/apache-upload-progress-module TinyMCESpellchecker for Rails: http://github.com/madpilot/tinymce_spellcheck Acts as Indexed: http://github.com/dougal/acts_as_indexed HTMLPurifier: http://htmlpurifier.org/ Sanitize: http://wonko.com/post/sanitize

Contenu connexe

Tendances

Top 100 PHP Questions and Answers
Top 100 PHP Questions and AnswersTop 100 PHP Questions and Answers
Top 100 PHP Questions and Answers
iimjobs and hirist
 
Introduction to Web Architecture
Introduction to Web ArchitectureIntroduction to Web Architecture
Introduction to Web Architecture
Chamnap Chhorn
 
Webmatrixppt
WebmatrixpptWebmatrixppt
Webmatrixppt
yuvaraj72
 
handout_further_resources
handout_further_resourceshandout_further_resources
handout_further_resources
tutorialsruby
 

Tendances (17)

Top 100 PHP Questions and Answers
Top 100 PHP Questions and AnswersTop 100 PHP Questions and Answers
Top 100 PHP Questions and Answers
 
Introduction to Web Architecture
Introduction to Web ArchitectureIntroduction to Web Architecture
Introduction to Web Architecture
 
Your website is only as safe as your last good backup
Your website is only as safe as your last good backupYour website is only as safe as your last good backup
Your website is only as safe as your last good backup
 
Webmatrixppt
WebmatrixpptWebmatrixppt
Webmatrixppt
 
Tf ffccjs
Tf ffccjsTf ffccjs
Tf ffccjs
 
"Ensuring chances of theme acceptance in wordpress.org directory" on WordCamp...
"Ensuring chances of theme acceptance in wordpress.org directory" on WordCamp..."Ensuring chances of theme acceptance in wordpress.org directory" on WordCamp...
"Ensuring chances of theme acceptance in wordpress.org directory" on WordCamp...
 
Online publishing with wordpress(installation)
Online publishing with wordpress(installation)Online publishing with wordpress(installation)
Online publishing with wordpress(installation)
 
Tf frccjs
Tf frccjsTf frccjs
Tf frccjs
 
Tf ffccjs
Tf   ffccjsTf   ffccjs
Tf ffccjs
 
Joomla Extreme Performance
Joomla Extreme PerformanceJoomla Extreme Performance
Joomla Extreme Performance
 
Web application intro
Web application introWeb application intro
Web application intro
 
How to install word press on local server
How to install word press on local serverHow to install word press on local server
How to install word press on local server
 
Tf ffccjs
Tf ffccjsTf ffccjs
Tf ffccjs
 
How to Win Friends and Influence WordPress Core
How to Win Friends and Influence WordPress CoreHow to Win Friends and Influence WordPress Core
How to Win Friends and Influence WordPress Core
 
seopler.com Sample Website Audit Report
seopler.com Sample Website Audit Reportseopler.com Sample Website Audit Report
seopler.com Sample Website Audit Report
 
handout_further_resources
handout_further_resourceshandout_further_resources
handout_further_resources
 
Hosting
HostingHosting
Hosting
 

En vedette (8)

Website Strategy Formal Report Presentation
Website Strategy Formal Report PresentationWebsite Strategy Formal Report Presentation
Website Strategy Formal Report Presentation
 
Recommendations for your school center website
Recommendations for your school center websiteRecommendations for your school center website
Recommendations for your school center website
 
Getting Schooled — Building Your School Website in WordPress
Getting Schooled — Building Your School Website in WordPressGetting Schooled — Building Your School Website in WordPress
Getting Schooled — Building Your School Website in WordPress
 
Media Production - Planning
Media Production - PlanningMedia Production - Planning
Media Production - Planning
 
School of Education Website Recommendations_Garrison
School of Education Website Recommendations_GarrisonSchool of Education Website Recommendations_Garrison
School of Education Website Recommendations_Garrison
 
School Website Development Presentation
School Website Development  PresentationSchool Website Development  Presentation
School Website Development Presentation
 
Website Design Business Plan
Website Design Business PlanWebsite Design Business Plan
Website Design Business Plan
 
Business plan for a web design company
Business plan for a web design companyBusiness plan for a web design company
Business plan for a web design company
 

Similaire à Stuff They Never Taught You At Website School

Winter%200405%20-%20Beginning%20PHP
Winter%200405%20-%20Beginning%20PHPWinter%200405%20-%20Beginning%20PHP
Winter%200405%20-%20Beginning%20PHP
tutorialsruby
 
Winter%200405%20-%20Beginning%20PHP
Winter%200405%20-%20Beginning%20PHPWinter%200405%20-%20Beginning%20PHP
Winter%200405%20-%20Beginning%20PHP
tutorialsruby
 
oop_in_php_tutorial_for_killerphp.com
oop_in_php_tutorial_for_killerphp.comoop_in_php_tutorial_for_killerphp.com
oop_in_php_tutorial_for_killerphp.com
tutorialsruby
 
oop_in_php_tutorial_for_killerphp.com
oop_in_php_tutorial_for_killerphp.comoop_in_php_tutorial_for_killerphp.com
oop_in_php_tutorial_for_killerphp.com
tutorialsruby
 
Oop in php_tutorial_for_killerphp.com
Oop in php_tutorial_for_killerphp.comOop in php_tutorial_for_killerphp.com
Oop in php_tutorial_for_killerphp.com
ayandoesnotemail
 
Article 01 What Is Php
Article 01   What Is PhpArticle 01   What Is Php
Article 01 What Is Php
drperl
 
PHP Basics Ebook
PHP Basics EbookPHP Basics Ebook
PHP Basics Ebook
Swanand Pol
 

Similaire à Stuff They Never Taught You At Website School (20)

Php mysql-training online-by_php2ranjan
Php mysql-training online-by_php2ranjanPhp mysql-training online-by_php2ranjan
Php mysql-training online-by_php2ranjan
 
php training in hyderabad
php training in hyderabadphp training in hyderabad
php training in hyderabad
 
Winter%200405%20-%20Beginning%20PHP
Winter%200405%20-%20Beginning%20PHPWinter%200405%20-%20Beginning%20PHP
Winter%200405%20-%20Beginning%20PHP
 
Winter%200405%20-%20Beginning%20PHP
Winter%200405%20-%20Beginning%20PHPWinter%200405%20-%20Beginning%20PHP
Winter%200405%20-%20Beginning%20PHP
 
oop_in_php_tutorial_for_killerphp.com
oop_in_php_tutorial_for_killerphp.comoop_in_php_tutorial_for_killerphp.com
oop_in_php_tutorial_for_killerphp.com
 
oop_in_php_tutorial_for_killerphp.com
oop_in_php_tutorial_for_killerphp.comoop_in_php_tutorial_for_killerphp.com
oop_in_php_tutorial_for_killerphp.com
 
Oop in php_tutorial_for_killerphp.com
Oop in php_tutorial_for_killerphp.comOop in php_tutorial_for_killerphp.com
Oop in php_tutorial_for_killerphp.com
 
Oop in php tutorial
Oop in php tutorialOop in php tutorial
Oop in php tutorial
 
Article 01 What Is Php
Article 01   What Is PhpArticle 01   What Is Php
Article 01 What Is Php
 
Current state-of-php
Current state-of-phpCurrent state-of-php
Current state-of-php
 
Don't Fear the Custom Theme: How to build a custom WordPress theme with only ...
Don't Fear the Custom Theme: How to build a custom WordPress theme with only ...Don't Fear the Custom Theme: How to build a custom WordPress theme with only ...
Don't Fear the Custom Theme: How to build a custom WordPress theme with only ...
 
PHP Basics Ebook
PHP Basics EbookPHP Basics Ebook
PHP Basics Ebook
 
phptutorial
phptutorialphptutorial
phptutorial
 
phptutorial
phptutorialphptutorial
phptutorial
 
PHP Variables & Comments 01
PHP Variables & Comments 01PHP Variables & Comments 01
PHP Variables & Comments 01
 
<?php + WordPress
<?php + WordPress<?php + WordPress
<?php + WordPress
 
Lesson 01
Lesson 01Lesson 01
Lesson 01
 
100 PHP question and answer
100 PHP  question and answer100 PHP  question and answer
100 PHP question and answer
 
An SEO’s Intro to Web Dev PHP
An SEO’s Intro to Web Dev PHPAn SEO’s Intro to Web Dev PHP
An SEO’s Intro to Web Dev PHP
 
Php Interview Questions
Php Interview QuestionsPhp Interview Questions
Php Interview Questions
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Dernier (20)

Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 

Stuff They Never Taught You At Website School

  • 1.
  • 2. Stuff you need Preamble:Ruby or go home For Ruby Sinatra http://www.sinatrarb.com/ Ruby on Rails http://www.rubyonrails.org For PHP Junior http://github.com/madpilot/junior The World’s smallest PHP Framework† + Apache (with mod_rewrite) † Probably...
  • 3. The Setup Junior:World’s smallest PHP framework You will need: A web server that supports URL rewrites PHP 4 (5 is better)
  • 4. The Setup Junior:The guts You will need: A web server that supports URL rewrites PHP 4 (5 is better)
  • 5. Friendly URLS Lesson 1: Make your URLs nicer You will need: A web server that supports URL rewrites
  • 6. Friendly URLS Lesson 1: Make your URLs nicer You will need: A web server that supports URL rewrites
  • 7. Tags and Abstracts Lesson 2: Dynamic Redirects Moving stuff around? Most would use .htaccess – not happiness Store from URLS and to URS Redirect with 301 Permanent Bask in Google love
  • 8. Tags and Abstracts Lesson 2: Dynamic Redirects
  • 9. Tags and Abstracts Lesson 2: Dynamic Redirects
  • 10. Tags and Abstracts Lesson 3: Auto generate tags and descriptions Google might not care about meta tags anymore, but some sites do. Also useful for internal search...
  • 11. Tags and Abstracts Lesson 3: Auto generate tags In five easy steps Strip out all the HTML and non-alpha characters Split the all the text into tokens (single words) Strip out common words (stop words) Count the frequency of the remaining words Return the top 10 (or whatever)
  • 12. Tags and Abstracts Lesson 3: Auto generate tags You will need: A list of stop words
  • 13. Tags and Abstracts Lesson 3: Auto generate tags You will need: A list of stop words
  • 14. Tags and Abstracts Lesson 4: Auto generate abstract Most users will just use the first paragraph for descriptions – let’s do it for them Find as many paragraphs as you can, without going over the word count. OR Find as many sentences in the first paragraph as you can, without going over the word count OR Find as many works in the first sentence as you can without going over the word count (and add a ellipses) OR Truncate the world’s longest word (and add a ellipses)
  • 15. Tags and Abstracts Lesson 4: Auto generate abstract You will need: PHP + Tidy Plugin or Ruby + Nokogiri
  • 16. Tags and Abstracts Lesson 4: Auto generate abstract You will need: PHP + Tidy Plugin or Ruby + Nokogiri
  • 17. Search Lesson 5: Adding Search You will need: MySQL with MyISAM or acts_as_indexplugin
  • 18. Search Lesson 5: Adding Search MySQL has full text search: CREATE TABLE `searches` ( `id` int(11) unsigned NOT NULL auto_increment, `title` varchar(255) default NULL, `abstract` varchar(255) default NULL, `copy` text, `keywords` varchar(255) default NULL, `permalink` varchar(255) default NULL, `entry_id` int(11) default NULL, `entry_type` varchar(255) default NULL, `created` datetime default NULL, `modified` datetime default NULL, PRIMARY KEY (`id`), FULLTEXT KEY `title` (`title`,`copy`,`keywords`) ) ENGINE=MyISAM You will need: MySQL with MyISAM or acts_as_indexplugin
  • 19. Search Lesson 5: Adding Search You will need: MySQL with MyISAM or acts_as_indexplugin
  • 20. Search Lesson 5: Adding Search acts_as_indexed :fields => [ :title, :body, :generate_keywords ] You will need: MySQL with MyISAM or acts_as_indexplugin
  • 21. Did you mean? Lesson 6: Did you mean? Correct misspelled search terms Split the term into tokens (on spaces) Spell check each token If it is wrong, show the correction Make the corrected string a link You will need: PHP + Pspell or Ruby + raspell
  • 22. Did you mean? Lesson 6: Did you mean? You will need: PHP + Pspell or Ruby + raspell
  • 23. Did you mean? Lesson 6: Did you mean? You will need: PHP + Pspell or Ruby + raspell
  • 24. Clean up Lesson 7: Cleaning up user HTML First thing clients do: Write their copy in Word, then paste it in You tell the client not to cut-and-paste word documents The second thing the client does: Write their copy in Word, then paste it in... Also, RTE’s produce bad code, and each produces different bad code. You will need: PHP + Tidy/HTMLPurify or Ruby + sanitize
  • 25. Clean up Lesson 7: Cleaning up user HTML You will need: PHP + Tidy/HTMLPurify or Ruby + sanitize
  • 26. Clean up Lesson 7: Cleaning up user HTML You will need: PHP + Tidy/HTMLPurify or Ruby + sanitize
  • 27. Shpelling Lesson 8: TinyMCE Spell check This is a TinyMCEplugin. Just need to define two JSON endpoints, and use the same library from the “Did you mean” section You will need: TinyMCE + Pspell or raspell
  • 28. Shpelling Lesson 8: TinyMCE Spell check You will need: TinyMCE + Pspell or raspell
  • 29. Shpelling Lesson 8: TinyMCE Spell check You will need: TinyMCE + Pspell or raspell
  • 30. Uploader Lesson 8: File Uploader Why are they so HARD!? It’s 2009 for god’s sake... There is an apache module. Not so good for shared servers, but it works. You can use a jqueryplugin, to turn normal uploaders into better uploaders Oh, if any Adobe people are here: SORT FLASH UPLOADERS OUT. Also. If there is any W3C people here: LET ME UPLOAD USING AJAX. You will need: mod_upload_progress Some jquerymagic AND NOT PHP
  • 31. Uploader Caveat: PHP has not happiness You CAN use the APC. It’s pretty flaky. The shared memory fills up, and it breaks. #balls You will need: APC PECL module A lot of patience
  • 32. Uploader Lesson 8: File Uploader You will need: mod_upload_progress Some jquery magic
  • 33. Uploader Lesson 8: File Uploader You will need: mod_upload_progress Some jquery magic
  • 34. Uploader Lesson 8: File Uploader You will need: mod_upload_progress Some jquery magic
  • 35. Links Sinatra:http://www.sinatrarb.com Junior:http://www.github.com/madpilot/junior Apache Uploader: http://github.com/drogus/apache-upload-progress-module TinyMCESpellchecker for Rails: http://github.com/madpilot/tinymce_spellcheck Acts as Indexed: http://github.com/dougal/acts_as_indexed HTMLPurifier: http://htmlpurifier.org/ Sanitize: http://wonko.com/post/sanitize