Today's Question:  What does your personal desk look like?        GIVE A SHOUT

 SOFTWARE DESIGN


  That’s Not TDD

A few months ago I was visiting a client who was having a lot of problems using TDD.“It takes over half an hour to run our unit tests,” he said.“You are not doing TDD,” I said. “In order for tests to be valuable all of them must run fast—within a few seconds, or developers will stop running tests frequently.”“But how to I make them run fast?” he asked, “Just connecting to the database takes 30 seconds”So I showed him a technique called Dependency Injections that allowed him to insert a mock object instead of the database. â€...

2,847 0       METHOD DRIVER TDD QA MODEL UNCONTROL


  Why Software Projects are Terrible and How Not To Fix Them

If you are a good developer and you’ve worked in bad organizations, you often have ideas to improve the process.  The famous Joel Test is a collection of 12 such ideas.  Some of these ideas have universal acceptance within the software industry (say, using source control), while others might be slightly more controversial (TDD).  But for any particular methodology, whether it is universally accepted or only “mostly” accepted, there are a multitude of organizations which don’t employ them.  There are many, many shops that do big bang testi...

2,754 0       DESIGN SOFTWARE DEVELOPMENT DEBUG


  What are the Four Most Important Technologies Inside an Office, Today?

The office life has changed a lot since the beginning of the 21st century. Nowadays, technologies have taken over a large part of the work that people have to do, inside their walls. Some of them are more important than others, though. Here are four that no company should live without. A VoIP Phone SystemIf a company wants to communicate with its clients, it needs to install a centralized phone system. The old ones were complicated and costly. The more phone lines you had, the higher the monthly bill got. Today, VoIP phone systems have replaced the traditional ones, bringing in an era of ...

2,746 0       SMARTPHONE VOIP 5G


  The Balanced Developer

In preparation for a recent team offsite, I spent some time thinking about what I hold dear as a software developer. One idea I kept coming back to is the notion of balance. I see balance manifesting itself several ways in the work of a successful developer, some of which follow.Speed Versus QualityThe most obvious example is the balance of development speed and quality. When building software, it’s never a good idea to write code as fast as possible without any attention toward maintainability, just as it’s never a good idea to spend such an inordinate amount of time designing a...

2,709 0       SOFTWARE QUALITY DEVELOPMENT BALANCE SPEED


  Does My Online Business Need Log Aggregation?

Logs crop up all over the place. They are generated by everything from web servers and databases to the firewalls which protect them from breaches.Because logs accumulate in large volumes from all of these different sources, log aggregation is an important process which works to organize and impose order over otherwise disparate log files.That sounds good, but should your online business be eager to jump on the log aggregation bandwagon? Here is a look at the main benefits and considerations to help you decide.Image Source: PixabayThe importance of log aggregationAs mentioned, a laundry list o...

2,679 0       SOFTWARE DESIGN LOG AGGREGATION


  DESIGNERS NEED ENGINEERS

Like so many of you, I’ve been indulging in the amateur analyses all over the web about why Steve Jobs, p.b.o.h., was so great. The recurring message is pithily summarized by Mathew Ingram: “Technology is the least important thing about Apple products”.Bullshit. The reason why Apple manages to build such magnificent products is because design and usability drive the engineering, yet the technology behind their products is by no means trivial. Apple cares a lot about engineering, more than Dell and Samsung and RIM.It takes one designer to decide that ...

2,672 0       DESIGNER ENGINEER RELATIONSHIP


  Key challenges in Agile implementations

7Share6inShareAgile methodology was supposed to be a solution to solve all of our problems. But it looks like it’s not. Some issues appear when companies start to implement Agile in their organizations. A research has been done on seventeen companies using Agile methodology (People over processes: Key people challenges in Agile Development). Authors chose nine of the most often reported issues. I’d like to focus on four, in my opinion, most important.#1 Developer fear caused by transparency of skill deficienciesThe Progress of each team member’s work is usually rep...

2,656 0       BUSINESS COMMUNICATION AGILE DEVELOPMENT CHANLLENGE


  My ten development principles

After several years developing software, I have acquired a very a strong opinion on how software should be developed, I actually have come to the conclusion that everything boils down to 10 principles, that if well implemented, will make any software development successful.1.- Customer first.“If we don’t take care of the customer… somebody else will.”Customer first means focusing from a customer perspective on real value for the product being developed, other aspects as: contracts, requirements, technologies… should take a secondary role in the pro...

2,616 0       SOFTWARE DEVELOPMENT PRINCIPLE COMMUNICA