Menu

Monday, May 4, 2020

Tech Topic

History and Future of Computers
            According to Shaikh, A., & Karjaluoto, H., the broader term "information technology/systems" refers to a set of systems, technologies, processes, business applications, and software (Shaikh, A., & Karjaluoto, H., 2015). Computers started from telephone switches in the 1900s when engineers realized they could be used for performing calculations. Early computers were large, expensive machines, costing millions of dollars, occupied entire rooms, and were used for government and business purposes. In the 1950s, computer chips were invented and frequently improved to have lower costs. Over the years, people began purchasing desktop and laptop computers for home use, and computers started appearing in the form of electronic tablets, book readers, and smartphones in the 2000s. Today computers have evolved, and billions of embedded computers  (electronic devices with computers inside them) are manufactured every year. Costs range from pennies to millions of dollars (Vahid, F. & Lysecky, S.,2017). The very term information technology comes from data or information that is stored, sent, or retrieved with devices such as computers, tablets, smartphones, or other electronic technology.
             Since the 1900s, when computers were just a series of switches and evolved from large mainframes to desktops, computers have always relied on the major hardware components to perform necessary computing tasks. The functions of a modern computer system are required to perform mathematical calculations, run application software, open a web browser, and create PowerPoint documents.
            Adding eggs or stirring ingredients, are instructions in a recipe. Similarly, computers execute (or run) programs consisting of directions, like multiplying numbers or showing a number on a screen. Through the industrial age, Mathematical thinking became increasingly important, which enabled people to live and work successfully. Many people believe, creating a sequence of instructions to solve a problem, or computational thinking will become increasingly important for everyday life (Vahid, F. & Lysecky, S.,2017). People use computers to create or build web pages, software programs, or even applications using both low-level programming languages such as Machine and Assembly language to compile high-level programming languages. There have been many high-level programming languages developed over the years. The most popular languages include C, C++, Java, Python, and Javascript. Each of the languages has different strengths or weakness and are used for different purposes (Vahid, F. & Lysecky, S.,2017). User interaction can also send lines of commands to an interpreter, or batch processing can perform program execution without human intervention.
            Application software plays a vital role in any computer, for without the operating system, we wouldn't be able to perform any of the tasks needed. Without the operating system, we wouldn't have a graphical interface and would be back to typing commands in a command box as in the days of MS-DOS. Most of the tasks I perform daily for work, such as creating spreadsheets, word documents, creating graphics, reading/sending an email, or even creating training for our enterprise, need application software to complete.
            A collection of data organized to enable efficient information retrieval is called a database. (Vahid, F. & Lysecky, S.,2017). The main purpose of a database is storing and managing large capacities of data. Database software plays an important role in our current society. No financial transactions, ecommerce, airline reservations, or even buying groceries at the local supermarket would be possible without databases (Hey, T. & Papay, G., 2015).
Computers store/retrieve information from database applications such as MySQL, Microsoft Access, or Oracle.  At Blue Shield, company and member data are stored in an Oracle multidimensional database, and database managers perform management tasks on the database and the data stored inside. Member claims information is stored along with provider information, claim status, and costs.
The future of computer technology will bring many changes and new technologies. Pysicist and Co-Founder of String Theory has predicted the end of the “Age of Silicon” will be within the next ten years once silicon chips get down to 5mm. What’s next?  Possibly protein computes, DNA computers, optical computes, quantum computers or molecular computers (Kaku,M, 2013). Whatever the future brings I’m excited to see what exciting new technology it will bring.       
           
References
Shaikh, A., & Karjaluoto, H. (2015). Making the most of information technology &
systems usage: A literature review, framework and future research agenda.
Computers in Human Behavior, 49, 541-566. doi:10.1016/j.chb.2015.03.059
Hey, T., & Pápay, G. (2014). The Computing Universe: A Journey through a Revolution. Cambridge: Cambridge University Press. doi:10.1017/CBO9781139032643.
Michio Kaku: Tweaking Moore’s Law and Computers of the Post-Silicon Era.Big Think.April 13, 2012.YouTube. https://www.youtube.com/watch?v=bm6ScvNygUU

Friday, May 1, 2020

Network Security


            Companies and individuals are finding they need to be more and more diligent in scrutinizing the emails they receive as many of these emails are trying to obtain private and personal information. Phishing is a form of deception in which an attacker attempts to fraudulently acquire sensitive information from a victim by impersonating a trustworthy entity. Phishing attacks typically employ generic "lures (Jagatic, Johnson, Jakobsson, & Menczer,2005.)" Phishing is a form of Social Engineering. Social engineering has emerged as a serious threat in virtual communities and is an effective means to attack information systems. The services used by today's knowledge workers prepare the ground for sophisticated social engineering attacks (Krombholz, Hobel, Huber, & Weippl, 2015, p. 121). Computer systems are vulnerable to social engineering, and +phishing due to users fooled into clicking on links that they believe are from valid companies. PING-based Distributed Denial of Service (DDoS) attacks or a ping flood is an attack executed using ping commands. A ping flood has brought down several high profile web sites such as eBay, ETrade, and Yahoo and has also been used in an attempt to bring down the entire Internet by attacking its DNS root servers (Kumar, S. (2006)). My company launches several phishing campaigns each year to try and fool employees into clicking on links in phishing emails. If an employee mistakenly clicks on a link, they are required to complete employee training on how to recognize phishing emails.

            The dangers of social engineering, along with phishing attacks, is that your personal and sensitive information, along with passwords, can be compromised. The loss of this information can lead to identity theft, financial loss, the ability for criminals to use your account to send spam emails.  For companies, Phishing can lead to criminals having access to sensitive company emails and documents. Once a company's network has breached, this can lead to substantial revenue loss, loss of intellectual property, and damage to brand reputation along with other hidden costs such as legal fees.
            In terms of technical countermeasures, several efforts would reduce the success of many phishing attacks. If digitally signed email became commonplace, this would reduce the likelihood of users falling victim to attacks of this type. The second line of defense might be a browser toolbar, which alerts users of likely Web spoofing attempts, this might allow many subjects to detect a phishing attempt. Providing users with a secure path for entering passwords could be used to alert users that they are attempting to authenticate to an unknown site. Simple spam filters are not likely to have an impact on attacks unless they also detect if email messages are spoofed. Extensive educational campaigns about Phishing that aim to make typical Internet users less vulnerable by a heightened awareness of the dangers of Phishing, and the importance of reporting attacks to which they fall victim (Jagatic et al., 2007).
References
Kumar, S. (2006). PING attack – How bad is it? Computers & Security, 25(5), 332–337. https://doi.org/10.1016/j.cose.2005.11.004.
Krombholz, K., Hobel, H., Huber, M., & Weippl, E. (2015). Advanced social engineering attacks. Journal of Information Security and Applications, 22, 113–122. https://doi.org/10.1016/j.jisa.2014.09.005
Jagatic, T. N., Johnson, N. A., Jacobsson, M., & Menczer, F. (2007). Digital Library: Communications of the ACM. Retrieved April 25, 2020, from

Monday, April 27, 2020

Computers in the Workplace



In the healthcare industry, records are stored as electronic healthcare records. Healthcare professionals review the records to diagnose and prescribe medications, use apps and software programs to help manage patient records, boost staff efficiency, and help prevent human error. Computers document treatment, medication, and care recommendations. Doctors use computers to manage and record patient information, which can help them make a more accurate diagnosis and helps multiple doctors work with the same patient. Telemedicine enables people to discuss their health concerns with a general practitioner over the phone or via video. Surgeons carry out many advanced surgical procedures using a computer known as Computer Assisted Surgery. Computer technology helps to communicate and share knowledge between medical practitioners and patients. Advanced medical imaging equipment can now create three-dimensional images used for mammography, ultrasonography, magnetic resonance imaging (MRI), and 3D x-rays. These images are stored and retrieved from a computer database. Medical staff need to be computer literate to run the medical devices to obtain medical imaging accurately so doctors can interpret the results. Staff need to use software programs and apps accurately so that doctors can diagnose their patients' medical issues, store patient records, so there isn't any privacy, security, or legal problems.

Considering computing trends, I believe the medical field will create more technologically advanced medical devices to bring more progressive treatments to the industry, the ability to detect diseases earlier on a more molecular level. These trends will save healthcare costs.  Healthcare will become more preventative, prediction-based,  rather than reactive, and be more community or home-based so that patients can receive long term care in their homes.

References
Reed, E, (2019 January 5) 6 common uses for computers in Healthcare. Retrieved April 22, 2020, from https://www.scott-clark.com/blog/6-common-uses-for-computers-in-healthcare/

Harsh, M. How Technology will change the future of Healthcare. Retrieved April 22, 2020, from




Sunday, April 26, 2020

Traveling Through a Network



Based on the ping and traceroute commands, packets travel from the original computer that pings or traceroutes another computer. The ping command and traceroute command hops from one computer to another until it reaches the destination computer. The ping command calculates the time it takes to reach the destination and shows any packet loss along the route. The traceroute shows each host the traceroute command goes through on it’s way to the destination computer.
My ping to Google.com took a minimum time of 13 ms, with a maximum of 16 ms with no packet loss.  Pinging wildberries.ru took a minimum of 190 ms and a maximum of 192 ms with no packet loss, and pinging Rakuten.co.jp took a minimum of 119 ms and a maximum of 123 ms with no packet loss as well.
ping google.png
ping rakutencojp.png
ping wildberriesru.png
I also did a Traceroute of the same three locations, upon analyzing the screenshots of ping and traceroutes I noticed that the websites in Japan such as rakuten.co.jp and wildberries.ru in Russa took a lot longer to ping than the Google website.  The traceroute confirmed the ping results, the locations further away, such as Japan and Russia, took an extended amount of time to respond.  The traceroute confirmed the farther away the location such as rakuten.co. in Japan and wildberries.ru in Russia took much longer. I could see all the hops the traceroute went through along with each IP address. The traceroute to wildberries.ru had several timeout issues along the route, that was the command that took the longest amount of time. I was surprised that ping to Japan responded faster than Russia since Russia is closer than Japan.
traceroute google.pngtracert rakutencojp.pngtracert wildberriesru.png


Ping can be used as an internet troubleshooter as it shows latency and packet loss.  If there’s no response from a host, a host might be down, or there might be a problem along the route. I there’s packet loss there may be congestion or an overloaded router along the path. Traceroute can be used to find where a problem may be along the route if one of the hops times out; that could be where the problem is along the path.

Role of Applications Reflection


            A word processor such as Microsoft Word is an application that creates documents using formatted text, including bold or italicized text, bulleted or numbered lists, indented text, and even columns (Vahid & Lysecki, 2017). You can also insert pictures into the document. The disadvantage of a word processor is that the tool is not recommended for presenting information visually, for showing numbers and calculating formulas, or for storing data, those tasks are better suited for presentation software, spreadsheets, and database applications. A scenario that would be useful for a word processor is collaborating with other colleagues on a document. The application I recommend for documenting the information about my day is a word processor, as I can format the text in any way I choose, add bullets, change font sizes, and align text to best present the information.
A spreadsheet application, such as Excel, is used for representing text, numbers, and calculated formulas in a table format. A spreadsheet has cells and rows where a user enters data and inserts formulas (Vahid & Lysecki, 2017). The disadvantage of spreadsheet applications is that it's not the best tool for presenting information visually, which is best suited for presentation software. A scenario to you would use a spreadsheet is for creating a financial budget.
Presentation applications such as PowerPoint visually show graphics, text, and animations in a slideshow format  (Vahid & Lysecki, 2017). The disadvantage of presentation software is that it should not be used for sharing numbers or calculations in a table format, a spreadsheet is a better tool, or for storing information to retrieve later, which is best used with a database. Another use of presentation software is for the creation of videos that can be shared with others.
Database applications store a collection of data. Databases add data, process data, and retrieve information that can be reported on and manipulated  (Vahid & Lysecki, 2017). A disadvantage with database applications is that formatted text is not easy to store in the database. A scenario where a database can be used is to store employee information, store inventory, number of items sold, along with product costs.
           
References
Vahid, F. & Lysecki, S. (2017) INT 100: Fundamentals of Information Technology & Literacy, zyBook ISBN: 978-1-5418-0827-0.

Tuesday, April 14, 2020

Mobile App Review

Facebook is a social media mobile app that was started by Mark Zuckerberg and eventually launched to the general public on September 6, 2006. Facebook currently has over 2 billion active users.
Facebook helps you stay connected with friends and family. The Facebook app is very intuitive, and you can easily create a profile, add pictures to your posts, react to friend's posts, and even join groups of people who share your interests. The design is simple which makes it intuitive, but they have tried to add too many features into this app, which causes quite a few issues when trying to use the app, the app tends to crash often, and at times I have difficulty reading comments that others have posted. There is a lot of functionality, and I believe developers can add too much functionality, which can cause performance issues and glitches in the mobile application.





Recommendations

One of the things I would recommend is removing the People You May Know feature. Most users are not interested in adding people they don't know to their list of friends, let the user choose their friends, not Facebook.  Another feature that should be changed is the algorithm Facebook uses for its news feed. The algorithm has changed many times, and the latest iteration is supposed to make your friends and family posts appear at the top of your news feed.  Many of your favorite posts and groups will still not appear in your feed unless you edit your news feed preference for that user /group to See First; otherwise, you will find them buried at the bottom of your feed.  Another recommendation is to lower the amount of sponsored advertisements that are allowed to appear in your news feed. I know that Facebook allows businesses to post ads for their products to help the businesses sell their products but I don’t enjoy having my news feed interrupted by sponsored ads for an item I have no interest in purchasing.

Programming Languages


When I first started building a program using Scratch, I found it difficult as I’ve only had experience building programs using high-level languages, and there weren’t any step by step instructions.  I did watch the scratch tutorial, and then I tried building my first program. I did find myself becoming frustrated at times when blocks were hard to remove from a sequence.
I overcame the difficulties building the program in Scratch by spending time reviewing all the tutorials to obtain ideas on what type of program I wanted to create, a game or a story. Once I decided to create a story interaction, I started building it in Scratch. When I hit roadblocks figuring out how to perform certain things in Scratch, I spent time searching Google for ideas on how to accomplish the task. Google provided me links to the Scratch community and YouTube videos. With more information on how to add the functionality to my program, I continued adding blocks to the program. With testing and trying different solutions, I continued to modify the program until I achieved the desired results.
The insights I gained programming this exercise was how to use event handlers, loops, and broadcasting messages between two sprites so that they could interact with each other, along with problem-solving the issues I encountered building the program.  I liked the fact that each block built on another to create an entire program that was visual instead of text-based. At first, I thought I was not going to enjoy using Scratch, but I continued trying new things, and I learned to enjoy finding different things I could create. I am excited to see what new ideas I can create with this software.
The participation activities in Sections 2.8, 2.9, 2.10, and 2.11.that were machine language and assembly language activities were difficult. I, unfortunately, made several mistakes as programming in binary has always been more difficult for me.  The assembly language activities were slightly easier but still challenging as assembly language does not use syntax like high-level languages use (Python or Javascript).
The difference between programming languages is that some languages, such as Machine Language, are easier for a computer to execute since Machine Language has a binary form consisting of 0s and 1s, which a CPU understands. Assembly language is a more understandable programming language than Machine Langauge; it needs an Assembler to translate the Assembly Language into Machine Language so the computer can run the program. High-level languages such as Python, C, and Javascript use high-level instructions, which are much easier to understand for programmers.
I found high-level languages like Python and Javascript the easiest to use as lower-level languages are harder for me to conceptualize. I am used to programming using high-level languages, which include Python and Javascript.
Machine language is the easiest programming language for a computer to run as it is in binary format and would be most effective when programming mainframe computers used decades ago. Assembly language needs an assembler to translate the code into machine language and is most effective when programming older systems and also for anything that would interact directly with computer hardware. High-level language can be used effectively with any type of programs as it is much easier for programmers to understand the syntax and to program using the language.
I think high-level object-oriented progamming languages such as Javascript are the most popular as the high-level languages are easier to understand, learn the syntax, and use for creating object-oriented programming.

Tech Topic

History and Future of Computers             According to Shaikh, A., & Karjaluoto, H., the broader term "information technology/...