-
The World’s Most Misunderstood Programming Language
Read more: The World’s Most Misunderstood Programming Language…has become the world’s most popular programming language. This is the story of JavaScript Most languages die in obscurity. Only a few are able to build a following beyond a single project or company. And only a very small number of languages become important. There are many things that a programmer must consider when selecting…
-
Next generation data storage with CouchDB
Read more: Next generation data storage with CouchDBMost digital data we deal with in the real world is not inherently relational in nature, yet most web applications use a SQL RDBMS for data persistence. CouchDB is fundamentally a different type of database, storing data as independent “Document” objects. They can be easily replicated to other instances of CouchDB for distributed and offline…
-
20 Most Influential Open-Source Web Applications
Read more: 20 Most Influential Open-Source Web ApplicationsFrom managing databases to shopping, writing blogs to sending emails. Ten years of passion, great software architectures, team work and revolutionary ideas. Here are the most influential open-source PHP applications to date: 1998 phpMyAdmin phpMyAdmin is a tool written in PHP intended to handle the administration of MySQL over the Web. Currently it can create…
-
13 reasons why UML failed
Read more: 13 reasons why UML failedOne of the reasons is that UML attempts to become a programming language. By aiming to be able to generate full code actually UML tries to be a programming language. In my mind there is a big problem with a general purpose graphical programming language. In human history the written form of all languages evolved…
-
Use a Web-based terminal for remote administration tasks
Read more: Use a Web-based terminal for remote administration tasksAjaxterm offers a simple solution to those who want to run a terminal over the Web for performing remote administration tasks. Vincent Danen tells you how to get it and configure it for Apache.
-
Scrum and XP work well together
Read more: Scrum and XP work well togetherA programmer cannot be Agile if the person that manages him is not Agile as well, and vice versa. That’s why Scrum focuses on management and organization practices while XP focuses mostly on actual programming practices, and that’s why they work so well together. This excellent free book aims to give you a head start…
-
ScrumWorks: Agile Process Automation Tool
Read more: ScrumWorks: Agile Process Automation ToolWhat does Google, Sun Microsystems, HP, Amazon, Oracle and Motorola have in common? They all use ScrumWorks, an Agile process automation tool that enables teams to self-organize and maximize productivity. Sun Microsystems: “The best compliment I can give to ScrumWorks is that my staff doesn’t think about it. It is intuitive and respectful of the…
-
A Painless Remote Projects Synchronization Utility
Read more: A Painless Remote Projects Synchronization UtilitySo, there you are, asking yourself – “How the hell am I going to deploy my next application across multiple servers?”. First, you write some shell scripts. One that checks out the project from the repository and the other one that runs all the tests. Then, you master the synchronization technique and realise that combined…
-
Search your code for vulnerabilities
Read more: Search your code for vulnerabilitiesI’m a big fan of PHP_CodeSniffer and I think it’s a great development tool, it ensures that you write code that is easy to read and maintain. But, what about making sure that the code you write is secure and doesn’t have any vulnerabilities? Right, there’s another tool for that… PHP Security Scanner is a…
-
Web Application Security Scanner
Read more: Web Application Security ScannerWeb security is possibly today’s most overlooked aspect of securing the enterprise and should be a priority in any organization. Recent research shows that 75% of internet attacks are done at web application level. Web application security scanners ensure website security by automatically checking for SQL injection, Cross site scripting and other vulnerabilities. There are…
-
Software Engineering for Web Applications
Read more: Software Engineering for Web ApplicationsA twelve-year-old can build a nice Web application using the tools that came standard with any Linux or Windows machine. Thus it is worth asking ourselves, “What is challenging, interesting, and inspiring about Web-based applications?” This textbook written by Eve Andersson, Philip Greenspun, and Andrew Grumet for the MIT course “Software Engineering for Internet Applications”,…
-
CouchDB: A document-oriented database accessible via a RESTful HTTP/JSON API
Read more: CouchDB: A document-oriented database accessible via a RESTful HTTP/JSON APICouchDB was accepted for incubation at the Apache Software Foundation a couple of months ago. My congrats to the development team! It’s a very interesting and challenging project, and the fact that it was accepted for incubation will definitely get the team exited. What is CouchDB? A document database server, accessible via a RESTful JSON…
-
An A-Z Guide to Being an Architect
Read more: An A-Z Guide to Being an ArchitectAsk yourself: What are my primary concerns and interests when making software? It is by answering this question that you’ll be able to define the distinction between software architecture and software development An A-Z Guide to Being an Architect
-
Building Scalable Development Environments
Read more: Building Scalable Development EnvironmentsOne of my favourites ZendCon sessions, presented by Shahar Evron: “Building Scalable Development Environments”. Related links: Slides (PDF) Podcast (MP3)
-
Use-Case Analysis: Getting from use cases to code
Read more: Use-Case Analysis: Getting from use cases to codeThe first in a two-part series that appeared in The Rational Edge, this article presents a case study that analyses the requirements captured in use cases and transforms them into implementable representations that can be directly coded. An excellent article written by Gary Evans. Getting from use cases to code: Part 1: Use-Case Analysis Getting…
-
Top 10 Application Design Mistakes
Read more: Top 10 Application Design MistakesApplication usability is enhanced when users know how to operate the UI and it guides them through the workflow. Violating common guidelines prevents both. Once again usability expert Jakob Nielsen writes about common mistakes made by designers, front-end developers and information architects when designing user interfaces. Top-10 Application-Design Mistakes
-
Magento 1.0 Released! Open Source eCommerce Evolved
Read more: Magento 1.0 Released! Open Source eCommerce EvolvedVarien, one of the most important eCommerce development and consulting firms in the world, has taken eCommerce to a completely different level with the latest release of Magento 1.0. An amazing, flexible, modular and scalable open-source eCommerce solution, powered by one of the most popular systems on the web today, the Zend Framework. Congratulations to…
-
Working Effectively with Legacy Code
Read more: Working Effectively with Legacy CodeIs your code easy to change? Can you get nearly instantaneous feedback when you do change it? Do you understand it? If the answer to any of these questions is no, you have legacy code, and it is draining time and money away from your development efforts. In the book Working Effectively with Legacy Code,…
-
Dependency Injection and the Zend Framework
Read more: Dependency Injection and the Zend FrameworkA couple of months ago I wrote a Dependency Injection component for the Zend Framework. It’s a simple solution to a complex problem: removing hidden dependencies and injecting mocked objects. The component has evolved quite a bit since I first created it, and it’s now part of a bigger system, where objects are persistent, can…
-
How Web Caches Work
Read more: How Web Caches WorkWhat’s a Web Cache? Why do people use them? A Web cache sits between one or more Web servers (also known as origin servers) and a client or many clients, and watches requests come by, saving copies of the responses, like HTML pages, images and files (collectively known as representations), for itself. Then, if there…
