VMware Blog is where Kevin Soltow—a storage consultant specialized in VMware technologies and keen on storage virtualization—shares his experience, tips and hints on various virtualization technologies. Soltow graduated from Swiss Federal Institute of Technology in Zurich with deep knowledge in software engineering, and he currently works on implementing disaster recovery and virtual SAN solutions.
CertAlert is a simple, straightforward service that will alert you about impending TLS/SSL certificate expirations. Simply enter your domain and an address for receiving alerts to set up monitoring so you can be sure you never miss another renewal date.
Nextcloud is a user-friendly, on-premises content collaboration platform. Combines the convenience and ease of use of consumer-grade solutions like Dropbox and Google Drive with business-grade security, privacy and control. Features brute force protection; advanced server-side and integrated, end-to-end client-side encryption; enterprise-grade key handling and a wide range of security hardenings.
Etcher is an open-source SD card burner app with a simple, elegant GUI that makes drive selection obvious to avoid accidentally wiping your hard-drive. Extensible and works on any platform.
Knowledge of terms to know
What is Metalanguage?
From a programming language perspective, a metalanguage is a language used to make statements regarding statements made in another language, known as an object language. Metalanguage helps in describing the concepts, grammar and objects associated with a particular programming language.
Metalanguage is widely used in language design, analysers, compilers and theorem provers. It is also used in financial systems, bioinformatics and in other similar applications.
Metalanguage encourages functional programming and is often considered as an impure functional language. Metalanguage is mostly used to describe the grammar or any related terminology of the programming languages. There are different types of metalanguages such as ordered, nested and embedded metalanguages. An ordered metalanguage is similar to ordered logic, with each level having a greater abstraction degree. A nested metalanguage differs from an ordered metalanguage, with each level including the one below as well. An embedded metalanguage is a language embedded in the object language, which occurs naturally as well as formally.
Application software often consists of sets of instructions in clear and simple programming language. Metalanguage is capable of describing both semantic and syntactic properties of a language. With different computer programming languages available, many of these languages have unique sets of rules known as syntax; metalanguage can help in deciphering these rules.
BNF (Backus-Naur Form) is an example of a metalanguage which is widely used in describing the syntax of programming languages. XSL is also considered as a metalanguage which allows to define file encoding in the XML standard, that needs to be transformed or formatted. Lisp is another popular language that makes use of its own metalanguage.
What is CPQ?
CPQ (configure, price, quote) is programming that helps sales representatives and self-service customers quickly generate accurate quotes for configurable products and services.
CPQ software is typically used to generate quotes for products and services that have a lot of feature options. The software is rules-based and can be customized to address variables that affect profit margins.
Key features of CPQ software include:
- The ability to create a bill of materials or service level agreement based on a particular customer’s configuration choices.
- The ability to quickly adjust a quote in response to a change request.
- The inclusion of templates that can be used to digitally generate proposal documents and contracts.
Although CPQ software can be purchased as a cloud service, it is most often purchased as part of an organization’s enterprise-level CRM or ERP platform.
What is Boolean Logic?
Boolean logic is a type of computer science originally developed by mathematician George Boole in the mid-1800s. It supports a great deal of algorithmic programming and the emergence of computing functionality approaching artificial intelligence (AI).
At its core, Boolean logic relies on some very basic operators, such as AND, OR and NOT. Experts add the operators NAND and NOR, which combine one of these operators with a negative NOT operator.
Using the above elements, developers can construct logic gates that direct the flow of computing toward various results. Boolean logic and elements like truth tables used to support logical outcomes also reveal the difference between how humans and how computers “think.”
The use of Boolean logic can help bridge the semantical difference between machine language, which is simply a combination of ones and zeros, and syntactical code language, which includes elements of human written languages.
To put it another way, humans can use Boolean logic formats and operators to boil down the code they write into concepts that approach machine language. For example, a semantic code line or model that states: “If A is 1 and B is 1, then add 1” can be reduced into a series of Boolean logical operators and values.
What is Graph Database?
A graph database, also referred to as a semantic database, is a software application designed to store, query and modify network graphs. A network graph is a visual construct that consists of nodes and edges.
This type of NoSQL database is useful for working with data in business disciplines that involve complex relationships and dynamic schema, such as supply chain management, identifying the source of an IP telephony issue and creating “customers who bought this also looked at…” recommendation engines.
Graph databases are sometimes referred to as triple stores. Each triple, which may also be referred to as an assertion, has three main fields: a subject, a predicate and an object. Each subject, predicate or object is represented by a unique resource identifier (URI). While there are a number of different strategies that graph databases may use for storing triples, most use an index that abbreviates the three primary fields to {?s, ?p, ?o}.
What is Cloud Security?
Cloud security is the set of control-based technologies and policies designed to adhere to regulatory compliance rules and protect information, data applications and infrastructure associated with cloud computing use.
Because of the cloud’s very nature as a shared resource, identity management, privacy and access control are of particular concern. Misconfiguration and account hijacking are currently the most pressing types of threats to public cloud environments.
With more organizations using cloud computing and associated cloud providers for data operations, security in potentially vulnerable areas have become a priority for organizations who contract with a public cloud provider. Legally, security responsibilities are likely to vary depending on the type of cloud service that is being purchased and the identity of the cloud provider.
What is Global Variable?
A global variable is a programming language construct, a variable type that is declared outside any function and is accessible to all functions throughout the program. A group of global variables is called a global state or global environment because when combined, they define various aspects of a program or the environment when the program runs. A global variable is usually declared on top of all functions and is kept to a minimum, as all functions can manipulate them during the program’s run time, which is considered dangerous by most programmers because they may accidentally be changed, resulting in bugs.
Global variables, as the name implies, are variables that are accessible globally, or everywhere throughout the program. Once declared, they remain in memory throughout the runtime of the program. This means that they can be changed by any function at any point and may affect the program as a whole. During the early years of computers where memory was very limited, they became considered bad practice because they took up valuable memory space and it was very easy for the programmer to lose track of their values, especially in long programs, leading to bugs that can be very hard to locate. Source code is best understood when the scope of its individual elements is limited, so because of their non-locality, it is hard to keep track of where they have been changed or why they were changed.
Even with this stigma, global variables are valuable in functions that do not share a ‘’caller and callee” relation, such as signal handlers and concurrent threads. With the exception of global variables declared as read-only values in protected memory, codes should deploy proper encapsulation in order to be considered “thread-safe.”
Early versions of non-structured languages like BASIC, COBOL and Fortran only used global variables. However, languages like Lua, Forth and Perl use global variables by default as do most shell scripts.
What is High-Level Language?
A high-level language is any programming language that enables the development of a program in a much more user-friendly programming context and is generally independent of the computer’s hardware architecture.
A high-level language has a higher level of abstraction from the computer, and focuses more on the programming logic rather than the underlying hardware components such as memory addressing and register utilization.
High-level languages are designed to be used by the human operator or the programmer. They are referred to as “closer to humans.” In other words, their programming style and context is easier to learn and implement than low-level languages, and the entire code generally focuses on the specific program to be created.
A high-level language does not require addressing hardware constraints when developing a program. However, every single program written in a high-level language must be interpreted into machine language before being executed by the computer.
BASIC, C/C++ and Java are popular examples of high-level languages.
What is Microsoft Teams?
Microsoft Teams is a cloud-based collaboration software that is part of the Office 365 suite of applications. Businesses of all sizes can use Teams. Core capabilities include messaging, calling, video meetings, file sharing and screen sharing.
Teams enable local and remote workers to collaborate on content in real-time and near-real-time across different devices, including laptops and mobile devices. Microsoft Teams integrates with other Office 365 applications, including Exchange, PowerPoint and SharePoint. Teams compete with similar products such as Slack, Cisco Webex Teams and Google Hangouts.
Teams’ chat-based workspace features group and private messaging with persistent conversation threads. Users can make voice over IP calls between Teams clients and a guest-access feature allows people outside the organization to be invited to meetings and use Teams’ screen sharing capabilities.
What is Integrated Risk Management?
Integrated risk management (IRM) is a set of coordinated business practices and supporting software tools that contribute to an organization’s ability to understand and manage risk holistically across all departments and third-party dependencies.
Traditional governance, risk and compliance (GRC) programs are often implemented in silos. The goal of IRM is to examine risk in the broad context of business goals and align the organization’s risk appetite with its need to maintain a competitive advantage.
To be successful, an IRM initiative should be collaborative and involve both IT and business-side leaders. Broadly speaking, there are four key pillars required to support an integrated risk management (IRM) strategy. The organization must:
- Align cybersecurity strategy with business strategy outcomes.
- Build an engaged, risk-aware culture.
- Include risk as criteria for making business decisions.
- Proactively determine what metrics will be used for reporting and evaluating risk management success.
The term “integrated risk management” was first coined by Gartner in 2017 in response to a changing risk landscape brought about by digital transformation, globalization and use of public cloud services.
Let’s Debug provides a set of tests to help figure out why you might not be able to issue a certificate for Let’s Encrypt. You simply enter the domain and validation method to identify problems with basic DNS setup, problems with nameservers, rate limiting, networking issues, CA policy issues and common website misconfigurations.
The Bash Hackers Wiki provides human-readable documentation and information on GNU Bash so users don’t have to read the entire Bash manpage. It’s not intended for newbies, but a great resource for those already familiar with Bash.
yEd Graph Editor is an application for generating high-quality diagrams either manually or by importing your data. Even large data sets can be arranged by the automatic layout algorithms with a single click. Runs on all major platforms.
Schneier on Security is a blog on security issues by a fellow and lecturer at Harvard’s Kennedy School and a board member of EFF.
Hiren’s Boot CD includes pretty much everything you need to recover a dead OS or accidentally deleted or lost files. From loading antivirus before boot, or imaging a drive that’s on its last leg. Lots and lots of tools built-in, and it has a desktop GUI as well.”
Knowledge of terms to know
What is Low-Level Language?
A low-level language is a programming language that deals with a computer’s hardware components and constraints. It has no (or only a minute level of) abstraction in reference to a computer and works to manage a computer’s operational semantics.
A low-level language may also be referred to as a computer’s native language.
Low-level languages are designed to operate and handle the entire hardware and instructions set architecture of a computer directly.
Low-level languages are considered to be closer to computers. In other words, their prime function is to operate, manage and manipulate the computing hardware and components. Programs and applications written in a low-level language are directly executable on the computing hardware without any interpretation or translation.
Machine language and assembly language are popular examples of low-level languages.
What is Backward Chaining?
Backward chaining is an inference method widely used in artificial intelligence, automated theorem provers and proof assistants. Backward chaining methodology can be described as working back from a goal. Many programming languages support backward chaining within their inference engines.
Backward chaining is also referred to as backward reasoning.
Backward chaining is used in logic programming through selective linear definite clause resolution. It’s one of the most commonly used methods of reasoning with interference rules and logical implication. Backward chaining works backwards from a list of goals to determine whether there is any data to support them. An inference engine that uses backward chaining searches the inference rules until it finds a rule with a consequent that matches the desired goal. If the antecedent of this rule is not known to be true, the rule is added to the list of goals so that data can be found to confirm it.
What is Ransomware as a service (RaaS)?
Ransomware as a service (RaaS) is a procurement model on the dark web for malware that can be used to conduct a ransomware attack.
Ransomware is a type of malicious software that makes it impossible to access a computer system or specific types of data until a financial payment is paid. Ransomware as a service offers a turnkey solution for cybercriminals who lack the skills or resources to develop their own. The “as a service” procurement model also allows the malware author to increase earnings while decreasing personal risk. Ease of use is at the core of the RaaS business model and this makes it particularly dangerous to small and mid-size organizations. Once a purchase has been made, the RaaS customers will be granted access to a package of pre-built scripts and tools that are hard to detect and take very little technical skill to operate.
Kubernetes 1.20 Release Information. Information regarding the current release cycle including important dates, Release Team contact information, tracking spreadsheets and more!
#Kubernetes folks, seriously just bookmark this, you’ll be surprised how often you’ll use it: https://t.co/KKj6mXP1JY
— Jorge Castro (@castrojo) September 18, 2020
Knowledge of terms to know
What is Configuration Management?
Configuration management is the detailed recording and updating of information that describes an enterprise’s computer systems and networks. The goal of configuration management is to maintain information technology (IT) systems in a desired, consistent state.
Administrators can identify and track individual configuration items (CIs) by documenting both functional capabilities and interdependencies. Because configuration issues are one of the major causes of outages, it’s important for organizations to have the right tools and follow best practices.
For a configuration management system to operate, it needs something in which to store the information it governs. Originally, this mechanism was called the configuration management database (CMDB).
What is Social Media Analytics?
Social media analytics is the practice of gathering data from social media websites and analyzing data using social media analytics tools to make business decisions. The most common use of social media analytics is to mine customer sentiment to support marketing and customer service activities.
The first step in a social media intelligence initiative is to determine which business goals the data that is gathered and analyzed will benefit. Typical objectives include increasing revenues, reducing customer service costs, getting feedback on products and services, and improving public opinion of a particular product or business division. Once the business goals have been identified, businesses should define key performance indicators (KPIs) to objectively evaluate the business analytics data.
What is the Principle Of Least Privilege (POLP)?
The principle of least privilege (POLP), an important concept in computer security, is the practice of limiting access rights for users to the bare minimum permissions they need to perform their work. Under POLP, users are granted permission to read, write or execute only the files or resources they need to do their jobs: In other words, the least amount of privilege necessary.
Additionally, the principle of least privilege can be applied to restricting access rights for applications, systems, processes and devices to only those permissions required to perform authorized activities.
Depending on the system, some privilege assignments may be based on attributes that are role-based, such as business units like marketing, human resources or IT, in addition to other parameters such as location, seniority, special circumstances or time of day. Depending on the operating system in use, administrators may need to tailor the different default privilege settings available for different types of user accounts.
What is Disinformation?
Disinformation is a type of untrue communication that is purposefully spread and represented as truth to elicit some response that serves the perpetrator’s purpose.
Disinformation is sometimes confused with misinformation but the two are distinguished by their intention. The purpose of disinformation is to deceive. Although misinformation is also false, it is presented as truth only because the communicator does not have the facts straight.
What is USB Type C (USB-C)?
USB-C is a connection type standard designed to replace all USB types on the computer and device ends of future USB with a single reversible connector.
USB-C allows for peripheral connectivity of USB devices at speeds power outputs of USB 3.1 (up to 10Gbps and 20v @ 5A). This capacity is enough to provide 100w, adequate power for the majority of laptops while also supporting thinner, smaller devices. USB-C will support both the data and power needs of many devices in one of the most compact connector formats.
What is Duel Persona?
Dual persona, in a mobile management context, is the provisioning and maintenance of two separate and independent end-user environments on a single mobile device. Typically, the first environment is personal and the second one is for work.
The goal of dual persona mobile application management (MAM) is to provide an organization with a way to keep corporate applications and their associated data segregated and protected on an employee’s personal mobile device. To protect the end user’s privacy, the IT department can only see and manage the assets in the business environment. If an employee leaves the company, the business environment can be wiped clean, leaving the employee’s personal data and apps intact. Dual persona technology addresses one of the challenges of the bring your own device trend: how to exercise IT control over employees’ personal devices without infringing on their right to privacy.
What is Robotic Process Automation (RPA)?
Robotic process automation (RPA) is the use of software with artificial intelligence (AI) and machine learning capabilities to handle high-volume, repeatable tasks that previously required humans to perform. These tasks can include queries, calculations and maintenance of records and transactions.
RPA technology consists of software robots (bots) that can mimic a human worker. RPA bots can log into applications, enter data, calculate and complete tasks and then log out. Currently, practitioners divide RPA technologies into three broad categories: probots, knowbots and chatbots.
- Probots are bots that follow simple, repeatable rules to process data.
- Knowbots are bots that search the internet to gather and store user-specified information.
- Chatbots are virtual agents who can respond to customer queries in real-time.
What is Cultural Fit?
Cultural fit is the likelihood that a job candidate will be able to conform and adapt to the core values and collective behaviours that make up an organization.
Cultural fit and functional fit are two criteria that human resource departments consider when evaluating candidates for employment. Functional fit is about the candidate’s hard skills — the candidate’s education, certifications, core competencies and experience. This type of information, which is usually supplied in the candidate’s resume or curriculum vitae, can be confirmed fairly easily pre-interview.
What is Ransomware Recovery?
Ransomware recovery is the process of resuming options following a cyberattack that demands payment in exchange for unlocking encrypted data. Having good data backups and a solid disaster recovery (DR) plan are the best ways an organization can recover successfully from this type of attack. With ransomware so prevalent, experts are urging businesses to assume that they will be hit with an attack, so protection and recovery are top of mind. Ransomware, a subset of malware, typically gets into a system when a user opens an infected email attachment or website.
What is the Patient Portal?
A patient portal is a web-based access point that enables self-serve health IT services for patients. Patient portals are used to secure patient access to data related to the patient’s personal care, as well as scheduling appointments and communicating with healthcare professionals.
Patients can use these portals through web browsers or mobile apps, connecting patients to health IT systems from anywhere in the world. Patients log in with personal credentials to ensure privacy and security. Information from databases of records is made digestible for patients by conversion to plain language and laymen’s terms. These database records may be self-reported or reported by healthcare professionals.
What is Enterprise Architecture (EA)?
An enterprise architecture (EA) is a conceptual blueprint that defines the structure and operation of organizations. The intent of enterprise architecture is to determine how an organization can effectively achieve its current and future objectives. Enterprise architecture involves the practice of analyzing, planning, designing and eventual implementing of analysis on an enterprise.
Enterprise architecture helps businesses going through a digital transformation since EA focuses on bringing both legacy applications and processes together in an attempt to form a seamless environment. The use of EA frameworks rose in response to increases in business technologies during the 1980s when a need for a way to respond to rapid technology growth was integral to business strategy. This process later expanded to the entirety of a business, not just information technology (IT). This way, the rest of the business would be ensured to be aligned with digital transformation.
Concepts of enterprise architecture are variable, so it will not look the same for each organization. Different parts of an organization may also view EA differently. For example, programmers and other technical IT professionals regard enterprise architecture strategies in terms of the infrastructure, application and management components under their control. However, enterprise architects are still responsible for enacting business structure analysis.
What are AWS Outposts?
AWS Outposts is an on-premises IT as a service (ITaaS) platform from Amazon Web Services (AWS). Outposts, which acts as a hybrid cloud, allows users to host an environment similar to a public cloud on-premises. According to Amazon, Outposts will be released in the second half of 2019.
Typical hybrid cloud platforms need users to operate multiple IT environments with multiple vendors to maintain hardware, software, updates and management tools along with other infrastructure. AWS Outposts coordinates everything under one environment, similar to what a user would have in other AWS services to ease management. With Outposts, users can use the same APIs, tools and hardware used on-premises or in the cloud. Outposts will use configurable and fully managed storage racks made with AWS hardware.
As of this writing, users can provision EC2 and EBS instances and volumes on Outposts. AWS plans to add support for services such as RDS, ECS, EMR, EKS and SageMaker at a later time. Outposts also feature a management console so users can monitor system health and performance, along with automatic updates to maintain infrastructure management software.
What is Multi-tenant Cloud?
A multi-tenant cloud is a cloud computing architecture that allows customers to share computing resources in a public or private cloud. Each tenant’s data is isolated and remains invisible to other tenants.
In a multi-tenant cloud system, users have individualized space for storing their projects and data. Each section of a cloud network with multi-tenant architecture includes complex permissions with the intention of allowing each user access to only their stored information along with security from other cloud tenants. Within the cloud infrastructure, each tenant’s data is inaccessible to all other tenants, and can only be reached with the cloud provider’s permissions.
In a private cloud, the customers, or tenants, maybe different individuals or groups within a single company, while in a public cloud, entirely different organizations may safely share their server space. Most public cloud providers use the multi-tenancy model. It allows them to run servers with single instances, which is less expensive and helps to streamline updates.
What is Amazon EKS?
Amazon Elastic Container Service for Kubernetes (EKS) is a cloud-based container management service that natively integrates with Kubernetes to deploy applications.
The EKS service automatically manages and scales clusters of infrastructure resources on AWS with Kubernetes, an open-source tool for container orchestration that can be difficult for an enterprise to administer on its own. With Amazon EKS, an enterprise can use Kubernetes without having install, operate or manage the container orchestration software.