In this deck we deploy contract using geth. We obtain ABI and Bytecode through compilation (which is done on Remix). After deploying the contract we can execute functions. A screen capture video is at the end of this deck.
Geth is the command line access for Ethereum environment. Here we first deploy a contract using Remix. Then we obtain the contract address and use geth to access this deployed contract. A screen capture video is at the end of the deck.
Design by Contract | Code Contracts in C# .NETDariusz Wozniak
This document discusses defensive programming and design by contract (DBC). It defines DBC as a software correctness methodology that uses preconditions, postconditions, and object invariants to document state changes in a program. The document outlines the history and benefits of DBC, provides examples of using preconditions and postconditions in code, and demonstrates DBC in C#. It concludes with a question and answer section.
Using the Code Contracts API for design-by-contract in .NET. Code Contracts bring design-by-contract (DbC) to .NET through runtime and static contract checking of preconditions, postconditions, and object invariants. It also extends generated XML documentation. There are some known issues like slow build times and limitations with closures and iterators, but overall it provides an easy way to add design-by-contract principles to .NET code.
The document discusses reference variables and how objects stored in data structures by reference can cause issues if the objects are transient. It provides an example where objects created on the stack disappear after the function returns. To prevent this, the document recommends allocating objects on the heap using new, so the objects persist in memory even after the function returns. It also discusses using delete to remove objects from the heap when no longer needed.
Design by Contract (DBC) is a software development technique that uses assertions to specify obligations between software components. Preconditions specify what a client must provide before a method executes. Postconditions specify guarantees a component makes after method execution. Invariants specify conditions that must always hold for a class. DBC helps ensure high-quality software by validating contracts at runtime. Java supports DBC through assertions and third-party libraries allow its use through annotations and AspectJ.
Must use the c-> syntax because we get a pointer from the queue. The object is still alive because it was created in the heap. One should be careful about transient objects that are stored by reference in data structures.
OSGi CDI Integration Specification -- Raymond Augé, LiferayOSGi Alliance
The OSGi Alliance has developed a specification describing integration between OSGi and CDI. The combination of these two powerful development technologies opens the door to new possibilities. This talk will walk through the most essential features of the specification and show some code and running examples.
Geth is the command line access for Ethereum environment. Here we first deploy a contract using Remix. Then we obtain the contract address and use geth to access this deployed contract. A screen capture video is at the end of the deck.
Design by Contract | Code Contracts in C# .NETDariusz Wozniak
This document discusses defensive programming and design by contract (DBC). It defines DBC as a software correctness methodology that uses preconditions, postconditions, and object invariants to document state changes in a program. The document outlines the history and benefits of DBC, provides examples of using preconditions and postconditions in code, and demonstrates DBC in C#. It concludes with a question and answer section.
Using the Code Contracts API for design-by-contract in .NET. Code Contracts bring design-by-contract (DbC) to .NET through runtime and static contract checking of preconditions, postconditions, and object invariants. It also extends generated XML documentation. There are some known issues like slow build times and limitations with closures and iterators, but overall it provides an easy way to add design-by-contract principles to .NET code.
The document discusses reference variables and how objects stored in data structures by reference can cause issues if the objects are transient. It provides an example where objects created on the stack disappear after the function returns. To prevent this, the document recommends allocating objects on the heap using new, so the objects persist in memory even after the function returns. It also discusses using delete to remove objects from the heap when no longer needed.
Design by Contract (DBC) is a software development technique that uses assertions to specify obligations between software components. Preconditions specify what a client must provide before a method executes. Postconditions specify guarantees a component makes after method execution. Invariants specify conditions that must always hold for a class. DBC helps ensure high-quality software by validating contracts at runtime. Java supports DBC through assertions and third-party libraries allow its use through annotations and AspectJ.
Must use the c-> syntax because we get a pointer from the queue. The object is still alive because it was created in the heap. One should be careful about transient objects that are stored by reference in data structures.
OSGi CDI Integration Specification -- Raymond Augé, LiferayOSGi Alliance
The OSGi Alliance has developed a specification describing integration between OSGi and CDI. The combination of these two powerful development technologies opens the door to new possibilities. This talk will walk through the most essential features of the specification and show some code and running examples.
Solidity Contract: the code, compilation, deployment and accessing KC Tam
This is a work more on concepts: we begin with a simple solidity contract. Then we walk through what happens during compilation and deployment, and how this contract is being accessed.
[Test bash manchester] contract testing in practicePierre Vincent
End-to-end integration plays a strong part in testability, unfortunately when an application grows, these kind of tests become a burden: brittleness, slower feedback and overall poor return on investment to improve quality.
Contract testing brings an alternative approach for validating integration points in fast-changing distributed systems. Because contracts don’t need integration environments, they can give very fast feedback to prevent API and messaging breaking changes from being introduced early-on.
Contracts are also a catalyst for inter-team communications. They help interactions between services become a central attribute in designing solutions, as opposed to an emergency concern when they break at a late integration stage.
This workshop covers the core concepts of contracts testing and contracts can play a part in reducing the struggles of integration tests. The attendees will be working on practical examples of defining contracts between teams and services, as well as implement them using the Pact tool-chain.
Blockchain technology-in-fin tech - Anton SitnikovDataFest Tbilisi
- Exactpro is a specialist firm focused on functional and non-functional testing of exchanges, clearing houses, and other financial market infrastructures. It was founded in 2009 and now employs 550 specialists.
- The document discusses Exactpro's software testing services for mission critical financial technology and clients regulated by financial authorities. It also provides an overview of Corda, a distributed ledger platform, covering nodes, identities, states, transactions, and more.
- The summary highlights Exactpro's business, services testing financial technology, and introduces Corda as a topic covered in the document.
This document discusses best practices for developing a chess game app called ChessMate. It covers topics like architecture patterns, design principles, testing practices, code quality, and project organization. Examples are provided to illustrate concepts like separation of concerns, dependency injection, protocol-oriented programming and value types vs reference types. The goal is to build a well-designed, extensible and maintainable chess app following industry standards.
Presenting 3 real-life use cases of Apache Beam in production. Code reusability for bounded and unbounded data as well as running Apache Beam to write into different cloud providers are some of the aspects that will be treated in this presentation.
This document discusses code contracts, which allow software designers to formally define interfaces with precise and verifiable specifications. It introduces design by contract principles and explains preconditions, postconditions, and object invariants that make obligations of code clear. Various contract methods like Contract.Assert and Contract.ForAll are demonstrated. The document also discusses using contracts with interfaces and abstract methods, as well as the contract reference assembly.
Self scaling Multi cloud nomad workloadsBram Vogelaar
During this talk we will discuss the problems encountered and the solutions implemented while dealing with building out a multi-cloud strategy. We will start by taking our first steps building a multi-region, multi-cloud Nomad cluster and discussing some pitfalls we encountered, since not all cloud providers are built the same. We’ll finish our talk by diving into ingress patterns and Consul config to be able to survive pretty much any outage or price change. Maintaining these config can be quite cumbersome but they’re are also a prime target to automate using Consul watches.
Here are the key things GWT's generators do to enable RPCs:
1. Generate serialization/deserialization code:
- The generator analyzes the service interface and generates code to serialize/deserialize requests and responses to/from JSON or other formats.
2. Generate client-side proxy classes:
- Proxy classes handle calling the service and mapping requests/responses to Java objects on the client.
3. Handle asynchronous callbacks:
- The proxy implements callbacks so the client code receives responses asynchronously without blocking.
4. Handle cross-domain requests:
- GWT handles any cross-domain issues behind the scenes via techniques like JSONP.
So in summary, the generators automate all the boiler
The document discusses building an interoperable programmable web through common agreements on discovery, linking, schemas, media types, formats and interfaces. It proposes using HTTP as the common protocol and representing data through common formats to allow different systems and APIs to interact. It also suggests using SQL-like constructs to enable operations like querying, filtering, joining and orchestrating requests across multiple APIs.
The battle of Protractor and Cypress - RunIT Conference 2019Ludmila Nesvitiy
The document compares the testing frameworks Protractor and Cypress. It discusses their installation, onboarding, configuration, APIs, parallelization capabilities, debugging techniques, supported test types including API, unit and e2e tests. It also covers project size, performance when run on Chrome visible and headless modes, support for multiple platforms and various reporting options. Useful links are also provided for references.
Massimo Artizzu - The tricks of Houdini: a magic wand for the future of CSS -...Codemotion
The way that banner is rendered is really bland. That animation performance is lackluster to say the least. Maybe you're still unsatisfied with grid. CSS has always suffered from a slow-paced evolution but it's probably coming to an end. Houdini is a project that aims to expose the internals of CSS engines to developers, in order to create new and performant ways to extend CSS. We'll see the current state-of-the-art and some neat examples, to conclude with a glance to what the future holds for us.
Learning Objectives:
- Understand how IoT is transforming home automation and how you can use it to your advantage
- Learn how the AWS IoT service suite can be used in smart home devices with Alexa integration
- Learn how Hunter Douglas used AWS IoT and Alexa to build a new innovative product
apidays LIVE Australia 2020 - From micro to macro-coordination through domain...apidays
apidays LIVE Australia 2020 - Building Business Ecosystems
From micro to macro-coordination through domain-centric DDL pipeline
Alex Khilko, CTO of PlayQ Inc.
This document provides an overview of Tibco BusinessWorks and discusses various concepts including channels, events, destinations, rules, global variables, concepts, scorecards, rule functions, and inferencing. It also demonstrates how to create projects in BE Studio including building CDD files, starting projects locally, handling different event types, using JMS channels, timer events, advisory events, and more. The document contains detailed steps and screenshots to explain key capabilities and functionality within the Tibco BusinessWorks platform.
The document discusses Google Web Toolkit (GWT), a development toolkit that allows developers to write client-side applications in Java and compile them to optimized JavaScript that runs across browsers, providing features like Ajax functionality, browser compatibility, and optimizations for both developers and users. GWT uses generators, translators, and linkers to compile Java code into JavaScript that can run directly in web browsers.
Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...Stefan Marr
This document discusses various techniques for optimizing metaprogramming and dynamic languages, including reflection, gradual typing, metaobject protocols, and dynamic optimizations like just-in-time compilation. It describes how techniques like polymorphic inline caches, hidden classes/shapes, and gradual typing checks can help optimize reflective operations and dynamic language features while preserving their flexibility. The document argues these "unoptimizable" features can achieve excellent performance through caching dynamically gathered type information and generating efficient machine code.
The document discusses Google Web Toolkit (GWT), a development toolkit that allows developers to write client-side applications in Java and have their code compiled into optimized JavaScript that runs across browsers. It provides an overview of GWT, demonstrates its capabilities, and discusses how it optimizes applications for both developers and users. GWT aims to simplify Ajax development, improve cross-browser portability, and increase application performance.
Metamask is a browser-based Ethereum wallet. Beside showing ether the native currency, Metamask can also show information about deployed Token. In this deck we will demonstrate how to add token in Metamask
In last deck we introduce in detail about an ERC20 token contract. In this deck we implement this in TestRPC, an in-memory Ethereum environment. We will execute every function defined in this contract through Remix.
Solidity Contract: the code, compilation, deployment and accessing KC Tam
This is a work more on concepts: we begin with a simple solidity contract. Then we walk through what happens during compilation and deployment, and how this contract is being accessed.
[Test bash manchester] contract testing in practicePierre Vincent
End-to-end integration plays a strong part in testability, unfortunately when an application grows, these kind of tests become a burden: brittleness, slower feedback and overall poor return on investment to improve quality.
Contract testing brings an alternative approach for validating integration points in fast-changing distributed systems. Because contracts don’t need integration environments, they can give very fast feedback to prevent API and messaging breaking changes from being introduced early-on.
Contracts are also a catalyst for inter-team communications. They help interactions between services become a central attribute in designing solutions, as opposed to an emergency concern when they break at a late integration stage.
This workshop covers the core concepts of contracts testing and contracts can play a part in reducing the struggles of integration tests. The attendees will be working on practical examples of defining contracts between teams and services, as well as implement them using the Pact tool-chain.
Blockchain technology-in-fin tech - Anton SitnikovDataFest Tbilisi
- Exactpro is a specialist firm focused on functional and non-functional testing of exchanges, clearing houses, and other financial market infrastructures. It was founded in 2009 and now employs 550 specialists.
- The document discusses Exactpro's software testing services for mission critical financial technology and clients regulated by financial authorities. It also provides an overview of Corda, a distributed ledger platform, covering nodes, identities, states, transactions, and more.
- The summary highlights Exactpro's business, services testing financial technology, and introduces Corda as a topic covered in the document.
This document discusses best practices for developing a chess game app called ChessMate. It covers topics like architecture patterns, design principles, testing practices, code quality, and project organization. Examples are provided to illustrate concepts like separation of concerns, dependency injection, protocol-oriented programming and value types vs reference types. The goal is to build a well-designed, extensible and maintainable chess app following industry standards.
Presenting 3 real-life use cases of Apache Beam in production. Code reusability for bounded and unbounded data as well as running Apache Beam to write into different cloud providers are some of the aspects that will be treated in this presentation.
This document discusses code contracts, which allow software designers to formally define interfaces with precise and verifiable specifications. It introduces design by contract principles and explains preconditions, postconditions, and object invariants that make obligations of code clear. Various contract methods like Contract.Assert and Contract.ForAll are demonstrated. The document also discusses using contracts with interfaces and abstract methods, as well as the contract reference assembly.
Self scaling Multi cloud nomad workloadsBram Vogelaar
During this talk we will discuss the problems encountered and the solutions implemented while dealing with building out a multi-cloud strategy. We will start by taking our first steps building a multi-region, multi-cloud Nomad cluster and discussing some pitfalls we encountered, since not all cloud providers are built the same. We’ll finish our talk by diving into ingress patterns and Consul config to be able to survive pretty much any outage or price change. Maintaining these config can be quite cumbersome but they’re are also a prime target to automate using Consul watches.
Here are the key things GWT's generators do to enable RPCs:
1. Generate serialization/deserialization code:
- The generator analyzes the service interface and generates code to serialize/deserialize requests and responses to/from JSON or other formats.
2. Generate client-side proxy classes:
- Proxy classes handle calling the service and mapping requests/responses to Java objects on the client.
3. Handle asynchronous callbacks:
- The proxy implements callbacks so the client code receives responses asynchronously without blocking.
4. Handle cross-domain requests:
- GWT handles any cross-domain issues behind the scenes via techniques like JSONP.
So in summary, the generators automate all the boiler
The document discusses building an interoperable programmable web through common agreements on discovery, linking, schemas, media types, formats and interfaces. It proposes using HTTP as the common protocol and representing data through common formats to allow different systems and APIs to interact. It also suggests using SQL-like constructs to enable operations like querying, filtering, joining and orchestrating requests across multiple APIs.
The battle of Protractor and Cypress - RunIT Conference 2019Ludmila Nesvitiy
The document compares the testing frameworks Protractor and Cypress. It discusses their installation, onboarding, configuration, APIs, parallelization capabilities, debugging techniques, supported test types including API, unit and e2e tests. It also covers project size, performance when run on Chrome visible and headless modes, support for multiple platforms and various reporting options. Useful links are also provided for references.
Massimo Artizzu - The tricks of Houdini: a magic wand for the future of CSS -...Codemotion
The way that banner is rendered is really bland. That animation performance is lackluster to say the least. Maybe you're still unsatisfied with grid. CSS has always suffered from a slow-paced evolution but it's probably coming to an end. Houdini is a project that aims to expose the internals of CSS engines to developers, in order to create new and performant ways to extend CSS. We'll see the current state-of-the-art and some neat examples, to conclude with a glance to what the future holds for us.
Learning Objectives:
- Understand how IoT is transforming home automation and how you can use it to your advantage
- Learn how the AWS IoT service suite can be used in smart home devices with Alexa integration
- Learn how Hunter Douglas used AWS IoT and Alexa to build a new innovative product
apidays LIVE Australia 2020 - From micro to macro-coordination through domain...apidays
apidays LIVE Australia 2020 - Building Business Ecosystems
From micro to macro-coordination through domain-centric DDL pipeline
Alex Khilko, CTO of PlayQ Inc.
This document provides an overview of Tibco BusinessWorks and discusses various concepts including channels, events, destinations, rules, global variables, concepts, scorecards, rule functions, and inferencing. It also demonstrates how to create projects in BE Studio including building CDD files, starting projects locally, handling different event types, using JMS channels, timer events, advisory events, and more. The document contains detailed steps and screenshots to explain key capabilities and functionality within the Tibco BusinessWorks platform.
The document discusses Google Web Toolkit (GWT), a development toolkit that allows developers to write client-side applications in Java and compile them to optimized JavaScript that runs across browsers, providing features like Ajax functionality, browser compatibility, and optimizations for both developers and users. GWT uses generators, translators, and linkers to compile Java code into JavaScript that can run directly in web browsers.
Metaprogramming, Metaobject Protocols, Gradual Type Checks: Optimizing the "U...Stefan Marr
This document discusses various techniques for optimizing metaprogramming and dynamic languages, including reflection, gradual typing, metaobject protocols, and dynamic optimizations like just-in-time compilation. It describes how techniques like polymorphic inline caches, hidden classes/shapes, and gradual typing checks can help optimize reflective operations and dynamic language features while preserving their flexibility. The document argues these "unoptimizable" features can achieve excellent performance through caching dynamically gathered type information and generating efficient machine code.
The document discusses Google Web Toolkit (GWT), a development toolkit that allows developers to write client-side applications in Java and have their code compiled into optimized JavaScript that runs across browsers. It provides an overview of GWT, demonstrates its capabilities, and discusses how it optimizes applications for both developers and users. GWT aims to simplify Ajax development, improve cross-browser portability, and increase application performance.
Metamask is a browser-based Ethereum wallet. Beside showing ether the native currency, Metamask can also show information about deployed Token. In this deck we will demonstrate how to add token in Metamask
In last deck we introduce in detail about an ERC20 token contract. In this deck we implement this in TestRPC, an in-memory Ethereum environment. We will execute every function defined in this contract through Remix.
Ethereum is by far the most common contract platform on top of which a variety of application are running. One of the well-accepted application is Token. Token is implemented through a token contract. Here we introduce the ERC20 standard and see more in detail on an ERC20 Token Contract.
From investment point of view, ethereum and tokens are nothing more than investment product. From implementation perspective they are different. This deck will tell the difference between Ethers and Tokens.
Remix supports accessing various Ethereum networks. Here we introduce TestRPC, the most common Ethereum networks for Solidity contract and DApp development. No difference on Remix side, but TestRPC gives us a better picture. There is a screen capture video at the end of the deck.
Here we use Remix, an online Solidity tool to compile and deploy a contract. Remix allows deployment on various Ethereum environments and here we use the in-memory JavaScript VM. We also interact with the deployed contract and see how the functions work. A screen capture video is at the end of the deck.
The document introduces some basic concepts of the Ethereum network including that it is composed of nodes that agree on a predefined ruleset, it can be seen as a gigantic computer where applications (contracts) are deployed and interact with data, Ether is the native currency used to pay for transactions and contract execution, users are represented by addresses that can control Ether balances and send transactions, contracts hold business logic and data on the network, and decentralized apps allow users to interact with contracts through frontends while benefiting from the security and transparency of the Ethereum network.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
Maruthi Prithivirajan, Head of ASEAN & IN Solution Architecture, Neo4j
Get an inside look at the latest Neo4j innovations that enable relationship-driven intelligence at scale. Learn more about the newest cloud integrations and product enhancements that make Neo4j an essential choice for developers building apps with interconnected data and generative AI.
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th International Conference on Advanced Information Systems Engineering (CAiSE), 3 June 2024, Limassol, Cyprus.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
3. Ethereum Network (the Giant Computer)
artifact
ABI
Bytecode
Review: Contract
Deployment
Deployed Contract
Bytecode
ABI
Contract
Address
Deploy
To deployed a contract we need the artifact,
1. Bytecode, and,
2. Application Binary Interface (ABI)
4. Obtain ABI from Compile Panel on Remix.
ABI
[{"constant":true,"inputs":[],"name":"get","outputs":[{"name":"retVal","type":"uint
256"}],"payable":false,"stateMutability":"view","type":"function"},
{"constant":false,"inputs":[{"name":"x","type":"uint256"}],"name":"set","outputs":
[],"payable":false,"stateMutability":"nonpayable","type":"function"}]
5. Obtain Bytecode from Compile Panel
on Remix.
Bytecode
"0x6060604052341561000f57600080fd5b60d38061001d6000396000f3006060604052600436106049576
000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806360fe
47b114604e5780636d4ce63c14606e575b600080fd5b3415605857600080fd5b606c600480803590602001
90919050506094565b005b3415607857600080fd5b607e609e565b6040518082815260200191505060405
180910390f35b8060008190555050565b600080549050905600a165627a7a723058209c766746a98a31b7
5a36be097d1ab14fdb59fc11fbc2c43b8a58201c864925fd0029"
6. First start TestRPC, and open another terminal accessing TestRPC through RPC
$ geth attach http://localhost:8545
8. Deploy contract with new method. Note we need to specify account and gas to be spent in this deployment.
The deployed contract is stored in object simpleStorage.
> simpleStorage = eth.contract(abi).new({from: eth.accounts[0], data: bytecode, gas: 300000})
9. Now we can execute functions using object simpleStorage.
> simpleStorage.get()
> simpleStorage.set(100, {from: eth.accounts[0]})
10. Summary
We can use Geth to deploy and access contract on
TestRPC.
As good practice, we use both Remix and Geth client
working on TestRPC. As seen before, they can work on the
same deployed contract.