Sunday, November 6, 2011

Visual Basic Subject

I. History

VB 1.0 was introduced in 1991. The drag and drop design for creating the user interface is derived from a prototype form generator developed by Alan Cooper and his company called Tripod. Microsoft contracted with Cooper and his associates to develop Tripod into a programmable form system for Windows 3.0, under the code name Ruby (no relation to the Ruby programming language).
Tripod did not include a programming language at all. Microsoft decided to combine Ruby with the Basic language to create Visual Basic.
The Ruby interface generator provided the "visual" part of Visual Basic and this was combined with the "EB" Embedded BASIC engine designed for Microsoft's abandoned "Omega" database system. Ruby also provided the ability to load dynamic link libraries containing additional controls (then called "gizmos"), which later became the VBX interface.

II. Language features

Like the BASIC programming language, Visual Basic was designed to be easily learned and used by beginner programmers. The language not only allows programmers to create simple GUI applications, but can also develop complex applications. Programming in VB is a combination of visually arranging components or controls on a form, specifying attributes and actions of those components, and writing additional lines of code for more functionality. Since default attributes and actions are defined for the components, a simple program can be created without the programmer having to write many lines of code. Performance problems were experienced by earlier versions, but with faster computers and native code compilation this has become less of an issue.
Although programs can be compiled into native code executables from version 5 onwards, they still require the presence of runtime libraries of approximately 1 MB in size. This runtime is included by default in Windows 2000 and later, but for earlier versions of Windows like 95/98/NT it must be distributed together with the executable.
Forms are created using drag-and-drop techniques. A tool is used to place controls (e.g., text boxes, buttons, etc.) on the form (window). Controls have attributes and event handlers associated with them. Default values are provided when the control is created, but may be changed by the programmer. Many attribute values can be modified during run time based on user actions or changes in the environment, providing a dynamic application. For example, code can be inserted into the form resize event handler to reposition a control so that it remains centered on the form, expands to fill up the form, etc. By inserting code into the event handler for a keypress in a text box, the program can automatically translate the case of the text being entered, or even prevent certain characters from being inserted.
Visual Basic can create executables (EXE files), ActiveX controls, or DLL files, but is primarily used to develop Windows applications and to interface database systems. Dialog boxes with less functionality can be used to provide pop-up capabilities. Controls provide the basic functionality of the application, while programmers can insert additional logic within the appropriate event handlers. For example, a drop-down combination box will automatically display its list and allow the user to select any element. An event handler is called when an item is selected, which can then execute additional code created by the programmer to perform some action based on which element was selected, such as populating a related list.
Alternatively, a Visual Basic component can have no user interface, and instead provide ActiveX objects to other programs via Component Object Model (COM). This allows for server-side processing or an add-in module.
The language is garbage collected using reference counting, has a large library of utility objects, and has basic object oriented support. Since the more common components are included in the default project template, the programmer seldom needs to specify additional libraries. Unlike many other programming languages, Visual Basic is generally not case sensitive, although it will transform keywords into a standard case configuration and force the case of variable names to conform to the case of the entry within the symbol table. String comparisons are case sensitive by default, but can be made case insensitive if so desired.
The Visual Basic compiler is shared with other Visual Studio languages (C, C++), but restrictions in the IDE do not allow the creation of some targets (Windows model DLLs) and threading models.

Reference website:http://en.wikipedia.org/wiki/Visual_Basic

ASP Subject

I. History

After the release of Internet Information Services 4.0 in 1997, Microsoft began researching possibilities for a new Web application model that would solve common complaints about ASP, especially with regard to separation of presentation and content and being able to write "clean" code. Mark Anders, a manager on the IIS team, and Scott Guthrie, who had joined Microsoft in 1997 after graduating from Duke University, were tasked with determining what that model would look like. The initial design was developed over the course of two months by Anders and Guthrie, and Guthrie coded the initial prototypes during the Fall of 1997.
The initial prototype was called "XSP"; Guthrie explained in a 2007 interview that, "People would always ask what the X stood for. At the time it really didn't stand for anything. XML started with that; XSLT started with that. Everything cool seemed to start with an X, so that's what we originally named it." The initial prototype of XSP was done using Java, but it was soon decided to build the new platform on top of the Common Language Runtime (CLR), as it offered an object-oriented programming environment, garbage collection and other features that were seen as desirable features that Microsoft's Component Object Model platform did not support. Guthrie described this decision as a "huge risk", as the success of their new Web development platform would be tied to the success of the CLR, which, like XSP, was still in the early stages of development, so much so that the XSP team was the first team at Microsoft to target the CLR.
With the move to the Common Language Runtime, XSP was re-implemented in C# (known internally as "Project Cool" but kept secret from the public), and the name changed to ASP+, as by this point the new platform was seen as being the successor to Active Server Pages, and the intention was to provide an easy migration path for ASP developers.
Mark Anders first demonstrated ASP+ at the ASP Connections conference in Phoenix, Arizona on May 2, 2000. Demonstrations to the wide public and initial beta release of ASP+ (and the rest of the .NET Framework) came at the 2000 Professional Developers Conference on July 11, 2000 in Orlando, Florida. During Bill Gates' keynote presentation, Fujitsu demonstrated ASP+ being used in conjunction with COBOL, and support for a variety of other languages was announced, including Microsoft's new Visual Basic .NET and C# languages, as well as Python and Perl support by way of interoperability tools created by ActiveState.
Once the ".NET" branding was decided on in the second half of 2000, it was decided to rename ASP+ to ASP.NET. Mark Anders explained on an appearance on The MSDN Show that year that, "The .NET initiative is really about a number of factors, it's about delivering software as a link building service, it's about XML and Web services and really enhancing the Internet in terms of what it can do ... we really wanted to bring its name more in line with the rest of the platform pieces that make up the .NET framework."
After four years of development, and a series of beta releases in 2000 and 2001, ASP.NET 1.0 was released on January 5, 2002 as part of version 1.0 of the .NET Framework. Even prior to the release, dozens of books had been written about ASP.NET, and Microsoft promoted it heavily as part of their platform for Web services. Guthrie became the product unit manager for ASP.NET, and development continued apace, with version 1.1 being released on April 24, 2003 as a part of Windows Server 2003. This release focused on improving ASP.NET's support for mobile devices.

Reference websitehttp://en.wikipedia.org/wiki/ASP.NET

Tuesday, October 18, 2011

Networking





Internet Time
History of Computer Networking 1998-2003

Explosive Internet growth in the late 1990s dramatically affected the evolution of computer networking. Some new network technologies and initiatives boomed but quickly faded into oblivion. Others have stood the test of time.

Below I've highlighted my picks for the top movers and shakers in the history of computer networking during this stretch of "Internet time."

Related Resources
Part 1 - Broadband, P2P, Apache
Part 2 - Cisco, Carnivore, IPv6
                                             
Related Resources
History and Future of Networking
Broadband Resources
P2P Resources
Apache Resources
Carnivore and Echelon Resources
IPv6 Resources
Home Broadband
High-speed home networking struggled to get off the ground in 1997 and 1998. Cable modem was the first broadband option available to many, but only a few hundred thousand subscribed to Internet cable in that first year. In 1999, competition from DSL kicked in, but DSL availability remained quite limited at first. The expected competition from satellite services did not emerge until later, and even today, satellite services remain a distant third in the home broadband market. It took until 2001 for home broadband to enter mainstream usage and begin growing at a faster rate than Internetdial-up services. Although the networking industry continues to promote broadband as the future pathway to new and exciting Internet applications, tens of millions of U.S. households remain on dial-up. The spirited battle between cable and DSL also continues.
Although many in the industry remain disappointed in the slow adoption rate of home broadband, initial concerns over a) reliability of DSL, b) security of cable modem, c) broadband accessiblity in rural areas, and d) viability of the broadband service providers, have all largely been addressed. The future of home broadband appears quite promising.
Napster and Peer to Peer
A 19 year-old student named Shawn Fanning dropped out of college in 1999 to build a piece of software called Napster. Within a few months, Napster became one of the most popular software applications of all time. People all over the world regularly logged into Napster to freely swap music files in the MP3 digital format. Some proclaimed Napster "revolutionary." It certainly created a large stir in the industry press. Users invested large amounts of time and energy in Napster. They also consumed big chunks of network bandwidth. Some universities and businesses reacted by banning or blocking Napster to keep their networks stable, generating even more controversy.


Napster was built using a network design technique called peer-to-peer (P2P). Though peer networking had existed for decades, Napster generated a new wave of interest in P2P. Many startup and some established companies jumped on the P2P bandwagon, activitely promoting new or rehashed, generally unproven business opportunities based on this technology.
Both Napster and corporate P2P have rapidly faded into obscurity. Napster faced the wrath of the music industry establishment, who claimed that open music file sharing violated copyright laws. The legal process moved slowly, but eventually the courts shut Napster down. Corporate interest in P2P suffered a similar fate. The allure of Napster proved to be its openness, not its network architecture, and initiatives to create comparable paid services have all stuggled mightily to get off the ground.
Apache
Score one for the Open Source movement. Since 1996, and despite formidable competition from the likes of Microsoft, Apache has remained the world's most popular Web server by a wide margin. Web site owners frequently choose Apache for its reliability, performance and zero cost. Apache works well not only for "mom-and-pop" sites but also supports some of the busiest Web sites on the Internet. Today, Apache has expanded well beyond its original roots as a mere HTTP server to support numerous new Internet technologies including Web Services. Apache should remain a key Internet technology for years to come.













Distributed Processing