Monday, January 9, 2017

Week 4: Day 09 - Ethics and Security


Hello folks, this will be my final blog entry! Today, we're going to focus on ethics and security with computers. This is a very important topic for people who are inexperienced, since it is important to keep your system secure.

When you get infected with a virus, there are several types that exist: worm, trojan horse, Denial of Service (DDoS) attack, backdoor, and spoofing. A "worm", is a virus which replicates itself and attempts to spread to other computers -- usually on a network. It usually takes bandwidth from the network, rather than corrupting files. The "trojan horse" virus, is a computer program which hacks into a computer through misleading the user (similar to the Ancient Greek story, yes). It can be used for spying, destruction, or stealing information. A "DDoS" attack, is done through flooding somebody's network with packets, overloading their system. The "backdoor" virus is used for securing unauthorized access to someone's computer. The spoofing virus is used to masquerade as another user to gain access to a system or program. To safeguard against these attacks, make sure to get yourself a good security system!

After talking about all these viruses, you must be terrified. Now it's time to talk about the concepts of these malicious actions. To gain access to somebody's system would be to "hack" their computer. However, if you steal information from them, this becomes "cracking". To gain access to these systems, hackers often need to deal with "authorization" and "authentication" barriers, which is good. Usually they are in the form of passwords, or codes. If they can't access your system, they find other ways of getting in. They often send you spam, try to phish your data, and send malware however they can. These are all attempts at maliciously using social engineering. From this, you can see that there are many vulnerabilities caused by technologies.

If you're a person who has created something, but it gets digitally stolen, your work is protected by intellectual property rights; this could be a song or software. If your work gets stolen, the person who did this is now involved in "piracy", just like real piracy, except on the internet. However, this is not to be confused with plagiarism, when you steal text from someone by claiming that it is yours. This is usually an issue with college essays and the sort, which require a lot of research. The internet is a great place for research, but sometimes the source is wrong. You must distinguish bad sources from reliable sources. Reliable sources are encouraged on placed like Wikipedia, who cite them.

Finally, let's get a little political. The Constitution protects Americans from being surveilled by their own government. When the CIA was exposed by Edward Snowden, it brought serious questions forward about privacy, and whether Americans should sacrifice it for security, or keep their liberty to be private. Ultimately, the people were unhappy with the NSA Prism program, which shows that the majority of people do not want to be spied on by their own government. On that note, this wraps up my entire blog, thanks for reading!


Wednesday, December 7, 2016

Week 3: Day 08 - Operating Systems


Hello, it's been a while. I've been busy working on HTML, CSS, and JavaScript stuff. I will be continuing this blog, and hopefully finishing within the next few weeks. Today, I will be covering the entire operating system section.

An operating system is software that controls the functions of a computer. There are three huge OS types. There is Windows, Linux, and Mac OS. There is virtually no comparison with Windows and the latter two. It's quite the opposite, since there are huge contrasts. The most popular OS in the world is Windows, and the reason is compatibility and user friendliness. Many software developers create their programs to have Windows compatibility, but don't do the same with the other two. This is a huge contrast between them. Another difference is availability. Windows and Linux can be used on any machine, unlike Mac which you can only obtain through purchase of their machines. There's also price, since Windows and Mac (to upgrade) both cost money unlike Linux which is open source. The only exception was Windows 10 which was available (for one year) for free to Windows 7/8 users. This one year period is over, so if you missed it, you can't get the free upgrade. In terms of similarities, Linux and Mac OS share the most. Both of them originate from Unix, which was developed and released in the 1970s.

Furthermore, these operating systems are examples of system software. This is not to be confused with application software, which accounts for all applications that perform tasks within the OS. Examples range from Microsoft Word to iTunes, and Photoshop. Anything you can think of that's an application falls under this category.

Another major difference is between a command-based system and a graphical-user interface (GUI). It's a pretty straightforward one, the command-based system only displays an command line as your input, while a GUI gives you an interface that can be interacted using a graphic. It's very user friendly, and is basically what the majority of operating systems contain. An example of a GUI is a simple button, like the one you use to log off.

Now let's talk about some of the important file types that are widely used. For Microsoft Word,".doc" is used as the file format for saved documents. Another text file format is ".txt" which is commonly used in things like notepad. Then there are the popular image filetypes: .png, .jpg, and .gif -- which are moving images.

Another feature of computers, are windows. When you open up your browser, for example, you are opening a window which can be minimized using the "_" button, openly manipulated, or exited using the "x", obviously. The active window is what you have open at a given time, although other windows could be opened behind it -- you can see them if you minimize your active window. Cascading windows are layered on top of each other, while tiled windows are next to each other. Background items are programs which are running in the background, but not being directly used by the user at a given moment.

If you want to personalize your desktop, there are many ways of accomplishing that. Themes are commonly used to change the appearance of your general layout; items like your taskbar, and its color. Taskbars are the thing at the bottom of your screen (if you're using Windows and haven't customized it) which house shortcuts which the user values as important, the date/time, sound adjustment, and the start button which can help you easily find programs. Screen savers are (usually sleek) animations which run while your computer is asleep. In addition, you can change your desktop background to whatever image you want. This kind of customization is usually available on all operating systems. There are shortcuts on your desktop which you use to easily open up programs, instead of going to their file location. These shortcuts essentially link to the program's executable, and are easily identifiable by its image called an "icon".

To create, copy, paste, delete, or move file/folder around a computer, you use the mouse. Typically this means right clicking a file, and then selecting the given option. To move it though, you'll have to drag it with your mouse. If you want to find a deleted file, it's in the recycle bin, unless you deleted it permanently. Finally, if you want help with anything, Windows has a user help app. If you're in the command prompt and you want to see all the available commands, just type "help". That should sum up this section of the curriculum. Thanks for reading, until next time!


Friday, September 30, 2016

Week 2: Day 07 - Communications Technologies #3


This will be the final entry for this unit, it's been the longest so far. I'd be lying if I told you there won't be longer units to come. I anticipate it will be a long post, so get ready for some reading. Let's go!

The way that web servers run, are pretty simple in concept. The host, has a web server which is connected to the internet. To get a website up and running, first they need a domain. Domains can be purchased, or obtained free from companies who offer subdomains or some open source domains (like tk). Now you'll need to add your HTTP document to the server, and CSS or JavaScript if it's also going to be a part of the webpage. Once you bind the domain to the web server, you're website will now be a part of the WWW! It doesn't matter what browser you view the webpage in, as long as you followed the rules of your HTTP version carefully. Speaking about browsers, there are four major browsers: Google Chrome, Mozilla Firefox, Microsoft Edge/Internet Explorer, and Safari. There are obviously plenty of other browsers, but those are the most popular. They are all free browsers, but there are some differences. Chrome is the fastest and most used browser, with Google account sync between all computers, and a large variety of plugins that you can use. Firefox also has plugins, more customization, and a safer browsing experience. Internet Explorer, now Microsoft Edge, comes with your windows machine, and is not used very much. Safari comes with Mac OS, and has impressive page load times. Those are the main differences, not many.

When browsing through websites, you have to assess whether it is relevant, biased, and credible. Usually websites that are Hyper Text Transistion Protocol over SSL (HTTPS) are more credible, and relevant as well. As for bias, that's something you'll have to find out using your brain. If it's "www.northkorea.com" and they're talking about "The Great Leader Kim Jong Un", then of course it's biased! If it's some guy giving his opinion on a blog, it's also biased. If it's an unbiased source, then it will be from a reliable website, or someone who isn't advertising something.

Additionally, we should cover Web 2.0 technologies. Right now I'm writing on a blog, and this is a way of communicating information with other people. There's also Wiki's, which provide information in an encyclopedic manner (at least Wikipedia). There are also Rich Site Summary (RSS) which is actually a widget I can add to this blog apparently. Anyways, it uses web feed formats to publish updated info such as new blog posts, news, video, audio, etc. This can be used to communicate important information to people, especially news headlines, but also just if their favorite blogger (me) posted something new. There's also podcasting, which is basically like radio. It's usually an episodic series of audio clips, it can be live or recorded previously.

Finally, there's the topic of social media websites. It's very good for communicating and planning events with other friends. Facebook has over a billion users, so you'll find a lot of people on there. Most of the people I know are on Facebook, although barely anyone I know still uses it. There are other social media like Snapchat, Twitter and Instagram which is used more often by my friends. Snapchat in particular has a pretty cool concept, of creating stories with photos and videos that automatically delete themselves after 24 hours. Just based on what I'm saying, you may infer that I'm well versed in the realm of social media. However, some dissenters would say that it's anti-social and addictive. Don't listen to them! Thanks for reading, and have a good weekend.

Thursday, September 29, 2016

Week 2: Day 06 - Communications Technologies #2


Hello again! Today, I will cover internet/web terms and explore how web servers and browsers work. This week I started my other course, so I will be updating this blog less, but all objectives will be covered regardless. In any case, let's begin!

The World Wide Web (WWW), a term that is often conflated with "The Internet". The WWW is an information space, which is linked with Uniform Resource Locators (URL), and can be accessed using The Internet. It was invented by Sir Tim Berners-Lee in 1989. Most of the WWW consists of text documents, which are formatted into HTML. You can find old pages from the 1990s and early 2000s on the WWW. You will be able to tell based on the version of HTML, and whether it has CSS or not. Multiple webpages with a common domain, make up a website.

Next, the URL is how you access webpages. For example, the main page of my blog has the URL "https://www.martincompappconcepts.blogspot.com". Looking at the URL, there is another key term that needs to be noted. The domain name, is www.martincompappconcepts.blogspot.com. The "www" is a necessary prefix, which stands for "World Wide Web", and what comes after is the custom domain that I came up with, along with the ".blogspot" which is required. Finally, the suffix ".com" stands for "company", and is one of many common suffixes used in the Domain Name System (DNS). Since there is also ".net", ".gov", ".co.uk", etc.

Another term that I'm to know is "File Transfer", which is a very broad term. It loosely means, transferring/transmitting files over a network and to the internet. To transfer files within the network, you use File Transfer Protocol (FTP), and to do it over the internet, you use Hyper Text Transfer Protocol (HTTP). Nowadays, it can also be done using instant messaging and whatnot. There are 2 types of file transfers:

- Pull-based file transfers where the receiver initiates a file transmission request
- Push-based file transfers where the sender initiates a file transmission request.

Other common protocols are Transmission Control Protocol and the User Datagram Protocol. These protocols are run within internal networks, and dictated by the router. Your router receives an internet connection from the modem, which is usually issues by the Internet Service Provider (ISP). Some common ISPs in America are Comcast, Verizon, Cox, etc.

Finally, if you want to host a website. You'll need to consult a web hosting service. An example is Google, who is hosting my blog, as they own Blogger. For many people, they get their custom domain from the company who is hosting their website. To host websites on your own, you can use Apache or mySQL. Many people do this on their home servers. Anyways, that wraps up my blog for today. Thanks for reading, and until next time!

Friday, September 23, 2016

Week 1: Day 05 - Communications Technologies #1


Today is the end of the week, so Happy Friday! This unit is gonna be a little longer than the last two, so I think I'll split it into three posts. We're going to cover network operations, and web servers. Thankfully, I already know a lot about that, so it will not be difficult to explain.

The Local Area Network (LAN), deals with the internal side of your network. You are able to connect to other devices within the network. If you're a gamer, you may be familiar with the term "LAN parties" --- that's when people bring their laptops to their friend's house, or use a spare computer, and they are all connected to the same network, then play video games --- the main benefit of doing this, is that the connection within the network is stellar, unlike an external connection. In contrast, the Wide Area Network (WAN) transfers data between computers at a much larger distance. Your internet service provider (ISP), provides access to a WAN network, through the use of a modem. The differences between LAN and WAN bring forth another contrast, Internet vs. Intranet. The Intranet, a term many are not familiar with, is a private network that can only be accessed by a select few. An example of a time when this is used, would be an office building with sensitive information. Data exchanges between co-workers at the same building, will be sent through the LAN, however, if there is a file that you need to send to an individual working for another division, you would use the WAN. The Internet, is different, as it is open to the public; anyone can connect to it, and contribute to it. We all know how it works, so there's no point in my expanding on that point.

Next, let's talk about other networks. Voice-Over-IP (VoIP) is a way of communicating with others through speech, over the internet. There are many services that offer this, such as Google, Skype, Steam, and other services. You can even call phone numbers with VoIP, as you can call people from Google Hangouts and Skype. There's also Broadband, which is a type of internet connection offered by most ISPs. It's a very broad term that covers any type of bandwidth data transmission that does better than Dial-Up and DSL, it's basically high-speed internet. If you have a cable modem on a stable Cable TV structure, you likely have Broadband. When people say "I have cable" this likely refers to either Cable TV or Cable internet access. There's also Bluetooth, which is a widely used technology. What Bluetooth does is essentially exchange data over short distances. For example, if I have a phone running Spotify, and I want to play that music in my car, I would plug a Bluetooth receiver into the car's computer, and then connect my device to that receiver. Speaking about cars, who could forget about the Global Positioning System (GPS)? This one's a bit special, since you're connecting to satellites. The government freely allows anyone in the US to connect to GPS as long as they have a device with a GPS receiver. It's like Bluetooth, except in space... maybe not so much?

Finally, let's talk about about the Client/Server architecture. If you are a on any device connected to a router or wireless-access-point (WAP) attached to a server, that device is a Client. The server is the structure maintaining and administrating the network. A network/system administrator such as myself, would be the one dictating what happens to the server, which in turn effects the entire network. Whereas the client could be a co-worker or a family member who is enraged that the internet connection is down. In any case, it's important to make this distinction, as the client are all the devices connected to your server; ergo the server is not a client, or vice versa. Thanks for reading, and have a good weekend!

Thursday, September 22, 2016

Week 1: Day 04 - Storage


Hey everyone, today we're going to look at Storage! This is a short unit, like the last one. Nevertheless, there are many types of storage, and different file sizes to go over. So without further a due, let's start.

Let's start off by differentiating primary and secondary storage. A computer needs a place to store data, so there must always be primary storage. This is often an internal hard drive that comes with your computer, and more importantly your Random Access Memory (RAM). If you have secondary storage, this means you have an external hard drive, USB drive, SD card, DVD, or whatever it may be.

In any case there are several types of storage, and your computer has them guaranteed. All of these storage options can be categorized into two areas, dynamic and persistent. The persistent storage will save your data after the device it's stored on is turned off, while dynamic storage does not. Most storage is persistent, like for example -- hard drives, USB, and cloud storage -- while dynamic storage only accounts for merely RAM. You may think it's bizarre that RAM is a storage component, and I was too when I found out a year ago. What it does is take the data off the CPU using an I/O bus, as I explained in the last blog post, but then after the device powers off, it loses that data.

Now let's talk about the benefits and disadvantages of cloud storage. Recently, there's been a surge in cloud storage services across the globe. The advantage of having such storage available, is that you can access that information anywhere, anytime. However, for you to be able to access that info, you must have internet available. Unfortunately, there are people somewhere who have no connection, so they use local storage. Regardless, internet service is becoming a bigger requisite in the lives of the average person.

Finally, let's have a look at the data storage hierarchy. The units within the hierarchy are in this order:

Byte - Kilobyte - Megabyte - Gigabyte - Terabyte - Petabyte - Exabyte - Zettabyte - Yottabyte

If you're familiar with the metric system, you would have already heard the same prefixes used in other forms of measurements, such as meters, grams, liters, etc. Because of this you can anticipate that one megabyte is made up of 1000 kilobytes. In any case, this hierarchy is the way of measure all digital data worldwide. It should also be noted that there is another measurement --- 1 Gibibyte is 1024 Mebibyte --- these are used by some systems for binary purposes. Since 2009, the World Wide Web has an estimated 500 Exabytes stored. It's 7 years later -- 2016, just imagine how much it is now! That brings this unit to an end, see you next time.

Wednesday, September 21, 2016

Week 1: Day 03 - Processing

Hello all! It's time for the next unit, Processing. We're going to cover CPUs, motherboards, processing, and the bus. Let's get started.

The Central Processing Unit (CPU), is another piece of circuitry within a computer. It processes many essential and non-essential tasks on your system. It operates by doing what a program tells it to, using mathematics and input/output, which is a little throwback to the last unit. It will fetch an instruction from the memory, decode it, then execute it, for short. Anyways, the processing power of a CPU depends on several factors. One important one, is how many cores it has. Last decade, we saw the introduction of dual-core processors. But these multi-core processors have reached to unbelievable amounts these days, with some people having eight cores. Personally, my system is quad-core and it does great. Additionally, processors have a clock rate. This refers to the frequency at which the CPU is running. Some older processors have their frequency assessed with Kilohertz (KHz), but most modern processors have their frequency measured with Gigahertz (GHz) because they're that good nowadays. Sometimes processors can be overclocked with crystals that operate at higher frequencies. This will usually increase the processor's value. (Quick Note: Everything about clock speeds that I mentioned, applies to Graphics Cards as well.)

The Motherboard is a meeting point for much of the computer's circuitry. It holds the CPU, Memory (RAM), Hard Drive, Sound Card, and Graphics Card. It is an essential part of a computer, no doubt. If you switch it out, often times you'll have to get a new copy of an Operating System. Within motherboards, data is transferred between its components/circuitry. The way it's transported is through system buses. There are three types of pins/lines on a bus: Address, Control, and Data. The Address bus passes memory addresses between the components. The Control bus sends out signals to coordinate with the components. Finally, the Data bus is where the data is transferred between the peripherals, memory, and the CPU. On that note, I'm ending this blog entry and unit (yes it's a short unit)!