SlideShare a Scribd company logo
P2P Bug Tracking with SD
                 http://syncwith.us



Jesse Vincent
Best Practical

jesse@bestpractical.com
Hi!
I’m Jesse (obra)
clkao and I own a small
   software company

Recommended for you

JVM for Dummies - OSCON 2011
JVM for Dummies - OSCON 2011JVM for Dummies - OSCON 2011
JVM for Dummies - OSCON 2011

The document provides an introduction to the Java Virtual Machine (JVM) bytecode and JIT compiler. It discusses how bytecode works, including inspection, generation and the bytecode instructions. It also covers how the JIT compiler works and is monitored. Examples of viewing bytecode with javap and generating bytecode with BiteScript are provided.

bytecodecompilationbitescript
Hijacking Ruby Syntax in Ruby (RubyConf 2018)
Hijacking Ruby Syntax in Ruby (RubyConf 2018)Hijacking Ruby Syntax in Ruby (RubyConf 2018)
Hijacking Ruby Syntax in Ruby (RubyConf 2018)

#rubyconf 2018 presentation in RubyKaigi track, discussing about how to use (or abuse) Ruby's meta programming features

rubyrubyconf
Stop Worrying & Love the SQL - A Case Study
Stop Worrying & Love the SQL - A Case StudyStop Worrying & Love the SQL - A Case Study
Stop Worrying & Love the SQL - A Case Study

All Things Open 2014 - Day 2 Thursday, October 23rd, 2014 Doug Turnbull Search & Big Data Architect for OpenSource Connections Databases Stop Worrying & Love the SQL - A Case Study

sqlopen sourceall things open
(Best Practical)
I’ve been making issue
  trackers since 1995
Our software
has some bugs
All software
has some bugs

Recommended for you

A fast introduction to PySpark with a quick look at Arrow based UDFs
A fast introduction to PySpark with a quick look at Arrow based UDFsA fast introduction to PySpark with a quick look at Arrow based UDFs
A fast introduction to PySpark with a quick look at Arrow based UDFs

This talk will introduce Apache Spark (one of the most popular big data tools), the different built ins (from SQL to ML), and, of course, everyone's favorite wordcount example. Once we've got the nice parts out of the way, we'll talk about some of the limitations and the work being undertaken to improve those limitations. We'll also look at the cases where Spark is more like trying to hammer a screw. Since we want to finish on a happy note, we will close out with looking at the new vectorized UDFs in PySpark 2.3.

pythonapache sparkapache arrow
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...

This will cover what to consider for high write throughput performance from hardware configuration through to the use of replica sets, multi-data centre deployments, monitoring and sharding to ensure your database is fast and stays online.

mongodbnosql
When Ruby Meets Java - The Power of Torquebox
When Ruby Meets Java - The Power of TorqueboxWhen Ruby Meets Java - The Power of Torquebox
When Ruby Meets Java - The Power of Torquebox

This document discusses TorqueBox, an open source platform that allows Ruby on Rails applications to run on the Java Virtual Machine (JVM) and take advantage of Java libraries and services. It highlights features like scheduling, services, messaging, background jobs, clustering, caching and performance. The document includes code samples and discusses how TorqueBox makes these enterprise features easy to use from Ruby. It also notes some risks of using an emerging technology but says the documentation is good and help is available online.

jrubyrubyconfindiaprogramming
(All software
is made of bugs)
I spend a lot of time
    on airplanes...
...and at conferences
     with bad wifi
I need to keep track of
our bugs and our work

Recommended for you

moscmy2016: Extending Docker
moscmy2016: Extending Dockermoscmy2016: Extending Docker
moscmy2016: Extending Docker

This document provides an overview of extending Docker using plugins, specifically an image whitelist plugin. It discusses Docker's plugin architecture, provides examples of volume and network plugins, and goes through setting up and implementing an image whitelist plugin. Key points include: - Docker plugins allow extending Docker's capabilities by running external processes that communicate with the Docker daemon. - Examples of plugin types are volumes, networks, authorization. A volume plugin enables integration with external storage, a network plugin supports different networking technologies. - The document demonstrates setting up an image whitelist Docker plugin that checks images against a whitelist before allowing them to run. - Implementing the plugin involves creating a client to communicate with Docker's API, parsing a cron

golangpluginmoscmy
服务框架: Thrift & PasteScript
服务框架: Thrift & PasteScript服务框架: Thrift & PasteScript
服务框架: Thrift & PasteScript

Thrift and PasteScript are frameworks for building distributed applications and services. Thrift allows defining data types and interfaces using a simple definition language that can generate code in multiple languages. It uses a compact binary protocol for efficient RPC-style communication between clients and servers. PasteScript builds on WSGI and provides tools like paster for deploying and managing Python web applications, along with reloading and logging capabilities. It integrates with Thrift via server runners and application factories.

Message-passing concurrency in Python
Message-passing concurrency in PythonMessage-passing concurrency in Python
Message-passing concurrency in Python

Concurrency and parallelism in Python are always hot topics. This talk will look the variety of forms of concurrency and parallelism. In particular this talk will give an overview of various forms of message-passing concurrency which have become popular in languages like Scala and Go. A Python library called python-csp which implements similar ideas in a Pythonic way will be introduced and we will look at how this style of programming can be used to avoid deadlocks, race hazards and "callback hell".

dynamic languageschannelspython
I’m the boss
I have no excuse for
 not doing my work
I need to keep track of
our bugs and our work
even when I don’t have
    Internet access
I’ve tried everything

Recommended for you

A million connections and beyond - Node.js at scale
A million connections and beyond - Node.js at scaleA million connections and beyond - Node.js at scale
A million connections and beyond - Node.js at scale

This document discusses benchmarks and performance testing of Node.js. It notes that while Node.js can handle over 1 million connections, benchmarks are not that important as other factors like productivity. It explores how to meaningfully measure Node.js performance, compares Node.js to other frameworks like Erlang and Tornado, and argues that benchmarks should reflect real-world use cases rather than simplistic "hello world" tests. The document questions overreliance on benchmarks and emphasizes picking the right tool based on the task.

Practical Testing of Ruby Core
Practical Testing of Ruby CorePractical Testing of Ruby Core
Practical Testing of Ruby Core

The document discusses testing practices for the Ruby programming language. It provides details on how to run various test suites that are part of the Ruby source code repository, including: 1. Running the "make test" command which runs sample tests, known bug tests, and tests defined in the test/ directory. 2. Running "make test-all" which runs core library and standard library tests under the test/ directory. 3. Running "make check" which builds encodings and extensions, runs all test tasks including test frameworks like Test::Unit and Minitest. 4. It also discusses strategies for merging test changes from external repositories like RubyGems and RDoc back into the Ruby source code

Demo 0.9.4
Demo 0.9.4Demo 0.9.4
Demo 0.9.4

The document discusses new features in version 0.9.4 of the DivConq file transfer software, including file tasks that can be triggered by uploads, scheduling, or file system events. It introduces dcScript, the scripting language that allows users to string together various file operations and tasks. Key points include that dcScript scripts can run asynchronously, optimize file operations through in-memory streaming rather than disk reads/writes, and offer features to simplify complex multi-step file tasks. The document provides examples of using dcScript to encrypt, compress, split and transfer files with just a few lines of code.

mft pgp file transfer
Text files
Text files in
version control
IMAP Servers
RSS Feeds

Recommended for you

PuppetDB: Sneaking Clojure into Operations
PuppetDB: Sneaking Clojure into OperationsPuppetDB: Sneaking Clojure into Operations
PuppetDB: Sneaking Clojure into Operations

The document provides an overview of PuppetDB, which is a system for storing and querying data about infrastructure as code and system configurations. Some key points: - PuppetDB stores immutable data about systems and allows querying of this data to enable higher-level infrastructure operations. - It uses techniques like command query responsibility separation (CQRS) to separate write and read pipelines for better performance and reliability. - The data is stored in a relational database for efficient querying, and queries are expressed in an abstract syntax tree (AST)-based language. - The system is designed for speed, reliability, and ease of deployment in operations. It leverages techniques from Clojure and the JVM.

puppetclojurecqrs
Concurrency in Python
Concurrency in PythonConcurrency in Python
Concurrency in Python

This document summarizes Gavin M. Roy's presentation on concurrency with multiprocessing in Python. It discusses using threads via the threading module, issues with the Global Interpreter Lock (GIL) in Python, and how to use the multiprocessing module to achieve true parallelism across multiple processes. It provides examples of creating threads and processes that run concurrently and examples of how to share objects between processes using connections, queues, pipes, managers and reduction tools.

python
The DOM is a Mess @ Yahoo
The DOM is a Mess @ YahooThe DOM is a Mess @ Yahoo
The DOM is a Mess @ Yahoo

The document discusses the messy and buggy state of the DOM across browsers and strategies for writing cross-browser JavaScript code. It notes that nearly every DOM method has bugs or inconsistencies in some browsers. It then covers strategies like feature detection, graceful fallback for missing features, simulating features via workarounds, monitoring for regressions, and having a robust test suite to prevent regressions in one's own code. The overall message is that the DOM is messy and one needs to "know your enemies" by thoroughly testing code in all target browsers.

domjavascriptyahoo
Running RT on
  my laptop
Keeping browsers open
Nothing was quite right
So we built SD

Recommended for you

Fluentd and Embulk Game Server 4
Fluentd and Embulk Game Server 4Fluentd and Embulk Game Server 4
Fluentd and Embulk Game Server 4

This document summarizes Masahiro Nakagawa's presentation on Fluentd and Embulk. Fluentd is a data collector for unified logging that allows for streaming data transfer based on JSON. It is written in Ruby and uses plugins to collect, process, and output data. Embulk is a bulk loading tool that allows high performance parallel processing of data to load it into various databases and storage systems. Both tools use a pluggable architecture to provide flexibility in handling different data sources and targets.

fluentd embulk
Practical Groovy DSL
Practical Groovy DSLPractical Groovy DSL
Practical Groovy DSL

Guillaume Laforge presents on creating domain-specific languages with Groovy. He discusses how DSLs can help bridge communication between developers and subject matter experts by using a more expressive shared language. He provides examples of Groovy's capabilities for building DSLs, including its flexible syntax, optional typing, native constructs, closures, and dynamic metaprogramming features. He also covers integrating DSLs into applications and considerations for designing custom DSLs.

groovydsljax
Scaling Big Data Mining Infrastructure Twitter Experience
Scaling Big Data Mining Infrastructure Twitter ExperienceScaling Big Data Mining Infrastructure Twitter Experience
Scaling Big Data Mining Infrastructure Twitter Experience

The analytics platform at Twitter has experienced tremendous growth over the past few years in terms of size, complexity, number of users, and variety of use cases. In this talk, we’ll discuss the evolution of our infrastructure and the development of capabilities for data mining on “big data”. We’ll share our experiences as a case study, but make recommendations for best practices and point out opportunities for future work.

jimmy linhadooptwitter
SD is a P2P Bug Tracker
It syncs the way you do
Clone a project’s bug
database over HTTP
Work offline

Recommended for you

Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011
Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011
Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011

Любой полезный ресурс рано или поздно выходит за рамки «shared hosting» тарифов и владельцы ресурса начинают поглядывать в сторону VDS, выделенных серверов и облачных решений. Из нашего доклада Вы узнаете: - стоит искать другого хостера или уже пришло время переезжать на выделенный сервер; - о выборе площадки для аренды или размещению своего сервера; - о выборе ресурсных характеристик сервера, подборе и конфигурации ПО; - что делать дальше, когда сервер установлен. Многие моменты доклада будут украшены реальными примерами из опыта работы компании «IT Patrol inc.»

drupaldckyiv11server
Big Data Beyond the JVM - Strata San Jose 2018
Big Data Beyond the JVM - Strata San Jose 2018Big Data Beyond the JVM - Strata San Jose 2018
Big Data Beyond the JVM - Strata San Jose 2018

The document discusses accelerating big data processing beyond just the Java Virtual Machine (JVM). It introduces Rachel Warren and Holden Karau, the presenters. It then covers the current state of PySpark and its performance limitations due to serialization between Python and the JVM. Future improvements discussed include using Apache Arrow to accelerate UDFs, Dask for pure Python processing, and Apache Beam for additional languages. The presenters promote their new book on high performance Spark and take questions at the end.

apache sparkpythonpyspark
Web Development Environments: Choose the best or go with the rest
Web Development Environments:  Choose the best or go with the restWeb Development Environments:  Choose the best or go with the rest
Web Development Environments: Choose the best or go with the rest

The document discusses various web development environments and frameworks for choosing the right one. It covers popular options like ASP.NET, Java/JSP, PHP, Python and Ruby as well as databases. For each, it provides an overview and examples of sorting data to demonstrate capabilities. It emphasizes evaluating options based on requirements rather than following trends and notes the impact that open source movements and companies can have on technologies.

slipstreamcacheewd
Pull from anyone you
       work with
Publish your database
  replica with rsync
Topology doesn’t
    matter...
Don’t worry

Recommended for you

Why Rust? - Matthias Endler - Codemotion Amsterdam 2016
Why Rust? - Matthias Endler - Codemotion Amsterdam 2016Why Rust? - Matthias Endler - Codemotion Amsterdam 2016
Why Rust? - Matthias Endler - Codemotion Amsterdam 2016

Rust is the new kid on the block. It's a system programming language that is blazingly fast and offers powerful high-level abstractions better known from dynamic languages like Ruby or Python. Rust offers memory safety without a Garbage Collector and makes low-level programming easier and more secure. I will give an introductory talk about Rust and show some of its nicest features.

codemotion amsterdam 2016
Jaap : node, npm & grunt
Jaap : node, npm & gruntJaap : node, npm & grunt
Jaap : node, npm & grunt

Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. It uses an event-driven, non-blocking I/O model that makes it lightweight and efficient for data-intensive real-time applications that run across distributed devices. The document discusses Node.js' architecture, its use of JavaScript for simplicity, and how it is inspired by other technologies like Twisted and EventMachine. It also covers related tools like NPM for package management and Grunt for automating tasks.

npmnode.jsyajug
RackN Physical Layer Automation Innovation
RackN Physical Layer Automation InnovationRackN Physical Layer Automation Innovation
RackN Physical Layer Automation Innovation

Short presentation about how RackN is creating bare metal data center automation for enterprise and edge infrastructure at the most basic level. Includes a video of Rob giving the presentation

devopsprovisioningbare metal
It won’t break
SD learns how to
resolve each conflict...
based on how everyone
    else resolves it
But you already have a
     bug tracker?

Recommended for you

K8s best practices from the field!
K8s best practices from the field!K8s best practices from the field!
K8s best practices from the field!

Learn from the dozens of large-scale deployments how to get the most out of your Kubernetes environment: - Container images optimization - Organizing namespaces - Readiness and Liveness probes - Resource requests and limits - Failing with grace - Mapping external services - Upgrading clusters with zero downtime

kubernetesdoit internationalmeetup
A Life of breakpoint
A Life of breakpointA Life of breakpoint
A Life of breakpoint

This document provides an overview of LLDB, an open-source debugger developed by Apple. It discusses LLDB's architecture, how it uses Clang and is scriptable/pluggable. It also summarizes how LLDB sets breakpoints, evaluates expressions by running on the target process, and prints structured variables using Clang type representations. Testing for LLDB consists of around 20 test cases written in Python. There is opportunity for external contributors to help with areas like testing and improving the CLI.

Realtime Analytics with MongoDB Counters (mongonyc 2012)
Realtime Analytics with MongoDB Counters (mongonyc 2012)Realtime Analytics with MongoDB Counters (mongonyc 2012)
Realtime Analytics with MongoDB Counters (mongonyc 2012)

This document discusses pre-aggregating data with counters in MongoDB to enable dashboard-style reports. It involves defining metrics and aggregations upfront, and using the $inc operator to increment values in aggregation collections during write operations. This allows generating real-time aggregated data without requiring map-reduce or the aggregation framework, providing better performance for dashboard queries.

mongodbrealtimemongonyc
No Problem!
SD can talk to foreign
    bug trackers
RT, Hiveminder and
 Trac work today
Google Code is next

Recommended for you

GOTO 2011 preso: 3x Hadoop
GOTO 2011 preso: 3x HadoopGOTO 2011 preso: 3x Hadoop
GOTO 2011 preso: 3x Hadoop

Millions of internet packets are sent each day to connect devices and route traffic on the global network. The internet relies on protocols like BGP to exchange routing information between nodes. Hadoop and HDFS provide a scalable way to store and process large amounts of unstructured data across clusters of machines. Users can launch Hadoop clusters in AWS using tools like Whirr to run analytics jobs without managing hardware.

apache hadoophdfsapache whirr
Can we run the Whole Web on Apache Sling?
Can we run the Whole Web on Apache Sling?Can we run the Whole Web on Apache Sling?
Can we run the Whole Web on Apache Sling?

Slides of our talk at adaptTo 2016, Chetan Mehrotra and myself (https://adapt.to/2016/en/schedule/let_s-run-the-whole-web-on-apache-sling-and-oak-.html). The code is at https://github.com/bdelacretaz/sling-adaptto-2016 and uses Docker to build a dynamic cluster of Apache Sling instances.

oakapachedocker
Swift Install Workshop - OpenStack Conference Spring 2012
Swift Install Workshop - OpenStack Conference Spring 2012Swift Install Workshop - OpenStack Conference Spring 2012
Swift Install Workshop - OpenStack Conference Spring 2012

OpenStack Swift is a highly-available distributed object storage system which supports highly concurrent workloads. Swift is the backbone behind Cloud Files, Rackspace's storage-as-a-service offering. In this workshop, which will be hosted by members of SwiftStack, Inc., we'll walk you through deployment and use of OpenStack Swift. We'll begin by showing you how to install Swift from the ground up. You'll learn: - what you should know about Swift's architecture - how to bootstrap a basic Swift installation After that, we'll cover how to use Swift, including information on: - creating accounts and users - adding, removing, and managing data - building applications on top of Swift Bring your laptop (with virutalization extensions enabled in the BIOS) and we will walk through setting up Swift in a virtual machine. We'll also build an entire application on top of Swift to illustrate how to use Swift as a storage service. This is a workshop you won't want to miss!

object storageopenstack swiftopenstack
Want to help with
Bugzilla, Github or
 something else?
Time to get SD
up and running
SD is in Perl
SD uses 45-90
CPAN modules

Recommended for you

Embulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loaderEmbulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loader

The document discusses Embulk, an open-source parallel bulk data loader that uses plugins. Embulk loads records from various sources ("A") to various targets ("B") using plugins for different source and target types. This makes the painful process of data integration more relaxed. Embulk executes in parallel, validates data, handles errors, behaves deterministically, and allows for idempotent retries of bulk loads.

embulk
carrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-APIcarrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-API

Apache Arrow is a cross-language development platform for in-memory data that specifies a standardized columnar memory format. It provides libraries and messaging for moving data between languages and services without serialization. The presenter discusses their motivation for creating Go bindings for Apache Arrow via C++ to share data between Go and Python programs using the same memory format. They explain several challenges of this approach, such as different memory managers in Go and C++, and solutions like generating wrapper code and handling memory with finalizers.

go golang softwareapache arrow
node.js: Javascript's in your backend
node.js: Javascript's in your backendnode.js: Javascript's in your backend
node.js: Javascript's in your backend

The document is a presentation about Node.js, a JavaScript runtime built on Chrome's V8 JavaScript engine. It discusses how Node.js uses an event-driven, non-blocking I/O model that makes it particularly suited for real-time web applications and I/O-intensive applications compared to traditional threaded server models. It provides examples of Node.js features like asynchronous I/O, event loops, modules and the npm package manager.

nodenodejsjavascript
SD, a P2P bug tracking system
Are you afraid?
Are you afraid?
Don’t be

Recommended for you

I Just Want to Run My Code: Waypoint, Nomad, and Other Things
I Just Want to Run My Code: Waypoint, Nomad, and Other ThingsI Just Want to Run My Code: Waypoint, Nomad, and Other Things
I Just Want to Run My Code: Waypoint, Nomad, and Other Things

Follow a nodejs application through Kubernetes, Nomad, Docker, and Pkg. Maybe learn a thing about how to think about systems along the way!

hashicorpkuberneteswaypoint
Os Gottfrid
Os GottfridOs Gottfrid
Os Gottfrid

DBSlayer is a middleware that allows web applications to access databases through HTTP and JSON. It provides a simple way to query databases by sending SQL statements in a JSON-formatted HTTP request and receiving the results of the query in the HTTP response also formatted in JSON. It aims to be independent, scalable, flexible and simple. Some features include connection pooling, load balancing queries across multiple databases, and automatic failover to alternate databases. It works by acting as an intermediary between web applications and databases, handling the network communication and database access transparently through its HTTP/JSON interface.

Who pulls the strings?
Who pulls the strings?Who pulls the strings?
Who pulls the strings?

This document summarizes integrating the OpenNMS network monitoring platform with modern configuration management tools like Puppet. It discusses using Puppet to provision and automatically configure nodes in OpenNMS from Puppet's configuration data. The authors provide code for pulling node data from Puppet's REST API and generating an XML file for OpenNMS to import the nodes and their configuration. They also discuss opportunities to further improve the integration by developing a Java object model for Puppet's YAML output and filtering imports based on node attributes.

puppetopennmsconfiguration management
You’ll need:

curl, perl 5.8, C compiler
You won’t need:

    CPAN
You won’t need:

to answer prompts
You won’t need:

to fix dependencies

Recommended for you

PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat
PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat
PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat

The document discusses best practices for writing a C/C++ Python extension in 2017. It covers available options like ctypes, cffi, Cython, and SWIG. It then focuses on building a binary Python extension using ctypes, including debugging crashes by generating core files and using lldb/gdb. It also discusses memory issues and using valgrind and clang sanitizers. It recommends abusing Python unit tests for testing C code. Finally, it covers shipping the extension, including manylinux wheels, testing wheels on different Linux distributions with Docker, and publishing source and wheel distributions.

pythondata
Building a keyboard from scratch
Building a keyboard from scratchBuilding a keyboard from scratch
Building a keyboard from scratch

The document outlines the process for building a keyboard from scratch. It discusses selecting and obtaining the necessary tools and parts, including a microcontroller, switches, wires, and case materials. The document guides the reader through designing the keyboard layout, circuitry, and firmware. It also shares the speaker's experience building multiple prototype keyboards through an iterative design process. The goal is to demonstrate that building a custom keyboard is an achievable project that allows for creative hardware design and customization.

solderteensykeyboard
So, I made a keyboard
So, I made a keyboardSo, I made a keyboard
So, I made a keyboard

The document provides step-by-step instructions for building a keyboard from scratch. It lists the necessary tools like a soldering iron, parts like keyswitches and diodes, and gives guidance on laying out the keyboard, soldering the components together, and configuring firmware. The document also describes the author's experience building several prototype keyboards and shares photos of the progression from early models to more polished designs.

teensykeyboardqwerty
curl http://fsck.com/sd|perl
export PATH=$PATH:~/sd/bin
curl http://17h.local/sd|perl
export PATH=$PATH:~/sd/bin
Using SD (CLI)
Getting Started

Recommended for you

Dancing App Stores - Android Open 2011
Dancing App Stores - Android Open 2011Dancing App Stores - Android Open 2011
Dancing App Stores - Android Open 2011

The document discusses the many Android app stores that exist, including major ones like the Google Play Store and Amazon App Store, as well as smaller niche stores. It describes the author's experiences submitting their apps K-9 Mail and Kaiten Mail to different stores. Key challenges included long review times, limited statistics and support, and low sales on some stores. The author argues submitting apps to multiple stores can increase revenues but requires managing different processes and policies across each store.

Perl 5.16 and Beyond - YAPC::Asia 2011
Perl 5.16 and Beyond - YAPC::Asia 2011Perl 5.16 and Beyond - YAPC::Asia 2011
Perl 5.16 and Beyond - YAPC::Asia 2011

The document discusses a vision for improving and modernizing Perl 5. Some key points include: - Making it possible to declare and maintain different versions of Perl 5 semantics to avoid breaking existing code. - Externalizing features like SysV IPC and sockets into optional modules to reduce the core language size. - Establishing sane defaults like warnings and stricter open() behavior to clean up parts of the language. - Continuing to improve the development and release process to make contributions and changes easier. The overall goal is to make Perl 5 a smaller, simpler, and more stable language while still allowing it to evolve over time without unexpected breaks to existing code.

Perl 5.16 and beyond
Perl 5.16 and beyondPerl 5.16 and beyond
Perl 5.16 and beyond

Perl 5 is evolving rapidly with new stable releases being produced more frequently. The vision is to allow Perl 5 to continue evolving while maintaining backwards compatibility. This may involve externalizing features into modules, allowing different versions of Perl semantics based on version declarations, and moving to saner defaults over time through longer deprecation cycles. The goal is to keep Perl 5 a useful and sustainable language.

perl core yapc camel pumpking pumpkin yapceu
SD Shell

$ sd
./
Getting help

$ sd help
SD, a P2P bug tracking system

Recommended for you

OSCON 2011 - Perl 5.16 and beyond
OSCON 2011 - Perl 5.16 and beyondOSCON 2011 - Perl 5.16 and beyond
OSCON 2011 - Perl 5.16 and beyond

The document discusses plans for future versions of Perl 5. Key points include: - Perl 5 releases now happen much more frequently due to streamlined processes and rotating release engineers. - Backward compatibility is a priority, but the language must continue evolving. A proposal to declare expected Perl versions would allow new features while maintaining old semantics for older code. - Major changes that break backward compatibility would only happen as a last resort, with long deprecation cycles. - Cleaning up and slimming down the Perl core language is a goal to make it more manageable and easier to learn.

oscon perl 2011 5.16 5.20
RT4 - The whole sordid story
RT4 - The whole sordid storyRT4 - The whole sordid story
RT4 - The whole sordid story

Building RT 4 took a lot more work than we'd expected. In the end, we learned some useful lessons and ended up with a great product.

K-9 Mail for Android
K-9 Mail for AndroidK-9 Mail for Android
K-9 Mail for Android

K-9 Mail is an open source email client for Android created by Jesse Vincent after he was dissatisfied with the default email app that came with Android. It has grown significantly since its creation and now has over 150,000 downloads and contributions from many developers. The document outlines how Jesse created K-9 Mail by making a small change to the existing Android email app source code and submitting it to the Android Market. It details how the project has evolved and how new developers can get involved by building it from source and submitting patches.

k-9osdctw2010android
Creating a new project

$ sd init
SD, a P2P bug tracking system
Project settings

$ sd settings
SD, a P2P bug tracking system

Recommended for you

Perl 5.12.0
Perl 5.12.0Perl 5.12.0
Perl 5.12.0

Perl 5.12 was recently released with several new features and improvements but no critical regressions reported so far. The "Pumpking" or project leader explained that development releases are now made monthly by release managers, reducing the workload on the Pumpking. Contributors now make the majority of changes to Perl, with over 70 unique authors contributing monthly.

osdctw2010perl
P2P Bug Tracking with SD
P2P Bug Tracking with SDP2P Bug Tracking with SD
P2P Bug Tracking with SD

SD is a peer-to-peer (P2P) bug tracking system that allows users to track bugs and work even when offline or without reliable network access. It was created by Jesse Vincent, the founder of Best Practical, because existing bug tracking solutions did not meet his needs as someone who spends a lot of time traveling without reliable WiFi access. SD synchronizes issues and changes across devices and other issue trackers using a distributed model rather than depending on a centralized network infrastructure.

p2ptrackingsocial
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

SD is a peer-to-peer bug tracking tool that allows users to track bugs offline and sync changes across networks. It addresses common issues with other bug tracking solutions by running at the edge, not depending on network reliability, and being topology-agnostic. SD can sync with other bug trackers like RT, Trac, Google Code and GitHub. It uses principles of distributed computing to resolve conflicts as changes are pulled from other users. The tool has a command line interface and can be installed via a one-line command that handles dependencies.

prophetp2psd
Config file

$ sd config
SD, a P2P bug tracking system
Mirroring a project

$ sd clone
SD, a P2P bug tracking system

Recommended for you

Hacking your Kindle (OSCON Lightning Talk)
Hacking your Kindle (OSCON Lightning Talk)Hacking your Kindle (OSCON Lightning Talk)
Hacking your Kindle (OSCON Lightning Talk)

This document summarizes the speaker's experience hacking their first ebook reader, the Kindle 2, to add additional functionality. It describes how they used USB networking debugging mode to access the Kindle's Linux filesystem, installed software like Calibre and Savory to allow additional ebook formats like ePub and PDF, and eventually ported Ubuntu and X.org to the device to build a custom PDF reader utilizing the Kindle's screen and inputs. The speaker outlines the device's technical specifications and limitations, and details the steps taken to modify and cross-compile software for the embedded Linux environment.

linuxkindleoscon
Beginning Kindle Hackery
Beginning Kindle HackeryBeginning Kindle Hackery
Beginning Kindle Hackery

I gave a talk on Kindle hacking at Shibuya Perl Mongers in April 2009. It documents my first couple months messing around with the Kindle.

shibuyapmkindle
Prophet - Beijing Perl Workshop
Prophet - Beijing Perl WorkshopProphet - Beijing Perl Workshop
Prophet - Beijing Perl Workshop

The document introduces Prophet, an open source peer-to-peer replicated database designed for offline and disconnected use. It aims to provide an alternative to cloud computing by allowing users to own and control their own data. The document discusses Prophet's architecture, capabilities for conflict resolution and synchronization, and potential applications like a bug tracking system called SD. It encourages readers to get involved by helping with improvements and developing new applications that can take advantage of Prophet's capabilities.

bpw2008databasep2p
SD, a P2P bug tracking system
Publishing

$ sd publish
SD, a P2P bug tracking system
Pulling

$ sd pull

Recommended for you

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

Template::Declare is a pure Perl templating engine that allows templates to be treated like code. Templates can be refactored, use object orientation and mixins. Tags are implemented as closures that can output content immediately or return closures. CSS::Squish is a CSS compiler that combines multiple small CSS files into one large file for easier serving, improving performance by allowing browsers to cache the combined file.

bpw2008perlhiveminder
A brief introduction to RTIR
A brief introduction to RTIRA brief introduction to RTIR
A brief introduction to RTIR

RT and RTIR are open source ticketing systems designed by Jesse Vincent and Best Practical to help system administrators, helpdesk staff, and CERT teams be more effective. RTIR is based on RT but customized for incident response with features like incident reports, investigations, and network blocks. It provides a workflow and tools to help teams track incidents from initial reports through investigation and resolution. Both systems are free to use and have an active international user and developer community providing support.

An introduction to RTIR
An introduction to RTIRAn introduction to RTIR
An introduction to RTIR

An introduction to RTIR as presented to a number of Mexican universities just before the UNAM.mx Congreso de Seguridad en Cómputo

SD, a P2P bug tracking system
Create a bug

$ sd ticket create
SD, a P2P bug tracking system
Listing bugs

$ sd ticket list

Recommended for you

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

Prophet is an open source database created by Jesse Vincent that is designed for team-scale apps and built for peer-to-peer replication and disconnected use. The database has an API similar to Amazon SimpleDB or Google App Engine and the first app being built on it is a canonical offline bug tracker that can sync over local networks.

syncdatabaseprophet
Web 2.0 is Sharecropping
Web 2.0 is SharecroppingWeb 2.0 is Sharecropping
Web 2.0 is Sharecropping

Web 2.0 services resemble modern sharecropping where users contribute data and labor but do not own the services or have control over their data. If a service goes down or stops allowing new users, there is no recourse for the users. The author argues that users should have access to their own data through open APIs and services should be designed to work offline through peer-to-peer synchronization to avoid lock-in to specific service providers. The author is developing an open source database called Prophet that is aimed at building applications that can work offline through replication and without internet access.

web2.0sharecroppingignite
Hiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret SauceHiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret Sauce

Ten tools and techniques to help you: Find bugs faster バグの検出をもっと素早く Build web apps ウェブアプリの構築 Ship software ソフトのリリース Get input from users ユーザからの入力を受けつける Own the Inbox 受信箱を用意する 今日の話

hiveminderyapcperl
SD, a P2P bug tracking system
SD, a P2P bug tracking system
Show a bug

$ sd ticket show
SD, a P2P bug tracking system

Recommended for you

Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...

This presentation explores the practical application of image description techniques. Familiar guidelines will be demonstrated in practice, and descriptions will be developed “live”! If you have learned a lot about the theory of image description techniques but want to feel more confident putting them into practice, this is the presentation for you. There will be useful, actionable information for everyone, whether you are working with authors, colleagues, alone, or leveraging AI as a collaborator. Link to presentation recording and slides: https://bnctechforum.ca/sessions/details-of-description-part-ii-describing-images-in-practice/ Presented by BookNet Canada on June 25, 2024, with support from the Department of Canadian Heritage.

a11yaccessibilityalt text
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly DetectionAdvanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly Detection

Cybersecurity is a major concern in today's connected digital world. Threats to organizations are constantly evolving and have the potential to compromise sensitive information, disrupt operations, and lead to significant financial losses. Traditional cybersecurity techniques often fall short against modern attackers. Therefore, advanced techniques for cyber security analysis and anomaly detection are essential for protecting digital assets. This blog explores these cutting-edge methods, providing a comprehensive overview of their application and importance.

cybersecurityanomaly detectionadvanced techniques
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf

Sustainability requires ingenuity and stewardship. Did you know Pigging Solutions pigging systems help you achieve your sustainable manufacturing goals AND provide rapid return on investment. How? Our systems recover over 99% of product in transfer piping. Recovering trapped product from transfer lines that would otherwise become flush-waste, means you can increase batch yields and eliminate flush waste. From raw materials to finished product, if you can pump it, we can pig it.

pigging solutionsprocess piggingproduct transfers
Update a bug

$ sd ticket update
SD, a P2P bug tracking system
SD, a P2P bug tracking system
SD, a P2P bug tracking system

Recommended for you

Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf

As a popular open-source library for analytics engineering, dbt is often used in combination with Airflow. Orchestrating and executing dbt models as DAGs ensures an additional layer of control over tasks, observability, and provides a reliable, scalable environment to run dbt models. This webinar will cover a step-by-step guide to Cosmos, an open source package from Astronomer that helps you easily run your dbt Core projects as Airflow DAGs and Task Groups, all with just a few lines of code. We’ll walk through: - Standard ways of running dbt (and when to utilize other methods) - How Cosmos can be used to run and visualize your dbt projects in Airflow - Common challenges and how to address them, including performance, dependency conflicts, and more - How running dbt projects in Airflow helps with cost optimization Webinar given on 9 July 2024

apache airflowdbtdbt-core
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024

Everything that I found interesting last month about the irresponsible use of machine intelligence

quantumfaxmachine
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation

Java Servlet programs

Log

$ sd log
SD, a P2P bug tracking system
SD, a P2P bug tracking system
Git Integration

$ git sd

Recommended for you

Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry

Are you interested in dipping your toes in the cloud native observability waters, but as an engineer you are not sure where to get started with tracing problems through your microservices and application landscapes on Kubernetes? Then this is the session for you, where we take you on your first steps in an active open-source project that offers a buffet of languages, challenges, and opportunities for getting started with telemetry data. The project is called openTelemetry, but before diving into the specifics, we’ll start with de-mystifying key concepts and terms such as observability, telemetry, instrumentation, cardinality, percentile to lay a foundation. After understanding the nuts and bolts of observability and distributed traces, we’ll explore the openTelemetry community; its Special Interest Groups (SIGs), repositories, and how to become not only an end-user, but possibly a contributor.We will wrap up with an overview of the components in this project, such as the Collector, the OpenTelemetry protocol (OTLP), its APIs, and its SDKs. Attendees will leave with an understanding of key observability concepts, become grounded in distributed tracing terminology, be aware of the components of openTelemetry, and know how to take their first steps to an open-source contribution! Key Takeaways: Open source, vendor neutral instrumentation is an exciting new reality as the industry standardizes on openTelemetry for observability. OpenTelemetry is on a mission to enable effective observability by making high-quality, portable telemetry ubiquitous. The world of observability and monitoring today has a steep learning curve and in order to achieve ubiquity, the project would benefit from growing our contributor community.

cloudcloud native observabilitycloud native
Measuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at TwitterMeasuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at Twitter

Widya Salim and Victor Ma will outline the causal impact analysis, framework, and key learnings used to quantify the impact of reducing Twitter's network latency.

Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM

Quantum Communications Q&A with Gemini LLM. These are based on Shannon's Noisy channel Theorem and offers how the classical theory applies to the quantum world.

quantum communicationsshannon's channel theoremclassical theory
SD, a P2P bug tracking system
Using SD (Web)
Web? Isn’t SD an
 offline tool?
Local microserver

Recommended for you

Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...

Today’s digitally connected world presents a wide range of security challenges for enterprises. Insider security threats are particularly noteworthy because they have the potential to cause significant harm. Unlike external threats, insider risks originate from within the company, making them more subtle and challenging to identify. This blog aims to provide a comprehensive understanding of insider security threats, including their types, examples, effects, and mitigation techniques.

insider securitycybersecurity threatsenterprise security
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time

Is your patent a vanity piece of paper for your office wall? Or is it a reliable, defendable, assertable, property right? The difference is often quality. Is your patent simply a transactional cost and a large pile of legal bills for your startup? Or is it a leverageable asset worthy of attracting precious investment dollars, worth its cost in multiples of valuation? The difference is often quality. Is your patent application only good enough to get through the examination process? Or has it been crafted to stand the tests of time and varied audiences if you later need to assert that document against an infringer, find yourself litigating with it in an Article 3 Court at the hands of a judge and jury, God forbid, end up having to defend its validity at the PTAB, or even needing to use it to block pirated imports at the International Trade Commission? The difference is often quality. Quality will be our focus for a good chunk of the remainder of this season. What goes into a quality patent, and where possible, how do you get it without breaking the bank? ** Episode Overview ** In this first episode of our quality series, Kristen Hansen and the panel discuss: ⦿ What do we mean when we say patent quality? ⦿ Why is patent quality important? ⦿ How to balance quality and budget ⦿ The importance of searching, continuations, and draftsperson domain expertise ⦿ Very practical tips, tricks, examples, and Kristen’s Musts for drafting quality applications https://www.aurorapatents.com/patently-strategic-podcast.html

patentspatent applicationpatent prosecution
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx

MuleSoft Meetup on APM and IDP

mulesoftai
SD, a P2P bug tracking system
Home
SD, a P2P bug tracking system
Search

Recommended for you

What's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptxWhat's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptx

This is a slide deck that showcases the updates in Microsoft Copilot for May 2024

microsoftmicrosoft copilot
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides

If you’ve ever had to analyze a map or GPS data, chances are you’ve encountered and even worked with coordinate systems. As historical data continually updates through GPS, understanding coordinate systems is increasingly crucial. However, not everyone knows why they exist or how to effectively use them for data-driven insights. During this webinar, you’ll learn exactly what coordinate systems are and how you can use FME to maintain and transform your data’s coordinate systems in an easy-to-digest way, accurately representing the geographical space that it exists within. During this webinar, you will have the chance to: - Enhance Your Understanding: Gain a clear overview of what coordinate systems are and their value - Learn Practical Applications: Why we need datams and projections, plus units between coordinate systems - Maximize with FME: Understand how FME handles coordinate systems, including a brief summary of the 3 main reprojectors - Custom Coordinate Systems: Learn how to work with FME and coordinate systems beyond what is natively supported - Look Ahead: Gain insights into where FME is headed with coordinate systems in the future Don’t miss the opportunity to improve the value you receive from your coordinate system data, ultimately allowing you to streamline your data analysis and maximize your time. See you there!

How RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptxHow RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptx

Revolutionize your transportation processes with our cutting-edge RPA software. Automate repetitive tasks, reduce costs, and enhance efficiency in the logistics sector with our advanced solutions.

rpa in transportationrpa in transportation industryrpa in transportation sector
SD, a P2P bug tracking system
Show a bug
SD, a P2P bug tracking system
Update a bug

Recommended for you

Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world

The presentation showcases the diverse real-world applications of Fused Deposition Modeling (FDM) across multiple industries: 1. **Manufacturing**: FDM is utilized in manufacturing for rapid prototyping, creating custom tools and fixtures, and producing functional end-use parts. Companies leverage its cost-effectiveness and flexibility to streamline production processes. 2. **Medical**: In the medical field, FDM is used to create patient-specific anatomical models, surgical guides, and prosthetics. Its ability to produce precise and biocompatible parts supports advancements in personalized healthcare solutions. 3. **Education**: FDM plays a crucial role in education by enabling students to learn about design and engineering through hands-on 3D printing projects. It promotes innovation and practical skill development in STEM disciplines. 4. **Science**: Researchers use FDM to prototype equipment for scientific experiments, build custom laboratory tools, and create models for visualization and testing purposes. It facilitates rapid iteration and customization in scientific endeavors. 5. **Automotive**: Automotive manufacturers employ FDM for prototyping vehicle components, tooling for assembly lines, and customized parts. It speeds up the design validation process and enhances efficiency in automotive engineering. 6. **Consumer Electronics**: FDM is utilized in consumer electronics for designing and prototyping product enclosures, casings, and internal components. It enables rapid iteration and customization to meet evolving consumer demands. 7. **Robotics**: Robotics engineers leverage FDM to prototype robot parts, create lightweight and durable components, and customize robot designs for specific applications. It supports innovation and optimization in robotic systems. 8. **Aerospace**: In aerospace, FDM is used to manufacture lightweight parts, complex geometries, and prototypes of aircraft components. It contributes to cost reduction, faster production cycles, and weight savings in aerospace engineering. 9. **Architecture**: Architects utilize FDM for creating detailed architectural models, prototypes of building components, and intricate designs. It aids in visualizing concepts, testing structural integrity, and communicating design ideas effectively. Each industry example demonstrates how FDM enhances innovation, accelerates product development, and addresses specific challenges through advanced manufacturing capabilities.

fdmffffused deposition modeling
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy

Not so much to say

DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition

The DealBook is our annual overview of the Ukrainian tech investment industry. This edition comprehensively covers the full year 2023 and the first deals of 2024.

SD, a P2P bug tracking system
History
SD, a P2P bug tracking system
Create a ticket

Recommended for you

Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation

Manual Method of Product Research | Helium10 | MBS RETRIEVER

product researchhelium10 | mbs retriever
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...

Jindong Gu, Zhen Han, Shuo Chen, Ahmad Beirami, Bailan He, Gengyuan Zhang, Ruotong Liao, Yao Qin, Volker Tresp, Philip Torr "A Systematic Survey of Prompt Engineering on Vision-Language Foundation Models" arXiv2023 https://arxiv.org/abs/2307.12980

SD, a P2P bug tracking system
Working with others
Working with others
   (Using SD)
Any topology

Recommended for you

It doesn’t matter who
     you sync with
You get all the updates
      eventually
Cloning

$ sd clone
Make a copy of
someone else’s
  database

Recommended for you

Pulling

$ sd pull
Grab unseen changes
from another database
       replica
Publishing

$ sd publish
Write out your
database replica for
      sharing

Recommended for you

(As SD changesets
 and static HTML)
Hackathon mode
 (using Bonjour)
Publish your replica

$ sd server
Pull updates

$ sd pull --local

Recommended for you

Working with others
(Using other systems)
What other systems?
Sync with RT
Sync with Trac

Recommended for you

Sync with Hiveminder
Sync with lots more...
(If you help write code)
Star topology

Recommended for you

One SD node acts as a
      gateway
Clone

$ sd clone
SD reverse engineers a
   database history
Pull

$ sd pull

Recommended for you

SD reverse engineers
partial database history
Push

$ sd push
SD figures out local
 updates and sends
  them upstream
What’s wrong with SD?

Recommended for you

$ sd clone http://fsck.com/~jesse/sd-bugs
You don’t want to
   install SD?
Point your browser at
http://fsck.com/~jesse/sd-bugs
What’s next?

Recommended for you

Push to Trac
Google Code support
Indexing
GPG-signed changesets

Recommended for you

Actually releasing 1.0
Questions?

http://syncwith.us
jesse@bestpractical.com
Bonus Material
Perl and Dependencies

Recommended for you

SD is in Perl
SD uses CPAN
  modules.
This is a blessing.
This is a curse.

Recommended for you

CPAN
      =
Dependency Hell
SD, a P2P bug tracking system
123 Dependencies
...one hour later:

Recommended for you

SD, a P2P bug tracking system
95 Dependencies
...another hour later
SD, a P2P bug tracking system

Recommended for you

82 Dependencies
Where we are today:
SD, a P2P bug tracking system
42 Dependencies

Recommended for you

Only one needs a
   compiler.
Shipwright gives us
one-command install
curl http://fsck.com/sd|perl
export PATH=$PATH:~/sd/bin
What’s that do?

Recommended for you

$ head /Library/WebServer/Documents/sd

open (my $tar,'|tar xz 2>/dev/null');
while (<DATA>) {
    print $tar $_;
}
close $tar;
exec(quot;cd sd-build; bin/shipwright-builder 
      --install-base=$ENV{HOME}/sdquot;);
__DATA__
?I?Isd-build.tar?<is?F???_1?䀌yH?quot;#‫{$ۿ‬U???H?eH
...
Then it installs some
  Perl modules...
...in order
Array-Compare            Params-Util
                                               Module-Pluggable
Carp-Assert              Params-Validate
                                               Net-DNS
Class-Accessor           Path-Class
                                               Sub-Exporter
Class-Data-Inheritable   Proc-InvokeEditor
                                               Test-Exception
Class-Inspector          Scalar-List-Utils
                                               Test-HTTP-Server-Simple
Class-Singleton          String-BufferStack
                                               Test-LongString
Clone                    Sub-Install
                                               Test-MockObject
Compress-Raw-Bzip2       Sub-Uplevel
                                               Test-MockTime
Compress-Raw-Zlib        TermReadKey
                                               Test-Script-Run
DBI                      Test-Harness
                                               Test-Warn
Data-UUID                Test-Simple
                                               libwww-perl
Devel-StackTrace         Text-CSV
                                               Carp-Assert-More
Digest-SHA               Time-Piece
                                               DateTime-Locale
Digest-SHA1              Time-Progress
                                               DateTime-TimeZone
Email-Address            Tree-DAG_Node
                                               HTTP-Response-Encoding
Error                    UNIVERSAL-can
                                               Mouse
Exception-Class          UNIVERSAL-isa
                                               Net-Bonjour
Exporter-Lite            URI
                                               RT-Client-REST
ExtUtils-CBuilder        XML-Atom-SimpleFeed
                                               Template-Declare
ExtUtils-ParseXS         YAML
                                               WWW-Mechanize
File-Temp                YAML-Syck
                                               Any-Moose
HTML-Tagset              boolean
                                               DateTime
Hash-Merge               version
                                               DateTime-Format-Natural
IO-Compress              DBD-SQLite
                                               Net-Jifty
IPC-Run3                 Data-OptList
                                               Net-Trac
JSON                     Digest-HMAC
                                               Path-Dispatcher
JSON-XS                  File-ShareDir
                                               Test-WWW-Mechanize
Lingua-EN-Inflect         HTML-Parser
                                               - prophet.git
List-MoreUtils           HTML-Tree
                                               - sd.git
Module-Refresh           HTTP-Server-Simple
Net-IP                   Module-Build

Recommended for you

I’m never offline. Why
do I care about P2P bug
        tracking?
...about cloud
   computing     ☔
Living in the cloud
           =
sharecropping         )
(That’s bad)

Recommended for you

The bad old days:
Pic of sharecroppers
You farmed land you
    didn’t own...
...with tools you
couldn’t really afford

Recommended for you

You paid for it with
part of your harvest...
It sounded like a
pretty sweet deal...
...until things got bad
(Things always got bad)

Recommended for you

SD, a P2P bug tracking system
(Internet)
(Cloud)




          (Internet)
In a bad year, you got
  further in debt to
   the land owner

Recommended for you

SD, a P2P bug tracking system
So, what does this have
 to do with software?
The (more recent)
  bad old days:
pic of mainframes

Recommended for you

You ran code you didn’t
 own on hardware you
      didn’t own
Things started to get
 better in the 1980s
SD, a P2P bug tracking system
Pic of PCs

Recommended for you

Users started to be
able to make choices
 about computing...
They weren’t all rosy
Pic of BSOD
Sometimes new
versions of software
   broke things...

Recommended for you

...leaving you locked in
     to old versions
pic of win 31?
Things got ‘better’
rms
che

Recommended for you

Now, things are getting
   worse again...
SD, a P2P bug tracking system
What happens when
your favorite service
    goes down?
pic of twitter being
        down

Recommended for you

...or stops accepting
     new signups?
SD, a P2P bug tracking system
...or starts making
arbitrary choices about
 what’s ‘safe’ content?
SD, a P2P bug tracking system

Recommended for you

...or breaks
SD, a P2P bug tracking system
You don’t own the
 services you use
You probably don’t
even have a contract

Recommended for you

When a service
provider cuts you off,
      you lose
Not so secret shame:

I still need the cloud
My calendar lives at
   google.com
SD, a P2P bug tracking system

Recommended for you

I make a Web 2.0 todo
   list service called
    Hiveminder.com
pic of hiveminder
☣ Using hosted apps
is going to hurt you! ☣
What about Google
Gears, Adobe Air, etc?

Recommended for you

Great. now you can use
 your word processer
  while you’re offline!
Pic of wordperfect
Real offline apps
should not need servers
Real offline apps
should sync like you do

Recommended for you

More Related Content

What's hot

Advanced I/O in browser
Advanced I/O in browserAdvanced I/O in browser
Advanced I/O in browser
Eugene Lazutkin
 
JavaOne 2011 - JVM Bytecode for Dummies
JavaOne 2011 - JVM Bytecode for DummiesJavaOne 2011 - JVM Bytecode for Dummies
JavaOne 2011 - JVM Bytecode for Dummies
Charles Nutter
 
JRuby 9000 - Taipei Ruby User's Group 2015
JRuby 9000 - Taipei Ruby User's Group 2015JRuby 9000 - Taipei Ruby User's Group 2015
JRuby 9000 - Taipei Ruby User's Group 2015
Charles Nutter
 
JVM for Dummies - OSCON 2011
JVM for Dummies - OSCON 2011JVM for Dummies - OSCON 2011
JVM for Dummies - OSCON 2011
Charles Nutter
 
Hijacking Ruby Syntax in Ruby (RubyConf 2018)
Hijacking Ruby Syntax in Ruby (RubyConf 2018)Hijacking Ruby Syntax in Ruby (RubyConf 2018)
Hijacking Ruby Syntax in Ruby (RubyConf 2018)
SATOSHI TAGOMORI
 
Stop Worrying & Love the SQL - A Case Study
Stop Worrying & Love the SQL - A Case StudyStop Worrying & Love the SQL - A Case Study
Stop Worrying & Love the SQL - A Case Study
All Things Open
 
A fast introduction to PySpark with a quick look at Arrow based UDFs
A fast introduction to PySpark with a quick look at Arrow based UDFsA fast introduction to PySpark with a quick look at Arrow based UDFs
A fast introduction to PySpark with a quick look at Arrow based UDFs
Holden Karau
 
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...
MongoDB
 
When Ruby Meets Java - The Power of Torquebox
When Ruby Meets Java - The Power of TorqueboxWhen Ruby Meets Java - The Power of Torquebox
When Ruby Meets Java - The Power of Torquebox
rockyjaiswal
 
moscmy2016: Extending Docker
moscmy2016: Extending Dockermoscmy2016: Extending Docker
moscmy2016: Extending Docker
Mohammad Fairus Khalid
 
服务框架: Thrift & PasteScript
服务框架: Thrift & PasteScript服务框架: Thrift & PasteScript
服务框架: Thrift & PasteScript
Qiangning Hong
 
Message-passing concurrency in Python
Message-passing concurrency in PythonMessage-passing concurrency in Python
Message-passing concurrency in Python
Sarah Mount
 
A million connections and beyond - Node.js at scale
A million connections and beyond - Node.js at scaleA million connections and beyond - Node.js at scale
A million connections and beyond - Node.js at scale
Tom Croucher
 
Practical Testing of Ruby Core
Practical Testing of Ruby CorePractical Testing of Ruby Core
Practical Testing of Ruby Core
Hiroshi SHIBATA
 
Demo 0.9.4
Demo 0.9.4Demo 0.9.4
Demo 0.9.4
eTimeline, LLC
 
PuppetDB: Sneaking Clojure into Operations
PuppetDB: Sneaking Clojure into OperationsPuppetDB: Sneaking Clojure into Operations
PuppetDB: Sneaking Clojure into Operations
grim_radical
 
Concurrency in Python
Concurrency in PythonConcurrency in Python
Concurrency in Python
Gavin Roy
 
The DOM is a Mess @ Yahoo
The DOM is a Mess @ YahooThe DOM is a Mess @ Yahoo
The DOM is a Mess @ Yahoo
jeresig
 
Fluentd and Embulk Game Server 4
Fluentd and Embulk Game Server 4Fluentd and Embulk Game Server 4
Fluentd and Embulk Game Server 4
N Masahiro
 
Practical Groovy DSL
Practical Groovy DSLPractical Groovy DSL
Practical Groovy DSL
Guillaume Laforge
 

What's hot (20)

Advanced I/O in browser
Advanced I/O in browserAdvanced I/O in browser
Advanced I/O in browser
 
JavaOne 2011 - JVM Bytecode for Dummies
JavaOne 2011 - JVM Bytecode for DummiesJavaOne 2011 - JVM Bytecode for Dummies
JavaOne 2011 - JVM Bytecode for Dummies
 
JRuby 9000 - Taipei Ruby User's Group 2015
JRuby 9000 - Taipei Ruby User's Group 2015JRuby 9000 - Taipei Ruby User's Group 2015
JRuby 9000 - Taipei Ruby User's Group 2015
 
JVM for Dummies - OSCON 2011
JVM for Dummies - OSCON 2011JVM for Dummies - OSCON 2011
JVM for Dummies - OSCON 2011
 
Hijacking Ruby Syntax in Ruby (RubyConf 2018)
Hijacking Ruby Syntax in Ruby (RubyConf 2018)Hijacking Ruby Syntax in Ruby (RubyConf 2018)
Hijacking Ruby Syntax in Ruby (RubyConf 2018)
 
Stop Worrying & Love the SQL - A Case Study
Stop Worrying & Love the SQL - A Case StudyStop Worrying & Love the SQL - A Case Study
Stop Worrying & Love the SQL - A Case Study
 
A fast introduction to PySpark with a quick look at Arrow based UDFs
A fast introduction to PySpark with a quick look at Arrow based UDFsA fast introduction to PySpark with a quick look at Arrow based UDFs
A fast introduction to PySpark with a quick look at Arrow based UDFs
 
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...
Ensuring High Availability for Real-time Analytics featuring Boxed Ice / Serv...
 
When Ruby Meets Java - The Power of Torquebox
When Ruby Meets Java - The Power of TorqueboxWhen Ruby Meets Java - The Power of Torquebox
When Ruby Meets Java - The Power of Torquebox
 
moscmy2016: Extending Docker
moscmy2016: Extending Dockermoscmy2016: Extending Docker
moscmy2016: Extending Docker
 
服务框架: Thrift & PasteScript
服务框架: Thrift & PasteScript服务框架: Thrift & PasteScript
服务框架: Thrift & PasteScript
 
Message-passing concurrency in Python
Message-passing concurrency in PythonMessage-passing concurrency in Python
Message-passing concurrency in Python
 
A million connections and beyond - Node.js at scale
A million connections and beyond - Node.js at scaleA million connections and beyond - Node.js at scale
A million connections and beyond - Node.js at scale
 
Practical Testing of Ruby Core
Practical Testing of Ruby CorePractical Testing of Ruby Core
Practical Testing of Ruby Core
 
Demo 0.9.4
Demo 0.9.4Demo 0.9.4
Demo 0.9.4
 
PuppetDB: Sneaking Clojure into Operations
PuppetDB: Sneaking Clojure into OperationsPuppetDB: Sneaking Clojure into Operations
PuppetDB: Sneaking Clojure into Operations
 
Concurrency in Python
Concurrency in PythonConcurrency in Python
Concurrency in Python
 
The DOM is a Mess @ Yahoo
The DOM is a Mess @ YahooThe DOM is a Mess @ Yahoo
The DOM is a Mess @ Yahoo
 
Fluentd and Embulk Game Server 4
Fluentd and Embulk Game Server 4Fluentd and Embulk Game Server 4
Fluentd and Embulk Game Server 4
 
Practical Groovy DSL
Practical Groovy DSLPractical Groovy DSL
Practical Groovy DSL
 

Similar to SD, a P2P bug tracking system

Scaling Big Data Mining Infrastructure Twitter Experience
Scaling Big Data Mining Infrastructure Twitter ExperienceScaling Big Data Mining Infrastructure Twitter Experience
Scaling Big Data Mining Infrastructure Twitter Experience
DataWorks Summit
 
Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011
Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011
Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011
Vlad Savitsky
 
Big Data Beyond the JVM - Strata San Jose 2018
Big Data Beyond the JVM - Strata San Jose 2018Big Data Beyond the JVM - Strata San Jose 2018
Big Data Beyond the JVM - Strata San Jose 2018
Holden Karau
 
Web Development Environments: Choose the best or go with the rest
Web Development Environments:  Choose the best or go with the restWeb Development Environments:  Choose the best or go with the rest
Web Development Environments: Choose the best or go with the rest
george.james
 
Why Rust? - Matthias Endler - Codemotion Amsterdam 2016
Why Rust? - Matthias Endler - Codemotion Amsterdam 2016Why Rust? - Matthias Endler - Codemotion Amsterdam 2016
Why Rust? - Matthias Endler - Codemotion Amsterdam 2016
Codemotion
 
Jaap : node, npm & grunt
Jaap : node, npm & gruntJaap : node, npm & grunt
Jaap : node, npm & grunt
Bertrand Chevrier
 
RackN Physical Layer Automation Innovation
RackN Physical Layer Automation InnovationRackN Physical Layer Automation Innovation
RackN Physical Layer Automation Innovation
rhirschfeld
 
K8s best practices from the field!
K8s best practices from the field!K8s best practices from the field!
K8s best practices from the field!
DoiT International
 
A Life of breakpoint
A Life of breakpointA Life of breakpoint
A Life of breakpoint
Hajime Morrita
 
Realtime Analytics with MongoDB Counters (mongonyc 2012)
Realtime Analytics with MongoDB Counters (mongonyc 2012)Realtime Analytics with MongoDB Counters (mongonyc 2012)
Realtime Analytics with MongoDB Counters (mongonyc 2012)
Scott Hernandez
 
GOTO 2011 preso: 3x Hadoop
GOTO 2011 preso: 3x HadoopGOTO 2011 preso: 3x Hadoop
GOTO 2011 preso: 3x Hadoop
fvanvollenhoven
 
Can we run the Whole Web on Apache Sling?
Can we run the Whole Web on Apache Sling?Can we run the Whole Web on Apache Sling?
Can we run the Whole Web on Apache Sling?
Bertrand Delacretaz
 
Swift Install Workshop - OpenStack Conference Spring 2012
Swift Install Workshop - OpenStack Conference Spring 2012Swift Install Workshop - OpenStack Conference Spring 2012
Swift Install Workshop - OpenStack Conference Spring 2012
Joe Arnold
 
Embulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loaderEmbulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loader
Sadayuki Furuhashi
 
carrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-APIcarrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-API
Yoni Davidson
 
node.js: Javascript's in your backend
node.js: Javascript's in your backendnode.js: Javascript's in your backend
node.js: Javascript's in your backend
David Padbury
 
I Just Want to Run My Code: Waypoint, Nomad, and Other Things
I Just Want to Run My Code: Waypoint, Nomad, and Other ThingsI Just Want to Run My Code: Waypoint, Nomad, and Other Things
I Just Want to Run My Code: Waypoint, Nomad, and Other Things
Michael Lange
 
Os Gottfrid
Os GottfridOs Gottfrid
Os Gottfrid
oscon2007
 
Who pulls the strings?
Who pulls the strings?Who pulls the strings?
Who pulls the strings?
Ronny
 
PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat
PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat
PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat
Pôle Systematic Paris-Region
 

Similar to SD, a P2P bug tracking system (20)

Scaling Big Data Mining Infrastructure Twitter Experience
Scaling Big Data Mining Infrastructure Twitter ExperienceScaling Big Data Mining Infrastructure Twitter Experience
Scaling Big Data Mining Infrastructure Twitter Experience
 
Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011
Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011
Oleg Natalushko. Drupal server anatomy. DrupalCamp Kyiv 2011
 
Big Data Beyond the JVM - Strata San Jose 2018
Big Data Beyond the JVM - Strata San Jose 2018Big Data Beyond the JVM - Strata San Jose 2018
Big Data Beyond the JVM - Strata San Jose 2018
 
Web Development Environments: Choose the best or go with the rest
Web Development Environments:  Choose the best or go with the restWeb Development Environments:  Choose the best or go with the rest
Web Development Environments: Choose the best or go with the rest
 
Why Rust? - Matthias Endler - Codemotion Amsterdam 2016
Why Rust? - Matthias Endler - Codemotion Amsterdam 2016Why Rust? - Matthias Endler - Codemotion Amsterdam 2016
Why Rust? - Matthias Endler - Codemotion Amsterdam 2016
 
Jaap : node, npm & grunt
Jaap : node, npm & gruntJaap : node, npm & grunt
Jaap : node, npm & grunt
 
RackN Physical Layer Automation Innovation
RackN Physical Layer Automation InnovationRackN Physical Layer Automation Innovation
RackN Physical Layer Automation Innovation
 
K8s best practices from the field!
K8s best practices from the field!K8s best practices from the field!
K8s best practices from the field!
 
A Life of breakpoint
A Life of breakpointA Life of breakpoint
A Life of breakpoint
 
Realtime Analytics with MongoDB Counters (mongonyc 2012)
Realtime Analytics with MongoDB Counters (mongonyc 2012)Realtime Analytics with MongoDB Counters (mongonyc 2012)
Realtime Analytics with MongoDB Counters (mongonyc 2012)
 
GOTO 2011 preso: 3x Hadoop
GOTO 2011 preso: 3x HadoopGOTO 2011 preso: 3x Hadoop
GOTO 2011 preso: 3x Hadoop
 
Can we run the Whole Web on Apache Sling?
Can we run the Whole Web on Apache Sling?Can we run the Whole Web on Apache Sling?
Can we run the Whole Web on Apache Sling?
 
Swift Install Workshop - OpenStack Conference Spring 2012
Swift Install Workshop - OpenStack Conference Spring 2012Swift Install Workshop - OpenStack Conference Spring 2012
Swift Install Workshop - OpenStack Conference Spring 2012
 
Embulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loaderEmbulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loader
 
carrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-APIcarrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-API
 
node.js: Javascript's in your backend
node.js: Javascript's in your backendnode.js: Javascript's in your backend
node.js: Javascript's in your backend
 
I Just Want to Run My Code: Waypoint, Nomad, and Other Things
I Just Want to Run My Code: Waypoint, Nomad, and Other ThingsI Just Want to Run My Code: Waypoint, Nomad, and Other Things
I Just Want to Run My Code: Waypoint, Nomad, and Other Things
 
Os Gottfrid
Os GottfridOs Gottfrid
Os Gottfrid
 
Who pulls the strings?
Who pulls the strings?Who pulls the strings?
Who pulls the strings?
 
PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat
PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat
PyParis 2017 / Writing a C Python extension in 2017, Jean-Baptiste Aviat
 

More from Jesse Vincent

Building a keyboard from scratch
Building a keyboard from scratchBuilding a keyboard from scratch
Building a keyboard from scratch
Jesse Vincent
 
So, I made a keyboard
So, I made a keyboardSo, I made a keyboard
So, I made a keyboard
Jesse Vincent
 
Dancing App Stores - Android Open 2011
Dancing App Stores - Android Open 2011Dancing App Stores - Android Open 2011
Dancing App Stores - Android Open 2011
Jesse Vincent
 
Perl 5.16 and Beyond - YAPC::Asia 2011
Perl 5.16 and Beyond - YAPC::Asia 2011Perl 5.16 and Beyond - YAPC::Asia 2011
Perl 5.16 and Beyond - YAPC::Asia 2011
Jesse Vincent
 
Perl 5.16 and beyond
Perl 5.16 and beyondPerl 5.16 and beyond
Perl 5.16 and beyond
Jesse Vincent
 
OSCON 2011 - Perl 5.16 and beyond
OSCON 2011 - Perl 5.16 and beyondOSCON 2011 - Perl 5.16 and beyond
OSCON 2011 - Perl 5.16 and beyond
Jesse Vincent
 
RT4 - The whole sordid story
RT4 - The whole sordid storyRT4 - The whole sordid story
RT4 - The whole sordid story
Jesse Vincent
 
K-9 Mail for Android
K-9 Mail for AndroidK-9 Mail for Android
K-9 Mail for Android
Jesse Vincent
 
Perl 5.12.0
Perl 5.12.0Perl 5.12.0
Perl 5.12.0
Jesse Vincent
 
P2P Bug Tracking with SD
P2P Bug Tracking with SDP2P Bug Tracking with SD
P2P Bug Tracking with SD
Jesse 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 system
Jesse 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 Hackery
Jesse Vincent
 
Prophet - Beijing Perl Workshop
Prophet - Beijing Perl WorkshopProphet - Beijing Perl Workshop
Prophet - Beijing Perl Workshop
Jesse 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 Sauce
Jesse Vincent
 
A brief introduction to RTIR
A brief introduction to RTIRA brief introduction to RTIR
A brief introduction to RTIR
Jesse Vincent
 
An introduction to RTIR
An introduction to RTIRAn introduction to RTIR
An introduction to RTIR
Jesse 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 Cloud
Jesse Vincent
 
Web 2.0 is Sharecropping
Web 2.0 is SharecroppingWeb 2.0 is Sharecropping
Web 2.0 is Sharecropping
Jesse Vincent
 
Hiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret SauceHiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret Sauce
Jesse Vincent
 

More from Jesse Vincent (20)

Building a keyboard from scratch
Building a keyboard from scratchBuilding a keyboard from scratch
Building a keyboard from scratch
 
So, I made a keyboard
So, I made a keyboardSo, I made a keyboard
So, I made a keyboard
 
Dancing App Stores - Android Open 2011
Dancing App Stores - Android Open 2011Dancing App Stores - Android Open 2011
Dancing App Stores - Android Open 2011
 
Perl 5.16 and Beyond - YAPC::Asia 2011
Perl 5.16 and Beyond - YAPC::Asia 2011Perl 5.16 and Beyond - YAPC::Asia 2011
Perl 5.16 and Beyond - YAPC::Asia 2011
 
Perl 5.16 and beyond
Perl 5.16 and beyondPerl 5.16 and beyond
Perl 5.16 and beyond
 
OSCON 2011 - Perl 5.16 and beyond
OSCON 2011 - Perl 5.16 and beyondOSCON 2011 - Perl 5.16 and beyond
OSCON 2011 - Perl 5.16 and beyond
 
RT4 - The whole sordid story
RT4 - The whole sordid storyRT4 - The whole sordid story
RT4 - The whole sordid story
 
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
 
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
 

Recently uploaded

Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
BookNet Canada
 
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly DetectionAdvanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Bert Blevins
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
Tatiana Al-Chueyr
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
Matthew Sinclair
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
shanthidl1
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
Eric D. Schabell
 
Measuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at TwitterMeasuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at Twitter
ScyllaDB
 
Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM
Vijayananda Mohire
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Bert Blevins
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
Aurora Consulting
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
ishalveerrandhawa1
 
What's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptxWhat's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptx
Stephanie Beckett
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
Safe Software
 
How RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptxHow RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptx
SynapseIndia
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
Emerging Tech
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
RaminGhanbari2
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
Yevgen Sysoyev
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
welrejdoall
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
Toru Tamaki
 

Recently uploaded (20)

Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...Transcript: Details of description part II: Describing images in practice - T...
Transcript: Details of description part II: Describing images in practice - T...
 
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly DetectionAdvanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
 
Measuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at TwitterMeasuring the Impact of Network Latency at Twitter
Measuring the Impact of Network Latency at Twitter
 
Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
 
What's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptxWhat's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptx
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
 
How RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptxHow RPA Help in the Transportation and Logistics Industry.pptx
How RPA Help in the Transportation and Logistics Industry.pptx
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
 

SD, a P2P bug tracking system

Editor's Notes