Monday, May 24, 2010

Still Battling with "Al-Furqaan Batabank" Database

Due to the teeming commitments in my hands, the "Al-Furqaan Databank" database I started sometime ago had to be halted. I thought doing that was better in order to save the piling job in my hands. Afterall, the School authorities knew very little about the progress of the project. I started it all voluntarily, to save them the pains of piling up their students' records. All this is now history.

I was reading one saturday morning when one of the teachers called me on phone that they "are seriously in need of the database now". They recently lost all the data they had in the school's system due to lack of backup and a concrete plan for records keeping. I was called upon to reinstal the operating system and start all over again. He told me that the school is procuring a new system and there is an urgent need for a small database to take care of their records.

I swinged into action immidiately. I located the saved database, looked into it and made a plan for completion. Already, there are forms, and sample queries backing all the tables created. After studying the state of the database, I found that, based on my earlier plan, the database is still in need of the following:

  1. Design report templates of various styles;
  2. Customise all the input forms already created (including data validation/security/control, updating, searching/querying forms);
  3. Feeding empty forms with the required data samples for test;
  4. Creating codes and feeding same into the input forms designed for it;
  5. Linking related tables for cross-data-entry;
  6. Creating and customising User Login Interface for the database;
  7. Editing all "Close" buttons.
These are the most important outstanding activities to carry out immidiately. In due course, as usual, I shall post all the images of the related activities already conducted, and the latest ones to be carried out.

Tuesday, March 17, 2009

Major Qualities of a Web Browser

Qualities of a Browser:

To many people using the Internet, the type of browser they use does not matter to them, as long as it clip_image002fetches them the web pages they are looking for. This group of people are mostly found in developing countries, where online transactions are conducted at a minimum level. However, such people might be surprise to learn that with the rate at which businesses and commercial transactions are being ported from offline to online, there is the need for the browser to provide you with “net safety”. It should equally provide you with a reasonable speed; it should be simple, dynamic and should not consume the largest portion of your system resources, to avoid unnecessary crashing of your applications. These, in a nutshell, are the five major qualities of a browser: security, speed, simplicity, dynamism and optimum performance.

A modern web browser should provide you with the security you need as you browse through the pages of the Internet. Such security services include protecting your operating system from virus infections, system compromise, and from giving some bad guys at the other end the opportunities to use your system as a scape-goat while attacking other systems in the process. Hackers (or Crackers) can use your system from a remote location on the Internet as a garbage collector or an attack agent, without your knowledge. And this happens through the browser you use for navigating the infected pages or sites on the Internet. A browser must also protect you from unnecessary pop-up windows, especially while visiting some commercial websites for window-shopping or filling one form or the other. A pop-up window is a browser window which pop-ups immediately you opened a particular site or window, without your will or knowledge. About 90% of them are commercially oriented; meaning they carry junks of advertisements from the mother site or different sites. However, in addition to the commercial messages they carry, a lot of them also carry what are called malicious codes. Malicious codes are computer codes designed to be executed on the client system as a result of a click from the computer user. Such codes are hidden within the page, and as you click the related links or images on the page, they interact directly with your operating system and hide themselves there, permanently. Before you realise it, they have started generating information about your movements on the net, or rather, stealing your passwords and other private information, down to their master. All these are possible within some minutes, in as much as your system is connected to the Internet. However, there are pop-up windows that are purely harmless, especially those ones that pop-up while you are filling registration forms from WAEC and NECO websites, or while doing your semester or session registration from your school’s website. Those ones are not harmful. In either way, one should read the content of a pop-up window before clicking any link thereof.

Another threat a web browser must keep you away from is what is today known as Phishing. Phishing is the art of faking a website, identically. Some crooks have developed the habit of faking the most popular websites they know people use so often for their commercial activities on the Internet; either as customers or clients. In developed countries where online transactions are so common, phishing is ranked as one of the greatest headaches to people shopping online. The purpose is to steal private information like credit card numbers, social security numbers, email passwords or other secret information, among others. What a “net-phisher” does is to fake the site of one of the most popular banks around, or online shopping mall, taking note of all the most common features of the site; including the website address. For instance, let’s assume that the genuine URL of Guaranty Trust Bank Plc is www.gtbankplc.com. It may be possible to find another fake site with a similar address, like www.gtbank.com, or www.gtbnigeriaplc.com, as the site address. For those who are still guessing the correct address of the bank, any of the three addresses above can come to their mind, and before they realise it, they are in the wrong site. As they entered their private account information, a program has been put in place to trap such information, stored it in the crook’s server at the other end. A user can realise that he is in the wrong site, only when he finds it difficult to carry out the normal business he is used to (like checking account balance, effecting transfers and so on), and finally moved out. Of course he cannot carry out his normal transactions since it is a fake website; requests for information of any kind cannot be guaranteed. By then, the hacker has taken control of his private information without his knowledge. Finally, the browser you use so often should also give you a permanent shield anytime you download stuff from the Internet. Because it is very common to download infected files or software programs that come packaged with malicious codes (malware), which also execute themselves anytime you run the application on your system. In fact, these are very common scenarios on the Internet.

It is indeed categorically difficult today to find a browser which has no any security feature against all the above listed issues. Due to their daily spread across the Internet, software developers have put a lot of measures to guard against contacting any of them. For instance, each and every browser can now trap unnecessary pop-up windows through the popular pop-up blocker program embedded in them. And the most famous browser, Internet Explorer, (versions 7 and 8) can now identify and pick up Phishing Sites, using its popular Anti-phishing Filter. There are also several security measures in most of today’s browsers, whose responsibility is filtering any content you are downloading from the Internet. Equally, browsers like the Mozilla Firefox and Google Chrome can now block you from launching a particular site which has been identified as an attack site, i.e. a site which hackers use as an attack agent for one dirty reason or the other. The browsers will alert you through blocking the site, warning you of the impending danger ahead. If you feel like being secured despite the threat, you can click the “ignore this warning” link at the end of the page, in order to enter the site. These are their default security settings though, and you can change it as you deem fit. We shall learn how to edit such settings as times goes on.

The second quality of a browser is speed. It should not take too long for it to launch. Meaning, as you launch it, it should appear immediately on your desktop. Though this depends on your operating system, however, a browser should not take more than a minute to launch except if the system is experiencing some internal difficulties.

The third quality of a browser is simplicity. Gone were the days when professional software designers find pleasure in designing a complex application. Today, the maxim “do it simple” has taken precedence over complexity. For a programmer to be a professional in his field, he must be able to design software that is simple for his audience/customers to use. Beyond that, customers must be able to do some troubleshooting when things went bad. People are after simplicity and not complexity, these days. A web browser that is used so often must be simple to use, easy to trace and change its important features and tools, and easy to repair minor problems when they occur.

Another quality a browser should possess is the feature of dynamism. Dynamism means being able to change the “core settings” of the browser; using the browser for another purpose other than web browsing; adding additional features and so on. This is a very good feature of modern web browsers, especially the famous Mozilla Firefox. There are three different categories of users of web applications or computer software at large. The first category is the beginner level. This category only needs the most basic feature of a program. Anything above that can hinder the learner’s learning progress. The second category is the intermediate, which is more familiar with the application than the first category, and above that, learning some advance settings or techniques of using the software. This category also finds pleasure in changing some common settings of the application, like changing security settings and so on, in the case of a browser. The final category comprises those that are proficient in software design. This category can change the feel, size and shape of the browser from either the browser source code, or any tool made available for that purpose. A good, modern browser should provide those features, to take care of the three categories. For instance, the popular Mozilla Firefox browser is dynamic; it gives users the opportunity to download and install additional applications that add more functionality to it, including multimedia and scripting add-ons, right within the browser window. This gives software developers (advance users) the opportunity to do a lot of tweaking to the application for a special purpose. This could only be possible as a result of dynamism.

Finally, a browser should not take up the larger part of your system resources. There are computer applications that take-up your system resources, and as a result, cause too much sluggishness and finally hangs-up the system or cause the programs you are running to crash in the process. Some browsers consume resources while you are running endless tabs in the background, while others consume little resources. You can sense this when the browser started running at a slow pace, or keeps telling you “Not Responding”, from the browser’s title bar. A good web browser should not consume or take up all your system resources. A good browser should work fine, diligently, without crashing or causing some other applications to crash due to bugs or any other reason.

Common Features of a Web Browser

Features of a Web Browser:

A simple, modern browclip_image002ser possessed six common features. These are physical features which the user uses in order to interact with the main program; either directly or indirectly. Starting from the top, you have what is called the Title bar; the topmost bar that indicates the title of the page being displayed in the current window, and the browser name. At the extreme right are the “minimise”, “maximize” and the “close” clickable icons. Under the Title bar comes the popular Address bar; the white space or line portion where you input the address of the website you are about to visit. The Address bar also contains additional clickable icons like the backward and forward buttons which sit at the extreme left, and the refresh icon that assists in refreshing the page in case of network problem. One other service available in the address bar is the Quick or Instant search box, which gives the web surfer a handy opportunity to look up or search for anything directly without having to go to the search engine site. Available search engines include MSN Live, Google and Yahoo! Search. Beyond the Address bar comes the Menu bar. As the name indicates, a Menu bar is a collection of “additional services” available for the web surfer, like the file, edit, view, favourites and the help menus. For instance, you can navigate to your system directory, save some web pages or print the current page directly, all using the file menu. The favourite menu allows you to bookmark the current page and so on. Down the Menu bar is the Tool bar. Simply put, the Tool bar is the visual representative of the Menu bar. It features virtually all the major services in “buttons”, “icons” or “clickable thumbnails”, for ease of use. Instead of going through the menu one at a time, one can easily select a service directly from the Tool bar. One additional feature available with the Tool bar of most modern browsers is the Quick tab icon. The tab is simply a “quick page” within a browser window. You don’t need to launch another browser window while browsing. With a simple click, you can get a new browser page within your working environment, especially with the Internet Explorer 7 and 8 versions; an empty Quick tab icon is always handy, waiting for your click. You can press “Ctrl + T” in Mozilla Firefox, to have a new tab launched. You can equally right-click a link within a web page, and select the “open in new tab” option. Within a second or two, the selected link will be launched in another tab. After the Tool bar is the Display window, the rectangular space sitting at the heart of the browser, below the Tool bar. The work of the Display window of course is to display the web site page you requested through the address you typed in the Address bar, remember? If you typed a wrong address, it will notify you immediately that “The Page Cannot be displayed” or something similar to that, depending on the type of browser you are using. Also, when your Internet connection is having trouble due to low bandwidth, excessive rain, or physical disconnection of your cables, the same page may show up.


The last one is the bar sitting below the Display window, called the Process bar. It tells you the speed at which the browser is loading up your pages, through messages like “40% loaded...” or “4 items remaining...” and the like, depending on the browser. When it finished loading the page, it notifies you that the browser is “done”. In some browsers like the Internet Explorer, the Process bar notifies you about the status of the site you are visiting; whether it is safe or not, through the “protected mode” notification it displays at the extreme right. In the case of Mozilla Firefox, it uses a section of the process bar for additional browser plug-ins, which are minimalist applications that assist the browser to carry out some additional functionalities. These are the major features of a modern browser. The arrangement of the bars or icons may vary depending on the design and looks of the browser.


Also, the new Google Chrome browser comes with a different looks and feels. All the same; looking at the content of the menus available at the top-right corner of the browser page, one can be rest assured of having all he needs. The browser come with all the mentioned features above, but they are arranged differently. A user new to Google Chrome may find it difficult to trace some of the most common tools he is used to in other browsers like the Internet Explorer. For instance, the title bar contains only the Google logo at the top-right corner; you can only find the title of your page on the tab hosting your active page. It is equally the title bar that is hosting the tab pages, which also gives you the chance to launch additional tabs as you need. Beyond the address bar is a new tab that holds your bookmarked or favourite pages. Also, the address bar in Google Chrome has an in-built search tool. You can type a word, key-word or a phrase to search directly from there, without having to go to the Google Search site. However, as you become used to the browser, you may find these tools and features handy, despite their mode of arrangement.


At other times, you may come across some additional bars, especially on the Internet Explorer, with all sorts of icons providing numerous services to the user. Such additional functionalities are third party applications in the form of Tool bars. For instance, there is the popular Windows Live Toolbar, and Google Toolbar which are mostly downloaded separately from the Microsoft and Google websites, respectively. With a Google Toolbar, you can access Gmail (the Google Email program), weather report, quick search and other available services. There is equally the Yahoo Toolbar providing similar services.

Tuesday, January 20, 2009

Modern Web Browsers: Evolution and History

Introduction:


Web browsers are the gateway to the cyber space. You must own a browser on your computer in order to browse any page on the Internet. What then, you may ask, are web browsers? A web browser (or “browser”, for short) is any computer program or application that is responsible for launching a computer user onto the Internet or a simple area network like the Local Area Network (LAN) at home, office or within any geographical location where such a connection is established; whether wireless or direct connection. If you ever checked your mails on a computer, or read some news headlines from a newspaper website, then you must have used a browser in your life. Web browsers today are of course a component of a branded new system, especially the popular Microsoft Internet Explorer which comes packaged into the Windows operating system. In fact, “mini” browsers are also found in most of today’s mobile phones and other portable devices like personal digital assistants (PDAs) and the like. Some browsers can be downloaded for free, like Mozilla Firefox, Safari, Opera, and Google Chrome, while others are owned for a fee; directly or indirectly. An example is the Microsoft’s Internet Explorer.


The work of a browser is encoding any page on the Internet that is embedded within Hypertext Mark-up Language (HTML) tags. Web pages are written, embedded and “coded” using the popular web design language called HTML, a simple web programming language the computer uses in order to display texts, videos, sounds and graphics/images. The moment you started a browser, it loads onto your system memory (RAM) and suddenly displays itself on the computer screen. As you type in the web site’s universal resource locator (URL) or address (e.g. www.google.com), it communicates via your system ports, through the aid of a “protocol” named Hypertext Transfer Protocol (HTTP), down to the computer (i.e. the Web Server) hosting the pages you requested, wherever it is located in the world. It does this through what are called “requests”. The system at the other end collects such requests, analyse them and sends back “feedbacks”, which in this case should be the web pages being hosted or stored in it. As your system receives the information, the browser then “encodes” it and display the content the way it is written by the Web Site Designer: with texts (including colours and shapes), sounds, videos, images and their arrangements within the browser display area. This, in short, is how your browser sources the web pages you requested from the Internet.


History:


Modern web browsers have the root of their history some eighteen years ago, clip_image002and since then, they continue to be one of the driving forces behind the success of the Internet as a technology. Before their appearance, web pages were accessed only through the use of a technology known as “gopher”. A “gopher” was a computer program, written for the purpose of surfing the net, which was then purely text-driven. The structure of a gopher was very simple: it displays the web site pages in totality, giving the surfer the opportunity to see the content of the entire site through “menus”. These menus serve the purpose of what is today known as “hypertext link”, “link” or “menu link”. You can access information through a particular subject by clicking a menu, which takes you down further. Considering the size of users then, one can say that gophers had served the right purpose. Because about eighty per cent of web surfers were either university lecturers or researchers from technology research centres within the US, Japan and other European countries. The content alone determines the users: most of which were research breakthroughs, reports and emails. Most of this information was also accessed through Bulletin Boards and Mailing Lists. No colours, images/pictures, sounds, or videos: only plain, black texts on a white background. However, as time goes on and looking at the restricted mode of opportunities a “gopher” offered, technology researchers embarked on finding an alternative.


The precursor was a research breakthrough in the year 1991 by a British Professor of Physics, named Professor Tim Bernes-Lee, when he founded the World Wide Web Protocol and the Hypertext Transfer Protocol (HTTP) which makes simple surfing from one website/webpage to another through a simple computer protocol; using a hypertext link or Universal Resource Locator (URL). Added to this was the enhancement of the de-factor web design language (HTML), which now provides ways for embedding images, videos, sounds and creating texts colours in a web page. This single act owned him the global honour, titled: The Father of the Internet, in the year 1993. This was what equally heralded the spread of these modern browsers, starting with the appearance of Mosaic 1.0 in the year 1993. The Mosaic browser was the first to trigger the so called Internet Boom or the Dotcom Boom that started in the early 90s. A year after the invention of Mosaic came the famous Netscape Navigator, a browser designed and owned by Mc Andreessen. Mr. Mc Andreessen was among the group that designed Mosaic, but later on left, founded his company - Netscape Communications - and invented the Netscape Navigator. Netscape took the market entirely from Mosaic and changed the surfing pattern of the Internet.


In the same year (1994), another browser called Web Explorer, founded by IBM Corp., was introduced into the market. IBM Corp. introduced its browser and packaged it together with its famous operating system, OS/2 Warp. In the year 1995 the browser market experienced yet another surge, when Microsoft Corp. launched its popular Internet Explorer, version 1.0. In the year 1996, again, another browser named Opera was launched. Opera took the market by surprise when it came with new features and the quality of speed, compared to other browsers in the market then. The browser was small, a minimalist application so to say, and was originally designed for use on portable devices like mobile phones and other similar devices. Despite its sudden popularity, Opera had not taken the market share from Netscape Navigator, which possessed about 80% then, with Internet Explorer trailing behind with 10%. Microsoft Corp, like all other browser makers then, introduced Internet Explorer as a separate product. But realising the challenge from Netscape Navigator, two years later the company announced that henceforth, its browser shall be incorporated into its Windows operating system. This gave the company an upper hand over the rest, and since then, it has been leading in the browser market, with the largest share margin.


From the year 2000 to date, browsers of different shapes and sizes had surfaced, some died naturally, while others undergone some drastic changes. For instance, another browser called Safari, designed for the Mac OS X operating system, was introduced in 2002. The founders of Netscape also moved the application to the open-source platform, where the browser was revamped and renamed Mozilla, in the same year. After a year or two, Mozilla was refashioned to Mozilla Firefox, a full fledged open-source browser with the second position of market share in the browser market today, behind Microsoft’s Internet Explorer. On the other hand, America Online (AOL), which took over the old Netscape through the years, finally retired it in 2006, urging its customers to “move over” to Mozilla Firefox. Finally, some few months ago, the online mega-giant, Google Inc., introduced a new browser called Google Chrome. It is a browser designed with a very good size, security and speed, at least for the meantime.

Monday, September 15, 2008

How Windows OS Consumes Your System's Memory

One of the many concerns of anyone buying a computer is the system memory size, especially if its running a delicate operating system like Windows (and Vista for that matter!). When I bought my HP 530, dual core, 80GB, 512MB-RAM, the first problem I kept battling with is that of managing the little RAM I have, to run the OS. Sometimes I find it very difficult to browse the net, as the system moves slowly, reluctantly and sometimes hangs off! When I could not contain the nuisance, I let go of it, through securing third party applications that could speed up my PC.

In this post, Microsoft Windows Vista's staff Mark Russinovish gave a clear picture of how Windows utilizes your memory while running its processes. Happy reading!

Friday, September 12, 2008

The Long Break - A Review

The Long Break!

The long break I took was purely on accident and coincidence. I have been overloaded with job and personal commitments. That is life for you. However, now that I resumed fully, there is the need for us to look back at the pending projects in the blog. I wish to apologised to readers for my long silence and absence. Lets look at the projects one by one:

The Database Project

This project is almost 90% completion. I have obtained about 20 of the School’s files for data input into the database. All the related forms for data input had been designed, including queries and reports templates. I posted a sizeable number of the 20 files collected, and Godwilling, may finish posting the rest by this weekend. There is no specific date for commissioning the project, I only let the School authorities aware of it. What remains are just finish up, or rather putting finishing touches to the database.

I equally wish to write a complete manual in Hausa language for the proposed users of the database. Also, a visit to the school recently revealed that the School’s computer is in order. Though the machine is running Windows XP, the office program is 2007. So there is little problem with regards to porting the application. This is just a little update, more are on the way.

My Python Lessons

The Python Programming language I started learning some 5 months ago seems to snatch my entire periods, especially these days. The book, Learning Python, written by the famous Python programmer, Mark Lutz, is very interesting. I am presently in chapter 18 – Modules. The python language is simple, flexible and easy to port to different platforms. After a journey through the different chapters of the book, I was able to cover enough, if not everything about elementary programming in the language. To mention a few, I finished the lessons on data types or Objects – Numbers, Strings, Lists, Dictionary, Tuples and Files (open). I equally of recent, covered the different Python Statements and Expressions, Functions and Scope, and presently studying Modules, the fundamentals of all.

Within this period of my absence here, I discovered other python stuff that are directly related to the language, like the numeric extensions called NumPy, and other capabilities of the language with regards to processing numbers, image processing and how the python language can be ported to the Mobile phone as a platform for programming standalone applications. It is indeed a very interesting experience.

After Learning Python, I hope to reach out to other books written by the same author, like Python Programming, where he detailed python’s capabilities in application programming. Other books to looked at includes Dive into Python, and Python Programming for the Absolute Beginner.

In all, my little experience with Python makes me grow in love with the language, and I have finally made up my mind that Python has come to stay with me, FOREVER!

Thursday, March 20, 2008

Update on the Access Database Project

The last time I posted something concerning the Database Project was when I discuss on the general organisation of the project, in its entirety! By then, the whole project was in the design stage. But now, God willing, a lot of things are on ground; including the entire database.

I have designed all the related tables, created queries that will go through them, design reports that will assist in obtaining relevant data from the tables, and finally, each and every section of the database that requires data entry have been gifted with a simple form for the data entry job. A more detailed explanation is provided below:

1. Tables: There are four sections that made up the database, entirely. The Students Records Register contains all the relevant data fields in the table, including a little information about the parents/guardians. Then comes the Staff Records Register, which is a table containing relevant fields about each and every staff of the school; whether a teacher or a non-academic staff. There is also a table for the financial records of the School. This table includes both the income and the expenditure aspects of the school. I call it Finance Records. The last table contains a list of all account codes representing income or expenditure and the nature of both. This is the Account Codes Table.

2. Queries:
Using the Design Query tool in Access, I designed some query samples based on the little data I entered as a test, and it worked fine. I have a query template for each and every table designed.

3. Reports: I also designed a sample report for data contained in the finance table, especially. However, I decided to use my query template in designing the forms. This assisted me in no small major. Though such reports are subject to the data available in the tables, they are handy and can be tweaked around to make some changes.

4. Forms: I have a form for data entry for all the tables. For some tables (like the income and expenditure), I used the query mode to create a data entry form for them. But in some other cases, like that of the Students Records Register, I used the raw table for the form design.

Pending Issues

Before I proceed with the real live-data-entry, I would like to make some changes to the background of some of these objects created. I need to tweak the properties of all the tables data types; setting validation and making some defaults fields enhancement. And since almost all the forms are simple in nature, I need to retouch them, change the layout and arrangement of the forms. Likewise the report templates created. I need to make some changes. In the final analysis, will want to look at macros and what activity I need them to carry out. I also want to create a user entry and a very good switchboard to enhance user friendly interface.

Keep checking the entries!