Pages

Saturday, June 15, 2024

Programming languages and Tech connections

    Programming languages are, in a lot of ways, extremely relevant to information technology fundamentals. Essentially, everything leads back to the use of programming languages. Programming languages help to fulfill needs within the code of certain systems and computers or websites. It is essential to understand programming languages to get into a career in coding or cybersecurity. Throughout this course we have learned a lot about many different fundamentals of information technology. Programming languages are the basis of all of these fundamentals. Without programming languages, there would be no way for people to communicate with computers and their systems.
    Programming languages are essential to information technology because they allow people to communicate instructions and other information to computer systems. American Public University (2024) states, “Coding enables programmers to create computer software, applications, websites, and other digital tools that interact with data, execute algorithms, and perform automated tasks. Essentially, it's the language through which we communicate and instruct computers to perform functions and solve problems.” This shows that programming languages are the basis for all communication with computers and their systems. It is the way computers are run and navigated whether this is something that is realized or not.
    Programming languages rely mildly on major hardware components. They rely on transistors to translate the inputs from the person to binary so that the computer can run properly. Programming languages also rely on microprocessors to perform certain tasks for the person utilizing the computer. There are several programs for hardware interaction advantages. One such advantage is the ability to directly control and optimize code for specific hardware. Interaction allows control over memory allocation, thus creating more efficient resource usage. Hardware and program interactions also create greater functionality beyond what software can achieve alone. This interaction also ensures compatibility with different devices and platforms (GeeksforGeeks, 2023).
    Programming languages enable communication with computers, while application software leverages these languages to create user-friendly, task-specific solutions. Application software directly interacts with users and performs functions beyond basic computer operations. Programming languages serve as a bridge between humans and computers. They allow us to write the instructions so that the computer can understand them. Application developers use programming languages to write and create software for the computer to run different systems or applications. Therefore, programming languages are the basis for many different applications and software types. They allow for the usr to be able to seamlessly interact with the computer interface.
    Programming relates very closely to database management. There are even specific programming languages that were created for database management. Languages such as Structured Query Language (SQL) were created specifically for database management. Programming languages facilitate efficient interaction with databases, allowing us to manage and analyze data effectively. Database languages are specialized languages that enable developers to define and modify data structures, search for specific information, restrict data access, and automate tasks like backups and data processing. Therefore programming languages are also essential to databases and database management. Programming languages are essential to many different aspects of information technology and the fundamentals of IT. It is important to understand programming languages to fully understand information technology.
    There are many ways that network architecture, management, and security influence programming languages. Network architecture refers to the design and structure of the network. The type of system can influence the type of programming language that is required. For instance, languages like Java and Python are commonly used for distributed systems. They provide libraries and frameworks for network communication. Network management involves monitoring, configuring, and maintaining network devices. Different programming languages are used for different types of network management. For instance, languages such as Perl and Python are used for SNMP-based network management tools. Network security aims to protect data, devices, and communication channels. Programming languages promote secure coding practices by enforcing different aspects of the code and procedures for coding.

References:
American Public University. (2024, May 3). Information Technology coding skills and their importance. https://www.apu.apus.edu/area-of-study/information-technology/resources/information-technology-coding-skills-and-their-importance/#:~:text=Coding%20enables%20programmers%20to%20create,computer%20can%20understand%20and%20execute.
GeeksforGeeks. (2023, April 4). Interaction of a Program with Hardware. GeeksforGeeks. https://www.geeksforgeeks.org/interaction-of-a-program-with-hardware/ 

Sunday, June 9, 2024

Network Security

Ping and traceroute commands can prove to be extremely useful in many situations. However, they can also be utilized for more malicious activity. There are many attacks that can be performed using the ping command such as a Ping of Death or a Ping Flood. A Ping of Death attack is a denial of service (DOS) attack that involves sending a ping packet that is larger than the maximum allowed size. This can cause the system to crash, reboot, or freeze (Fortinet, n.d.). A Ping Flood is a type of distributed denial of service (DDOS) attack. Hasson (2023) explains a Ping Flood is an attack “in which an attacker overwhelms the targeted device or network with continuous request packets.” This is a part of the reason that cybersecurity is important. To uphold and maintain cybersecurity is of utmost importance for many companies and organizations but it is also important for individuals.

There are many more attacks that can take place in the cyberworld. Some can be rather obvious while others are harder to recognize. One such attack that can be easier to recognize is Phishing. Phishing is an internet scam that pushes the user to release sensitive information, this could be in the form of a social security number, credit or debit card number, or password (Vahid & Lysecky, 2019). One common phishing scam is claiming that a bank account is locked and requires a user to click a link to a false website and enter their banking information. These attacks can be utilized to affect large organizations and individuals. There is a lot of damage that can be done utilizing this sort of scam. The main goal of people using phishing scams is to obtain funds. For many organizations a phishing scam can mean direct financial loss, loss of reputation, loss of customers, disruption of operations, and even regulatory fines if there is a data breach (CybSafe, 2023). One recommendation I can make is don’t use links through emails to verify if something is wrong. Go directly to the site using a trusted url to verify information. The second recommendation I can make to prevent falling for phishing attacks is utilize two-factor authentication whenever it is available. These things can help to prevent falling for phishing attacks and keep you and your information safe.

Another very prevalent type of scam is email spam. While many spam emails are filtered out using the spam filters that email systems have built in, it is possible for a few to sneak past the filters. The spam emails themselves may not be able to cause damage but the contents of the email can be harmful to a computer. It is possible for email spam to contain viruses that perform a variety of malicious activities. One such activity could be forwarding the spam email without the consent of the user. To do so a virus is attached to an attachment and once the user opens the attachment the virus is downloaded and will then be sent to others within the mailing list of the user without the user's knowledge of this even happening. There are also many other types of spam that can be utilized to make money. Some such spam types are referrals, porn or gambling sites, and botnets as described above (Vahid & Lysecky, 2019). One recommendation I can make to prevent falling for spam scams is to only open emails from known and trusted sites or organizations. If you are not sure if the organization or site listed can be trusted do some research before opening the email or attachments. The second recommendation I can make is pay close attention to the email address that the email is being sent from. It may look like a trusted or known organization but could be malicious.

Due to these types of attacks and many others that are out there it is important to keep your cybersecurity systems running and up to date. There are many ways to avoid these scams and many like them. It is important to understand how your systems work and prevent any viruses or scam attacks on your system.




References:
CybSafe. (2023, November 9). The ripple effect: How one phishing attack can cause disaster across your organization. CybSafe. https://www.cybsafe.com/blog/how-can-phishing-affect-a-business/

Fortinet. (n.d.) What is a ping of death and ping of death attack? Fortinet. https://www.fortinet.com/resources/cyberglossary/ping-of-death

Hasson, E. (2023, December 20). What is a Ping Flood | ICMP Flood DDoS Attack | Imperva. Learning Center. https://www.imperva.com/learn/ddos/ping-icmp-flood/#:~:text=A%20ping%20flood%2C%20also%20known,users%20from%20accessing%20network%20resources

Vahid, F., & Lysecky, S. (2019). Computing technology for all. zyBooks.

Computers in the Workplace: Cybersecurity

The industry I have chosen to discuss is the Cybersecurity industry. This entire industry is computer-based. Everything from hardware to software, it is very centralized around computers, programs, and programming languages. It is very important for employees in this industry to be computer literate. It is important because computers play a pivotal role within the cybersecurity community. Without computers, the cybersecurity community wouldn’t even exist. Due to computers now being the host to many different types of files and information, it’s important to protect yourself in any way possible. This is where cybersecurity professionals come in. They are able to set up systems and programs that will protect the files or information that is confidential. They do so by setting up firewalls, writing or rewriting programs to have fewer or no loopholes to get into, and running system-wide checks to ensure that nothing is in the system that doesn’t belong there. According to Berkley Boot Camps (2022), “Cybersecurity specialists are becoming increasingly important for organizations across the globe to protect their business infrastructure from outside threats.” This shows that not only are individuals at risk for cyberattacks, but big businesses are as well. So, it’s important for cybersecurity employees to stay on top of any new information that may be put out.

With the evolution of computer hardware, operating systems, and networking, the cybersecurity industry is constantly changing. There are so many new developments in different programs and different programming languages that it may be hard to keep up for some. Each new development to computers or the systems that run them is a milestone for cybersecurity professionals to reach. This is why it is important for the employees within the cybersecurity community to remain computer literate and stay on top of any new trends or developments in computers or their systems. Within ten years' time, the entire industry could potentially be completely different from what it is today.

My Experience with Ping and Traceroute Commands

My experience with the commands ping and tracert has been interesting. Seeing the path that each website took and the amount of time it took to respond was rather interesting. The path begins with creating the packet to send through the network. Taking a small portion of the original data to send. It starts at the source device or your computer, and then router hops until it reaches its final destination. The router uses different algorithms to decide the best path for each packet. The amount of time that it takes for the packet to make the trip is known as RTT or Round-Trip Time. This is counted in milliseconds or ms.

There are many similarities between the ping and tracert that I performed on different websites. I used Google, a United Kingdom website, and an Australian website to perform the ping and tracert. For Google, four packets were sent, and all four packets were received. It took an average of 27ms to send and receive each packet. For the United Kingdom website, www.gov.uk, four packets were sent, and all four packets were received. It took an average of 28ms to send and receive all packets. For the Australian website, www.studyaustralia.gov.au, four packets were sent, and all packets were received. It took an average of 56 ms to send and receive each packet. The tracert for the UK website and the AU website took about 9 paths for each to trace to the final destination. The tracert for Google provided 14 paths, of which two timed out early into the trace. In conclusion, typically, the shorter the distances, the faster the round-trip time; the longer the distance, the slower the round-trip time. This is because the further the packet has to travel, the more routers it has to hop and the physical path is longer.

Ping and tracert can be used to troubleshoot internet connection problems by telling if there is a response from the website and showing where the connection failed. One possible scenario where a ping request or tracert command might time out is if the website is unreachable. Another scenario would be if the router failed in the pathway to the final destination.

Below are the photos from my ping and tracert experiment:





Reviewing Office Suite Applications

Word processors allow users to create, edit, format, and print text-based documents. They are commonly used for assignments, memos, letters, resumes, articles, and more. Spreadsheets organize data into rows and columns. They can calculate, analyze, and illustrate data using formulas and functions. Presentation programs create slideshows with multimedia elements such as pictures, sounds, videos, and text. Commonly used for education, business meetings, and tutorials. Database management systems create, edit, and maintain organized information in databases. Useful for tracking customers, inventory, and more.

There are many advantages and disadvantages to each of these systems. Word is versatile with easy formatting. It also has built-in spell check, so you can worry less if you make mistakes. The downsides of Word are that it can be a bit complex, and some of the more advanced features can be a bit difficult for some users. It also has limited file compatibility, which makes it difficult to share files across different software. Excel spreadsheet is great for data organization. It can also perform complex calculations and has the ability to present data in graphical form or pie charts. The downsides of Excel are the learning curve and data entry errors. It is possible it will be more difficult to understand how it works for beginners and data entry errors come in because everything is manual input. The advantages of PowerPoint are the visual impact and the ability to create interactive presentations. The disadvantages are the possibly steep learning curve and the possible overuse of effects.

There are a lot of advantages to documenting your day through each application. However, I feel the best for me was PowerPoint. It was the most fun to create and one of the simplest. While Word was the simplest to use to create a timeline of my day, PowerPoint was the most fun. Being able to add animations, stickers, and images to create a timeline of my day was simple and fun to do. So, I would recommend utilizing PowerPoint to document your day. It is fun and simple to use, and the product is fun to look at or watch.

There are many different scenarios where each of these applications would be useful. For instance, Excel can be useful for a store's inventory process. If they keep their inventory updated within Excel, everything will be organized, and it will be easy to order what they need when they need it. Word is also useful in many different situations. Word can be useful for writing documents for school or for work. PowerPoint can be used to create presentations for training or for work purposes. Therefore, each of the applications is useful in its own way for many different purposes.

Web/Mobile App Critique

I have decided to review Amazon Music for this blog post.

Amazon music is an app intended to use to listen to music and podcasts. It is very easy to use and is available on both mobile and web platforms. 

  • Usability- This app is fairly easy to use. There are playlists to choose from or you can create your own playlist with your preferences of music. There is also the option to use the Alexa feature to search and save music to playlists. This makes it even easier to use and customize. 

  • Design- The design of the app is simple which is something that also makes it easy to use. At the bottom of each screen there are several different options. A home button to take you to the home page of the app. A find button to search the music or podcast you want to listen to. A library button to take you to your library where all of your music or podcasts are stored. An Alexa button to utilize the Alexa feature of the app. Finally there's an upgrade button which takes you to the page where you can upgrade your membership. Each page offers different options for listening or reacting to music. 

  • Library and Content- Amazon Music boasts an extensive library, with millions of songs spanning various genres, eras, and languages. Whether you’re a fan of classic rock, contemporary pop, or indie folk, Amazon Music likely has you covered. The platform also offers a selection of podcasts, making it a one-stop-shop for audio entertainment.

  • Audio Quality- One of the standout features of Amazon Music is its support for high-resolution audio. Audiophiles will appreciate the service’s commitment to delivering crisp, clear sound that can rival physical media formats. This focus on quality ensures that listeners can enjoy their favorite tracks the way the artists intended.

  • Integration and Accessibility- Amazon Music seamlessly integrates with the Amazon ecosystem, particularly with Echo devices. This tight integration allows for a harmonious experience, especially for users who are already invested in Amazon’s products and services. The ability to control playback through voice commands via Alexa is a convenient feature that adds to the platform’s accessibility.

  • Pricing and Plans- Amazon Music offers various subscription plans to suit different needs and budgets. The ad-supported free tier is a great starting point for casual listeners, while the premium plans provide an ad-free experience with additional perks. Prime members receive a discount on the premium plans, which is a nice bonus for those already subscribed to Amazon’s other services.

Conclusion Amazon Music is a robust and reliable streaming service that offers a rich selection of music and podcasts. Its emphasis on high-quality audio and user experience makes it a strong contender in the market. While there are areas for improvement, particularly in terms of pricing and plan flexibility, Amazon Music remains an excellent choice for those seeking a comprehensive and enjoyable listening experience. Whether you’re a casual listener or a dedicated music enthusiast, Amazon Music has something to offer for everyone. Overall, it’s a service that’s well worth considering for your music streaming needs.





My Experience with Scratch



There was a lot of interesting stuff to do with Scratch. It was definitely different from anything I’ve tried before. The most difficult part of using Scratch for me was deciding on what background and sprites to use. The majority of working with the program was fairly easy. Just deciding what to put in to match movements was more difficult. Ultimately, I just randomly chose what I wanted to put into an underwater scene. Everything after that was very easy. The participation activities weren’t really equal to the programming done in Scratch. I enjoyed running the participation activities more than running the Scratch programming activity. The participation cavities seemed more in-depth with what I want to do career-wise. Scratch seems like a good place to start with learning, however. I definitely want to continue experimenting with Scratch to see how everything works and find better methods to do what I want to do.

Scratch was probably the easiest programming language I’ve encountered. The building blocks were simple to understand and easy to use to get the program I wanted to run. Python seems only slightly more difficult to use. It was still fairly easy to understand the basics of the programming language. Scratch is a good tool for the classroom. It is an effective teacher and should be used in more classes to teach the basics of programming. Python is more likely to be used in an official setting such as a business space. I believe that Python is the more popular programming language. It is more diverse and useful in different settings. It’s the more powerful programming language it seems. I would prefer using Python because it seems to be the stronger programming language. It seems to me that it would be more useful in many different situations.

My Scratch Project:

https://scratch.mit.edu/projects/1023025742


Programming languages and Tech connections

     Programming languages are, in a lot of ways, extremely relevant to information technology fundamentals. Essentially, everything leads b...