Pages

Monday, July 22, 2019

Tech Topic

For the main subject matter of my blog, or my “tech topic”, I chose to focus on careers in information technology, the education requirements for each career, and also what each career really means. This topic stems from the fundamentals of information technology because no matter what career path you decide to take in the information technology field, all knowledge is based off the fundamentals. For instance, we learn the basics of hardware, software, and computer language. All of these fundamentals branch out in to specific careers paths. For example, according to glassdoor.com, software developers work on both the technical and design aspects of software, while understanding coding, and usually have a career in computer science or computer engineering (glassdoor.com)

            As technology builds on top of old technology, we must understand the history, the core and the foundation of how computers and software are created. In order to advance our knowledge of information technology and choose a career path that best suits our own abilities, it is important to first have a basic understand of the history of technology that led us where we are today. Acknowledging the past of technology and where we have come from can help us to determine the possibilities of where we are able to go in the future. For some of todays most in demand jobs, one must be fluent in the most up to date coding, software, and hardware. According to computerscience.org, some of the most popular coding languages today are Python, Java, Ruby/Ruby on Rails, HTML, C Language, C++, and JavaScript to name a few. In order to properly write in these coding languages, one must be proficient in the latest technology, as often times these new coding languages are focused around the new software and technology. (computerscience.com)

            When it comes to a specific aspect of information technology such as application software, this can be used in many different career paths. There are careers based around creating application software, testing application software, using various applications to produce other products and so on. Application software is virtually a part of every day life. We use apps on our phones, tablets, computers, car radios, televisions, etc, and working in any field of information technology is no exception to this.  Similar to the area of application software, the area of database management is a huge part of information technology. There are several career paths that involve databases and managing databases. Almost every business or company has some sort of data that they need to store and organize. This is where databases administrators come in as they are responsible for the operational level and or function of a database as well as performance and security of the database. This leads me to my final topic of my “tech topic”:network architecture, management, and security. Whether you are using an app to shop online, coding, designing a website, or working as a database administrator, everyone wants to know that their devices and their information is secure. This is where security information technology jobs come in to play. Jobs in the category can range from protecting a whole network, to protecting specific devices, or even a database. Jobs in this field can range from working for the United States department of Homeland security to working for your local mom and pop business, conducting all of their Information technology needs or even working from home for a multi-billion dollar corporation such as Amazon. The opportunities and options and virtually endless when it comes to careers in information technology, but none of this is possible without having a good concept of the fundamentals of information technology. 



References:

https://www.glassdoor.com/Job-Descriptions/Software-Developer.htm

https://www.computerscience.org/resources/computer-programming-languag

Wednesday, July 17, 2019

Traveling Through a Network

This week's blog will focus on how information is transmitted throughout a network using various systems. I chose 3 separate websites, one based in the United States, one based in Australia, and one based in China. For each website, I ran the IP address using ping as well as traceroute. The following information are the results I found.

Pings:
For the google.com ping, a total of 10 packets were transmitted. A total of 10 packets were received and there was no time out during the transmission. The average round-trip for this pin was 22.214ms.
For the second ping, I chose a site from china. This ping also transmitted 10 pings and all of the pings were received successfully. In this ping, however, the average round trip time was quite a bit longer, having and average of 286.734 ms. I believe this is due to having to travel farther distances through many different routers and servers.



 The third website I chose to ping was a website from Australia. This ping went to panther.com.au. Like the others, 10 packets were transmitted on all 10 packets were received. Like the last ping that had to travel to China servers, this ping for an Australian website also had a longer average round trip time, which came out to be 286.734. 

Traceroutes:

This is the traceroute for google.com. On this traceroute, is took 8 hops to complete, though the second hop timed out. First it determines the IP address, sends the info through my home router and through my internet provider which is suddenlink, then attempts to contact the website servers to collect the information requested via the packets.

The following two traceroutes were similar to the first in that they all timed out on their second hop. This one timed out on it’s fifth hop as well. As this route was going to Australia, it took quite a few more hops. Whereas the last traceroute too 8 hops, this one took 19.


For this final traceroute we ventured all the way to china. This route, like the others timed out on the 2nd hop, however this one always timed out on the 15th and the 16th hop. Similar to the last route that went to Australia, this one also took longer than traceroutes with American based IP addresses.
After collecting and review the data from pings versus traceroutes, it is clear to me that depending on the geographical location of where you are trying to reach, the roundtrip time will likely increase, as well as the number of hops it takes to get there. This data can be used to determine problems in connection by being about to determine exactly where the packets are being lost, or exactly where the hops are being timed out. It can also be used to determine what routers take the longest amount of time and which ones are the fastest. Since all the packet information first has to go through your home router and then internet services provider, you can also use ping and traceroutes to determine if a problem with sending or receiving packets is on your end or not.

Computers in the Workplace: Healthcare

At this day in age, being computer literate is important in almost every industry. Not all industries use computers for the same reasons or require you to be computer literate at all, but nonetheless, it is a useful and important skill to have. Whether you are in criminal justice, sales, real estate, the healthcare or culinary industry, computer literacy can be an useful asset to your skill set. 
For this blog post I have chosen to discuss the importance of computer literacy within the healthcare industry. I am currently working as a nurse at a psychiatric hospital, so this industry is very near and dear to me. A big part of my job is utilization review. This means that I report what is going on with each patient to insurance companies. Doing this job requires me to access charts through our medical records system on our computer network. I also have to type up written information of individual patients in order to email or fax them in depending on the insurance company. To do this, I have to be fluent in Microsoft word. Creating spreadsheet using Excel is another major part of my job. We use Excel to keep track of under utilized days, denied days, admissions, and discharges. Besides all of this, computers are an excellent resource when it comes to charting notes on patients, looking up various medications, and finding local contacts for other providers within our area. 
Right now it is standard for nurses to use COW's (computer on wheels) in the hospital environment. These help nurses chart, administer medications, and view a patients history all at the bedside. As technology continues to advance and we see improvements in hardware, operating systems, and networking I believe we will see a day when a nurse can complete all of these task with something as small as a tablet. Beyond that, we will have to wait and see where technology leads us. 
At this point in time, computers are a major aspect of almost every career and the healthcare industry is not excluded from this fact. I focus on the practicality of computers in the lives of nurses because it is what I know, however computers and networking are used in all facets of the healthcare industry. Providers that are on-call are able to view chart from virtually anywhere, prescriptions and be submitted electronically for faster filling at your pharmacy, medical coding and billing jobs are becoming increasingly more remote as employees can accomplish all of their daily tasks through their computer inside the comfort of their own home. This discussion is just a glimpse at how the world of technology, computers, and networking is affecting the healthcare industry, though the possibilities are endless. 

Network Security

      As much as computers are an important part of our everyday life, they continue to remain vulnerable to attack. With how vital computers and networks are at this day in age, it is important for us to understand the different kind of viruses and attacks that can do harm to our computers. 


Many different types of attacks can be executed using ping commands. Many of these attacks occur or can occur via email. A computer virus, for example, can be used for many different things such as stealing private information from a computer, deleting data, or using the computer illicit tasks (Vahid, F., & Lysecky, S. (2017) section 8.1 par 1.) Computer viruses occur when a person opens and email that seems legitimate, asking them to visit a website or download some type of data. Once the user does this, it gives access for the virus to install onto their computer. After a virus is on a computer, it is not uncommon for the virus to make the computer preform illicit tasks. These tasks include spam, which is known as sending out mass emails, or DoS which stands for denial of service. Spam can have many different purposes such as advertising, spreading the virus, or phishing, which we will discuss further. Denial of service occurs when mass quantities of requests are sent to one particular website all at the same time. By doing this, the server is overloading and is unable to process actual requests, therefore leading to denial of service for true requests. A PoD, which stands for Ping of Death, is a type of DoS. To accomplish a PoD, attackers send ping commands with oversized or malformed packets with the purpose of destabilizing or crashing a specific computer or service (inperva.com). Though most systems who have been a target of a Ping of Death attack have likely been patched and will not fall victim to that attack again, other systems are still vulnerable to these attacks. A more relevant ping attack is known as a Ping flood in which ICMP packets are rapidly sent to a system, over and over again without waiting for a reply. (imperva.com)
Another way email can be used for attack against a computer is by phishing. Phishing is a process in which someone is tricked into volunteering personal information. A website or an individual person will send a fake email stating that one of your accounts is over due, or that you just won a prize, anything to get your attention. After they have your attention, they ask you to provide a password or social security number or some sort of personal information. They then use this information however they please. According to Norton.com, a computer virus is very similar to a flu virus in the sense that it cannot replicate without a host. A virus needs a specific file to be shared in order for it to spread, then once it has spread to other devices it remains inactive until some particular task or command complete on that computer activates it. Once activated, the virus is capable of spreading the same file to multiple other computers and devices connected to the same network. Some of the most frequent signs of a computer virus are frequent pop-up windows, slow performance, unknown programs that open on start up, and changes to your homepage (Norton.com).
When talking about computer viruses, it is important to know that a virus is a malware, which basically means bad software, or software you do not want. There are several other kinds of malware including worm, Trojan, adware, and spyware. (Vahid, F., & Lysecky, S. (2017) section 8.1 par 7.) Each different kind of malware has its own unique way of getting installed and harming your computer.
In order to protect your devices from attacks, security breaches, spam, and so forth it is important to change your passwords frequently. By doing this, it eliminates or greatly lowers the risk of your passwords becoming compromised. It is also always a great idea to install some sort of secure, trusted, antivirus software onto your computer. Antivirus software is able to keep an eye on your computer when you can’t and can even keep watch over the things behind the scenes where might not be able to.
References:


Vahid, F., & Lysecky, S. (2017). Computing technology for all. Retrieved from zybooks.zyante.com/

Documenting a Day


For this blog post, I thought I would compare the pros and cons of different computer applications. I used several different applications for the same purpose and then compared my results. The following is my personal experiences documenting a day in my life with various computer programs. 
There are computer applications for virtually every situation or need. Microsoft office is one of the most popular lines of applications, which includes Microsoft Word, Excel, PowerPoint, and Access. Microsoft word can be used in the work setting, school setting, or even just for hobbies an random needs around the house. According to our textbook, Microsoft word is a word processor that is used to create formatted text (Vahid, F., & Lysecky, S. Ch. 5.4 (2017)). Another commonly used application is Excel. This is a spreadsheet that can be used for book keeping, organizing data, and completing calculations. If you want to create a slideshow presentation, then PowerPoint is the best application for that. You can create multiple slides filled with text, pictures, videos, etc., that have transitions and animations for each item. Lastly the database application is mainly used to organize data and to collect facts and values. As our textbook states, “database is a collection of data organized to enable efficient information retrieval.” Vahid, F., & Lysecky, S. Ch. 5.4 (2017)
Word is a great application for completing essays, journaling, or formatting any type of text as needed, however lack in the area of presenting information. It is difficult to use a Word document in order to display information to several people. PowerPoint on the other hand is a great application for presenting information to several people all at once, in a way that has more animation and interaction in order to keep people engaged. A disadvantage of PowerPoint is that each slide is limited to the amount of information it can hold, versus a word document that can contain much more written text. The Excel application is one that is best used to preform calculation of various types of data, and to organize data, however it is not useful in displaying graphics, pictures, or a lot of text. This is similar to the database application that is used to collect facts and organize them using various tables.
After using all of these different applications for the same project, I was able to see what application worked best. In order to document a day in my life, I think the power point presentation worked best. Using the PowerPoint application I was able to list the different activities I preform throughout the day, while also being able to include pictures that display my daily activities. This application lets you add animation and transition for each slide, which makes the information more interactive and more fun to watch.
The excel applications can be used to create checklists for constructions projects. In this scenario you can organize the spreadsheet into individual constructions projects, and then subcategorize each of those projects with corresponding checklists in order to ensure everything gets done for each specific project. Database applications could also be used to gather information about polls, surveys, or statistics for students at a college. Another use for the PowerPoint application, other than documenting a day in my life, would be for a teacher or professor to use as a teaching tool for their lectures. Lastly, Microsoft Word can be used in countless scenarios from writing essays, making lists, journaling, creating contracts, and so on.

 References:

Vahid, F., & Lysecky, S. (2017). Computing technology for all. Retrieved from zybooks.zyante.com/

Mobile App Critique: Walmart Grocery

      I have decided to review and app that I use frequently, and that has grown in popularity over the last year or so. The Walmart Grocery app allows people to order groceries, buy them, and then schedule to pick them up at their local Walmart. This app is extremely user friendly and has many great features. It requires no instructions to learn how to use the app, and it is all easily laid out and self-explanatory. The home page of the app (as seen below) displays featured item, items that you have recently bought if you have already used the app, and then has tabs down below for your personal account, favorites, search, and categories. 

       Below is a screenshot of the application page that lists different categories or departments. They are laid out in a way that is easy to ready, and all categories are well organized. I especially like that from no matter what page of the app you are on, whether its the homepage, departments, or favorites, you can always view your cart by clicking the top right hand corner or look in the right hand corner to get a glimpse of your current cost.

      The search feature and the way they have designed it is especially useful. In the following two screenshots, you can see that you can search for food brand or food types. For example you can search for the brand Kelloggs fruit snacks, and not only will it bring up the Kellogg's fruit snacks but it will also bring up similar items so you are able to compare prices. In the same way you can search by brand, you can also search by type of food. For instance if you are wanting to buy cereal but do not know what kind, all you have to do is type cereal and the application will do the rest. One of my most favorite features in this regard, is that no matter what you search, if you have an item similar to the searched item in your favorites, the app will automatically put that item at the top of the list. 


        As you can see below, once items are added into you cart, all you have to do is follow the queue's from the orange buttons in order to complete your transaction. The application will store credit card information on file, several cards even if that is what you prefer, making check out simple and easy. 
      Once you have checked out, and completed your order, the app will then let you schedule a time. I specifically like the functionality of this page and how the pickup and delivery options are broken into different tabs. I think it makes it easier to schedule a time where you can select a date for pickup from the horizontal row and then select a time from the vertical row. The app is proficient, yet user friendly which I believe has aided its recent growth an popularity, despite the services it offers. A company can have the greatest service in the world but if the only way to access that service is through an application that is not functional, then the service will get no business. 

      Lastly, after scheduling your order the application will notify you with updates of when your order is complete and when it is time to pick it up. You are then able to "check-in" from whatever location you are at, and the Walmart app will track you until you get to the Walmart location, which will then notify employees to deliver your purchases to your vehicle. It is all a very streamlined, easy process. 

(I wanted to include a screenshot of the tracking map, but I would have had to be actively picking up a purchase so it was not feasible)


Programming Languages


As we dive into different programming languages in this post, I thought I should start off by attaching the link to my first program made with Scratch. 
Link for my scratch program: https://scratch.mit.edu/projects/318468044
When I first went to Scratch to build my program I was pretty intimidated to be honest. There were so many options, tools, and buttons it was pretty overwhelming. After watching a video or two on how the program works and getting some ideas and inspiration, I was able to create my own little program. Being able to utilize programs like Scratch is very helpful to me because it allows me to practice, be creative, and learn all at the same time.
As previously stated, Scratch is overwhelming at first. There are endless tools and options you can choose from, making the possibilities virtually endless. At first I did not even know where to start. After learning how to develop motion, create backgrounds and interact with the program, it became a much more enjoyable experience. It wasn’t so scary anymore and become more about what I could create and not the obstacles I had to overcome. The tutorial on the Scratch website were so helpful in showing exactly what each block is for and how to utilize it correctly. Not only that but they have so many tutorial on all different kinds of programs you can create using Scratch, which I think is very useful. I feel like this is an excellent first assignment, because it gives you a taste of the amount of work and detail that goes into program, without it being too completely overwhelming. This program still simplifies the programming process enough to where you can get the feel for it, and just really have fun, instead of jumping during into the complex and intricate world of programming.
In my opinion the activity completed through Scratch was a more interesting activity, simply because it let you be creative. The activities throughout the textbook are much more literal and logical than Scratch. In a way, Scratch does all the “messy work” for you, and simplifies all the programming into blocks that you can drag and drop and use to create whatever you want. On the other hand, the activities in the textbook take you on a behind the scenes look at the “messy work” and shows the foundation of what all these “simplified” or “fun” programs are based upon. These activities show you the basic differences in computer languages, such as machine language, assembly language, and high-level language. Machine language is exactly what it sounds like. It is simply a series of numbers, or binary code that directly correlates to the machine what action to take. This is the only form of communication that computers have and the only form of information they are able to read. Other languages, such as assembly language and higher-level language, are written, and then broken down to machine language by programs known as assemblers. Assembly language is a simpler form of binary code that is used to break down inputs in order to tell the computer or device what action to take. High-level code such as python is the simplest code to write and is mainly used in developing programs, apps, software and things of that nature. More simplified code is used for even the most basic of computer action, all the way up to the most complex. I believe that higher-level language would be the easiest to use.
This computer language is the most similar to everyday writing, I think it is easier to understand and remember. Memorizing the same two numbers in different orders seems way more challenging than standard written words that we use in our everyday lives.
Today, assembly language is mainly used when dealing directly with hardware or processor. High-level languages have the capability to cross computer platforms, making them ideal for creating software and applications for multiple operating systems. Machine language is still the basic form of communication for every computer and though it is not as common for people to use direct machine language is today’s world, all computer languages we use today are translated into machine language. This day in age, I would have to say that high-level language is the most popular. With all the different apps, devices, and operating systems we have in the world, it is almost necessary to have a language that can span across many operating systems in order to deliver the same product to everyone. Take any applications you frequently use, whether it’s Facebook, Netflix, or Youtube, you can access those applications from Mac OS, IOS, Android, Microsoft, on an Amazon Firestick, a Roku, an Xbox, a smartphone or just simply your computer at home.