Software Engineering

Software Engineering

1635 bookmarks
Newest
Continuous Deployment, Code Review and Pre-Tested Commits on Digg4 | Digg About
Continuous Deployment, Code Review and Pre-Tested Commits on Digg4 | Digg About
But overall, we've achieved quite a lot here - no change is going to make it onto our master branch without being reviewed by another developer, and being built to verify that tests covering that change pass. No change is going to make it onto our internal site without passing a full battery of unit tests. And nothing is going to go on from our internal site to production without passing an additional set of Selenium tests. Does this mean we're never going to introduce bugs to our live site? Of course not - but we're going to keep the number of bugs to hit the live site to a minimum, and we've made it easy and fast to get bug fixes live as well.
Continuous Deployment, Code Review and Pre-Tested Commits on Digg4 | Digg About
OpenStack Open Source Cloud Computing Software
OpenStack Open Source Cloud Computing Software
The goal of OpenStack is to allow any organization to create and offer cloud computing capabilities using open source software running on standard hardware. OpenStack Compute is software for automatically creating and managing large groups of virtual private servers. OpenStack Storage is software for creating redundant, scalable object storage using clusters of commodity servers to store terabytes or even petabytes of data.
OpenStack Open Source Cloud Computing Software
kore's php-commit-hooks at master - GitHub
kore's php-commit-hooks at master - GitHub

PHP Commit Hooks implement an extensible framework for commit hooks, mainly for PHP software, written in PHP. There are example configurations for commit hooks available in the src/examples directory.

The design of PCH is quite simple and is structured into two main entities:

Checks

Implements checks, for example verifying the commit message, or if the committed files are valid.

Reporters

Report the results of the checks to different channels, like commit mails to a mailing list, violations to the committer or leaving a message on the SVN shell.

kore's php-commit-hooks at master - GitHub
Selective Homeworkless Reviews
Selective Homeworkless Reviews
We describe a version of review/inspection called selective homeworkless review. In these reviews, moderators are taught how to select artifacts for review and review methodologies with little or no preparation. Many review and inspection methodologies are known in the literature and used in industry with very good results. The main issue we faced was not how to tune an existing inspection methodology, but rather how to get people to seriously and continuously inspect their artifacts. With the shrinking of the release cycle, people try to avoid front-loaded methodologies such as reviews, which seem to waste time early on. This is true both at the organizational level, where the overall cost is considered and at the day to-day level, where time for preparation needs to be found. Because the reasons for rejecting existing inspection techniques were more organizational than technical, the way our methodology overcomes these objections is as central to the paper as the selective homeworkless review methodology itself. We introduced selective homeworkless reviews three years ago. We now have convincing evidence that this methodology can be introduced even in organizations that are resistant to formal inspections, leading to significant improvements in quality.
Selective Homeworkless Reviews
jupiter-eclipse-plugin - Project Hosting on Google Code
jupiter-eclipse-plugin - Project Hosting on Google Code

Jupiter is a code review plug-in tool for the Eclipse IDE. It is currently under active development, and still in an experimental state. The design of Jupiter involves the following:

Open Source: Jupiter carries an open source license. Free: Jupiter is distributed free of charge. IDE integration: Jupiter is based upon the Eclipse plug-in architecture. Cross-platform: Jupiter is available for all platforms supported by Eclipse. XML data storage: Jupiter stores data in XML format to simplify use and re-use. Sorting and searching: Jupiter provides filters and sorting to facilitate issue review. File integration: Jupiter supports jumping back and forth between reviews and source code.

jupiter-eclipse-plugin - Project Hosting on Google Code
PHPsrc
PHPsrc

Welcome to PHPsrc home of Eclipse Plugin PHP Tool Integration (PTI). PHP Tool Integration provides following Features for Eclipse:

PHP_CodeSniffer PHPUnit PHP Depend PHP Copy/Paste Detector ... and more will come!

PHPsrc
InfoQ: Success Factors for Systematic Reuse
InfoQ: Success Factors for Systematic Reuse
Systematic reuse requires the interplay of people, process, and technology decisions that have to be executed within the context of real world constraints. Are there success factors that will make a difference to reuse? I believe so! This article provides five success factors that will help capture domain variations, ease integration, delve deeper into design context, work effectively as a team, and manage domain complexity.
InfoQ: Success Factors for Systematic Reuse
Test Accounts - Facebook Developer Wiki
Test Accounts - Facebook Developer Wiki

One of the hard things about developing on Facebook Platform has been testing applications. Facebook's Terms of Service require that all accounts be linked to your real identity, so on the surface, you're not allowed to make fake accounts to test your applications. To work around this roadblock, we formalized the concept of test accounts in a way that should be better for everyone. Here's how it works.

Test Accounts - Facebook Developer Wiki
nvie.com » Blog Archive » A successful Git branching model
nvie.com » Blog Archive » A successful Git branching model
In this post I present the development model that I’ve introduced for all of my projects (both at work and private) about a year ago, and which has turned out to be very successful. I’ve been meaning to write about it for a while now, but I’ve never really found the time to do so thoroughly, until now. I won’t talk about any of the projects’ details, merely about the branching strategy and release management.
nvie.com » Blog Archive » A successful Git branching model
patches:userstatv2 [Percona DokuWiki]
patches:userstatv2 [Percona DokuWiki]

This patch adds several INFORMATION_SCHEMA tables, several FLUSH and SHOW commands, and the userstat_running variable. These tables and commands can be used to understand the server activity better and identify the source of the load.

The functionality is disabled by default, and must be enabled by setting the userstat_running variable to ON. It works by keeping several hash tables in memory. To avoid contention over global mutexes, each connection has its own local statistics, which are occasionally merged into the global statistics, and the local statistics are then reset to 0.

patches:userstatv2 [Percona DokuWiki]
Xdebug 2.1 — Derick Rethans
Xdebug 2.1 — Derick Rethans
I've just released Xdebug 2.1. This new release contains all the bug fixes and new features that have been developed over the past three years. It provides full PHP 5.3 support, but it no longer supports PHP versions below 5.1.
Xdebug 2.1 — Derick Rethans
A review of Cloud Application Architectures by George Reese at Xaprb
A review of Cloud Application Architectures by George Reese at Xaprb
This is a great book on how to build apps in the cloud! I was happy to see how much depth it went into. It’s short — 150 pages plus some appendixes — so I was expecting it to be a superficial overview. But it isn’t. It is thorough. And it is also obviously built on his own experience building very specific applications that he uses to run his business — he isn’t preaching about stuff he doesn’t know first-hand.
A review of Cloud Application Architectures by George Reese at Xaprb
msolo - Project Hosting on Google Code
msolo - Project Hosting on Google Code

This is a collection of tools and libraries for analyzing the performance of various types of Python applications. Most of these were written with web applications in mind, but are still generically useful.

bstats - better tools for analyzing profiling data

spitfire - another Python template language (formerly known as sparrow)

svcstat - diagnostic tool for tracking down network service utilization

wiseguy - FastCGI / WSGI server

LighttpdAIO - a modified version of lighttpd for efficient small-file serving

msolo - Project Hosting on Google Code
Eclipse Helios News
Eclipse Helios News
Here are some of the more noteworthy things available in Eclipse Helios for PHP Developers (June 23, 2010) which is now available for download. See the build notes for details about bugs fixed and other changes.
Eclipse Helios News
Membase.org
Membase.org
For those familiar with memcached, membase provides on-the-wire protocol compatibility, but adds disk persistence; hierarchical storage management; data replication; live cluster reconfiguration and rebalancing; and secure multi-tenancy with data partitioning. Like memcached, membase is simple, fast and elastic.
Membase.org
Home - webistrano - GitHub
Home - webistrano - GitHub

Webistrano is a Web UI for managing Capistrano deployments. It lets you manage projects and their stages like test, production, and staging with different settings. Those stages can then be deployed with Capistrano through Webistrano.

Webistrano’s purpose is to make the deployment of multi-stage and multi-environment scenarios easy. Further it allows you to track who deployed what, when to which servers and be alerted by email on each deployment.

Home - webistrano - GitHub
robotframework - Project Hosting on Google Code
robotframework - Project Hosting on Google Code
Robot Framework is a generic keyword-driven test automation framework for acceptance level testing and acceptance test-driven development (ATDD). It has an easy-to-use tabular syntax for creating test cases and its testing capabilities can be extended by test libraries implemented either with Python or Java. Users can also create new keywords from existing ones using the same simple syntax that is used for creating test cases.
robotframework - Project Hosting on Google Code
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