#TYPO3camp Venlo 2016 \url{http://www.typo3campvenlo.nl/en/schedule/} Big data, smart machines and the changes it will cause in HR and the job market. - Han Stoffels \url{http://www.typo3campvenlo.nl/fileadmin/user\_upload/pdf/presentations\_2016/Big\_data\_smart\_machines\_changes\_HR\_Market.pdf} TYPO3 inc. - Alain Veuve \url{http://de.slideshare.net/electronicfastforward/typo3-inc-slides-for-typo3-camp-venlo-2016} Content Marketing for Online Shops - with TYPO3 - Boris Hinzer \url{http://de.slideshare.net/BorisHinzer/content-marketing-for-online-shops-like-magento-with-typo3} A PHP Journey - Jurian Janssen \url{https://github.com/Woeler} Composer \& Frameworks - Tobias Derksen \url{https://github.com/lukeelten} Building a TYPO3 website with composer - Ruud Silvrants \url{https://github.com/beechit/TYPO3\_Welcome} Easily review TYPO3 changes using TYPO3 Homestead and a Chrome extension - Michiel Roos \url{https://github.com/Tuurlijk/TYPO3.Homestead} Principles of software architecture - Gernot Schulmeister \url{http://de.slideshare.net/GernotSchulmeister/architecture-principles-in-relation-to-typo3} Security in web development - Helmut Hummel \url{https://speakerdeck.com/helhum/diary-of-a-hack} Theming in TYPO3 - Thomas Deuling \url{http://typo3-themes.org/} \url{http://docs.typo3-themes.org/} Ext commerce - TYPO3 shop - Sebastian Fischer \url{http://www.evoweb.de/fileadmin/presentation/commerce\_eap\_for7/#/} \url{http://blog.marketing-factory.de/typo3/camp-report-venlo-2016/} Doctrine DBAL - Morton Jonuschat \url{https://speakerdeck.com/yabawock/moving-typo3-cms-to-doctrine-dbal} Posts: Armin Vieweg: \url{https://www.facebook.com/notes/typo3-dce-extension/typo3-camp-venlo-2016-review/1695564650712330} DKD \url{http://blog.dkd.de/typo3camp-venlo-2016/} Photo's \url{https://www.flickr.com/photos/137609839@N02/sets/72157667314112450/} #TYPO3camp Venlo ##Intro by Edward ##Han Stoffels - Big Data Wacom Uk is the worstmarket Interview in Dubaisounded good Nothing heard aboutthe guy afterwards Our activities Technology Big DataSemantics Solve this with dataoutside Aima is a virtualcareer and recruitment assistant Job mobility and talent acquisition Labourmarket Sierlok is a bigdata detective for retrieval of stolen objects etc Insurance Domizz is a virtualreal estat agent for finding and buying property 8vance strategybuilding blocks Transformationbusiness models Old values New technologies bigdata Exponentialparadigms (faster better cheaper) Experience economy Transformationeconomy Profile that doesthe work for you Of looking for jobs Linear vsexponential value creation Traditionalmarketplaces The nextmarketplaces Expectation intechnology is rising Lots of technologiesfly out Innovation Trigger Peak of inflatedexpectations Through ofdislusionment Slope of enlightment Plateau ofproductivity The digital mesh IBM Watson can standthe turing test Big super computer Cog : Zahn TYPO3 ist startingto program itself A printer who canprint itself and repair itself Computer basedpersonality judgements are more reliable than those of humans Facebook reveils alot what someone does and feels How the people judgeother people All voted for thewinner of the election People with a bigmouth (man) seem to be more trustworthy 4th industrialrevolution Smart machinesprogram websites Smart machine makesmarter machines Job and skillsmismatch 87% not happy atwork Flexibilisation\& on demand workforce Half of current jobsdisappear Broad skillset 80 to 90% fixedstuff rest 20% Trend: 20% fixedstuff 24% activelyundermining the company Skills mismatch Automaticintelligent matching agent Automated talentscouting and matching on hard and soft skills Soft skills areignored Perfect team Expected recruiteradvantage More engaged becausethe match is better Talent advantage People overestimatethemselves (man, underestimate women) Neural algorithm Statistics Building a hypercube Expert system Vita is path throughthat cube What can i do, whathave i done, what want i do Aima in whatsappdoes not allow to use the interface Sources xing,linkedIn, data aggregation, interpretation of data, the profiles are alwaysoutdated Add competences tothe profile which are not explicit mentioned I ##Mattes - Future of TYPO3 * Customer needs * Easier access for community * Accesibility (core is ready - editors are not)\ People are afraidwhat they dont understand General topic Grow typo3 Help growing yourbusiness Spread the word A lot of satelites Increase visibility Make it easier andaccessibility Reduce entrybarriers Marketing solutions Hubspot Oracle Eloqua Marketing is notselling stuff but understanding your customer Central Reporting Channel monitoring Personalization Personalized content For differentchannels you need different content A/B tests Central reporting Accessibility We are done Editors are not Education Help the editorwhile creating the content Inline as you type SEO Same asaccessibility Improve settings Supply help Supply reports Content channels Multichannel RSSfeed Aida cruises typo3 Level on top oflanguages english mobile Visual augmentation Fallback chains Dedicated contentfor special channels Building system tohelp editors New rich text component CK editor Support contentediting Wizards (explain tothe editor what is going on) Unified lingo (inpop ups) Guided tours: user onboarding design Developers Reduce time tomarket Remove settings Ease technicalcomplexity Frontend developers had to understand typoscript Code migrations(automated) Automated fix of breaking changes Backend ConfigWizards DevOps Composer Composer,Composer Web based ComposerUI Extension Manager UI will be composer Upgrades on CommandLine University: 400Typo3 sites Installation on Command Line Simplify deployments ExtJS will be removed Typo3 Surf #TYPO3 INC #Alain Veuve Strategic approach Abusing business teampower our cause We did not grow as fast as the others NEOS somehow a failure Ensure development of the typo3 cms product at a pace that fits the demand of the market Structure has been very complicated Generate more money for the cause of TYPO3 Core Business Model:Revenue streams Partners:Integrators, Hosters, Consultants, Ad-Agencies Donations \& events We dont share code enough Collect money for an extension Different thing:code ready for production and a product Enterprise SLAs No project, but products and marketing organisation #Content Marketing #Boris Hinzer T3con Entering eCommercewith a new online shop The market Casino Dilemma More and morecompetitors hit the same market Throwing in more money in slot machines Content marketing Only a few content related solution TYPO3 for contentmarketing Magento in Typo3wrong approach Magento api does nothave that much speed Typo3 in magento Mage Unity Content in Magento Basic features Dynamically mergecontent inside in magento Title tag from typo3 Merged sitemaps Mixed dynamic navigations Fliesenmax Shop Templating generallydone in Magento Typo3 contenttemplating is done in typo3 Can use stylingsalready in magento Rise of killerfeature Use pagination for SEO and content marketing Title Tag and RealUrl changes within pagination The return of the filter options Also Filters with content marketing Magento Content in TYPO3 As add on 1000 keywords for fliesen max in the index oktober now 1500 Online value index Ranking on pages 300page 1 rankings Now 600 page 1rankings Hits and infrastructure raised At the moment magento and TYPO3 is on the same server Rule based content Shopping cart rules Male customer: youshow only male content Customer journey,magento shop information #**Sessions Saturday** **FE image rendering - Mattes - Sebastian Fischer** || PRO || CON data attr. JS replace || simple, browser support || JS files soutsrc set sout || || soutDebugging not goodsout <picture> || standard, , FallBack || Support in browser #***Deployment*** Peter Förger Ruby based solution for deployment used by DKD Shared folder for configuration One command possible but 4 steps is better to configure in stead of working on conventions. Composer based install because we live in composer world... Usable with any container vagrant or docker but also localhost etc Auto activate maintanance message to website user Clearing caches Then upload to releases Symlink to current Keeps last 5 releases Clears upcode caches Uses doctrine to check migration status And apply migrations Task removing inactive extentions in production Auto create extention folders if needed Clear cache again Swich off maintenance mode en set symlink And 3 times cache flush is not needed ;) A Concept for database and restoring database is hard To sync with local Download resources Dowload database but users are removed and databased are cleaned. To use fake files you can dump the files table and regenerate fake files. The deployment will be released on github Working title is dkdeploy it is an extend of capistrano 3.4 Is build up out of four ruby gems Todo State is documentation had to be completed. And dependencies in testing gems to dkd enviroment need to be removed Release should be this year TYPO3 surf has same concept But was not feature complete when dev started. Landrush plugin DNS forVagrant Simple cross-platform DNS that's visible onboth the guest and the host. Landrush spins up a small DNS server and redirectsDNS traffic from your VMs to use it, automatically registering/unregistering IPaddresses of guests as they come up and down. Capistrano **Capistrano** ist ein Open Source Werkzeug,um Skripte auf mehreren Servern laufen zu lassen. Sein Hauptzweck besteht inderSoftwareverteilung von Webapplikationen. Es automatisiert den Prozess der Erstellung einer neuen Applikation,die auf einem oder mehreren Webservern verfügbarist, einschließlich unterstützender Aufgaben wie Änderungen von Datenbanken Local deploymentuser Cap dev deploy todeploy with capistrano .htaccess fileshould be different on every node of deployment Developers see onwhich branch they work Typoscript:merge\_configs on every machine different root domains Clear the caches Capistrano bringsthe sources to the release folder Switches the symlinkto the newest release Clear opcode cache Doctrine for themigration status Never findphpmyadmin in production Remove inactive coreextension Create extensionfolder to write things to Dkdeploydocumentation Rubygems Dkdeploy core Dkdeploy php Dkdeploy cms Dkdeploy cucumber Dkdeploy test 4 years ago did notknow Ruby at all It is easy to learn Typo3 surf is acapistrano clone in php Complicated: whattask should run in which order for what #Database layer: Doctrine DBAL Doctrine DBAL Morton Jonuschat Database connectionhandling MySQL only Behaviour dependenton MySQL features Ext:dbal Not a first classcitizen Code is fucking ugly Multiple connectionsin parallel Remapping tablestonon default databases Mapping too longtables How to proceed Find\_in\_set uniquein mysql Solution Replace homegrown dbabstraction layer Remove dependency onadodb Replace mysqlspecific connection handling Architecture The players connectionPool Connection expressionBuilder Querybuilder queryContext QueryRestrictionBuilder expressionBuilderbuilds the where part queryBuilder: objectoriented interface Insert, select,update, delete, truncate Automatically takesquery context into account (enable fields) Not a magic bulletfor sql injection QueryRestrictionBuilder Automaticallyenabled in backend and frontend Builds constraintsfor select statements If you are usingExtbase: done* unless you use query statement getConnectionForTable($tableName) getQueryBuilderForTable($tableName) Postgres has foreigndata wrappers Create globals afterthe extension Values -> quotesfields Bitwise AND Aggregations (WIP)some need to be quoted others will not be quoted Database ConnectionHelpers Doctrine always workwith prepared statements fullQuoteStr() now User Input is justnot save Named Parameters PositionalParameters Use the Querybuilderas your preferred tool Use theExpressionBuilder to build your query conditions Composite Expression Add expression $constraint =$expressionBuilderAndX selectLiteral doesnot quote anything For 8 the api willstay the same Slides: \url{https://speakerdeck.com/yabawock/moving-typo3-cms-to-doctrine-dbal} #Fluid, ViewHelpers Helmut Hummel It is a quiz Fluid in javascript-> cross site scripting Rule 1 don't use inline javascript in fluid templates Use data Tags in order to expose fluid data to Javascript ViewHelperrenderChildren, content is escaped renderChildren: only variables are escaped Fluid does not escape variables Content ="{foo}" Second rule: never pass html to the children or the argument Chaining: {foo ->fs:escapingInterceptorEnabled} escaped {fs:escapingInterceptorEnabled(content:foo)} Not escaped {fs:escapingInterceptorEnabled(content:'{foo)}'} escaped InfluenceescapingBehaviour $escapeChildren =true $escapeOutput = true Is good for security <f:uri.pagepageUid="{page.uid}" addQueryString="1"> Now with additional security .format = json Json is not escaped E-Commerce in TYPO3 with EXT:commerce \url{http://www.evoweb.de/fileadmin/presentation/commerce\_eap\_for7/}
{}