Today, I'm officially going to start my '100 days of Python Challenge'. I realise I'm starting this challenge a bit later than i said I was going too. However, some other stuff had to take priority over this challenge.
I'm going to aim to study this for one hour a day for the next 100 days, which is a realistic goal for me.
The main requirement for day zero, is to download and install Python.
To install Python on Windows; head over to https://www.python.org and download the latest version.
Python for Windows will automatically download 'IDLE' as well, which is a text editor for creating Python Script. Once installed this can be found in the start menu.
If you're running Linux, open the Terminal and type 'Python'. If Python is installed on the system, it will run straight from the Terminal. In the event that it isn't already installed, the Terminal will give you the pathway to type in to get it installed.
Once Python is installed on Linux, access it via the Terminal or open the 'Text Editor' application.
When creating Python Programs in Text Editor, be sure to save them as .py
This will then save your program as a Python executable which can executed by closing the text editor and reopening it.
Pretty simple, right?
I'm new to Python, so I am officially starting this challenge as a complete beginner. The first program I wrote was a standard Hello World program.
Hello-World-Program.py
print("Hello World")
Resources I'm going to be using for this Challenge are as follows:
- Py for iPhone
- Code academy (https://www.codecademy.com/learn/learn-python-3)
- Python Programming Third Edition book by Michael Dawson
I'm also considering signing up to one of the courses on Udemy, but I haven't decided on a course that I want to sign up for as of yet.
I will try and update this blog every 10 days or so, I think this will be a good way to document what I have learnt.
Over the next few days, I hope to learn more of the Python Syntax and create several basic programs which will incorporate a variety of different variables.
I realise this blog has been somewhat briefer than I usually aim to write, however, seeing as I've just started the challenge I don't have a lot else to add at the moment.
Please feel free to join in this challenge and let me know how you are progressing!
That's all for now!
Wednesday, 3 July 2019
100 Days of Python 1.0
Labels:
100 days,
Challenge,
Code Academy. Syntax,
Command Line,
Linux,
Programming,
Programs,
Python,
Terminal,
Udemy,
Windows
Sunday, 30 June 2019
Installing Ubuntu on a Virtual Machine
Installing Ubuntu Linux as a Virtual Machine
The software required for
this project is as follows:
- Virtualbox for Windows (Assuming you are running windows)
- A version of Ubuntu
There are several different virtual machines available,
which I'll document down later, it may be best if you go and discover which one
you like personally, although they all offer similar functionality.
For example, Windows 10 Pro comes with its own
virtualisation software already installed, called Hyper-V. However, I don't
have a copy of Windows 10 Professional.
For this
installation, we are going to be using Virtualbox.
Step 1:
- head too https://www.virtualbox.org/wiki/Downloads
From here, you click on 'Windows Hosts' and follow the straightforward
onscreen instructions.
Once the software has installed, there should be an icon
present on the desktop. If the icon is not there:
- Go to the Windows Start Menu
- Search for Virtualbox
- When you find it, right-click and 'pin to taskbar'
This is so that it can be easily found later and saves
extensive searches every time you wish to access it.
Step 2:
Find the version of Ubuntu you wish to install. For this example,
I'm going to use the most recent release, which is 19.04 (Disco Dingo).
Ubuntu can be acquired from: https://ubuntu.com/#download
The downloads page provides two Desktop options. There is
18.04 LTS, this is the long-term support edition. LTS edition stands for 'Long
Term Support' and is supported by Canonical for five years. The regular version
is support for six months.
Step 3:
When you have downloaded both pieces of Software, it's time
to apply them. Open Virtualbox, and at the top of the interface; Click 'new'.
That should open a new window, which I have entered the
following options:
Name: Ubuntu 19.04
Machine folder: C:\Users\user\VirtualBox VMs
Type: Linux
Version: Ubuntu (64-bit)
Step 4:
It's time to allocate the Memory Size of the machine, this
refers to the amount of RAM allocated to the machine for it to run processes.
for this example; I'm going to leave it set at the recommended, which is 1024MB
(1GB).
Step 5:
To create the Hard-Disk, select the option 'Create a virtual
hard disk now'.
-Click 'Create'
-Select 'VHD (Virtual Hard Disk)'
-Dynamically allocated Storage
-Assign the amount of disk space you'd like to be added to
the Virtual machine
-Click create
Step 6:
Now that you have created the virtual machine, it is time to
power it up and follow the on-screen instructions to install Ubuntu.
-Select Language and the option for 'Install Ubuntu'
-Select your desired Keyboard options, in this case I've
gone for UK keyboard, as that is what I have.
-Setup under Normal install and leave 'install updates after
install' checked.
-Installation type 'Erase disk and install Ubuntu', Select
this option, and Encrypt disk, if you'd like the home drive encrypted for extra
security.
To conclude setup; Create a username, name for your Computer
and a Password.
Passwords should always include Capital letters, numbers and
special characters. This makes it much more difficult for somebody to access
your data.
An example of a secure password: P@ssw0rd1!
Although I'd never recommend using the word 'Password' in
any format.
Congratulations! You've now installed a virtual machine and
a new Operating System. Have fun trying it out.
FAQ
How do I disconnect the mouse from the Virtual machine so
that I can use it on my actual machine?
Pressing the Ctrl key on the right-hand side of your
keyboard will free up the mouse, so that it can be used on your regular
machine.
What do the version numbers of Ubuntu mean?
The numbers stand for year: month that the distribution was
released, therefore, at the time of writing this, the most current release is
19.04. There are two versions released a year. One in April and one in October.
Are there any benefits to using a virtual machine?
You can create snapshots of the Operating system, so should
anything go horribly wrong whilst testing something, you can roll back to an
earlier time when everything was working perfectly.
When you have finished using the machine, make sure to save
all work and power it down, just like you would with a regular computer.
Labels:
19.04,
Canonical,
Computing,
FAQ,
Linux,
Security,
Ubuntu,
Virtual Machine,
Virtualbox,
Windows
Monday, 8 April 2019
If at first you don't succeed...
Hey everybody, today I'm going to talk about some positives and negatives that have happened to me in the last few weeks.
I'm currently studying part time with the Open University, studying towards BSc (Honours) Computing and IT. I'm in what is technically my second year, as I'm studying part-time whilst I work full time and raise children. The module I'm working towards right now is 'Cisco Networking'. So far, I have really enjoyed this module and it has been going well. It has enabled me to study a topic I'm deeply passionate about, whilst studying towards a certification alongside my degree pathway. This last weekend just gone, I participated in the first and only day school for this module. This enabled me to meet some amazing and interesting people, whilst getting my first actual hands on experience using networking equipment outside of Packet Tracer.
Going from just using Packet Tracer to being put in a room with a giant server rack, several computers and an insane number of different colour-coded cables was at first daunting.
While it seemed daunting at first, once I got paired up with people, the day got off to a good start and I soon had a feel for what my role was in the group.
The day school ended with an hour and a half closed-book exam. Now, closed-book exams have never been my strong suit. in essence, I panic a lot and my mind goes blank leaving me no option but to blag my way through the content. Unfortunately I scored a measly 27% on this attempt. However, going by my statistics for the course, I've scored quite highly. 85% for my first assignment, and 100% on my second assignment. Even on the day school assignment itself I got 100%. As disappointed as I am by this score, I've achieved so much and I'm not going to give up now. For example; last month alone, I passed my driving theory test, practical driving test and got my first job as an IT Support Engineer, whilst studying with the Open University and raising children. The people at work are incredible, very patient and supportive.
I have one assignment left for this module, which I'm hoping to complete within the next month. Using the resources available, I'm going to study harder and finish on a strong note, before hopefully sitting the iCND1 this summer.
The resources I have been using for this module, are:
-Introduction to Networks V6 Companion guide
-Routing and Switching Essentials V6 Companion guide
-David Bombal's Udemy Course (Which when i got it was available for about £10/$10) full name of the course (Cisco CCNA Packet Tracer Ultimate labs: CCNA Exam prep labs)
-CCNA Routing and Switching Portable Command Guide (Fourth Edition)
-Youtube
-#labeveryday
-Podcasts on Networking
If you're studying networking and are possibly struggling along with it, contact me, and lets try and work through some problems together. Or, refer to some of the resources I have listed above, to help you on your way. My two favourite resources in the last are the '#labeveryday' and 'David Bombal's Udemy Course'. David's videos are easy to follow and help to quickly increase confidence in Packet Tracer. Also, the best way to learn something, is by doing, which is why '#labeveryday' is also top of my list.
Thank you for all the support. I hope to post more content this weekend, so please stay tuned for that. I hope you all have an excellent and productive week.
Labels:
CCENT,
CCNA,
Cisco,
Computer Networking,
Driving,
Future,
Open University,
OU,
Packet Tracer,
Practical,
Theory
Sunday, 17 March 2019
Cyber Security
The modern world evolves more rapidly than any age previous, we live in an age where everything is digital, and i mean everything. There are TVs, Thermostats and Lights for your home, are just some examples of devices that can be controlled via an app on your mobile phone. Therefore, Cyber Security awareness is essential in protecting yourself online.
The most common cyber attacks take place through individuals who are not very security conscious, or just don't feel that cyber crime will affect them as they don't have anything worth taking. However, this couldn't be further from the truth. There is nothing on Earth more valuable than an individuals identity.
Some of the most commonly used passwords from 2018 are as follows:
123456
Password
Password1
qwerty
Along with this short list of passwords, another common password type is close family relations or pets. The reason they aren't good passwords is because, anybody browsing a social media account could easily find out about the life of the person they were 'stalking' online. People often put pictures of their family with a label underneath depicting what is taking place in the photograph. In extension of that, if the people in the photo also have social media, it is possible to tag them, enabling information to be found out more easily.
When creating passwords for online accounts, they should consist of a mixture of uppercase and lowercase lettering, with punctuation as well. for example; 'Pass@word1.' or better still '.1drOw@ssap'.
*note* these are examples and 'password' in any form should never be used as a password for any system, ever.
The password, naturally, will need to be something that you can remember, as passwords should never, ever be written down. There have been known incidents of people writing down their new password and taping it to their monitor, meaning that anybody could just walk past their desk, type in the login credentials and gain unauthorised access with minimal effort. The threat is doubled if that person happens to have administrator privileges and can make substantial changes to the data on the device.
Nobody is impervious to making mistakes regarding cyber security, there were several incidents in the news a few years ago, where government officials had been carrying laptops on a train journey. The machine in question had unencrypted sensitive data and was accidentally left on the train.
Sensitive information could be anything from login details to a social media account all the way up to details regarding online banking accounts.
It only takes a few details to steal your identity, and the more they know, the easier it is to impersonate you.
A common attack used by hackers is a skill known as 'social engineering'. An example of where this attack would be used; Would be a hacker phoning up a company pretending to be an employee that had misplaced or forgotten their details. If the hacker is able to provide details about the system or has access to account details but not the password, the person on the phone could potentially be tricked into creating an account for them as an employee of the organisation. Whereby the hacker would have successfully gained access to a confidential system without raising any red flags. This would then provide them access to confidential company information which they then maybe able to edit or delete, or possibly copy that information and sell it on elsewhere, giving other companies a leading edge with classified insider knowledge.
Another common attack on organisations come from within the organisation itself. Employees have access to information on secure servers with their login credentials, and it wouldn't flag any systems when they access the data, as they are proper clearance to view that information.
Another type of attack is known as a DOS or Denial-of-Service attack. This is where the attacker seeks to make company resources unavailable by disrupting the services of machines connected to the internet.
A DOS attack can come in several forms, one of which includes; overloading memory buffers preventing the system from carrying out its normal function, effectively shutting it down until the attack ceases.
Another attack includes flooding the target with data packets, again rendering their system unusable until the attack subsides. this type of attack is only possible if the target has lower bandwidth than the perpetrator carrying out the attack.
I hope you have enjoyed this brief overview of Cyber Security. As a reminder, it is also important to change your passwords on a regular basis to keep all of your data secure, and NEVER tell your password to another person, no matter how much you trust them.
If you enjoyed this blog and would like to see any of the topics within it, covered in more detail or would like to know about something else related to cyber security, then please message me and I shall endeavour to cover it in my future blog posts.
The most common cyber attacks take place through individuals who are not very security conscious, or just don't feel that cyber crime will affect them as they don't have anything worth taking. However, this couldn't be further from the truth. There is nothing on Earth more valuable than an individuals identity.
Some of the most commonly used passwords from 2018 are as follows:
123456
Password
Password1
qwerty
Along with this short list of passwords, another common password type is close family relations or pets. The reason they aren't good passwords is because, anybody browsing a social media account could easily find out about the life of the person they were 'stalking' online. People often put pictures of their family with a label underneath depicting what is taking place in the photograph. In extension of that, if the people in the photo also have social media, it is possible to tag them, enabling information to be found out more easily.
When creating passwords for online accounts, they should consist of a mixture of uppercase and lowercase lettering, with punctuation as well. for example; 'Pass@word1.' or better still '.1drOw@ssap'.
*note* these are examples and 'password' in any form should never be used as a password for any system, ever.
The password, naturally, will need to be something that you can remember, as passwords should never, ever be written down. There have been known incidents of people writing down their new password and taping it to their monitor, meaning that anybody could just walk past their desk, type in the login credentials and gain unauthorised access with minimal effort. The threat is doubled if that person happens to have administrator privileges and can make substantial changes to the data on the device.
Nobody is impervious to making mistakes regarding cyber security, there were several incidents in the news a few years ago, where government officials had been carrying laptops on a train journey. The machine in question had unencrypted sensitive data and was accidentally left on the train.
Sensitive information could be anything from login details to a social media account all the way up to details regarding online banking accounts.
It only takes a few details to steal your identity, and the more they know, the easier it is to impersonate you.
A common attack used by hackers is a skill known as 'social engineering'. An example of where this attack would be used; Would be a hacker phoning up a company pretending to be an employee that had misplaced or forgotten their details. If the hacker is able to provide details about the system or has access to account details but not the password, the person on the phone could potentially be tricked into creating an account for them as an employee of the organisation. Whereby the hacker would have successfully gained access to a confidential system without raising any red flags. This would then provide them access to confidential company information which they then maybe able to edit or delete, or possibly copy that information and sell it on elsewhere, giving other companies a leading edge with classified insider knowledge.
Another common attack on organisations come from within the organisation itself. Employees have access to information on secure servers with their login credentials, and it wouldn't flag any systems when they access the data, as they are proper clearance to view that information.
Another type of attack is known as a DOS or Denial-of-Service attack. This is where the attacker seeks to make company resources unavailable by disrupting the services of machines connected to the internet.
A DOS attack can come in several forms, one of which includes; overloading memory buffers preventing the system from carrying out its normal function, effectively shutting it down until the attack ceases.
Another attack includes flooding the target with data packets, again rendering their system unusable until the attack subsides. this type of attack is only possible if the target has lower bandwidth than the perpetrator carrying out the attack.
I hope you have enjoyed this brief overview of Cyber Security. As a reminder, it is also important to change your passwords on a regular basis to keep all of your data secure, and NEVER tell your password to another person, no matter how much you trust them.
If you enjoyed this blog and would like to see any of the topics within it, covered in more detail or would like to know about something else related to cyber security, then please message me and I shall endeavour to cover it in my future blog posts.
Labels:
2018,
CCENT,
CCNA,
Cisco,
Communication,
Computer Networking,
Cyber Security,
Passwords,
Secure
Wednesday, 6 March 2019
Networking Protocols - TCP/IP and OSI Models
Today I'm going to cover Protocols and Standards within Computer Networking, more specifically, the TCP/IP and OSI conceptual models for communication. We're going to look at how they link together to form the framework for device-to-device communication over local and worldwide networks.
There are a plethora of different types of Standards and Protocols in Computer Networking developed and worked upon by a variety of agencies. All with the striving goal of creating seamless, instantaneous communication. They are required, to govern systems and to ensure structure and reliability in the products available and the functions across multiple communicable platforms. In short, the conceptual model remains relevant whether a device, is running the latest Apple Operating System, Windows or Linux.
Network communications protocols can be split down into seven different layers using the OSI model. The OSI model was developed in 1984 by the International Organisation for standardisation (ISO) and remains continues to be the structure on which Network Protocols are based. 'OSI' is the abbreviation for 'Open Systems Interconnection Model'.
There are seven layers that make up the OSI model, and they can be remembered in a variety of different mnemonic phrases. for example;
The Physical Layer transfers data at the binary level. This means all data is translated into ones and zeroes before it is transferred along a network medium. Layer one also governs network media and signals; this includes network cabling and wireless transmissions of devices connected to the network.
At Layer 2 or the Data Link layer, bits are encoded/decoded and appropriate IP addressing information is added before the data frame can be sent across the network. If this wasn't done, the data wouldn't know its destination and would never arrive.
The Network Layer follows on from the Data Link Layer, and works on four basic principles to complete its job. It addresses and encapsulates the data before it is routed across the network, once it arrives at its destination, the packet is then de-encapsulated.
The Transport Layer opens up temporary communication between applications on a network, allowing the transference of data between the two applications.
The Session Layer opens up and controls the communication between several computers. Whilst it is active, it maintains and controls the temporary connections between multiple devices.
The Presentation Layer formulates the information that has been transferred over the network back into a readable/understandable format for the end-user.
The Application Layer is the system that provides the interface for the end-user to use. Application Layer protocols are used to exchange data between programs running on source and destination systems.
There is an equivalent set of standards to the OSI model and that comes in the form of the TCP/IP model.
TCP stands for Transmission Control Protocol, and it is a standard that defines how to create and maintain network communications. This includes everything from establishing communication with other devices, either on the same network or across vast distances. It also ensures all data is transmitted as quickly and efficiently as possible, with minimal to no errors.
The IP part of TCP/IP naturally stands for Internet Protocol. Internet Protocol can be viewed similar to that of a postal code, wherein without it, you wouldn't be able to send letters or packages. To put that in computing terms, you wouldn't be able to send and receive files or videos.
The TCP/IP model is broken down into four layers as opposed to the OSI model's seven layers.
Again, just like the OSI model, there is a mnemonic which can help you to remember the order of the Layers, and it is as follows. The best way to remember the TCP/IP model is with this sentence: 'TCP/IP comes in A TIN'
The Transport Layer represents its counterpart in the OSI model.
The Internet Layer represents the Network Layer, and the Network Access layer controls the combined functions of the Data Link and Physical Layers.
Thank you for reading the latest rambling of my blog. As always, if there is anything that you would like me to cover, either new topic or something in more depth, please let me know. Also, if I've made any mistakes in the writing of this topic, please inform me so I can make the necessary amendments.
Until Next Time!
There are a plethora of different types of Standards and Protocols in Computer Networking developed and worked upon by a variety of agencies. All with the striving goal of creating seamless, instantaneous communication. They are required, to govern systems and to ensure structure and reliability in the products available and the functions across multiple communicable platforms. In short, the conceptual model remains relevant whether a device, is running the latest Apple Operating System, Windows or Linux.
Network communications protocols can be split down into seven different layers using the OSI model. The OSI model was developed in 1984 by the International Organisation for standardisation (ISO) and remains continues to be the structure on which Network Protocols are based. 'OSI' is the abbreviation for 'Open Systems Interconnection Model'.
There are seven layers that make up the OSI model, and they can be remembered in a variety of different mnemonic phrases. for example;
- All People Seem to Need Data Processing
- Please Do Not Throw Sausage Pizza Away
- Physical (Layer 1)
- Data Link (Layer 2)
- Network Layer (Layer 3)
- Transport Layer (Layer 4)
- Session Layer (Layer 5)
- Presentation Layer (Layer 6)
- Application Layer (Layer 7)
The Physical Layer transfers data at the binary level. This means all data is translated into ones and zeroes before it is transferred along a network medium. Layer one also governs network media and signals; this includes network cabling and wireless transmissions of devices connected to the network.
At Layer 2 or the Data Link layer, bits are encoded/decoded and appropriate IP addressing information is added before the data frame can be sent across the network. If this wasn't done, the data wouldn't know its destination and would never arrive.
The Network Layer follows on from the Data Link Layer, and works on four basic principles to complete its job. It addresses and encapsulates the data before it is routed across the network, once it arrives at its destination, the packet is then de-encapsulated.
The Transport Layer opens up temporary communication between applications on a network, allowing the transference of data between the two applications.
The Session Layer opens up and controls the communication between several computers. Whilst it is active, it maintains and controls the temporary connections between multiple devices.
The Presentation Layer formulates the information that has been transferred over the network back into a readable/understandable format for the end-user.
The Application Layer is the system that provides the interface for the end-user to use. Application Layer protocols are used to exchange data between programs running on source and destination systems.
There is an equivalent set of standards to the OSI model and that comes in the form of the TCP/IP model.
TCP stands for Transmission Control Protocol, and it is a standard that defines how to create and maintain network communications. This includes everything from establishing communication with other devices, either on the same network or across vast distances. It also ensures all data is transmitted as quickly and efficiently as possible, with minimal to no errors.
The IP part of TCP/IP naturally stands for Internet Protocol. Internet Protocol can be viewed similar to that of a postal code, wherein without it, you wouldn't be able to send letters or packages. To put that in computing terms, you wouldn't be able to send and receive files or videos.
The TCP/IP model is broken down into four layers as opposed to the OSI model's seven layers.
Again, just like the OSI model, there is a mnemonic which can help you to remember the order of the Layers, and it is as follows. The best way to remember the TCP/IP model is with this sentence: 'TCP/IP comes in A TIN'
- Application
- Transport
- Internet Layer
- Network Access
The Transport Layer represents its counterpart in the OSI model.
The Internet Layer represents the Network Layer, and the Network Access layer controls the combined functions of the Data Link and Physical Layers.
Thank you for reading the latest rambling of my blog. As always, if there is anything that you would like me to cover, either new topic or something in more depth, please let me know. Also, if I've made any mistakes in the writing of this topic, please inform me so I can make the necessary amendments.
Until Next Time!
Labels:
Apple,
Blog,
CCENT,
CCNA,
Cisco,
Communication,
Computer Networking,
Conceptual,
Linux,
OS,
OSI,
TCP/IP,
Technology,
Windows
Sunday, 3 March 2019
Wifi 6 and 5G - The future is now!
Hello everybody!
Today I’m going to
discuss a major topic today. That is 5G and Wifi 6 technologies,
their capabilities, and ponder where those technologies will possibly
lead us in the future.
If you like this
blog, please follow for regular updates. Also, as always, if there is
anything you would like me to cover in this blog. Please contact me
and I shall endeavour to cover it.
If you like what is
covered here, and you would like to read further into this, please
click on the links at the bottom of this blog for further
information.
5G and wifi 6 will
build upon already successful technologies, and when combined
together will provide a successful underpinning for future Internet
of Things (IoT) technologies.
Both technologies
work on a principle of low latency and high bandwidth.
as implied by the
name, '5G' is the fifth generation of mobile wireless technology. its
predecessors introduced the ability to send text messages, search the
internet, and send/receive video data.
4G improved on the
performance of those previous generations by allowing for faster
connectivity with the demanding applications at its disposal.
So what is low
latency?
Latency refers to
delays of data transferring over a network.
Low latency networks
are able to transfer massive amounts of data from one computer system
to another.
Examples of where
low latency is necessary, include; video calls, online gaming and
stock market trading.
Long delays in data
transmission, for example; in stock market trading, could be the
difference between making a lot of money and losing a lot of money.
The information is constantly changing, so stockbrokers need the most
recent data available.
Whereas online
gaming and video calls don't have such lethal consequences when
experiencing high latency, it could still incur stuttering
unintelligable video playback, especially when attempting to stream
high quality content.
What is high
bandwidth?
Bandwidth refers to
the amount of data that can be transmitted over a network at any one
time.
When this is
combined with low latency, the transmission of data can appear
seamless. low latency is kind of like a refresh rate which is
measured in milliseconds. This makes transfers practically
unnoticeable.
The applications for
5G and wifi 6 are, in short, mind-blowing. Compared to what we have
seen in recent generations, this is a whole new level.
for everyday
end-users using these technologies, they can do a number of different
things; from downloading full HD movies in a matter of seconds,
instead of a matter of minutes (as is the current standard).
Even that will seem
infintesimally small in comparison when compared to other real world
applications.
The technologies
will allow for greater connectivity, not just in the big cities, but
in rural areas as well.
Cisco are running a
project they call '5G rural first' which aims at providing excellent
internet connectivity for the areas that recently didn't have this
opportunity. This will in turn provide further benefits and
opportunities to a wider array of people.
This technology
coupled with smart sensors could help farmers predetermine when to
plant crops or when to harvest. It could even help save entire loads
of crops by determining when intervention is necessary.
In the big cities,
it could mean truly ubiquitous computing environments. smart cars,
that are autonomous, always connected and receiving updates on
traffic, road-works. The cars data could even link to a smart phone
if a fault becomes present and requires attention. Okay so maybe I'm
getting too carried away now, but who is to say, that wouldn't be the
next logical step in autonomous transport?
However, there are
downsides too, naturally. 5G works in a higher band wireless
frequency to 4G. This will require more attenas to be built, for the
signal to travel further. whilst this may not be an issue in big
cities. It will certainly become costly in more rural areas.
Wifi 6 will also
improve upon its predecessors, in terms of speed but will also
improve on its capacity to carry data, and do it more efficiently.
The Wifi Alliance has stated that Wifi 6 is designed to work
alongside current standards and not replace them entirely.
These technologies
are currently in the experimental stages, and whilst they are going
to be implemented later this year and in 2020. It is not for a few
years yet, that we will greatly be able to see the impact that they
are having, and the applications they are going to be applied too
which will change our lives in ways we probably cannot even concieve
of yet. As of 2020 it is estimated that there are going to be a
staggering 30.73 billion connected devices. all receiving updates and
providing data to its users. The call for something that can handle
this unbelievable number of connected devices is on the verge of
being answered.
The question itself
though begs, with IoT devices currently numbered in the billions,
where do we go from here?
Bibliography
https://www.informatica.com/gb/services-and-training/glossary-of-terms/low-latency-definition.html#fbid=UlQb9osRwpP
"low latency."
Definitions.net. STANDS4 LLC, 2019. Web. 3 Mar. 2019.
<https://www.definitions.net/definition/low+latency>.
https://www.5gruralfirst.org/
Labels:
5G,
Autonomous,
Bandwidth,
Cisco,
Computer Networking,
Computing,
Connectivity,
IoT,
Latency,
Rural First,
Smart Sensors,
Technology,
Wifi 6
Monday, 25 February 2019
Networking 101
Hello all and thank you for joining me today. Today I'm going to start a series on Computer Networking. I'm doing this for two reasons; firstly, to aid my understanding of the subject. Secondly, to help newcomers find their feet, and for veterans of the subject to refresh their knowledge where necessary.
This series will cover basic fundamentals from 'What is a network?' to 'Implementing protocols so that networks can communicate with each other and run effectively'. All this and everything in between and beyond. If there is anything that you would like to see me cover in this series, then please contact me so that I can work it into this blog. As always please follow me, so you'll always be up-to-date with the latest postings.
*Also, if I get anything wrong in this series or I don't cover it in enough depth, please inform me so that I can make amendments*
Without further ado, let me introduce you to the wonderful world of Networking!
The first and most obvious question should be, What is a network?
A network is a series of specialized devices which are connected and are able to communicate with each other over vast distances.
There are two types of devices.
End Devices
Intermediary devices.
End devices are standard everyday office items, such as; Computers, Laptops, Tablets and Printers.
Whereas Intermediary devices are; Wired/Wireless Routers, LAN Switch, Multi-layer Switch and Firewall appliances.
I shall explain in further detail later on what each device does and how it can be used/implemented in a network.
In Computer Networking, it is important that you familiarize yourself with acronyms. Below I will write a separate blog post with a list of possible acronyms and abbreviations that are going to be used during this series. However, I've written two below to start us off.
LAN = Local Area Network
WAN = Wide Area Network
A LAN is as the name suggests, 'local' refers to networks in a singular geographical location. These can be found just about anywhere, for example; in homes, shops, other small and large businesses.
A WAN on the other hand, are implemented by large corporate enterprises. For example; Google and Amazon have buildings all over the globe, so they will have LANs which connect to each other worldwide. This is known as a Wide Area Network.
So how does it all work?
You're sitting in your office or in your house, and you are using your Computer, when you decide that you want to send an e-mail to a friend.
So you would start this process by typing up your e-mail and then typing in your friends e-mail address and pressing send. A Network works on fundamentals similar to the e-mail. What I mean by this, is for the e-mail to send and be legible, it requires certain information. Most importantly, the person the e-mail is to be sent too, a greeting, and who the e-mail is from. Most important of all, the e-mail requires a forwarding address, otherwise it will never reach its intended destination.
For a file to be delivered across a network medium, it has to be broken down into something called 'packets'. Packets are snippets of the file which are broken down and labelled with the correct addressing information. These are delivered through a network, often through different routes. They are then reassembled in the correct order, so that the file reads as it should.
Your IP address
The gateway address
The Recipients MAC address
There are three types of network media.
Copper cables - these work by sending data in the form of a series of electrical pulses
Fiber Optic Cabling - these work by sending data in the form of a series of light pulses
Wireless Connectivity - these work by sending data encoded using the electromagnetic spectrum
There are two types of copper cabling - Unshielded Twisted Pair (UTP) and Shielded Twisted Pair
(STP).
Shielded Twisted Pair cables are more expensive. However, these are more often used where there is likely to be Electromagnetic Interference (EMI) or Radio Frequency Interference (RFI).
Copper cables terminate with an RJ45 connector which are known as a standard LAN connector.
That is all for now, I hope this hasn't been too overwhelming and that you've enjoyed your first steps into Computer Networking. Please let me know if you've enjoyed this post and what else you would like to see added to this series in the future.
Next time, I'll try and cover some Protocols and Organizations which govern the protocols surrounding Computer Networking.
Labels:
CCENT,
CCNA,
Cisco,
Computer Networking,
Connectivity,
EMI,
IP Address,
LAN,
MAC Address,
RFI,
STP,
UTP,
WAN,
Wired,
Wireless
Wednesday, 20 February 2019
Linux - Free and Open Source!
Linux
Hello all.
So, today, this blog is all about the advantages and disadvantages of using Linux Operating Systems and how it can change the way you view and use computers.
Firstly, I should start by explaining what exactly Linux is and what it means for computing.
Linux is a free and open source software (FOSS), the Linux Kernel was developed in 1991 by Linus Torvalds. Linux consists of two parts, the Kernel and the Shell. The Kernel communicates with the hardware and software on a computer. For example; to open a web browser, the Kernel would determine the RAM requirements needed to run the application, and then allocate a portion of the RAM to that task.
RAM stands for 'Random-Access-Memory', this is required to run software on a computer. The more demanding the application then the more RAM is needed for the system to fulfill the end-users requirements. Lightweight editions of Linux exist which can be installed onto older hardware, and imbue them with a new lease of life. In doing this, it prevents the need to regularly buy new hardware.
Since 1991 Linux has increased in popularity due to it's stable nature and usability, it is currently used on all 500 of the worlds top supercomputers. Another reason for this, is because no other Operating System allows for bespoke possibilities. It can be customized down to individual needs, whether that is a particular type of application or to maximize proficiency.
Whilst Linux remains Free and Open Source, it has entire organizations dedicated to ensuring its stability
There are many reasons that an end-user may decide they need to switch from their current Operating System. An example of this would be that their current Operating System may impose annual subscription fees, which people don't want to pay or simply cannot afford.
Another example could be that the hardware is simply outdated and unable to perform desired tasks like it did in the past.
A user may have reservations about abandoning what they know and trying something new. However, there are ways this can be achieved. To start with, they need to determine which version of Linux they would like to use.
A good starting point for beginners is to use either Ubuntu or Mint. Linux Ubuntu is developed by Canonical, they release two versions a year; one in April and the other in October. The Distribution is always named after a species of animal alongside a number. The number represents when the Distribution was released. For example; 18.10 would mean that it was released in October 2018.
Canonical release a long term support version of Ubuntu for which they provide five years of updates before upgrade is necessary.
Linux Mint is developed and sustained by the community, its popularity derives from its similarity to windows and allows for an easy transition.
Both versions of Linux have dedicated websites, where it is possible to download both recent and previous versions of the Operating System.
Once the end-user has downloaded their desired version of Linux , they can then burn it to a CD. Then, a system restart is required.
Upon restarting the system, enter the BIOS and set the computer to boot from the CD drive. Exit the BIOS and allow the CD to boot. This will then allow the user the option to try out the Operating System before installation, or to just install it directly. The installation will instruct the user through a successful install, after this is completed, remove the CD and the computer will boot the newly installed Operating System.
Another way to test new Operating Systems would be to install a virtual machine on an existing Operating System. That way if anything goes wrong, the user can then start again from scratch.
As is always important to remember when doing anything on a computer; always backup your data before trying anything that could make any significant changes.
Similar applications across Linux, Apple and Microsoft exist, for example; Microsoft has its office package whereas Linux utilizes use of the LibreOffice package. They are similar in design and offer user friendly functionality.
The main difference is Linux incorporates the Command Line Interface in its core usage. The system can be easily updated from the Linux Terminal with a few simple commands. Files and directories can also be created, destroyed, moved or updated through the terminal. The Terminal also allows more freedom than a standard Graphical User Interface would allow.
That is Linux in a nutshell. There is so much more to say and learn about Linux, there are entire courses dedicated to Linux. However, this is where my post must end. I hope this has been an informative read, and that you decide to take the leap and test out Linux Operating Systems for yourself. Remember, always backup your data before trying anything, especially if you don't know what affect it may have on your computer.
Thank you for reading my general ramblings,
Daniel.
Hello all.
So, today, this blog is all about the advantages and disadvantages of using Linux Operating Systems and how it can change the way you view and use computers.
Firstly, I should start by explaining what exactly Linux is and what it means for computing.
Linux is a free and open source software (FOSS), the Linux Kernel was developed in 1991 by Linus Torvalds. Linux consists of two parts, the Kernel and the Shell. The Kernel communicates with the hardware and software on a computer. For example; to open a web browser, the Kernel would determine the RAM requirements needed to run the application, and then allocate a portion of the RAM to that task.
RAM stands for 'Random-Access-Memory', this is required to run software on a computer. The more demanding the application then the more RAM is needed for the system to fulfill the end-users requirements. Lightweight editions of Linux exist which can be installed onto older hardware, and imbue them with a new lease of life. In doing this, it prevents the need to regularly buy new hardware.
Since 1991 Linux has increased in popularity due to it's stable nature and usability, it is currently used on all 500 of the worlds top supercomputers. Another reason for this, is because no other Operating System allows for bespoke possibilities. It can be customized down to individual needs, whether that is a particular type of application or to maximize proficiency.
Whilst Linux remains Free and Open Source, it has entire organizations dedicated to ensuring its stability
There are many reasons that an end-user may decide they need to switch from their current Operating System. An example of this would be that their current Operating System may impose annual subscription fees, which people don't want to pay or simply cannot afford.
Another example could be that the hardware is simply outdated and unable to perform desired tasks like it did in the past.
A user may have reservations about abandoning what they know and trying something new. However, there are ways this can be achieved. To start with, they need to determine which version of Linux they would like to use.
A good starting point for beginners is to use either Ubuntu or Mint. Linux Ubuntu is developed by Canonical, they release two versions a year; one in April and the other in October. The Distribution is always named after a species of animal alongside a number. The number represents when the Distribution was released. For example; 18.10 would mean that it was released in October 2018.
Canonical release a long term support version of Ubuntu for which they provide five years of updates before upgrade is necessary.
Linux Mint is developed and sustained by the community, its popularity derives from its similarity to windows and allows for an easy transition.
Both versions of Linux have dedicated websites, where it is possible to download both recent and previous versions of the Operating System.
Once the end-user has downloaded their desired version of Linux , they can then burn it to a CD. Then, a system restart is required.
Upon restarting the system, enter the BIOS and set the computer to boot from the CD drive. Exit the BIOS and allow the CD to boot. This will then allow the user the option to try out the Operating System before installation, or to just install it directly. The installation will instruct the user through a successful install, after this is completed, remove the CD and the computer will boot the newly installed Operating System.
Another way to test new Operating Systems would be to install a virtual machine on an existing Operating System. That way if anything goes wrong, the user can then start again from scratch.
As is always important to remember when doing anything on a computer; always backup your data before trying anything that could make any significant changes.
Similar applications across Linux, Apple and Microsoft exist, for example; Microsoft has its office package whereas Linux utilizes use of the LibreOffice package. They are similar in design and offer user friendly functionality.
The main difference is Linux incorporates the Command Line Interface in its core usage. The system can be easily updated from the Linux Terminal with a few simple commands. Files and directories can also be created, destroyed, moved or updated through the terminal. The Terminal also allows more freedom than a standard Graphical User Interface would allow.
That is Linux in a nutshell. There is so much more to say and learn about Linux, there are entire courses dedicated to Linux. However, this is where my post must end. I hope this has been an informative read, and that you decide to take the leap and test out Linux Operating Systems for yourself. Remember, always backup your data before trying anything, especially if you don't know what affect it may have on your computer.
Thank you for reading my general ramblings,
Daniel.
Subscribe to:
Posts (Atom)