SlideShare a Scribd company logo
1 of 307
Download to read offline
Perl 5.16 and Beyond



Friday, July 29, 11
Jesse Vincent



Friday, July 29, 11
Pumpking



Friday, July 29, 11
Former Perl 6
                      Project Manager


Friday, July 29, 11
What's a Pumpking?



Friday, July 29, 11
BDFL



Friday, July 29, 11
BDFL



Friday, July 29, 11
BDFL



Friday, July 29, 11
I make decisions



Friday, July 29, 11
Iā€™m a manager



Friday, July 29, 11
I donā€™t do ā€œreal workā€



Friday, July 29, 11
So, who makes Perl?



Friday, July 29, 11
Many awesome people



Friday, July 29, 11
I just stand around
                        looking pretty...


Friday, July 29, 11
...while other people do
                       awesome stuff


Friday, July 29, 11
Is your name in Perlā€™s
                         AUTHORS ļ¬le?


Friday, July 29, 11
Are you a
                      CPAN author?


Friday, July 29, 11
You rock
Friday, July 29, 11
You make Perl



Friday, July 29, 11
The Release Process



Friday, July 29, 11
Releases in the last
                       12-or-so months:


Friday, July 29, 11
5.12.2



Friday, July 29, 11
5.12.3



Friday, July 29, 11
5.12.4



Friday, July 29, 11
5.13.2



Friday, July 29, 11
5.13.3



Friday, July 29, 11
5.13.4



Friday, July 29, 11
5.13.5



Friday, July 29, 11
5.13.6



Friday, July 29, 11
5.13.7



Friday, July 29, 11
5.13.8



Friday, July 29, 11
5.13.9



Friday, July 29, 11
5.13.10



Friday, July 29, 11
5.13.11



Friday, July 29, 11
5.14.0



Friday, July 29, 11
5.14.1



Friday, July 29, 11
5.15.0



Friday, July 29, 11
5.15.1



Friday, July 29, 11
Perl 5.14.1 is the
                       current release
                          of Perl 5


Friday, July 29, 11
It came out 6ish
                          weeks ago


Friday, July 29, 11
As did Perl 5.12.4



Friday, July 29, 11
As did Perl 5.15.0



Friday, July 29, 11
It used to take us 3
                       weeks to prepare
                            a release


Friday, July 29, 11
And we made the
                      Pumpking do it


Friday, July 29, 11
Now it takes
                      less than a day


Friday, July 29, 11
The 43 step process is
                         documented


Friday, July 29, 11
Releases are still a
                      chore if you do them
                          every month


Friday, July 29, 11
Now we have rotating
                       release engineers


Friday, July 29, 11
Most of them are
                      new committers


Friday, July 29, 11
Nice side effect:
                       release engineers
                      need commit bits


Friday, July 29, 11
Since the move to git,
                      weā€™ve nearly doubled
                        our committer list


Friday, July 29, 11
The world hasnā€™t ended



Friday, July 29, 11
Some of those release
                      engineers have become
                       proliļ¬c contributors


Friday, July 29, 11
I just make decisions



Friday, July 29, 11
I try to get them right



Friday, July 29, 11
Sometimes
                      theyā€™re wrong


Friday, July 29, 11
I have a little
                       bit of cover


Friday, July 29, 11
Rule 1



Friday, July 29, 11
Larry is always right



Friday, July 29, 11
Rule 2



Friday, July 29, 11
Larry is allowed to
                       change his mind


Friday, July 29, 11
Iā€™m not Larry



Friday, July 29, 11
Iā€™m nowhere
                      near as clever


Friday, July 29, 11
My shirts are nowhere
                          near as loud


Friday, July 29, 11
At YAPC::NA, Larry
                       said that the time of
                      hero-pumpkings is over


Friday, July 29, 11
D



Friday, July 29, 11
Dictator



Friday, July 29, 11
Delegator



Friday, July 29, 11
Documenter



Friday, July 29, 11
Thankfully, Larryā€™s rules
                       set me up to succeed


Friday, July 29, 11
Rule 1 deļ¬nitely
                      doesnā€™t apply to
                      the Perl 5 runtime


Friday, July 29, 11
However



Friday, July 29, 11
The core needs more
                       support for Rule 2


Friday, July 29, 11
I havenā€™t heard this
                           in a while:


Friday, July 29, 11
Perl is Dead!



Friday, July 29, 11
What Iā€™ve been
                      hearing lately:


Friday, July 29, 11
Where are we going?



Friday, July 29, 11
Itā€™s changing too fast.
                       Can you slow down?


Friday, July 29, 11
You made regexes
                        crazier?$#@!?


Friday, July 29, 11
smartmatch isnā€™t
                      named correctly...


Friday, July 29, 11
...can we rename it to
                       psychoticmatch?


Friday, July 29, 11
The future



Friday, July 29, 11
Iā€™ve been accused of
                      lacking a vision for Perl


Friday, July 29, 11
What I lack is a
                      ļ¬‚ame-proof suit.


Friday, July 29, 11
If Iā€™d talked about my
                       vision 2 years ago...


Friday, July 29, 11
You would have
                       laughed at me


Friday, July 29, 11
...now that we can do
                           do releases...


Friday, July 29, 11
A Vision



Friday, July 29, 11
New versions of Perl
                      shouldnā€™t break your
                        existing software


Friday, July 29, 11
Old syntax and
                      semantics canā€™t stop
                      Perl 5 from evolving


Friday, July 29, 11
We need to be able to
                          make mistakes
                       as we rebuild Perl 5


Friday, July 29, 11
We will
                         make mistakes
                      as we rebuild Perl 5


Friday, July 29, 11
*coughsmartmatchcough*



Friday, July 29, 11
We have
                         made mistakes
                      as weā€™ve rebuilt Perl


Friday, July 29, 11
We need to be able to
                      recover from mistakes
                        as we rebuild Perl


Friday, July 29, 11
The runtime footprint
                      is too big and must be
                           slimmed down


Friday, July 29, 11
Perl should have
                      sane defaults


Friday, July 29, 11
It should be possible
                      to build more of Perl
                             in Perl


Friday, July 29, 11
Perl should run
                      everywhere


Friday, July 29, 11
Not just on every kind
                           of hardware


Friday, July 29, 11
or every OS



Friday, July 29, 11
Every VM



Friday, July 29, 11
Every Browser



Friday, July 29, 11
Every Phone



Friday, July 29, 11
How do we get there?



Friday, July 29, 11
New versions of Perl
                        shouldnā€™t break
                       existing software


Friday, July 29, 11
Old syntax and semantics
               must not stop Perl 5
                   from evolving


Friday, July 29, 11
When your code runs,
                       you have no idea
                      what semantics itā€™ll see


Friday, July 29, 11
You need to jump
                      through defensive
                           hoops.


Friday, July 29, 11
Lots of defensive hoops



Friday, July 29, 11
use v5.14;



Friday, July 29, 11
ā€œCan I have a Perl thatā€™s
                         5.14 or newer?ā€


Friday, July 29, 11
ā€œAnything newer than
                      5.14.0 would be great!ā€


Friday, July 29, 11
ā€œOk. Iā€™m 5.30.
                       Have fun!ā€


Friday, July 29, 11
Thatā€™s not useful



Friday, July 29, 11
It needs to change



Friday, July 29, 11
Declare the version of
                       Perl 5 you expect


Friday, July 29, 11
use v5.16;



Friday, July 29, 11
ā€œI want a Perl that
                       works like 5.16ā€


Friday, July 29, 11
The runtime should
                      honor that request


Friday, July 29, 11
Perl should give you
                      semantics as close as
                      possible to what you
                             request

Friday, July 29, 11
New features
                      should not work
                      under ā€˜use v5.$older;ā€™


Friday, July 29, 11
Itā€™s critical that we be
                           able to evolve


Friday, July 29, 11
We need an
                      escape hatch


Friday, July 29, 11
We donā€™t have one



Friday, July 29, 11
We need
                      Rule 2


Friday, July 29, 11
Changes to syntax or
                        semantics break
                         existing code


Friday, July 29, 11
Why?



Friday, July 29, 11
They conļ¬‚ict with
                       existing syntax


Friday, July 29, 11
They change the
                      meaning of existing
                          semantics


Friday, July 29, 11
They conļ¬‚ict with
                       things users do


Friday, July 29, 11
What do we do?



Friday, July 29, 11
If you declare an old
                       version, you get old
                      syntax and semantics


Friday, July 29, 11
...at least to the
                      best of our abilities


Friday, July 29, 11
Perfection isnā€™t possible



Friday, July 29, 11
We can get far closer
                       than we do now


Friday, July 29, 11
Breaking existing code
                      should be a last resort


Friday, July 29, 11
We will break
                   backward compatibility
                  in limited circumstances


Friday, July 29, 11
Some craziness canā€™t be
                       ļ¬xed in an ā€œoptionalā€
                          or lexical way


Friday, July 29, 11
This is going to be
                        hard work


Friday, July 29, 11
A lot of hard work



Friday, July 29, 11
Itā€™s not impossible



Friday, July 29, 11
I have proof



Friday, July 29, 11
Deprecation



Friday, July 29, 11
Our current
                      deprecation cycle
                         is 1 year


Friday, July 29, 11
ā€œIt warns in 5.16.0ā€



Friday, July 29, 11
ā€œItā€™s gone in 5.18.0ā€



Friday, July 29, 11
Thatā€™s turning out
                       to be too short


Friday, July 29, 11
Very few operating
                      systems release that
                           frequently


Friday, July 29, 11
ā€œDeclare by defaultā€
                       means we can make
                      some changes sooner


Friday, July 29, 11
If it still works in old
             code, we can change it
            with no deprecation cycle


Friday, July 29, 11
Some old misfeatures
                      need to come out lest
                       they block signiļ¬cant
                          improvements

Friday, July 29, 11
If we canā€™t emulate the
                         old feature for old
                      code, we need a longer
                         deprecation cycle

Friday, July 29, 11
ā€œIt dies in code that
                      declares ā€˜use v5.16ā€™ā€


Friday, July 29, 11
ā€œIt warns in older
                        code on 5.16.0ā€


Friday, July 29, 11
ā€œIt still warns in old
                         code on 5.18.0ā€


Friday, July 29, 11
ā€œItā€™s gone in 5.20.0ā€



Friday, July 29, 11
Old Modules



Friday, July 29, 11
We havenā€™t just been
                      deprecating and yanking
                        broken old features


Friday, July 29, 11
Weā€™ve been doing the
                      same to old modules


Friday, July 29, 11
They all end up
                        on CPAN


Friday, July 29, 11
This has started to hurt
                 users who wrote code
                with ā€œno non-core depsā€


Friday, July 29, 11
We need to make it
                      easier to ship two
                       ļ¬‚avors of Perl 5


Friday, July 29, 11
Hotel California



Friday, July 29, 11
aka Traditional Perl



Friday, July 29, 11
The Times,They
                      Are A-Changinā€™


Friday, July 29, 11
aka Bootstrappable Perl



Friday, July 29, 11
Thereā€™s work going on
                       to make this easier


Friday, July 29, 11
Cleaning up
                      the language


Friday, July 29, 11
The runtime footprint
                      is too big and must be
                           slimmed down


Friday, July 29, 11
One of the points of
                        doing this is to
                       clean up the core


Friday, July 29, 11
How does this
                      clean up the core?


Friday, July 29, 11
Perl is a big language



Friday, July 29, 11
There are bigger
                         languages


Friday, July 29, 11
It's harder to manage
                           a big language


Friday, July 29, 11
Itā€™s harder to learn
                          a big language


Friday, July 29, 11
Itā€™s harder to ļ¬x bugs in
                            a big language


Friday, July 29, 11
Weā€™re ok, but not
                      amazing at core
                       language dev


Friday, July 29, 11
As a community, weā€™re
                      awesome at modules


Friday, July 29, 11
How do we make Perl
                       a smaller language?


Friday, July 29, 11
Itā€™s possible to load
                      modules that inject
                           new builtins


Friday, July 29, 11
Itā€™s possible to load
                      modules that inject
                            old builtins


Friday, July 29, 11
Time to start...



Friday, July 29, 11
...refactoring



Friday, July 29, 11
Lots of stuff in perl isn't
                         necessarily part of
                        Perl 5 the Language


Friday, July 29, 11
This stuff is part of
                      Perl 5 the chainsaw


Friday, July 29, 11
I like our chainsaw



Friday, July 29, 11
Iā€™m not talking about
                       deprecating this stuff


Friday, July 29, 11
...just about
                      decoupling it


Friday, July 29, 11
SysV IPC functions



Friday, July 29, 11
Socket IO functions



Friday, July 29, 11
Unix user & group
                      information functions


Friday, July 29, 11
Unix network
                      information functions


Friday, July 29, 11
Process and process
                        group functions


Friday, July 29, 11
Formats



Friday, July 29, 11
smartmatch



Friday, July 29, 11
...and probably a bunch
                            of other stuff


Friday, July 29, 11
That bit about ā€œforcing
                      a version declarationā€


Friday, July 29, 11
If you donā€™t, youā€™ll get
                      whatever was in 5.14.


Friday, July 29, 11
The implementation of
                  SysV might be a module


Friday, July 29, 11
As a developer writing
                          code in Perl 5,
                      you wonā€™t need to care


Friday, July 29, 11
..and shouldnā€™t
                       be able to tell


Friday, July 29, 11
In the future we might
                      ļ¬x a bug or two in the
                         modularized code


Friday, July 29, 11
You could take the
                      update without having
                      to upgrade all of Perl 5


Friday, July 29, 11
Someday we might
                      remove things from the
                         default runtime


Friday, July 29, 11
Every feature we
                      externalize reclaims
                       precious memory


Friday, July 29, 11
Every feature we
                      externalize reclaims
                        precious sanity


Friday, July 29, 11
That just means youā€™ll
                       need to declare you
                      want an older feature


Friday, July 29, 11
...but only if you ask for
                                v5.16


Friday, July 29, 11
...but only if you ask for
                                v5.18


Friday, July 29, 11
...but only if you ask for
                                v5.20


Friday, July 29, 11
Existing code
                       wonā€™t break


Friday, July 29, 11
There are many, many
                      unanswered questions


Friday, July 29, 11
But itā€™s doable



Friday, July 29, 11
I have proof!



Friday, July 29, 11
Case study:
                      Smartmatch


Friday, July 29, 11
After YAPC::NA rjbs
                      (and others) raised the
                        issue of smartmatch


Friday, July 29, 11
Perl has a history of
                       theft from other
                            languages


Friday, July 29, 11
Perl has a history of
                      borrowing from other
                             languages


Friday, July 29, 11
We stole
                      smartmatch
                      from Perl 6


Friday, July 29, 11
Itā€™s very clever



Friday, July 29, 11
Itā€™s nearly
                      impossible
                       to explain


Friday, July 29, 11
Itā€™s nearly
                        impossible
                      to understand


Friday, July 29, 11
RJBS (the previous
                       speaker) proposed a
                      saner, much less clever,
                           smart match

Friday, July 29, 11
I donā€™t want to break
                      existing code that uses
                            smartmatch


Friday, July 29, 11
Jesse Luehrs (DOY)
                      was sitting in the back
                         of my YAPC talk


Friday, July 29, 11
He...



Friday, July 29, 11
...threw himself
                      at the problem


Friday, July 29, 11
He extracted
                      smartmatch into
                       an XS module


Friday, July 29, 11
He reimplemented it
                      entirely in pure perl


Friday, July 29, 11
Itā€™s slower, but itā€™s
                      understandable and
                             hackable


Friday, July 29, 11
He implemented
                      Ricardoā€™s saner smart
                      match as an alternative


Friday, July 29, 11
Iā€™m hoping that 5.16
                          ships DOYā€™s
                          smartmatch
                        implementations

Friday, July 29, 11
'use v5.16;' should load
                        the new one in your
                               scope


Friday, July 29, 11
'use v5.14;' should load
                        the old one in your
                               scope


Friday, July 29, 11
no ā€œuse v5.x;ā€ line
                      should load the old one
                          in your scope.


Friday, July 29, 11
We need a module
                      hierarchy for such
                        things in core


Friday, July 29, 11
The Test Suite



Friday, July 29, 11
(Keeping us honest)



Friday, July 29, 11
We have an
                      amazing
                       test suite


Friday, July 29, 11
Over time, we need to
                       tease apart (at least)
                          3 kinds of tests


Friday, July 29, 11
Language tests



Friday, July 29, 11
Bug-ļ¬x tests



Friday, July 29, 11
Implementation tests



Friday, July 29, 11
To hold us to the
                      compatibility promises
                       we make, we need a
                        new test harness

Friday, July 29, 11
ā€œRun the test suites we
                       shipped with previous
                            releases...ā€


Friday, July 29, 11
...all of em



Friday, July 29, 11
We've been moving
                          pretty fast


Friday, July 29, 11
Weā€™ve done some
                          things I...


Friday, July 29, 11
...wouldnā€™t do again



Friday, July 29, 11
Iā€™m going to be a lot
                      more skeptical about
                          new features


Friday, July 29, 11
...at least ones that
                      donā€™t make it easier to
                       have fewer features


Friday, July 29, 11
We should have sane
                           defaults


Friday, July 29, 11
Thereā€™s lots of crazy
                            in Perl 5


Friday, July 29, 11
Syntactic Crazy



Friday, July 29, 11
Semantic Crazy



Friday, July 29, 11
Internal Crazy



Friday, July 29, 11
Module Crazy



Friday, July 29, 11
It may be time to
                      consider doing away
                       with some of that


Friday, July 29, 11
But ONLY if you
                      declare ā€œuse v5.16ā€


Friday, July 29, 11
But ONLY if you
                      declare ā€œuse v5.18ā€


Friday, July 29, 11
But ONLY if you
                      declare ā€œuse v5.20ā€


Friday, July 29, 11
Weā€™ve started down
                           this road


Friday, July 29, 11
ā€œuse v5.12ā€ includes
                          ā€œuse strict;ā€


Friday, July 29, 11
Where do we go next?



Friday, July 29, 11
warnings on by default



Friday, July 29, 11
autodie-esque defaults



Friday, July 29, 11
autodie does good for
                            your code


Friday, July 29, 11
using deep, scary evil



Friday, July 29, 11
I will not show
                        you the evil


Friday, July 29, 11
Ask Paul Fenwick



Friday, July 29, 11
The guy with the
                           accent


Friday, July 29, 11
In the hat



Friday, July 29, 11
We should throw
                      exceptions rather than
                       just return on failure


Friday, July 29, 11
I donā€™t want us to
                      bikeshed an exception
                            hierarchy


Friday, July 29, 11
Heck, Iā€™d be happy if we
                      started with dying with
                        well-deļ¬ned strings


Friday, July 29, 11
(Iā€™d love an exception hierarchy)




Friday, July 29, 11
2-arg open()
                      gone by default


Friday, July 29, 11
1-arg open()
                      gone by default?


Friday, July 29, 11
Latin-1 autopromote
                          off by default


Friday, July 29, 11
utf-8 everything
                         by default


Friday, July 29, 11
A clean, simple
                      meta-model with basic
                       classes and methods


Friday, July 29, 11
No indirect object syntax
                             by default


Friday, July 29, 11
But only if you declare
                           ā€œuse v5.16ā€


Friday, July 29, 11
But only if you declare
                           ā€œuse v5.18ā€


Friday, July 29, 11
But only if you declare
                           ā€œuse v5.20ā€


Friday, July 29, 11
So, Why?



Friday, July 29, 11
Perl needs to be
                      cleaner, simpler and
                      easier to work with


Friday, July 29, 11
For users...



Friday, July 29, 11
...and for implementers



Friday, July 29, 11
Perl should run
                      everywhere


Friday, July 29, 11
Why isnā€™t Perl 5 on
                       other Runtimes?


Friday, July 29, 11
ā€œThereā€™s no specā€



Friday, July 29, 11
That didnā€™t stop Ruby



Friday, July 29, 11
ā€œOnly Perl 5 can
                        parse Perl 5ā€


Friday, July 29, 11
That didn't stop PPI



Friday, July 29, 11
To survive, a desperate
                      hacker needs to be able
                       to reimplement Perl 5


Friday, July 29, 11
Thanks!



Friday, July 29, 11
How do we make this
                        happen faster?


Friday, July 29, 11
Perl 5 Maint Fund



Friday, July 29, 11
perlfoundation.org



Friday, July 29, 11
Questions/Tomatoes?
                      http://blog.fsck.com
                      jesse@perl.org
                      @obra



Friday, July 29, 11
About the name



Friday, July 29, 11
Our language is called
                             Perl 5


Friday, July 29, 11
Perl 6 is our
                       precocious
                        kid sister


Friday, July 29, 11
Iā€™m happy to talk about
                         renaming Perl 5...


Friday, July 29, 11
...if you write me a
                second implementation
               that passes the test suite


Friday, July 29, 11

More Related Content

More from Jesse Vincent

Building a keyboard from scratch
Building a keyboard from scratchBuilding a keyboard from scratch
Building a keyboard from scratchJesse Vincent
Ā 
K-9 Mail for Android
K-9 Mail for AndroidK-9 Mail for Android
K-9 Mail for AndroidJesse Vincent
Ā 
P2P Bug Tracking with SD
P2P Bug Tracking with SDP2P Bug Tracking with SD
P2P Bug Tracking with SDJesse Vincent
Ā 
SD - A peer to peer issue tracking system
SD - A peer to peer issue tracking systemSD - A peer to peer issue tracking system
SD - A peer to peer issue tracking systemJesse Vincent
Ā 
Hacking your Kindle (OSCON Lightning Talk)
Hacking your Kindle (OSCON Lightning Talk)Hacking your Kindle (OSCON Lightning Talk)
Hacking your Kindle (OSCON Lightning Talk)Jesse Vincent
Ā 
Beginning Kindle Hackery
Beginning Kindle HackeryBeginning Kindle Hackery
Beginning Kindle HackeryJesse Vincent
Ā 
SD, a P2P bug tracking system
SD, a P2P bug tracking systemSD, a P2P bug tracking system
SD, a P2P bug tracking systemJesse Vincent
Ā 
Prophet - Beijing Perl Workshop
Prophet - Beijing Perl WorkshopProphet - Beijing Perl Workshop
Prophet - Beijing Perl WorkshopJesse Vincent
Ā 
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret SauceBeijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret SauceJesse Vincent
Ā 
A brief introduction to RTIR
A brief introduction to RTIRA brief introduction to RTIR
A brief introduction to RTIRJesse Vincent
Ā 
An introduction to RTIR
An introduction to RTIRAn introduction to RTIR
An introduction to RTIRJesse Vincent
Ā 
Prophet: a path out of the Cloud
Prophet: a path out of the CloudProphet: a path out of the Cloud
Prophet: a path out of the CloudJesse Vincent
Ā 
Web 2.0 is Sharecropping
Web 2.0 is SharecroppingWeb 2.0 is Sharecropping
Web 2.0 is SharecroppingJesse Vincent
Ā 
Hiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret SauceHiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret SauceJesse Vincent
Ā 
Prophet - A peer to peer replicated disconnected database
Prophet - A peer to peer replicated disconnected databaseProphet - A peer to peer replicated disconnected database
Prophet - A peer to peer replicated disconnected databaseJesse Vincent
Ā 

More from Jesse Vincent (16)

Building a keyboard from scratch
Building a keyboard from scratchBuilding a keyboard from scratch
Building a keyboard from scratch
Ā 
K-9 Mail for Android
K-9 Mail for AndroidK-9 Mail for Android
K-9 Mail for Android
Ā 
Perl 5.12.0
Perl 5.12.0Perl 5.12.0
Perl 5.12.0
Ā 
P2P Bug Tracking with SD
P2P Bug Tracking with SDP2P Bug Tracking with SD
P2P Bug Tracking with SD
Ā 
SD - A peer to peer issue tracking system
SD - A peer to peer issue tracking systemSD - A peer to peer issue tracking system
SD - A peer to peer issue tracking system
Ā 
Hacking your Kindle (OSCON Lightning Talk)
Hacking your Kindle (OSCON Lightning Talk)Hacking your Kindle (OSCON Lightning Talk)
Hacking your Kindle (OSCON Lightning Talk)
Ā 
Beginning Kindle Hackery
Beginning Kindle HackeryBeginning Kindle Hackery
Beginning Kindle Hackery
Ā 
SD, a P2P bug tracking system
SD, a P2P bug tracking systemSD, a P2P bug tracking system
SD, a P2P bug tracking system
Ā 
Prophet - Beijing Perl Workshop
Prophet - Beijing Perl WorkshopProphet - Beijing Perl Workshop
Prophet - Beijing Perl Workshop
Ā 
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret SauceBeijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
Ā 
A brief introduction to RTIR
A brief introduction to RTIRA brief introduction to RTIR
A brief introduction to RTIR
Ā 
An introduction to RTIR
An introduction to RTIRAn introduction to RTIR
An introduction to RTIR
Ā 
Prophet: a path out of the Cloud
Prophet: a path out of the CloudProphet: a path out of the Cloud
Prophet: a path out of the Cloud
Ā 
Web 2.0 is Sharecropping
Web 2.0 is SharecroppingWeb 2.0 is Sharecropping
Web 2.0 is Sharecropping
Ā 
Hiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret SauceHiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret Sauce
Ā 
Prophet - A peer to peer replicated disconnected database
Prophet - A peer to peer replicated disconnected databaseProphet - A peer to peer replicated disconnected database
Prophet - A peer to peer replicated disconnected database
Ā 

Recently uploaded

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
Ā 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
Ā 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
Ā 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
Ā 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
Ā 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
Ā 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
Ā 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
Ā 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
Ā 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
Ā 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
Ā 
"Subclassing and Composition ā€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition ā€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition ā€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition ā€“ A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
Ā 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
Ā 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
Ā 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
Ā 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
Ā 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
Ā 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
Ā 
Bun (KitWorks Team Study ė…øė³„ė§ˆė£Ø ė°œķ‘œ 2024.4.22)
Bun (KitWorks Team Study ė…øė³„ė§ˆė£Ø ė°œķ‘œ 2024.4.22)Bun (KitWorks Team Study ė…øė³„ė§ˆė£Ø ė°œķ‘œ 2024.4.22)
Bun (KitWorks Team Study ė…øė³„ė§ˆė£Ø ė°œķ‘œ 2024.4.22)Wonjun Hwang
Ā 

Recently uploaded (20)

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Ā 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
Ā 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Ā 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Ā 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
Ā 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Ā 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Ā 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Ā 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
Ā 
Hot Sexy call girls in Panjabi Bagh šŸ” 9953056974 šŸ” Delhi escort Service
Hot Sexy call girls in Panjabi Bagh šŸ” 9953056974 šŸ” Delhi escort ServiceHot Sexy call girls in Panjabi Bagh šŸ” 9953056974 šŸ” Delhi escort Service
Hot Sexy call girls in Panjabi Bagh šŸ” 9953056974 šŸ” Delhi escort Service
Ā 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
Ā 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
Ā 
"Subclassing and Composition ā€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition ā€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition ā€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition ā€“ A Pythonic Tour of Trade-Offs", Hynek Schlawack
Ā 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
Ā 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
Ā 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
Ā 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
Ā 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
Ā 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Ā 
Bun (KitWorks Team Study ė…øė³„ė§ˆė£Ø ė°œķ‘œ 2024.4.22)
Bun (KitWorks Team Study ė…øė³„ė§ˆė£Ø ė°œķ‘œ 2024.4.22)Bun (KitWorks Team Study ė…øė³„ė§ˆė£Ø ė°œķ‘œ 2024.4.22)
Bun (KitWorks Team Study ė…øė³„ė§ˆė£Ø ė°œķ‘œ 2024.4.22)
Ā 

OSCON 2011 - Perl 5.16 and beyond