More servicesWindows Live
HomeHotmailSpacesOneCare
 
MSN
Sign in
 
 
Spaces home  Omar Besiso's InfoCavePhotosProfileFriendsMore Tools Explore the Spaces community

Omar Besiso

View spaceSend a message
Occupation:
Age:
Location:
Interests:
Aiming to spend my life getting paid for what I enjoy and do best. That way I never have to get a job.
Updated 10/17/2006
Updated 2/11/2007
Updated 8/27/2006
View space
leonie
View space
pandora
View space
Shaq
View space
Damian Edwards
View space
Jason & Helen
View space
Muhammed Khedr
View space
Mosessaur
View space
Glav

Omar Besiso's InfoCave

Programming The Future
October 19

Unkown Blogger

 
I seriously wonder when someone would comment on a blog of mine leaving such encouraging and flattering words and then decide to sign it as Unknown Blogger, how would I know where the flowers need to be sent!!!!!!

WOW & Online Gaming

 
I've ran into many people in my life that have weird addictions including my brother in law who used to be a WOW (World of Warcraft) addict and let's face it I used to be an addict of the original wordcraft too. The following blog really put an edge on online gaming and addiction and I encourage anyone who had this sort of addiction before to give it a read.
 
 
October 15

New Readify Site Goes Live

 
After a lot of hard work by fellow readifarians we're live.
 

Developers & Families

 
One of the things that bother me in my life at the moment is I get many complaints from people close to me that they don't get to see me so much. My excuses always include 'too much work', 'there are not eough hours in the day' and 'new stuff get released everyday and I have to keep up'.
 
Today for example I had a birthday party to go to but I also have to go shopping tomorrow for my new apartment with my fiancee. I found myself having to make the choice of going with her to the Birthday party or shopping because I had to code some more. This is Saturday night we're talking about and I still would prefer to sit home and code (sometimes not even for work). I should consider myself just lucky that she's understanding to what many women wouldn't bare. Question is: "Is there a problem or is this just how developers should be?".
 
For me I am tending to say it's a problem because coding is not only my work anymore, but in fact it's my work, my extra curricular activity and what I do in my free time. It's just like any other addiction, Coke, junk food or even video games. What makes it worse (or better) is that I get better with every line of code and I dig in to it some more.
 
2 People came to my mind when I think of this problem.
 
Darren Neimke blogged a while ago about being in the airport one day on his way for business and contemplating how much time he spent with his family and he decided to leave the airport and go back home to spend time with his family.
 
Shaun, one of my commrades when I was at CBA, after a couple of beers one day he was telling me how hard it is to keep up with people like me when it comes to new technologies or how much time I spend in my virtual world. Funnily this is exactly how I feel about come fellow Readifarians like Paul Stovell. Shaun was saying is while we're getting older we lose the energy to do what we do best " research and code".
 
With Darren & Shaun & Paul in mind I think as we grow older we don't really lose energy or enthusiasem. We just tend to have more responsibilities and time management becomes a very critical issue in our life other than any other 9-5 employees. It's very obvious that what I can do now I will not be able to do later because there's a time in our lives as developers where we have to realise the other people that are affected by our habits.
 
The truth will always be we will never be 9-5 developers. We will always have that extra edge provided we still have the passion for what we do. So the dream to be at this stage is to be the developer I always wanted to be and the family man my family needs me to be.
 
I can only say at this stage: Linda, thank you for being this understanding and pushing me to be the man I want to be.
 
Happy Living!!
October 14

InfoCave first result on Google

 
I always wondered how long it would take to get one of my sites to be on one of the first ten results on Google when searching for my name without paying for any of their facilties or adding advertisements. Suddenly I have InfoCave as the first result on Google when I try to search for 'Omar Besiso'. So it took about 2-3 months of Blogging (not very often). One day I will have the time to research how their indexing system works. I am just happy that with all the Omar Besisos around the world (not many) I come first  .

New tools change how we work

 
I haven't had time to blog for a while but today it's worth it. I started working with TFS on a real project for the first time last week. Today I had a mentoring call from fellow Readifarian Darren Neimke and after all that he showed me It just fascinates me on how much things have changed in the past few years.
 
I used to be a contractor working on my own for three years. Everytime I got a new project I sat down and nudded out the database schema. The same thing followed everytime, create a data project, a business project, a UI project and possibly a common project. Then I would storm away with my code genrator genrating stored procs (which were always modified later on), generate my business objects and then spend time doing my UI and business logic.
 
So how did things change?
 
1- TFS
 
Now with all the new technologies I start off by creating New Scenarios (Use case like) in TFS. Then developent tasks are created under each scenario to acheive the functionality required. At this point Reports can be genrated listing & charting all my scenraios & tasks noting that I can also add project management tasks & risks to my work items. So in about 3 hours I have a time management & progress tracking system. It's like architecture and development reports I used to write at uni just a million times cooler.
 
 
2- DataSets Or Objects
 
Considering I am working on a mainly CRUD type application the next step was to decide on DataSets or objects. When working with .NET 1.1 Datasets I didn't even consider this question but now after the enhancements done in .NET 2.0 I just couldn't resist gaining some experience working with the DataSets in a real project. Coming from a very strict OO background you can imagine how ucomfortable I was. After just one week I don't have one regret.
 
3- BLINQ
 
A while ago I thought about writing a code genrator that generates stub UI forms. With this Project I was advised by Darren to give BLINQ a shot. About 3 minutes later I had stub aspx pages for every entity I had in the database. Makes me go to sleep at night dreaming of when LINQ is released.
 
4- Themes & skins
 
When working with BlueChip a while ago we had a very smart guy (Jason) who was a CSS, Javascript and html expert and without him the UI would have got no where. I have to admit that untill now I think I have edited a css file twice in my entire life (not because I am lazy just because this is how things worked out). Also let's face it, I'm mainly a winforms guy. Now after 10 minutes of research on how skin files and themes I think I can give Jason a hard time competing with his traditional CSS formatting which doesn't support different themes.
 
I can go on and on forever. Developers I know keep saying tools are making developers' lives easier. I fully agree with that but developers tend to forget that the more these tools & technologies are available the more knowledge update we need and the more work / hour is expected from us. In 2020 I think one developer will be expected to produce what 15 developers used to produce in 1995.
 
The main thing is by then for us developers to have the same hunger for knowledge and energy to still produce creativity & quality code exceding the expectations of what can be done normally by these tools & technologies.
 
Happy Research!!
 
September 02

.NET 3 (WinFX) RC1 & Latest DEV Downloads

Microsoft Pre-Release Software Microsoft .NET Framework 3.0 - Release Candidate

http://www.microsoft.com/downloads/details.aspx?FamilyId=19E21845-F5E3-4387-95FF-66788825C1AF&displaylang=en

Microsoft® Windows® Software Development Kit (SDK) for RC 1 of Windows Vista and .NET Framework 3.0 Runtime Components

http://www.microsoft.com/downloads/details.aspx?FamilyId=117ECFD3-98AD-4D67-87D2-E95A8407FA86&displaylang=en

Windows PowerShell RC1 (for .NET Framework 2.0 RTM) x86

http://www.microsoft.com/downloads/details.aspx?FamilyId=2B0BBFCD-0797-4083-A817-5E6A054A85C9&displaylang=en


Microsoft Visual Studio Code Name “Orcas” Community Technology Preview – Development Tools for .NET Framework 3.0 (RC1)

http://www.microsoft.com/downloads/details.aspx?FamilyID=935aabf9-d1d0-4fc9-b443-877d8ea6eab8&DisplayLang=en

Microsoft® Visual Studio® 2005 Extensions for Windows® Workflow Foundation Release Candidate 5

http://www.microsoft.com/downloads/details.aspx?familyid=e8232f93-48f0-4e74-b09d-b51f1d4231a4&displaylang=en

Windows SDK .NET Framework (WinFX) 3.0 Samples RC1

http://www.microsoft.com/downloads/details.aspx?familyid=ea97a39d-6812-4904-8226-85f3da99996b&displaylang=en

Microsoft Visual Studio Code Name “Orcas” Language-Integrated Query, May 2006 Community Technology Preview

http://www.microsoft.com/downloads/details.aspx?familyid=1e902c21-340c-4d13-9f04-70eb5e3dceea&displaylang=en

Microsoft Expression Graphic Designer September 2006 CTP

http://www.microsoft.com/downloads/details.aspx?FamilyId=7CE19E3D-2467-4F3E-B19A-A9DB30CCD4F1&displaylang=en

Microsoft Expression Interactive Designer September 2006 CTP

http://www.microsoft.com/downloads/details.aspx?FamilyId=EBF7A3F3-4B55-4C2C-A43A-B977446A131A&displaylang=en


Happy Installing!

August 31

Application Domains

 
Many developers would hardly deal with AppDomains since they're usually unknown to a lot of them.
 
Application domains provide logical containers for assemblies to be executed within a process and also act as a barrier between a group of assemblies' memory and others'. AppDomains are more efficient than processes since multiple group of assemblies can be hosted in separate AppDomains without the overhead of spawning extra processes.
 
So what's a good example of Application Domains?
 
The most obvious one is IIS and the Asp.NET worker process (Aspnet_wp.exe). Every time a user connects to IIS the aspnet_wp.exe doesn't spawn another process but instead it creates a new AppDomain for each new user.
 
Now digging into code, So how can we create an application domain and manage it?
 
                1. Create a new AppDomain.
 
                           AppDomain myAppDomain = AppDomain.CreateDomain("MyDomain");
 
                2. Load an assembly into the new AppDomain. (Now there 2 ways to do this)
 
                             a. Load the assembly using the full path and filename
 
                                      myAppDomain.ExecuteAssembly(@"C:\MyAssembly.exe");
  
                              b. Load an assembly that is referenced to your current project.
  
                                    myAppDomain.ExecuteAssemblyByName("MyAssembly");
   
                   3. Unload the assembly from the AppDomain.
 
                            AppDomain.Unload(myAppDomain);
 
Now these are the basic of loading the assemblies. To put it all into action, the following example shows how to create security privileges around AppDomains.
I will create an AppDomain and give it the privileges  of the internet zone. Then I will try to load my "win.ini" file into the AppDomain which shouldn't really be allowed since the AppDomain shouldn't have privileges to access my system files.

So digging into code a bit more:
 // Create an Evidence object for the Internet zone          
 object[] internetEvidence = { new Zone(SecurityZone.Internet) };
 Evidence e = new Evidence(internetEvidence, null);
 
 // Create an AppDomain.
 AppDomain myAppDomain = AppDomain.CreateDomain("New Domain", e);
 
 // Run the assembly
 myAppDomain.ExecuteAssembly("win.ini");
When we run this the following exception is raised
 
Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
 
The AppDomain in this case provided protection against any security vulnerability that could have been caused by loading my win.ini assembly.
 
Happy Coding!!!
 
View more entries