Software Engineering

Software Engineering

1635 bookmarks
Newest
0xDECAFBAD » Queue everything and delight everyone
0xDECAFBAD » Queue everything and delight everyone
Sure, the original submission of content can and should be done all at once—just enough to get the content into the user's collection. Then, queue a job for further processing and get out of the way. In fact, just queue one job from the user interface—the processor of that queue can then queue further jobs for all the other individual processing tasks that are likely susceptible to plenty of parallel processing and horizontal scaling.
0xDECAFBAD » Queue everything and delight everyone
ratproxy - Google Code
ratproxy - Google Code
A semi-automated, largely passive web application security audit tool, optimized for an accurate and sensitive detection, and automatic annotation, of potential problems and security-relevant design patterns based on the observation of existing, user-initiated traffic in complex web 2.0 environments.
ratproxy - Google Code
Hierarchical caching - Tobias Schlitt - a passion for php
Hierarchical caching - Tobias Schlitt - a passion for php

The new ezcCacheStack class in the eZ Cache component provides an automatic way of realizing this. You simply stack together an arbitrary number of storages. The stack will store every item into all of the stacked caches. You can configure how many items may reside in a storage. A replacement strategy class takes care about purging a certain number items in case a storage runs full. On restore, the stack will fetch the desired item from the topmost cache it is still stored in.

Replacement strategies shipped with the eZ Cache component provide you with 2 well-known cache algorithms: Least Recently Used (LRU) and Least Frequently Used (LFU).

Hierarchical caching - Tobias Schlitt - a passion for php
It's Not Just Standing Up: Patterns for Daily Standup Meetings
It's Not Just Standing Up: Patterns for Daily Standup Meetings

The daily stand-up meeting (also known as a "daily scrum", a "daily huddle", a "morning roll-call", etc.) is simple to describe: the whole team meets every day for a quick status update. We stand up to keep the meeting short. That's it. But this short definition does not really tell you the subtle details that distinguish a good stand-up from a bad one.

Given the apparent simplicity of stand-ups, I was quite surprised the first time I saw one that wasn't working. It was immediately obvious to me what was wrong but I realised that it was not obvious to the team. I realised that my team was not aware of the underlying principles and details that would allowed them to diagnose and solve problems with stand-ups.

It's Not Just Standing Up: Patterns for Daily Standup Meetings
Tailor - DarcsWiki
Tailor - DarcsWiki
Tailor is a tool to migrate or replicate changesets between ArX, Bazaar, Bazaar-NG, CVS, Codeville, Darcs, Git, Mercurial, Monotone, Subversion and Tla repositories.
Tailor - DarcsWiki
http://studios.thoughtworks.com/2008/6/24/metric-driven-management-versus-management-driven-metrics
http://studios.thoughtworks.com/2008/6/24/metric-driven-management-versus-management-driven-metrics
Three factors undermine this pursuit of precision. The first is the tragedy of the commons: because everyone is responsible for delivering a project, nobody takes responsibility to see that it’s delivered. In this model, no one person is responsible for completing a business requirement from end-to-end; people are responsible for nothing more than working their particular task to completion and then passing it along. The second is a soft definition of what it means to get work done. “Completion” can be relative, interpretive, or simply a matter of working to a state where nobody can say that a technical task isn’t “done.” The third is an increased number of hand-offs. Handoffs create the risk of misunderstanding. Misunderstanding requires rework.
http://studios.thoughtworks.com/2008/6/24/metric-driven-management-versus-management-driven-metrics
Producing Open Source Software
Producing Open Source Software
Producing Open Source Software is a book about the human side of open source development. It describes how successful projects operate, the expectations of users and developers, and the culture of free software. The book is released under an open copyright: it is available in bookstores and from the publisher (O'Reilly Media), or you can browse or download it here
Producing Open Source Software
Ten Commandments of Egoless Programming
Ten Commandments of Egoless Programming
What we need is a set of rules or guidelines to help developers keep themselves (their egos, actually) separate from their code. Hence our Ten Commandments for Egoless Programming, which you can also download in handy "stone tablet" format:
Ten Commandments of Egoless Programming
Kazuho at Work: Implementing Timeline in Web Services - Paradigms and Techniques
Kazuho at Work: Implementing Timeline in Web Services - Paradigms and Techniques
In this blog article, I will describe two methods: push and pull, of implementing such a timeline, from their basic design to tuning techniques. SQL (that would work fine with MySQL) would be used in the article, but the prcinples would never change whatever storage (relational or specially designed) is being used.
Kazuho at Work: Implementing Timeline in Web Services - Paradigms and Techniques
InfoQ: Agile Architecture Is Not Fragile Architecture
InfoQ: Agile Architecture Is Not Fragile Architecture
Architecture is perceived as a heavy-weight activity which does not fit into an Agile process, so many teams start without it, just to find themselves re-doing the software later because the code structure was not good enough to support maintainability and evolution. In this presentation, Coplien and Henney describe how to start with enough architecture to ensure long term success of the project.
InfoQ: Agile Architecture Is Not Fragile Architecture
WebIssues | Issue tracking and team collaboration system
WebIssues | Issue tracking and team collaboration system
WebIssues is an open source, multi-platform system for issue tracking and team collaboration. It can be used to store, share and track issues with various attributes, comments and file attachments. The system is easy to install and use but has many capabilities and is highly customizable.
WebIssues | Issue tracking and team collaboration system
MySQL Workbench » Blog Archive » Using Schema Synchronization in MySQL Workbench OSS Edition
MySQL Workbench » Blog Archive » Using Schema Synchronization in MySQL Workbench OSS Edition
As you can see in the MySQL Workbench Edition feature grid, Live Schema Synchronization is a Standard Edition feature only. But that does not mean that you cannot make use of the same functionality in the OSS Edition in an offline scenario - which is even more preferable in some cases.
MySQL Workbench » Blog Archive » Using Schema Synchronization in MySQL Workbench OSS Edition
Tools | MySQL Performance Blog
Tools | MySQL Performance Blog

This page contains links to various tools we found helpful to use in practice. Some tools are written by us, others by third parties, yet another ones may be shipped with your operating system you just need to find they are there.

Tools | MySQL Performance Blog