I often wonder how life would be like if we could use technology to extract data from the human brain as we see in movies. Like lodging a microchip into the brain that can transmit imagery from the things we imagine, dream or remember, and even text from the things we think.
Life would not be private, but maybe crime could be controlled. But on a darker note, the nature of every human would be exposed. On the upside, we could create our own graphics from the imagination and transmit those images electronically directly from the brain to devices. Graphic designing on a whole new level.
There would be more astounding consequences on ICT. The way we communicate via social media would be almost telepathic.
So anyway, this has sparked curiosity on how graphics cards work because a graphics card is lodged onto the motherboard so that the CPU (the brain of the computer) can translate binary data into an image you can see on the screen (Tyson and Wilson, 2001).
Jeff Tyson and Tracy Wilson describe how the graphics card receives information about the image from the CPU that is carrying out instructions from a software application. It then decides how to use the pixels on the screen to create the image before sending that information to the screen through a cable.
They also explain how the graphics card bears the load of creating an image out of binary data because this is too demanding of a process for the CPU. It uses a motherboard connection for data and power (however newer cards need more power so they also have a direct connection to the computer's power supply), a processor to decide what to do with each pixel on the screen, memory to hold information about each pixel and to temporarily store completed pictures, and a monitor connection so you can see the final result.
A graphics card is a printed circuit board like the motherboard and houses the Graphic's Processing Unit (GPU) and RAM for memory and a BIOS chip (Tyson and Wilson, 2001). The GPU is like a CPU except it does the complex mathematical and geometric calculations specifically to render graphics. The RAM connects directly to the digital-to-analog converter (DAC) which translates the image into an analog signal that the monitor (screen) can use thus sending the final picture to the screen through a cable.
If we had a graphics card lodged in our brains, we would need biotechnology to transfer the information about the images we conjure in the brain to the graphics card to an external device. Wouldn't that be neat?
References:
Tyson, J. and Wilson T.V. (2001) How Graphics Cards Work [online] Available from: https://computer.howstuffworks.com/graphics-card.htm [Accessed on 8 October 2018]
Monday, October 8, 2018
Saturday, August 18, 2018
Firebird SQL
Here's where we see the beauty of open source software. "Open source software", according to Opensource.com, means that the software's source code is freely accessible and can be inspected, modified and enhanced by any programmer, plus it's freely shared so anyone can use it for free without worrying about license fees.
Firebird SQL is a relational database management system much like the Microsoft owned SQL Server, except it's open source. Yay! Proprietary software is opposite to open source software in that the creators have exclusive ownership of the source code and it's not free.
Firebirdsql.org lists all the features of Firebird SQL which are compatible with the ANSI SQL standard which means you don't have to learn another standard other than SQL (Structured Query Language), which the WhoIsHostingThis website describes as the standard language for Database Administrators; you can continue using your SQL skills with Firebird. The server-side scripting however, is different from Microsoft SQL Server's Transact SQL as portrayed by the DB-Engines website. You will have to learn PostgreSQL which is not that much different so can be easily learned especially if you know Transact SQL.
This means a great deal for developers and developers in training and many organizations in that by using Firebird SQL they get the same benefits of SQL Server for free and can use it on a number of hardware and software platforms whereas Microsoft SQL Server supports only the Windows operating system and Linux as of SQL Server 2017.
References:
Firebird SQL is a relational database management system much like the Microsoft owned SQL Server, except it's open source. Yay! Proprietary software is opposite to open source software in that the creators have exclusive ownership of the source code and it's not free.
Firebirdsql.org lists all the features of Firebird SQL which are compatible with the ANSI SQL standard which means you don't have to learn another standard other than SQL (Structured Query Language), which the WhoIsHostingThis website describes as the standard language for Database Administrators; you can continue using your SQL skills with Firebird. The server-side scripting however, is different from Microsoft SQL Server's Transact SQL as portrayed by the DB-Engines website. You will have to learn PostgreSQL which is not that much different so can be easily learned especially if you know Transact SQL.
This means a great deal for developers and developers in training and many organizations in that by using Firebird SQL they get the same benefits of SQL Server for free and can use it on a number of hardware and software platforms whereas Microsoft SQL Server supports only the Windows operating system and Linux as of SQL Server 2017.
References:
- Opensource (n.d.) What is Open Source? [online] Available from: https://opensource.com/resources/what-open-source [Accessed 18 July 2018]
- Firebirdsql (n.d.) Features [online] Available from: https://www.firebirdsql.org/en/features/ [Accessed 18 July 2018]
- WhoIsHostingThis [n.d.) ANSI SQL Standards [online] Available from: https://www.whoishostingthis.com/resources/ansi-sql-standards/ [Accessed 18 July 2018]
- DB Engines (n.d.) Firebird vs Microsoft SQL Server [online] Available from: https://db-engines.com/en/system/Firebird%3BMicrosoft+SQL+Server [Accessed 18 July 2018]
Wednesday, July 25, 2018
Smart Cities
Imagine living in or visiting a city where you could find parking easily using an app through a smart parking meter through which you could also make digital payments, or where traffic does not get too congested because of smart traffic management, or where public transport is efficient through smart public transit, or where sanitation has been greatly improved...
IoT Agenda (2017) discusses these features of a smart city - built-in with sensors for its smart function even in buildings to ensure public safety by monitoring the structural health of buildings.
A smart city is defined as a municipality that uses information and communication technologies to increase operational efficiency, share information with the public and improve both the quality of government services and citizen welfare.
Some examples of smart cities listed include Kansas City which consists of smart streetlights, interactive kiosks and more than 50 blocks of free public Wi-Fi. Available parking spaces, traffic flow and pedestrian hotspots are all publically available through the city's data visualization app.
San Diego is also a smart city listed on IoT Agenda, which installed 3,200 smart sensors in early 2017 to optimize traffic and parking and enhance public safety, environmental awareness and overall livability for its residents. Solar-to-electric charging stations are available to empower electric vehicle use, and connected cameras help monitor traffic and pinpoint crime.
Some examples of smart cities listed include Kansas City which consists of smart streetlights, interactive kiosks and more than 50 blocks of free public Wi-Fi. Available parking spaces, traffic flow and pedestrian hotspots are all publically available through the city's data visualization app.
San Diego is also a smart city listed on IoT Agenda, which installed 3,200 smart sensors in early 2017 to optimize traffic and parking and enhance public safety, environmental awareness and overall livability for its residents. Solar-to-electric charging stations are available to empower electric vehicle use, and connected cameras help monitor traffic and pinpoint crime.
The construction of smart cities from the ground up has also already begun. According to Forbes (2018) Bill Gates has invested $80 million toward the development of Belmont, a smart city in Arizona. There are also plans for autonomous vehicles and a sophisticated data hub in Belmont.
As if straight from a Hollywood basement, smart cities depend entirely on ICT to run its operations daily and improve the quality of life for its citizens. Rome was not built in a day and so are smart cities gradually accommodating urbanization and transforming urban living.
References:
- IoT Agenda (2017) Smart City [online] Available at: https://internetofthingsagenda.techtarget.com/definition/smart-city [Accessed 25 July 2018]
- Forbes (2018) The Smart Way to Build Smart Cities [online] Available at: https://www.forbes.com/sites/hbsworkingknowledge/2018/04/04/the-smart-way-to-build-smart-cities/#44f1b5347b19 [Accessed 25 July 2018]
Friday, July 6, 2018
A Dichotomy Between Agile and RAD Development
Developing software requires a methodology to produce a quality software product on time and within budget.
There are various methods within the Software Development Life Cycle (SDLC) to select from and each can be selected according to the project's needs. But many organizations these days employ one method for all their software projects.
On the Version One website agile is described as an iterative and incremental methodology where the software team iterates through a project, delivers software incrementally, and continually plans and tests the software application.
References:
Version One (n.d.) The Evolution of the Agile Software Methodology [online] Available at: https://www.versionone.com/agile-101/ [Accessed 6 July ]
Tutorials Point (n.d.) SDLC - Agile Model [online] Available at: https://www.tutorialspoint.com/sdlc/sdlc_agile_model.htm [Accessed 6 June]
Tutorials Point (n.d.) SDLC - RAD Model [online] Available at: https://www.tutorialspoint.com/sdlc/sdlc_rad_model.htm [Accessed 6 June]
There are various methods within the Software Development Life Cycle (SDLC) to select from and each can be selected according to the project's needs. But many organizations these days employ one method for all their software projects.
On the Version One website agile is described as an iterative and incremental methodology where the software team iterates through a project, delivers software incrementally, and continually plans and tests the software application.
On the other hand, RAD (Rapid Application Development) is described as being based on rapid prototyping and iterative and incremental development without any specific planning involved, by Tutorials Point.
A prototype is a working model that is functionally equivalent to a component of the product (Tutorials Point).
Below are the advantages and disadvantages of Agile and RAD development listed on Tutorials Point.
Agile | |
Advantages | Disadvantages |
Is a very realistic approach to software development. | Not suitable for handling complex dependencies. |
Promotes teamwork and cross training. | More risk of sustainability, maintainability and extensibility. |
Functionality can be developed rapidly and demonstrated. | An overall plan, an agile leader and agile PM practice is a must without which it will not work. |
Resource requirements are minimum. | Strict delivery management dictates the scope, functionality to be delivered, and adjustments to meet the deadlines. |
Suitable for fixed or changing requirements | Depends heavily on customer interaction, so if customer is not clear, team can be driven in the wrong direction. |
Delivers early partial working solutions. | There is a very high individual dependency, since there is minimum documentation generated. |
Good model for environments that change steadily. | Transfer of technology to new team members may be quite challenging due to lack of documentation. |
Minimal rules, documentation easily employed. | |
Enables concurrent development and delivery within an overall planned context. | |
Little or no planning required. | |
Easy to manage. | |
Gives flexibility to developers. |
RAD | |
Advantages | Disadvantages |
Changing requirements can be accommodated. | Dependency on technically strong team members for identifying business requirements. |
Progress can be measured. | Only system that can be modularized can be built using RAD. |
Iteration time can be short with use of powerful RAD tools. | Requires highly skilled developers/designers. |
Productivity with fewer people in a short time. | High dependency on modeling skills. |
Reduced development time. | Inapplicable to cheaper projects as cost of modeling and automated code generation is very high. |
Increases reusability of components. | Management complexity is more. |
Quick initial reviews occur. | Suitable for systems that are component based and scalable. |
Encourages customer feedback. | Requires user involvement throughout the life cycle. |
Integration from very beginning solves a lot of integration issues. | Suitable for project requiring shorter development times. |
References:
Version One (n.d.) The Evolution of the Agile Software Methodology [online] Available at: https://www.versionone.com/agile-101/ [Accessed 6 July ]
Tutorials Point (n.d.) SDLC - Agile Model [online] Available at: https://www.tutorialspoint.com/sdlc/sdlc_agile_model.htm [Accessed 6 June]
Tutorials Point (n.d.) SDLC - RAD Model [online] Available at: https://www.tutorialspoint.com/sdlc/sdlc_rad_model.htm [Accessed 6 June]
Sunday, July 1, 2018
Simulation Software
Although many software organizations do not use software simulation in the life-cycle of software projects because it takes time, money and human resources, it is a good idea in that the project team can early predict the dynamic of the end product to know what elements will work and it is also good for showing the client how the system will work and look like, for their confidence.
iSpring Solutions describes software simulation as a model of your software that demonstrates its key functions and operations.
As the economy is changing, a fast and flexible reaction to the market is required which is what Talumis explains on their website. To predict customer demands and future changes, software simulations are your best option.
Here are some of the uses for simulation software taken from anylogic.com:
- Simulation modeling solves real-world problems safely and efficiently.
- It provides an important method of analysis which is easily verified, communicated, and understood.
- Across industries and disciplines, simulation modeling provides valuable solutions by giving clear insights into complex systems.
- Simulation enables experimentation on a valid digital representation of a system.
- Unlike physical modeling, such as making a scale copy of a building, simulation modeling is computer based and uses algorithms and equations.
- Simulation software provides a dynamic environment for the analysis of computer models while they are running, including the possibility to view them in 2D or 3D.
- Simulation in business is often utilized when conducting experiments when a real system is impossible or impractical, often because of cost or time.
References:
iSpring Solutions (n.d.) What is Software Simulation? [online] Available at: https://www.ispringsolutions.com/articles/what-is-software-simulation.html [Accessed 1 July 2018]
Talumis (n.d.) What is Simulation? [online] Available at: https://www.talumis.com/what-is-simulation/ [Accessed 1 July 2018]
Anylogic (n.d.) Why Use Simulation Modelling? [online] Available at: https://www.anylogic.com/use-of-simulation/ [Accessed 1 July 2018]
Thursday, June 28, 2018
Angular JS is Your Programming Framework
Angular JS is a rich, clean and high performing web application framework and is open source software.
It is used for dynamic websites to enable seamless navigation to create a better user experience in most popular browsers.
As for security, Angular JS does not pose a threat to an organization's IT infrastructure because its focus is exclusively on data representation.
https://www.awwwards.com/practical-uses-of-angularjs-create-a-single-page-application-spa-or-a-website-menu-in-an-instant.html
https://stackoverflow.com/questions/28017816/what-browsers-does-angularjs-work-with
http://blog.backand.com/angular-enterprise-dev/
It is used for dynamic websites to enable seamless navigation to create a better user experience in most popular browsers.
As for security, Angular JS does not pose a threat to an organization's IT infrastructure because its focus is exclusively on data representation.
https://www.awwwards.com/practical-uses-of-angularjs-create-a-single-page-application-spa-or-a-website-menu-in-an-instant.html
https://stackoverflow.com/questions/28017816/what-browsers-does-angularjs-work-with
http://blog.backand.com/angular-enterprise-dev/
Tuesday, June 12, 2018
What is Git?
Git is an open source, secure and flexible version control system which is popular and widely used by developers around the world.
When you are creating software projects, you have to consider a repository for your projects and version control systems are a way for you to save versions of your code to access anytime and also for multiple developers to work on the same project.
Follow this link to learn about Git and begin using it: https://www.atlassian.com/git/tutorials/what-is-git
When you are creating software projects, you have to consider a repository for your projects and version control systems are a way for you to save versions of your code to access anytime and also for multiple developers to work on the same project.
Follow this link to learn about Git and begin using it: https://www.atlassian.com/git/tutorials/what-is-git
Subscribe to:
Posts (Atom)
How to Access the Metaverse
In February this year, Bernard Marr predicted that "in 2022, we'll see new, lighter, more portable VR devices, so instead of having...

-
In February this year, Bernard Marr predicted that "in 2022, we'll see new, lighter, more portable VR devices, so instead of having...
-
In light of a book I've been working on, which you can read about here , I thought I might do a bit of digging on brain-computer interfa...
-
The internet has established a new economy through cryptocurrency. I found a good read about Cryptocurrency in the article, What Is Cryptocu...