Announcement: PLAN Week = Good Info + Raffle

City Tech PLAN Week, November 1 — 5, 2021

During PLAN week, we offer information to help you plan your next steps—from choosing classes and learning how to register to finding out where to get support and make connections within the college. Don’t miss this opportunity to create a successful and personal PLAN. Also, by completing PLAN Week daily forms, you will be entered in a raffle pool for $50 MasterCard gift cards. If you participate all 5 PLAN Week questionnaires, you will be entered for a grand prize of $300. We recommend that you set aside 20-30 minutes a day this week, and watch one video and follow it by answering the corresponding response form.

Monday, November 1: Start your PLAN with the Introduction to Academic Advising video and respond here.

Tuesday, November 2: PLAN your academic career by watching Understanding Your Degree Requirements and respond here.

Wednesday, November 3: PLAN your academic advising appointment by watching Creating a Semester-by-Semester Plan and respond here.

Thursday, November 4: PLAN to register by watching Introduction to Registration and respond here.

Friday, November 5: PLAN to get involved by watching How to Get Involved (video coming soon!)and respond here.

All of the videos and forms are available from now until Sunday, November 7 at https://www.citytech.cuny.edu/advisement/library.aspx. Any responses filled out by midnight on the seventh will be eligible for the raffle. Good luck, and start planning!

Expanded Definition of Distributed Denial of Service

TO: Prof. Ellis

FROM: Alex Cheung

DATE: Oct. 27, 2021

SUBJECT: Expanded Definition of Distributed Denial of Service Attacks, First Half, Rough Draft

Introduction

The purpose of this document is to better our understanding and knowledge about the term Denial of Service Attacks. We will be discussing the history, context, and the different types of Denial of Service Attacks. Denial of Service Attacks is a very known term amongst network security professionals and black hat hackers. 

Definitions

According to the Oxford English Dictionary, the term Distributed Denial of Service means “Computing a form of denial of service in which a web server or other computer system is maliciously overwhelmed by spurious requests from many computers in different locations on the internet, in order to make it inaccessible or unusable” [1]. This definition does a great job of explaining what a Distributed Denial of Service Attack is but, it does not mention how it utilizes malware to add infected computers to its botnet. According to the Britannica Academic, the term Denial of Service means “type of cybercrime in which an Internet site is made unavailable, typically by using multiple computers to repeatedly make requests that tie up the site and prevent it from responding to requests from legitimate users” [2]. Britannica Academic also says that “Distributed DoS (DDoS) attacks are a special kind of hacking. A criminal salts an array of computers with computer programs that can be triggered by an external computer user. These programs are known as Trojan horses since they enter the unknowing users’ computers as something benign, such as a photo or document attached to an e-mail” [2]. Both of these definitions from Britannica Academic do a great job of explaining the definition of a Distributed Denial of Service. It explains clearly that a malware known as a trojan is required to infect other computers and can then be controlled by an external computer and is used for criminal activities.

Context

For anyone who isn’t familiar with network security or other related fields, the term Denial of Service might just mean refusing to serve someone. But to someone who is in the said related fields, Denial of Service is a cybercrime that aims to disrupt service that lives on the internet, like websites, servers, and others. The earliest use of the term Disrupted Denial of Service according to the Oxford English Dictionary is in 1998 in a report about a DDoS attack against NIS / NIS+ based networks [1]. The term Distributed Denial of Service really only has one meaning.

In a New York Times article titled “Hackers Used New Weapons to Disrupt Major Websites Across U.S.”, author Nicole Perlroth talks about how disruptive a DDoS attack can be by citing Dr. Simons: “A DDoS attack could certainly impact these votes and make a big difference in swing states” [3]. The use of the term Disrupted Denial of Service here refers to how harmful DDoS attacks can be to critical processes like the U.S. presidential election if votes were transferred through the internet. A Distributed Denial of Service attack can take down many essential systems that are needed by many people and businesses like Amazon Web Services which hosts many of the websites used by people and businesses for day to day operations and it would be catastrophic if those services were taken down by an attack.

In an article by Imperva, a cyber security software and services company, titled “DDoS Attacks”, talks about DDoS attacks, how an attack can flood a service with malicious traffic, and the types of DDoS attacks. In the article it says “DDoS attacks are quickly becoming the most prevalent type of cyber threat, growing rapidly in the past year in both number and volume according to recent market research” [4]. The use of the term Disrupted Denial of Service here refers to the many different types of DDoS attacks used to take down a site or service. Some of the different DDoS attack types mentioned are: UDP Flood, ICMP Flood, SYN Flood, Ping of Death, Slowloris, NTP Amplification, HTTP Flood, and Zero-day. Each type of attack uses a different method to reach the goal of denying service. For example, a UDP Flood floods a victim server’s ports with UDP packets which uses up all the server’s resources which can slow down the server or even cause it to eventually become unreachable by others.

DDoS attacks are a huge problem in today’s internet. Almost anyone can perform a DDoS attack because of online “booter” services which allow users to pay a subscription to access their botnet to perform the malicious attacks on their unsuspecting victims. This is why many companies spend thousands or even millions of dollars trying to mitigate these attacks to keep their vital services online for their consumers.

Working Definition

Based on the definitions and word history discussed, I would define the term Distributed Denial of Service as: A cybercrime that aims to disrupt internet services like websites and servers by utilizing computers (victims) infected with a trojan which allows the black hat hacker to control the victim’s computer and be used for a massive Denial of Service Attack to take down or disrupt services. 

References

[1] “distributed denial of service, n.”. OED Online. September 2021. Oxford University Press. https://www-oed-com.citytech.ezproxy.cuny.edu/view/Entry/55777#eid233469643 (accessed October 08, 2021).

[2] “Denial of service attack (DoS attack).” Britannica Academic, EncyclopĂŚdia Britannica, 2 Feb. 2018. https://academic-eb-com.citytech.ezproxy.cuny.edu/levels/collegiate/article/denial-of-service-attack/471037. Accessed 8 Oct. 2021.

[3] N. Perlroth, “Hackers used new weapons to disrupt major websites across U.S.,” The New York Times, 21-Oct-2016. [Online]. Available: https://www.nytimes.com/2016/10/22/business/internet-problems-attack.html. [Accessed: 18-Oct-2021].

[4] “DDoS attack types & mitigation methods: Imperva,” Imperva, 14-Feb-2021. [Online]. Available: https://www.imperva.com/learn/ddos/ddos-attacks/. [Accessed: 31-Oct-2021].

Expanded Definition of Sandbox

TO:               Prof. Jason Ellis
FROM:         Edwin Baez
DATE:          10/27/2021
SUBJECT:    Expanded Definition of Sandbox

Introduction 

 The purpose of this document is to explore the meaning and history of the term Sandbox. The term sandbox is used often in the software testing world, just as it was used pre-machines to define a play area. In this document, I will compare and contrast various definitions of the word Sandbox and how they are used in our world today.

Definitions 

The definition of Sandbox found in the Merriam-Webster dictionary is “a box or receptacle containing loose sand”[1,p1]. This is, of course, the old yet still relevant definition. Sandboxes are basically playpens for kids to let their imaginations run wild, but the term has long progressed since those days. According to the same Merriam-Webster dictionary, “a controller environment supervised by a regulatory authority within which existing regulations are relaxed or removed to allow businesses to more freely experiment with new products and services”[1, p1]. This definition is referring to the business use of the word, stating how a Sandbox is an environment that is controlled and supervised to test new products and services. For example, a business like Apple needs to test out its HTML code to see if those flashy new images look good on their website without bringing down their website. For experiments and test features like that, they use a Sandbox environment. Furthermore, there is a cyber security aspect to the definition. According to an article written on ProofPoint, “The purpose of the sandbox is to execute malicious code and analyze it.”[3,p1]. This definition shows how cyber security specialists use a sandbox as a tool to run code and decipher whether they are malicious or create any type of vulnerability in a system.

Context 

Though used in different manners, the term Sandbox essentially comes to a general meaning of testing with low risk. An author writes, “the idea of a sandbox provides an apt metaphor for the type of collaboration and interaction that should take place in the open, communal office spaces”[4]. This quote talks about how sandboxes are used as a space for a business or businesses to interact and try out new features without risking or harming their business. It’s more spoken of as a testing ground rather than a counter-measure. It’s like those times as a kid when we were being taught how to use PowerPoint and it had all these different fonts and slide animations. We would try all of them first in a separate PowerPoint so our work would not suffer any casualties and then once we decided on a font and/or slide animation we would implement it into our original work. In some way, we’ve all used a form of sandbox for our work.

Furthermore, a different author writes, “Sandbox testing proactively detects malware by executing, or detonating, code in a safe and isolated environment to observe that code’s behavior and output activity”[2]. This quote uses Sandboxes as a means of testing code for security purposes and not allowing a breach by isolation using a Sandbox. Unlike the business branch side of things, this way of using a Sandbox is indeed a counter-measure. It’s basically a bomb testing site but for code and incoming malware. One may say it’s taking batting practice before a game, just testing your swing, ball vision, and ability to make contact on that specific day. I used the statement “on that specific day” because it’s actually how this version of running a Sandbox works. Codes are unpredictable, there are things that even the developer himself doesn’t know would happen if the code is executed. One day your program may work flawlessly and the next day can be corrupt without even changing anything, maybe you missed a letter or number that allows the code to run more than a day or maybe a spelling mistake. All in all, this form of Sandbox is perfect for “detonating a bomb”.

Working Definition 

My major is Computer Systems branching into Cyber Security. As one can tell, the term Sandbox is very important in my field as many codes have to be tested. In my field, I would say a Sandbox is a safe zone where any developer or security analyst can try out any code or any level of work and look for vulnerabilities or decipher any malicious intent in the coding.

References 

[1]  “Sandbox.” Merriam-Webster.com Dictionary, Merriam-Webster, https://www.merriam-webster.com/dictionary/sandbox. Accessed 15 Oct. 2021.

[2] Forcepoint. 2021. What is Sandbox Security?. [online] Available at: <https://www.forcepoint.com/cyber-edu/sandbox-security> [Accessed 16 October 2021].

[3] Proofpoint. 2021. What is a Sandbox Environment? Definition & Setup | Proofpoint US. [online] Available at: <https://www.proofpoint.com/us/threat-reference/sandbox> [Accessed 16 October 2021].

[4] Clarke, D., 2021. The Serious Business of Sandboxes. [online] strategy+business. Available at: <https://www.strategy-business.com/article/The-Serious-Business-of-Sandboxes> [Accessed 16 October 2021].

750-Word Expanded Definition

750-Word Expanded Definition

TO: Prof. Jason Ellis
FROM: Rosario Garcia
DATE: 12/16/21
SUBJECT: Expanded Definition of programming

The purpose of this document is to explain furthermore about programming and the definition of it. “The process of writing and testing computer programs.” [1] Learn more explain about programming and software development. The term that the programming I defined is developing and create computer program. I defined software developing is create application when different coding language. How programming help in figure out ways to different to use different strategies methods solve problem quickly. How programming is a way to use problem-solving skills. That programming has made different ways to think and solve the problem. Make you think that there is more solution than one to a problem. Both program and software development have improved today and now in society it gives large impact to help business manage and do any tasks. The way the article express how programming is a method use problem-solving and other skills. “Identify and fix process-related problems, the measurement programs.” [2] At the same it identifies how software development is large part apart from programming in general. “Software development involves many processes, and measurement enables us to characterize, control, predict, and improve those processes.” [2] They mention how that software development able to have control the process of their own programs or project. On the other, programming they do deal with coding and the knowledge program there a limited for them in coding. Programming can be used in the real- world help area that need problem solving. The article explain more about software development is Measuring and Improving Agile Processes in a Small-Size Software Development Company. How software development benefits companies it a work in progress. Explain about the benefits of improve coding and help to learn more about coding in general. How software development improves their company in expand the (SME). How software development improves during the years continue to improve company. The other article I choose is Enhancing Confidence in Using Computational Thinking Skills via Playing a Serious Game: A Case Study to Increase Motivation in Learning Computer Programming for programming. I think that programming means to create and build code for applications. “Software development, understanding development performance and product quality.” [3] “A specific programming language so that they can develop their abilities in solving problems before they start programming.” [3, page2, line2] They need to choose the type if code that they want to choose before starting to program the software. They in the third article source how software development and programming are view in two different way they both related back to computer and create new programs. “These metrics significantly improve management of such processes as task estimation and bug fixing, which are crucial in rapid software development of high quality and stable software.” [2, page 5, section 5] It important to fix because if there any bug that aren’t fix, it failed to run the software and create program to the software. Software development requirement critical think but also problem-solving. Figure out different method of solutions to a problem. “This new version of the game will also provide an improved visualization for programming constructs. As an example, players will be able to use the decision-making construct in a variety of ways depending on how they want to overcome challenges.” [3 , pg19] They mention in the article how they need use programming for a visual game to improve the virtual the game. Programming how the game will work and test the programming language run on pc or it mobile friendly well. Plan how the challenges and figure how the multiplayer run on the software/game run well the users interact in the game. Everything revolves around the type of programming language to use and make sure it smoothly. It like running a software program check for any bugs or adjusted needed their always need attention the coding also the mechanic part of a program looking d entire software to see the entire picture. Even programming is a small part of the software developing. It the programming is the base for a software developer since it the beginning of the project.

References:
[1] Advanced Learner’s, Oxford. “Programming.” Programming Noun – Definition, Pictures, Pronunciation and Usage Notes | Oxford Advanced Learner’s Dictionary at OxfordLearnersDictionaries.com, Oxford Advanced Learner’s, 12 Dec. 2021, https://www.oxfordlearnersdictionaries.com/us/definition/english/programming.

[2] Choras, Michal, et al. “Measuring and Improving Agile Processes in a Small-Size Software Development Company.” IEEE Xplore, IEEE, 23 Apr. 2020, https://ieeexplore.ieee.org/document/9076670.

[3] Kazimoglu, Cagin. “Enhancing Confidence in Using Computational Thinking Skills via Playing a Serious Game: A Case Study to Increase Motivation in Learning Computer Programming.” IEEE Xplore, IEEE Access, 8 Dec. 2020, https://ieeexplore.ieee.org/document/9286386.

 

500 Word Summary

TO: Prof. Ellis
FROM: Rosario Garcia
DATE: 12/10/2021
SUBJECT: 500-Word Summary of Pandemic Parallels: What Can Cybersecurity Learn From COVID-19?

The purpose of this summary is to discuss the issues that the happen during the pandemic. How cybersecurity is important to learn about now in time during the pandemic everyone have been in remote using more technology. It mentions the pandemic there was different challenges since everyone needs find ways to use cybersecurity and protect our technology from cybersecurity threats.  “With COVID-19, there is still uncertainty about the efficacy of certain countermeasures or treatments, while in cybersecurity, some still insist that safeguards, such as antivirus software, do more to degrade the system performance than they do to protect.”[page 2 paragraph 9] It compares both how cybersecurity and COVID-19 they are virus, how they can change over time we need to figure out ways to protect from the covid-19. Learn how to safeguards the technology and how to understand the basic like strong passwords and use anti-virus software. It important to build knowledge more about cybersecurity learn how it protect learn how it works. It important that the people understand the need to know about cybersecurity learning way to protect your privacy and information online.  â€œSimilarly, basic cybersecurity safeguards (for example, using antivirus software and strong passwords and not clicking on suspicious attachments) apply across numerous systems and services but also vary depending on the context (for example, work versus home).” [page 2 paragraph 4] It very information to continue stay up to date on the latest software and on top change password recommend every 3 months but need to have double authorization better to notify the user verification it them login and not anyone else. Cybersecurity mean is to learn how to protect your privacy but also information yourself more protecting you on the internet. How to inform yourself from the cybersecurity also figure out ways to prevent any threat from you. “The pandemic has demonstrated that messaging should be part of a framework of protections. However, that wider framework must be ready to handle the result of effective messaging.” [page 4 paragraph 22] “Given the parallels, cybersecurity can learn valuable lessons from the COVID-19 messaging response. One could argue that we’ve seen more effective large-scale messaging and enforcement of safeguards with COVID-19 precisely because it poses a greater risk.” [page 4 paragraph 25] Even though the situation that we are in is bad situation it happens that we should take it as learning lesson. Even though we can recover though the pandemic and cyberattacks there just something that permanent can’t be undo, it makes to continue put guards up and stay safe. Follow the methods or steps to prevents getting sick or the spread the covid-19, for cybersecurity is to stay o top the update and keep devices and technology safe from virus-free by only trusting secured sites.

References:
[1] Furnell; Steven, et al. “Pandemic Parallels: What Can Cybersecurity Learn from Covid-19?” IEEE Xplore, IEEE, 15 Mar. 2021, https://ieeexplore.ieee.org/document/9378909.

Expanded Definition of Computer

TO:         Prof. Jason Ellis

FROM:     Jared Williams

DATE:         Oct 27, 2021

SUBJECT:     Expanded Definition of Computer

Introduction

The purpose of this document is to expand upon the definition of the word computer. In this document we will explore the various definitions of the term computer, the historical context surrounding the change in meaning of the term, and the way the term computer is used now.

Definitions

The first definition of computer in the Oxford English Dictionary is “a person who makes calculations or computations; a calculator, a reckoner; spec. a person employed to make calculations in an observatory, in surveying, etc.” [1, def. 1].  The second definition of Computer in the Oxford English Dictionary is “a device or machine for performing or facilitating calculation” [1, def. 2]. Both of [1]’s definitions state that mathematical calculation is involved, but they both differ regarding who or what is performing them.

From the 5th edition of McGraw-Hill’s Concise Encyclopedia of Science and Technology, a computer is “a device that receives, processes, and presents information. The two basic types of computers are analog and digital,” [2, p. 519] and from the 7th edition of A Dictionary of Computer Science, “A device or system that is capable of carrying out a sequence of operations in a distinctly and explicitly defined manner” [3, p.?]. These definitions strictly speak about machines performing calculations, no longer mentioning a person performing calculations.

The term computer originally referred to a human being who was incredibly skilled in mathematical computation but over time, the term fell more in line with the definitions of [2] and [3]. Historians may be the only people who refer to the original definition of a computer since their field of study has to do with revisiting the past. As technological advances progressed, the human component of computer was discarded and machine/device took its place as evidenced by definition 2 in [1], and the definitions of [2] and [3]. Now the phrase computer only brings images of machines in varying sizes to mind.

Context

“I haue read the truest computer of Times, and the best Arithmetician that euer breathed, and he reduceth thy dayes into a short number” [1]. This is the earliest use of the term computer according to the Oxford English Dictionary.  This quote can be found in Richard Braithwaite’s Yong Mans Gleanings published in 1613. In the context of this quote, a computer is an arithmetician, a person expertly skilled in calculation and counting. The year of this quote is important, as electricity was yet to be discovered which means there were no machines to do calculations.  

In the 1940’s the term computer had taken a step closer to today’s definition. A section from the New York Times published on Jan 1947 states “Two electronic computers that will handle complex arithmetical problems faster than earlier models were described yesterday at conference sessions of the winter meeting of the American Institute of Electrical Engineers at 33 West Thirty-Ninth Street” [4, p.5]. The author of this article must make a distinction between an electronic computer and a human one since human computers were not rendered obsolete just yet. Electronic computers of the time were very expensive and very big, needing a team of people and machinery to transport them and entire rooms dedicated to their use. It’s important to note that these computers, while electronic, were analog. Digital computers were the next step but hadn’t made their debut yet.

From an encyclopedia published in 2005: “The term digital computer—or simply, computer—embraces calculators, computer workstations, control computers (controllers) for applications such as domestic appliances and industrial processes, data-processing systems, microcomputers, microcontrollers, multiprocessors, parallel computers, personal computers, network servers, and supercomputers.” [5, p. 668] By the turn the millennium, computers had drastically scaled down in size while simultaneously upscaling in terms of their abilities. They have expanded beyond only mathematical calculations, now becoming an umbrella term. Computers had transitioned from analog to digital and no longer spanned an entire room. They were present in homes, businesses, offices, etc. The association of the term computer with a machine is so strong, future generations may not even know a human once held that position unless they look back on history. 

Working Definition

The definition the term computer largely relies on the time period you’re discussing. If I was to define computer today it would sound something like this:  

Computer – A digital electronic device or machine capable of receiving, computing, processing, and outputting data in various forms. 

References:

[1] “Computer,” in Oxford English Dictionary, 3rd ed. Oxford, UK: Oxford Univ. Press, Jun. 2008, def. 1 & def. 2. [Online]. Available: https://www.oed.com

[2] “Computer,” in Concise Encyclopedia of Science and Technology, 5th Edition. New York, NY: McGraw-Hill, 2005, p.519. [Online]. Available: https://go-gale-com.citytech.ezproxy.cuny.edu/ps/retrieve.do?resultListType=RELATED_DOCUMENT&searchType=BasicSearchForm&userGroupName=cuny_nytc&inPS=true&contentSegment=&prodId=GVRL&isETOC=true&docId=GALE|CX3475801389, Accessed: Oct 6, 2021.

[3] “Computer,” in A Dictionary of Computer Science, A. Butterfield, G. E. Ngondi, A. Kerr, 7th Edition., Oxford University Press, 2016. [Online]. Available: https://www.oxfordreference.com/view/10.1093/acref/9780199688975.001.0001/acref-9780199688975, Accessed: Oct 6, 2021.

[4] Author Unknown, “COMPUTER BEATS BRAIN,” New York Times, p.5, Jan 31, 1947. [Online]. Available: https://www.nytimes.com/1947/01/31/archives/computers-beat-brain-new-electronic-devices-said-to-be-100000-times.html?searchResultPosition=3, Accessed: Oct 10, 2021.

[5] “Digital Computer,” in Concise Encyclopedia of Science and Technology, 5th Edition. New York, NY: McGraw-Hill, 2005, p.668. [Online]. Available: https://go-gale-com.citytech.ezproxy.cuny.edu/ps/retrieve.do?resultListType=RELATED_DOCUMENT&searchType=BasicSearchForm&userGroupName=cuny_nytc&inPS=true&contentSegment=&prodId=GVRL&isETOC=true&docId=GALE|CX3475801781, Accessed: Oct 13, 2021.

Expanded Definition of Cloud

To: Prof. Jason Ellis

From: Muztahid Sakif

Date: October 27, 2021

Subject: Expanded Definition of Cloud

Introduction

The purpose of this document is to define and explore the context/history around the term Cloud. The term cloud is used very often in the networking industry. Although cloud computing began with the military for national security purposes, it’s now increasingly growing in other sectors like business, education, health, and public and private organizations. In this document, I will compare and contrast various definitions of the word cloud from different sources. Also, I will be discussing context around the word cloud. Meaning, how this term applies to the field of networking and the importance of cloud computing for different users. 

Definitions

According to Gale EBooks, “Cloud computing refers to the use of a network of remote servers to store files and perform services. The use of the term the cloud signifies that the network is as common as the clouds in the sky, indicating that the network is ubiquitous, easy to access, and readily available anywhere in the world” [1, p.1]. This is a great, easy-to-understand definition. The comparison of the term ‘cloud’ to ‘clouds’ shows the availability of Cloud in the modern world today. According to Britannica Academic, “Cloud computing, method of running application software and storing related data in central computer systems and providing customers or other users access to them through the Internet” [2, p.1]. The two definitions listed above are intended for different audiences. The first definition from Gale includes audiences that are outside of the computing field, whereas the definition from Britannica is more catered towards people in the computer science or related audiences. Both of these definitions include the concept of the exchanging and accessing data which is important to note. Data is a big component of the term cloud and the role of interacting with data through cloud is what makes it in demand in the current market today. The second definition is more specific as to how clouds are used in today’s world. The use of different software applications was not prevalent in the context of the original definition of cloud. 

Context

The following content expands on the usage of the word cloud in different contexts. According to the authors “Cloud solutions can improve the quality of smart city services, offering support to store, analyse, and extract knowledge from the raw data. The increasing need for supporting interaction between IoT and cloud computing systems has also led to the creation of the edge computing model, which aims to provide processing and storage capacity as an extension of available IoT devices without the need to move data or processing to a data center.” [3, p.2]. 

The use of the phrase “Cloud solutions” is important to note here. This phrase is often used in the context of the benefits of cloud, especially today. Improving the quality of smart city services through the cloud is very relevant, especially in New York City.  Also according to the authors, “Together with derived security data artifacts, this will support the Cloud provider community to implement a Security Manager system for a future Inter-Cloud environment and facilitate the adoption of these results in the private and public sector” [4, p.5]. In this context, the term cloud is mentioned in the context of security. With Cloud, there’s always the question of security which increases with time. This is also relevant to my field (Cyber Security) where the use of Cloud is increasing. 

Here’s a quote example from IEEE Xplore: Cloud Computing Based Social Media Model, writers K. Goel and I. Goel wrote about the role and the importance of cloud in the social media space: “So, to provide better data security, management,no worry of data management and also easy access of data will be required which can be only possible through cloud computing”[5, p.9]. The use of the word cloud here refers to its reach in various fields, including Social Media. The growth of Social Media is ever growing and the influence of cloud can provide its user with better security, management and allow business to grow through Social Media. Businesses, especially today, rely on Social Media advertising for business growth and cloud helps with large sums of data to simplify the process. 

Another quote example from the book Cloud Computing, writer Nayan Ruparelia wrote about cloud of things, which found in various ‘objects’ or technologies that we encounter “A cloud of things has inanimate objects, or things, as its scope; that is, it is a cloud that works with things instead of people or organizations. For example, you can have a cloud of public lighting— such as street or car park lighting— operated on a pay-per-use basis so that the lighting is available only to those who have paid for it and are in the vicinity” [6, p.10]. In this context, the author mentions the term “cloud of things” which is very relevant in the cloud business. Cloud of things can be an efficient way to manage lights as mentioned in the example. Meaning, the lights do not remain turned on all night and waste charge. The use of the term cloud refers to its influence on things instead of people or organizations. Cloud of things remotely monitor, manage and control the Internet of Things enabled devices like refrigerators, fire alarms, door locks, security systems, etc. 

Working Definition

Cloud is a networking/information technology infrastructure where all of organizations’ networking resources are shared in a public/private platform that is managed by a service provider. 

References

[1] Foyle, Harvey C. “Cloud Computing.” The SAGE Encyclopedia of Educational Technology, edited by J. Michael Spector, vol. 1, SAGE Reference, 2015, pp. 100-103. Gale eBooks, link.gale.com/apps/doc/CX6197800053/GVRL?u=cuny_nytc&sid=bookmark-GVRL&xid=8a12ab4f. Accessed 6 Oct. 2021

[2] Carr, Nicholas “Cloud Computing.” [Online]. Britannica Academic, Available: https://academic-eb-com.citytech.ezproxy.cuny.edu/levels/collegiate/article/cloud-computing/474374 [Accessed: 06-Oct-2021]. 

[3]. M. Fazio, R. Ranjan, M. Girolami, J. Taheri, S. Dustdar and M. Villari, “A Note on the Convergence of IoT, Edge, and Cloud Computing in Smart Cities,” in IEEE Cloud Computing, vol. 5, no. 5, pp. 22-24, Sep./Oct. 2018, doi: 10.1109/MCC.2018.053711663.

[4] M. Kretzschmar, M. Golling and S. Hanigk, “Security Management Areas in the Inter-cloud,” 2011 IEEE 4th International Conference on Cloud Computing, 2011, pp. 762-763, doi: 10.1109/CLOUD.2011.83.

[5]. K. Goel and I. Goel, “Cloud computing based social media model,” 2016 International Conference on Inventive Computation Technologies (ICICT), 2016, pp. 1-3, doi: 10.1109/INVENTIVE.2016.7823184.[6] Ruparelia, Nayan B.. Cloud Computing, MIT Press, 2016. ProQuest Ebook Central, https://ebookcentral.proquest.com/lib/citytech-ebooks/detail.action?docID=4527741.

Mid-Semester Grades

Hello, all! Mid-semester grades are available via the “Check My Grade” link on the left side of our OpenLab Course Site. These grades do not appear on your transcript. They are intended to show you how you are doing in the class. In some cases, they confirm that you are doing well, and in other cases, they serve as a wake-up call. They are based on completing major projects on-time and keeping up with the Weekly Writing Assignments and homework.

Expanded Definition of API

TO:              Prof. Ellis 

FROM:        Michael Vanunu

DATE:         Oct. 27, 2021

SUBJECT:   Expanded Definition of API (Application Programming Interface)

Introduction

The purpose of this document is to explain the meaning of an API for what it is and what its used for. The term “API” stands for Application programming interface. The way I will be explaining and defining it is by what it does and how it is implemented into our daily lives. An API has many different forms it comes in, but it essentially has the same job and results for when and how it is used. How we will be looking into this definition of API will be through the lens of how they are designed and what it comes with. There is a lot to investigate when it comes into those things which I will be going through in this expanded definition.

Definitions

The first definition I will get into comes from the Oxford English Dictionary, which goes like this, “Computing application programming (or program) interface, a set of routines, protocols, and tools designed to allow the development of applications that can utilize or operate in conjunction with a given item of software, set of data, website, etc.” [1]. What it is saying is that there is a process that must be followed to achieve the goal of the API, which is designed to develop and utilize itself with what its tasked to do. Examples of which it mentions are software, data as well as websites but there are more instances.

The second definition I will get into comes from the Meriam Webster Dictionary. The definition from them goes like this, “a set of rules that allows programmers to develop software for a particular operating system without having to be completely familiar with that operating system” [2]. This definition, from the Meriam Webster Dictionary, is more precise into its definition of it. What this definition is saying is that an API’s means is to make things easier when two set of things need to communicate, it’s like a middleman that makes things easier for both parties in a sense. An example for this one would be, for example, how a GPU driver and a Game Engine need to communicate with each other. For them to communicate they would need to be programmed and configured in very specific and certain ways just so they can work with each other, which would be a lot of extra and unnecessary work. You can imagine how hard this would be if every single thing, or games in this example, has to be programmed in a very specific way just so they can work together but that is where the API comes in and makes our lives easier. The API becomes our middleman which can connect the two without having to go through a ton of extra rigorous work. This is why API’s are very important and crucial in our lives, they are used for a lot of things we use on a daily basis.

Both definitions are idealistically the same. The difference between the two that are given is that the first one, from the Oxford Dictionary, is saying it’s a set of things that need to be done to develop and utilize the use of itself (The API). The second definition I gave, from the Meriam-Webster dictionary is that it’s talking specifically about how programmers can develop things easier because they have an API as the middleman to help with what they are trying to accomplish. Both are similar in a sense that they are saying that an API is used to connect things that need it to achieve what the user sets out to do. Where the definitions differ from these two dictionaries is that one is broader, and one is more specific. A programmer is more likely to use the Meriam-Webster definition whereas the everyday person may use the Oxford definition.

Context

A quote from the e-book API design for C++, “The important underlying concept is that an API is well defined interface that provides a specific service to other pieces of software.” [3, Pg. 1]. This quote is bringing up the fact of how the API is being a specific service for other pieces, that is what its job is, to connect pieces more easily and make things easier for us in day-to-day life.

A quote from another e-book called Enterprise API Management, “Long story short, APIs become products in their own right and thus require the same level of design thinking, ongoing attention, and evolution as other business products.” [4, Pg. 87]. This quote talks about a way an API is used and explained. An API requires as much design thinking, attention and evolution as most products do in order to be successful.

Working Definition

The working definition for the API is that it is used to connect things together through an easier means to save a lot of time and work. The way an API is related to major is that it is a possible type of thing I may have to be a part of coding one day or it is even a part of the programs I use in order to code and run the codes. API is used every day by almost everyone, it is a big part of our life and society.

References [Heading Level 2]

[1]        “API,” in Oxford English Dictionary, 3rd ed. Oxford, UK: Oxford Univ. Press, 1975, def. 1. [Online]. Available: https://www.oed.com

[2]        “application programming interface,” in Meriam-Webster Dictionary, 11th ed. Springfield, MO: Merriam Webster, 1968, def. 1. [Online]. Available: https://www.merriam-webster.com

[3] R. Martin, API design for C++ 1st ed., Boston: Elsevier/Morgan Kaufmann, 2011.

[4] W. Luis, Enterprise API Management, Birmingham, England: Packt Publishing, 2019.