This blog is subject the DISCLAIMER below.

Thursday, November 29, 2007

Microsoft Models 'Oslo' in (.NET 4.0)

Microsoft wants to stand development for service-oriented architecture on its head.

According to Steven Martin, director of product management, connected systems division, Oslo also aims to change modeling from a paradigm wherein models describe the application to a paradigm where models are the application.

Read more on:,1895,2209589,00.asp

.. more.

Monday, November 26, 2007

Microsoft Technology Day @ FCI-H

Microsoft Technology Day

Prepare yourself…

Microsoft Silverlight™ : is a cross-browser, cross-platform plug-in for delivering the next generation of .NET based media experiences and rich interactive applications for the Web. Silverlight offers a flexible programming model and integrates with existing Web applications. Silverlight supports fast, cost-effective delivery of high-quality video to all major browsers running on the Mac OS or Windows. Learn more about Microsoft Silverlight and other Technologies @ Microsoft Technology Day, Helwan University on Nov 29 th, 2007.
Microsoft … Discover Your Future.

You MUST Come and join us in this awesome event @ FCI-H, & let's SHINE.

10:0010:45Interoperability in a connected worldNohal Rady
11:0012:15What's New in Vs2008 & VSTS2008Dr.Ahmed Bahaa
12:151:15Lunch Break
1:151:30Lap around the Windows Live PlatformMohamed Wahby
2:453:45Game Development using XNAMohamed Wahby


10:00 am – 3:45 pm

Thursday, November 29, 2007

FCIH main campus, Hall 1

Faculty of Computers & Information – Helwan University

Hope to see you there!

MSPs – Helwan

Contact us:

Join our group:

P. S. If you know anyone else who'd enjoy this event, send that to him/her.

.. more.

Friday, November 23, 2007

The solution of the fedora 8 shock (swing doesn't work)

In this post we gonna show why does swing components? most of us tried netbeans ,but it awfully doesn't work with it. The reason is that , netbeans and swings are using the libx11 and there some thread safety operation the new version of this lib is doing that's why if you downgraded to the last version of libx11 you will find swings works will but of course it's not the ideal solution but of course there is another solution. The solution is to change the path of the libx11 in the which have shared native functions that calls libx11. we change the place of the used lib from the XINERAMA to the FAKEEXTN
using the sed command like this :


but where is this is different from jvm to jvm especially after the icedtea(icedtea is an implementation of the jvm by redhat ) so if you are using the jdk's jvm you will find the file in

and after that you can run your net beans setup of any program that runs with java

.. more.

Tuesday, November 20, 2007

Visual Studio 2008 & .net 3.5 have been released !!

The title says it all !!

According to this blog post , Visual Studio 2008 and .net 3.5 have been released yesterday.

Here are the links to help you get started:

Visual Studio 2008 Web site

Visual Studio 2008 Express Edition Web Site

Microsoft .net 3.5 framework Download

Visual Studio 2008 Express Edition All in One DVD image Download

Enjoy them !

.. more.

Object Relational Mapping (ORM)

Object relational mapping or ORM, is the concept of reflecting the state of business objects to be stored in a database, the concept itself is already known, the difference is in how we can do it?.
In normal cases; a developer will connect to a database then write SQL queries to be executed against it, so , it is not a problem, isn't it??.

The main problem in the previous scenario is that a business logic developer must know SQL, and must embed SQL code in the database layer in the application. Another thing is if the schema changes, it would be a tedious task to rewrite SQL queries to fit with the new schema. Last but not least; sometimes DBMS systems have slight difference in their SQL syntax and data types, So, if for any reason an application migrates from using a certain DBMS to another, some problems might show up. Well, what is the solution then??
The solution is simply founding an intermediate layer between an application and a database, this layer encapsulates any thing relating to storing, deleting, updating and retrieving objects, a layer responsible for defining associations between business objects like; composition and inheritance to be expressed in the relational model in the form of database tables.

There are many ORM tools like; Toplink and Hibernate, however, hibernate is the most famous these days. When working with an ORM framework; the developer is responsible for defining the how a certain object will be mapped to the database; in other words; telling the framework how a certain business object will be saved in the database. The next code fragment shows a simple java code for defining an object named category.

public class Category {
private int id;
private String name;
private String description;

The previous object can be defined for mapping like this in a XML file as follows using Hibernate

That's it, when you are accessing the database in your application, you just make calls to save, delete,update and load methods , so if the schema needs altering, all what is needed is to modify the XML file and telling the framework to regenerate the schema without any modifications the actual business logic and without writing a single SQL query. The category object is simple,however, any kind of complex associations can be mapped using the same way.

The best thing in ORM is that it frees a designer's mind from going beyond business relations, as there is no need to think of how to express them in the relational model any more. When you start using ORM frameworks, things will be upside down for a while, then, it will really make sense.

.. more.

Beginning Reversing

Reversing is a good word which have a great meaning especially in computer science so
what is the meaning of Reversing or ( Reversed engineering )?
the Reversed engineering means Retrieving the blueprints from the output of the product whatever the product is as an example :suppose that we have a great building from 1977 and we want to repair it (for tourism issues) but actually we don't have the blueprints that building was built with so repairing it will be unmanaged work as we don't know exactly what each part of the building means and the answer of that problem is the magic word (REVERSE IT ) and we mean by reversing it try to retrieve the blueprints from it by this example I suppose that most of us know what is Reversing now let's talk about Reversing in computer science as you may thought Reversing is Retrieving the source code from the executables.

BUT why would we do that ? ???

there is lots of reasons to do so . Note that Reversing is not the science of stealing other people work as someone may expect . Reversing is used in such cases when some one was working with us and then he left the company and some of his work has some bugs in running and we had a problem communicating with him and we don't have the source code here the magic of reversing appears if we just reversed his work we will have the blueprint and we can fix the bug . some other reason as we all make we all work with third party product which may be dlls com components and some of them have a missing documentation and we need to know some of it's detail again here is Reversing solves the problem . and lots of application of reversing we could write lots of articles on Reversing application but one of the great application is viruses antis when the virus is spread most of the anti virus companies reverse it to know some information on how to beat it .
but how could we Reverse ?
that is last question and maybe the hardest one of course Reversing is not that trivial task you need to know exactly how your program run and know about your target operating system and of course you must know about the law level language you are reversing to it . after you know the appropriate information you actually need to watch your target application through debuggers and some other tools (actually reversing is all about using tools) you must watch the whole program running and then indicate the places of interest in your needs and then watch those places closely to know where is your bug exactly and then defeat it .

Reference : Secrets of Reversed engineering by Eldad Eilam

.. more.

Microsoft-Helwan Boot Camp & PilotView Session

Microsoft-Helwan Boot Camp

PilotView session


To know more about “Microsoft-Helwan Camp”, our mission & activities.

Let’s start, to share our knowledge and find ways to make a difference.

In PilotView session, imagine yourself as a pilot on your plane, flying over computer science land, what will you see? Let’s find out together the different areas, also discover advanced technologies like .Net & Java, know what is Database? What is C++? What is OOD? Did you hear about Silverlight? Dose the word AJAX sounds familiar to you! Have you ever thought about having Certificates? Those and more.

Come and join us in this event @ FCI-H. J


3:00 pm – 3:15 pm Launch Microsoft-Helwan

3:15 pm – 4:30 pm PilotView session - by Ahmed Osama

3:00 pm – 4:30 pm Thursday, November 22, 2007

FCIH main campus, Hall 1
Faculty of Computers & Information – Helwan University

Hope to see you there!

MSPs – Helwan

Contact us:

Join our group:


P. S. PilotView session mainly for 2nd year students then 1st year ones, but sure everyone else is most welcome.

P. S. If you know anyone else who’d enjoy this event, please forward this email to them now.

.. more.

Sunday, November 18, 2007

Microsoft Task Parallel Library

Multi-processor machines are now becoming standard while the speed increases of single processors have slowed down. The key to performance improvements is therefore to run a program on multiple processors in parallel. Unfortunately, it is still very hard to write algorithms that actually take advantage of those multiple processors. In fact, most applications use just a single core and see no speed improvements when run on a multi-core machine. We need to write our programs in a new way.
Introducing TPL

The Task Parallel Library (TPL) is designed to make it much easier to write managed code that can automatically use multiple processors. Using the library, you can conveniently express potential parallelism in existing sequential code, where the exposed parallel tasks will be run concurrently on all available processors. Usually this results in significant speedups.

TPL is being created as a collaborative effort by Microsoft® Research, the Microsoft Common Language Runtime (CLR) team, and the Parallel Computing Platform team. TPL is a major component of the Parallel FX library, the next generation of concurrency support for the Microsoft .NET Framework. Though it has not yet reached version 1.0, the first Parallel FX Community Tech Preview (CTP) will be available from MSDN® in Fall '07. Watch for details. TPL does not require any language extensions and works with the .NET Framework 3.5 and higher.

The Full article in the MSDN.. Press Here

.. more.

Saturday, November 17, 2007

Android - An Open Handset Alliance Project

The Open Handset Alliance (, a group of more than 30 technology and mobile companies, is developing Android: the first complete, open, and free mobile platform.

So there's no G-phone :(..So what's new about that..Let me tell you..Cool apps that surprise and delight mobile users, built by developers like you & me, will be a huge part of the Android vision. To support us in our efforts, Google has launched the Android Developer Challenge, which will provide $10 million in awards for great mobile apps built on the Android platform.

For more about Android & to download The SDK check

Android Developers blog,

YouTube channel/User, where u can find many useful videos about Androids & the services already available by the OS & the SDK,

& finally Android community,

.. more.

Wednesday, November 14, 2007

Sun Microsystems Developer Day

Finally, Sun Microsystems will make one of the developers days in Egypt-Cairo. Sun Microsystems is supporting the community world wide and support EGJUG in Egypt.
Register NOW!


1. Sun and Open Source
Discover how is Sun contributing to open source and find out about Sun's key open source initiatives such as NetBeans, OpenSolaris, Glassfish and OpenOffice.

2. NetBeans 6 - New & Cool
This session provides an overview of new tools available in the upcoming release of NetBeans 6.0. You will see demos of new Java editor in NetBeans 6, we will demonstrate various new features of NetBeans GUI builder in action and NetBeans Profiler which helps analyze performance of Java applications.

3. Technologies for Creating Rich Internet Applications *Creating highly interactive web applications is a must today. During this session you can find out how to use different technologies to create Ajax-enabled applications to provide better user experience for end users.

4. Introduction to Swing Application Framework and Beans Binding *Swing application framework and Beans binding are new frameworks which greatly simplify desktop application development. Together with NetBeans' Matisse GUI builder you can develop desktop applications much easier than before. All features will be again demonstrated in action inside of the IDE.
5. NetBeans Mobility Pack

Java is very popular by mobile applications developers. Discover what's new in NetBeans Mobility Pack, the ultimate tool for creating mobile applications. It's visual designer is not only easy to use but also very flexible and supports latest standards such as CDC and SVG.

Venue: Dar Al Defa' Al Gawy, Nozha St. Nasr City
Date: November 21st, 2007
Time: 10 am.

This event is open to developers free of charge. Places are limited, so please register early. All attendees are invited to stay for lunch. All pre registered attendees will receive a free NetBeans developer pack and T-shirts.

.. more.

Saturday, November 10, 2007 Preparation Meeting

DotNetWork user group is a group of people who are willing to participate and aid the developers community building & enhancing their technical skills. We want to help both undergraduates & postgraduates knowing the latest technologies, new concepts, have an eye out for the world & communicating with the rest of it.

We are willing to achieve that by planning multiple events for the community & help to spread the word about .Net.

The user group is preparing for its first official meeting. We're meeting to start founding the user group. Anyone who wants to join or start participating, please attend the meeting.

We will get together at the preparation meeting to discuss how we can achieve the user group goals & see who's willing to participate as a member of the administrating team (which will cost them little bit of their time & will require their commitment), we need to plan this thing to be very independent, self-sustainable & self-grown, so we need to plan it right. That's where we can help each other with :)

Also bring your ideas and what do you think we can do to grow big (not fast)...

Let's invite as many people as we can, we need tons of ideas, thoughts & spirits to get this thing running!
Spread the word

Meeting whereabouts:
Date: Saturday, November 17, 2007
Time: 12:00pm - 3:00pm
Location: DashSoft
Street: 243 Ramses St. 3rd Floor, Apt.6 (After Bank of Alex)
City/Town: Cairo, Egypt

You may join the Event page on facebook @

Group page on facebook is

& on Yahoo!Groups is

.. more.