Blog from our CEO
Dec 16

Written by: Dejan Milosavljevic
Wednesday, December 16, 2009 7:21 PM 

We at Singleton Solutions are mainly Software Engineers. This fact of course influenced the name of our company. Back to my university time we had a subject called “Software Engineering”. Obvious, not? Our lecturer intensively forced the learning of “Design Patterns”.

I will try to explain to our non-IT readers what Design Pattern are. Design Patterns describe simple and elegant solutions to specific problems in object-oriented software design. Design Patterns capture solutions that have developed and evolved over time. Hence they aren’t the designs people tend to generate initially. They reflect untold redesign and recoding as developers have struggled for greater reuse and flexibility in their software. Design patterns capture these solutions in a succinct and easily applied form. In other words design patterns are recipes how repeatable problems can be solved. In order to make design patterns more acceptable among software engineers, these different recipes have names. One of them is called “Singleton”.

Don’t worry, at the start I had difficulties to understand what all is about. I do not intend to explain deeply about design patterns, rather to explain how the name of our company was born and what does it mean. The next section is the cutting from the "bible" of “Design Patterns” written by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides:

Intent

Ensure a class only has one instance, and provide a global point of access to it.

Motivation

It’s important for some classes to have exactly one instance. Although there can be many printers in a system, there should be only one printer spooler…

Applicability

Use the Singleton pattern when:
•    There must be exactly one instance of a class, and it must be accessible to clients from a well-known access point.
•    When the sole instance should be extensible by subclassing, and clients should be able to use an extended instance without modifying their code

After a hard start using design patterns in real world I started to love them. For those which at least do or did some programming probably might know that one of the first lessons of programming starts with the “Hello World” program. Like the “Hello World” program, the Singleton design pattern is very often used as the first pattern in the lessons too, because it is simple to understand. Despite its simplicity, I believe that the Singleton pattern is extremely important, even if we are not aware of this fact.

Finnaly to summarize, the Singleton design pattern is:

•    Simple and easy to understand
•    Important
•    Creates an instance only once, so it is unique


We believe that our solutions are:

•    Simple and easy to understand
•    Important
•    Unique

As you can see there is some similarity between the described design pattern and our philosophy and solutions we develop. The name Singleton Solutions wasborn. It could be also read as Unique Solutions, but Singleton sounds somehow cool.

Last but not least the explaination about our logo. As every finger print is unique it is part of our logo. So we do not do eny encription software, rahter unique solutions.

The Singleton Solutions Logo
When I am already writing about Singleton I would like to mention that the word Singleton has many meanings in the real world:

•    There are places called Singleton
•    There is a whisky called Singleton

Tags:

Your name:
Your email:
(Optional) Email used only to show Gravatar.
Your website:
Title:
Comment:
Add Comment   Cancel 
 Featured Projects:
20 Minutes
Blick a.A.

 

  Quick links
 
About Work with us
Singleton Team Outsourcing
Public Relations Jobs
Contact  
   
  DotNetNuke Free Newspapers
DNN Modules POP 2
DNN Consulting POP.mobile
   
Singleton Solutions Switzerland
 
Industriestrasse 14
CH-8302 Kloten
 
Office: +41 43 501 13 80
Fax: +41 43 501 13 88
 
...Sweden
 
+46 73 985 68 50
+46 70 922 03 06
...Serbia
 
Trg Topolivaca 4 / 104-105
SRB-34000 Kragujevac
 
Office: +381 34 502 531
Fax: +381 34 502 533
CH