Author Archives: Hayim Makabee

Unknown's avatar

About Hayim Makabee

Veteran software developer, enthusiastic programmer, author of a book on Object-Oriented Programming, co-founder and CEO at KashKlik, an innovative Influencer Marketing platform.

The Agile Architect

The International Association of Software Architects (IASA) in Israel was honored to host a talk by Johanna Rothman last week (June/21/2011). Johanna Rothman is a consultant, author and speaker with vast experience with project management. She was visiting Israel and … Continue reading →

Posted in Agile, IASA Israel, Software Architecture | Tagged , , | Leave a comment

The Single Question Interview

The routine of a software developer normally turns around design, implementation and testing. But hopefully there will be times in which the team needs to grow, and then he will be asked to do something extraordinary: Interviews. In the software … Continue reading →

Posted in Hiring | Tagged | 4 Comments

Divide-and-Conquer: Coping with Complexity

Sometimes a problem is simply too complex for us to solve. Our only chance seems to be breaking it into smaller parts that we know how to deal with. This strategy of reducing the complexity of a problem by dividing … Continue reading →

Posted in OOD, OOP | Tagged , | 2 Comments

On Bubbles and the Value of Data

In a recent article at Newsweek, Daniel Lyons claims that: “Data, by itself, is worthless. Facebook is betting it can create software algorithms to extract value from that data—essentially to perform a kind of techno-alchemy and turn zillions of meaningless … Continue reading →

Posted in Data Mining, Recommender Systems | Tagged , | Leave a comment

Soft Skills vs. Software Skills

When building a team of software developers, it is very important to define the profile of the engineers we want to compose it: Do we want to give importance mostly to the software skills, or do we want also to … Continue reading →

Posted in Agile, Hiring | Tagged , | 3 Comments

Inheritance and the Power of Abstraction

Programming is an exercise in abstraction. If a program is intended to solve some problem, we must first be able to model this problem in an abstract way, in order to express it in a programming language. Only after the … Continue reading →

Posted in OOD, OOP | Tagged , | 3 Comments

Nothing is more effective than enthusiasm

We all know that some programmers are much more effective than others. In one study, it was shown that the best programmers are ten times more efficient than the worse programmers. This degree of difference has not been observed in … Continue reading →

Posted in Efficacy, Hiring, Psychology of Programming | Tagged , , | 9 Comments

Effective Software Reuse

For many years Software Reuse has been seen as a solution to both reduce the costs of software development and improve the quality of the systems being developed. However, in practice, most companies today have the feeling that they are … Continue reading →

Posted in OOD, Software Reuse | Tagged , | 6 Comments

Effective Remote Work

After reading the book “The 4-Hour Workweek” by Tim Ferriss, I was eager to test his concept of Mini-retirements: “To distribute recovery periods and adventures throughout life on a regular basis and recognize that inactivity is not the goal. Doing … Continue reading →

Posted in Efficacy, Yahoo! | Tagged , | 1 Comment

Identifying Anti-Patterns

In my previous post, I’ve discussed the importance of identifying domain-specific Design Patterns in an organization. Equally important is the need to identify Anti-Patterns. This is the definition of Anti-Patterns from Wikipedia: “An anti-pattern is a pattern that may be … Continue reading →

Posted in Design Patterns, OOD | Tagged , | 3 Comments