Found 847 bookmarks
Newest
Exploring the software behind Facebook, the world's largest site | Royal Pingdom
Exploring the software behind Facebook, the world's largest site | Royal Pingdom
At the scale that Facebook operates, a lot of traditional approaches to serving web content break down or simply aren't practical. The challenge for Facebook's engineers has been to keep the site up and running smoothly in spite of handling close to half a billion active users. This article takes a look at some of the software and techniques they use to accomplish that.
Exploring the software behind Facebook, the world's largest site | Royal Pingdom
Pinba
Pinba
Pinba is a statistics server for PHP using MySQL as a read-only interface.\nIt accumulates and processes data sent over UDP by multiple PHP processes and displays statistics in a nice human-readable form of simple "reports", also providing read-only interface to the raw data in order to make possible generation of more sophisticated reports.\nWith Pinba extension users also can measure particular parts of the code using timers with arbitrary tags.\nPinba is not a debugging tool in a common sense, since you're not supposed to do debugging on production servers, but its main goal is to help developers to locate bottlenecks in realtime and direct developers' attention to the code that really needs it.
Pinba
everzet's capifony at master - GitHub
everzet's capifony at master - GitHub
Capistrano is an open source tool for running scripts on multiple servers. It's primary use is for easily deploying applications. While it was built specifically for deploying Rails apps, it's pretty simple to customize it to deploy other types of applications. We've been working on creating a deployment "recipe" to work with symfony applications to make our job a lot easier.
everzet's capifony at master - GitHub
workspacemechanic - Project Hosting on Google Code
workspacemechanic - Project Hosting on Google Code
The Workspace Mechanic automates maintenance of your Eclipse environment by tweaking preferences, adding extension locations, and so on. You can use it to:\n\nCreate a consistent environment among groups as large as the entire company, your local team, or even among your own many workspaces\nSave time setting up new workspaces\nCreate tasks that ensure your favorite new preferences are applied to all your current and future workspaces. (This is one of our favorite features!)
workspacemechanic - Project Hosting on Google Code
pimcore.org - Zend Framework based Content Management Framework
pimcore.org - Zend Framework based Content Management Framework
Pimcore is a powerful and robust Zend Framework based PHP content management system (WCMS) for creating and managing digital content and assets licensed under the open-source BSD license. Besides being a full-featured open-source WCMS system, pimcore is the first and premier PHP open source enterprise product information management framework (PIM) available. This means true multi-channel publishing and integration into ecommerce systems like Magento and OXID eSales.Technologically pimcore is strictly based on the Zend Framework, the leading development framework for the PHP programming language used by 100s of companies such as Fox, IBM and bwin. Pimcore’s frontend GUI interface is 100% powered by the renown ExtJS Javascript library, which is used by companies such as Adobe, Amazon and Sony.You’ll see – an open-source and enterprise-ready content management system, powered by a strong technological fundament.
pimcore.org - Zend Framework based Content Management Framework
Threat Risk Modeling - OWASP
Threat Risk Modeling - OWASP
When you start a web application design, it is essential to apply threat risk modeling; otherwise you will squander resources, time, and money on useless controls that fail to focus on the real risks.The method used to assess risk is not nearly as important as actually performing a structured threat risk modeling. Microsoft notes that the single most important factor in their security improvement program was the corporate adoption of threat risk modeling.OWASP recommends Microsoft’s threat modeling process because it works well for addressing the unique challenges facing web application security and is simple to learn and adopt by designers, developers, code reviewers, and the quality assurance team.The following sections provide some overview information (or see Section 6.9, Further Reading, for additional resources).
Threat Risk Modeling - OWASP
snapshot.debian.org
snapshot.debian.org

The snapshot archive is a wayback machine that allows access to old packages based on dates and version numbers. It consists of all past and current packages the Debian archive provides.

The ability to install packages and view source code from any given date can be very helpful to developers and users. It provides a valuable resource for tracking down when regressions were introduced, or for providing a specific environment that a particular application may require to run. The snapshot archive is accessible like any normal apt repository, allowing it to be easily used by all.

snapshot.debian.org
Vim - Blog de neolao
Vim - Blog de neolao

Ca fait un petit moment déjà que j'essaie de me créer un environnement de développement distant, c'est à dire que je me connecte sur une machine en ligne pour faire ce que j'ai à faire. C'est assez sympa d'utiliser le protocol NX, il marche bien en plus. Mais je me suis très vite trouné vers une solution entièrement sur un terminal. Je zappe tout ce qui est configuration de screen, mc, finch, irssi etc.. Je vais vous présenter ma personnalisation de vim, un éditeur de texte.

Vim - Blog de neolao
phpCallGraph - A Static Call Graph Generator for PHP
phpCallGraph - A Static Call Graph Generator for PHP

phpCallGraph is a tool to generate static call graphs for PHP source code. Such a graph visualizes the call dependencies among methods or functions of an application. Arrows represent calls from one method to another method. Classes are drawn as rectangles containing the respective methods. The graphs can be leveraged to gain a better understanding of large PHP applications or even to debunk design flaws in them. The example call graph on the right shows the main class of phpCallGraph itself and the internal dependencies among its methods. It is also possible to visualize calls to internal functions of PHP and to some extend call dependencies among different classes. Have a look at the example call graphs to get an impression.

The core of the call graph generator forms an object-oriented PHP5 library, which may also be integrated in other projects. It leverages the InstantSVC CodeAnalyzer and DOT. On top of it, a commandline application allows easy creation of call graphs in various formats, e.g. text, png, jpg or svg. phpCallGraph is free software licensed under GPLv3.

phpCallGraph - A Static Call Graph Generator for PHP
xtractr | Unleash the power of packets | pcapr
xtractr | Unleash the power of packets | pcapr

xtractr is a hybrid cloud application for indexing, searching, reporting, extracting and collaborating on pcaps. This enables you to rapidly identify field issues and perform network forensics and troubleshooting with just a few clicks. This lite version of xtractr can index up to 2.5 million packets or 250 Mbytes of pcaps. While xtractr can be used as a standalone application, it works best with Mu Studio to convert the problematic conversation into a stateful test case.

xtractr | Unleash the power of packets | pcapr
High Scalability - High Scalability - Paper: High Performance Scalable Data Stores
High Scalability - High Scalability - Paper: High Performance Scalable Data Stores

The world of scalable databases is not a simple one. They come in every race, creed, and color. Rick Cattell has brought some harmony to that world by publishing High Performance Scalable Data Stores, a nicely detailed one stop shop paper comparing scalable databases soley on the content of their character. Ironically, the first step in that evaluation is dividing the world into four groups:

Key-value stores: Redis, Scalaris, Voldmort, and Riak. Document stores: Couch DB, MongoDB, and SimpleDB. Record stores: BigTable, HBase, HyperTable, and Cassandra. Scalable RDBMSs: MySQL Cluster, ScaleDB, Drizzle, and VoltDB. The paper describes each system and then compares them on the dimensions of Concurrency Control, Data Storage Replication, Transaction Model, General Comments, Maturity, K-hits, License Language.

High Scalability - High Scalability - Paper: High Performance Scalable Data Stores
High Availability Principle : Request Queueing « SaaS Interrupted.
High Availability Principle : Request Queueing « SaaS Interrupted.

Request Queuing allows your system to operate at optimal throughput.  In the above example : the optimal throughput was at 500 concurrency.  The concurrency at which optimal throughput is achieved is usually right below where exponential degradation starts to take place.  At all times the system was operating at this optimal throughput Your users only experience linear degradation versus exponential degradation. As shown in the diagram, with no request queueing your users and your system would have experienced exponential degradation after 500 requests.  Requests 0-500 take 1 second, 501-1000 takes 2 seconds, 1001-1500 take 3 seconds and so on – With Request queueing – the response times become linear Your system experiences NO degradation – This is worth repeating.  The system is always operating at an optimal throughput.  The only attribute that is dynamic is the queue size.  The system remains in the green zone as highlighted in the diagram.

High Availability Principle : Request Queueing « SaaS Interrupted.
JavaScript dependency management and concatenation: Sprockets
JavaScript dependency management and concatenation: Sprockets
Sprockets is a Ruby library that preprocesses and concatenates JavaScript source files. It takes any number of source files and preprocesses them line-by-line in order to build a single concatenation. Specially formatted lines act as directives to the Sprockets preprocessor, telling it to require the contents of another file or library first or to provide a set of asset files (such as images or stylesheets) to the document root. Sprockets attempts to fulfill required dependencies by searching a set of directories called the load path.
JavaScript dependency management and concatenation: Sprockets
PhoneGap | Cross platform mobile framework
PhoneGap | Cross platform mobile framework

PhoneGap is an open source development tool for building fast, easy mobile apps with JavaScript.

If you’re a web developer who wants to build mobile applications in HTML and JavaScript while still taking advantage of the core features in the iPhone, Android, Palm, Symbian and Blackberry SDKs, PhoneGap is for you.

PhoneGap | Cross platform mobile framework