Mykhailo Zarai "Be careful when dealing with C++" at Rivne IT TalksVadym Muliavka
油
The document discusses secure coding practices for C and C++. It warns about common vulnerabilities like buffer overflows, integer overflows, and null pointer dereferencing. It provides examples of these issues and secure coding techniques to address them. The document recommends using tools like Application Verifier and external code analysis tools to detect issues. It lists references on secure coding standards and techniques to help programmers write more robust code.
Roman Valchuk "Introducing to DevOps technologies"Vadym Muliavka
油
The document introduces DevOps technologies, emphasizing its definition as a union of people, processes, and products for continuous delivery. It outlines DevOps practices, metrics, and the benefits of faster delivery cycles, including higher quality and lower failure rates. Additionally, it clarifies what DevOps is not, highlighting its role in bridging traditional divides in software delivery.
IT Talks "VR Tips for Engineers and Developers"Vadym Muliavka
油
This document provides tips for engineers and developers getting started with virtual reality (VR). It recommends starting with lower-cost options like Google Cardboard or Samsung GearVR to learn the basics of VR software development. For higher-end VR, it suggests the Oculus Rift, HTC Vive, or PlayStation VR, noting the Oculus and Vive support a variety of game engines and have extensive documentation. The document outlines some common challenges in VR development like motion sickness and hardware limitations but emphasizes software is the main bottleneck. It encourages learning through tutorials, forums and open-source projects.
Rivne IT Talks How to programa Quantum Computer?Vadym Muliavka
油
To program a quantum computer, one must first formulate the problem to be solved as a spin model by mapping it to a set of interacting quantum bits or qubits. The problem is encoded into the states and interactions of the qubits. The connectivity between qubits is defined according to the problem graph. This graph and the interaction weights are then transferred to the quantum computer to find the optimal qubit configuration that solves the given problem. Some potential applications include using quantum annealing to solve optimization problems or running quantum circuits for applications like machine learning. Programming quantum computers is currently challenging but may become simpler over time as the technology develops further.
The document discusses defect reporting and tracking. It defines a software bug and explains that once a tester identifies a defect, they generate a formal defect report. The report includes information like a unique ID, project name, summary, steps to reproduce, actual and expected results. A bug goes through different statuses in its lifecycle from new to closed. Developers analyze and fix bugs, while testers verify fixes and may reopen bugs. Bug tracking systems help teams manage large numbers of defects by keeping track of key details for each bug report.
Boundary value analysis is a technique used to test software at the boundaries or edges of different input conditions or equivalence partitions. It aims to find errors that occur at boundary values by testing a range of inputs including values that are minimum, maximum, just above or below the boundaries. The document provides examples of applying boundary value analysis to test different conditions for a password field length, age criteria for military service, postal rate calculations based on letter weight, and an application to determine if a job candidate can be hired based on their age. Boundary value analysis involves determining equivalence partitions, identifying the corresponding boundary values, and designing test cases that evaluate inputs at these boundary points.
This document discusses equivalence partitioning, a black box testing technique where test cases are designed to execute representatives from equivalence partitions. Equivalence partitions are derived from requirements and divide test input data into ranges of values that cover all possible scenarios. The goals are to reduce the number of test cases to a minimum while maintaining coverage. Examples demonstrate how to identify equivalence classes based on requirements and define representative test cases. Benefits include reducing tests and time, while risks include missing bugs if not used correctly.