Tuesday, December 31, 2013

كلمتي الترحيبية لمؤتمر ذكاء الاعمال

بسم الله الرحمن الرحيم


اسمحو لي بداية بالاصالة عن نفسي و بالنيابة عن زملائي في شركة ريل سوفت و مايكروسوفت أن أرحب بالسيد نديم الخليلي مندوب معالي وزير الاتصالات و تكنولوجيا المعلومات الدكتور عزام سليط، و السيد عبد العزيز معلمي المدير العام للمعهد العربي للتدريب و البحوث الاحصائية.
و ارحب ايضا اجمل الترحيب بالحضور الكريم و اشكركم جميعا على تفضلكم بتلبية الدعوة لحضور مؤتمر التقنيات الحديثة لأنظمة ذكاء الأعمال و ادارة البيانات.

و لا يفوتني في هذه المناسبة تقديم جزيل الشكر لشركة مايكروسوفت على دعمها لفعاليات هذا المؤتمر.

يعتبر ذكاء الأعمال حقلا فتيا، متعدد التخصصات، متنوع الأوجه و الأشكال، متكامل الأبعاد يهدف إلى صهر الذكاء و الاعمال و التكنولوجيا في بوتقة واحدة تقوم على قاعدة و بنية نظم معلومات و تطبيقاتها.
و لعل أهمية ذكاء الأعمال تتجلى بصورة أوضح في عصرنا هذا عصر اقتصاد المعرفة  Knowledge Economy، فذكاء الأعمال هي الاداة التي يتسطيع متخذوا القرار من خلالها قراءة المعلومات الضرورية لأخذ قرارات حكيمة مبنية على قاعدة من المؤشرات المستنبطة من صلب نظم المعلومات التي يمتلكونها.

لقد كانت شركة ريل سوفت من الشركات السباقة في الاردن  لا و بل على صعيد العالم العربي بإدراك أهمية ذكاء الأعمال و دأبت على رسم رؤية واضحة المعالم من اجل تقديم حلول تعتمد على ذكاء الأعمال كأداة حيوية لأعمال اكثر ذكاء و مرونة و كفاءة في متناول أيدي صناع القرار متى و أينما كانوا، و بالفعل لقد ابتدأ المشوار في بداية العقد السابق أي منذ أكثر من عشر سنوات و تكللت جهودنا بنجاحات عدة و احدى ثمارها كان التحالف الاستراتيجي بيننا و بين مايكروسوفت الذي اتى اوكله سريعا فلقد استطاعت الشركة من انهاء ثلاثة مشاريع في الاردن و ثلاتة مشاريع اخرى في كل من السعودية، الشارقة، و سلطنة عمان.

لقد كشفت شركة Gartner بوصول حجم سوق برمجيات ذكاء الاعمال في الشرق الاوسط و شمال أفريقيا الى 182 مليون دولار خلال السنة الحالية أي بزيادة قدرها 11% من العام 2011، و تقول جارتنر انه من المرجح ان تنمو عائدات برمجيات ذكاء الأعمال الى 260 مليون دولار بنهاية عام 2016 و سيبقى قطاع ذكاء الاعمال أحد أسرع الأسواق نموا على الرغم من تباطؤ النمو الإقتصادي في بعض المناطق.

و لا تزال الأسواق تكتنز من الفرص الشيء الكثير، فحجم البيانات يتصاعد بشكل متضرد و خصوصا مع وجود كم كبير من المعلومات يتداول عبر شبكات التواصل الاجمتاعي الامر الذي استوجب اقحام مفردات جديدة مثل BIG DATA  لوصف مجموعات البيانات كبيرة الحجم.

لقد انتعشت جهود ذكاء الأعمال أيما انتعاش مع وجود تلك البيانات المسماة كبيرة الحجم، فكلما كبرت البيانات أصبح من الأسهل اكتشاف الأنماط و الإتجاهات الخطية الامر الذي سيلقي بظلاله بقوة على المؤسسات و الشركات و يفرض على إداراتها استغلال جهود ذكاء الأعمال في أعلى قائمة أولوياتها.








Tuesday, August 13, 2013

Egyptians and the story of Morsi

I was saddened by reading the comments that accompanied the article that appeared in the foreign policy publication (http://www.foreignpolicy.com/articles/2013/08/09/morsy_is_the_arab_world_s_mandela?hubRefSrc=email#lf_comment=92475372)and mostly made by Egyptian for the following reasons

 1) The amount of hatred between the two sides in unbelievable and cannot  lead to a united Egypt.

2) The amount of fabrication and twisting of news to get perception inline with one's point of view is also shocking. for Example Tawakel is now a hero for the pro morsi protesters , while is evil for the others just because she seemed to have a specific point of view. I gather if she publishes another article tomorrow morning changing her point of view, her acceptance by the Egyptians would swap immediately. She is either applauded or accused by people who never heard of her or her work earlier, but were ready to make up a quick opinion about her in a matter of seconds. If you talk like me you are honorable , if not, you are miserable.  

3) It is crystal clear that Egyptians cannot stand an argument that opposes the one they subscribe to. Even the words that are used to describe the situation is full of implicit opinions. For example, i see people writing words like "Disgusting", "Shameful", "Sick Mind" , "Luring" if they are morsi opposition.  Why cannot you just plainly state your point of view without trying to depict the other side as inhuman and Evil? when we read these words, we cannot respect the writer or his/her point of view.

4) Most of the reasons  given in the comments of this article to justify ones point of view are invalid and mostly trivial. 

5)Affections play the prominent role in the forming of ones opinion in Egypt . General speaking, IF X country  elects Y president then this is a democracy , and if X military ousts  the Y president then this is a coup,,  However, if  X is Egypt, and Y is Morsi  and military over throws the president, then for the opposition it is democracy , however, if X is Egypt and Y is Morsi and you are pro morsi, then it is a coup. While for the rest of us it is coup "no affections attached".  Wake up Egyptians, this is not Umm Kalthum or Abdul Halim we are talking about here. keep your affection aside, and use Wisdom, Learn to accept each other, It is the future of the region and not only Egypt.  it is no longer  لنا الصدز دون العالمين او القبر
6)During the past 40 years i was following Egypt political status.I Was not particularly happy about many things then, but myself and all people around me were excessively  proud of you guys during your  quest for democracy during the Mubarak days. In fact, we wished that we were Egyptians, but Alas, not any more.

7) The outcome that i see today:  You let us down as you buried democracy at its infancy.  You made the Isreal happy; if the Israelis  were asked to customize an enemy for their liking, they could not have done any  better than what Egyptians are now providing , ie. the ideal enemy! and you made the world find out how trivial the Arab mind is, and finally and most importantly, the Arab world is not prepared for democracy, something General Sisi said in 2006, i must say, the guy is a visionary.  (by the way, is it true that his uncle works for Dahi Khalfan of UAE intelligence or this is yet another one of the fact twisting race going on in Egypt)
don't write any comments, i kind of anticipate what they will be! I read all possible combinations in comments sections, I will either be a sick minded , outwards thinking and all bad labeling that your vocabulary can describe or  your all time hero. All depends on if you like or dislike my opinion. Nevertheless, Seldom will i get a subjective critique.

ammar

Monday, June 17, 2013

Oracle ADF and Apache JEMETER

I am doing some consulting work for the Kuwait University.
I am utilizing Jmeter to stress test their ADF application and used a demo prepared by Chris Muir

Once i ran the recorded scenario, I notice the following error at the Jdeveloper Console
<_restoreserializedview> 
java.io.IOException: Not in GZIP format
at java.util.zip.GZIPInputStream.readHeader(GZIPInputStream.java:143)
at java.util.zip.GZIPInputStream.(GZIPInputStream.java:58)
at org.apache.myfaces.trinidadinternal.renderkit.core.CoreResponseStateManager._restoreSerializedView(CoreResponseStateManager.java:188)
at org.apache.myfaces.trinidadinternal.renderkit.core.CoreResponseStateManager.getTreeStructureToRestore(CoreResponseStateManager.java:130)
at org.apache.myfaces.trinidadinternal.application.StateManagerImpl.restoreView(StateManagerImpl.java:667)
etc ..



at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
لا يوجد هيكل ولا يوجد جذر
<_handleexception> ADF_FACES-60098:تلقت دورة حياة Faces استثناءات غير معالجة في المرحلة RESTORE_VIEW 1
javax.faces.application.ViewExpiredException: viewId:/untitled1.jsp - ADF_FACES-30107:انتهت صلاحية حالة عرض الصفحة. إعادة تحميل الصفحة.
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._restoreView(LifecycleImpl.java:751)


Go back to your Jmeter plan 
and check your HTTP requests and for each parameter that has javax.faces.ViewState, make sure that the value you type for that is  !${javax.faces.ViewState}.  Most probably , you have forgotten to add  the exclamation mark (!) at the beginning.
Yes, you need both  the exclamation mark the the dollar sign  

Ammar Sajdi

www.e-ammar.net 
www.realsoft-me.com

Wednesday, October 17, 2012

The C language dominates the programming languages arean

The number One programming language is the C language according to|TIOBE Programming Community index

Position
Oct 2012
Position
Oct 2011
Delta in PositionProgramming LanguageRatings
Oct 2012
Delta
Oct 2011
Status
12C19.822%+2.11%  A
21Java17.193%-0.72%  A
36Objective-C9.477%+3.23%  A
43C++9.260%+0.19%  A
55C#6.530%-0.19%  A
64PHP5.669%-1.15%  A
77(Visual) Basic5.120%+0.57%  A
88Python3.895%-0.05%  A
99Perl2.126%-0.31%  A
1011Ruby1.802%+0.28%  A
1110JavaScript1.261%-0.93%  A
1212Delphi/Object Pascal1.097%-0.01%  A
1313Lisp0.947%-0.08%  A
1418Pascal0.839%+0.12%  A
1516Lua0.728%-0.07%  A
1620Ada0.654%+0.04%  B
1715PL/SQL0.630%-0.27%  B
1825Visual Basic .NET0.599%+0.12%  A--
1921MATLAB0.591%+0.02%  B
2019Assembly0.568%-0.05%  B

The entire report can be found at 

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Ammar Sajdi

Sunday, October 14, 2012

From the Jewish Talmud




jaydi
September 26, 2012 at 3:24 am
(This is copied and the original in one of the response in the article 

US Preparing for a Post-Israel Middle East?

by Franklin Lamb

August 28, 2012


From the Jewish Talmud:
1) If a Jew is tempted to do evil he should go to a city where he is not known and do the evil there. –Moed Kattan 17a
2) If a heathen (Gentile) hits a Jew, the Gentile must be killed. Hitting a Jew is the same as hitting God. –Sanhedrin 58b
3) A Jew need not pay a Gentile (“Cuthean”) the wages owed him for work. –Sanhedrin 57a
4) If a Jew finds an object lost by a Gentile (“heathen”) it does not have to be returned.
-Baba Mezia 24a also in Baba Kamma 113b
5) When a Jew murders a Gentile (“Cuthean”), there will be no death penalty. What a Jew steals from a Gentile he may keep. –Sanhedrin 57a
6) Gentiles are outside the protection of the law and God has “exposed their money to Israel”. –Baba Kamma 37b
7) All Gentile children are animals. –Yebamoth 98a
8) Gentile girls are in a state of niddah (filth) from birth. –Abodah Zarah 36b
9) Only Jews are human (“Only ye are designated men”). –Baba Kattan 114a-114b
10) Jews may use lies (“subterfuges”) to circumvent a Gentile. –Baba Kamma 113a and two rabbis:
11) Rabbi Yitzhak Ginsburg, “We have to recognize that Jewish blood and the blood of a goy are not the same thing.” -NY Times, June 6, 1989
12) Rabbi Yaacov Perrin, “One million Arabs are not worth a Jewish fingernail.” -NY Daily News, Feb 28, 1994


Ammar Sajdi


www.realsoft-me.com
www.e-ammar.net

Beautiful skies of Amman


(This post was written a few years back, do not know why it is popping here)

How dare you blame me for being immensely indulged and madly in love with weather after you see the picture shown . This is how the skies of Amman looked like yesterday afternoon (this picture was taken by Issa, right above English school)

And if you look to the picture below, you will understand more. See the feeling is mutual. it is not a one-sided kind of relationship:)

Anyway, In the last 48Hrs, the Eastern Med witnessed the first real intense weather system that dumped a staggering 70 mm of rain in western areas of jordan. By the way, the real rain in Amman started at 9 PM night on Tuesday, exactly when people casted their last ballots and election centers where announced closed.

Taking about elections in Jordan, our company PALCO was in charge for the computer software infrastructure. The difficulty lies in the criticality and the size, where in one day, no errors are allowed , no power failure are allowed, no software glitches are allowed, and you need to have 4000 users simultaneously logged in hitting the database at a rate of around 50 transactions per second from all over Jordan. We had to maintain and support data entry through web interfaced accessed from around 1200 schools all around Jordan.

Two database in RAC configuration were taking the load, each server with 8 CPUs.
Around 8 application Server with Apache (the guy with the feather) installed served as HTTP server.

It was a record breaking stressful month with stress intensifying as the election date was approaching to finally reach a paramount on the day of election. The team had to be available for round the clock.

Anyway, it was real, it was fun , but it was NOT a real fun. The important things is that it ended in a way we hoped it would and we learned a lot. This is not the first time we support election software infrastructure, the first time was back in 1997.

And today, which is my favorite Thursday, we ended the week and the day at champions Latino night-Marriott.

Well i am preparing myself for one heck of a day! next Sunday in Damscus. The project delivery day!!!!

Crossing the Barrier



Last Friday OCT 12, 2012 marks an important day in my non-profession-related career, it is the day when I with my bicycling buddies crossed the 100 Km on my bicycle.  In fact, we covered the distance from Amman to Al-Azrak in around 4 cycling hours across the eastern part of the Jordanian desert with a great group of cyclists in great weather conditions.  The total distance was 117 Km!



Ammar Sajdi
www.realsoft-me.com
www.e-ammar.net

Sunday, September 02, 2012

How to answer any question

Hello

Part of my job in the past 20 years is to answer questions ,mainly Oracle database related questions.
Now i have found a way to answer any question in the world without having to work very hard

Scenario:
Somebody asks you a question , for example, somebody want to know about the capital of jordan

My answer is

http://www.lmgtfy.com/?q=capital+Jordan#

Try it out


Ammar
Sept 2, 2012

Monday, June 25, 2012

Profile for suggested ride On Friday June 28









Bicycle Ride

The route is basically from  Applied Science University (which we passed by last week), up to Abu Nussair, and down into Urdon High way northwards towards Jerash. In the Middle of Urdon high way, we take a right up to the mountains overlooking Baqa Camp.  We start a steep downhill country road towards a village called Massara. Then we go up again until we reached Bairain (which we know from last week). Now we will climb back to Applied Science University.  
Total distance 40Km
Total Altitude 1100 Meters

note: some stretches are really difficult.

Ammar Sajdi

Wednesday, October 05, 2011

Technically Speaking

Clarification of Oracle ADF State Management

By Ammar Sajdi

May 15, 2011


For the sake of this discussion, it will assumed that there are only two users accessing the application and only one application module available in the application module poolThe following is an attempt to clarify how exactly ADF manages application module pool.

No Activity

  • Application Module in unreferenced State
  • No Reference to any Client page in the Http Session














First User Sends a Request

  • At the beginning of the Request, a session references a Data Control object which in turns looks for an Application Module (AM) in the pool. It finds an unreferenced AM and grabs it for its use AM1 ;( An unreferenced AM is one that does not hold active content for any user session). During the request, the status of the AM is changed to BUSY and the AM instance contains User1 transaction information together with Current row information etc ..

  • At the End of the Request, AM1 is checked back to the Pool with AM states changed to Referenced (Or Managed). Note that the AM is back in the pool without constraints and is not tied to any specified session.


1)

  • User Sends another Request, Second user is still Idle

  1. The Data Control (which resides in the same user session) will again look for AM in the pool and since the pool uses session affinity algorithm, an attempt is made to return the same previous AM instance. The attempt will be successful, because no other session is competing for the AM in the pool. AM1 will be returned. Its status will again become Busy
  2. At the end of the request, AM1 is returned back to the pool in Managed state.

  • Second User Sends a Request

  1. At the beginning of the Request, the second user Data Control will try to grab AM1. AM1 is however in a managed state and is referenced by the first Session. Any attempt to over write the contents of AM1 shall jeopardize the first user transaction. Therefore, the AM pool management needs to make AM1 available to user2, but only after it recycles the contents of AM1. A process called passivation starts, in which AM1 contents are persisted into the Database or to an OS file. This is called a snapshot. After passivation is completed, AM1 is now in an UNREFERENCED State and at this moment, Session2 Data Control grabs AM1, changes it status to BUSY and becomes the active AM for user2.



  1. At the end of the request, the Data control in the second user session releases the AM back to the Pool in MANAGED state


  • First User Sends a Request

  1. When the first user sends another request, he/she should not be aware of the fact that AM1 now references a different user session. In order to make this completely transparent, the Pool Management will recycle AM1 again, after it persists AM1 state through passivation, it will carry out an activation process. This process reads User1 snapshot from the Persisted snapshot and back into AM1. AM1 now references User1 session and maintains its current transaction.



  1. 2 Finally, at the end of the request, the AM1 is released back to the application module waiting to serve another request. If the request is for the first user, the process continues without passivation/activation cycle. If on the other hand, the request is for the second user, user2 previous snapshot needs to be activated.


Notes:

Activation / passivation cycle does not take place at every request. (one exception is when failover is enabled). Otherwise, it only occurs when user requests far exceed the no of available AM.

There are parameter that gives you control over the AM in the pool. Like Max, min etc …

Note that in the above scenario , it neither of the users issues a submit or a rollback, while at the same time the contents of the transactions are maintained across several requests.

It is important to understand that whenever the session passivated, a JDBC database rollback is issued. This rollback is not related to the Application Module, your EO will remain intact. But you need to be careful about stored procedures that you executed with DML, or information posted to the database through POST_CHANGES operation.

When the session is passivated and then activated to another user, its JDBC connection remains with it. Therefore, any session information are lost. This is important when you design RLS, and that is why we need to set the context information at each PrepareSession event.

Fundamentals of Software Testing

Originally posted on jan , 23 2009, Published again on Sept,18,2024 extracted completely from    http://testingsoftware.blogspot.com/2005/1...