Sunday, July 30, 2006

Open Source (Free version), How Comes?!!!

I am just wondering about Open Source principals, yes, I could understand that people asking for software code to be opened for learning purpose, or for the development of software as whole, but what I don't understand and not convinced with at all:

1- People whom are convinced with Open Source principals believe that all closed source companies are evil, which is not reasonable at all, because why we don't do the same with other professional services, I mean why you can't go for a lawyer asking him to show all his work secrets with you and when he don't do this, then he's evil?!
Why?!

2- The "Software for free" principal is not reasonable at all, why developers only?!Why we can't see doctors for free, lawyers for free, engineers for free, teachers for free, books for free, etc, why developers only?!Aren't they humans that need money to live?!Aren't they spending the same time (and even more), and spend more money than lawyers and doctors as example?!Why it's normal for the first to sell their services for free and when the second group does the same they are evil?!

I may got some answers like: "Open source doesn't sell the product, but they sell the services for this product", they may be OK for an OS or RDBMS, but what about software which doesn't require any kind of services like Games, small software like graphics packages, like mathematical packages, word processing, etc, is it reasonable for some one to spend a year or more working day and night for nothing and the people whom are using his work and whom spent the same time in their work (like doctors and lawyers) get more money and get a car and home and then get his work for free while when he's seek or asking about law advice is going to pay for them, is this reasonable and fair for me to do job for you for free and when I ask the same for you to pay?!!!

It may be because most of the Egyptians I met are thinking that Open Source = Free which is not the case, this may be the reason, I don't know!

I really want to know how it's working as it doesn't make any sense at all!!!

Thursday, July 27, 2006

علم المنطق

في واحد راح يستقبل ابن عمه في المطار المهم وهم راجعين من المطار بيسأله: انت بقا لك عشر سنين في أمريكا.. كنت بتدرس ايه؟رد عليه ابن عمه : كنت بدرس علم المنطق قاله : ايه هو علم المنطق؟ رد عليه: صعب اللي درسته فى عشر سنوات اشرحهولك فى ساعه بس انا هاديكمثال على المنطق قاله : اوكي سأله ابو المنطق : انتوا عندكم كلبفي البيت, صح؟ رد عليه: ايوةعندنا قاله: ادام عندكم كلب اكيد انكم عاملين له بيت فى الحوش
رد عليه: صح عاملين له بيت في الحوش قاله : مادام انه عندكم حوش اكيد انكم عايشين في فيلا رد عليه: صح إحنا عايشين في فيلا قاله: مدام انكم عايشين في فلا اكيد ان ابوك غني رد عليه: صح ابويا غني قاله: مدام انه ابوك غني اكيد ان امك تقعد في البيت يعنى مش محتاجهانها تشتغل رقاصة عشان تجيب فلوس رد عليه: صحيح امي قاعدة في البيت قاله : هذا هو المنطق , انك تبني شيء علي شيء. من وجود الكلب في بيتكم استنتجنا ان امك مش رقاصة ردعليه : ياااااااااااا هو ده المنطق؟ المهم … صاحبنا راح عند صحابه باليل وحب يتفزلك عليهم وسألهم ياشباب تعرفون ايه هو المنطق ؟ رد واحد لا والله ما نعرفش قال : انا اعلمكم سأل صاحبه: انتوا عندكم كلب في البيت ؟ رد عليه صاحبه : لا ما عندناش قاله : تبقى امك رقاصة

Friday, July 14, 2006

First Technical Article

As I promised before, here you're my first technical article:

http://blogs.msdn.com/mmeshref/archive/2006/07/14/666241.aspx

Waiting for your comments :)

Monday, July 03, 2006

Technical Articles!

Finally I've taken the step to begin writing many technical articles on SQL Server Manageability on my technical blog.

Stay updated as this blog will be updated with a new article every week at max.

Wednesday, June 07, 2006

Wondering

This post is gonna be some how technical, as during the last days I kept asking myself this question:

Why usually every student in computer science is thinking about either:

1- Making a new Operating System.
2- Making a new RDBMS.
3- Making a new programming language.



And everytime you ask someone why you think about this?

You got these answers:

1- For learning (this is the only good answer).
2- For making something for us to work with.

The main problem here that they never ask them selves a very simple question:

What we'll add by making this project?!!


Because anyone could build kernel with it's loaded in less than 10 months, this is not the problem here, I'll give you a very simple and very known example, Linux OS, can you tell me during the early releases of Linux, why could someone stop using Unix and use Linux?!

Simply because Linux is free.

Now lets imagine that Linux was in the same price as Unix, now everyone could think in this way and make this comparison:


Unix Linux

Not Free Not Free
Unix arc. Unix arc.
Well tested for years and having good support New and using it may be risky


So now, would any one try to make his business on Linux?!
Of course not, give me one reason for this!!


Now let's return back to our point, every one from those people, just tells me that he's reading now in Linux source code and start making his own OS!!!

So the question here, what's new here?!
It's still using Unix-Like Arc., even you can't make a community for it as no one will leave Linux community and come to work in exactly the same (let's say that he/she can do it exactly the same like Linux which is hard) arc. and start again from scratch to reach the same result?!!!

No one ever thinks like that.

If it's for learning, then look around you, there're dozens of loaders and kernels every where, ask your self why people haven't completed it to be a complete OS?!!

For the same reason, why re-invent the wheel?!

Why start walking in a street and you know well that at the end you'll be ending on the same place others are beginning now?!!

If you really wanna make a new OS, then make your own arch., invent something new, something which will let the people say: "Hey, this OS is totally new, let's try it".

Because the idea of the Re-Make may be good in movies, in songs, but in software, it's useless, totally mess.

The something happened in making a new programming language, they just try to make a new programming language by just changing the syntax, the question again, why?!!

If you tell me as example that you would make Arabic syntax programming language I may agree with you (although you can build an addition layer over any existing programming language like C/C++ to translate your new syntax to the old one, in other words, just build the parse tree and pass it to the old compiler), why I could leave X language and go to Y language and the only difference that instead of writing int Variable, I'll write Variable int, or things like that, this is also worth nothing, total mess.

Imagine now that someone spent 5 years from his life and then came after that saying: "Heyyy, I invented a wheel from scratch, I didn't use any already made materials, I built it from the ground zero"

What you'll tell him?!
Simply: "Are you fool?!!!
Why you could spend 5 years from your life making something useless like that?!!"

But if he came and said that the wheel he invented is multi-size, or can't be exploded, or anything like that, this will be useful.


My final comment, there're a lot of wheels out there, either use them, or if you don't like to use them, build a spaceship, no one needs more wheels here!