Previous Events


26 March 2014

Meir Guttman — “Special challenges in Hardware Description Languages”

  • What's it all about
  • The advent of programmable logic
  • History
  • Parallelism taken to its extreme
  • Simulation
  • Hardware compilation

May 22nd, 2013

Asynchronous Programming FTW! :: Sawyer X

The new age is all about non-blocking asynchronous creative responsive deconstructive

refactored decoupled conjectured applications. If you're not on the event loop wagon loop, you're missing out!

What the hell am I talking about? Am I just drunk? How many of the above words are totally made-up? These questions and more will be answered at this talk! - Reactive Extensions for Perl :: Ran Eilam

A library for composing async programs. Because writing async code is hard, but working with Perl lists is easy. Lets turn events into lists, and reap the benefits:

  • Elegant async programming without callback nesting, using operators we all know from working with Perl lists</li>
  • Managing and coordinating events, e.g. start an HTTP request when timeout on key press if previous HTTP request was OK and arrived in the last 10 seconds</li>
  • Programming with stream transformations, instead of objects and methods-say hello to beautiful functional designs with well defined state and side-effects. Replace boring UML diagrams with fun marble diagrams</li>
  • Stop writing and rewriting retry, timeout, throttle, buffer, window, counters, caching, and aggregate functions for each project. Instead create your processes as observables, then enjoy a rich library of existing operators</li>
  • December 26th, 2012

    This meeting was a practical one, focusing on testing. We began with a talk on testing, explaining what tests are, what needs testing, and how to get started with it. We then split up and hack away on tests.

    November 28th, 2012

    Binding Shared Libraries with Perl :: Ido Kanner
    Overview of what shared libraries are, and how to bind their functions to Perl.
    Real Time Web with Pocket::IO :: Ynon Perek
    The Internet is changing direction. More and more web-sites want to notify their visitors in real time about changes that happen on the server (for instance, a different visitor uploaded a photo). A library called Socket IO unifies all the various ways to send messages from the server to the computers of the visitors and allows the programmer to write an Internet application that gets updated in real time. vti implemented the library in Perl as Pocket::IO. In this talk, I will present the ideas behind Real Time Web, including code excerpts in Perl which use the library in order to create interactive sites.
    Regular Expressions Demystified :: Sawyer X
    Do you use Regular Expressions? No? Would you like to? Do you find them complicated or confusing? Let's try to fix that. A beginner's talk for introducing simple, smart, easy-to-understand Regular Expressions.

    October 31st, 2012

    Writing Automatic Test Using Selenium :: Pavel Zhytomirsky
    Slides and code examples on github.
    MongoDB :: Meir Kriheli
    The slides are available here.
    Linux Perl Daemons :: Uri Hartmann

    September 19th, 2012

    Meta-Moose :: Ynon Perek
    Using the meta object, dynamically add methods, play with attributes, and more. The slides are available here
    Project Euler :: Shlomi Fish
    Introducing the mail-stats program :: Moshe Nahmias

    August 29th, 2012

    Practical Perl - Earn your living or how make money from parsing a string :: Sawyer X
    If Music be the Food of Love, try playing it with Perl :: Uri Bruck
    MIDI, Musical Instrument Digital Interface, is a standard that enables computers, musical instruments and other devices to communicate with each other. It's not surprising that there's something on cpan for that. We'll look into various aspects of handling MIDI with Perl, and maybe get to listen to something nice too.
    Report from YAPC::EU 2012 :: Gabor Szabo, Sawyer X
    A lot of weird, geek, strange, funny an awesome stories from the biggest Perl event in Europe.

    July 25th, 2012

    FatPacker :: Sawyer X
    Packaging for CPAN :: Sawyer X
    Modern Web application development using Perl :: Gabor Szabo

    June 27th, 2012

    Instead of the usual technical meeting, we will have a hackathon!

    We could work on contributing to projects, fixing or adding features to existing projects, starting new projects, trying out different stuff we haven't yet, and learn new stuff!

    Here are some ideas for what to do at the hackathon:

    • rewriting a CGI app in Dancer, or add features to an existing web app
    • rewriting an application using Moose
    • contributing to a CPAN module (bugs/features/documentation/tests)
    • adding a feature to a CPAN module
    • writing a new CPAN module
    • working on and automating the tools to update it

    May 30th, 2012

    From client to execution :: ik
    This talk will explain what Redis is in a few words, the client Ido has written for it, and which Perl tools are available to use it.
    Perl for Newbies, Part 5 :: Shlomi Fish
    Shlomi will use the audience as guinea pigs for testing and verifying the fifth part of his series of talks, Perl for Perl Newbies, whose theme is "good programming practices". The slides cover such topics as writing automated tests, using version control systems, using class accessors, writing documentation using POD, and using Module-Build and Module-Starter.

    Shlomi's slides are available here

    May 2nd, 2012

    We are going to have two talks about the two extremes of Perl. After the talks we are going to have a mini-hackathon working on a few CPAN modules.

    Perl Golf :: Ynon Perek
    The abstract of the Golf talk was golfed away.
    Refactoring Perl code :: Gabor Szabo
    For the abstract of the Refactoring talk, please visit
    The code that we are planning to hack on can be found here and here .

    You can also bring your own problems :)

    March 28th, 2012

    Sphinx - Documentation in action :: Meir Kriheli
    Sphinx is a documentation generator. Covering reStructuredText and writing documentation, the Python domain and a bit of Perl. The slides are available here.
    How to contribute to a CPAN module :: Gabor Szabo
    Topics covered:
    • Check the bug tracking system
    • Find and check-out the source code
    • Write a test
    • Create a fix
    • Send a patch
    Then we form groups of 2-3 people and fix bugs in CPAN modules. We can do this in Spaghettim already. For this, please bring your notebook or arrange with someone else to share one. Also, please recommend modules that need their RT queue cleaned up!

    Some ideas: XML::Feed, SVG, Dancer, MetaCPAN::API, Module::Starter, WWW::FMyLife, Perlbal, Module::Version, App::Genpass.

    December 28th, 2011

    Visualizing the brain of Vim :: Ran Eilam
    You loved him in "Game frameworks with SDL, Moose and Coro", you cried over his performance in the after-meeting get-togethers, and you will absolutely adore him in "Visualizing the brain of Vim". All-star legend Ran Eilam will talk to us (both beginners and experts) about Vim and how to fathom this incredible beast. I warn you, the first two lines in the audience will be damaged by Emacs flames.
    A bunch of modules which made sense writing :: Sawyer X
    I'm going to cover some utility modules I've written, why they were written and when they are useful. At the end, you'll have to judge whether they were worth writing at all. There will be voting booths available! (We'll cover Algorithm::Diff::Callback, App::Genpass, Data::PowerSet::Hash and Module::Version.)
    To upgrade or not to upgrade, Perl 5.6 vs. Perl 5.14 :: ik vs. Sawyer X
    A source of great concern in the Perl users community is whether to use an up-to-date Perl and what version should be considered "too old". On one hand, we have the management that wants as little cost and changes as possible <>(sometimes along with systems administrators), and on the other hand, the developer who wants to use the latest technologies, and is often stuck on obsolete systems. In light of this serious consideration, we're going to take turns poking at each other with a stick, wearing funny hats, damning the unbelievers and heretics until they submit to one side: 5.6 or 5.14!

    November 30th, 2011

    Tools of the Perl, a quick survey of 4 modules :: Erez Schatz
    We will cover four modules that make the life of a Modern Perl developer much easier than it used to be: local::lib, cpanm, perlbrew, pm-uninstall.
    DBIx::Class and ORMs :: Erez Schatz
    What is an ORM, why do we need it, and what does DBIx::Class bring to the table for Perl programmers at large.
    Firebird: a database that does not burn your data :: ik
    An introduction to the Firebird database and why it is so highly-regarded by those who use it.

    August 31st, 2011

    Git :: Sawyer X
    Git is a decentralized code revision management system. It's becoming a valuable tool for developers (whether programmers, designers, or other) and is spreading like fire due to its useful nature, being used in the Linux Kernel development, many free software libraries and programs and many organizations alike. I intend to teach it to you. :)
    Gitflow :: Sawyer X
    Gitflow is a useful wrapper tool to allow you to set a more streamlined development process, taking into account features, releases, hot fixes and more. It's very useful when using multiple developers with an integrator, a QA, a dev team, and so on. I intend to showcase it as well!

    July 27th, 2011

    How to write a module and package it as a CPAN (like) distribution :: Gabor Szabo
    We are going to have one talk that will cover a number of topics including:
    • Writing a module
    • OOP
    • Testing
    • Packaging

    June 29th, 2011

    Scraping A Cookbook :: Ynon Perek
    I recently got a chance to convert a live web site <>( into an iPhone app. The process involved deciding which parts will go into the app, how it will look, and scraping the content to an SQLite db that was to be deployed on the iPhone (along with an app).

    In the talk, I will present some of the perls I used to get/convert the textual and image data, and use them to talk about XPath, DOM and SAX for digging the "right" data.
    #myjourneytoperl - graphing a meme :: Dotan Dimet
    On March 30th, at the urging of Matt Trout, Perl people on Twitter posted text graphs showing their path to Perl from and through other programming languages. Inspired by the directed graph format used, I decided to capture these posts and combine them into a single giant graph which I would render using the GraphViz toolkit. I'll talk about the tools I used (Mojolicious, GraphViz, the witter JSON API), the problems I encountered (Unicode!) and the snapshot of the Perl community that emerged.
    Writing a blog engine in 15 minutes :: Gabor Szabo
    It will be especially easy for people who are using Windows as they can download a single package that have everything they need. We will create a Dancer based web application and then allow a single user to create blog posts.

    May 25th, 2011

    ABC Path solver, live demo :: Shlomi Fish
    A short talk of Shlomi's ABC Path Solver, including a demo.
    Unicode considerations in Perl :: Meir Guttman
    Meir will help us understand how to work with Unicode better
    Moose!! :: Sawyer X
    If you don't use Moose, come see why you should! If you do, come help convince others!

    March 30th, 2011

    Typography WTF? or "Correct understanding and usage" :: Miss Ferret
    It's time to bring some color into your life. We'll explain what typography is and why the font we choose matters.
    Graphical game development in Perl using Coro :: Ran Eilam
    You like games? Want to write one? Ran will show us his pet project, a game written in Perl using SDL and co-routines (via the Coro module).
    [Lightning talk] Ruby for Perl programmers :: Ido Kanner
    [Lightning talk] Analytical Perl, "use" vs. "require" :: Sawyer X

    February 23rd, 2011

    Getting involved in open source :: Gabor Szabo
    You might know how to program, you might not, but do you work on open source projects? Have you always wanted to? Now you'll learn how to do it! We'll be taking a real example of an active open source project.
    [Lightning talk] There are TOO MANY ways to do it! :: Shlomi Fish
    (simple problem, a ton of solutions)
    [Lightning talk] Surprise talk :: an anonymous speaker
    (this talk will be so fast, you won't see it coming!)
    Our local state, my my :: Sawyer X
    Perl has several ways to define variables (my, local, our, state), and they can get confusing. The final showdown will explain how each works, what they really do, and when to use them.

    Yes! Finally!! :)

    January 26th, 2011

    This meeting's subject was web development.
    What the hell is web development? :: Sawyer X
    A nice, easy, hopefully interesting, understandable introduction to web development. (beginner talk)
    The web stack :: Ilan Arad
    A hands-on, discussion-oriented talk on advanced understanding of the web stack, from server-side to client-side. (advanced talk)

    December 29th, 2010

    This was our first since it has been reestablished.

    Flyer available here

    Why Perl? :: Sawyer X
    A short talk on what makes Perl such a compelling language to learn and work with, focusing on Modern Perl and innovative technologies.
    What's new in Perl 5.10 and 5.12 :: Gabor Szabo
    Find out what exciting features new versions of Perl offer.
    Read only state for fun and profit :: Yuval Kogman
    Even though Perl is highly optimized for modifying data in place, using read only state can be very rewarding. What is immutability and when it should be applied.