Monday, June 25, 2018

Is My Information Secure?

Information and system security are important in both individual and organizational settings. A breach in security can cause emotional, political, and/or monetary damage, since a breach can allow sensitive information to get into the hands of others. Once information is breached, the owner of the information has little control over where the information ends up or how it is used (Vahid, 2017). For example, most offices in the healthcare industry now use electronic medical records. Healthcare facilities are very diligent about the security of their systems, since patient information is confidential, and a breach of security would violate HIPPA laws. In a different scenario, an individual would not want to accidentally download malware onto their system, which could scrape their computer for personal information.

One type of attack against a system is called a Denial of Service (DoS). A DoS can occur when a destination server becomes overloaded with access requests. One way that hackers achieve this overload is through a botnet. A botnet is a group of computers that have acquired malware. Once the botnet is established, the hacker can command the devices to simultaneously send large quantities of access requests to a destination on the web (Vahid, 2017). Normally, a ping is a tool used to diagnose network and connection problems by sending test packets of data to determine the roundtrip time and whether or not the packets successfully arrive at their destination. However, in this scenario, hackers may use the ping command maliciously to send access requests. When there are too many access requests received at once, the server becomes overloaded and cannot respond to valid access requests from real users. Therefore, the user experiences a “denial of service.” Their access request cannot be granted, and they cannot access the destination. In some cases, the overload can even cause a server to crash.

One of the biggest issues related to information and system security right now are security holes, or vulnerabilities. Hackers target these vulnerabilities to gain access to a system and steal information or disrupt the functioning of an organization. According to Vahid (2017), “Security holes commonly exist in operating systems. Once discovered, OS makers update the OS to close such holes. Thus, computer users are advised to keep their OS'es up-to-date, not only to gain new features, but to close security holes.” Therefore, individuals can help protect themselves by keeping the software on their personal devices updated. However, users cannot necessarily control the security of their information when hackers target vulnerabilities in large companies. For example, in 2016 there was a DDoS attack on Netflix: “intentionally overwhelming a service such as Netflix with potentially millions of simultaneous hits can crash a provider’s servers, and this was one of the biggest attacks in recent history,” (Weber, 2017). These security breaches are damaging because hackers can obtain the personal information of users. According to Weber (2017), “Large data breaches such as what happened at Yahoo can have large financial rewards for the hackers, who then just sell the data in the underground black market. Even if your information is worth only a few pennies, the theft of a million records can pay back the hackers quite nicely for their efforts.” This shows that while large corporations employ methods to keep their systems secure, they are still vulnerable to attack. Therefore, it is important to only provide as much personal information as needed when creating new accounts.

Another major issue involving information security is phishing. This strategy of illegally obtaining data incorporates the use of spam e-mail to trick a user into providing sensitive information, such as account numbers, social security numbers, and/passwords. Often times the e-mail will appear to come from a legitimate company, such as a bank. Typically, the e-mail will include a link that appears to take the user to their account log-in page and will have the user enter their information. However, even though the link appears legitimate, the site that it opens is often an imitation site used to steal the victim’s information (Vahid, 2017). Users can avoid these scams by refraining from clicking on links in e-mails. A user can instead go to the company’s actual website and log-in to check for notifications and updates regarding their account. Phishing scams are constantly evolving, especially as smartphones become more common. One of the newer types of phishing scams is actually referred to as smishing, which comes from SMS, or “short message service.” In this scam, “You get a fake text saying there’s a problem with one of your financial accounts. Or maybe a message offering a low-cost mortgage, a discount cruise, or a free gift card. If you respond by text, the scammer will know that the number is viable and may contact you to try to get more sensitive personal information. If you click on the link in the text directly, the scam artist may be able to install malware that can collect personal information (account numbers, passwords, etc.) from your phone,” (Hickey, 2018). Con artists also phish for personal information via direct phone calls pretending to be a “bank, creditor, insurance company, or government agency,” (Hickey, 2018). Often the scammers use scare tactics to get the victim to divulge personal information before they have time to process whether or not the call is a scam, so it is recommended to never provide personal information over the phone if you don’t know who’s calling. Instead, hang up and look up the phone number, or try calling it back to verify that it is legitimate.

Resources

Hickey, M. C. (2018). Protect Yourself From These 7 Scams. (cover story). Consumer Reports,
83(6), 26-33.

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

Weber, R. M., & Horn, B. D. (2017). Breaking Bad Security Vulnerabilities. Journal Of
Financial Service Professionals, 71(1), 50-54.

Computer Literacy Necessary in Today's Workforce?: An Evaluation of Technology in Education

Computer literacy is extremely important in the education industry.  Whether one is an instructor, student, principal, or advisor, understanding how computers and applications work is essential to thriving in education.  As a high school and middle school teacher for 5 years, I experienced differences in technology capabilities at various schools.  Three of the schools where I taught had one-to-one technology initiatives.  One of these schools allowed students to use any device they wanted, while the other schools limited device options.

I experienced first hand the challenge of teaching students who themselves don’t understand how to utilize the technology they have access to.  In one school I found myself teaching students how to right click, copy and paste, open new browser tabs, etc. in a Biology class, because they didn’t have basic computer literacy skills.  In addition, I was forced to stop lessons to troubleshoot various issues on multiple types of devices, or to commandeer our IT team, who always had their hands full.

Two other schools where I worked did not have one-to-one initiatives, but instead had computer carts, which floated from classroom to classroom.  Again, the use of computers in these classrooms was commonplace, so students needed computer literacy in order to succeed in the given tasks.  Students used Google classroom, Microsoft Office, and other applications to support their learning.  In addition, as a long-term substitute teacher at one of these schools, I taught a STEM class that used Lego Mindstorms robotics software, which I had to learn on the fly.

The use of computers in elementary, middle, and high schools continues to grow, since computers provide another dimension to learning and tend to engage students who might otherwise be “checked out.”  Students even use smart phones in some classrooms to engage in real time assessments and interactive learning activities.  Therefore, teachers, principals, students, and staff members need to have computer literacy to keep up with the increasing technology demand in schools.

In regards to higher education, it is near impossible to be employed without basic computer skills.  Many colleges and universities now provide online education opportunities for students, so faculty and staff must be prepared to use the technology that students interact with on a daily basis for their courses.  In addition, as an enrollment advisor, I train students to use their online classrooms, Student Portal, and communicate with their instructors.  I also utilize multiple databases to access student information and keep my daily activities organized.  If I didn’t have basic technology skills, there is now way that I would be able to complete the tasks necessary for my job.

The future of education is in technology.  Technology provides opportunities for remote learning, as well as free learning for those who have the focus and determination to teach themselves new skills.  I see the future of educational technology moving more towards cloud-based applications, since the cloud allows access from multiple devices, collaboration on documents, and also provides opportunities for greater storage.  In addition, I believe that in the next ten years, there will be as many opportunities for online degree programs in higher education as there are for traditional degree programs on campuses.  I presume there will always be a digital divide as a result of limited access to resources in disadvantaged communities, but I also believe that strides are being taken to bridge that gap and improve public access to technology.

Resources

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

Troubleshooting: Diagnosing a Network Connection

Packets of data travel from one destination to another through the network by transmission between routers.  The ping command reveals whether a destination is available, and how quickly it can be accessed.  The traceroute command reveals the path that packets of data traveled from one router to the next.  Each time a packet is sent from one router to another, that is considered a hop.  There are multiple paths that a packet can take to get to the same destination, depending on the routers that are available along the way.

In comparing the ping command for the three different websites that I used, all three pings successfully sent 4 packets of information.  In addition, the amount of data sent in all three pings was 32 bytes.  This allows for easy comparison of round trip time between the three websites.  The average round trip time for the packets when pinging google.com (USA) was 12 ms.  The average round trip time for packets sent to amazon.co.uk (United Kingdom) was 133 ms.  The average round trip time for packets sent to amazon.ca (Canada) was 79 ms.  This suggests that the farther the geographic distance, the longer the round trip time for packets to be sent.

On the other hand, the traceroute command told a different story.  The only traceroute that was successfully completed was for google.com.  Although I tried running the command multiple times for both amazon.co.uk, as well as amazon.ca, the commands always timed out before the information was received.  This result confused me, since a command timeout can indicate packet loss.  However, all of the pings were successful.  I’m not sure how to reconcile the difference in the results between the pings and the traceroutes other than hypothesizing that if the command were to have enough time to run, the traceroute would be completed successfully, but since the distance the packets have to travel is so far (geographically), the command times out before the packets can travel that distance.

Pings and traceroutes can be used to diagnose connection problems in a few ways.  A failed ping request may tell the user that the destination is not available.  In addition, the ping request can tell the user the speed at which packets are traveling.  A traceroute can tell the user the path through which packets are traveling.  If a user is not able to access a destination, they may run a traceroute to pinpoint where in the path the data is being lost.  Since the traceroute shows the routers associated with each hop, the specific router that is failing may be determined.  In some cases, running a ping or traceroute may even reveal that the connection problem lies in the original device.  Cases where a traceroute may timeout or a ping may fail include when the geographic distance traveled is too far, or if a destination server is down.

To view pings and trace routes, please click on the following link:
Pings and Traceroutes

Resources

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

Ping to google.com
Ping to amazon.co.uk
Ping to amazon.ca
Traceroute to google.com
Traceroute to amazon.co.uk
Traceroute to amazon.ca


Which Office Application is Best?

Recently, I completed an assignment in which I explored the functions of various Microsoft Office applications.  My experience using Word, Excel, PowerPoint, and Access for the assignment was pretty uneventful. As a teacher for 5 years, I used every one of those applications, with the exception of Access, almost every day. I especially used PowerPoint to deliver science content to my students. Access is new to me, as I have never used that application before, and I had a bit more difficulty thinking of ways that the application could be used in my own life. I use a database for work, since I need a way to manage new leads and the students that I work with, but instead of Access, we use
Talisma and Campus Vue (two student management database systems).

Each of the applications that we used have different functions. The function of the word processor application is to create a text document with formatting, and the ability to add style using font families, bold, italics, underlining, pictures, etc. The function of the spreadsheet is to input, sort, and keep track of data. The function of the presentation application is to create engaging ways to deliver information using graphics and animations. The function of the database is to create queries to gather specific pieces of information.

The advantage of the word processor is that most of the formatting and stylizing functions can be found directly in the tool bar at the top of the page. This application allows a user to easily type a word document, and then very quickly make changes to the font size and family, add bulleted or numbered lists, or change the paragraph and page formatting options. However, Word would not be a great application for presenting information or analyzing data. The spreadsheet application is easy to use because once data has been entered, the user can easily create a graph or chart to analyze the data. On the other hand, Excel would not be the best application for presenting information to an audience or for writing an essay, since the data is arranged in the format of a table. The presentation application, PowerPoint, is easy to use because a user can add multiple slides, use a template to display information in the most visually appealing way, and add animations at the click of a button to increase engagement in the presentation. However, PowerPoint would not be the application of choice when writing an essay, since a user would want a single document, not multiple slides. The database application’s advantage is that it allows the user to quickly pull data according to specific records or fields. The database application allows communication between multiple tables of data to quickly acquire and organize information. On the other hand, this application would not be great for presentations, since it does not use images or animations to keep the attention of the audience.

The application that would be the best for documenting information about my day depends on the intended use of the information. Word might be the application of choice if I were writing a short story about my day that could later be published on a blog. Excel would be the best application if I wanted to track how much time I spend doing each activity per day over the period of a year. PowerPoint would be the ideal application if I were going to present about my day to an audience. Access might be the best application if I were going to compare the amount of time I spent doing activities throughout my day to other students at Ashford University, whose information was also in the database.

Another use for the Word application, aside from documenting my day, would be if I wanted to write a book. Word would allow me to quickly type the document, do a spell check, change formatting and font, and use the word count feature if needed. I could use Exel if I were conducting an investigation that studies how quickly bacteria grow on a petri dish. This application would allow me to record quantitative data relative to the rate of bacterial growth. I could then also use Excel to create a line graph showing the growth of the bacteria over time. PowerPoint could be used if I needed to present a training at work regarding how to track where a student is in the enrollment process. Access might be used if I were to create a Pinterest store and I needed to gather information about my inventory, customers, or orders. All in all, there is a purpose for every application, but the best application depends on the intended use of the information in the end.

Resources

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

What's Your Favorite Mobile App?

One of my favorite mobile apps is Instagram.  I use it on a daily basis to post a photo-a-day.  I love photography, but about two years ago, I realized that I was taking tons of photos, yet I didn’t have the urgency or discipline to cull, edit, and publish them regularly.  My new year's resolution in 2017 was to post a photo-a-day on both Twitter and Instagram (https://twitter.com/aliciapiavis and https://www.instagram.com/aliciapiavis/).  This allowed me to practice editing every single day of the year.  I maintained this goal for the whole year, and after realizing how beneficial having that structure was to me, I decided to continue the project this year as well.  Posting a photo-a-day provides me with the routine I need to regularly work on and improve my photography.

I chose Instagram to post my photos because I wanted to use an app that would easily show a history of my posts.  I felt that my photos would get lost amongst my status posts on Facebook, and I knew that Twitter is utilized more for following celebrities, news, and other media.  I already had an Instagram account that I had not been using, so I simply changed the purpose of my account to solely serve the photo-a-day challenge.  I learned that Instagram is fairly easy to use.  The app can be downloaded from both the Apple App Store, as well as Google Play.  As soon as the user opens the app, they can see the newsfeed of recently added photos from the other users they follow.  In addition, the landing page has a button right in the middle of the bottom task bar with a plus sign, which allows the user to add a new photo.  The user can then choose if they want to upload a photo from their cell phone’s photo gallery, take a new photo, or take a video.

I personally never use the photo option, since 99% of the photos that I upload were previously shot with my DSLR camera and then edited in Lightroom.  I have a slightly unique process of uploading my photos, since I also post the same photo to Twitter.  I post my photo to Twitter from my computer.  Then, I open the Twitter app on my phone, open the photo I just posted, and then save it to the gallery in my phone.  Then I simply open the Instagram app, click the “+” sign, choose “Gallery”, and then click on the photo that I just saved.  Since the photo is already edited, I skip the editing feature on Instagram, and go straight to the “Share” page where I write my comment, and then share it.  Basically, I can post a photo from the Instagram app on my phone in less than a minute-- great usability.

I love the design of the app because the layout is very simple.  When the user open the app, their newsfeed loads first, showing all the recent posts of their followers.  There are only five buttons on the bottom taskbar.  The user can easily go to their newsfeed by clicking the home icon.  They can search content with keywords using the magnifying glass icon.  They can see their notifications for people who have liked or commented on their photos by using the heart icon, and they can see their own feed by selecting the person icon.  In addition, if I user wants to upload a photo and use a filter, there are many filters built in to change the look of the image in the tap of a button.

In regards to functionality, the app has a few functions, but they all revolve around one thing-- photos.  One of the functions that Instagram offers is the ability for a user to edit their photo or apply a filter before publishing it, and the user can also write a comment about the image.  In addition, users can also “tag” their photos to appear in keyword searches or to be placed into a specific category.  This function can allow a user’s content to be more easily discovered by other users.  For example, if I were to search “mountains” in the app, I would receive all results which were tagged with #mountains.  I can also sort the results by “Top” (most popular), “People” (names of users), “Tags”, or “Places” (the location where the photo was taken).  Another function of the app is that it is linked to other social media apps, including Facebook, Twitter, and Tumblr, so the user can easily post the photo to multiple sources at once.  Another function of the app is the ability to choose who the user wants to follow.  For example, I love travel, nature, and wildlife photography, so many of the users I follow post similar content.  I can also go directly to their Instagram feed to see all of the posts that they have created.

As far as recommendations go, there are three areas for which I see areas of improvement.  The first is that Instagram only allows photos of a certain aspect ratio to be posted.  For example, some of the photos I have wanted to post are panoramas.  They post just fine as a panorama in Twitter.  However, as soon as I try to add the photo to Instagram, the platform immediately crops the image, and cuts off the edges of the panorama.  The same goes for portrait photos.  If I try to post a portrait oriented photo on Instagram, either the top of bottom will get cut off.  Another area of improvement applies to the web version of the app.  Unfortunately users cannot create new posts through the web version of the app.  New posts can only be created through the mobile app.  Lastly, I wish there was a way to get rid of robots.  If there was a robot to get rid of robots, that would be great!  Every now and then I see a notification that someone has commented on one of posts.  I have a fleeting moment of excitement, until I realize that it was just a robot asking me to follow them.  Other than those three elements, I love Instagram because it’s easy to use, the design layout is very simple, and it has the majority of functions that I need.


Friday, June 22, 2018

Scratch:My Frustrating Attempt to Write Block Code Using a Children's Program...

I tried Scratch (a children's program that teaches block programming language) for the first time ever!  Here's what I came up with from my sorry first attempt...

Penguin Man Program (click the link to see the program): https://scratch.mit.edu/projects/227437790/

My experience building the Scratch program was actually quite frustrating. It didn’t help that I had just came off of a long week in which I was wrapping up my previous course, while beginning my current one (I am doing concurrent enrollment for school). Therefore, the weekend before my Scratch assignment for class was due, I was tied up completing my Medical Terminology final, a 2-day (Saturday and Sunday) coding workshop through Turing School of Software and Technology, as well as trying to complete assignments and the reading for my INT100 course. I also work full time. Honestly, I wish I would have had more time and energy to explore Scratch sooner, but due to an usually busy schedule the past week, I was not able to explore the program until the night it was due. 

The Scratch software was not very intuitive to me, even though I read the user manual first. The manual was helpful for basic tips, but I found that creating an animation with very little brain power left at the end of the day was rather difficult. In addition, I couldn’t figure out why actions seemed to be occurring so quickly, almost as if they were compiled on top of one another. I realized that using the “Wait” block was helpful in between actions to slow down the process. In addition, it took me a while to figure out how to lengthen the duration of the drum beats—eventually placed the drum beat inside of the repeat block to create more beats. Also, I realized that “Point in direction __” was very different than “Turn __ degrees.” I found it helpful to click on blocks separately to observe their actions before adding them to the stack. In the end, the result was a very basic animation stemming from a struggle with both creativity and patience. 

This exercise taught me that trial and error can be a useful method in programming. In addition, I learned that the steps in a program occur sequentially, and that they need to be specific. I also learned that programming takes patience and perseverance, and that I might not get my desired outcome the first time. In the real world, it would be helpful to have a plan or design first, and then to write the code that fulfills that plan. 

My experience programming with Scratch was a bit more frustrating than my experience with the participation activities in my course textbook. I think that was partially due to the fact that the textbook asks for a desired outcome, whereas with Scratch I had no objective other than to create a program using 30 blocks with a variety of components. The Scratch program was very open-ended and required us to design a program, along with writing the code. I caught on pretty quickly to the participation exercises in the book because they were very straightforward and had a desired outcome, but I can see how in the bigger scheme of things, languages like machine language would be very impractical. 

The programming languages that my class reviewed in our textbook are all very different from one another. Machine language is the lowest level language, and the only language that computers can read and understand. Machine language is simply binary code made up of one and zeros. Assembly language is a step up from machine language in that it reads a bit more like English; however, complex functions are not possible using assembly language. High-level languages like Python are the most efficient. They have similarities to English, but can allow for very complex functions and logic, including conditionals and loops. 

Honestly, I found Python language the easiest to use in the participation exercises found in the textbook. The binary threw me off a bit when trying to use machine language and assembly language. It took me some time to see the connection between the “input”, “output”, “add”, “start” and the corresponding binary code. In addition, it took some time for me to conceptualize that a variable is a location. I think that the programming exercises in Python came the easiest to me because I have a little bit of experience in Java, Ruby, HTML, CSS, and JavaScript. Therefore, Python was the most familiar to me. When I was trying to program in Scratch, I understood that the logic was similar to Python and other high-level languages, but some of the blocks of code in Scratch performed actions differently than I predicted. In addition, I felt that I didn’t have enough time to fully understand all of the icons and nuances of the software to use it effectively. 

In regards to use, machine language is the most basic language of computers, so it will always be used as the foundational language that the others are built on top of. Assembly language can be used for basic functions and manipulations of data. High-level languages like Python can be used for complex manipulations of data and large data sets. I believe that high-level languages are the most popular today because they can perform tasks much more quickly than machine language and assembly language. Therefore, productivity in an organization can be increased.  

Resources 

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