Nella creazione di applicazioni, non abbiamo mai avuto a disposizione un ambiente integrato, dedicato allo sviluppatore per la progettazione e il deployment di un Database, per la scrittura di codice SQL. Oggi questa lacuna è stata colmata dall'introduzione degli SQL Server Data Tools: grazie ad un apposito template per Visual Studio 2010 e 2012, è possibile gestire un progetto SQL, come un progetto di una applicazione desktop o di una applicazione web. Vediamo insieme cosa possiamo fare con questi strumenti.
Intermediate languages are used in compiler construction to simplify retargeting compilers to multiple machine architectures. In the implementation of \emph{domain-specific languages} (DSLs), compilers typically generate high-level source code, rather than low-level machine instructions. DSL compilers target a software platform, i.e. a programming language with a set of libraries, deployable on one or more operating systems. DSLs enable targeting \emph{multiple} software platforms if its abstractions are platform independent. While transformations from DSL to each targeted platform are often conceptually very similar, there is little reuse between transformations due to syntactic and API differences of the target platforms, making supporting multiple platforms expensive. In this paper, we discuss the design and implementation of PIL, a Platform Independent Language, an intermediate language providing a layer of abstraction between DSL and target platform code, abstracting from syntactic and API differences between platforms, thereby removing the need for platform-specific transformations. We discuss the use of PIL in an implemementation of WebDSL, a DSL for building web applications.
Given at the BCS in Edinburgh on the 1/8/2012. Talk about change and failed attempt to introduce XP into an organisation. Suggests potential reasons for the failure, introduces Kanban and then speculates as to how change might have been more successful in an evolutionary manner with Kanban.
Why Should You Upgrade to Delphi 2009? You can build applications that handle global data with ease using new Unicode support throughout the IDE and VCL. And now get more insight into your database structures with data modeling and visualization in the all new Delphi Architect Edition.
I translate Framework Design Guideline to Korean.
This Book is very impressed to me.
So I want to share Krzysztof Cwalina's Knowledge.
I re-edit his presentation and add my opinion.
SSDT Workshop @ SQL Bits X (2012-03-29)Gert Drapers
Mastering SSDT with the DataDude
This is your chance to hear the real story behind SSDT, directly from the man who built it. SQL Server Data Tools is effectively the 3rd version of the DataDude project, started in 2005 by Gert Drapers. SQL Server Data Tools (SSDT) lets you develop, test, and maintain SQL Server and SQL Azure databases offline on your desktop. SSDT's modern T-SQL development environment supports declarative model-driven development whether working connected or offline, and integrates with Visual Studio's project and application lifecycle management tools to enable team development and source code control support for SQL Server and SQL Azure databases.
This master class will get you started using SSDT; provides you with the architectural ins and outs of schema management using SSDT; team oriented database development and leveraging the command line and programmatic interfaces that accompany SSDT for importing, comparing and deploying database schemas. Learn it from the DataDude himself.
Intermediate languages are used in compiler construction to simplify retargeting compilers to multiple machine architectures. In the implementation of \emph{domain-specific languages} (DSLs), compilers typically generate high-level source code, rather than low-level machine instructions. DSL compilers target a software platform, i.e. a programming language with a set of libraries, deployable on one or more operating systems. DSLs enable targeting \emph{multiple} software platforms if its abstractions are platform independent. While transformations from DSL to each targeted platform are often conceptually very similar, there is little reuse between transformations due to syntactic and API differences of the target platforms, making supporting multiple platforms expensive. In this paper, we discuss the design and implementation of PIL, a Platform Independent Language, an intermediate language providing a layer of abstraction between DSL and target platform code, abstracting from syntactic and API differences between platforms, thereby removing the need for platform-specific transformations. We discuss the use of PIL in an implemementation of WebDSL, a DSL for building web applications.
Given at the BCS in Edinburgh on the 1/8/2012. Talk about change and failed attempt to introduce XP into an organisation. Suggests potential reasons for the failure, introduces Kanban and then speculates as to how change might have been more successful in an evolutionary manner with Kanban.
Why Should You Upgrade to Delphi 2009? You can build applications that handle global data with ease using new Unicode support throughout the IDE and VCL. And now get more insight into your database structures with data modeling and visualization in the all new Delphi Architect Edition.
I translate Framework Design Guideline to Korean.
This Book is very impressed to me.
So I want to share Krzysztof Cwalina's Knowledge.
I re-edit his presentation and add my opinion.
SSDT Workshop @ SQL Bits X (2012-03-29)Gert Drapers
Mastering SSDT with the DataDude
This is your chance to hear the real story behind SSDT, directly from the man who built it. SQL Server Data Tools is effectively the 3rd version of the DataDude project, started in 2005 by Gert Drapers. SQL Server Data Tools (SSDT) lets you develop, test, and maintain SQL Server and SQL Azure databases offline on your desktop. SSDT's modern T-SQL development environment supports declarative model-driven development whether working connected or offline, and integrates with Visual Studio's project and application lifecycle management tools to enable team development and source code control support for SQL Server and SQL Azure databases.
This master class will get you started using SSDT; provides you with the architectural ins and outs of schema management using SSDT; team oriented database development and leveraging the command line and programmatic interfaces that accompany SSDT for importing, comparing and deploying database schemas. Learn it from the DataDude himself.
Declarative Database Development with SQL Server Data ToolsGert Drapers
SQLBits X presentation, Declarative Database Development with SQL Server Data Tools (SSDT)
Database development is complicated by nature! Database engines are stateful, so data loss is always a risk; object dependencies determine the order in which changes need to be applied and the loosely coupled nature of the SQL language can result in unexpected runtime errors. These are just a small collection of examples why database development is hard. The SQL Server Data Tools (SSDT) development environment helps developers getting a better handle on database development, testing, deployment and migrations. The declarative nature lets the developer focus on the final state they want, instead of writing an imperative script on how to change the state of the database directly
"Technical Challenges behind Visual IDE for React Components" Tetiana MandziukFwdays
During this talk, you will get acquainted with a new product inside the Wix ecosystem — Wix Components Studio. It is a visual IDE for React Components that enables team members from all disciplines to easily access, validate and discuss their components on the same platform. We will review the building blocks needed to assemble a visual IDE and the technical challenges we are dealing with. Specifically, we will discuss pluggable architecture (and what that means), code analysis and generation, schema extraction, and mechanism for data synchronization in different environments. A short demo is also included!
Presentación sobre Integration Services en SQL Server 2008.
Ing. Eduardo Castro Martinez, PhD
Microsoft SQL Server MVP
http://ecastrom.blogspot.com
http://comunidadwindows.org
ConFoo Montreal - Microservices for building an IDE - The innards of JetBrain...Maarten Balliauw
Ever wondered how IDE’s are built? In this talk, we’ll skip the marketing bit and dive into the architecture and implementation of JetBrains Rider. We’ll look at how and why we have built (and open sourced) a reactive protocol, and how the IDE uses a “microservices” architecture to communicate with the debugger, Roslyn, a WPF renderer and even other tools like Unity3D. We’ll explore how things are wired together, both in-process and across those microservices. Let’s geek out!
Maintenance Plans for Beginners (but not only) | Each of experienced administrators used (to some extent) what is called Maintenance Plans - Plans of Conservation. During this session, I'd like to discuss what can be useful for us to provide functionality when we use them and what to look out for. Session at 200 times the forward-300, with the opening of the discussion.
From time to time, there is a need to modify information systems due to changes in legislation (like SOX), standards, currency change (like the euro), and more. These types of changes have a substantial impact on many components of an information system and therefore contain a high risk factor.
This is the slidedeck of the presentation delivered to the Belgian SQL user group at 29th January of 2013. It's about automating SSRS deployments using MSBUILD.
Normalmente parliamo e presentiamo Azure IoT (Central) con un taglio un po' da "maker". In questa sessione, invece, vediamo di parlare allo SCADA engineer. Come si configura Azure IoT Central per il mondo industriale? Dov'è OPC/UA? Cosa c'entra IoT Plug & Play in tutto questo? E Azure IoT Central...quali vantaggi ci da? Cerchiamo di rispondere a queste e ad altre domande in questa sessione...
Allo sviluppatore Azure piacciono i servizi PaaS perchè sono "pronti all'uso". Ma quando proponiamo le nostre soluzioni alle aziende, ci scontriamo con l'IT che apprezza gli elementi infrastrutturali, IaaS. Perchè non (ri)scoprirli aggiungendo anche un pizzico di Hybrid che con il recente Azure Kubernetes Services Edge Essentials si può anche usare in un hardware che si può tenere anche in casa? Quindi scopriremo in questa sessione, tra gli altri, le VNET, le VPN S2S, Azure Arc, i Private Endpoints, e AKS EE.
Declarative Database Development with SQL Server Data ToolsGert Drapers
SQLBits X presentation, Declarative Database Development with SQL Server Data Tools (SSDT)
Database development is complicated by nature! Database engines are stateful, so data loss is always a risk; object dependencies determine the order in which changes need to be applied and the loosely coupled nature of the SQL language can result in unexpected runtime errors. These are just a small collection of examples why database development is hard. The SQL Server Data Tools (SSDT) development environment helps developers getting a better handle on database development, testing, deployment and migrations. The declarative nature lets the developer focus on the final state they want, instead of writing an imperative script on how to change the state of the database directly
"Technical Challenges behind Visual IDE for React Components" Tetiana MandziukFwdays
During this talk, you will get acquainted with a new product inside the Wix ecosystem — Wix Components Studio. It is a visual IDE for React Components that enables team members from all disciplines to easily access, validate and discuss their components on the same platform. We will review the building blocks needed to assemble a visual IDE and the technical challenges we are dealing with. Specifically, we will discuss pluggable architecture (and what that means), code analysis and generation, schema extraction, and mechanism for data synchronization in different environments. A short demo is also included!
Presentación sobre Integration Services en SQL Server 2008.
Ing. Eduardo Castro Martinez, PhD
Microsoft SQL Server MVP
http://ecastrom.blogspot.com
http://comunidadwindows.org
ConFoo Montreal - Microservices for building an IDE - The innards of JetBrain...Maarten Balliauw
Ever wondered how IDE’s are built? In this talk, we’ll skip the marketing bit and dive into the architecture and implementation of JetBrains Rider. We’ll look at how and why we have built (and open sourced) a reactive protocol, and how the IDE uses a “microservices” architecture to communicate with the debugger, Roslyn, a WPF renderer and even other tools like Unity3D. We’ll explore how things are wired together, both in-process and across those microservices. Let’s geek out!
Maintenance Plans for Beginners (but not only) | Each of experienced administrators used (to some extent) what is called Maintenance Plans - Plans of Conservation. During this session, I'd like to discuss what can be useful for us to provide functionality when we use them and what to look out for. Session at 200 times the forward-300, with the opening of the discussion.
From time to time, there is a need to modify information systems due to changes in legislation (like SOX), standards, currency change (like the euro), and more. These types of changes have a substantial impact on many components of an information system and therefore contain a high risk factor.
This is the slidedeck of the presentation delivered to the Belgian SQL user group at 29th January of 2013. It's about automating SSRS deployments using MSBUILD.
Normalmente parliamo e presentiamo Azure IoT (Central) con un taglio un po' da "maker". In questa sessione, invece, vediamo di parlare allo SCADA engineer. Come si configura Azure IoT Central per il mondo industriale? Dov'è OPC/UA? Cosa c'entra IoT Plug & Play in tutto questo? E Azure IoT Central...quali vantaggi ci da? Cerchiamo di rispondere a queste e ad altre domande in questa sessione...
Allo sviluppatore Azure piacciono i servizi PaaS perchè sono "pronti all'uso". Ma quando proponiamo le nostre soluzioni alle aziende, ci scontriamo con l'IT che apprezza gli elementi infrastrutturali, IaaS. Perchè non (ri)scoprirli aggiungendo anche un pizzico di Hybrid che con il recente Azure Kubernetes Services Edge Essentials si può anche usare in un hardware che si può tenere anche in casa? Quindi scopriremo in questa sessione, tra gli altri, le VNET, le VPN S2S, Azure Arc, i Private Endpoints, e AKS EE.
Static abstract members nelle interfacce di C# 11 e dintorni di .NET 7.pptxMarco Parenzan
Did interfaces in C# need evolution? Maybe yes. Are they violating some fundamental principles? We see. Are we asking for some hoops? Let's see all this by telling a story (of code, of course)
Azure Synapse Analytics for your IoT SolutionsMarco Parenzan
Let's find out in this session how Azure Synapse Analytics, with its SQL Serverless Pool, ADX, Data Factory, Notebooks, Spark can be useful for managing data analysis in an IoT solution.
Power BI Streaming Data Flow e Azure IoT Central Marco Parenzan
Dal 2015 gli utilizzatori di Power BI hanno potuto analizzare dati in real-time grazie all'integrazione con altri prodotti e servizi Microsoft. Con streaming dataflow, si porterà l'analisi in tempo reale completamente all'interno di Power BI, rimuovendo la maggior parte delle restrizioni che avevamo, integrando al contempo funzionalità di analisi chiave come la preparazione dei dati in streaming e nessuna creazione di codice. Per vederlo in funzione, studieremo un caso specifico di streaming come l'IoT con Azure IoT Central.
Power BI Streaming Data Flow e Azure IoT CentralMarco Parenzan
Dal 2015 gli utilizzatori di Power BI hanno potuto analizzare dati in real-time grazie all'integrazione con altri prodotti e servizi Microsoft. Con streaming dataflow, si porterà l'analisi in tempo reale completamente all'interno di Power BI, rimuovendo la maggior parte delle restrizioni che avevamo, integrando al contempo funzionalità di analisi chiave come la preparazione dei dati in streaming e nessuna creazione di codice. Per vederlo in funzione, studieremo un caso specifico di streaming come l'IoT con Azure IoT Central.
Power BI Streaming Data Flow e Azure IoT CentralMarco Parenzan
Since 2015, Power BI users have been able to analyze data in real-time thanks to the integration with other Microsoft products and services. With streaming dataflow, you'll bring real-time analytics completely within Power BI, removing most of the restrictions we had, while integrating key analytics features like streaming data preparation and no coding. To see it in action, we will study a specific case of streaming such as IoT with Azure IoT Central.
What are the actors? What are they used for? And how can we develop them? And how are they published and used on Azure? Let's see how it's done in this session
Generic Math, funzionalità ora schedulata per .NET 7, e Azure IoT PnP mi hanno risvegliato un argomento che nel mio passato mi hanno portato a fare due/tre viaggi, grazie all'Università di Trieste, a Cambridge (2006/2007 circa) e a Seattle (2010, quando ho parlato pubblicamente per la prima volta di Azure :) e che mi ha fatto conoscere il mito Don Box!), a parlare di codice in .NET che aveva a che fare con la matematica e con la fisica: le unità di misura e le matrici. L'avvento dei Notebook nel mondo .NET e un vecchio sogno legato alla libreria ANTLR (e tutti i miei esercizi di Code Generation) mi portano a mettere in ordine 'sto minestrone di idee...o almeno ci provo (non so se sta tutto in piedi).
322 / 5,000
Translation results
.NET is better every year for a developer who still dreams of developing a video game. Without pretensions and without talking about Unity or any other framework, just "barebones" .NET code, we will try to write a game (or parts of it) in the 80's style (because I was a kid in those years). In Christmas style.
Building IoT infrastructure on edge with .net, Raspberry PI and ESP32 to conn...Marco Parenzan
IoT scenarios necessarily pass through the Edge component and the Raspberry PI is a great way to explore this world. If we need to receive IoT events from sensors, how do I implement an MQTT endpoint? Kafka is a clever way to do this. And how do I process the data? Kafka? Spark? Rabbit ?. How do we write custom code for these environments? .NET, now in version 6 is another clever way to do it! And maybe, we can also communicate with Azure. We'll see in this session if we can make it all work!
How can you handle defects? If you are in a factory, production can produce objects with defects. Or values from sensors can tell you over time that some values are not "normal". What can you do as a developer (not a Data Scientist) with .NET o Azure to detect these anomalies? Let's see how in this session.
Quali vantaggi ci da Azure? Dal punto di vista dello sviluppo software, uno di questi è certamente la varietà dei servizi di gestione dei dati. Questo ci permette di cominciare a non essere SQL centrici ma utilizzare il servizio giusto per il problema giusto fino ad applicare una strategia di Polyglot Persistence (e vedremo cosa significa) nel rispetto di una corretta gestione delle risorse IT e delle pratiche di DevOps.
C'è ancora diffidenza nei confronti dell'Internet of Things e il costo delle soluzioni custom non aiuta. Azure IoT Central è un servizio SaaS personalizzabile che rende accessibile a costi sostenibili. Vediamo quali sonole peculiarità di questo servizio.
Come puoi gestire i difetti? Se sei in una fabbrica, la produzione può produrre oggetti con difetti. Oppure i valori dei sensori possono dirti nel tempo che alcuni valori non sono "normali". Cosa puoi fare come sviluppatore (non come Data Scientist) con .NET o Azure per rilevare queste anomalie? Vediamo come in questa sessione.
It happens that we have to develop several services and deploy them in Azure. They are small, repetitive but different, often not very different. Why not use code generation techniques to simplify the development and implementation of these services? Let's see with .NET comes to meet us and helps us to deploy in Azure.
Running Kafka and Spark on Raspberry PI with Azure and some .net magicMarco Parenzan
IoT scenarios necessarily pass through the Edge component and the Raspberry PI is a great way to explore this world. If we need to receive IoT events from sensors, how do I implement an MQTT endpoint? Kafka is a clever way to do this. And how do I process the data in Kafka? Spark is another clever way of doing this. How do we write custom code for these environments? .NET, now in version 6 is another clever way to do it! And maybe, we also communicate with Azure. We'll see in this session if we can make it all work!
Time Series Anomaly Detection with Azure and .NETTMarco Parenzan
f you have any device or source that generates values over time (also a log from a service), you want to determine if in a time frame, the time serie is correct or you can detect some anomalies. What can you do as a developer (not a Data Scientist) with .NET o Azure? Let's see how in this session.
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™UiPathCommunity
In questo evento online gratuito, organizzato dalla Community Italiana di UiPath, potrai esplorare le nuove funzionalità di Autopilot, il tool che integra l'Intelligenza Artificiale nei processi di sviluppo e utilizzo delle Automazioni.
📕 Vedremo insieme alcuni esempi dell'utilizzo di Autopilot in diversi tool della Suite UiPath:
Autopilot per Studio Web
Autopilot per Studio
Autopilot per Apps
Clipboard AI
GenAI applicata alla Document Understanding
👨🏫👨💻 Speakers:
Stefano Negro, UiPath MVPx3, RPA Tech Lead @ BSP Consultant
Flavio Martinelli, UiPath MVP 2023, Technical Account Manager @UiPath
Andrei Tasca, RPA Solutions Team Lead @NTT Data
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Welocme to ViralQR, your best QR code generator.ViralQR
Welcome to ViralQR, your best QR code generator available on the market!
At ViralQR, we design static and dynamic QR codes. Our mission is to make business operations easier and customer engagement more powerful through the use of QR technology. Be it a small-scale business or a huge enterprise, our easy-to-use platform provides multiple choices that can be tailored according to your company's branding and marketing strategies.
Our Vision
We are here to make the process of creating QR codes easy and smooth, thus enhancing customer interaction and making business more fluid. We very strongly believe in the ability of QR codes to change the world for businesses in their interaction with customers and are set on making that technology accessible and usable far and wide.
Our Achievements
Ever since its inception, we have successfully served many clients by offering QR codes in their marketing, service delivery, and collection of feedback across various industries. Our platform has been recognized for its ease of use and amazing features, which helped a business to make QR codes.
Our Services
At ViralQR, here is a comprehensive suite of services that caters to your very needs:
Static QR Codes: Create free static QR codes. These QR codes are able to store significant information such as URLs, vCards, plain text, emails and SMS, Wi-Fi credentials, and Bitcoin addresses.
Dynamic QR codes: These also have all the advanced features but are subscription-based. They can directly link to PDF files, images, micro-landing pages, social accounts, review forms, business pages, and applications. In addition, they can be branded with CTAs, frames, patterns, colors, and logos to enhance your branding.
Pricing and Packages
Additionally, there is a 14-day free offer to ViralQR, which is an exceptional opportunity for new users to take a feel of this platform. One can easily subscribe from there and experience the full dynamic of using QR codes. The subscription plans are not only meant for business; they are priced very flexibly so that literally every business could afford to benefit from our service.
Why choose us?
ViralQR will provide services for marketing, advertising, catering, retail, and the like. The QR codes can be posted on fliers, packaging, merchandise, and banners, as well as to substitute for cash and cards in a restaurant or coffee shop. With QR codes integrated into your business, improve customer engagement and streamline operations.
Comprehensive Analytics
Subscribers of ViralQR receive detailed analytics and tracking tools in light of having a view of the core values of QR code performance. Our analytics dashboard shows aggregate views and unique views, as well as detailed information about each impression, including time, device, browser, and estimated location by city and country.
So, thank you for choosing ViralQR; we have an offer of nothing but the best in terms of QR code services to meet business diversity!
4. Marco Parenzan
.NET Developer, SQL User
1nn0va Speaker (www.innovazionefvg.net)
Trainer and consultant on application
development in companies and in University
(of Trieste)
Head of Development in CGN S.P.A.
(www.cgn.it)
4 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
6. Database Development
Often not integrated into application life cycle
management and processes
What is a database development
experience?
Install SSMS into developer machine….
It‟s an «admin» tool
Outside Visual Studio (it‟s Visual Studio yes)
Third party tools…
What does »deployment» means?
6 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
7. The premise
IMPERATIVE DATABASE
DEVELOPMENT
7 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
8. Database Development Challenges
Databases are inherently stateful
Focus is on ALTER instead of CREATE
Dependencies complicate scripts
Errors are often found only when scripts are
executed
Synchronizing application and database
versions
Targeting different SQL Server and SQL
Azure versions
8 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
9. Simple Schema Versioning Example
-- version 1
CREATE TABLE dbo.Speakers
(
SpeakerId INT NOT NULL,
FirstName NVARCHAR(64) NOT NULL,
LastName NVARCHAR(64) NOT NULL,
)
-- version 2 -- version 3
ALTER TABLE dbo.Speakers ALTER TABLE dbo.Speakers
WITH CHECK ADD CONSTRAINT WITH CHECK
Speaker_PK ADD CONSTRAINT Speaker_PK UNIQUE
(LastName, FirstName)
V1 V2 V3 Revision History
9 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
10. Imperative
Imperative scripts hard codes knowledge about:
The state of the target system:
Presence of objects, dependencies, unbinding, rebinding
Required ordering of operations
Cumulative changes need to be serialized
v1v2v3v4v5 instead of v1v4v5
Validating the end-result against expected end-state
is hard
No easy way to compare expected vs. actual
Batching or separating multiple changes
There are third party tools
10 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
11. Imperative Versioning
-- version 1 Add table dbo.Auction
IF OBJECT_ID (N'dbo.Auction', N'U') IS NULL
BEGIN
CREATE TABLE dbo.Auction
(`
id INT NOT NULL,
name VARCHAR(25) NOT NULL,
start DATETIME NULL,
len INT NULL
)
END
-- version 2 Add PK Au_PK
IF NOT EXISTS (SELECT * FROM sys.key_constraints WHERE name = 'Au_PK' AND type = 'PK')
BEGIN
ALTER TABLE Auction
WITH CHECK ADD CONSTRAINT Au_PK PRIMARY KEY (id)
END
-- version 3 Add UC Au_SK
IF NOT EXISTS (SELECT * FROM sys.key_constraints WHERE name = 'Au_SK' AND type = „UQ')
BEGIN
ALTER TABLE Auction
WITH CHECK ADD CONSTRAINT Au_SK UNIQUE (name)
END
11 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
12. Missing/Manual
Object Dependencies
Intercept errors before deployment
Don‟t loose data
Sync DB
Managing different versions
13. The foundation
DECLARATIVE DATABASE
DEVELOPMENT
13 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
14. Declarative
Define what you want in the form of a model
Think about a table without thinking about the
specific SQL
Fill the model using a DSL (domain specific
language)
T-SQL
Use the model as the starting point “blueprint”
for all operations
14 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
15. Declarative Versioning
-- version 1
CREATE TABLE dbo.Auction
-- version 2
( CREATE TABLE dbo.Auction
id ( INT NOT NULL,3
-- version
name id CREATE NOT NOTdbo.Auction
TABLE NULL,
VARCHAR(25) NULL PRIMARY KEY,
INT
(
start DATETIME NULL, NOT NULL,
name VARCHAR(25)
len start NULL INT NOT NULL PRIMARY KEY,
INTidDATETIME NULL,
) name VARCHAR(25) NOT NULL UNIQUE,
len INT NULL
start DATETIME NULL,
)
len INT NULL
)
V1 V2 V3 Revision History
15 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
16. Model as the starting point “blueprint”
Deployment/publish, start by comparing the
current state of the target with the required
state (blueprint)
Use the resulting difference knowledge to
programmatically generate an deployment
plan
Use plan to create sequence of (SQL)
statements required to make the target state
become like the blueprint state
16 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
17. Declarative Schema Deployment
17
Source Target
Model Reverse
Schema Schema
Compare Engineer
Model Model
Diff List
Plan
Optimizer
Additional
schema
Deploy Plan
artifacts
Script
Generator
Script Target
Executor Incremental target update DB
17 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
18. Imperative vs. Declarative
Manual vs. generated / programmatic
Point in time vs. always current
Sequential vs. differential
18 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
19. Model Based
.SQL SqlScript Schema
Parse Dom Interpret Validate
Source Model
All schema objects are represented inside a
model
What is in the model is defined by the provider
To load/hydrate a model instance
Parse SqlCodeDom, based on parsers Abstract
Syntax Tree (AST)
Interpretation Schema Model
Symbol list
Object References (hard and soft dependencies)
Validation
19 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
20. Script Fundamentals
Requirement to be
able to round trip DSL A
artifacts S T
Script Model
SQL script Parse Script
Parser
Script fragment T-SQL
Fragment
Script fragment Script
Gen SQL script
Script fragment is AST
Script
Script
Gen T-SQL
Fragment
(Abstract Syntax Tree)
20 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
22. Basic ScriptDom loop
static void Main(string[] args)
{
bool initialQuotedIdentifiers = false;
TSqlParser parser = new TSql110Parser(initialQuotedIdentifiers);
StreamReader sr = new StreamReader(@".test.sql");
IList<ParseError> errors;
TSqlFragment fragment = parser.Parse(sr, out errors);
StreamWriter sw = new StreamWriter(Console.OpenStandardOutput());
Sql110ScriptGenerator scriptGen = new Sql110ScriptGenerator();
scriptGen.GenerateScript(fragment, sw);
}
22 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
23. 23
SQL SERVER DATA TOOLS
OVERVIEW
23 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
24. History of the “DataDude” Project
Project funded April 2005
Project started July 1st 2005
Visual Studio 2005 Team System for Database
Professionals
Visual Studio 2008 Team System for Database
Professionals
Re-architected to be declarative model based system
Visual Studio 2008 Team System for Database
Professionals GDR R2
Visual Studio 2010 Team System for Database
Professionals
Transitioned to SQL Server 2009
SQL Server Data Tools
24 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
25. Database Project
Evolution of VS database project
We have more things
We don‟t have
Data generation
Unit testing
Data compare
Use a DB Project for this
http://social.msdn.microsoft.com/Forums/en-US/ssdt/thread/33664902-
a4e2-415a-ad4e-a480fbc56158/
Not available in Professional or Express Edition
Migration
http://geekswithblogs.net/80n/archive/2012/09/11/vsdb-to-ssdt-
series--introduction.aspx
Comparison
28. Supported OS Platforms
Windows Vista SP2+
Windows 7 SP1+
Windows Server 2008 SP+
Windows Server 2008 R2 SP1+
Note: this is different then the Visual Studio
2010 platforms
28 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
29. Availability
Visual Studio 2010 Integrated Shell
SQL-CLR requires Visual Studio 2010 Standard
Visual Studio 2010 SP1
Visual Studio 2012
SQL Server 2012
29 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
30. Features of SQL Server Data Tools
30 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
03/29/2012
32. Connected Development
SQL Server Object Explorer (SSOX)
T-SQL Editor/Debugger/IntelliSense (New Query)
Power-Buffer (New Object/View Code)
Table Designer (View Designer)
Data Editor (View Data)
Execute Procedure/Function
Schema Compare
32 | 03/29/2012
17/11/2012 | SQL Saturday #176 – Pordenone, Italy
33. SQL Server Object Explorer (SSOX)
The SQL Server navigation tool window
Modeled after the SSMS Object Explorer
Server scoped vs. Server Explorer which is database scoped
Launch point for T-SQL Editor, Debugger, Object
Execution, Designers, …
Supports connecting directly to SQL Server
SQL Server {2005, 2008, 2008R2, 2012} and SQL Azure
Supports connecting directly to a (contained) database
Constructs a partial model in the background and under the
covers
Supports:
Cascading Drops and Renames
Drift detection
Automatically updates the tree/source as changes occur on the server
33 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
34. T-SQL Editor/Debugger/IntelliSense
T-SQL IntelliSense
SQL Server 2005+ incl. SQL Azure
Result to Grid | Text | File
Execution modes
Execute
Execute with debugger
Reusable debug script generation
34 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
35. Power-Buffer/Table Designer
Declarative deferred online schema management
Brings “project-oriented” features to online / connected
development
Live errors and warnings as changes are made against code
“Project-oriented” validation during editing
Table designer
Code-behind designer
Works on top of Power-Buffer (partial model) or project model
Strives to be the same experience online as experienced in the
project system
Coordinated execution of buffers against the same target
Diff scripts by default are transactional
(ToolsOptionsSQL Server ToolsOnline EditingInclude
transactional scripts)
35 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
36. Data Editor
View and Edit Data via grid editor
Copy-Paste support
Generate as INSERT to file or query window
36 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
37. Execute Procedure/Function
Dialog based input for parameter collection
Generates SQL script for execution/debugging
37 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
38. 38
PROJECT BASED
DEVELOPMENT
38 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
39. Creating and Importing
Single project template
VSDB note:
No distinction between server or user projects
Server projects are projects with target database set to
master
Import from:
Database
DACPAC
SQL Script (multi-file import enabled)
Selective import by using Schema Compare
“Create New Project” from SSOX
Inherits version from source database
39 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
40. Folder Structure
Options on import:
None
Schema
Object type
SchemaObject type
40 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
41. Project Directory Guidelines…
Do not host more then one table inside script
file
Table designer will not see additional tables
inside script
41 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
42. Additional Language Services
Projects enable additional language services
Go To Definition
Find All References
Refactoring
Rename (sp_rename)
Move to Schema (ALTER SCHEMA schema_name
TRANSFER)
Wildcard Expansion
Fully Quality Name
Invoked from Editor, Table Designer and SQL
Server Object Explorer for project based schema
objects
42 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
44. Multi-Targeting
Target version aware:
SQL Server 2005
SQL Server 2008 & SQL Server 2008 R2
SQL Server 2012
SQL Azure
44 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
45. Isolated Sandbox
F5 – Run by default configure to use the
LocalDB instance associated with the project
Data Source=(localdb)<project name>;Initial
Catalog=<project name>;Integrated
Security=True;Pooling=False;Connect
Timeout=30
To retarget to a different SQL Server version
and/or shared SQL Server change:
Project propertiesDebugTarget Connection
String
46. SQL Server 2012 Express LocalDB
Simplify embedded usage of SQL Server
Simple installation
Zero-admin database
Same programming surface as User Instances of SQL Express
The same sqlservr.exe as in service-based SQL Server with the same language and features
Connection through the same client-side APIs, using a new connection string option
SQL Server programming symmetry
Installation similar to .NET Framework model
One set of installed binaries (per major version), no global configuration, no constantly-
running service
Activation model similar to RANU (Access, SQL Compact, …)
The application connects to a database file, SQL activates automatically
No service: SQL process starts in the context of current user
Default connection string
(localdb)v11.0
http://msdn.microsoft.com/en-us/library/hh510202(v=SQL.110).aspx
46 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
47. Build Time Validation
Build validates the complete model
Platform specific validation
Example – Enforces clustered index requirement on
tables in SQL Azure
Integration with Compiler Services
Engine-level build-time validation without schema
deployment
Pre & Post Deployment scripts
Build validates syntactical correctness of pre- and
post- deployment scripts using the SQLCMD
variables
47 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
48. Build Actions
Build - This script will be interpreted as T-SQL (or an XML
Schema in the case of XML Schema Collections) and reflected in
the T-SQL Model
Compile - C# or VB (depending on your project properties) to be
deployed as a SQLCLR assembly
None - Use this for any loose artifacts (like text files)
PreDeploy - The pre deployment master script (there can only be
one)
PostDeploy - The post deployment master script (there can only
be one)
RefactorLog - This is a refactor log which notifies the DaxFx
deployment engine that particular changes should be interpreted
as refactoring operations and not drop/adds
Build Extension Configuration - Reserved for future use, for this
is interpreted as None
48 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
49. Pre & Post Deployment Scripts
Can be used for any “arbitrary” SQL actions that you
need to perform “before” and “after” deployment of
the schema objects
The pre deployment block comes after the generic
database context validation block
The post deployment block comes after the schema
objects block
Pre and post deployment scripts must be
idempotent
They are “executed” each deployment!
http://blogs.msdn.com/gertd/archive/2007/01/25/idempoten
t-scripts-required.aspx
49 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
50. Database References
3-part name usage:
SELECT * FROM
[LiteralDBRef].[Schema1].[Table1]
SELECT *
FROM [$(DBRef)].[Schema1].[Table1]
4-part name usage:
SELECT *
FROM [$(ServerRef)].[$(DBRef)].[Schema1].[Table1]
SELECT *
FROM
[$(ServerRef)].[LiteralDBRef].[Schema1].[Table1]
50 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
51. Project Deployment
Build serializes the model in to model.xml
stream inside .dacpac file
51 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
56. Database Schema Snapshots
Point-in-time representation of schema model
Model must be “error-free” state
Produces same file format (*.dacpac) as build or
extract
To be used for:
Versioning
Comparison
Sharing schema definitions or changes
56 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
58. Schema Definition
Script
Model
Builder
Fragment
Source
DB Scaffolding Schema
Model
Schema Model
Deserializer
Package
58 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
59. Deployment & Schema Compare
Script Script
Model Model
Builder Builder
Fragment Fragment
Source Target
DB Scaffolding Schema Schema Scaffolding DB
Model Model
Model
Schema Model Compare Model Schema
Deserializer Deserializer
Package Package
Diff List
Plan Diff
Optimizer Visualizer
Deploy Plan
59 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy Script
Generator
60. Schema Compare Next and Previous move between top-
level objects, no longer expand the tree.
Simpler set of columns are aligned around the central
action column echoes alignment of schemas above
60
Group-by Action is the Same
default column order
is used for all
groupings;
cleaner and
easier to
Schema no longer parse
used as a parent for regardless of
top-level objects; only grouping
shown when changed
Improved script diff’
algorithm for tables
emphasizes columns
as unit of change.
Gives much improved
alignment. Also
improved look
60 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
67. SQL Azure
It‟s Cloud Computing!
SQL Server e SQL Azure sono diversi
Diverse esigenze
Connected development on SQL Azure
Change targetFix & Build
67 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
68. Conclusions
SQL SERVER DATA TOOLS
68 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
69.
Already third party tools
First release
Many step forward
Some step back (compared to DataDude)
69 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
70. Conclusions
Modeling infrastructure
One development environment
More checks over actions
Use targets
A tool for SQL Azure
Debug and schema deployment
Go under TFS
70 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
71. Resources
Articles
MSDN Magazine Sept 2011 The "Juneau"
Database Project
SQL Server Data Tools Online Installation
http://msdn.microsoft.com/data/tools
Team Blog
http://blogs.msdn.com/b/ssdt/
71 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
73. GRAZIE! Commenta la sessione che hai
appena seguito su Twitter
#sqlsat176
73 | 17/11/2012 | SQL Saturday #176 – Pordenone, Italy
Editor's Notes
Developer-focused toolset for building SQL Server & SQL Azure databasesExperiences EnabledConnected DevelopmentProject Based DevelopmentApplication Lifecycle & ToolsFundamentalsDeclarative, model based database developmentIntegrated tools with modern language services Connected and offline with local testingTarget SQL Server and SQL AzureDetecting and managing database drift
Schema Compare is an incredibly useful tool, providing a visual head over SSDT’s model differencing and update engine. It can be used to compare any combination of database, project or dacpac, and allows selective update of the target schema (via an update script in the case of a dacpac). We’ve made some significant changes to the tool for the RTW release, improving its look and feel, particularly to make it easier to digest and process comparison results. This post describes many of Schema Compare's key features – some of which surfaced in CTP4 – with a screen shot at the bottom that highlights several of them.First, the visual comparison ‘language’ of the results grid:Differences-Only by Default: By default the grid contains differences only (with empty folders removed) – if there is only one difference you will see just one item. And the grid always contains all the actions resulting from the comparison – while you can hide an action temporarily within a contracted group it is always present in the grid and will apply to the update or script unless you exclude it by unchecking the action.Equal Objects filter:A toolbar button adds equal objects to the grid. Enabling this is useful if you want to review, for example, unchanged columns alongside the changed columns in a table. Unsupported Actions filter: You can also choose to see unsupported actions – these result from differences for which there is no supported action that can be taken on the target. These typically result from differences in server objects or built-in types between schema versions.Action Icons: Actions (Add, Change, and Delete) are visualized using icons, making it easier to absorb a set of changes at a glance. The checkbox alongside an icon indicates if the action will be included in the update or generated script. If there is no icon the item will not be included in an update or script.Grayed Items: Items that do not contribute to the update are grayed – excluded actions, unsupported actions and equal objects are all grayed. Folders are grayed when all their contents are grayed making it easy to see when a group of differences have all been excluded without you needing to drill in.Grouping: By default, items are grouped by action so you can quickly assess what changes will be made on update. You can also group the results by object type or by schema. You can expand or collapse a group to temporarily hide detail, and you can exclude all or include all objects in a group.Refactor Highlighting: Schema Compare processes the refactor log if present when targeting a database. Refactoring is indicated in the grid as a change action with the source name bolded to highlight the new schema and/or name. Refactoring will cause objects to be renamed in the database. Refactoring sometimes also shows up as a second order effect on other objects that SQL Server will modify when applying the rename. These will not be marked as actions in the grid as you cannot exclude them, but you will see the changed script if you select the affected object. Probably the biggest set of changes affects the script difference pane. While the grid provides a great overview, to see all changes to an object in the grid you have to fully expand it, which, can quickly clutter the view if you're reviewing many objects. To address this we’ve focused more attention on the script differencing experience – after all, you are writing and editing object scripts to begin with. Changes include:Expanded Object Scripts: The script difference pane now shows the combined scripts for an object and its hierarchical children. This gives a complete picture of all the changes affecting an object in one easy-to-scan place. To complement this, the Next and Previous buttons step between top-level objects only. Together, these two changes can dramatically simplify scanning through the results of a comparison. Enhanced Script Differencing: The script difference algorithm now treats child objects as discrete entities, more effectively highlighting those that have been added, deleted or changed. The color scheme is now more subtle and better reinforces the direction of changes. And remember that you can expand the script pane or swap it to the top – so you can easily optimize the layout to better focus on reviewing scripts.The screen shot below highlights many of these improvements.