This blog is subject the DISCLAIMER below.

Thursday, June 28, 2007

Silverlight for Linux [Moonlight Project]

Posted by: Jack Vaughan on June 25, 2007 DIGG
Miguel de Icaza and his Mono project cohorts have quickly produced an implementation of Silverlight for Linux. The effort is called Moonlight.

Silverlight is an extended subset of the 2.0 .NET framework that can support rich media on multiple browsers and platforms.

Various developers worked intensely to create the first version of Moonlight, which de Icaza demonstrated at a European Microsoft MIX event last week.

de Icaza blog on Moonlight


Moonlight Project page

.. more.

Tuesday, June 19, 2007

Microsoft Code Name "Acropolis"

Brief Description
Microsoft Code Name “Acropolis” is a set of components and tools intended to make it easier for developers to build and manage modular, business focused, client applications for Microsoft Windows on the .NET Framework

Overview
“Acropolis” builds on the rich capabilities of Microsoft Windows and the .NET Framework, including Windows Presentation Foundation (WPF), by providing tools and pre-built components that help developers quickly assemble applications from loosely-coupled parts and services.

Download http://www.microsoft.com/downloads/details.aspx?familyid=72386ce5-f206-4d5c-ab09-413b5f31f935&displaylang=en&tm#AffinityDownloads

.. more.

Friday, June 15, 2007

Photosynth




Photosynth is a collaboration between Microsoft and the University of Washington based on the groundbreaking research of Noah Snavely (UW), Steve Seitz (UW), and Richard Szeliski (Microsoft Research).


The Photosynth Technology is a taste of the newest and most exciting way to view photos on a computer, yet ,uptil now, a bit slow even for DSL users. The software takes a large collection of photos of a place or an object, analyzes them for similarities, and then displays the photos in a reconstructed three-dimensional space, showing you how each one relates to the next.

You can access gigabytes of photos in seconds, view a scene from nearly any angle, find similar photos with a single click, and zoom in to make the smallest detail as big as your monitor.

On the project presentation on TED talks*, You can see how Photosynth really collaborates the images contributed by of thousands of people enriching the value of each with the value added by networking all these images together...

Here's the main site for Photosynth by Ms Live Labs
Where you can have a try also have a blog & other nice stuff to check...& Guess what It even works on firefox quite well, actuall on my PC I it didn't even work on IE6 just on Firefox. You may be asked to download and install a couple of things

*Also here's a presentation for the project on TED talks
You can watch it in browser or download it in MP4 format...


ENJOY!!!

.. more.

Thursday, June 14, 2007

Wireless Security

Wireless technologies have been growing fast in the last decade, which has introduced a wide range of attacking threats. Corporates or individuals that use wireless technologies should be aware of the consequences of using unsecured wireless devices.

To introduce the possible well-known threats, the Evil Twin threat is the perfect start.

The Evil Twin is one of the most popular threats to Wi-Fi users (also known as WiPhishing). It's an access point that replicates another network name, pretending to be that specific network. Some users find unsecured networks connections and think that it’s just another lucky day; actually its not!! Evil Twin typically awaits users that sign into that false access to do the desired attack on the user. Applications, which automatically detects the change of security settings prevents such attacks, are published and easy to use. Or simply stay away from unsecured wireless networks.


The Promiscuous Client (sniffer) is very similar to the Evil Twin. The thing is that it is not based on fooling a user that finds a free unsecured network, it forces him to connect to it. The Promiscuous Client is simply a user roving around armed with a Wi-Fi enabled laptop, a strong Wi-Fi sensor and directional antenna creating a wireless access point, Offering an irresistibly strong signal. 802.11 wireless cards often look for a stronger signal to connect to, so Promiscuous Clients simply transmit their wireless traffic through their fake access point, making their data transmissions accessible to others and their networks vulnerable to potential attacks. It is suggested to use a wireless "sniffer" that can help in monitoring and testing the network airspace.

Bluejacking and Bluesnarfing is all about attacking the Bluetooth wireless technological devices. It’s extremely dangerous to leave the Bluetooth device connection open, where Bluejacking, for instance, allows unauthorized users to send unsolicited messages to the Bluetooth-enabled phone. Bluejacking doesn’t really cause any harm, howerever, it can cause the client to panic or even think that the device is malfunctioning. Bluesnarfing is another Bluetooth threat, but in a harmful way, not like the Bluejacking. Bluesnarfing can steal data from the device. Bluesnarfing can only be controlled by stopping any incoming requests through pairing devices, allowing the trusted devices only to get access to the data. The problem with those attacks is that they are untraceable, so the user is the only one that can protect him from them.

Wireless network viruses (mobile viruses) are electronic viruses that targets wireless-enabled devices. It has become very difficult to secure the devices against attacks in the form of viruses or other malicious software (malwares). Wireless viruses are different than normal viruses, they can detect inner wireless networks, spread among them, attack and harm. To avoid this, install suitable antivirus and keep it up to date constantly.

Defending the threats:
1- WPA or WEP for access control and privacy. WPA and WEP are technologies that encrypt traffic on the network, where all the systems using that network need a key (password) to access it.

2- End to end encryption where encrypting at the network level only isn’t enough, so end to end encryption (typically SSL) is needed for privacy. The thing is that the entire conversation between the client and server is secured, not just the connection.


For further readings:
http://techdir.rutgers.edu/wireless.html http://www.microsoft.com/smallbusiness/resources/technology/broadband_mobility/6_wireless_threats_to_your_business.mspx http://www.wikipedia.com/

.. more.

Thursday, May 31, 2007

Microsoft Surface


Microsoft Surface is a forthcoming product from Microsoft which is developed as a software and hardware combination technology that allows a user, or multiple users, to manipulate digital content by the use of natural motions, hand gestures, or physical objects. It was announced on May 30, 2007 and is expected to be released by commercial partners in November 2007. Initial customers will be in the hospitality businesses, such as restaurants, hotels, retail, and public entertainment venues.

Visit: http://www.microsoft.com/surface

.. more.

Sunday, May 27, 2007

Microsoft Codename "Astoria"

What to know about Astoria
The goal of Microsoft Codename Astoria is to enable applications to expose data as a data service that can be consumed by web clients within corporate networks and across the internet. The data service is reachable over regular HTTP requests, and standard HTTP verbs such as GET, POST, PUT and DELETE are used to perform operations against the service. The payload format for the data exchanged with the service can be controlled by the client and all options are simple, open formats such as plan XML and JSON. The use of web-friendly technologies make it ideal as a data back-end for AJAX-style applications, Rich Interactive Applications and other applications that need to operate against data that is across the web.

To know more
http://blog.programmableweb.com/2007/05/01/microsoft-astoria-for-web-data-services/

To download the CTP: http://www.microsoft.com/downloads/details.aspx?FamilyId=1B6F85BC-8933-4D0E-A639-934EF85ADCE1&displaylang=en

.. more.

Friday, May 25, 2007

Eclipse


Eclipse is a wonderful Java development tool, that i recommend all of students to use to develop their own code.

Eclipse is open source environment that give a great power over any other Java development tools in market.

Eclipse has a wide variety of plug ins starting from UML editors till visual editors.
http://www.eclipse.org/

.. more.

Monday, May 21, 2007

Microsoft Popfly



in the name of ALLAH

Popfly is the fun, easy way to build and share

mashups, gadgets, Web pages, and applications. Popfly consists of two parts:

1 : - Popfly Creator is a set of online visual tools for building Web pages and mashups.

2 : - Popfly Space is an online community of creators where you can host, share, rate, comment and even remix creations from other Popfly users.



To know more about MS Popfly visit Popfly homepage or the FAQ Press here
to Download MS Popfly Click here to download.

.. more.

Thursday, April 26, 2007

Windows Server® Code Name "Longhorn" Beta 3

Windows Server® Code Name "Longhorn" Beta 3 are now available for downloading

"Windows Server "Longhorn" Beta 3 provides developers with the most secure, flexible and connected web and applications platform, reducing the time to craft high-performing, standards-compliant applications and make network services available remotely"

Download now : http://msdn2.microsoft.com/en-us/evalcenter/bb383571.aspx

.. more.

Friday, April 20, 2007

MS SilverLight

in the name of ALLAH

few Days ago , MS announced the release of MS SilverLight. So
what is MS SilverLight ?
Microsoft Silverlight is a cross-browser, cross-platform plug-in for delivering the next generation of media experiences and rich interactive applications (RIAs) for the Web.

Is Silverlight free?
What is the long-term vision for Silverlight?
Can I deploy Silverlight-based applications with the CTP?

to know the answers of this questions and to know more about it Press Here
or Here to The Official site

.. more.

Saturday, March 31, 2007

MDC 07 's Videos

MDC 07 's Videos are available right now on Barmagy

.. more.

Wednesday, March 21, 2007

Microsoft Robotics Studio Learning Materials

Microsoft Robotics Studio Learning Materials

http://msdn.microsoft.com/robotics/learn/On_Demand/default.aspx


On-Demand Video Tutorials


Architecture Overview
This session will go into depth on the underlying Microsoft Robotics Studio services-oriented runtime. Learn how the concurrency library makes asynchronous application development simple, and how the services and message-based architecture make it easy to access the state of a robot’s sensors and actuators with a Web browser.
Presenters: George Chrysanthakopoulos, Henrik Frystyk Nielsen

Launch Video

Visual Programming Language (VPL) 1
Learn about the Microsoft Visual Programming Language, an application development environment designed on a graphical dataflow-based programming model rather than control flow typically found in conventional programming. Using specific examples, you will learn how VPL can be useful for novices with no programming experience, as well as for professional-level robotics application prototyping.
Presenter: Andreas Ulbrich

Launch Video

Visual Programming Language (VPL) 2
This session builds on VPL1 and features a more advanced example. It demonstrates how to write a simple autonomous behavior for a robot, illustrates how to factor the behavior into multiple VPL activities, and shows how to work with data collection from robots. This session also outlines how to run the same VPL program in simulation and on a real robot.
Presenter: Andreas Ulbrich

Launch Video

Microsoft Robotics Studio- Simulation
Learn about the Microsoft Robotics Studio Simulation environment, a 3-D tool that simulates robotics applications in physics-based virtual environments, using the licensed PhysX™ engine from AGEIA™ Technologies Inc. This session will provide an introduction to the simulation runtime, show how to compose entities with simulation services and create a simulation environment. It will also show how to simulate joints and articulated arms.
Presenter: Kyle Johns

Launch Video

Microsoft Robotics Studio- Robotics Tutorials
This session, based on the robotics tutorials included with Microsoft Robotics Studio, will show how to create a service and coordinate between services. It will also provide an overview of manifests, contracts used to specify robotics hardware.
Presenter: David Lee

Launch Video

Microsoft Robotics Studio- Services Tutorials
This session, based on the services tutorials included with Microsoft Robotic Studio, will provide an overview of how to create a service, update the state of a service and persist the state of a service.
Presenter: Paul Roberts

Launch Video

Microsoft Robotics Studio- Controlling Simulated Robots Using VB.NET
This session will provide an overview on working with Microsoft Robotics Studio using Visual Basic .NET. Learn how to create a windows forms project and a user interface to drive a robot. It will also show how to start the simulation environment and connect the UI to perform the correct actions.
Presenter: Pavel Khijniak

Launch Video

Microsoft Robotics Studio- Controlling Simulated Robots Using Iron Python
This session will provide an overview on working with Microsoft Robotics Studio using Iron Python. Learn how to create a windows forms project and a user interface to drive a robot. It will also show how to start the simulation environment and connect the UI to perform the correct actions.
Presenter: Pavel Khijniak

Launch Video


(Hint: This articles copied from Microsoft Student-Partners website.)

.. more.

Saturday, March 17, 2007

Solaris OS, Solaris Express and OpenSolaris

In this post, I want to discuss the main differences between Solaris OS, Solaris Express and OpenSolaris... coz I guess many of you are confusing and thinking that they are the same, and this is wrong.

(Solaris is a computer operating system developed by Sun Microsystems.)

Solaris OS: is Sun's operating system product, and future versions of Solaris will be based on technology from the OpenSolaris project. Solaris is available as a free binary download.


OpenSolaris: is an open source project created by Sun Microsystems to build a developer community around the Solaris Operating System technology. The project's goals are innovation, collaboration and the extension of OpenSolaris technology. It aimed at developers, system administrators, and users who want to develop and improve operating systems. OpenSolaris is available for download.

Solaris Express: is Sun's official release of the OpenSolaris bits as well as additional technology that has not been released into the OpenSolaris source base. It consists of Solaris combined with a range of software (both current and future) to help you evaluate and Sun software as quickly as possible. It is primarily intended for Solaris customers to try out the very latest technology that will eventually be productized by Sun. Solaris Express is updated monthly and is available as a free binary download.

Therefore, Solaris is a product supported by a company; OpenSolaris is a development project run by a community of developers.

Check this site.

.. more.

Wednesday, March 14, 2007

Using Google Spreadsheets APIs in C#

in the name of ALLAH

Good news for C# developers using Google gData API platform
C# library download have been updated to include C# client libraries
for using the new Google Spreadsheets API .

Good Luck.

.. more.

Saturday, March 10, 2007

Linux Tip #4 : Virtual CD

Indeed sometime you have faced the situation that you have an ISO image and you want to use it as an actual CD but without burning it to a real CD. In windows you need to get some software to do that for you that usually create a virtual device etc.

In Linux you can do with a single line, mounting it to a folder.

Here's the command:
sudo mount -o loop -t iso9660 CD_IMAGE.ISO /path/to/folder

You give it the ISO file name and the path to the folder where you want to access it and it's all done for you! No device naming (A: G: I:...) required, no max number of virtual CD-ROM devices, none. Just that simple.

Enjoy.

http://www.linuxhelp.net/linux_downloads/

.. more.

Sunday, March 04, 2007

Linux Demo Week @ FCIH by SU

Students United is proud to announce the launch of Linux Demo Week. Hope that you all come and see Linux live in action


SU_Linux

.. more.

JavaSpaces-The Big Picture

JavaSpaces
The big picture


introduction
JavaSpaces is a technology that is mainly directed for parallel processing environments, although it is not a heavy used technology, it is very effective in terms of usage and performance.
you can think of JavaSpaces as a client/server map that contains data waiting for processing; these data have a set of defined rules that controls how these data can be accessed.

JavaSpaces has many usage scenarios, for example; a job producer program, that simply produce task list that needs to be handled by different processors in a parallel enviroment, JavaSpaces allows a high-powered CPU to grab a complex task and another Low-powered CPU to execute less complex tasks.

Getting into action
JavaSpaces is built on JINI, so the first approach to try JavaSpaces is to download JINI starter kit which contains sun's implementation of JavaSpaces called OuTrigger. Another better implementation of JavaSpaces is Blitz, which is much more effective and easy to use than Outrigger, however, blitz is an addition to JINI, that means it is downloaded separately.

Query by example (QBE)
JavaSpaces uses a simple but a smart way for data retrieval called Query By Example ( QBE ). QBE is another language for querying to create and modify relational data, it is different from other query languages in having a GUI that enables users to create example tables on screen.
we will not go much deeper in explaining QBE, but lets say it is a simple way of data access that adds a lot to JavaSpaces. for more information about QBE click here.

Using JavaSpaces
To use JavaSpaces you need first to have an instance of a JavaSpaces implementation to be running to provide a working JavaSpaces workspace to deal with.Once the JavaSpaces implementation is running it is very easy to add entries to it.

Entries in a JavaSpace are basically simple Java Objects that follow a few simple rules:
  • All data persisted in the space must be exposed in public fields.
  • The Entry interface must be implemented. This is a marker interface, requiring no methods to conform to the interface contract.
  • Objects must be used for the properties (i.e., no primitive fields.).
An entry can contain data and/or functionality, and can implement any interface or class that conforms to the requirements for JavaSpaces. Thus, a fairly common pattern is:
  • Implement a Command interface in an Entry, along with any data required to perform the command
  • Store the Command into the JavaSpace
  • Have a computing resource retrieve the Command and execute it, storing any results back into the JavaSpace for consumption if necessary
Connecting to a JavaSpace is very simple, either by using the simple Lookup class to search for JavaSpace05.class which will return a reference to the first JavaSpace it finds or by using methods provided by the JavaSpaces implementation it self (if it is available).

There are five basic operations associated with JavaSpaces. They are:
  1. Read an entry matching a template, leaving it in the JavaSpace
  2. Take an entry matching a template from the space, removing it from the JavaSpace
  3. Write an entry into the JavaSpace
  4. Register a callback for events in the JavaSpace
  5. Issue an event in the JavaSpace
Templates in JavaSpaces are instances of classes implementing the Entry interface (i.e., they're entries) that use “null” as a wildcard. Thus, if an Entry implementation has string properties A, B, and C, a template might populate A with “data” while leaving B and C null; a take operation would retrieve the first entry of that class that had “data” in the “A” property. (The list form of take() would return all entries that had “data” in the “A” property.)

References
TheServerSide
WikiPedia - the free encyclopedia

Links
You can Download Blitz here.

.. more.

Saturday, March 03, 2007

Turn off your monitor via code (C#)

In the name off Allah ,

How to turn off your monitor via code?
This is an important question at least to me , because I use my computer for long time daily and frequently turn on and off the screen as a way to save energy and power .
I hate to make that by using the monitor button(off/on) , because I hear sound from the monitor feel me that the screen may damage .
So I will inform you here , How to turn off your monitor via code ( C# ) ?

I will code that depending in API called SendMessage function it’s useful to handle monitor states - the display is going to low power, the display is being shut off and the display is turned on .

Syntax :
LRESULT SendMessage( HWND hWnd, UINT Msg,WPARAM wParam, LPARAM lParam );


Parameters:

  • # HWnd (first paramter)
    Handle to the window whose window procedure will receive the message. If you don't want to bother creating a window to send the message to, you can send the message to all top level windows (HWND_BROADCAST) or you can use GetDesktopWindow function sending the message to the desktop window.
  • # Msg (second paramter)
    Specifies the message to be sent (WM_SYSCOMMAND).
  • # wParam(Third paramter)
    Specifies additional message-specific information (SC_MONITORPOWER).
  • # LParam (last paramter)
    * 1 - the display is going to low power.
    * 2 - the display is being shut off.
    * –1 - the display is being turned on (undocumented value).

Start the coding now :

First of all you should use
using System.Runtime.InteropServices; //to DllImport

public int WM_SYSCOMMAND = 0x0112;
public int SC_MONITORPOWER = 0xF170; //Using the system pre-defined MSDN constants that can be used by the SendMessage() function .


[DllImport("user32.dll")]
private static extern int SendMessage(int hWnd, int hMsg, int wParam, int lParam);
//To call a DLL function from C#, you must provide this declaration .


private void button1_Click(object sender, System.EventArgs e)
{

SendMessage( this.Handle.ToInt32() , WM_SYSCOMMAND , SC_MONITORPOWER ,2 );//DLL function
}
attached at this link the source code .
http://www.4shared.com/file/11593987/2d23f157/Turn_Your_Monitor_BY_Essawy.html

.. more.

Friday, March 02, 2007

Windows Presentation Foundation Part 3

In this post, I will speak about a new technology that is subset of WPF. It is called WPF/E that stands for Windows Presentation Foundation Everywhere. In the last post , I spoke about the WPF features. One of the most important WPF features is the deployment feature that helps WPF to offer XAML Browser Applications (XBAPs) besides standalone applications.

XBAPs are programs hosted inside a web browser such as Internet Explorer and help web applications to provide large WPF features to the users. So we have to install WPF on the client machines at first to use XBAPs.

But, the problem was: how building and developing web applications that must be accessible from other systems that don't support WPF and at the same time with great and modern interfaces like ones developed using WPF?!!!

WPF/E solved this problem as it provides subset of WPF features such as video, text, images, vector graphics and animations to different client platforms including the Macintosh, smaller devices and others and to multiple operating systems including Windows Vista, Windows XP, and Mac OS X and also to different Web browsers including Internet Explorer as IE6, IE7, Firefox , Netscape and Apple Safari.
WPF/E is based on XAML and JavaScript. WPF/E and WPF only share XAML presentation layer.

WPF/E provides video and audio as WMV, WMA and MP3.So, now using WPF/E enables you easily to stream interactive video to any browser without requiring any additional install or runtime as example: Windows Media Player is not required.

WPF/E also enables developers to easily integrate it within existing HTML pages and sites.
To enjoy with WPF/E, Download WPF/E" (codename) Feb 2007 CTP:
http://www.microsoft.com/downloads/details.aspx?FamilyId=E63992D3-CCF5-40B9-B98A-D16BCA57467C&displaylang=en#QuickInfoContainer

To know more about WPF/E and watch more demos and samples, follow this link:
http://www.microsoft.com/design/Voices/Detail.aspx?key=better_web_wpfe&voice=wpfe

.. more.

Try Visual Studio 2005 for free

By the way ,I found Visual Studio 2005 offers many ways to discover the new features included in this release as time-limited trials to online hosted experiences,. From a comprehensive tools platform to reduced development complexity and improved team communication, Visual Studio 2005 continues to lead innovation in developer productivity. Many trials are fully functional, giving you the opportunity to evaluate the product to see how it can work for you and your organization.

Download Visual Studio 2005 Express Editions
Visual Studio 2005 Professional Edition 90-Day Trial
Visual Studio 2005 Team Suite 180-Day Trial
Visual Studio 2005 Team Foundation Server 180-Day Trial
Visual Studio 2005 Team Edition for Database Professionals Trial
Visual Studio 2005 Team Test Load Agent
Visual Studio 2005 Online Hosted Experience
Visual Studio 2005 Virtual Images

.. more.