Introduction to Visual Basic

Hello, and welcome to the first article on Visual Basic. During the next few weeks, we will be exploring the wonderful world of Visual Basic, and give you the grand tour of all it’s major tourist sites. My name is Peter, and I will be your guide in this process.

Our first trip will take us to the past, it will explainwhy you would want to be here, and a peek at what weactually can do.

First of all, let’s look at a little history of Visual Basic. Visual Basic (VB) is a 4th generation programming language, which is targeted specifically for the Windows platform. VB was derived from BASIC (Beginners All-purpose Symbolic Instruction Code). The purpose of BASIC was to provide programmers a more or less English version of a programming language, with easy-to-remember syntaxes and keywords.

In the past (maybe you have seen some of this code), programmers had to go by line-numbers, and basically had to know in advance how their application would work. They just started whipping up code, and referred to line numbers all the time. This is very error-prone, and time consuming. With VB, there are no line numbers. Ourcode is structured into functions and routines that each do their little thing. Yes, they can call each other, and have loops, but instead of seeing ‘Goto 150’, you might do something like: ‘Call ConvertCelciusToFahrenheit’, which makes the code a lot easier to read.

Visual Basic is based on Object-Oriented programming. This might seem vague, but during the weeks, you will start understanding what this means. For now, let’s leave it at Object Oriented (OO) meaning that you can easily re-use your code in different programs.

VB is event-driven. This pretty much means that when we program, we distinguish events. I.e. A user clicking a button, selecting a menu option, etc. Event-driven means that the program itself won’t do anything, until the user does something.

Think of it as a car. A car will remain on your driveway forever, if you don’t do otherwise. If you insert your key into the keyhole and twist it, the door will unlock. If you start the car, the engine will start. All these actions can be seen as events. Basically, the car won’t do anything until you start it, shift it into a transmission, and slam the gas. A program is similar. It can perform small tasks meant to prepare the program for ‘the gas slamming’ (i.e. it could gather user-input to determine exactly what it is a user wants to do), or it can actually take you to the highway at 150 / hour ( i.e. move data from one database to another).

WHY you would be wanting to learn about Visual Basic?

Well, the question here is: Why wouldn’t you? If you’re working on the Windows platform, you have a few programming languages to pick from. There’s C++, Delphi, and VB. (I am aware there are others, but the three major ones would be these). Visual Basic was built by Microsoft itself, (They also do carry Visual C++) and is very easy to learn. I’d say the ease of use is one of the best reasons to pick VB.

What can you do with Visual Basic?

Let’s sum up a few possibilities of various ways to program using VB.

Desktop applications: These are your standard applications like notepad, calculator, etc. Applications meant for a few users at a time, running locally.

Distributed applications: These are applications meant to be used by massive amounts of users, often running on dedicated servers over a network. Think of a multi-user helpdesk application, or an order-entry program.

Web-based applications: Applications running in a browser. These are applications that make use of the Internet. Think of online databases that can be consulted by thousands of simultaneous users.

Database applications: Applications making use of databases (Like SQL Server, Oracle, etc)

DHTML: DHTML is Dynamic HTML. It’s basically a more flexible version of the Hypertext Markup Language, as used on the Internet.

ASP: Active Server Pages are another implementation using the Internet. ASP adds functionality, gives you the option of using components online, and can add security to your webpages.

ActiveX DLL / ActiveX EXE: ActiveX is where the component-based programming starts. These are reusable bits of code you can implement in many different programs.

That’s it for this article. Join us next time to take a look at different versions of Visual Basic, and the installation process itself.

Linux Fundamentals

In this article I will cover some general technical concepts that relate to Linux. You will need this information to understand and perform an installation, which I will cover in the next article. This article covers some of the major terms used in Linux, as well as the fundamentals of how the system operates. Finally I discuss partitioning and formatting of file systems.

Linux is a different than Windows, and therefore a lot of the terminology changes as well. Listed below are some terms that you must know to effectively learn Linux, along with a general definition of each.

Unix: Refers to a classification of operating system, not a specific version or vendor’s operating system. Sun Solaris, SCO Unix, FreeBSD, and Linux are all types of Unix.

Linux: A specific implementation of Unix, written using open source code and protected under the GPL.

Distribution: A specific vendors implementation of Linux. Consists of the core Linux kernel and a collection of utilities and applications provided by the vendor. Many distributions also contain an implementation of XWindows.

XWindows: The common name for XFree86.

XFree86: A series of programming models and libraries that are used to provide a GUI desktop that runs on Linux. Gnome and KDE are all built on the XFree86 model. A desktop consists of two things – the window manager which provides for the operation of the GUI, and the desktop environment, which is a collection of GUI based tools and provides a look and feel. Gnome and several others use SawFish as the Window manager, KDE provides it’s own, called KWM.

Kernel: The core of Linux. The Kernel controls access to the processor and controls the execution of processes on the computer. The kernel is a single file, usually stored in the /boot folder and can be upgraded independently of the Operating System. All distributions of Linux use the same Kernel.

Root: The “super-user” account. All Linux systems have a root user account that has unlimited access to the systems resources. It can also refer to the root of the file system, denoted by “/”.

Daemon: A service that runs on a Unix computer. Daemons typically listen to a TCP/IP port for network requests and then respond. Servers are collections of daemons. Some examples of daemons include named (Name Daemon or DNS), telnetd (Telnet Daemon), inetd (Internet Daemon), and httpd (Web Server Daemon).

Process: An instance of an application that runs on a Unix computer. A server that provides HTTP services and Telnet services has a process for both httpd and telnetd.

Shell: A command interpreter, commonly accessible through a text terminal (command prompt). Different shells have different capabilities and limitations. Some examples include the Bourne Shell (sh), the Bourne Again Shell (bash), the Korn Shell (ksh) and the C Shell (tcsh). Most Linux distributions install multiple shells, with bash being the shell activated by default. You can activate another shell by typing it’s name, assuming it’s installed.

Shell Script: A series of shell commands saved in a file. Similar to a Batch file in DOS, but with more functionality. Commands available in Shell Scripts are dependant on the shell they are written in. The C Shell allows C language code to be written in Shell Scripts, while bash is limited to basic conditional logic and file manipulation. Many of the core functions on a Linux system are nothing more than complex shell scripts.

Open Source: Applications that are open source make the source code freely available for modification and redistribution by anyone. Open source code is protected by the GPL.

GPL: General Protection License – mandates that open source code may be freely modified and redistributed provided that all modifications to code are distributed as well. This means that if an organization used open source code in an application, although they many resell the application for profit, they must also provide the source code of the application at no charge.

SQL and T-SQL

Structured Query Language, also known as SQL, is a query and programming language. It can be used for accessing, updating, deleting, and adding data in a database. SQL can also be used for managing the RDBMS (Relational Database Management System) itself. Different databases may use versions of SQL that very slightly, but most comply with the standard ANSI SQL-92 implementation of SQL, commonly call ANSI SQL. You can group SQL statements into two main categories: Data Definition Language (or DDL) and Data Manipulation Language (or DML).

DDL statements, as the name suggests, allow you to define the database structure. Most DDL statements begin with CREATE, ALTER, or DROP. The two DDL statements we are going to cover today are CREATE DATABASE (used for creating new databases) and ALTER DATABASE (used for altering existing databases). We will look at the exact syntax of these two statements later on in this article.

DML statements, on the other hand, are used for manipulating the data inside database objects. For example, the SELECT statement allows you to query the data inside a database, the INSERT statement allows for the addition of new data, the UPDATE statement updates selected data, and the DELETE statement allows you to remove data. As this series progresses we will cover these statements as well as many more DDL and DML statements in greater detail.

We now know what SQL is, but what is T-SQL? Simply, T-SQL is SQL Server’s enhanced version of the standard SQL programming language. T-SQL in SQL Server 2000 allows for such things as stored procedures, IF and WHILE statements, and additional functions/data types (we will cover data types when we start creating tables) that are not available in standard SQL.