Understanding Hardware Components in Modern Computing

    My real passion is hardware: CPU, RAM, and recently GPU, associated with information technology. Hardware is the portion of a computer architecture system that guides the physical infrastructure, allowing all computer systems to function. This interest developed as I engaged in making personal computers and upgrading them for years. I always found tremendous value in understanding the purpose of each component, how they interact to create performance and functionality, and how quickly hardware is changing. In my opinion, hardware is unlike any other component of technology, as it allows tangible technology to converge with abstract computational thinking.


I became increasingly interested in how GPUs have developed from their main focus of developing graphics to using GPUs for further computing. At one time, GPUs were only built to enhance the speed of image rendering from a game or visual application. NVIDIA (2023) goes into detail, especially about how GPUs changed significantly when they moved from fixed-function graphics processors to highly parallel computing engines. With GPUs today, they can be used much more as computing engines to accelerate deep learning, to support data analytics, and to develop Android and AI applications. As the ability for this task becomes economically viable, a great research question arises: How has the graphics processing unit transformed from its original intent to importance in modern multifaceted computing beyond graphics?


This research-to-define area relates well to the themes of information technology presented in the course. The physical architecture of IT, hardware, is the physical basis that allows all IT activities and functions to exist. In reflecting on computer systems and their evolution over time, it became clear that the designs offered by hardware have granted stackable resources in the context of power and efficiency in computing. Hardware was the primary factor in all computing advancements from the enormous vacuum-tube machines circa the first part of the 20th century to today's compact, little multi-core and specialized computing units.


To understand how GPUs work (along with all other hardware components), a basic understanding of key computer science and IT concepts such as the fetch-decode-execute cycle, instruction sets, and parallel processing is necessary. In addition to the aforementioned, these components operate combined with the CPU, memory, storage, and I/O systems to perform all kinds of operations, from simple arithmetic operations to advanced artificial intelligence simulations. GPUs use thousands of smaller cores and leverage parallel execution of these cores in that parallel execution is a processor executing computer tasks in parallel (Kurniawan & Ichsan, 2017). In the context of GPUs, this parallel execution is exceptional because compute-heavy workloads compatible with parallel execution can leverage thousands of processors to provide computation simultaneously.


By hardware shown as essential, we also extend to the execution of software. High-performance applications leveraging VMs and data analytics or providing real-time rendering (Generative AI) often rely on high-performance hardware configurations. A breakdown of languages like Python, C++, or CUDA often includes hardware-level optimizations; compilers also convert high-level language to machine language for hardware to run the program efficiently. The importance of creating hardware-aware applications for maximum performance of the computing system is exponentially important.
Application software that runs on an operating system, on user-directed requests or system-level requests, ultimately exercises the hardware that provides the efficiency or capabilities to perform. For example, the training of large-scale machine learning models would be unrealistic to execute without hardware complying with parts such as GPUs because of the high volume of complex data and computing.


The relevance of hardware in a database system cannot be overlooked. The increasing productivity of a database is reliant on the reflection of disk speed, memory bandwidth, and CPU efficiency. A high-throughput system will often rely on specialized hardware like an SSD spread with a RAM cache to run off datasets in real-time. As we improve the way we use technology that stacks data, reliance on hardware to support robust data management will continue to be center stage.


Finally, in regard to networking and cybersecurity, my special interest, hardware, lays the first foundation of network infrastructure and security enforcement. All hardware nets: NIC, switches, routers, and firewalls are needed for reliable, safe, secure communications. Also, understanding the hardware limitations and capabilities is critical for the next level of network architecture and triggers for intrusion detection and orientation of an incident response (Kimmons et al., 2015).


In this blog, and as an ongoing course of study, I will be recording the significance in examining the evolution of hardware components, specifically the GPU, as well.

 References

Kimmons, R., Miller, B. G., Amador, J., Desjardins, C. D., & Hall, C. (2015). Technology integration coursework and finding meaning in pre-service teachers’ reflective practice. Educational Technology Research and Development, 63(3), 313–330. https://doi.org/10.1007/s11423-015-9394-5

 NVIDIA. (2023). What is a GPU? Retrieved from https://www.nvidia.com/en-us/drivers/what-is-gpu/

Network Security

    For individuals and organizations, information and system security is paramount. In today's digital world, the risk of cyber threats has increased significantly, leading to potential exposure of sensitive information. Individuals may become victims of identity theft and financial loss, and organizations face risk of loss in customer information, business operations, and reputational risk. This paper will examine the vulnerabilities and impacts of malware, ransomware, and phishing attacks, and protective measures to reduce these types of threats.


Malware and Ransomware


Malware is malicious software designed to inflict harm on a computer system, while ransomware is malware that encrypts data and demands a ransom to unencrypt the data. User mistakes, failure to update software, and poor security practices make computer systems susceptible to malware. Many of these weaknesses occur when users download software from unknown sites, open attachments from suspicious emails, or click on links that lead to malware.


The following are symptoms of a malware infection, a computer system may:
- Be slow, for no reason,
- Crash for no reason,
- Generate odd pop ups,
- Have files that are attached, locked, unexplained.


Ransomware infections cause downtime with big impact on businesses because the data it encrypts is typically sensitive, crippling business while they expend resources recovering data instead of operating normally. The WannaCry attack is an example of how ransomware halted organizations across the world with crippling results, including financial and operational impacts (Chen & Bridges, 2017).
The two primary recognized ways to protect against malware and ransomware are with system updates and user education. Maintaining keeping software up-to-date closes the door for opportunistic attackers who may want to use those vulnerabilities, and educating the users limits how often they become victims of social engineering attacks. The possibility of infection can be reduced by employing strong anti-virus software and backing up data regularly to mitigate potential damage (Chen & Bridges, 2017).
 

Phishing and Smishing


Smishing and phishing are two social engineering strategies intended to manipulate users into divulging sensitive information. Phishing occurs in an email medium, while smishing is in a text message. Users, and their computer systems, are vulnerable primarily because of the nature of humans themselves; phishing and smishing exploits trust and urgency to make individuals believe, in error, that they need to click a bad link, enter data, or verify personal information (Hong, 2022).
Common indicators of phishing and smishing that individuals may see are requests for sensitive information in an unexpected context, urgency in the message, and/or senders that are unfamiliar. Once information has been compromised can experience reveal of private information, reveal of financial data, or unauthorized access to an organizational network. Organizations can experience breaches of organizational data leading to regulatory penalties and potential loss of customers' trust. Phishing scams have been noted in incidents as a major cause of breach, responding proactively is important (Hong 2022).
Ways to protect against phishing and smishing includes user awareness training around tech that works as indicators for phishing and to utilize multi factor authentication (MFA). MFA authentication options add another layer of security so that it requires the authentication of identity from several sources, which greatly reduces the effectiveness of phishing attacks. Additionally, approach organizations should use email filter solutions that can identify and quarantine suspicious communications, and thus broaden the levels of threat (Hong, 2022).


Conclusion


Protecting against malware, ransomware, phishing, and smishing is paramount in securing information systems. Organizations and individuals must employ proactive strategies like regular software updates, user education, multi factor authentication, and data backups to defend against these pervasive threats. Effective security measures not only safeguard sensitive information but also preserve operational integrity and reputation, crucial for sustained trust and functionality in the digital age.

Computers in the Workplace

 

Computers are essential to the logistics industry, supporting everything from inventory management to shipment coordination. I see computer systems as playing a support role in warehouse functions, managing supply chains, and providing a transportation vehicle to different departments. Computer software applications such as transportation management systems and warehouse management systems support tasks including route planning, delivery tracking, and performance measurement.

The majority of logistics workers will have parts or all of their jobs online, so it is crucial for the employee to know how to correctly enter information, process through different software platforms, and read reports generated by the system to be effective. Poor computer skills may cause errors that lead to slow shipments, incorrect inventory counts, and costly downtime.

The logistics industry will be shaped by advances in computer hardware and networking in the future. Computing power will continue to grow, data processing will improve, and better connectivity will be provided with advances like 5G. Ultimately, logistics systems will continue to evolve to where shipments can be tracked in real-time and logistics functions will operate more efficiently than they currently do, even in more remote locations.

It is widely believed that Artificial Intelligence will revolutionize logistics in the next ten years. The logistics industry will be improved using AI-based systems that will analyze and present data, predict demand, optimize routes, manage freight costs, reduce fuel usage, and more. Autonomous vehicles and drones will probably become common carriers of freight, functioning through AI-powered networks and computers with processing power in the future.

As computer hardware and software keep advancing, the necessity for employees to be computer literate and learn quickly is going to be more important than ever.

Traveling Through a Network

 

     The ping and tracert diagnostic applications are very rudimentary ways of having a look at the manner in which data traverses a network. After executing many outgoing pings and tracert commands to various worldwide destinations, I have gained some insight into how data traverses the world to data servers and how network configurations can affect the quality of the connection.

With the ping command, I measured round trip time (RTT) to several websites like google.com, amazon.com.au, and amazon.co.jp. The blue-chip google.com network had a very low average latency at 12 ms. This is expected as well-designed content delivery networks usually perform well with consistent latency. Unexpectedly, I recorded an average RTT of 12 ms also for amazon.com.au, something that should have been higher given the relative distance. Contrastingly, amazon.co.jp had an average RTT of 23 ms, probably due to their routing choices or actual server location.

I used the tracert command to amazon.com.au and was able to see the hops along the path of the data. A few hops had timed out, but we reached our destination after 17 hops, with a ping response time averaging 20 ms. A request that times out in a tracert doesn't automatically represent a problem, but it may mean that some routers simply don't respond to tracert requests.

Interestingly, the ping command resolved one IP address (13.224.25.139) for amazon.com.au, whereas the tracert command resolved a different IP address (52.119.171.206). This resolution difference could be due to regional load balancing taking account of several endpoints.

I believe it can be established that low RTT doesn't always equate to low geographic separation. content delivery networks and local cached servers are designed to provide the low response time the average user expects. Both ping and tracert can be used to investigate issues. Ping serves as a check on connectivity, while tracert provides the data route including delay and dropped packets, and where delays start occurring (local versus remote server).

Two common reasons for timeouts or errors in the output from network ping or tracert requests are a firewall configuration causing ICMP responses to be blocked or that the routers which have helped to deliver the request packet have been configured to deprioritize/ignore requests from tracert.

Documenting a Day

 

    Research has shown that people who write daily (or almost daily) are better writers than their peers who do not write regularly. The behavior of developing habits of writing regularly and sharing it results in more customers, jobs, and ideas than those who behave or go without writing regularly. While individuals write at a different frequency and for different reasons, having enough prose to write on a regular basis has proven returns on investment, and this essay will show a great way to do that - by keeping a digital journal, or daily journal. Software that supports electronic journals is built on the same comprehensive principles. Word processors may, in fact, be fairly effective solutions outside of journaling applications.

    While application types have similar functions, and in the previous section, I do not want you to think one is better than another, but rather that there are multiple choices really providing us with the opportunity to execute or document our experiences functionally and efficiently.

    The focus of this essay will only examine the pros and cons of these applications for the purpose of documenting your experiences related to the journal genre. In terms of thinking about journaling, you are simply reflecting on the past and jotting/electronic format documenting each experience: creating, discovering, and doing. To get started, here are the functions.

Functions of Application Types

    A word processor is used to create and edit documents (with opening/creating, editing, and saving functions), and using many functionalities: spell check, styles, formatting, graphics, to manipulate, and create text documents (Shelly, Vermaat, & Freund, 2019).

    A spreadsheet helps you organize data with formulas, into a rows and columns format, and then a chart based on a visual representation that can show comparisons of data, without defined dimensions - the limitation is up to you.

    Presentation software allows us to combine text, pictures, and multimedia in a slide‐based deck format to most often share our ideas, be it live or recorded.

    Databases use tables with relationships to key data, and structure tables so we have multiple users accessing #data using queries and forms (O’Brien & Marakas, 2011).


Pros and Cons

    Word processors can easily create narrative reports and journal-style entries, with numerous formatting functions - and some can utilize track changes; however, they typically do not automatically perform any calculations or data sorting, which makes them less useful for the analysis of numbers. While spreadsheets are excellent for dealing with percentages, summarizing data, and detecting patterns, they can also become cumbersome in relation to larger datasets or challenges of collaboration without versioning. Presentation tools can help with powerful visual stories but can overly simplify content when slides have too much text. Databases can provide scalability, data integrity, and flexibility for complex records, but will present a steeper learning curve and a more strict establishment of designs for configuring tables or relationships.

Recommended Application for a Single Day


    When documenting a day of activities with artifacts, narrative recordings of daily activities, time records during the day, and some simple calculations, a word processor is the best application to use. The reason the word processor is the best application is that it allows you to compose coherent paragraphs, insert tables or pictures, and maintain APA-style formatting similar to a journal entry and reflection essay outline (Shelly et al., 2019). Another advantage of using a word processor for daily logging is that it makes creating title pages, consistently incorporating headers, and maintaining reference lists easier if these are required in your academic/journal submissions.

Additional Examples for All Applications


    Word Processor: Word processors can also be used beyond simply journaling; they are excellent for drafting research papers, developing policy briefs, and writing grant applications where the intricacy of well-structured prose and using citations are required.

    Spreadsheet: Spreadsheets can provide a lot of value in terms of budgeting of personal finances, planning future spending, or undertaking sensitivity analyses on a project. For example, a household budget would have a planning sheet where the user can default parameters, and the budget template would automatically recalculate totals as the user alters spending.

    Presentation Tool: Presentation tools are best used to communicate strategic plans or training materials. A marketing team could develop a presentation to propose a new campaign, using qualitative graphs imported from a spreadsheet that was embedded with video testimonials.

    Database Application: Database application programs are probably most applicable in situations where large amounts of contact records need to be maintained with their actions and history of purchase in customer relationship management (CRM) systems. For example, if a sales organization decided to use a database application to manage its leads, the database application could send out automated reminders to staff to follow up on the leads.





Conclusions

    Having an understanding of the strengths and weaknesses of each application helps to ensure the successful use of each application for its intended purpose. Each of these applications successfully targets a specific strategy to communicate: to compose text, analyze numbers, visually communicate, or manage data. Of the applications represented in this survey, it was most effective to use a word processor to effectively log and reflect each descriptive entry from a daily journal. Using the best application for each example increases productivity, accuracy, and clarity, and enables the user to manage the information more effectively.

 

References

O’Brien, J. A., & Marakas, G. M. (2011). Management information systems (10th ed.). McGraw‑Hill.
Shelly, G. B., Vermaat, M. E., & Freund, D. (2019). Discovering computers & Microsoft Office 365: A fundamental combined approach (16th ed.). Cengage Learning.

 

Web/Mobile App Critique

 

I have decided to critique an app that I use quite often; the official mobile app for Reddit. Reddit is known as the "front page of the internet," and it is basically a huge group of forums and subreddits (communities) related to nearly every subject. The mobile application allows you the ability to easily navigate, interact, and participate in the communities while mobile.

Usability

Overall, the Reddit app has a very usable purpose, which is content consumption. Scrolling through one's home feed and being able to navigate it is a very intuitive experience. You can navigate communities (subreddits) in the app by simply typing in the search bar, or on the home page there is a dropdown menu of your subscribed communities. The experience of interacting with other users' posts (upvoting, downvoting, commenting) is also seamless, as they are clearly labelled buttons. In fact, the app also uses swiping to navigate and upvote/downvote on the scrolling feed. Creating a new post, however, does not feel as intuitive, as it is somewhat “hidden” behind a positive icon, which may not be easily noticed for new users. Additionally, while onboarding new users in the app, it would benefit from a process that helps new users find communities better.

Design

The app uses clean and modern design paradigms. The app uses either a standard white/light grey visual or a dark mode visual. Posts are displayed in a card style in the feed, which makes it easy to see the space between one post ending and another beginning. For posts that are visually driven, images and media are very visual on the feed, depending on the scrolling format of the content. It's very interactive, and there is a navigation bar at the bottom of the screen that makes it easy to switch from the home feed, community, create posts, inbox and user profile. The visual design is mostly consistent. The volume of visual information and different formats of posts can lead to a lot of visual reference clutter in the home feed, as well as ads.

IMG_4679.png

Functionality:

The Reddit app boasts an impressive set of functionalities for what it provides. Users can scroll through as many feeds as they would like, search for posts and communities (although search is notoriously unhelpful), interact with different post types (text, images, videos, links, or polls), create their own post, comment on others' posts, send a private/direct message, and manage their profile and subscriptions. The app itself manages embedded media pretty well but has some issues with the in-app video sometimes being buggy or slow to load. Notifications for replies and mentions don't experience any issues. The app does a successful job of providing the core Reddit experience in a mobile experience for both passive consumption and active consumption.

IMG_4680.png

Proposed Improvements:

While functional, the Reddit application has some clear areas of improvement:

Enhanced Searching Features: Searching in the app is unfulfilling. The search is often seemingly inaccurate or does questionable jobs with specific keywords. Improving the searching algorithm with better filters (i.e. search by a date range, search by flair, search by type of content) would bolster discoverability in the app.

Redone Video Player: The much hyped video player feeds into a generally unimpressive aspect of the application. Several video playback issues were noted, including videos appearing black, experiencing slow buffering, and having rudimentary features such as barely functional scrubbing. You would simply be doing the Reddit user experience a favor by utilizing a more capable and reliable player. The quality of content continues to grow, especially in the video form.

Flexible Feed Customization/Less Obtrusive Advertising: Obviously ads are needed, but having them in exact locations feels like it benefits advertisers less but interferes with the browsing experience. The app could provide users with flexible options for even quantity for how much density in their feeds (choose more compact), or even ad types that are less obtrusive to the browsing experience. Maybe there could be a "hide this type of ad" button that enabled better user customization without actually needing to subscribe to Reddit Premium.

The Reddit app is a powerful tool for engagement with its ever expanding communities. It has a minimalist layout and all the required user interactions. Nevertheless, functional user experience elements like searching, video, and to some extent more feed customization, provide exciting opportunities for an improved user experience.