com presentations: Talk for Forum PHP: phphhvm-forum15.xml slides/mongodb/me.xml slides/mongodb/moving-target.xml slides/mongodb/new-current-status.xml
[email protected] (Derick Rethans) Fri, 20 Nov 2015 17:04:28 +0000
| Newsgroups | php.pres |
|---|---|
| Message-ID | <[email protected]> |
Commit: dbb7ae3d6c039b44dfb98428a20d6f3c10ccad95 Author: Derick Rethans <[email protected]> Fri, 20 Nov 2015 17:04:28 +0000 Parents: 2e26442d997ad7359b2e1d069494e187cf42bc2c Branches: master Link: http://git.php.net/?p=presentations.git;a=commitdiff;h=dbb7ae3d6c039b44dfb98428a20d6f3c10ccad95 Log: Talk for Forum PHP Changed paths: A phphhvm-forum15.xml M slides/mongodb/me.xml M slides/mongodb/moving-target.xml M slides/mongodb/new-current-status.xml Diff: diff --git a/phphhvm-forum15.xml b/phphhvm-forum15.xml new file mode 100644 index 0000000..f455512 --- /dev/null +++ b/phphhvm-forum15.xml @@ -0,0 +1,130 @@ +<?xml version="1.0" encoding="utf-8"?> +<presentation css="10gen-strict.css"> +<topic>MongoDB</topic> +<title>One Extension, Three Engines</title> +<event>Forum PHP</event> +<location>Paris, France</location> +<date>Oct 27th, 2015</date> +<speaker>Derick Rethans</speaker> +<email>[email protected]</email> +<twitter>derickr</twitter> +<url>http://derickrethans.nl/talks.html</url> +<joindin>http://joind.in/15252</joindin> +<slide>slides/mongodb/one-ext-two-engines.xml</slide> +<slide>slides/mongodb/me.xml</slide> + +<slide>slides/mongodb/1e2e-agenda.xml</slide> +<slide>slides/mongodb/1e3e-agenda.xml</slide> + +<!-- HISTORY of the DRIVER --> +first driver (0.8.4) april 2009 + - used resources and classes (for types code/date/id/regex/bindata only) + - only very basic crud operations: + static function_entry mongo_functions[] = { + PHP_FE( mongo_connect , NULL ) + PHP_FE( mongo_close , NULL ) + PHP_FE( mongo_remove , NULL ) + PHP_FE( mongo_query , NULL ) + PHP_FE( mongo_insert , NULL ) + PHP_FE( mongo_batch_insert , NULL ) + PHP_FE( mongo_update , NULL ) + PHP_FE( mongo_has_next , NULL ) + PHP_FE( mongo_next , NULL ) + PHP_FE( mongo_gridfs_init , NULL ) + PHP_FE( mongo_gridfs_store , NULL ) + PHP_FE( mongo_gridfile_write , NULL ) + {NULL, NULL, NULL} + - many existing functionality through PHP based classes + +jun 2012 - Hannes starts helping out properly +aug 2012 - merge in new connection handling (no more connection pools) 1.3.0alpha1 + - we start using sane branches with git +sep 2012 - jeremy starts doing the odd patches +nov 2012 - 1.3! + +<slide>slides/mongodb/driver-current-status.xml</slide> + +<!-- NEW GOALS --> + +- Easier to maintain +- Easier to prototype +- Support other engines without redoing it all + +<slide>slides/mongodb/new-driver-goals.xml</slide> + +<!-- THE ENGINES --> +<slide>slides/mongodb/the-engines.xml</slide> + +<!-- PHP 5 --> +<slide>slides/mongodb/engines-php5.xml</slide> + +<!-- HHVM --> +<slide>slides/mongodb/engines-hhvm.xml</slide> + +<!-- PHP 7 --> +<slide>slides/mongodb/engines-php7.xml</slide> + + +<!-- NEW ARCHITECTURE --> + +libbson, libmongoc, Hippo, Phongo and Phplib (flip?) +Other packages on top (GridFS) +Composer + +<slide>slides/mongodb/new-architecture.xml</slide> + +- MongoDB vs Mongo extension + +<slide>slides/mongodb/libbson.xml</slide> +<slide>slides/mongodb/libmongoc.xml</slide> + +<slide>slides/mongodb/phongo.xml</slide> +<slide>slides/mongodb/new-driver-bc2.xml</slide> +<slide>slides/mongodb/api-old.xml</slide> +<slide>slides/mongodb/api-new.xml</slide> + +<slide>slides/mongodb/hippo.xml</slide> +<slide>slides/mongodb/hippo-impl-def.xml</slide> +<slide>slides/mongodb/hippo-impl.xml</slide> +<slide>slides/mongodb/hippo-impl-2.xml</slide> +<slide>slides/mongodb/hippo-vs-phongo.xml</slide> + +<slide>slides/mongodb/api-new.xml</slide> +<slide>slides/mongodb/api-phongo.xml</slide> +<slide>slides/mongodb/api-hippo.xml</slide> +<slide>slides/mongodb/api-serialization-spec.xml</slide> + +- PHP 7... + +<slide>slides/mongodb/phongo-php5-7.xml</slide> + +<slide>slides/mongodb/phplib.xml</slide> +<slide>slides/mongodb/phplib-usage-2.xml</slide> + +<!-- ISSUES --> + +- APIs changing in Phongo meant that things had to be redone for Hippo +- Namespaces for drivers, exception and bson classes + +<slide>slides/mongodb/moving-target.xml</slide> + +HHVM is not mature, and certainly not documented. + +- Slow going, mention the hhvm cookbook +- issues with cursor and foreach iteration + +<slide>slides/mongodb/hhvm-maturity.xml</slide> + +<!-- CURRENT STATUS --> + +Phongo in alpha (0.6.3) +Hippo in pre-alpha (but you can do all basic ops) +phplib (as mongodb/mongodb) on packagist: https://packagist.org/packages/mongodb/mongodb (0.2.0) + +<slide>slides/mongodb/new-current-status.xml</slide> +<slide>slides/mongodb/new-still-to-do.xml</slide> + +<slide>slides/mongodb/resources.xml</slide> + + +</presentation> diff --git a/slides/mongodb/me.xml b/slides/mongodb/me.xml index 740c566..7d61a8b 100644 --- a/slides/mongodb/me.xml +++ b/slides/mongodb/me.xml @@ -9,6 +9,7 @@ <bullet>I'm Dutch/British living in London</bullet> <bullet>One of the PHP/HHVM MongoDB driver maintainers</bullet> <bullet>Author of the PHP debugger tool Xdebug, PHP's Date/Time/Timezone support, and a bunch of other PHP extensions</bullet> - <bullet>I ♥ maps</bullet> + <bullet>I ♥🌍 maps </bullet> + <bullet>I ♥🍺 beer </bullet> </list> </slide> diff --git a/slides/mongodb/moving-target.xml b/slides/mongodb/moving-target.xml index d46061e..d619bec 100644 --- a/slides/mongodb/moving-target.xml +++ b/slides/mongodb/moving-target.xml @@ -4,8 +4,7 @@ <image filename="moving-target.jpg" align="right" /> <list> -<bullet>Phongo is now nearly ready yet</bullet> -<bullet>The API is pretty much set in stone now</bullet> +<bullet>Phongo has been release as 1.0.0</bullet> <bullet>%MongoDB\Driver\RuntimeException% → %MongoDB\Driver\Exception\RuntimeException%</bullet> <bullet>Namespace "arguments":<br/>%MongoDB\BSON\Binary% vs. %BSON\Binary%</bullet> <bullet>Changes in result types:<br/>%CommandResult% and %QueryResult% → %Result%</bullet> diff --git a/slides/mongodb/new-current-status.xml b/slides/mongodb/new-current-status.xml index 1c42bd4..54c7dce 100644 --- a/slides/mongodb/new-current-status.xml +++ b/slides/mongodb/new-current-status.xml @@ -2,7 +2,7 @@ <title>Current status</title> <list> - <bullet>phongo has a release candidate<br/>%pecl install mongodb%</bullet> + <bullet>phongo has been released as 1.0.0<br/>%pecl install mongodb%</bullet> <bullet>hippo has a release candidate<br/>%https://github.com/mongodb-labs/mongo-hhvm-driver-prototype/releases/tag/1.0.0RC1%</bullet> <bullet>phplib in alpha state (1.0.0-alpha1)<br/>%https://packagist.org/packages/mongodb/mongodb%</bullet> </list>