Pages

Wednesday, December 4, 2019

How To Apply Algorithmic Design and Data Structure Techniques in Developing Structured Programs

      Data structures are the way a program is able to retrieve and store data. For instance when using Python, data is stored in dictionaries. To access and store data in Java, arrays and objects can be used. When developing structured programs, many different data structures and algorithmic designs can be used.  Each data structure you use when developing a program will have it’s own algorithm for sorting data, inserting data, finding data, ect. Some algorithms on the other hand can only be used with specific data structures, while others cannot be used with certain data structures. In order to have create the most efficient structure, you must determine which algorithm is most suitable for that specific data structure in order to optimize the data structure. With that being said, each data structure has its own pros and cons. It is rare to have a data structure that is better for use than another structure in all situations. If this were the case, the inferior data structure would eventually be forgotten and replaced by the superior data structure. Some general examples of data structures include queue, stack, tree, linked lists, ect. Depending on the needed use of the program, as well as the developers preference, will determine which data structure can be used for each situation, as they are not universal algorithms. 

Thursday, November 7, 2019

   


Netbeans OS X Installation and Getting Started Tutorial Guidance

      This week I was faced with the task of installing Java on my MacBook. I hit few speed bumps along the way, but was ultimately able to successfully install and utilize the program. Now, I have noticed that most tutorials, wether they are written or videos, tend to be geared towards Microsoft operating systems. I want to take this time to focus on some resources that can be used when it comes to installing and operating Java on OS X. Netbeans is the easiest program to install because it can be used with many different types of operating software. However, the majority of tutorials for installing Netbeans are completed using a Microsoft Windows operating system. The following Youtube video is an updated tutorial on how to install the latest Netbeans 11 software : How to Install Apache Netbeans 11 on Mac UPDATED.
      Once Netbeans is installed, it would be nice to know how to operate and use it effectively, right? There are so many options, features, and tools that it can be overwhelming, especially if you are new to Java and Netbeans. The following video is a tutorial that guides you through some of the basics of Netbeans on Mac OS X to get you started and gather your bearing before jumping on to higher level development: Get Started with NetBeans from a Mac OSX Installer
      These are just a few of the resources available that can help guide you on installing and utilizing Netbeans with OS X. The internet is full of great tutorials, tips, and tricks for all kinds of software so do not be afraid to do some research yourself. You never know, you might stumble across the best tutorial yet!

-Skyler

Monday, July 22, 2019

Tech Topic

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

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

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



References:

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

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

Wednesday, July 17, 2019

Traveling Through a Network

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

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



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

Traceroutes:

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

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


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

Computers in the Workplace: Healthcare

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

Network Security

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


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


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

Documenting a Day


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

 References:

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