Federico Cargnelutti

Federico Cargnelutti

  • 10 concepts that every software engineer should know

    In this post, Alex Iskold discusses the top 10 concepts software engineers should know. A successful software engineer knows and uses design patterns, actively refactors code, writes unit tests and religiously seeks simplicity. Beyond the basic methods, there are concepts that good software engineers know about. These transcend programming languages and projects – they are…

    Read more: 10 concepts that every software engineer should know
    July 25, 2008
  • FileSyncTask: Using Phing to synchronize files and directories

    I needed to automate the task of synchronizing files from one server to another, so I wrote a Phing task. Finally today I found some time to finish writing the documentation. Overview FileSyncTask is a Phing extension for Unix systems which synchronizes files and directories from one location to another while minimizing data transfer. FileSyncTask…

    Read more: FileSyncTask: Using Phing to synchronize files and directories
    July 21, 2008
  • Architecture-Oriented or Feature-Oriented?

    Traditionally, there are two fundamental approaches when it comes to organising your development teams: the Architecture-Oriented approach and the Feature-Oriented approach. The first privileges teams that focus on the different architectural layers or components, whereas the second prefers to organise teams around deliverable application features. How do you organise your development teams?

    Read more: Architecture-Oriented or Feature-Oriented?
    July 13, 2008
  • Django 1.0 will be released in early September

    Django has not been updated for a long time. The most current release, 0.96, was released in March 2007. This is a very long time when you look at the roadmap of other frameworks. But guess what, all that is about to change, because Django 1.0 is only two months away! Over the next six…

    Read more: Django 1.0 will be released in early September
    July 12, 2008
  • The easiest way to search and replace in files

    The “find” command is one of the most powerful and useful Unix commands, you can use it to locate files, and then perform some type of action on the files after they’ve been located. With this capability, you can locate files using powerful search criteria, and then run any Unix command you want on the…

    Read more: The easiest way to search and replace in files
    July 9, 2008
  • Google gives away a free web application security scanner

    Google announced the release of ratproxy, a passive web application security assessment tool that they’ve been using internally at Google. This utility, developed by their information security engineering team, is designed to transparently analyse legitimate, browser-driven interactions with a tested web property and automatically pinpoint, annotate, and prioritize potential flaws or areas of concern. The…

    Read more: Google gives away a free web application security scanner
    July 4, 2008
  • Flickr Architecture

    Flickr Platform PHP MySQL Shards Memcached for a caching layer. Squid in reverse-proxy for html and images. Linux (RedHat) Smarty for templating Perl PEAR for XML and Email parsing ImageMagick, for image processing Java, for the node service Apache SystemImager for deployment Ganglia for distributed system monitoring Subcon stores essential system configuration files in a…

    Read more: Flickr Architecture
    June 30, 2008
  • A Modular Approach to Web Development

    MVC is about loose-coupling, and Modular Programming takes that concept to the extreme. A modular application can dynamically load and unload modules at runtime, completely separate applications in their own right, which interact with the main application and other modules to perform some set of tasks. In this article you will presented with a different…

    Read more: A Modular Approach to Web Development
    June 28, 2008
  • Foundations of Programming: Building Better Software

    Karl Seguin has released the official, and completely free, Foundations of Programming eBook. Although simplistic, every programming decision I make is largely based on maintainability. Maintainability is the cornerstone of enterprise development. Frequent readers are likely sick of hearing about it, but there’s a good reason we talk about maintainability so often – it’s the…

    Read more: Foundations of Programming: Building Better Software
    June 28, 2008
  • Create professional-looking charts quickly and easily with pChart

    pChart is a PHP class oriented framework designed to create aliased charts. Data can be retrieved from SQL queries, CSV files, or manually provided. To have a complete overview of what pChart can do for you, we invite you to take a look on the on-line documentation which is trying to show all basic &…

    Read more: Create professional-looking charts quickly and easily with pChart
    June 28, 2008
  • Is this the future of Web application development?

    Drag and drop widgets to build Web applications, in minutes, with minimal code. WaveMaker Visual Ajax Studio is an easy-to-use visual builder that enables the drag & drop assembly of scalable, web-applications using Ajax widgets, web services and databases. WaveMaker Studio will look and feel especially familiar to client/server developers who are used to working…

    Read more: Is this the future of Web application development?
    June 25, 2008
  • Learn to Build Robust, Scalable and Maintainable Applications using MVC

    MVC is about loose-coupling, and Modular Programming takes that concept to the extreme. A modular application can dynamically load and unload modules at runtime, completely separate applications in their own right, which interact with the main application and other modules to perform some set of tasks This document (PDF) discusses the classes and interfaces of…

    Read more: Learn to Build Robust, Scalable and Maintainable Applications using MVC
    June 25, 2008
  • Agile Database Deployment Using Phing

    Phing allows you to use SQL to define changes to your database schema, making it possible to use a version control system to keep things synchronized with the actual code. A common way to automate development and deployment tasks is by writing shell scripts, however, Phing provides some advantages over shell scripts for task automation.…

    Read more: Agile Database Deployment Using Phing
    June 22, 2008
  • Unit Testing: Rules of Thumb

    When it comes to testing, Cedric Beust (co-author of “Next Generation Java Testing”) lives by the following rules of thumb: “Tests first” or “tests last” is unimportant as long as there are tests. Try to think about testing as early as possible in your development process. Don’t listen to people who tell you to write…

    Read more: Unit Testing: Rules of Thumb
    June 17, 2008
  • The best code is very shy

    The best code is very shy. Like a four-year old hiding behind a mother’s skirt, code should not reveal too much of itself and should not be too nosy into others affairs. But you might find that your shy code grows up too fast, shedding its demure shyness in favor of wild promiscuity. When code…

    Read more: The best code is very shy
    June 17, 2008
  • Web Applications: Spaghetti Code for the 21st Century

    The software industry is currently in the middle of a paradigm shift. Applications are increasingly written for the Web rather than for any specific type of an operating system, computer or device. Unfortunately, the technologies used for Web application development today violate well-known software engineering principles. Furthermore, they have reintroduced problems that had already been…

    Read more: Web Applications: Spaghetti Code for the 21st Century
    June 17, 2008
  • Getters and setters create unnecessary coupling

    Every getter and setter in your code represents a failure to encapsulate and creates unnecessary coupling. A profusion of getters and setters (also referred to as accessors, accessor methods, and properties) is a sign of a poorly designed set of classes. “Getters and setters should be avoided because they break the encapsulation OOP offers”, says…

    Read more: Getters and setters create unnecessary coupling
    June 16, 2008
  • 10 great articles for optimizing MySQL queries

    Optimization is a complex task because ultimately it requires understanding of the entire system to be optimized. Although it may be possible to perform some local optimizations with little knowledge of your system or application, the more optimal you want your system to become, the more you must know about it. The following 10 articles…

    Read more: 10 great articles for optimizing MySQL queries
    June 12, 2008
  • Analysis of coupling within the Zend Framework

    Neil Grab wrote: One of the Zend Framework’s strongest drawing cards, as I see it, is its loosely-coupled structure. The name Zend Framework may be a misnomer, in fact, as ZF is more a set of reusable libraries than an actual application framework. I won’t go into detail about the advantages of loose coupling, but…

    Read more: Analysis of coupling within the Zend Framework
    June 8, 2008
  • Design Patterns Quick Reference

    Jason McDonald posted some quick reference diagrams for the Gang of Four design patterns on his blog. Each section has the name of the pattern, a quick description, and the class diagram for the pattern. Definitely a handy thing to have around. Design Patterns Quick Reference (PDF)

    Read more: Design Patterns Quick Reference
    June 7, 2008
←Previous Page
1 2 3 4 5 6
Next Page→
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy
 

Loading Comments...
 

    • Subscribe Subscribed
      • Federico Cargnelutti
      • Join 1,419 other subscribers
      • Already have a WordPress.com account? Log in now.
      • Federico Cargnelutti
      • Subscribe Subscribed
      • Sign up
      • Log in
      • Report this content
      • View site in Reader
      • Manage subscriptions
      • Collapse this bar