Archives (2008 - 2023)

Archives (2008 - 2023)

1501 bookmarks
Newest
cjohansen's juicer at master - GitHub
cjohansen's juicer at master - GitHub

Juicer is a command line tool that helps you ship frontend code for production.

High level overview; Juicer can

* figure out which files depend on each other and merge them together, reducing the number of http requests per page view, thus improving performance
* use YUI Compressor to compress code, thus improving performance
* verify that your JavaScript is safe to minify/compress by running JsLint on it
* cycle asset hosts in CSS files
* add "cache busters" to URLs in CSS files
* recalculate relative URLs in CSS files, as well as convert them to absolute (or convert absolute URLs to relative URLs)
cjohansen's juicer at master - GitHub
jQuery Sparklines
jQuery Sparklines

This jQuery plugin generates sparklines (small inline charts) directly in the browser using data supplied either inline in the HTML, or via javascript.

The plugin is compatible with most modern browsers and has been tested with Firefox 2+, Safari 3+, Opera 9 and Internet Explorer 6 & 7.

jQuery Sparklines
InfoQ: How to Ensure Early Death of a Distributed Agile Project?
InfoQ: How to Ensure Early Death of a Distributed Agile Project?

Involve the offshore team in the project after couple of sprints, once onsite team has understood the project vision, road map and made key technical choices.

Keep making all important design decisions with the small onsite team.

Keep offshore team very small i.e. 2 persons or less. Keep onsite team at least 3 times bigger.

Blame every problem in a project on the offshore team.

Never give honest feedback in the project retrospectives.

Avoid collocation with offshore team at any cost.

If collocation does take place then make sure that no onsite team member pair programs with offshore team member.

Ask offshore team to handle simple tasks that nobody onsite would like to do.

Keep refactoring the code during the weekends and in the evenings with very little communication about it with the offshore team.

Re-write a significant part of code delivered by the offshore team with out any communication.

Communicate frequently about the coding problems created by offshore team with onsite stakeholders.

InfoQ: How to Ensure Early Death of a Distributed Agile Project?
Open source utilities | openark forge
Open source utilities | openark forge

The openark kit is a set of utilities for MySQL. They solve everyday maintenance tasks, which may be complicated or time consuming to work by hand.

The available tools are:

* oak-apply-ri: apply referential integrity on two columns with parent-child relationship.
* oak-block-account: block or release MySQL users accounts, disabling them or enabling them to login.
* oak-kill-slow-queries: terminate long running queries.
* oak-modify-charset: change the character set (and collation) of a textual column.
* oak-purge-master-logs: purge master logs, depending on the state of replicating slaves.
* oak-security-audit: audit accounts, passwords, privileges and other security settings.
* oak-show-limits: show AUTO_INCREMENT “free space”.
* oak-show-replication-status: show how far behind are replicating slaves on a given master.
Open source utilities | openark forge
Setting up phpUnderControl at felixdv blog
Setting up phpUnderControl at felixdv blog
On a regular basis, I get contacted by people who want to install phpUnderControl but don’t really know how to set up their projects and use the features provided by phpUnderControl completely. So, aside from providing a quick-and-easy setup guide for cruisecontrol and phpUnderControl, I’ll share the setup scripts I have here and hope it’s useful for someone. This guide is mostly focussed on getting phpUnderControl to work on a Debian system, but there’s not that much OS specific to it.
Setting up phpUnderControl at felixdv blog
Google Testing Blog: Constructor Injection vs. Setter Injection
Google Testing Blog: Constructor Injection vs. Setter Injection
With setter-injection it is not clear in which order things need to be instantiated and when the wiring is done. In a typical application there may be hundreds of collaborators with at least as many setter calls to wire them together. It is easy to miss a few setter calls when wiring the application together. On the other hand constructor-injection automatically enforces the order and completeness of the instantiated. Furthermore, when the last object is instantiated the wiring phase of your application is completed.
Google Testing Blog: Constructor Injection vs. Setter Injection
Zend_Acl part 3: creating and storing dynamic ACLs | CodeUtopia
Zend_Acl part 3: creating and storing dynamic ACLs | CodeUtopia
In this third post of the series, I’ll talk about using dynamic ACLs: How to store an ACL in a database, and construct it from there when needed. We will first look at a simple example with users and pages, and then we’ll have a more complex example, involving building a much more complex ACL with inheritance, role types and other stuff.
Zend_Acl part 3: creating and storing dynamic ACLs | CodeUtopia
InfoQ: InfoQ Editors' Recommended Reading List
InfoQ: InfoQ Editors' Recommended Reading List
We recently had a conversation amongst the InfoQ editorial team about the books we would most recommend to InfoQ readers based on the books that we felt had most influenced us as programmers, architects and managers. Here is the resulting list of sixteen books that we eventually agreed on, plus a few other tips, with comments from the editors who originally suggested them.
InfoQ: InfoQ Editors' Recommended Reading List
Impact of logging on MySQL’s performance | MySQL Performance Blog
Impact of logging on MySQL’s performance | MySQL Performance Blog

From the all tests above there are two conclusions can be made:

  1. It is safe to log slow queries with execution time bigger than a second without worry about performance impact in case of CPU-bound workload. The performance impact is negligibly small in IO-bound workload even if all queries are logged.
  2. In general logging all queries can hurt MySQL and you should consider the load while using it, especially in CPU-bound case.
Impact of logging on MySQL’s performance | MySQL Performance Blog
Lucid Imagination - Exclusively Dedicated to Lucene and Solr Open Source Search
Lucid Imagination - Exclusively Dedicated to Lucene and Solr Open Source Search
While many Lucene/Solr applications will never outgrow a single, well-configured machine, the fact is, more and more applications are pushing beyond the single machine limit due to either index size or query volume. In discussing Lucene and Solr best practices for performance and scaling, Mark Miller explains how to get the most out of a single machine, as well as how to scale out to harness multiple machines to handle large indexes, large query volume, or both.
Lucid Imagination - Exclusively Dedicated to Lucene and Solr Open Source Search
pChart | a PHP Charting library
pChart | a PHP Charting library
pChart is a PHP class oriented framework designed to create aliased charts. Most of todays chart libraries have a cost, our project is intended to be free. Data can be retrieved from SQL queries, CSV files, or manually provided.
pChart | a PHP Charting library
Open Web Messenger
Open Web Messenger

What is Web Messenger?

"Web Messenger" - is unique software allowing visitors of your site to chat with your operators. Why should I use Web Messenger?

"Web Messenger" makes it easier to communicate with existing and potential clients. It will significantly increase conversion rates and online sales of your web site.

Open Web Messenger
phpquery - Google Code
phpquery - Google Code

phpQuery is a server-side, chainable, CSS3 selector driven Document Object Model (DOM) API based on jQuery JavaScript Library.

Library is written in PHP5 and provides Command Line Interface (CLI).

phpquery - Google Code
phpLiveDocx - Generate PDF, DOCX, DOC & RTF with PHP
phpLiveDocx - Generate PDF, DOCX, DOC & RTF with PHP

phpLiveDocx allows developers to generate documents by combining structured data from PHP with a template, created in a word processor. The resulting document can be saved as a PDF, DOCX, DOC or RTF file. The concept is the same as with mail-merge. Work flow overview

  1. Load template in phpLiveDocx.
  2. Assign data to text fields in template.
  3. Generate document.
  4. Save as a PDF, DOCX, DOC or RTF file.
phpLiveDocx - Generate PDF, DOCX, DOC & RTF with PHP
First One, Then Many
First One, Then Many
Abstract: The system will eventually have to deal with an arbitrary number of some element but for the moment it only has to deal with one. What to do?
First One, Then Many
jessenoller.com - SSH Programming with Paramiko | Completely Different
jessenoller.com - SSH Programming with Paramiko | Completely Different
OpenSSH is the ubiquitous method of remote access for secure remote-machine login and file transfers. Many people — systems administrators, test automation engineers, web developers and others have to use and interact with it daily. Scripting SSH access and file transfers with Python can be frustrating — but the Paramiko module solves that in a powerful way.
jessenoller.com - SSH Programming with Paramiko | Completely Different