Tuesday, May 26, 2009

Apa cerita dengan subjek ICT SPM...

subjek ict merupakan satu subjek elektif bagi pelajar spm.subjek ini pada mulanya agak menarik kerana diajar dalam bahasa melayu dengan nama Teknologi Maklumat pada sekitar tahun 2001-2002 dulu.Bermula pada tahun 2006 maka ianya telah ditukar ke ICT dan pengajaran nya dijalankan menggunakan bahasa inggeris sepenuhnya.Namun subjek ini masih lagi seronok dan diminati oleh kebanyakkan pelajar.
Namun semenjak dua menjak ni ianya menjadi muram pada guru-guru yang mengajarnya.Kenapa agaknya rungutan ini keluar dari guru2 pulak?..ceritanya begini...........
subjek ini ditadbir dibawah PBS iaitu pentaksiran berasaskan sekolah.maknanya subjek ini memerlukan pelajar dinilai atau kata lain ditaksir oleh guru yang mengajar akan practical session yang dijalankan.Pada asasnya subjek yang menjadi kegemaran pelajar ini semakin kurang 'ummmp'disebabkan terlalu banyak karenah yang hendak ditekankan dan akhirnya subjek ini sebagai subjek yang tidak berpijak ditanah ...
(hebat bunyi nya)yang pening adalah guru-guru yang mengajar.setiap kali taklimat yang dipanggil oleh LPM lain pulak formatnya.Buat persediaan elok2 tahun ini.tetiba tahun depan rombak dan tambah lagi format.Apa nie...?? ingat suka-suka ke nak ubah dan kalau ini diteruskan(idea JU ICT LPM...cikgu2 jugak pun)sampai bila subjek ini hendak dilihat kemantapannya???? asyik dok ubah setting kat control panel je...bila masa nak kita lihat kesan pada pelajar kita. Sekarang ni nak mantapkan subjek atau nak mantapkan pelajar. kalau subjek dapat 100% pun pelajar tak tahu apa salah siapa??? kat nabil...(lu pikir la sendiri)

Friday, May 15, 2009

Selamat Hari Guru

kekadang terasa pedih dan ngilu bila mana mengenangkan nasib saudara kita yang diberhentikan kerja.entah apa sedang kalian lalui pada ketika ini. dengan bebanan yang semakin mencengkam , hutang,belanja anak ,isteri yang tidak bekerja.....ooh aku pasrah betapa aku kini dalam satu ketentuan allah tidak merasai derita itu...
dan seingat aku pada 16/mei setiap tahun adalah hari guru.Aku ingat itu sebab masa bersekolah dulu aku akan lalui hari itu bersama-sama cikgu ku.kami sama2 makan dan minum juadah yang kami pakat bawak dari rumah.Khas untuk meraikan guru kami.

Dan....hari bersejarah itu datang lagi pada tahun ini tetapi disambut pada 17/mei 2009. Selamat Hari Guru buat semua guru2 di malaysia.bakti mu dan jasa mu bukan dijanjikan didunia jika ikhlasmu ada bersama.Tetapi didunia kau tetap disanjung walaupun tidak sedemikian rupa.Percayalah wahai guru2 bahawa anda semua berada di jalan yang betul...teruskan menabur jasamu.Peduli tentang MyVi,Proton saga BLM dan terkini Exora menanti...kalian mudah diburu penjual2 kereta,insuran dan pelbagai lagi kerana kalian ada slip gaji dan tak akan lari...

tetapi harus diingat bahawa jujur dan ikhlas jangan biar berbaki...berikan sepenuhnya yang ada demi untuk agama,bangsa dan negara.

Bebanan guru makin bertambah lagi....

hari sabtu pagi...
diruang rumah kakitangan lain masih banyak kereta yang tersadai kaku dibawah garaj.tetapi kereta cikgu laki bini dah keluaq awai-awai pagi.depa pi mana???
pi mana lagi kalau tak kursus LDP.ada kata LADAP tapi aku kata kursus dalam cuti la apa lagi.

kesian tengok cikgu-cikgi la..ni. depa cuma cuti satu hari(1) dalam seminggu.depa kerja enam hari(6) dalam seminggu. adakah depa hepi?? aku tak tau nak cakap apa lagi.

Kerja pejabat lain dok seronok laki bini pi market awai pagi sabtu.balik rumah baca paper dan bini dok boleh pi senang-senang diri.tapi...cikgu kita dok pakat ada disekolah sepanjang hari.kekadang kesian kat depa.Ramai dok ingat cikgu balik awai.dan dendam tu laa depa kata padan muka cikgu.tapi rasionalnya ramai tak tau keja cikgu ni lagu mana....

Sunday, April 19, 2009

BASIC PROGRAMMING CONCEPT

BASIC PROGRAMMING CONCEPT

LESSON 1
PROGRAM AND PROGRAMMING

PROGRAM

A computer program is a series of organised instructions that directs a computer to perform tasks. Without programs, computers are useless.

A program is like a recipe. It contains a list of variables (called ingredients) and a list of statements (called directions) that tell the computer what to do with the variables.

Like a recipe, a program can be written in different programming languages which may express the steps differently according to the programming language syntax, but deliver the same end result.

PROGRAMMING
Programming is a creation of a set of commands or instructions which directs a computer in carrying out a task.

Later these commands or instructions will be compiled and/or interpreted and then transformed to executable instructions that a computer or electronic device can execute or run.
PROGRAMMING LANGUAGE

A programming language is a set of words, symbols and codes that enables humans to communicate with computers.

It is a language used for writing computer programs, that direct a computer to perform computation and to organise the flow of control between mechanical devices.

EXAMPLES PROGRAMMING LANGUAGE

Hundreds of programming languages exist today. Each language has its own standard or rules for writing the commands and/or instructions.

Examples of programming languages are:
BASIC (Beginner’s All Purpose Symbolic Instruction Code)
Pascal
C
Smalltalk.

EXT : CAREER IN PROGRAMMING

A programmer is someone who writes computer programs. One who adopts and practices a formal approach to programming is sometimes also referred to as a programmer analyst, computer scientist, software engineer and software analyst.

A programmer analyst designs computer programs besides writing them.

A computer scientist is a generic or broad term for a professional with expertise in computer software.

These different job titles are quite subjective as different companies may define them differently. Professional programmers may work in corporate IT departments, software houses and service companies.

Sometimes professional programmers work for consulting companies and their work often takes them to their client’s workplace.

LESSON 2
GENERATIONS OF PROGRAMMING LANGUAGE

A low-level programming language is a programming language that provides little or no abstraction from computer’s microprocessor.

A high-level programming language is a programming language that is more abstract, easier to use, and more portable across platforms.

LEVELS OF PROGRAMMING LANGUAGE

FIRST GENERATION OF PROGRAMMING LANGUAGE

The first generation of programming language, or 1GL, is machine language. Machine language is a set of instructions and data that a computer's central processing unit can execute directly.

Machine language statements are written in binary code, and each statement corresponds to one machine action.

SECOND GENERATION PROGRAMMING LANGUAGE

The second generation programming language, or 2GL, is assembly language. Assembly language is the human-readable notation for the machine language used to control specific computer operations.

An assembly language programmer writes instructions using symbolic instruction codes that are meaningful abbreviations or mnemonics.

An assembler is a program that translates assembly language into machine language.

Since assembly language consist of human-readable abbreviations, the assembler must first convert assembly language into machine-readable language before the computer can readily understand its instructions.

THIRD GENERATION PROGRAMMING LANGUAGE

The third generation of programming language, 3GL, or procedural language uses a series of English-like words, that are closer to human language,
to write instructions.

High-level programming languages make complex programming simpler and
easier to read, write and maintain.Programs written in a high-level programming language must be translated into machine language by a compiler or interpreter.

PASCAL, FORTRAN, BASIC, COBOL, C and C++ are examples of third
generation programming languages.

FOURTH GENERATION PROGRAMMING LANGUAGE
The fourth generation programming language or non-procedural language, often abbreviated as 4GL, enables users to access data in a database.

A very high-level programming language is often referred to as goal-oriented programming language because it is usually limited to a very specific
application and it might use syntax that is never used in other programming languages.

SQL, NOMAD and FOCUS are examples of fourth generation programming languages.

FIFTH GENERATION PROGRAMMING LANGUAGE
The fifth generation programming language or visual programming
language, is also known as natural language.

Provides a visual or graphical interface, called a visual programming
environment, for creating source codes.

Fifth generation programming allows people to interact with computers without needing any specialised knowledge.

People can talk to computers and the voice recognition systems can convert
spoken sounds into written words, but these systems do not understand what they are writing; they simply take dictation.

Prolog and Mercury are the best known fifth-generation languages.

EXT : OPEN PROGRAMMING LANGUAGE

The Open Programming Language (OPL) is an embedded programming language found in portable devices that run the Symbian Operating System.

For example mobile telephones and PDAs.

OPL is an interpreted language that is analogous to BASIC.

In the early years, before the computer was invented, there are several inventions of counting machines.

LESSON 3
PROGRAMING APPROACHES

STRUCTURED PROGRAMMING EDUCATION

Structured programming often uses a top-down design model where
developers map out the overall program structure into separate subsections
from top to bottom.

In the top-down design model, programs are drawn as rectangles. A top-down design means that the whole program is broken down into smaller sections that are known as modules.A program may have a module or several modules.

Structured programming is beneficial for organising and coding computer
programs which employ a hierarchy of modules. This means that control is passed downwards only through the hierarchy.

Examples of structured programming languages include Ada, Pascal and
Fortran.

OBJECT-ORIENTED PROGRAMMING

The object-oriented approach refers to a special type of programming approach that combines data with functions to create objects.

In an object-oriented program, the object have relationships with one another.

One of the earliest OOP languages is Smalltalk. Java, Visual Basic and C++ are examples of popular OOP languages.

DIFFERENCE BETWEEN STRUCTURED AND OBJECT ORIENTED PROGRAMMING

Structured programming often uses a top-down design model.

The object-oriented programming approach uses objects.

LESSON 4
TRANSLATOR

Sometimes two people cannot understand each other because they don’t speak the same language. So they need the help of a third person who understands both languages. This third person is known as a translator.

All software packages or programs are written in high-level languages, for example, C++, Visual Basic and Java.

However, in order for the computer to be able to carry out the instructions, the high-level languages must be translated into machine language before the computer can understand and execute the instructions in the program.

The translation of high level languages to machine language is performed by a translator.

PROGRAM

Have you ever wondered how your computer runs your favourite software?
Your favourite software is a program that consists of several instructions that perform its operation.

A programmer will write a source code which consists of the instructions
needed to run a program. Then the compiler or interpreter with assembler will translates the source code into machine language which is made of a sequence of bits (eg. 01100011).

The computer will load the machine code and run the program.

ASSEMBLER

An assembler is a computer program for translating assembly language — essentially, a mnemonic representation of machine language — into machine language.

For example in intel 80836, the assembly language for the ’no operation’ command is NOP and its machine code representation is 10010000.

Example of assemblers are MACRO-80 Assembler and Microsoft MASM.

INTERPRETER

Interpreter is used to interpret and execute program directly from its source without compiling it first. The source code of an interpreted language is interpreted and executed in real time when the user execute it.

The interpreter will read each codes converts it to machine code and executes it line by line until the end of the program.

Examples of interpreter-based language are BASIC, Logo and Smalltalk.
COMPILER

The source code (in text format) will be converted into machine code which is a file consisting of binary machine code that can be executed on a computer. If the compiler encounters any errors, it records them in the program-listing file.

When a user wants to run the program, the object program is loaded into the memory of the computer and the program instructions begin executing.

A compiled code generally runs faster than programs based on interpreted language. Several programming languages like C++, Pascal and COBOL used compilers as their translators.

LESSON 5
HOW TO INSTALL VISUAL BASIC 6.0

VISUAL BASIC 6.0 INSTALLATION

Microsoft Visual Basic 6.0 was designed to be easy to learn and use. The language not only allows programmers to easily create simple GUI applications, but also has the flexibility to develop fairly complex applications as well.

Programming in Microsoft Visual Basic 6.0 is a combination of visually
arranging components or controls on a form. Hence a simple program can be created without the programmer having to write many lines of code.

VISUAL BASIC 6.0 FEATURES

Microsoft Visual Basic is fast and easy with intuitive tools that enable you to rapidly build your own Windows applications. You can use Microsoft Visual Basic to develop programs such as games, calculator, phonebook database and lots more.

The word “ Visual” refers to the technique used to build the Graphical User Interface (GUI). Visual Basic features an easy “drag and drop” method to produce an interactive Graphical User Interface (GUI) for your program.

The “Basic” part refers to the BASIC (Beginners All-Purpose Symbolic Instruction Code) language, a high level programming language develop by Microsoft.

VISUAL BASIC 6.0 FEATURES

Among the main features of Visual Basic are drag and drop user interface, data access features, ActiveX technologies and internet capabilities. Drag and drop user interface allows you to instantly create an interactive user interface for your software without dozens of codes.

Data access features allow your application to access information from a database such as a telephone book program.

ActiveX technologies allow you to make use of the functionality provided by
other applications.

Internet capabilities allow your program to interactively utilise the Internet.

LESSON 6
BASIC ELEMENT IN PROGRAMMING

5 Basic elements in programming.

1. Constant.
2. Variable.
3. Data Type.
4. Operators.
5. Control Structures.


CONSTANTS AND VARIABLES

Constants
Constant is a data container that stores information. The value will never change (remains constant) at any time during the course of a program.

Declare is the official term used in programming to announce to the program
the condition of statement in programming.

Variables
Variable is a data container that stores information. The value inside may change at any time during the course of a program.

DATA TYPES, OPERATOR AND CONTROL STRUCTURES

LESSON 7
THE DIFFERENCES BETWEEN ETHICS AND LAW


CONSTANTS AND VARIABLES
Constant is a virtual data container that stores information. The value will
never change (remains constant) at any time during the course of a
program.

Variables is a virtual data container that stores information. The value
inside may change at any time during the course of a program.

DIFFERENCES BETWEEN CONSTANTS AND VARIABLES

LESSON 8
RIGHTS DATA TYPES

DATA EXAMPLES FOR DIFFERENT DATA TYPES

Data type determines the type of data a variable can store, for example a number or a character. Examples of data types are integer, double, string and boolean.


DATA EXAMPLES FOR DIFFERENT DATA TYPES

Integer
Integer data type contains any whole number value that does not have any fractional part.

This is how we declare an integer type constant in Visual Basic statement.

This is how we declare an integer type variable in Visual Basic statement.

Double
Any number value that may and could contain a fractional part.

This is how we declare a double type constant in Visual Basic statement.

This is how we declare a double type variable in Visual Basic statement.

String
Any value that contains a sequence of characters.

This is how we declare string type constant in Visual Basic statement.

This is how we declare string type variable in Visual Basic statement.

Boolean
Boolean type consists either a True or False value. Programmers usually use it to store status.

This is how we declare a boolean type constant in Visual Basic statement.

This is how we declare a boolean type variable in Visual Basic statement.

OTHER DATA TYPES

LESSON 9
MATHEMATICAL AND LOGICAL OPERATORS

MATHEMATICAL, RELATIONAL AND LOGICAL OPERATORS
Operator is a symbol or notation that tells a computer to perform certain actions or operations.

An example: the plus (+) notation will tell the computer to perform the
"add" operation.

Let's look at some examples of Mathematical Operators.
Let's look at some examples of Relational Operators.
Let's look at some examples of Logical Operators.

FUNCTION OF MATHEMATICAL OPERATORS
Mathematical operators are notations that tell the computer to perform mathematical operations.

FUNCTIONS OF RELATIONAL OPERATORS
Relational operators perform comparison between two elements.

They return an element of logical 1 (True) where the relation is true, and element of logical 0 (False) where the relation is false.

The diagram shows some common relational operators and their expression.

Let’s understand a relational operation with the following examples.

In this expression, A >= B is used to test if the value of left expression (A) is greater than or equal to that of the right expression (B).

If the conditions are met, then the program will return a logical 1 and proceed to print "A is greater than or equal to B" else it will return a logical 0 and proceed to print "A is less than B".

FUNCTIONS OF LOGICAL OPERATORS

Logical operators are notations that tell the computer to perform logical operations.

Examples of Logical operation are: AND, OR, and NOT.

Logical operator compares 2 conditions and returns a TRUE or FALSE value.


AND operator

The diagram shows a truth table of AND operator.

Notice that truth value of X AND Y is True ( 1 ) if only both X and Y are True ( 1 ).

Else it is false ( 0 )

OR operator

The diagram shows a truth table of OR operator.

Notice that truth value of X OR Y is only True ( 1 ) if either X or Y are True ( 1 ) or both X and Y are true ( 1 )

Else it is false ( 0 )

NOT operator

The diagram shows the truth table of NOT operator NOT X is the negation of X, it is essentially the 1's complement operation.

Notice that truth value of NOT X is True
( 1 ) when X is False and vice versa.

DIFFERENCES IN MATHEMATICAL AND LOGICAL OPERATORS
As we have learned, there are some differences between mathematical,
relational and logical operators.

Function :
Mathematical operators perform mathematical operations such as plus or substract.
Relational operators perform element-by-element comparisons between two
arrays.

Logical operators perform logical operations such as checking the condition of two Boolean values.

Symbols :

These operators have their own symbols based on the programming
language.

EQUALITY OPERATORS

The equality determine an operand equal to or not equal to another operand.

Remember we must use "=" and not "<>" when testing if two primitive values are equal in Microsoft Visual Basic 6.0.


LESSON 10
PSEUDO CODES


Pseudo code is text only sentences that describe the logic and program flow of a computer program. Pseudo code esembles plain English.

It usually does not have any specific programming language syntax and
grammar.

Pseudo code is directly linked to the computer codes because each pseudo code statement can often be converted into the programming language virtually line by line.

There are no set rules for writing pseudo code.

A programmer can have his or her personalised pseudo code.

He or she must use consistent language and syntax in the pseudo code, so that he or she can understand it at a later stage.

AN EXAMPLE PROGRAM BASED ON A PSEUDO CODE

EXT : STANDARDS OF GOOD PSEUDO CODE

Pseudo-Code is simply a numbered list of instructions to perform some task. In this course we will enforce three standards for good pseudo code

Number each instruction. This is to enforce the notion of an ordered sequence of the operations.

Furthermore we introduce a dot notation (e.g. 3.1 come after 3 but before 4) to number subordinate operations for conditional and iterative operations

Each instruction should be unambiguous and effectively computable.

Completeness. Nothing is left out.

Pseudo-code is best understood by looking at examples.

Each example below demonstrates one of the control structures used in algorithms : sequential operations, conditional operations, and
iterative operations.

We also list all variables used at the end of the pseudo-code.
Example:

Computing discount:

Pseudo-code:
Computing the final price of an item after figuring in discount.

Note the three types of
instructions:

input (request),

process/calculate (=) and

output (print)

LESSON 11
FLOW CHART

Let’s identify some of the main elements in the flow chart. We have five main elements in a flow chart.

Terminator shows the beginning or end of a program.

Flowline and arrowhead use to connect symbols and indicate the sequences of operation.

Input or output shows either an input operation (e.g. an INPUT from the
user) or an output operation (e.g. PRINT some messages).

Process shows a process to be carried out (e.g. calculation).

Decision shows a decision (or choice) to be made. The program should continue along one of two routes (e.g. if...else).


A flow chart is a diagram using symbols to show the step-by-step sequence of procedures in a program. A flow chart describes the logic and program flow of a computer program graphically.

Example:

A student requests his marks from the program.

The program will then check whether his marks is more/equal to 50 or not.

If the marks are over or equal to 50, the program will print a congratulatory message together with the marks.

If the marks are lower than 50 then the program will print a motivational message together with the result.

LESSON 12
CONTROL STRUCTURES
Control structure is a structure of statements in programming that allows
the programmer to control the flow of a program.

Control structure can be divided into sequence, selection and repetition control structures.

SEQUENCE CONTROL

Sequence control refers to the linear execution of codes within a program. In sequence control, the statements are executed one by one in consecutive order.
In sequence control, the statements are executed one by one in consecutive order.

Lets see an example of pseudo code that has sequence control structure.

This program will request the user’s date of birth and then request today’s date, calculate the age and finally will print the user’s age.

For example, today’s date is 1-JAN-2006, then the results will be shown as follows:
Let’s see another example of pseudo code that has sequence control structure.
The following is the result of the example.
Lets see the flow chart for a general sequence control structure.
As we can see, the flow chart for sequence control is very simple.
It will execute statement 1 followed by statement 2 and any following statements.
EXAMPLE
The flow chart represents a program that will request the user’s date of birth and then request today’s date, calculate the age and finally will display the user’s age.

SELECTION CONTROL

There are times when you want your program to make a decision based on the situation given.

For example, a program that stores student’s marks may respond differently to different marks.

Or maybe a simple mathematical program will display its result as odd or even, based on the result.

Selection control enables the programmer to assign different events for different situations.

An example of selection control is “If...Then...Else” statement. The basic pseudo code for “If...Then...Else” statement is as follows.

Let's see a pseudo code example for the “If...Then...Else" statement for a program that will print “You are too heavy to ride the toy car” if the student’s weight is more than or equal to 50.

Otherwise it will print “You can ride the toy car”

Let's see the flow chart for a similar selection control example.

Let's see a program that will respond differently for different service hours in a school library.

A student requests her service hours in a library from the program, the
program will then check whether her service hours are more than/equal to 30 or not.

If the service hours are over or equal to 30, the program will print a message, “Thank you for your service”.

If the service hours are lower than 30 then the program will print a message, “Please continue to serve in the library”.

Let's write an example of a program that implements sequence control structure.

This program will declare a constant pi equal to 3.142. Then the program declares two variables to be used in the program (r and volume).

The program will then assign some value to the r variable.

The program will then calculate the volume using the formula volume = (4/3)πr

The program will then display the volume calculated with a message box.

Now write an example program that implements selection control structure.

Write a program that will retrieve the current date from the system.

If today’s date is more than 15 then the program will display a message box with the message “We are towards the end of the month”.

Else the program will print “We are at the beginning of the month”.

DIFFERENTIATE BETWEEN SELECTION CONTROL AND SEQUENCE CONTROL

EXT : REPETITION CONTROL STRUCTURES

Let’s learn about the last control structure which is repetition control structure. A repetition control structure allows the programmer to specify an
action to be repeated while some condition remains true.

This is a pseudo code of "While" structure.

This program segment will continue its looping until the condition of variable
named product is greater than 3000.

This is a flow chart of a repetition control structure.

PROGRAM DEVELOPMENT

PROGRAM DEVELOPMENT

LESSON 13
OVERVIEW OF PROGRAM DEVELOPMENT PHASES

In program development, there are five main phases. These phases are a series of steps that programmers undertake to build computer programs. The program development phases guide computer programmers through the development of a program.

The five main phases of program development are as follows:


PROBLEM ANALYSIS PHASE
During the problem analysis phase, the programmer will interview the client to find out what the client’s needs are.

For example, the client might be a school that wishes to set up a school registration program. So the school administrator might tell the programmer that they need to record students’ data such as name, date of birth, gender, class, parents’ names, address and contact numbers.

PROGRAM DESIGN PHASE
Based on that, the programmer will design a flow chart that represents the needs of the client, which in this case is the school registration program.

CODING PHASE
Once the flow chart is confirmed, the programmer will perform coding.

TESTING AND DEBUGGING PHASE
The school registration program will be tested by the users at the client’s site. In this case, it will be the school office administrators. If there are any errors, the programmer will do a debugging of the program.

DOCUMENTATION PHASE
After this, the programmer will complete the documentation for the program; this includes the user manual, a clear layout of the input and output records and a program listing.

EXT : SIX STEPS OF SOFTWARE DEVELOPMENT

Step 1
Know your target user.

The software we develop is for our user. Learn their preferences.

Step 2
Search for the exciting possibilities in your software.

In this way, it is possible to identify their likely concerns and anxieties and thus take them into account during the design stage.

Step 3
Correlate these possibilities with the target user. Find how to combine these possibilities with user personalities.

Step 4
Immerse yourself in the process. You have to be involved deeply in the
subject that you develop.


Step 5
Engage a talented and visionary designer or developer in the team. They are responsible for all aspects of the software.

Step 6
Make quality and fantastic features as the priorities among software development team members.The software should deliver the complete, accurate, reliable and available information to the right person at the right time in a suitable format.


LESSON 14
PROBLEM ANALYSIS

PROGRAM DESIGN

The first step in the program development phase is to analyse the problems faced by target users. In this phase, a programmer reviews and defines the
problems. Identifies the data input, process and output for the program.


CASE STUDY

The school needs a school registration program to computerise the registration of new students.

Any new student who enrolls in the school should have all his or her data keyed into the school registration program. They will notified of his or her class for the coming academic year or term.

This case study will be used throughout the program development phases.

In this case study, the programmer reviews and defines the problems faced by the school administrators.

The school enrolment has increased so much that it has become very difficult for them to perform student registration without the help of a
computer program or system.

The programmer must indicate the purpose of the program before
continuing to the next task.


In this case, the purpose of the school registration program is to computerise the registration of new students.

In this situation, the programmer identifies the data input, process and output for the program.

First step: The programmer identifies the data input, for example student’s
name, student’s NRIC, gender, telephone number, date of birth, parents’
name and address.

Second step: The programmer identifies the process for the program. Any
new student who enrolls in the school should have all his or her data keyed into the school's registration program.

PROBLEMS AND SOLUTIONS

In program development, the target user and programmers will face some problems. Here are some common problems faced by them, and solutions to overcome them.


LESSON 15
PROGRAM DESIGN

Many inventions today are driven by computer programs. To develop good
programs, program design is a very important phase.

PROGRAM DESIGN PHASE

In program design, there are three popular tools used, namely the top-down design model, pseudo code and flow chart.


In this case study, the programmer generates a top-down design model.

This top-down model consists of three modules, namely input module,
process module and output module.

Then the programmer writes the pseudo code for the program based on the top-down design model.

Next, the programmer draws the flow chart that shows the data flow of the program.


Besides flow chart, a programmer also produces input and output user
interfaces base on the existing form.

EXT : UNIFIED MODELING LANGUAGE

Unified Modeling Language (UML) has been adopted as a standard notation for object modeling and development.

These notations are used in diagrams that present various views of the
program being developed.

These are some symbols used in Unified Modeling Language Diagrams.

LESSON 16
CODING


The process of writing instructions or code for computers is known as coding. Hence without coding, there would be no software to help us perform useful tasks on computers.

CODING

In this phase, a programmer uses a program development tool which generates or provides some or all codes.

Coding is the process of writing the solution using the computer programming language. After finishing the coding process, the programmer will type the programming language code into the computer.

PROGRAMMING LANGUAGE

There are many different programming languages in the market. Examples of the popular programming languages used in Malaysian secondary schools
are Visual Basic and C language.

Each of these programming languages has its own particular syntax.
CASE STUDY

EXT : EXTREME PROGRAMMING

Extreme programming is a strategy that proposes that a programmer should
immediately begin coding and testing solution as soon as requirements are
defined. The code is continually tested and refined until it works.


Extreme programming also suggests that programmers work in pairs.

They communicate with each other to generate ideas for proper solutions.

IT experts claim that extreme programming reduces the time required for the program development phases.

Extreme programming most often is used in object-oriented design.

LESSON 17
TESTING AND DEBUGGING


For computers to perform their tasks smoothly, the software or program
must be error-free.

Imagine doing an important assignment on the computer. Suddenly, there is a program error and you are unable to complete your work and meet the deadline.

That is why before any software is released to the market or given to the
users, it must undergo testing and debugging. Program testing is done right after coding. The purpose of program testing is to ensure the program runs correctly without any syntax or logic errors.

If errors are uncovered during testing, the programmer will proceed to
debugging. Debugging involves tracing the source of errors in the program and making the necessary corrections.

After correcting the errors, it is normal for programmers to test run the program again just to make sure that the errors have been properly fixed.

TESTING AND DEBUGGING

Once the programmer has finished the coding, the next step is to test it.

The purpose of program testing is to ensure the program runs correctly and is error-free.

There are three types of errors uncovered during this phase: syntax errors, logic errors and run-time errors.


SYNTAX ERROR

When the code violates the syntax of the programming language, a syntax
error occurs.

A syntax error is caused by a wrong spelling in command and declaration. Other syntax errors include case sensitive, punctuation and wrong word command.

They either show up as you type the program code, or if you have turned off the automatic syntax error check, the syntax errors show up when you try to run or compile the program.

When syntax error is located, a message is displayed on the screen.

The programmer must review and correct all syntax errors.


LOGIC ERROR

If the expected output and actual output do not match for any set of data, the program has a logic error.

A logic error is an error in the design that causes inaccurate outputs.

We can use desk check technique to test logic errors. There are 3 steps to perform desk checking.


First, create a set of test data that includes input and output data.

Second, use the test data to test the coding and record the result.

Lastly, compare the manual results with the computer generated results.

RUN-TIME ERROR

Run-time error is an error that occurs while the program is running or executing.

A run-time error may cause the program to stop running.

DEBUGGING

The process of locating and correcting of syntax and logic errors in a program is known as debugging the program.

The program errors themselves are called bugs. Thus removing the errors are called debugging.

EXT : BETA

Some software companies distribute a beta version of their software to users. A beta version is a program that has most or all of its features and functionality implemented.

Users test the beta program and send in bug reports to the software company.

This enables the software manufacturer to fix any errors before the software is released to the public for sale.

LESSON 18
DOCUMENTATION


In program development, documentation refers to the written material generated throughout all the phases of program development.

Thus documentation includes the detailed problem definition, the program plan (flow chart or pseudo code), comments within the source program and testing procedures.

It also includes a detailed description of the program, clear layouts of input and output records and a program listing.

All documentation must be ready by the end of program development.

The programmer should ensure that all documentation is complete and accurate.

Documentation is very valuable if the program requires changes in the future as documentation enables new programmers to learn about existing programs much easily and quickly.

DOCUMENTATION

Documentation refers to the written description and pseudo code of
computer programs.

Although documentation is stated as the last phase in program
development, it is actually performed throughout all the five main phases of program development.

Documentation consists of materials generated during each phase.

Thus the documentation package is made up of the detailed problem
definition, the program plan (flow chart or pseudo code), comments within the source program and testing procedures.

Other items in the documentation package also include a detailed description of the program, clear layouts of input and output records, and a program listing.

The programmer should ensure that all documentation is complete and accurate.

Documentation becomes especially valuable when the program requires changes in the future.

Proper documentation greatly reduces the amount of time a new programmer spends in learning about the existing programs.


INTERNAL DOCUMENTATION

Internal documentation consists of comments within the program. These two types of comments are global comments and internal comments.

Global comments, usually stated at the top of the program, explain the program’s purpose and identify the program’s name, its author and the date the program was written.

Internal comments, which appear throughout the body of the program, explain the purpose of the code statements within the program.

Internal comments are mostly addressed to other programmers who may have to make corrections or other modifications in programming language.

EXT : MARKETING DOCUMENTATION

It is important to provide some informative materials that enable people to learn more about the software product.

This form of documentation, called marketing documentation, has three purposes.

1. To interest potential users with the product and encourage them to get more involved.

2. To inform potential users about the product so that they know what to expect in return.

3. To compare the product with other alternatives.

LESSON 19
COMPUTER USERS


DEVELOP A PROGRAM

A project is a set of activities with a fixed start date and end date. Program development is also a type of project.

A successful program development project will result in one or more
programs that are error-free, affordable, relevant to the needs of the users
and delivered on time.

All the software that you find so helpful, educational and enjoyable today is
the outcome of successful program development projects

For a program development project to succeed, the people involved must
possess the appropriate set of communication, management and technical
skills.

APPLY PROGRAM DEVELOPMENT PHASES TO SOLVE PROBLEMS

Let’s see how a programmer applies program development phases to solve
the library problems.

Problem Analysis Phase
identifies the data input, processing and output for the program

Program Design Phase

Pseudo code

Flow Chart

Coding Phase

Testing and Debugging Phase

Documentation Phase

EXT : TIPS AND TECHNIQUES

Let’s learn a few tips and techniques on developing a new program using
Microsoft Visual Basic 6.0.

In Microsoft Visual Basic 6.0, undeclared variable will be assigned as variant type. Variant type is slow, consuming more memory than the others.

Every procedure and module should have comments explaining their function. It will be easier for you to maintain the code later.

Use descriptive words for your variables and control. It will be easier for other people to understand the program if you use this technique.

When using graphic, use *.gif, *.jpg, and *.wmf picture formats instead of *.bmp. Bitmaps format consume more memory and may slow your program down.

If you have some code which is repeatedly used, code it as independent module or function so that you can easily reuse them later.

LESSON 20
OVERVIEW OF THE LATEST TYPE OF PROGRAMMING LANGUAGES

THE LATEST TYPE OF PROGRAMMING LANGUAGES

FIFTH GENERATION LANGUAGES

Fifth generation programming language (5GL) is an advance programming language which concentrates on solving problems using constraints given to the program.

In fifth generation language, the programmer just need to define the problem to be solve and the program will automatically code the program based on the problem definition.

Fifth generation languages are designed to make the computer solve the problem for you.

Fifth generation languages are mostly used in artificial intelligence research.

Examples of fifth generation languages include Prolog and Mercury.

NATURAL LANGUAGE

Natural Language programming aims to use natural language such as
English to write a program.

Instead of using a specific programming language syntax, natural language
programming will use normal English as the input to program software.

Such a technique would mean less technical programming knowledge
is required to write a program.


The programmer needs to define the program using normal language.


OPENGL (GRAPHIC LIBRARY)

OpenGL (Graphics Library) is a standard specification to describe the standard Application Programming Interface (API) for 3D/2D computer graphic applications.

OpenGL specification describes a set of functions and the exact behaviours that the 3D/2D application must perform.

OpenGL was developed by Silicon Graphics.

OpenGL is widely used in virtual reality, scientific visualisation, flight simulation and video game development.


EXT : THE LATEST PROGRAMMING LANGUAGES: CAPABILITIES & DIFFERENCES

What can the latest programming languages do? How are they different from
the previous or past programming languages?

Friday, April 17, 2009

Plasma Display

What is it?

A type of display technology well suited to making large, flat screen displays. Plasma screens are now very popular in large televisions, having made cathode ray tubes largely obsolete.

The technology was invented in the 1960's but it is only recently that full colour screens have become practical. lightning

What is a Plasma?

'Plasma' is an electrically charged gas that gives off light (the 'light' might be ultraviolet and so is invisible to humans - but there are ways around that)

Factoid: Sometimes a plasma is said to be the fourth state of matter after Solid, Liquid and Gas.

A lightning bolt is a huge example of a plasma being created. An electric current flows from the clouds down to the ground and as it does so, the air molecules are ripped apart by the sheer amount of energy flowing, so forming a plasma. When they come back together again, light is given off, which is why you see a lightning flash.

A plasma display makes use of this effect (although much less dramatically!).

How does it work?

One picture element (sub-pixel) of the display is made up of a tiny hollow glass cube/cell filled plasma displaywith a noble gas such as Xenon and Neon. An electric current is made to flow through the gas which creates a plasma. The glass on the front of the cube is coated with a special material called a 'phosphor' that gives off a coloured light when struck by particles (photons) coming out of the plasma.

The sub-pixels are arranged in a group of Red, Green and Blue very close to one another to form a single 'pixel'. When they each shine with different intensity, your eye combines the Red, Green and Blue light so you sense a different colour. With Red Green and Blue you can produce the illusion of any colour including white. Black is simply all the element being off.

Do they wear out?

Yes eventually, just like a fluorescent tube. It is estimated they last about 60,000 hours or about 25 years in heavy use.

Why large displays rather than small ones?

The gas-filled glass cubes need to be certain size to work well and this lends itself well to large displays, as each pixel can be larger. Trying to make even tinier cubes for small displays is much more expensive and difficult.

How does Plasma compare to other technologies?

Compared to a Cathode Ray Tube (CRT) plasma screen

  • It is much thinner
  • It is much lighter for large screens
  • Easier to make into large screens.

Compared to a Liquid Crystal Display

  • It is not as suitable for small displays
  • It uses more power
  • It has a faster response, good for fast moving images
  • It is brighter
  • It has higher contrast (difference between black and white)
  • It has a better 'black', which is good for watching movies.
And the future?

It is all down to economics.

Makers of television and display screens have to decide what is the most economic technology to use for a given sized screen.

At the moment Plasma has the edge over Liquid Crystal for sizes above 36 inches or so. But the developers of LCD technology are fighting back, making their systems lighter, faster and cheaper so perhaps Plasma will be replaced by LCD technology in the future.

What is ........ RFID?

What is it? rfid

Is an abbreviation for Radio Frequency Identification.

This is a term used to describe a type of wireless technology used to identify objects, animals (or people).

What does it look like?

There are two parts to the system.

1. The tag.
The simplest version is a tiny microchip that contains a code identifying the thing to which it is attached / glued to.

The microchip is often connected to a flat spiral aerial that allows it to work by radio signals.

2. The Reader.
rfidThis machine sends a radio signal to the tag asking for its code. The tag senses the request and sends back its unique code. The reader can then connect to a computer or database and uses the code to identify what the object is (or the identity of the person the tag is attached to).

The system works over a foot or so, which is fine when the tags are guaranteed to be close to the reader.

The handy thing about the tag is that it needs no power at all - no battery needed. This is because the reader sends it enough radio power to turn on whilst it is being interrogated.

Are there other types of RFID?

Yes, the no-battery versions are great for cheap, non-critical tags as might be used in a book-sleeve or shirt package.

But if it is really important to have reliable identification then there are more expensive and larger battery-powered versions. These use higher radio power and so they transmit over a much greater distance (100's of metres).

These kind of tags are used for very expensive items such as military stores or toll booth systems where you will be charged for using a road or rail system.

Who uses it?who uses rfid?

1. Businesses that want to keep track of their stock as it moves from one place to another.
For example, many parcel delivery companies now offer the ability for you to check where your parcel is as it is being delivered. They can do this by attaching an RFID tag on the parcel, then a reader at each main point of its journey keeps track of its progress.

2. Security systems that can sense the identity of the person wanting access to a restricted area.
The person wears an RFID tag, so when they approach a reader, it can request an identity check without the person having to do anything.

3. Anti-theft
Many shops use RFID to deter shop-lifting. Have you noticed some shops have some tall objects standing either side of the doors? You have to walk between them in order to leave the shop. This is part of an RFID system. Many of the more expensive items in the shop will have hidden RFID tags. If you try and walk out of the shop, the Readers either side will request the tag for its code - that code is checked against a database to see if it has been paid for yet. If not, the alarm sounds. Another reader is located beneath the desk by the till. As you pay, they slide the object over the reader to register it is as having been been paid for.

4. Passports.
Many countries, including the UK now use RFID tags inside passports. The tag not only identifies the person, but also stores a digital photograph and a record of their movement in and out of the country. In order to reduce the chance of someone 'skimming' that information, the passport contains a metal film to prevent them being read when closed.

Video News

See the BBC video news item on RFID here

What is ........ Virtual Reality?

What is it?vr

When many people think about the term 'virtual reality', they imagine a scene like the one on the right where somebody is wired up to a computer wearing an odd helmet and making weird movements in the air. However, there is a lot more to virtual reality and it has some incredibly practical uses, so read on.

'Virtual' reality means that the user is fully immersed in a world or artificial environment that the computer has generated.

As you walk around the virtual world your view changes in line with what you would expect in real life. Things get bigger as you walk towards them and smaller as you walk away. Also the direction of sounds move as you move around, once again giving you the impression of a real scene.

How does it work.

There a number of systems but they have some common features that include:-vr2

1. A set of goggles that controls what your left and right eyes see. By providing slightly different views into each eye, your brain is fooled into thinking that the scene is 3D. Virtual chairs look solid and so on.

2. Other wearable input devices are used such as gloves that detect your finger movements. As you wiggle or tap your fingers on a virtual control then the computer carries out the command, such as turning on a virtual television.

3. Headphones to control what you hear.

The other part is a powerful computer that can create the graphics and sound in 'real time'. These images may be projected onto the walls and floor of the room. So you can walk around freely.

How good is it now?vr3

It is good enough to physically affect someone in it. For example, when they may be shown a scary situation such as a fire appearing in front of them, their heart will beat faster and breathing speed up.

This shows that the VR is convincing enough to cause an effect. Which is the whole point of VR really.

The graphics are "OK" but not realistic by any means. But the odd thing is that people react strongly even in a low-res scene. It is the situation that matters, not what it looks like.

Is it a game?

Not really, a game is made for entertainment and excitement. But VR is used for more serious purposes (although you could imagine a VR game world).

For example, architects have used basic VR systems for a while to allow clients to 'walk' around their new design.

VR is being used by researchers / therapists to help patients overcome phobias and anxieties. The person is placed in a VR scene where they experience a tame, controlled version of what vr4they are afraid of. For example, someone might be painfully shy, so the therapist may put them in a busy virtual place where 'people' come up to them and try and talk (these avatars would be controlled by the therapy team as well). Slowly the person becomes used to the situation and can relax.

Some soldiers have suffered distress on the battlefield and need help to cope and so VR is being used to take them through a carefully controlled version of what gave them a problem.

Some doctors and dentists are using virtual reality with their patients. People with severe burns suffer from incredible pain when their wounds need redressing. Researchers have found that by allowing them to use virtual reality during treatment, their awareness of pain was greatly reduced.

Another important use of VR is training for dangerous situations where it is unethical or impractical to practice the real thing. For example a large fire on an oil rig would never be set up, but in a VR system that is perfectly possible and so workers can practice the emergency in a safe environment.

See the medical burns story http://arstechnica.com/news.ars/post/20081114-snowy-game-vr-goggles-take-burn-victims-minds-off-of-pain.html

What are the downsides to VR?

If you have ever been sea-sick or travel-sick then a poor VR set-up might make you feel the same way. This is because you are seeing one thing but your brain is getting a different story from your sense of balance. When what you see and what you feel do not match (like on a ship) then you may feel ill.

Another downside is that VR is very complicated and so needs expensive equipment to set up and run. So proper VR games are a long way away.

And the future?

Display technology will continue to improve and so VR will become ever more realistic visually. Sufficient computing power is here already for that. But it is the input and output devices that willvr5 have to improve. For example researchers are working on better devices to control the sense of touch and smell.

In the future it may be practical to use VR to safely fly a remote control aircraft as if the pilot was really in the machine. For example flying the remote-control aircraft into a hurricane or volcanic eruption to take scientific readings. Sensors on the real aircraft would allow the pilot to see, hear and even feel what is going on in the virtual reality version but without any danger to life and limb.

It could also be applied to remote controlled submarines that explore the sea looking for oil and mineral reserves or perhaps exploring other planets such as Mars and Titan in the far future.

What is .......... GPS?

What is it?

It stands for Global Positioning System.

GPS is a satellite based system that allows you to know your position anywhere on Earth.

Why was it developed?

It was developed for the USA military to allow soldiers to know exactly where they were regardless of whether it was day or night, deep in a jungle or in a barren desert. It is still owned and controlled by the USA military.

How does it work?

It makes use of a method called 'triangulation'. You often see this being used in action films where the villains are being tracked on a map as they move about.

Tracking a villain.... Imagine that you have a machine that can tell you the distance between yourself and the villain. That's all it can tell you - just the distance. So you draw a circle with you as the centre. The villain is somewhere on that circled line.

Triangulation

Now a colleague also lets you know how far the villain is away from them. So draw another circle around him. So you know that the villain must be at point A or Point B. But which one?

So you need a third colleague to let you know their distance and this pinpoints the villain's location. Hence the word 'triangulation' - three measurements can pinpoint a location.

gps

So how do satellites help?

Well, if you can measure the distance between yourself and at least three satellites (preferably four), then your location on Earth can be worked out. How accurately you can pinpoint your location depends on how accurately you can measure the distances to the satellites. Commercial Sat-Nav systems can measure to within a few metres.

Where is GPS used?

It now has a vast number of uses. For example

* In cars - satellite navigation systems are becoming common gps

* Lorry Fleets: Used to track and locate vehicles

* Military - its original purpose, to help soldiers in the field.

* Shipping - to navigate the seas.

* Farming - to track crop growth and fertilizer application.

* Leisure - Mountaineers, hikers, explorers.

* Crime - offenders can now be 'tagged' with a GPS device to make sure they stay where they should.

What is the future?

GPS has become so widespread in everyday life, that some regions want to control their own GPS for their citizens. For example the European Union have been developing a similar system called Galileo.


What is Bluetooth?

What is it?
bluetooth

Bluetooth is a type of radio communication and networking protocol combined.

Why was it developed?

It was developed so devices close to one another could exchange data.

By close, we mean within about 10 metres of one another even if there is a wall in-between.

Advantages of Bluetooth

One advantage with Bluetooth working within a short range is that it only needs a tiny amount of radio power to work, less than a thousandth' of a Watt. ( A torch light uses about 1 Watt to light the bulb) so you can see this is a tiny amount of power. This means it is ideal for battery operated devices such as mobile phones.bluetooth

Another advantage of Bluetooth is that it is completely automatic - every Bluetooth enabled device will sense the presence of another device within range. They can do this because they share a 'network protocol' that allows them to share data.

Another clever thing about the protocol is that it can reduce interference from other Bluetooth devices that are also exchanging data nearby. For example if Sam's mobile is exchanging data with Tom's mobile this will not interfere with Sarah's mobile also exchanging data with Mary's mobile nearby.

Another very common way of sending data over a short distance is to use Infra-Red. This is used widely in TV remote controls. The disadvantage of Infra-Red over Bluetooth is that you must point the control directly at the device.

Examples of how it is used.

A Bluetooth enabled phone will detect phones nearby and provide you with a list of usernames. You can then send a message, photograph or movie sitting on your phone to any of the usernames. They, of course, have to accept the offer but the rest of it is automatic.

Another common use of Bluetooth is 'hand-free' operation of mobiles in the car. You wear a hands freebluetooth headset that senses your mobile nearby. This allows you to talk using the mobile, but most importantly, keeping your hands on the steering wheel!

Bluetooth is also used to exchange files between a PDA and a desktop computer - great for keeping your diary and work in synch.

Trivia Facts

Fact 1: Harold Blatand
"Bluetooth" refers to Harold Blatand, the 10th-Century Danish king who brought together the Danes and Norwegians.


Fact 2: Andretti Green Racing Team
The famous Andretti Green Racing team stays connected while racing using Bluetooth devices.


Fact 3: One billion devices
By the end of 2006 the number of Bluetooth devices in circulation will rise to more than one billion.


Fact 4: Bluetooth in the car
It is predicted that by the year 2012 one-third of all new cars will have built-in Bluetooth connections.


Fact 5: Bluetooth enabled medical equipment
Bluetooth enabled medical equipment is being employed by an increasing number of hospitals around the world, in an effort to improve patient care.


Fact 6: Digital images sent over Bluetooth technology
You can view digital pictures on your television by sending images from laptops or mobile phones over a Bluetooth connection to a media viewer.


Fact 7: Printing with Bluetooth technology
You can send files from a computer to a printer wirelessly using Bluetooth technology.


Fact 8: Multi-point pairing
Multi-point pairing enables you to simultaneously connect two Bluetooth enabled devices (e.g. a phone can be connected to both a PC & a pair of headphones).

Source of factoids: Thanks to Motorola.