Welcome

True digital professionals are hard to find; those that have experienced all of the tech advances, bubbles, crashes and failures yet have kept their skills up to date, remain focussed on success and can deliver results.  Having worked with tech as a hobby (coding, gaming, graphics) since 1985 and professionally since 1993, my experience is considerable.

Even though I’m 100% employed, I like to keep my skills up to date as a UN Online Volunteer and some projects at no cost for continual professional development.  If you’d like to have a chat about working with me, please contact me.

My Expertise

  • Apple Teacher with Swift Playgrounds

    In January 2017 I completed the Certified Apple Teacher with Swift Playgrounds qualification in all OSX and iOS applications.

  • Energy Efficiency for Domestic Heating

    I qualified with a City & Guilds Level 3 Certificate in Energy Efficiency for Domestic Heating (England and Wales) in 2005 in order to design and participate in the assessment process for these skills.

  • Information Technology with a Masters Degree

    I have a Master of Science (Information Technology) from the University of Liverpool specialising in Web Development, Databases, Networking, E-Commerce, Security and MultiMedia.

  • Hospitality Educator

    I qualified as a Certified Hospitality Educator in 1996 in the AH&MA professional development programme.

  • Accountant

    I have a BA (Hons) Accountancy & Finance from the UK and trained professionally as a Chartered Accountant.  I’m up to date with all aspects of financial accounting and company law.

  • Electrical Installations

    I achieved an EMTA Award in Domestic Electrical Installations in 2005 and a City & Guilds BS 7671 Level 3 Certificate in the Requirements of Electrical Installations in 2008 in order to design cabled infrastructure for networking and to understand the assessment process for similar qualifications.  

  • Drone Pilot

    I’m an experienced, ethical and fully insured drone pilot for gathering media in 4K and high quality photography with GPS and data mapping for marketing purposes and for inspections of impossible or difficult to reach structures, within legal and technical limits.

  • Change / Transformation Manager

    Since starting in tech, every position has involved a large degree of change or transformation to whoever I’m working with, sometimes painfully for those involved.  As a result, complex change is a normal part of life for me.  I’ve learned a great deal about aligning the ultimate objective of the change with proper change management for those involved, especially in getting people involved and working towards the same goal.

  • Product Manager

    I spent 2 years managing an artificial intelligence software product, written in LISP / LISL, for page layout for publications in the publishing industry.  Being responsible for taking it from 1 installation to making new revenue in excess of £100,000, I achieved this target and surpassed it by 1,000%.

  • Webmaster

    I arranged hosting and hand-coded my first HTML website in 1995.  Since then I’ve managed all aspects of many creatively designed, high-performance, secure, e-commerce, SEO optimised and complex web sites with media, copyrighted content and handling the entire workflow.  From 2007 this grew into mobile and database applications.

  • Trainer / Coach / Mentor / Faculty

    I’ve spent over a decade as a visiting and full-time trainer / faculty member at several higher education and professional training organisations.

    I’m fully capable to expert level in under graduate, post graduate, professional and executive education in my specialist areas and am comfortable in face-to-face, blended and online environments with international professionals and students (experience with ~100 nationalities).

    My approach uses enhanced teaching with technology, flipped classrooms and mentoring style for deeper and personalised learning.  Student feedback and ratings are excellent.

  • Director

    I worked in my own companies both running them and working with clients as necessary for many years.  I handled all of the strategy, legal, people management, financial planning and reporting and regularly was hands-on with training and technology matters.

  • Startup Founder

    I have started several businesses.  The earliest one was at the age of 15 as a DJ and since then I’ve started businesses in:

    • training for electrical, gas and oil engineers
    • web hosting, web and mobile applications development and training
    • seo and digital marketing
    • property investments
    • financial projection services
    • startup coaching and investments
  • Head of Information Technology

    I moved into professional information technology as a support engineer dealing with hardware troubleshooting, LAN ethernet based networking, virus / spyware removal and data recovery.  I progressed to management during this time and also started doing some application training in spreadsheets.

  • Accountant & Auditor

    After graduating from University, I trained as a Chartered Accountant in the UK.  This was a useful time and enables me today to fully prepare, audit and interpret financial statements.   Despite this useful time, I found my technology skills appealed to my employer, our clients and to myself more than being an accountant/auditor and despite a useful and happy time with this employer, I decided to focus on technology and moved on.

My Blog...

  • Video Format Choice

    In order to decide upon the format, encoding, quality, bitrate, keyframes and the method by which the video clip will be viewed in any online media presentation, we must first consider the target audience’s requirements. These requirements are screen resolution, browser requirements, compatibility (e.g. lack of support for Flash on target devices) and bandwidth limitations. […]

  • Machine Language

    Machine language is a group of commands executed by the central processing unit (CPU) and is the lowest-level representation of a computer program. It is easily understood by the CPU and is often represented in binary or hexadecimal digits, making it extremely difficult for humans to read quickly (if at all). Assembly language is similar […]

  • Home Network Design

    On a daily basis I use Windows Vista Business on a part dynamic, part static TCP/IP based network with DHCP controlled by a Netgear Router on a 5Mbit WAN cable connection, which offers the LAN (up to) a gigabit Ethernet connection and IEEE 802.11n (Wireless-N) connections. There are 2 x 2TB (Terabyte) Buffalo TeraStations (Linux […]

  • Hashed v Indexed Database Files

    Using a random (hashed) file allows access a specific master entry according to the value of the entry’s search field (or master key) directly regardless of the location in the data. Hashes usually use a division-remainder algorithm to determine a record’s position (records with same position are grouped in lists). Using an index file is […]

  • Personalisation in eCommerce

    Ask an average Internet user to describe what eCommerce means and the response will largely be something along the lines of buying goods online.  This broad definition, however, only begins to describe the systems involved in E-Commerce.  A citation by Goy et al (2007) of the Ameris Glossary of IT Terms (2005) (which is no […]

  • So Long Logmein Free – No Free, No Pro

    News today that LogMeIn have announced, without warning, that their LogMeIn Free service is no longer available from today (here is their blog link).  This was their email: Important changes to your LogMeIn Free and Ignition account. As of January 21, 2014, LogMeIn Free is no longer available. To continue using remote access, you will […]

  • Routers & Routing Algorithms

    Routers organise and distribute network traffic both with a local area network (LAN) and externally. In order to do this each machine on the network and any access externally must communicate with the router by the use of an IP address. For example, on my home network my router has two IP addresses: an internal […]

  • Typed Programming

    A programming language is “typed” if, for one type of data, functions or calculations cannot be performed by another type of data, hence the meaning “type” from data-type rather than type in the written/keyboard sense. For example, “abracadabra” is a string of text and it would not make any logical sense to, say, divide this […]

  • Distributed Databases

    A distributed database is one stored at multiple locations on a network that usually appear to users and applications as a single database. In a distributed database system a user, usually via the application interface, can seamlessly, subject to permissions and locks, access and modify the data in the databases at any network location. In […]

  • Machine Independence

    Machine independence implies that any program can be used on any machine (regardless of the version, machine language or assembly language). In reality it is used more to mean that a program can be used on two or more machine types but not all machines types. Take, for instance, the Pascal programming language. This is […]

  • Online Ambush Marketing

    Online ambush marketing has been around since the popular adoption of the Internet in the 1990s and takes many forms of “increasing the chances that you will see the wrong ads at the wrong time without your consent” Laudon & Traver (2010, p480). The term ambush marketing implies that it is seen as a negative […]

  • Flashback: A Useful Screen Recording Multimedia Application for Windows

    A multimedia application, as its name suggests, can take many forms and the tools used for deployment often require the use of many tools. Even industry leading applications such as Adobe’s Creative Suite, which attempt to provide all of the tools that the multimedia publisher may need, cannot possibly cover all aspects of what a […]

  • Programming Language Levels

    Machine language, also called machine code, is a set of instructions, usually, but not always, represented in binary digits, which presents data to the processing functions of a computer in a way that enables the fastest possible throughput given resources. Low-level symbolic programming, or assembly language, is the next step above machine language where mnemonics […]

  • UK Data Privacy Law

    UK data privacy law is governed by the Data Protection Act (1998) and its application is overseen by the Information Commissioner’s Office (ICO) who, like other European Union member states, is based on Directive 95/46 of the European Union (Directive 95/46/EC) which is related to the protection of individuals from the misuse of data. There […]

  • If Information Wants to Be Free . . . Then Who’s Going to Pay for It?

    This quote from Kaser (2000) rightly states the position we are in with regard to copyright. Creators of relevant works were largely unprotected by law until 1709 in the UK, when Parliament passed the “Statute of Anne” law protecting copyright of books and other written work, this was adopted in the USA in 1790. This developed […]

  • Network Monitoring

    Kurose & Ross (2010, p772-774) list network monitoring as covering several aspects of the technical failure, performance and capability including: Failure Detection, Host Monitoring, Traffic Monitoring, Rapid Changes in Routing, Service Level Agreement Monitoring and Intrusion Detection. In recent years with the move away from the dedicated point-to-point large scale networks that were used to […]

  • Lossy and Lossless Graphical Formats

    Multimedia data is, in this context, any collection of data from images / graphics, video, audio and text and since their widespread use it has been important to use compression/decompression techniques to enable the fastest possible transfer speed over limited (and variable) speed connections whilst maintaining either full quality or acceptable quality to the recipient […]

  • Microsoft Lumia 535 v iPhone 6 Plus (Seriously)

    It may seem like a strange comparison, but today I was forced to do it.  My iPhone 6 Plus developed a fault and as the only warranty service is at least a couple of hours away from my location, I had to mail it in.  As a result I didn’t receive a temporary replacement and […]

  • PHP and Security

    PHP was initially designed to script web pages with security as one of its primary considerations, however as it can act either as a common gateway interface (CGI) script on the server-side (e.g. run in CGI mode on some servers) or on the client side to generate content for browsers. PHP has become a popular […]

  • Web Multimedia

    The web (and web multimedia) became commonly used in the early to mid 1990s (in countries with decent communications infrastructures), nearly three decades after the birth of the Internet, largely for viewing text and light graphics due to connection speeds being far removed from what they are today. From my own personal experience, a 14,400 […]

  • Client Buffer

    If the client buffer can contain the whole media and x(t) (Fill rate) is greater than d (Drain rate) then when the request is made for the media, assuming that congestion control on x(t) does not occur, x(t) will be the available connection bandwidth and the media will enter the buffer at this rate until […]

  • Microsoft Access Relational Database

    In my personal experience I have never used a Microsoft based relational database except Access when first learning about relational databases. Having been schooled in PERL, I often used flat file for simple databases (therefore an extremely dependent data structure design), MySQL databases for larger web based systems or Oracle for large enterprise based multi-site […]

  • Digital Evidence & Forensics

    “Digital evidence is widely regarded by judges, juries and law enforcement as valuable, accurate and impartial” (Kessler (2009)). Locard’s Exchange Principle (1910) states that “every exchange leaves a trace” and is a founding statement of forensic science, digital or otherwise. Forensic evidence to secure criminal a conviction has become commonplace in the last twenty years […]

  • What is a bot?

    A bot is an automated piece of software that is resident on a compromised host which is usually intended to fulfil a purpose that is malicious in intent. The nature of the bot is that the owner of the compromised host is unaware of its existence and it also protects the bot’s controller from identification. […]

  • JavaScript Validation of Form Fields: Integers

    <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”> <html xmlns=”http://www.w3.org/1999/xhtml”> <head> <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ /> <title>JavaScript Validation of Form Fields: Integers</title> <SCRIPT LANGUAGE=”JavaScript”> function ValidateNumber(number) { // setup list of acceptable characters var Valid = “0123456789”; // setup variable for checking each character var input; // for each character input (up to the length […]

  • Network Link Layer

    The link layer offers services to the network layer that allow delivery of packets from source to destination point to point (hosts, routers, etc.). In effect the link layer ensures (or guarantees) that the network traffic is delivered by controlling the flow of data whilst correcting and communicating errors. The link layer does this by […]

  • TCP Session Hijacking

    Transmission Control Protocol (TCP) hijacking (or TCP session hijacking), which is considered to be a relatively old attack that does not occur a great deal today, takes place when an attacker is able to access information contained in the TCP packet between server and client and thereby take over the connection. Harris & Hunt (1999) […]

  • Web Usability

    An exact widely accepted definition of “web usability” is extremely difficult to provide as it greatly depends on the viewpoint of those undertaking the study. Some researchers examine usability from the perspective of pure design, others from technical elegance and performance when it is evident that a only a properly selected mix of these can […]

  • Software Piracy

    Dorrell’s article on Copyright Levies (2005) summaries copyright tax law and the issues with decriminalising piracy as “free for personal use” and the difficulties in policing this in addition to how commercial use may be decided upon and calculated and distributed. Having said that, from the perspective of a piece of information or a product […]

  • DropBox Incorporates All Hard Drive Locations Easily With MacDropAny

    Do you, like me, want to have things stored in your huge new DropBox space (or other cloud service) that are not in your DropBox folder?  Meaning you can incorporate other locations on your hard drive or external storage into DropBox, without affecting the space it takes up on your hard drive? Have a look […]

  • Statistical Multiplexing

    Statistical multiplexing, such as used in packet switching, is based on estimations of activity and therefore the likely packets that will take place over a communication medium (Chandra (2003)). As these estimations change over time the communication medium may be used by many packet sources and destinations and the transmission of packets is subject to […]

  • Application Gateway

    An application gateway is used to connect a particular type of application over a network connection to one or more specific hosts that serve the purpose of the application when the router may or may not allow that type of data transfer. Therefore an application gateway working with a router filter could stop a direct […]

  • Transport Protocol Services

    Kurose & Ross (2010, p92) list the four classes of services that a transport protocol can provide as “reliable data transfer, throughput, timing and security”. The reliable data transfer service is one that guarantees the delivery of data between source and destination in applications that require such a guarantee. An example of such a data […]

  • Google v Bing

    On first viewing, Google’s home page differs greatly from Bing’s; Google still has its clean white background with logo and search box, obviously still influenced by Marissa Meyer (Laudon & Traver (2010)), whereas Bing’s home page is dominated by a high quality photographic image.  It is interesting to note however that Google have added the […]

  • Client-Side Versus Server-Side Scripting

    There are various advantages and disadvantages of client-side scripting and server-side scripting. The main advantages of client-side scripting, with scripts such as JavaScript, although JavaScript can be used for server-side scripting (Tmunotein, I (2004)), are performance and usability, whilst the main advantages of server-side scripting are compatibility and complexity. For client-side scripting, once the content […]

  • Circuit and Packet Switched Networks

    A circuit-switched network is one where there is a dedicated connection between source and destination, such as a telephone line designed to handle voice calls, which is dedicated to a particular single application for the duration of the activity. These were designed in the late 1900s, according to Copeland (2000), however in computer networks a […]

  • Solving Computational Problems

    The term solvable is defined, in algorithmic terms, as “a computational problem that can be solved by a Turing machine” (Black, 2004). This means that a solvable problem must follow a certain logical progression with rules or constraints that do not contradict each other (there is a feasible solution) and a solution must me obtainable […]

  • The Domain Name System (DNS)

    The Domain Name System (DNS) is the method by which hostnames are translated into Internet Protocol (IP) addresses in the application layer to enable network requests to find the correct destination for that request. As people, in general, prefer descriptive unique hostnames rather than having to use unique numbers as with an IP address, the […]

  • Database Management System (DBMS) Design

    The starting point of every purchase of a client/server DBMS is to define the objective and design of the whole system as these dictate the considerations required to ensure information system success. This, of course, is always subject to budgetary constraint and acceptable specification and performance compromises often result from the ideal solution. In my […]

  • Protection of Personal and Sensitive Data

    Personal data generally identifies us (names, date of birth, social security number, address, etc.) and sensitive data could be more generally used to form an opinion about us (religious beliefs, habits, political views, sexual orientation, etc.). Issues of data protection are not limited to those regarding computing technology; the internet, closed systems or the systems […]

  • Star Schemas

    Star schemas are a common data model used in data marts and warehouse databases where a central table of “facts” is used which are viewed in terms of dimensions (a perspective on a given fact, such as time) and each dimension table contains the attributes of that dimension. For example, if a fact was a […]

  • Message Confidentiality v Integrity

    Message confidentiality is quite different to message integrity as confidentiality implies that the ciphertext has not been read whereas integrity implies that the data has been received as intended (i.e. as it was sent without alteration). As such confidentiality and integrity are mutually exclusive and one can exist without the other. Suppose a message was […]

  • Intelligent Agents

    “The mind is to the brain as software is to hardware” (Rapaport, 1996) In the early days of artificial intelligence, despite hardware needing basic software to operate as the quote above illustrates, intelligent agent implementation attempts were often hardware based where some form of physical sensor and actuator were involved. Over time these became more […]

  • Colour Correction in Monitors & Print

    “Image fidelity refers to the ability of a process to render an image accurately, without any visible distortion or information loss.” Silverstein & Farrel (2004) The process of copying a piece of artwork to a computer screen, in its weakest form, would be either translating the image (from email, storage, internet, etc.) from a graphics […]

  • Bye for now Apple Watch

    In summer 2015 I bought an Apple Watch to see what the fuss was about or if there should be more fuss made about it.  I don’t wear a watch normally, I have my phone for telling the time. So, first impressions were that it wasn’t particularly attractive but it was new tech and I […]

  • Query by Example (QBE) & Structured Query Language (SQL)

    Query by Example (QBE) and Structured Query Language (SQL) are industry standard languages for querying data to obtain information from relational database systems. Query by Example (QBE) was developed in tandem with SQL in the 1970s by IBM (Zloohf) where the technique of using search terms was used to filter data based on data content […]

  • The Disruptive Power of Google Glass

    Google Glass was introduced as a beta product in 2013 in to explore the technology’s potential, not as a completed product.  This technology was intended to be the next evolution in mobile computing as a “deeply integrated self-tracking tool” (Johnson, Becker, Estrada, & Freeman, 2014) aimed at the displacement of smartphone and enhancement of smartphone […]

  • Is JavaScript Irrelevant?

    In a web environment, JavaScript enables the publisher to perform certain in-page interactions, validations and calculations in the client-side browser that are not as easy to achieve on the server side with the same performance and interactivity that the user experiences. None of these functions are essentials for a web site to function however more […]

  • Dynamic HTML

    According to the World Wide Web Consortium (2003) Dynamic HTML describes “the combination of HTML, style sheets and scripts that allows documents to be animated”. Well implemented dynamic HTML (DHTML) techniques that are cross-browser compatible enhance the user’s experience often guiding them through processes such as forms, navigation and e-commerce by, amongst others, the indication […]

  • The ARPAnet Crash of 1980

    The ARPAnet crash of 1980 was a bizarre event as Rosen (1981) stated “network-wide disturbances are extremely unusual in the ARPANET”. The event was caused by a somewhat coincidental failure of an Interface Message Processor (IMP) in two manners which created an unlikely situation and the failure. IMPs were the translation processes on the ARPAnet, […]

  • I was just about to leave DropBox

    I’ve been paying for 200GB on DropBox for two years now at $199/year.  I use about 90% of my available space.  I also paid for PackRat, their unlimited undo service, just in case of a disaster.  I really need about 2TB to hold all of my data but that was too expensive (plus my hard […]

  • The Deep Web

    The Deep Web was estimated at “500 times as much information as traditional search engines ‘know about’” Kay, R. (2005) and that Google’s index of 8.2 billion web pages was “the tip of the iceberg” with the Deep Web accounting for over 840 billion pages from the top sixty Deep Web providers alone and growing […]

  • SQL History

    The standards associated with the initial versions of SQL added much needed conformity to a specialism that could have become as diverse as programming languages leading to an even greater increased system complexity today; we have to thank IBM in the 1970s for making the first version available in the public domain and for standardisation […]

  • Big-O notation and traditional grade school algorithms for addition and multiplication

    Big-theta notation is used in the analysis of an algorithm to give an estimate of run-time complexity and hence a measurement of performance.  An algorithm to add two numbers together each having N digits assuming Hindu-Arabic positional notation of digits can be written in many ways, two amongst them being; by splitting the digits into […]

  • X3D

    X3D is “an XML-based language for representing 3-D objects and scenes” according to Chapman & Chapman (2009, p710) and as such is very well suited over the Virtual Reality Modelling Language (VRML) to Internet applications for three reasons, according to Bullard (1999) as quoted by Cover Pages (2006), why VRML did not succeed in its […]

  • Wireless Network Modes

    A wireless network can operate in one of two modes: infrastructure or ad-hoc. Infrastructure mode implies that each host that is connected to the network via the wireless device uses network infrastructure for services whereas ad-hoc mode implies that network services are provided by the host itself. For example, in infrastructure mode on a network […]

  • Multiple Simultaneous Connections

    In order to open multiple simultaneous connections to a web site, the browser must be capable of and configured for HTTP 1.1 connections. HTTP 1.1 brings the ability for a browser (or agent) to connect to a web server many times with the objective of increasing performance as prior to this standard HTTP 1.0 (and […]

  • Pseudo Code

    Pseudo code is intended to be programming language independent to allow the reader to understand the algorithm without specific programming language knowledge: procedure FlavourConcensus while (no single flavour has been chosen by 10 people) do ( if (this is the first round of questions) then (state that our aim is to reach a consensus) else […]

  • Forums: Rhymes of History

    In ancient Greece, the Agora was “the area in the city where free-born citizens could gather to hear civic announcements, muster for military campaigns or discuss politics” (Mark, 2009).  The effect of those ancient Rhymes of History forums at the time was limited geographically, however, the messages and discussions spread globally and remain relevant in today’s society […]

  • Middleware

    Middleware is software or an entire system of hardware and software that connects components of a system (applications, databases) or entire distributed systems together acting as a facilitator, translator and/or adapter.  The aim of middleware is to allow disparate systems to interoperate with each other as a single system to achieve features that would not […]

  • Data Warehouse v Data Mart

    The data warehouse versus data mart debate is driven by benefit to the organisation and is often evaluated on the basis of scale. A data mart represents a subset of data whereas a data warehouse represents the organisational or enterprise view as a whole. Essentially the data warehouse represents every information aspect regarding the content […]

  • Network Address Translation (NAT)

    Network Address Translation (NAT) allows a group of network connected devices behind a NAT capable router to connect to other external network services such as the Internet using a single Internet Protocol (IP) address (i.e. all devices appear to have the same IP address to any external device or service). IF we assume that the […]

  • Basic Encoding Rules (BER)

    Basic Encoding Rules (BER), Kurose & Ross (2010, p798-799), ensure that byte streams sent over a network are sent correctly if the object has been defined using ASN.1. The BER encoding of the quoted text would use a 4 at the beginning to indicate that the data is an octet string, followed by a 4 […]

  • Browser Cookies

    Cookies are innocuous text files stored on the user’s computer, accessed via the browser, and referenced by a unique identifier provided by a web site. Over and above the unique identifier the cookie can contain any information that the user has entered in their interaction with the site. Assuming that the user’s browser is set […]

  • TCP and UDP Startup

    In the TCP client-server application, the server program must be running before the client, as the client will endeavour to create the connection with the server as soon as it is started. If the server fails to respond to the client when it opens this connection then the connection will fail, causing the client-server application […]

  • Operational & Decision Support Databases

    Operational databases are designed to follow processes dictated by their objectives according to business rules. In essence this means that operation databases follow prescribed procedures and produce and store data that fulfill the operational business objective. Operational data changes constantly (and therefore does not exist in a single state for a long time), is low […]

  • A Sample Customer Data Protection Policy

    As an ethical company that operates in accordance with data protection and privacy laws and best practises, it is important to us that you feel secure that your personal and sensitive data is in safe hands. Our data collection and retention policies for customer information are fully compliant with national data protection laws and all […]

  • Mainframes

    Many computing professionals over the age of 30 can remember the days of the mainframe at University. Systems that required large specialist air conditioned rooms, support technicians and systems that were, in comparison to the non-technical user base of today, only intended for those with specific requirements who had the skills to use the system. […]

  • Red Queens: DVDs versus Video-On-Demand

    A Red Queen is an evolutionary concept that exists when “a set of interacting species reaches an evolutionary equilibrium at which all their rates of coevolution exactly balance each other.” (Rosenzweig, Brown, & Vicent, 1987).  In technological terms, this means that competing technologies often result in two product leaders that have to run to keep […]

  • Problem Solving Techniques

    Although formal problem solving techniques, such as those used in the programming languages SPARK or Ada, have not yet found widespread usage (Glenn Brookshear, J. (2009)) most algorithm developers use informal problem solving techniques, usually concerning the use of test data and considering expected results and adjusting the algorithm as necessary and re-testing. From experience […]

  • Electronic Monitoring of Employees

    In the 1920s Frederick Taylor first considered the use of observation (time and motion) to assess an employee’s ability at work in order to increase efficiency and reduce wastage (cost). Taylor monitored workers’ actions and drew conclusions regarding their quality and speed as to whether the worker in question was positive or negative (when compared […]

  • Video Capture Format: Size, Resolution & Frame Rate

    Using Camtasia to capture a thirty second video clip (Camtasia was unable to capture audio) of a television programme playing in actual size mode, which was 746 x 466 pixels in 16bit colour, in iTunes, I published this for various uses that were pre-set by Camtasia and obtained the following results: Use Format Size (Kb) […]

  • Is HTML Dead?

    HTML was developed as a standardised approach to information mark-up and new versions have certainly been developed over the years to increase complexity, readability and to take account of the increasing use of graphics and presentation techniques. However if we compare XHTML, which the World Wide Web Consortium has focussed its effort on since 1999, […]

  • Lessons Learned from Therac-25

    The death or serious injury of 6 people by Therac-25 was caused, as concluded by Nancy Leveson’s (University of Washington) commission, by Atom Energy of Canada Limited’s (AECL) “bad software design and development practices” in addition to institutional flaws. The issues with Therac-25 were not a single event, they occurred over a period of time […]

  • Multicast

    Multicast is intended to keep the computing overhead on the source computer and network at a minimum by passing the data onto other hosts for duplication and distribution, where necessary, and implies that a data set only needs to be sent once from the host (potentially the system can have multiple data hosts contributing to […]

  • Entity Relationship Modelling & Normalisation

    Entity relationship modelling and normalisation is the second step in conceptual database design, after data analysis and requirements gathering, according to Coronel (2009). Using a “top-down” approach, high-level requirements are developed (business rules, entities, relationships, attributes and keys) and initial entity relationship diagrams drawn followed by normalisation. This is often the starting point to new […]

  • Quality of Service (QoS)

    “QoS is one of the most important issues in networks in general, and particularly so in the Internet and other IP networks.” CodeIdol Labs (2009). The four pillars of Quality of Service (QoS) are additional components that are added to the existing Internet Protocol (IP) infrastructure to support “perfectly synchronised transfer of packets of different […]

  • Browser DOM Event Handling

    It is in the commercial/success measurement (e.g. gaining market share) interest of browser developers such as Microsoft, Google, Mozilla, Opera and Safari and others for their browsers to be able to understand all code parsed on all web sites and balance this requirement with their own objective; to become the most popular browser. These goals […]

  • Functional Database Dependencies

    A functional dependency exists when one attribute is related to another and one of the attributes determines the other. Functional dependencies can be full, partial or transitive, depending on how the derivation of the attribute in question is formulated. Full dependencies exist where an attribute is determined entirely by another (e.g. a student telephone number […]

  • Code Surfing

    Taking JavaScript as our example, at the very basic level, it is possible to require that JavaScript is enabled to view the page and then, assuming this is turned on in the browser, disable the right click option to view the menu and hence the option to view the source code. Unfortunately this protection does […]

  • Network Adapters

    A network adapter or network interface card/controller (NIC) may be wired or wireless and allow a network device to communicate with other devices and applications on any accessible internal or external network connection, Kurose & Ross (2010). On wired NICs there are different types of connections; however the standard is generally now an RJ45 type […]

  • Web Surfer Identification

    There are many user voluntary and involuntary techniques available to identify web surfers. Every request (click or keystroke) passes not only the information relevant only to that particular request over the web but also some extremely poignant data in the information packet. This allows the resulting server and every server that the information passes through […]

  • Multimedia v Graphical User Interfaces

    Historically multimedia interfaces were quite different to graphical user interfaces (GUI) and certainly required set of skills with some commonality and some differences. When the personal computer became widespread and GUI’s were first developed (e.g. Macintosh and Windows) these were new and different ways of interacting with the system, software and devices with many different […]

  • Tablets in the Classroom

    Tablets in the classroom enhance… Presentations become interactive when every student has the use of a tablet in the classroom allowing engagement by different media. Course Resources can be much more varied than textbooks.  Mobile apps, rich multimedia and interactive books can all be used to enhance the student experience. Instant Communication, or feedback, is […]

  • Local v Distributed Databases

    In a local database the data resides in a single location (e.g. a single machine) whereas many locations can be used for a distributed database yet these are presented as a single database to the user/application by the use of a database management system (which also handles any internal complexity). The key advantage of a […]

  • Turing Test

    This Turing interrogation was demonstrated, without the mention of Turing, in the movie Bladerunner (1982) where simulated people (“replicants” with advanced artificial intelligence), in addition to real people, could be subjected to what was termed a “VoiceComp” test where a series of linked questions were asked of the test subject in order to provoke subconscious […]

  • Cross Browser Compatibility

    Geng, S (2010) stated that “it’s important that your website is usable across all major media” however, before it is possible to explore cross browser compatibility issues for a particular web page, it is important to establish the target audience for that web page. Establishing the target audience involves understanding not only their demographic make-up […]

  • Effective Database Design in Complex Systems

    Effective database design in complex systems is the skilled balancing and compromises taken of three aspects; design standards, processing speed and information requirements (Coronel, Morris & Rob (2009)). Database design standards are subject to the technology used, which dictates required technical standards, and best practices, which is gained by the designer through training, experience and […]

  • Database Connectivity with the Internet

    Internet applications have connected to online databases for many years and it is becoming more and more common for sites to connect to databases too to serve their pages through content management systems. As a result database connectivity is an important part of designing any Internet based system. In my experience using MySQL and PHP […]

  • Random Nonces

    Random nonces (numbers used once) are used in SSL handshakes to provide protection against the SSL communication being eavesdropped on and replayed. If an attacker was to attempt to record such a handshake and then to replay the signal in the hope of achieving the same response as the original signal then this will not […]

  • Cyber Bullies

    Bullying has existed for as long as creatures have had to stake out their place in any social system and before the civilised world started considering equal human rights was treated as a part of life that we just had to deal with. Electronic bullying or cyberbullying is a form of harassment mainly associated with […]

  • Asynchronous Transfer Mode (ATM) & Gigabit Ethernet

    In order understand the suitability of high speed network capabilities for videoconferencing applications, we must first establish the general requirements of videoconferencing applications. Draoli et al (1997), admittedly during the early years of videoconferencing when networking was more expensive and less flexible than today (especially when considering “computing power restrictions”), concluded that in a 2-way […]

  • Recursitive Procedures

    A recursitive procedure is one in which a number of passes, depending the problem itself, are made in order to reach a solution to a problem where the results of the process immediately preceding the process being considered are used to complete the current process. A famous example of a recursitive procedure is the Fibonacci […]

  • Internet Governance

    Governance of the Internet, and therefore eCommerce as they inextricably linked, until the mid 1990s was largely based with bodies in the United States (US) as those systems were developed originally for the use of academia and military in that country. Since then, global widespread adoption of the system for eCommerce has presented many issues […]

  • Private Branch Exchange (PBX)

    A Private Branch Exchange (PBX) is a private network of telecommunications devices that share one or more connections to the public network. Historically a PBX was a collection of physical cables that connected telephones to a switching mechanism that communicated with the public network and this evolved into different types of telecom devices (e.g. fax […]

  • Computer Industry Regulation

    Professions such as medicine, law, finance and others (especially in more advanced economies) that may have an impact on society as a result of their actions have been documented over the centuries and their codes of practice have been modified and legally adopted by their members in order to provide a framework of responsibility. Such […]

  • Database Locks

    Locks are used in a database management system (DBMS) to attempt to ensure that no conflicts arise during the processing of data (transactions). Locks are represented by a variable for each piece of data that indicates its current status which informs the DBMS the types of processes (if any) that can be carried out. Taking […]

  • Video Game Ratings

    In the UK we have a rating system for electronic games and this is overseen by the communications regulator OFCOM however games are awarded classifications by the same body that classifies movies, the British Board of Film Classification (BBFC), however this body only examine games if they have “human sexual activity” or “gross violence”. A […]

  • Queuing

    The queuing issue is one of “in what order job should be handled” versus “central processing unit (CPU) and memory utilisation” with the objective being to process the queue as efficiently (quickly) as possible (assuming of course that all jobs are processed properly) or to maximise throughput. In a FIFO system, or indeed any singular […]

  • Language Development

    Developments in language are not uncommon, especially with the advent of new technology that enables the entry and production of information faster. The earliest typewriter, first patented in England in 1714 but not used widely until the 18th century, allowed the printing of text on paper and standardised and speeded up the publication process. When […]

What people say about me...

  • "I recommend Paul highly to anyone who is looking for an expert in this field. Paul is a brilliant business problem-solver, and always works through to get the result you need. Nothing gets in the way and he will keep at the issue until it is solved. Paul is a consummate professional and I have been delighted with the work he has done for me - I will always go back to him as my first choice."

    Jonathan Bowman-Perks MBE
    Global Leadership Adviser
    JPA
  • "Paul has made running our web site easy and comprehensible. We are delighted with the service he provides."

    Daphne Taylor
  • "Paul has saved my sanity and business IT systems more than once where other so called experts have failed. He is exceptionally gifted in problem solving, web development, networks, business solutions and above all he is honest.  I can think of few people with his ability, integrity and he delivers what he promises.  I have no hesitation in recommending him to you."

    Dr. Roger Kingston