Monday, December 24, 2007

VS 2008.. reasons to upgrade

I came through a document about the top ten reasons to upgrade to Visual Studio 2008, so I thought about sharing them here:

Top Ten Reasons to Upgrade
1. Work with data in a unified and integrated way.
2. Work with user interface designers.
3. Employ the latest web user interface techniques.
4. Build stunning applications for windows vista.
5. Build higher quality applications with integrated unit testing.
6. Enjoy great support for designing web applications.
7. Build applications that runs on multiple versions of the .net framework.
8. Build office-based applications
9. Use workflow & communication tools.
10.Benefit from performance & stability across the board

For more details, read here...

Friday, December 07, 2007

ANARC 2007

The Past days were the 10th Arab & North Africa Regional Contest (ANARC)..
My Team participated in it (Why Not!? Team).. Although we didn't get a good ranking (21th), yet it was a very good experience & that's why I'm writing about it here..

I'd like to mention the mistakes that I feel we did.. I'm writing them for anyone to learn from:
- Time ran so quick that we didn't notice the time except when there were only 2 hours left..
- We didn't read the problem statement of one problem very well which lead to getting WA for one test case..
- 75% of Regional contest problems are trivial adhoc problems & the other 20% are dynamic ones.. we focused on other algorithms before traveling, but that wasn't helpful in the contest.. we should have practiced testing silly adhoc problems maybe !!
- In some cases, Don't use strings, use character arrays instead..
I don't remember more now, but I'll update in case I did..

I won't talk about personal feelings here, but all I can say that I truly feel that if we participated next year, I think it will be different in shaa Allah..

Sunday, November 04, 2007

7 deadly sins of resume design..

I read that article & thought about sharing it

Tuesday, October 30, 2007


This is a website hosted by Microsoft that contains demos & videos.. It's a very good one, just thought about sharing it here..

Friday, October 19, 2007

On Channel 8 !!

Channel 8 is the place to be for Students who want to code, connect and create technology ( msh el kanah el tamna beta3etna :D )... Channel 8 is sth like Channel 9, but for students..

The interviews we (me & Marwan -AAST MSP-) made during the Expression Around the Clock event are now in the 'recent news' on Channel 8.. Check it out..
Expression Around the Clock, Cairo

Feedbacks are welcomed..

Wednesday, October 17, 2007

Programming Languages History

I remember, when I was @ ITWorx, I liked that huge portrait with the programming languages history.. & its nice to find it online after all..

Sunday, October 07, 2007

Mixed Assembly

C++ supports interoperability features that allow managed and unmanaged code to coexist and interoperate within the same assembly or in the same file. C++ assembly which has both native and managed code is called as mixed assembly. They contain machine instructions as well as MSIL instruction. An existing application consisting entirely of unmanaged functions can be brought to the .NET platform by re-compiling just one module with the /clr compiler switch. This module is then able to use .NET features, but remains compatible with the remainder of the application. In this way, an application can be converted to the .NET platform in a gradual, piece-by-piece fashion. It is even possible to decide between managed and unmanaged compilation on a function-by-function basis within the same file. Assemblies compiled with /clr can call managed and unmanaged functions at will, including CRT functions such as printf, and are free to use .NET Framework Platform Invoke features to call unmanaged functions inside DLLs.

C++ supports the use of ATL, MFC, SCL, and the CRT libraries as mixed assemblies compiled with /clr. These mixed libraries allow you to use all of their existing functions when your code contains a mixture of native code and MSIL code.

Performance Consideration while using Interoperability: Regardless of the interop technique used, special transition sequences, called "thunks", are required each time a managed function calls an unmanaged function, and vise-versa. These thunks are inserted automatically by the C++ compiler, but it's important to keep in mind that cumulatively, these transitions can be expensive in terms of performance.

For .NET languages such as Visual Basic and C#, the prescribed method for interoperating with native components is P/Invoke. Since P/Invoke is supported by the .NET Framework, C++ supports it as well, but C++ also provides its own interoperability support, which is referred to as C++ Interop. C++ Interop is preferred over P/Invoke because P/Invoke is not type-safe, so errors are primarily reported at run-time, but C++ Interop also has performance advantages over P/Invoke.

Both techniques require two things to happen whenever a managed function calls an unmanaged function:
  • The function call arguments are marshaled from CLR to native types
  • A managed-to-unmanaged thunk is executed
  • The unmanaged function is called (using the native versions of the arguments)
  • An Unmanaged-to-managed thunk is executed
  • The return type and any "out" or "in,out" arguments are marshaled from native to CLR types

Try it.. (In order to enable compilation for both native & managed, change the project properties (Project properties >> General >> Common Language Runtime Support >> Choose Common Language Runtime Support (/clr)))

For Extra info check the MSDN

Thursday, October 04, 2007


Yesterday, I attended the Expression around the clock event.. It was a nice day.. & from the very things I liked in those sessions was the Photosynth (A live lab project) , It was really so much amazing & innovative idea..

I just like to end with a sentence said by Blaise Aguera when we made an interview with him.. he said ::
"Knowledge of Math & Physics is unbeatable"

Saturday, September 29, 2007

Windows Live SDK

The Windows Live Platform puts a deeper level of control into developers' hands by offering access to the core services and data through open, easily accessible APIs. Now you can build applications and mashups that combine your innovation with the power of Windows Live services and social relationships..

Visit to know more about other services and developer offerings from Windows Live.

& check this for more information about Windows Live SDK

Sunday, September 23, 2007

Adobe Integrated Runtime (AIR)

Adobe® AIR™, formerly code-named Apollo, is a cross-operating system runtime that allows developers to use their existing web development skills to build and deploy rich Internet applications to the desktop.

Monday, September 17, 2007

Windows Live SkyDrive

Microsoft is offering you 500MB free space to upload & share your files, also including some other features like :: getting back to recently visited files, Thumbnail images, dragging & dropping ur files & embedding you stuff anywhere with html links..

In my opinion, It looks professional than any other files sharing website.. Try it..

Saturday, September 08, 2007

Read it

I wrote that post on my other blog & thought to put a link for it here

Wednesday, September 05, 2007

I am an MSP

I've just received a mail from a while from Mohammed Wahby (Reponsible for Academia programs at Microsoft) with an invitation to Microsoft Student Partners & now I am officially one of Microsoft Student partners (known as MSP)..

What is MSP?

The Microsoft Student Partner program consists of the brightest and most innovative student developers and technology enthusiasts from universities around the world.

As a Microsoft Student Partner you will get a set of global benefits:

  • Welcome Kit will include the following:
  • Certificate of Recognition
  • Microsoft Recruiting Opportunities
  • MSDN Premium Subscriptions
  • Access to Worldwide Microsoft Student Partners Website
  • Invitation to local Microsoft Events
  • Latest Products Training
    & more...
I really wish to make good use of this & help in spreading knowledge... I wish to make sth really different in my last year at FCIS.. Dreaming of Leaving Footprints in FCIS...

Tuesday, September 04, 2007

MS Internship.. The End

4th of September, The closing ceremony of Microsoft Internship 2007..
Started by the early morning in one of Microsoft rooms where all the teams started to get ready to show off their projects.. The ideas every team got was really so nice & innovative.. The EMS team had his T-Shirts & a big banner printed.. QAlert team made really innovative ideas (I liked that invitations & evaluation cards guyz) & finally our team with a small banner hanged form the ceiling & our T-shirts with our project name & our names written on it with ink (we have it now filled with looots of signatures)..

Anyway, By 3:00 pm.. The event started with all Microsoft employees, our instructors from different companies (ITWorx,, OMS.. ) & We -presenting our projects-.. & it ended up with Kareem Ramadan (General Manager of Microsoft Egypt) giving us our certificates..
It was really gr888 experience, gr888 team spirit (reminded me of INETA days) & a gr8 company..
This is a picture for all the teams members with Kareem Ramadan & our supervisors..

so, That was the end of Microsoft Internship 2007.. I'll miss those days & I'll miss the challenging & team spirits we all had..

I like to end up with some points..
1- If you are a 2nd year student going to your 3rd year, I really recommend trying to get a place in MS internship 2008 next year in shaa Allah.. (Contact me at that time if u need help)

2- What I liked most about that internship.. well, actually 'Technical experience' can be easily got when u start working or maybe a couple of days in any company can let u now how things go in real life, But that internship was really unique cause it gave me sth I really needed which is "Community".. I was able to meet many of the special IT-guyz in Egypt from big companies like ITWorx, & of course Microsoft.. (that's why I liked the fact that our instructors weren't from MS) & not only that, but it was enough for me that I knew those who were with me in the internship... Another thing I liked was that this was a perfect chance for anyone to improve his 'soft skills', presenting & talking in front of expert people is an wonderful chance that made a big difference to all of us (I think)..

3- What makes a company like Microsoft different is that they know "how" to make things.. so maybe that's sth to be learned from a big company like that.. Always follow a "win2win" strategy...

4- Thank Allah that I had that opportunity.. & Thanks to everyone who commented on my first post & encouraged me to go (u helped in making that difference) :)

So, That's the end of my long post & two-months Internship..
c u next post in shaa Allah..

Sunday, September 02, 2007

MS Internship.. (3)

We were back again to Microsoft to start our 2nd month (start working on our projects)..
That day we had a meeting with Mohammed Karam (from ITWorx) explaining to us how things will go..
Well, They wanted to make a simulation for us for a real working environment, so they were going to divide us into teams randomly , assign projects randomly & assign supervisors randomly too.. (In real life you don't choose those you're gonna work with ;) or the project u gonna work on )
Another thing that they mentioned & I really liked, they considered that its non-ethical for any companies to let its trainees work on real project for the company & get profit from that (Actually all companies in Egypt does so).. so, the projects we will be working on will not be sold in the market, they are just for us as a trainees..
Anyway, We were divided to teams & assigned different projects.. The projects ideas were really challenging.. Our projects supervisors were from ITWorx stuff too (btw that company is really a company to respect)..
We started working on our projects during all that month, it was really a gr8 experience, gr8 team & gr8 supervisors really..
Our Last day at Microsoft was 28th of August, the next day we went to ITWorx to make a presentation about our project in front of some of the ITWorx crew & Today 3/9 is our final presentation there too in shaa Allah..
Tomorrow -in shaa Allah- is the closing ceremony at Microsoft, we will be showing our projects & there will be lots of things that I will narrate in the next post in shaa Allah ;)

Saturday, September 01, 2007

MS Internship.. (2)

Well, I'll be continuing on the previous post..
After the assessment test (which I heard was done that way due to confusion between management internship & ours) but anyway we started to understand more how the internship will go..
MS believes that other internships are not done in the right way (actually they are absolutely right), as trainees come to the company & as usual the company either handles them any trivial work to do or they involve them in real projects & in both cases, the trainee has to depend on himself to learn & gain the experience..
So, According to the previous things.. MS internship was divided to 2 months.. The first month we will be attending sessions made specially for us & the second one will be a project we will be working on..
In the 1st month, They choose the topics of the sessions so that they cover the things that we all don't take in college & in the same time, are so much needed when u enter & work in the market.. The start of the sessions was very nice, it started with "Time management" course driven to us by Logic (one of the biggest management consulting companies in egypt - people who goes to zedny knows that ;) ).. It was really one of the most sessions that I liked (I'll leave talking about it in a separate post).. then we switched to different topics :: networking (infrastructure & core structure) , MSF , VSTS, Testing, Business intelligence, MOF... & more

Another thing, the sessions were "not" given to us by people from Microsoft, they were given to us by people from MS partners.. Logic, & OMS.. that's wt I remember now.. maybe anyone will think this is a bad thing, actually this is from the things I really liked in that internship (I'll tell u why later)

Anyway, The 1st month passed & It was nice, one did learn new things & esp I got to know the people I am taking the internship with more.. btw, we are about 20-23 persons from different universities.. 90% from us are going to their last year in college.. It was really so nice to know such people, its one of the best things that I gained from that internship..

To be continued in shaa Allah...

Saturday, July 28, 2007


Today was the ACM-ASCIS senior summer contest, our team got the 2nd place el 7amdolellah.. & It was a nice day..

Another thing that happened today was announcing the new steering committee for ACM-ASCIS.. & I was chosen as the Vice President.. mmm.. I feel responsibility, great responsibility.. Hope I deserve it & be as good as the former committee, they deserve all the respect really..
Hope to make a difference & help in spreading knowledge...

Tuesday, July 03, 2007


Watch out for the new technology coming from MS (still in beta)..
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 that supports AJAX, VB, C#, Python, and Ruby, 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..

Check it out

Thursday, June 28, 2007

MS Internship.. (1)

Edited on 17th July::
Well, I was mistaken about the internship, It turned to be a technical one.. not pure technical, but that is wt makes it interesting.. MS working environment is more than gr8 & I'm enjoying wt I do esp the new people I got to know there..
That's all..

Well, during exams I was told by a friend of mine that MS egypt is finally making its first internship to accept trainees, I applied & was expecting an assessment test by 14/6.. later on it was postponed to 24/6 & I was told that the test is from 9:00 am to 5:00 pm (total of 8 hrs!!!)..

Anyway, on 24/6 I went to MS in smart village & when I entered there were another 14 from AUC & AAST.. & then we were told to enter a room for the test... & here was the shock, They told us that the test is not related to programming, it will be a self-evaluation test!! ... at first we didn't get why.. then they told us that the internship is a non-technical one.. some of us discussed that with the person responsible for this & finally she told him sth like "in case u are accepted, you can go through another coding test to see if u can join the development team or not but still I'm not sure about this"... anyway, we started the assessment test, The assessment test was a practical one & according to ur actions in each activity, u r evaluated... They wanted to see how good u r in presentation skills, self-confidence, team work.. etc..
Well, It was really so FUN (I admit) .. but this is not why I went to MS Egypt !!

Anyway, Today I received a mail that I was selected from those who are granted the internship.. & I am still really so confused.. To go or not to go !??
I'm sure it will be a gr8 personal experience, but it has nth to do with our profession..

I dunno really.. Should I go or not !?

Friday, June 08, 2007

Evaluate yourself...

As vacation is coming nearer & Searching for a company to train/work in is getting closer.. which means that also interviews & assessment tests are approaching, sooo I think one must start getting ready for that..
I liked Microsoft Assessment Tests & thought about sharing this here.. Its a good way to evaluate yourself..

Hope everyone finds a suitable & good training/job... Allah be with us..

Thursday, May 24, 2007

DirectX 9.0 Game

Well, pretty nice fish :)
This is a screen shot from my graphics project.. Its a 3D game, I called it "Fishy".. Fishy is a blue hungry fish that swims in an ocean & you should try to fill fishy's stomach to 100% by eating smaller fishes.. & don't forget to watch out for the sharks ;) else fishy may die :(
Well, The exe is on the way.. I am just adjusting somethings & will put it here soon isAllah (maybe after exams to have all things done be ezn Allah)..

Fishy-by Roaa Mohammed: Copyright reserved

Monday, May 07, 2007

& the Projects start...

Last post was long ago.. anyway, here I am again..
well.. we started working on our college projects during these days.. yesterday was our analysis project delivery.. I won't talk a lot about it.. but there's sth I learnt from that project which is.. that I can NEVER be a system analysist... not because I'm bad in it (el 7amdolelelah we did a good job in our proj) but beacuse this job doesn't fit me at all.. I really can't imagine working one day as a system analysist.. :S

Anyway.. about other projects.. we are still working on the archi ,graphics package & those boring database systems.. & like last term, I am opening suggestions for our graphics project cause till now we didn't decide anything to do.. Its should be done using Directx 9.0... If anyone has any ideas, comments are very welcomed.. :)
Waiting for any ideas.. (Note: The idea must be applicable to be done in less than 2 weeks!!!)

c u next posts..

Sunday, April 08, 2007

Sunday, March 25, 2007

Portable Software..

It has been so long since I wrote a post here...
well, As usual the title is clear wt this post is about.. "Portable Software"... How many times you were about to use a PC to show someone sth on ur USB & then you find things like "ops, the software is not installed".. so I really like that solution so much.. "Portability"..

Maybe its not sth very new to technology, but I just knew about it recently.. With portable software, you can take your programs with you on ur USB drive, mp3, ipod.. etc & so u can never worry about whether the software that you are using is installed on any PC or not.. all that without leaving any personal data behind...

Not only application programs.. OS too can be portable.. I once used "Windows XP Live CD".. Just insert the CD & have windows running on your machine enabling you of accessing ur drivers as if u have windows installed.. it was pretty interesting..

Check out these ones (Most of them are OpenSource ;) )
Firefox Portable (I really like having my favorites anywhere with me)
OpenOffice Portable
Anti-Virus Portable (To protect ur storage from our nice FCIS virus)
PDF Viewer Portable
7-Zip File Archiver Portable

Wednesday, February 07, 2007

Yahoo !!!!

Yesterday, while I was checking my yahoo mail.. the number of unread mails made me surprised !!
I'm sure you are now thinking about (1000 unread) ones or sth.. but here's wt I found in the title of my page : "(-9 unread)" !!!!!!!!

Its one of the funniest bugs I ever saw :D :D .. so I just thought of sharing this here.. the only excuse is that Yahoo mail is still in Beta.. Anyway, here's the screen shot..

Thursday, January 04, 2007

C# Problem..

I know the title looks strange.. but this issue is provoking me to a very high extent...
I'll tell u why I wrote so...well, When we were testing our Algo project b4 delivering it, we noticed a strange behavior in the performance of our code..
Let me explain wt we were doing first... well, we wanted to calculate the approximate time taken to run the algorithm.. so we made an object from Stopwatch class.. our code looked sth like those lines:

Stopwatch s = new StopWatch();

Then later on we display the elapsed time.... Where's the problem then??.. well I will tell u.. the first time we try calling this function, the elapsed time is ms.. while when we try the same input once again (while the exe is still running).. the elapsed time is 0.xxxx.. a gr8 difference !!!!
well.. we noticed sth in our function like creating an object from a class we created.. ex:
Class c = new Class(Var1,Var2); //inside function's body

we thought that this was the reason (sth related with memory allocation , variables initialization.. etc..) we tried initializing everything globally, but still the same thing happened.. we thought about many things (We with the help of Dr Karim), but all in vain..

So, I still don't know why that happens.. mm.. Maybe C# is googling for the place of the function in the memory when we call it for the first time ,so it takes more time !!???

Anyway, please, If anyone has any idea about why this may happen.. Comments are very welcomed..

Tuesday, January 02, 2007

You are a Programmer IF (Cont)...

This is a completion to a previous post You are a Programmer IF

16- You have a volatile Memory like RAM..
17- You write C++,C# or Java better than u write your own language..
18- You don't think wearing sports shoes with a suit is strange..
19- You remember all your passwords, but fail to remember you own birth date..
20- The world 'Engine' reminds you of games more than of cars..
21- Anytime you see a penguin, you think of Linux..
22- You have a LAN in your room..
23- You're the highest-paid yet the worst-dressed person in the office..
24- You follow the instructions only if everything else fails..
25- You use F1 instead of SOS..

(Most if them are Copied.. Copy right reserved)