Hello,

ZF conference (ZFConf 2010) will take place in Saint Petersburg
(Russia) at the end of March.
I am one of this event's organizers so I would like to discuss the
topics of the expected topics with you.

Our speakers are deeply interested in your feedback. On its basis they
can modify the content of their reviews.

For russian developers which are not aware of the event yet:
- http://www.zfconf.ru
- additional discussions on topics are available at the forum:
http://zendframework.ru/forum/index.php?topic=2281.0


Here is the list of the expected topics (see the detailed theses for
each of them below):
- Proposal Lifecycle
- Zend_Search_Lucene in the Details
- Performance of Zend Framework Applications
- Zend Framework and MVC, «Fat» Model
- Fotostrana.ru: Prototyping Project with Zend Framework
- Using Message Queues in Day-to-Day Projects (Zend_Queue)
- Zend Framework and Doctrine
- ZF and Multilingual
- History of e-Shtab.ru
- What News Zend Framework 2.0 Brings to Us?
- jQuery and Dojo Toolkit JavaScript-frameworks Integration with Zend Framework


=== Proposal Lifecycle ===
Alexander Veremyev (Zend Technologies, Zend Framework Core Developer)

This presentation is intended to describe Zend Framework proposal
lifecycle in details to give clear understanding of the steps required
to get proposal included into ZF.

It’ll touch on proposal lifecycle actors, proposal lifecycle
steps/proposal states, ZF repository areas created to support proposal
process and other things.
In addition to this some recommendations helping to promote your
proposal quickly will be given.


=== Zend_Search_Lucene in the Details ===
Alexander Veremyev (Zend Technologies, Zend Framework Core Developer)

Presentation gives a complete description of a Zend_Search_Lucene
full-text search component usage.

It’s oriented to new Zend_Search_Lucene users as well as to experienced users.

The following aspects will be described within presentation:

    * history of component creation;
    * component purpose;
    * index format details (including factors affecting performance);
    * indexing and indexing performance;
    * searching using queries and query construction API;
    * search results pagination.

Presentation also describes techniques of improving searching
performance for different modes of component usage.


=== Performance of Zend Framework Applications ===
Alexander Mahomet (ZendFramework.ru Community, Founder)

The main goal of this report is to show how certain techniques can
improve performance of applications that use Zend Framework. I will
create demo application and will apply these techniques to it. Plan of
report:

Problem definition:

    * Overview of demo application;
    * Overview of testing environment;
    * Overview of instruments for testing;
    * Overview of parameters we should test, measurements before testing.

Overview of techniques (after each item — new measurements):

    * Methods which are not directly connect to Zend Framework
(accelerators, setup of web server);
    * Deleting of require* from Zend Framework;
    * Joining of Zend Framework classes to one big file;
    * Autoloading and Zend_Loader;
    * Caching of objects (Zend_Config, Zend_Locale, Zend_Acl,
Zend_Navigation), caching of pages and blocks, caching results of
database queries, etc;
    * Memcache;
    * Recommendations from Zend Framework team;
    * How Zend_Server can help building high-load applications.

Comparison Zend Framework performance with other popular PHP frameworks.


=== Zend Framework and MVC, «Fat» Model ===
Alexander Steshenko (Norada Corporation, PHP programmer)

1. MVC pattern in details
    * Controller, View
    * Model is the application logic. Model isolation from other parts
of MVC triad
2. MVC implementation in Zend Framework
    * Zend_Controller_Action
    * Zend_Controller_Front
    * Zend_Controller_Dispatcher_Standard
    * Zend_Controller_Action_Helper_ViewRenderer
    * Zend_View
3. Thin / Fat Model
    * What is thin Model, why it does not fit MVC pattern, code samples
    * «Fat» model is every fragment of the application and the whole
application itself
    * Domain model
    * Most often used data access patterns and approaches for modeling
application objects
    * Code samples
    * Data access design patterns flexibility problems
    * Benefits of Data Mapper — data access decomposition, easy
refactoring of every part of the application
    * Service layer, code samples
4. General tips and advices
    * Automated testing
    * ORM tool
    * Good OOP, software design patterns


=== Fotostrana.ru: Prototyping Project with Zend Framework ===
Leonid Zhavoronkov (Fotostrana.ru, Teamlead)

The history about Zend Framework usage in highload-project (12M hits,
200K hosts):
    * Project's history and key features
    * Choice of ZF as a platform for a startup: benefits and drawbacks
    * Project's platform evolution
    * The current architecture of the project and plans for the future


=== Using Message Queues in Day-to-Day Projects (Zend_Queue) ===
Denis Baklikov (Obnovlenie, Web Developer)

1. What is message queues?
    * MQ history. JMS
    * Advantages of using message queues
    * Example usage of message queues. Bad examples
    * Messaging patterns
2. Zend_Queue overview
    * Interfaces overview
    * Adapters overview
    * Using different adapters. Best practices
          o array
          o db
          o mq server
    * Zend_Queue development. Next steps
3. MQ servers overview
    * List of MQ serves (main idea: show people large number of
servers they can use)
    * Features of messaging servers (ActiveMQ, MemcacheQ, ...)
4. Projects using message queues
    * Classic example — delayed emails sending
    * Real time statistics processing
    * Social networks. Image uploading example


=== Zend Framework and Doctrine ===
Stepan Tanasiychuk (Stfalcon.com Web Studio, Chief)

1. Connection of Doctrine to ZF project
    * I will show the examples of code
    * I will tell which options are responsible for what
2. Script for work with Doctrine_Cli
    * I will show an example of work with Doctrine Cli
    * I will tell how to create your task for Doctrine Cli
3. Generation models and mappers with yaml schemes. Inheritance. Migrations
    * I will show the example of some simple circuits with binding and
inheritance
    * I will show our inputs for the models'autogeneration in modular
application that correspond to standard coding of Zend Framework
4. Adapters for Zend_Paginator and Zend_Auth
    * I will tell how to work and to show code
5. Caching of query results
    * I will tell and show how to connect it and how to work with it


=== ZF and Multilingual ===
Stepan Tanasiychuk (Stfalcon.com Web Studio, Chief)

1. Adding language in the URL using a custome router (author —
Konstantin Yurevich), a standard router and hostname router. Pluses
and minuses of each approach
    * I will show an examples of routers and examples of simple applications
    * I will speak about pluses and minuses this routers in terms of SEO
2. Plugin or action helper to initialize translator
    * I will show code examples
3. Why gettext? Nuances and hacks in the implementation of
multilanguage through gettext
    * I will show how convenient to add gettext through poedit and
explain why I think other ways of localization inconvenient
    * I will tell you that we do to translate validators messages
4. Caching
    * I will show code examples


=== History of e-Shtab.ru ===
Anatoliy Larin (e-Legion, Web Developer)

Architecture:
    * Zend_Application, Zend_Config, Zend_Controller, Zend_Router
    * MySQL, Zend_Db_Select, Zend_Db_Table, Zend_Db_Row
      Table and Row have partly performed the Model role.
    * Smarty
      We gave up using PHTML because of its extreme flexibility,
posibility to change the data right in the template.
    * Zend_Feed, Zend_Pagination, Zend_Openid
Problems:
    * Smarty autoescaping
      The programmers' forgetfulness became a problem, we missed out
too many XSS holes.
      The problem was solved via patching the Smarty by adding
variables autoescaping functionality.
    * Console jobs
      Zend Framework does not provide instruments for creating console
tasks (crontab, management tasks).
    * A lot of problems related to character encodings
    * Unintuitive URL-Router (upside-down)
    * Error in long email subject in Russian
      We had to spend a few days, to solve the issue.
      http://framework.zend.com/issues/browse/ZF-1688 (07.07.07—18.01.09)
    * Notice, warning instead of Exceptions
      At first we paid no attention to them, which led to bad
consequences a few times.
      As a result, we haven't elaborated correct coding style, which
we got in other programming languages, where the bad-quality code is
denied by compiler / interpreter.
    * Reusability
      Few parts of code we were able to use again without a pain.
      A lot of things were created by copy'n'paste of existing code.


=== What News Zend Framework 2.0 Brings to Us? ===
Nadezhda Blinova (Wizartech, Web Programmer), Georgy Turevich
(Wizartech, Lead Web Programmer)

The following changes will be examined in the review:
    * Architectural \ Design Changes
    * MVC Implementation
    * Plugin Architectures
    * Other components (Zend_Acl, Zend_Controller,
Zend_Controller_Router, Zend_Form, Zend_Session, Zend_Soap, Zend_View,
Zend_Mail)
In the course of the review preparation the latest details will be
obtained from ZF developers.


=== jQuery and Dojo Toolkit JavaScript-frameworks Integration with
Zend Framework ===
Georgy Turevich (Wizartech, Lead Web Programmer)

During the presentation we will take a detailed look at different
aspects of the integration and examine some examples:
1.  ZF + jQuery and ZF + Dojo Toolkit features overview
2. jQuery
    * Setup jQuery Core and jQuery UI enviroments
    * Automation work with jQuery UI-components
    * Working with "autocompletion"
    * Zend_Form customization with jQuery UI
    * Looking to the future!
3.    Dojo Toolkit
    * Setup Dojo-enviroment
    * Automation with dijit's
    * Working with "autocompletion"
    * Zend_Form customization with Dijit
    * Generation of data in specialized format (dojo.data)
    * Automation Deployment Dojo Toolkit
    * Looking to the future!
4. Several practical demontstrations


Best Regards,
Georgy Turevich

Reply via email to