Sunday, January 13, 2008

Flex nu e doar pentru Web

Primul contact cu Flex m-a facut sa admir ideea celor de la Adobe. Flex ofera practic la prima vedere eye-candy-ul flash-ului combinat cu puterea limbajelor server side gen PHP. O multime de componente foarte bine gandite pot fi ordonate foarte rapid pentru a forma o aplicatie puternica cu care poti prezenta cifrele companiei unor investitori sau iti poti atrage noi utilizatori pe site oferindu-le un set de statistici foarte atractive. Flex este extrem de usor de folosit iar rezultatele sunt exceptionale. Componentele se pot adauga prin meniuri drag&drop sau se pot scripta printr-o interfata similara Ecllipse.

Totul foarte ok pana aici si nota 10 la nivel de Web. Dar cei de la Adobe au decis sa faca un pas mai departe si sa creeze o intreaga interfata pentru un sistem de operare in Flex. Ce a rezultata puteti vedea in filmuletul de mai jos. Pe langa faptul ca arate foarte foarte bine, intreaga interfata este extrem de usor de folosit. Daca observam cu putina atentie putem vedea unele elemente prezente de acum in Windows Vista, ce au fost mai intai implementate prin Flex in Tiger OS.

Wednesday, December 5, 2007

People vs Systems

On which should you base your department more? On people or on systems? Should you have a large team that works in XLS or should you have just a hand of guys that work with powerful tools.

Both solutions have their advantages and their disadvantages.
Base your work on people:
-the costs will be very high and the time taken to finish a report can increase dramatically because of the lack of axiomatizations
-the things are simple and easily to control. You can communicate easier with people and people can feel responsibility and spot logical mistakes.
-you can became dependent on certain people. If the people leave you loose time and knowledge training other people.
Base your work on systems:
-lowers the costs increases the speed
-you are not dependent on the people's knowledge
-can be come very hard to verify and to follow. You might end up with a very complex system that spits out the report but which nobody knows how it does it.
-can get to be very hard to maintain and to improve

I think we must never go on one side or the other fully. The solution is somewhere in the middle. Don't exaggerate by building the perfect system that does it all. Let the people think because until now they are the only ones that can take logical important decisions. With all that what can be done automatically, make it automatic and keep check points. It is very easy to build a system that gives you the solution. The problem is that if you trust blindly the system you might get errors.

Friday, November 30, 2007

MySql and BI

The business of business intelligence stands in the data so choosing the right data storage system for your team can be of high importance.
I am a fan of MySql for 2 simple reasons:
-it is free
-you have more programmers that use MySql than any other db system

No, i am not touching in here the hard core minor differences between Oracle and MySql, the differences in speed etc. Those differences are overall minor because all db systems start to become more and more professional.
The main differences are indeed the costs differences. A paid solution will allways cost you more than when you buy it. The programmers costs more, the training costs, the maintenances costs more etc. Overall big bucks spent. To say so in MySql you can do it all for free.
Another difference is the personel. Right now MySql is very very popular being the startup db system used for writing simple web applications (it is the only one available because you don't spend big bucks for a small firm site). Thus you have a large market opened full of programmers that know MySql. For the other db programmers, those are hard to find, cost a lot, will become easily absolute and most of all, all the time need paid training.
Another nice thing about MySql is that the community is very rich. If you have a problem you can solve it easily by going on the web. Most of the time somebody encountered the same problem you have, fixed it and publicated the solution;)

Wednesday, November 28, 2007

How far should you split

Let's say you decide that your report team responds to two major market sectors. Maybe you get the bright idea of spliting your department in two... Think twice...
In the BI field there is a tendency to split out the teams to have a better "organization" structure. This can be the most dangerous thing if it isn't done corectly. Splitting requests and responsabilities between teams is a good thing as long as the teams stay together. There is one thing to tell your client you have available X resources for the report he wants and there is another thing to take away those X folks and isolate them from the rest of your team. Doing so you only slow things down and what is worse is that you can actually loose knowledge that can be shared between team X and the rest of the team. Weird things can happen if things will be done twice... once by team X and the second by the rest of the team.
Of course apparently everything is organized better but that is not an excuse as long as things can be clear and in the same time you can keep the unity of the team.
There is nothing more important than feeling you belong to a unit and that you work side by side for that unit.
Splitting things up and hoping that concurency in your own company can lead to good things is a bad solution and if you are lucky you won't get burned that bad... if not it can be disaster.
To those we add the piramid effect. As much as you split as much you need to assign new leads to the new formed teams. Those teams can be split again and again. Thus your piramid increases and you will see that instead of one person answering a request and assigning a programmer to do it you get a chain of up to 5 persons through which the request should pass until it gets to the right programmer.
Organizing things and good communication should allways be the solution in those cases.

Tuesday, November 27, 2007

Internal solution vs Imported solution

This will always be a discussed thread. As a company which solution is better? To build your internal systems strong in house or to buy an already made solution.
The answer lies in the nature of the company. If the company has a dynamic business behind it and it's always on the change building an internal system will help it be ready to adapt to the modifications in the right time. Buying a solution can make it absolute in a short period of time no matter how complex the solution is.
On the other hand buying an already made solution can take lots of problems from the shoulders of your company for the right price. The responsibility suddenly moves from your little tools team to a big specialized team which is supposed to answer any questions you have. The services can have a higher quality because the company that provides them is specialized in this and has the experience to give you what you want.
As a short balance between the two show the following advantages and disadvantages:
In house:
+full control of the solution
+adaptability
+strong knowledge kept in house
+confidentiality
-higher costs
-training and watching over a team involves specialized personnel
Imported solution
+specialized solution better quality
+support
+the responsibility lies in the company that offers the solution
-less control
-0 adaptability
-your data gets shared to the company that offers the solution
-you risk to buy a general tool that doesn't do exactly what you want

Monday, November 26, 2007

BI Solutions

And here we start with a blog about Business Intelligence solutions. I hope this will be an interesting journey for everyone and also i hope that each day i will get to post something new about this domain. In order to start with something i decided to describe a litlle bit this domain.

According to google (define: business intelligence) and more exactly to www.damacoc.org/presentations/2007_04_11_Adelman_DWGlossary.doc Business Intelligence means:

"The capability to perform in-depth analysis and possibly data mining, of detailed business data, providing real and significant information to business users. Business intelligence usually makes use of tools designed to easily access data warehouse data."

The first definition found on wikipedia (http://en.wikipedia.org/wiki/Business_intelligence) is:
"
The term business intelligence (BI) dates to 1958.[1] It refers to technologies, applications, and practices for the collection, integration, analysis, and presentation of business information and also sometimes to the information itself. The purpose of business intelligence is to support better business decision making."